Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
Retroceder   COBOL Foro > IDE-s y compiladores COBOL > Otros Compiladores e IDE-s COBOL > GnuCOBOL (OpenCOBOL)
GnuCOBOL (OpenCOBOL) El compilador OpenSource que ya tiene un IDE.
Noticias y Avisos
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sintaxis] Dll puerto serie drvedia1981 Fujitsu COBOL 5 31 de julio de 2018 07:57
[Duda] Impresión de Logo en impresora de Tickets Kuk Periféricos 14 28 de agosto de 2017 10:19
[Información] Leer puerto RS232 desde PowerCobol v9 Jovimabo PowerCOBOL (ActiveX) 13 18 de octubre de 2016 16:00
[Sintaxis] Capturar Puerto Serial Juanes RM/COBOL 2 19 de julio de 2016 12:03
[Sintaxis] Cambiar impresora desde PowerForm Breew PowerFORM 12 23 de agosto de 2015 22:57
Respuesta
 
Herramientas

  #1
Antiguo 3 de diciembre de 2018, 15:19
IDENTIFICATION DIVISION
dariodr
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de dariodr
DATA DIVISION
Forero desde (Registrado)noviembre 2018
Tailandia
Edad49 años
Última Actividad06.12.2018 03:48
PROCEDURE DIVISION
PostsPosts: 3
Ha dicho GraciasEnviado: 2
Ha recibido agradecimientosRecibido: 0
ReputaciónReputación: 0
dariodr is an unknown quantity at this point
Impresora Imprimir en una impresora puerto USB (Linux)

Hola amigos coboleros, tengo una duda:
Con esta orden
Código COBOL:
  1. FILE-CONTROL.
  2.            SELECT OPTIONAL PHONE-FILE ASSIGN TO "PHONE.DAT"
  3.                ORGANIZATION IS SEQUENTIAL.
creo un archivo fisico en disco llamado "PHONE.DAT"

Con esta otra orden
Código COBOL:
  1. SELECT PRINTER-FILE ASSIGN TO PRINTER
  2.                ORGANIZATION IS LINE SEQUENTIAL.
mando a imprimir a la impresora por defecto (LPT1).

La consulta es: como hago para mandar a imprimir desde una impresora USB, estoy usando OpenCobol con LinuxMint (derivado de Ubuntu).
Gracias.
dariodr no ha iniciado sesión   Responder Con Cita
  #2
Antiguo 3 de diciembre de 2018, 18:50
IDENTIFICATION DIVISION
JCantero
Novato Junior
ENVIRONMENT DIVISION
Avatar de JCantero
DATA DIVISION
Forero desde (Registrado)junio 2016
España
UbicaciónAlbacete
Edad52 años
Última Actividad13.12.2018 11:27
PROCEDURE DIVISION
PostsPosts: 33
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 17
ReputaciónReputación: 0
JCantero is on a distinguished road JCantero is on a distinguished road
Predeterminado

De la forma que lo pones debe de salir por la impresora por defecto que tu tengas definida en el linux.

Para probar intenta imprimir algo desde la linea de comandos y verificar que imprime. (comando lp)

Creo que te sobraria poner lo de "line sequential". Al poner "printer" va inherente.

Lo tengo declarada la impresora asi
Código COBOL:
  1.  
  2.            select impresora assign to printer, nombre-impresora.


Y en menu de programa tengo una selección de impresoras en el cual asigno a nombre-impresora el nombre de la impresora que esta configurada en linux.

Mas concretamente lo tengo asi:

Código COBOL:
  1.  
  2.  
  3.           select impresora assign to printer, nombre-impresora
  4.                            file status is error-impresora.

En error impresora me va volcando el error producido. Si '00' no hay error.
JCantero no ha iniciado sesión   Responder Con Cita
  #3
Antiguo 4 de diciembre de 2018, 04:28
IDENTIFICATION DIVISION
dariodr
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de dariodr
DATA DIVISION
Forero desde (Registrado)noviembre 2018
Tailandia
Edad49 años
Última Actividad06.12.2018 03:48
PROCEDURE DIVISION
PostsPosts: 3
Ha dicho GraciasEnviado: 2
Ha recibido agradecimientosRecibido: 0
ReputaciónReputación: 0
dariodr is an unknown quantity at this point
Predeterminado Imprimir en Linux

Este es el codigo, donde asigno el nombre de la impresora.

Código COBOL:
  1.        IDENTIFICATION DIVISION.
  2.        PROGRAM-ID. PHNBLD01.
  3.  
  4.        ENVIRONMENT DIVISION.
  5.        INPUT-OUTPUT SECTION.
  6.        FILE-CONTROL.
  7.            SELECT OPTIONAL PHONE-FILE ASSIGN TO "PHONE.DAT"
  8.                ORGANIZATION IS SEQUENTIAL.
  9.  
  10.            SELECT PRINTER-FILE ASSIGN TO PRINTER, DCP-T300.
  11.      *         ORGANIZATION IS LINE SEQUENTIAL.
  12.  
  13.        DATA DIVISION.
  14.        FILE SECTION.
  15.        FD  PHONE-FILE.
  16.      *     LABEL RECORDS ARE STANDARD.
  17.        01 PHONE-RECORD.
  18.            05 PHONE-LAST-NAME      PIC X(20).
  19.            05 PHONE-FIRST-NAME     PIC X(20).
  20.            05 PHONE-NUMBER         PIC X(15).
  21.            05 PHONE-EXT            PIC X(5).
  22.  
  23.        FD  PRINTER-FILE.
  24.        01  PRINTED-RECORD          PIC X(80).
  25.  
  26.        WORKING-STORAGE SECTION.
  27.        01  HOW-MANY           PIC 999.
  28.        01  ENTRY-FIELD        PIC ZZZ.
  29.        01  PRINT-LINES        PIC 99 VALUE ZEROES.
  30.        01  FORMATTED-NUMBER.
  31.            05 FILLER          PIC X(6) VALUE "(404)".
  32.            05 FILLER          VALUE "555-".
  33.            06 PHONE-COUNTER   PIC 9(4) VALUE ZERO.
  34.  
  35.        PROCEDURE DIVISION.
  36.        PROGRAM-BEGIN.
  37.            PERFORM OPENING-PROCEDURE.
  38.            PERFORM GET-HOW-MANY.
  39.            MOVE ZEROES TO PRINT-LINES.
  40.            PERFORM ADD-RECORD VARYING PHONE-COUNTER FROM 1 BY 1 UNTIL
  41.                PHONE-COUNTER > HOW-MANY.
  42.            PERFORM CLOSING-PROCEDURE.
  43.  
  44.        PROGRAM-DONE.
  45.            STOP RUN.
  46.  
  47.        OPENING-PROCEDURE.
  48.            OPEN OUTPUT PHONE-FILE.
  49.            OPEN OUTPUT PRINTER-FILE.
  50.  
  51.        CLOSING-PROCEDURE.
  52.            CLOSE PHONE-FILE.
  53.            MOVE SPACE TO PRINTED-RECORD.
  54.            WRITE PRINTED-RECORD BEFORE ADVANCING PAGE.
  55.            CLOSE PRINTER-FILE.
  56.  
  57.        GET-HOW-MANY.
  58.            DISPLAY "How many test entries (1-999): ".
  59.            ACCEPT ENTRY-FIELD.
  60.            MOVE ENTRY-FIELD TO HOW-MANY.
  61.  
  62.        ADD-RECORD.
  63.            PERFORM FORMAT-THE-RECORD.
  64.            PERFORM ADD-THIS-RECORD.
  65.  
  66.        FORMAT-THE-RECORD.
  67.            MOVE "Joshua-------------X" TO PHONE-FIRST-NAME.
  68.            MOVE "Johnson------------X" TO PHONE-LAST-NAME.
  69.            MOVE "12345" TO PHONE-EXT.
  70.            MOVE FORMATTED-NUMBER TO PHONE-NUMBER.
  71.  
  72.        ADD-THIS-RECORD.
  73.            WRITE PHONE-RECORD.
  74.            PERFORM PRINT-THIS-RECORD.
  75.  
  76.        PRINT-THIS-RECORD.
  77.            IF PRINT-LINES NOT < 55
  78.                PERFORM NEW-PAGE
  79.            END-IF.
  80.            MOVE PHONE-RECORD TO PRINTED-RECORD.
  81.            WRITE PRINTED-RECORD BEFORE ADVANCING 1.
  82.            ADD 1 TO PRINT-LINES.
  83.  
  84.        NEW-PAGE.
  85.            MOVE SPACE TO PRINTED-RECORD.
  86.            WRITE PRINTED-RECORD BEFORE ADVANCING PAGE.
  87.            MOVE ZEROES TO PRINT-LINES.
dariodr no ha iniciado sesión   Responder Con Cita
  #4
Antiguo 4 de diciembre de 2018, 17:19
IDENTIFICATION DIVISION
JCantero
Novato Junior
ENVIRONMENT DIVISION
Avatar de JCantero
DATA DIVISION
Forero desde (Registrado)junio 2016
España
UbicaciónAlbacete
Edad52 años
Última Actividad13.12.2018 11:27
PROCEDURE DIVISION
PostsPosts: 33
Ha dicho GraciasEnviado: 1
Ha recibido agradecimientosRecibido: 17
ReputaciónReputación: 0
JCantero is on a distinguished road JCantero is on a distinguished road
Predeterminado

Asi no puedes.

Debes de ponerlo entre comillas:

Código COBOL:
  1.  SELECT PRINTER-FILE ASSIGN TO PRINTER, "DCP-T300".

o definir la variable dcp-t300 y asignarle un valor en working o en la procedure.

Código COBOL:
  1.       01 dcp-t300 pic x(80) value "DCP-T300".


---------- Post añadido : 17:19 ---------- Post anterior : 12:13 ----------

El codigo que has puesto en el foro corrigiendo lo que te he comentado y funciona bien.

Lo he probado con el OpenCobolIde de windows, aunque tambien debe funcionar con el resto de sistemas operativos.

Aqui te dejo el link de los IDEs por si fuera de tu interes.

https://launchpad.net/cobcide/+download
JCantero no ha iniciado sesión   Responder Con Cita
Han dicho Gracias: 2
dariodr ( 6 de diciembre de 2018), Kuk ( 4 de diciembre de 2018)
Respuesta


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado



La franja horaria es GMT +1. Ahora son las 18:06.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2018, Jelsoft Enterprises Ltd.