Cobol Foro

Cobol Foro (https://www.cobolforo.es/index.php)
-   PowerCOBOL (ActiveX, v4 - v11) (https://www.cobolforo.es/forumdisplay.php?f=9)
-   -   [Sintaxis] Manejo OCX impresora Fiscal Epson nueva generación (https://www.cobolforo.es/showthread.php?t=601)

Fito 27 de agosto de 2019 15:20

Hola Amigos:

Me puse a trabajar de nuevo en el fiscal. Una pregunta, la EpsonFiscalInterface.dll funciona?

Saludos.

Fito...

fastpho 27 de agosto de 2019 22:43

Buenas Fito, si la EpsonFiscalInterface.dll funciona perfectamente , yo solo utilizo una sola funcion (descargar) que es la q baja los formularios 8010 ,8011,8012 , para subir a la afip

Fito 28 de agosto de 2019 06:46

Hola:

Al final lo hice todo con EpsonFiscalInterface.dll, funciona perfecto.

Saludos.

Fito...

rubenhduarte 26 de abril de 2020 17:37

Hola, soy nuevo en el foro, en realidad trabajo mas con c#, llegue a este foro buscando informacion de simulador de TM-T900FA, veo que alguien ya se lo descargo, yo no lo puedo encontrar, solo encontre emuladores de Hasar, alguien tiene algun link de descarga del emulador de Epson?
Muchas gracias!

jhjacomo 12 de julio de 2020 02:57

@panzaverde,
Hola buenas tardes.
Leí que estas usando la versión de pwc v3.0. Yo tengo un sistema de facturación con esta versión y ahora tengo la urgencia de hacerlo funcionar con una TM-T900AF. Leí todas las consultas y consejos de este tag, pero no encuentro la forma de hacerlo funcionar. Modifique el COBOL85.CBR como aconsejan pero me tira el error:
Código:

JMP0015I-U [PID:000011A8 TID:00000698] CANNOT CALL PROGRAM 'AddDataField'. CODE=0xC1 PGM=INFOFIS ADR=00405C2B
. Algun consejo.Gracias.

fastpho 12 de julio de 2020 16:03

@jhjacomo, Buen dia , que libreria estas usando .. ? Los ejemplos que hay para abrir el puerto Sacar un informe x o z son para la libreria epsonfiscaldriver.dll....

jhjacomo 12 de julio de 2020 16:54

Hola fastpro, gracias por tu respuesta.
Ampliemos.
Estoy usando la librería EpsonFiscalDriver.dll.
El archivo COBOL85.CBR:

Código:

[INFOFIS]
@EnvSetWindow=UNUSE
PRTLIS=PRTLIS.ENV
PRT1=FAELE.ENV
PRINTER=lpt3

[INFOFIS.ENTRY]
AddDataField=EpsonFiscalDriver.dll
ClosePort=EpsonFiscalDriver.dll
GetAPIVersion=EpsonFiscalDriver.dll
GetExtraField=EpsonFiscalDriver.dll
GetReceivedFrame=EpsonFiscalDriver.dll
GetSentFrame=EpsonFiscalDriver.dll
OpenPort=EpsonFiscalDriver.dll
Purge=EpsonFiscalDriver.dll
SendCommand=EpsonFiscalDriver.dll
getBaudRate=EpsonFiscalDriver.dll

......

En el formulario tengo un botón, que se envía al controlador la selección del operador

Código COBOL:
  1.      if caj-tipoprv = 12
  2.         call "A-EPSONTM900"
  3.         cancel "A-EPSONTM900"
  4.      end-if.
En la PROCEDURE del formulario principal, tengo un copy con las lineas de programación:

Código COBOL:
  1.  #include "procedur\InfoFis.pro".

Y en el archivo InfoFis.pro, lo siguiente:

Código COBOL:
  1. 003010 IDENTIFICATION DIVISION.
  2. 003020 PROGRAM-ID. A-EPSONTM900 is common.
  3. 003040 ENVIRONMENT DIVISION.
  4. 003160 DATA DIVISION.
  5. 003350 WORKING-STORAGE SECTION.
  6. 003360 01 ReturnDEValue     PIC S9(9) COMP-5 VALUE 0.
  7. 003370 01 LINEA-INFORME-X.
  8. 003380    03 Comando        PIC X VALUE X"08".
  9. 003390    03 Comandobis     PIC X VALUE X"02".
  10. 003400 01 LINEA-EXTRA.
  11. 003410    03 DataField1     PIC X VALUE X"0C".
  12. 003420    03 DataField2     PIC X VALUE X"21".
  13. 003430 01 ReturnValue       Pic S9(9) Comp-5 Value 0.
  14. 003440 01 N-Length          pic 99 value zero.
  15. 003450 01 lpString1         pic x(2).
  16. 003460 01 lpString2         pic x(2).
  17. 003470 01 x                 pic x(4).
  18. 003480 01 Cantidad          PIC S9(9) COMP-5 VALUE 0.
  19. 003490 01 ReturnString      PIC X(4) VALUE HIGH-VALUE.
  20. 003500 01 Variable          PIC 9(3).
  21. 003620 01 i                    pic 99.
  22. 003630*
  23. 003640 01 FUNC-EPSON-LIB    Pic x(40).
  24. 003640 01 BufferLen         pic S9(9) COMP-5 VALUE 0.
  25. 003650 01 version           pic x(250).
  26. 004100 PROCEDURE DIVISION.
  27. 004310 la-x.
  28. 004320     move spaces TO FUNC-EPSON-LIB.
  29. 004330     MOVE 2 TO BufferLen
  30. 004340     MOVE "AddDataField" TO FUNC-EPSON-LIB.
  31. 004350*> La propia llamada a la FUNC-EPSON-LIB:
  32. 004360     CALL FUNC-EPSON-LIB WITH STDCALL USING BY REFERENCE LINEA-INFORME-X
  33. 004370          BY VALUE BufferLen.
  34. 004380
  35. 004390     move spaces TO FUNC-EPSON-LIB.
  36. 004400
  37. 004410     MOVE 2 TO BufferLen.
  38. 004420     MOVE "AddDataField" TO FUNC-EPSON-LIB.
  39. 004430*> La propia llamada a la FUNC-EPSON-LIB:
  40. 004440     CALL FUNC-EPSON-LIB WITH STDCALL USING BY REFERENCE LINEA-EXTRA
  41. 004450          BY VALUE BufferLen.
  42. 004460*SEND COMMAND
  43. 004470     move spaces TO FUNC-EPSON-LIB.
  44. 004480     MOVE "SendCommand" TO FUNC-EPSON-LIB.
  45. 004490     CALL FUNC-EPSON-LIB WITH STDCALL USING BY REFERENCE VERSION.
  46. 004500
  47. 005520 END PROGRAM A-EPSONTM900.
Y el error me da en la linea 004360, con el mensaje que envié anteriormente.

Gracias.

fastpho 12 de julio de 2020 19:38

@jhjacomo, Cuando llamas SetComPort no te da error ? , verifica que tanto tu aplicación, como el cbr y la dll esten en el mismo lugar...

jhjacomo 13 de julio de 2020 01:00

Hola FASTPHO, en realidad yo me baje el ejemplo de x y z que le sugeriste a Laura, el comando SetComPort no lo estaba usando,pero al leer tu respuesta, se lo agregué y el error sigue siendo el mismo, solo que ahora me da con SetComPort.
Verifique que el ejecutable, el archivo cobol85.cbr y la dll estén en la misma carpeta.
Yo me bajé de epson el EpsonFiscalDriver_03.02.00.zip, lo descomprimí y lo instalé, luego me copie de la carpeta donde se instaló (C:\Program Files (x86)\EpsonFiscalDriver\64) la DLL EpsonFiscalDriver.DLL. Estoy trabajando con un Windows 7 64 bits y estoy compilando con el FSC 3 que Kuk adapto para los 64 bits.
Saludos FASTPHO y gracias por tu ayuda.

fastpho 13 de julio de 2020 01:55

@jhjacomo, Para poder enviar algun comando al impresor primero tenes que setear la puerta la velocidad etc en el post 49 hay un ejemplo, con respecto al error el compilador no encuentra la dll o estas usando la libreria de 64 en vez de la 32 ...
Saludos


La franja horaria es GMT +2. Ahora son las 05:11.

Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.