@jhjacomo, Para saber el Estado proba con estas lineas , solicitar primero el estado y luego leer por el medotod
getPrinterStatus ver la respuesta y como dijo
@Kuk, no le pongas
RETURNING por que pwc3 no acepta la palabra reservada
RETURNING
Código COBOL:
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 LINEA-ESTADO.
03 Comando PIC X VALUE X"00".
03 Comandobis PIC X VALUE X"01".
01 LINEA-EXTRA.
03 DataField1 PIC X VALUE X"00".
03 DataField2 PIC X VALUE X"00".
01 gState PIC S9(9) COMP-5.
01 FUNC-EPSON-LIB Pic x(40).
01 version pic x(250).
PROCEDURE DIVISION.
move spaces TO FUNC-EPSON-LIB.
MOVE 2 TO BufferLen.
MOVE "AddDataField" TO FUNC-EPSON-LIB.
CALL FUNC-EPSON-LIB WITH STDCALL USING BY REFERENCE LINEA-ESTADO
BY VALUE BufferLen.
move spaces TO FUNC-EPSON-LIB.
MOVE 2 TO BufferLen.
MOVE "AddDataField" TO FUNC-EPSON-LIB.
CALL FUNC-EPSON-LIB WITH STDCALL USING BY REFERENCE LINEA-EXTRA
BY VALUE BufferLen.
*SEND COMMAND
move spaces TO FUNC-EPSON-LIB.
MOVE "SendCommand" TO FUNC-EPSON-LIB.
CALL FUNC-EPSON-LIB WITH STDCALL USING BY REFERENCE VERSION.
***** getPrinterState
move spaces to FUNC-EPSON-LIB.
MOVE "getPrinterStatus" TO FUNC-EPSON-LIB.
CALL FUNC-EPSON-LIB.
*> PROGRAM-STATUS ---> si no es cero hay problemas 40961 tapa abierta 1 poco papel 2 sin papel
move PROGRAM-STATUS to gState.
display "estado" , gState.