Page 1 of 1

Impresion en FWP PC

PostPosted: Wed Nov 11, 2009 5:42 pm
by Mauricio
Hola,

por lo que e leido en el foro, parace que no se puede imprimir asi como en FWH.

si tengo un impresor toshiba tec, por bluetooh ya tengo el driver instalado, puedo hacer un report, igual como en fwh o no?


saludos,
Mauricio

Re: Impresion en FWP PC

PostPosted: Thu Nov 19, 2009 3:03 am
by Antonio Linares
Mauricio,

La impresión en este tipo de impresoras, por bluetooth, es muy diferente a como se puede imprimir en un PC con Windows.

Basicamente se establece la conexión y se va enviando byte a byte. No es como en Windows PC que se genera una página y se vuelca entera a la impresora.

Es decir, es una impresión mucho más simple y básica, en comparación a las posibilidades que tenemos en un PC. Es por esto que la Clase TReport de FWH, no puede usarse tal cual en FWPPC.

Se podria hacer una clase muy simple y limitada. Casi que es preferible imprimir según las necesidades de la aplicación (tickets, etc).

Re: Impresion en FWP PC

PostPosted: Thu Nov 19, 2009 3:40 am
by Mauricio
Don Antonio

Gracias, leyendo aqui los post puede armar la impresion :D

ya tengo imprimiendo al 100% un Hand Held Dolphin 7600 y una impresora Toshiba TEC

basicamente use la informacion proveida en este hilo.

viewtopic.php?f=4&t=4282&p=18966&hilit=generic+write#p18966

crear un archivo en disco y despues enviarlo a la impresora


Saludos,
Mauricio

Re: Impresion en FWP PC

PostPosted: Thu Nov 19, 2009 8:49 am
by Antonio Linares
Mauricio,

Muy bien! :-)

Te agradecemos si pones aqui algunos ejemplos que ya te funcionen para los que esten en la misma situación de necesidad de imprimir a impresora bluetooth, gracias!

Re: Impresion en FWP PC

PostPosted: Fri Nov 20, 2009 12:38 am
by Mauricio
Don Antonio,
claro, aquí esta :mrgreen:



Code: Select all  Expand view


#define GENERIC_READ           0x80000000
#define GENERIC_WRITE          0x40000000
#define OPEN_EXISTING          3
#define FILE_ATTRIBUTE_NORMAL  0x00000080
#define FILE_FLAG_OVERLAPPED   0x40000000
#define NEW_LINE               chr(10)+chr(13)


/// otro codigo ....


static function ImprimeCorte(nContado, nCredito, nAbonos)
   local nRen := 3, cCliente
   local nImporte := 0
   local nUnidades := 0, nTotal := 0
   local hFile := fCreate(curdir() + '\corte.txt')

   // datos del ticket
   fwrite(hFile, ticket->Empresa + NEW_LINE)
   fwrite(hFile, ticket->Direccion + NEW_LINE)
   fwrite(hFile, ticket->Rfc + NEW_LINE)
   fwrite(hFile, ticket->Tel + NEW_LINE)
   fwrite(hFile, ticket->Vendedor + NEW_LINE)
   fwrite(hFile, dtoc( date()) + space(5) + time() + NEW_LINE)
   fwrite(hFile, replicate('-',32) + NEW_LINE)

   fwrite(hFile,NEW_LINE)

   fwrite(hFile, "CORTE DE VENTAS" + NEW_LINE)


   fwrite(hFile, replicate('-',32) + NEW_LINE)
   fwrite(hFile, 'Contado .. $ ' + transform(nContado,'99,999,999.99') + NEW_LINE)
   fwrite(hFile, 'Credito .. $ ' + transform(nCredito,'99,999,999.99') + NEW_LINE)
   fwrite(hFile, replicate('-',32) + NEW_LINE)
   fwrite(hFile, 'Ventas.... $ ' + transform(nCredito+nContado,'99,999,999.99') + NEW_LINE)
   fwrite(hFile, replicate('-',32) + NEW_LINE)
   fwrite(hFile, 'Abonos..,. $ ' + transform(nAbonos,'99,999,999.99') + NEW_LINE)
   fwrite(hFile, replicate('-',32) + NEW_LINE)
   fwrite(hFile, replicate('_',32) + NEW_LINE)
   fwrite(hFile, 'Total...... $ ' + transform(nCredito+nContado+nAbonos,'99,999,999.99') + NEW_LINE)
   fwrite(hFile, replicate('-',32) + NEW_LINE)



   fwrite(hFile,NEW_LINE)
   fwrite(hFile,NEW_LINE)
   fwrite(hFile,NEW_LINE)

   fclose(hFile)
   SendText( MemoRead( curdir()+ '\corte.txt')) //Envio al puerto serie
return nil

static FUNCTION SendText( cText )
//---------------------------------
   LOCAL i, hOut := CreateFile( "COM7:",GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL )
   IF hOut==-1
      MsgStop('No se pudo abrir el puerto de impresora')
   ELSE
      FOR i = 1 TO Len( cText )
         WriteByte( hOut, Asc( SubStr( cText, i, 1 ) ) )
      NEXT
      CloseHandle( hOut )
   ENDIF
RETURN NIL


 


yo lo deje fijo para imprimir en el COM7.

Saludos,
Mauricio

Re: Impresion en FWP PC

PostPosted: Sun Nov 29, 2009 11:32 am
by Antonio Linares
Mauricio,

gracias! :-)