FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Copiar Registro o Fila de un Browse.
Posts: 350
Joined: Wed Nov 02, 2005 03:28 PM
Copiar Registro o Fila de un Browse.
Posted: Tue Jul 10, 2012 10:53 AM

¿Existen alguna función o la forma de copiar un registro (fila) activo de un browse sin usar CTRL+C para despues pegarlo con CTRL+V o Paste por ejemplo en el Outlook, solo me interesan los datos de ese registro?

Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
Posts: 389
Joined: Wed Nov 29, 2006 01:51 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Tue Jul 10, 2012 01:10 PM

Garbi,
supongo que copiando al clipboard te puede servir, el tema es que si lo que tenes es un registro de un array o dbf o recordset deberas armar lo que queres copiar.
Salu2.

Posts: 350
Joined: Wed Nov 02, 2005 03:28 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Thu Jul 12, 2012 05:01 PM

¿Pero como lo copio al clipboard? es un registro de un dbf.

Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
Posts: 344
Joined: Sat Jul 22, 2006 09:04 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Thu Jul 12, 2012 09:17 PM

En su momento necesite algo similar y lo hice copiando los valores del registro a una variable para cada campo, tambien podes hacerlo en un array y luego lo pegas, el copiar y pegar es una funcion propia mia simulando el portapapel.
El ejemplo mio en particular fue para copiar o cortar un turno dado y pegarlo en un horario diferente y tambien en un dia diferente.
Espero haber ayudado.
Saludos
Marcelo

FWH - Harbour - BCC7 - PellesC
Posts: 350
Joined: Wed Nov 02, 2005 03:28 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Mon Jul 16, 2012 02:15 PM

Si, dentro de la misma aplicación lo tengo hecho así, pero yo quiero copiar el registro al portapapeles de Windows para poder pegarlo en el word o outlook.

¿Como lo copio al portapapeles de windows ?

Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
Posts: 344
Joined: Sat Jul 22, 2006 09:04 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Mon Jul 16, 2012 04:24 PM

Se me ocurrio que lo podes hacer en varios pasos en forma oculta al usuario, primero grabas el registro en un memo, luego seleccionas el memo, y lo copias al portapapel con oMemo:copy(), y luego lo pegas donde te haga falta con oHoja:past().
No lo probe pero de acuerdo a los samples creo que es posible.
Buscate en los samples la funcion Copy() y past().
Espero haber ayudado.
Saludos
Marcelo

FWH - Harbour - BCC7 - PellesC
Posts: 350
Joined: Wed Nov 02, 2005 03:28 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Mon Jul 16, 2012 04:28 PM

Lo repaso y os comento.

Gracias Marcelo.

Saludos,
Regards,

Jose Luis Alepuz
joseluis@mancomputer.com
www.mancomputer.com
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: Copiar Registro o Fila de un Browse.
Posted: Mon Jul 16, 2012 09:21 PM
Podria ser algo asi:
Code (fw): Select all Collapse
cLinea := QDatos()       // aqui obtienes en una cadena todo lo que el registro contiene

Function QDatos()
local cText, nCol, uField, cField

cText    := ""
FOR nCol := 1 TO FCount()
     cfield := fieldname(nCol)
     uField := &Cfield 
     cType := ValType( uField )
     IF cType == "D"
           cText += If( Empty( uField ), "00/00/0000", dtos( uField ) ) +  " "
        ELSEIF cType == "N"
            cText += AllTrim( Str( uField ) ) + " "
        ELSEIF cType == "L"
            cText += If( uField, "T", "F" ) + " "
        ELSEIF cType == "M"
            cText += AllTrim( uField ) + " "
     ENDIF
NEXT nCol

Return(cText)

Continue the discussion