Ver Mensaje Individual
  #49
Antiguo 11 de diciembre de 2017, 22:09
fastpho
El Foro es mi casa
Innovación: Por aportar innovaciones - Issue reason: SQLite + OO Cobol class Concurso: Primer puesto: Ganador/a del Primer puesto en un concurso - Issue reason: Acceso a datos Cobol vía web 
Última Actividad 30.09.2026 19:12
Posts Posts: 365
Likes enviados Enviados: 252
Likes recibidos Recibidos: 243

Laura, Si lees bien el problema en paginas anteriores en el foro la ocx no funciona con pwc y como te dije tenes que usar la libreria EpsonFiscalDriver.DLL que funciona muy bien.
Tenes que copiar tal libreria donde compile tu programa y en el archivo cobol85.cbr incluir las llamadas de las funciones que necesitas te paso unas lineas de programa y lo que debe incluir
el archivo cobol85.cbr


Lineas de Cobol85.cbr
Código:
[TPV.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
getComPort=EpsonFiscalDriver.DLL
getExtraFieldCount=EpsonFiscalDriver.DLL
getFiscalStatus=EpsonFiscalDriver.DLL
getLastError=EpsonFiscalDriver.DLL
getPrinterStatus=EpsonFiscalDriver.DLL
getProtocolType=EpsonFiscalDriver.DLL
getReturnCode=EpsonFiscalDriver.DLL
getState=EpsonFiscalDriver.DLL
setBaudRate=EpsonFiscalDriver.DLL
setComPort=EpsonFiscalDriver.DLL
setProtocolType=EpsonFiscalDriver.DLL
setComPort=EpsonFiscalDriver.DLL
setLog=EpsonFiscalDriver.DLL
Lineas de Programa:
Código COBOL:
  1.      MOVE "GetAPIVersion" TO FUNC-EPSON-LIB.
  2.      CALL FUNC-EPSON-LIB WITH  STDCALL  USING BY REFERENCE VERSION.  
  3. ***    set log
  4. **    move spaces       to FUNC-EPSON-LIB.
  5. **    MOVE "SetLog" TO FUNC-EPSON-LIB.
  6. **    MOVE "./" TO InBuffer.
  7. **    MOVE 0 TO BufferLen.
  8. **    CALL FUNC-EPSON-LIB WITH  STDCALL  USING BY REFERENCE   InBuffer
  9. ** *                                  BY VALUE  BufferLen
  10. **    COM SET      
  11.      move spaces       TO FUNC-EPSON-LIB.
  12.      MOVE "setComPort" TO FUNC-EPSON-LIB.
  13.      MOVE 1            TO sPort *> activamos COM1
  14.      CALL FUNC-EPSON-LIB WITH  STDCALL   USING BY VALUE sPort.
  15. **    BAUDIOS SET    
  16.      MOVE spaces       TO FUNC-EPSON-LIB.
  17.      MOVE "setBaudRate" TO FUNC-EPSON-LIB.
  18.      move 9600          TO sBaudio *> set baudios
  19.      CALL FUNC-EPSON-LIB WITH  STDCALL   USING BY VALUE sBaudio.
  20. **    MOVE spaces       TO FUNC-EPSON-LIB.
  21. **    MOVE "getBaudRate" TO FUNC-EPSON-LIB.
  22. **         CALL FUNC-EPSON-LIB WITH  STDCALL   USING BY REFERENCE sBaudio.
  23. **    DISPLAY sBaudio
  24. **    PROTOCOL SET
  25.      move spaces       TO FUNC-EPSON-LIB.
  26.      MOVE "setProtocolType" TO FUNC-EPSON-LIB.
  27.      MOVE 1                 TO SProtocol.
  28.      CALL FUNC-EPSON-LIB WITH  STDCALL   USING BY VALUE SProtocol.
  29. *> OPEN  PORT.
  30.      move spaces       TO FUNC-EPSON-LIB.
  31.      MOVE "OpenPort"   TO FUNC-EPSON-LIB.
  32.      CALL FUNC-EPSON-LIB WITH  STDCALL  USING BY REFERENCE VERSION.
  33.        
  34.      move spaces       TO FUNC-EPSON-LIB.
  35.      MOVE "getLastError" TO FUNC-EPSON-LIB.
  36.      CALL FUNC-EPSON-LIB WITH  STDCALL RETURNING  iError.          
  37.      IF iError = 0  then MOVE "ok" to "Text" OF CmCOMUNICACION.
  38.      IF iError = 1  then MOVE "Puerto ocupado" to  "Text" OF CmCOMUNICACION.
  39.      IF iError = 2  then MOVE "Puerto invalido" to "Text" OF CmCOMUNICACION.
  40.      IF iError = 10  then MOVE "Error de escritura verifique el impresor" to "Text" OF CmCOMUNICACION.
  41. **    display    iError
  42. *    
  43. *
  44. *    MOVE "ClosePort"   TO FUNC-EPSON-LIB.
  45. *    CALL FUNC-EPSON-LIB WITH  STDCALL  USING BY REFERENCE VERSION.
  46. *      
  47.  
fastpho is offline   Responder Con Cita