![]() |
Ayuda con la impresora.
Buenos días.
Tengo un programa, en el cual puedo seleccionar la impresora con el 'Print Control', guardo el nombre de la impresora seleccionada con 'PrinterName', ..., tengo que llamar a otro programa y pasarle la impresora, todo bien, pero en el segundo programa ¿cómo puedo asignar la impresora seleccionada en el primer programa sin tener que seleccionarla de nuevo en el segundo? He probado con MOVE nomimpre TO "PrinterName" OF Pr_Impresora pero me devuelve el siguiente error: 'You may not overwrite or set the value of this property'. Se agradecen todas las ideas. No me sirve cambiar la impresora por defecto. Lluís. |
Hola @lfortuny
No entiendo muy bien que necesitar hacer ..... Código COBOL:
Código COBOL:
Saludos ... - - - Updated - - - Hola @lfortuny No entiendo muy bien que necesitar hacer ..... Código COBOL:
Código COBOL:
Saludos ... |
@lfortuny, vamos a suponer que estás utilizando PowerCobol en alguna de sus versiones , por lo que estás poniendo, claro.
Yo lo que hago es llamar al "Print Control" con la opción "SetPrinter", ahí que seleccionen la impresora que quieran y después mover ese valor a una variable o a lo que lo necesites, (un StaticText, TextBox Control, ...) Código COBOL:
No sé si es eso lo que necesitas exactamente .... O si no necesitas seleccionar la impresora, puedes hacerlo directamente quitando la primera línea Un salu2.- Por cierto, muevo el tema al subforo más adecuado si no indicas lo contrario. |
@lfortuny, @fastpho, @Josber, que yo sepa no se puede asignar el nombre de una impresora al control CmPrint sin pasar por el diálogo de selección de impresora. Es por ello que yo siempre configuro la impresora por defecto.
|
Buenos días y gracias a tod@s.
Para PowerCobol. Ya lo solucioné, en el primer programa selecciono la impresora con "SetPrinter", guardo todas las características en campos. Características: "PrinterName" "PaperOrientation" "PaperType" "Source" Cuando llamo al segundo programa paso todas las características y las cargo de nuevo al nombre de control 'Pr_Impresora' exceptuando el 'PrinterName' que como dice fastpho, no se puede, pero por el simple hecho de tener el nombre cargado en el primer programa y tener la misma variable del nombre de la impresora en ambos programas, no es necesario asignar 'PrinterName' y puedo imprimir. Por otro lado, si es de interés para alguien, en el segundo programa se puede asignar el nombre de la impresora que desee con solo asignar el nombre a la variable del 'Printername'. Ejemplo: MOVE "Brother ..." TO nomimpre Gracias. Que disfruten del día. |
Cita:
EDITO: lo acabo de comprobar y sí que deja compilar pero salta un Warning en ejecución diciendo que no se puede modificar dicha propiedad... |
Buenos días.
En el primer programa: Código COBOL:
Working primer programa. Código COBOL:
Working . Código COBOL:
Con esto imprimo por la impresora elegida en el primer programa. También puedo hacer lo siguiente, para que me coja la impresora que desee, eso si, siempre teniendo el nombre completo de la impresora cargada en 'nombre_imp'. En ambos programas. Código COBOL:
En el segundo programa: Código COBOL:
La working es así: Código COBOL:
|
@lfortuny, en tu primer post decías que cuando mueves el nombre de la impresora te daba el error You may not overwrite or set the value of this property
Y no te lo da en el otro Form? Porque a mi me sigue diciendo esto si le muevo el nombre de una impresora..... Entiendo que puedes obtener el nombre de la impresora y pasárselo a otro Form, pero de qué te sirve si en cuando que hagas esto: Código COBOL:
va a petar diciendo lo de may not overwrite |
@Kuk.
Cuando tenga un rato te monto un ejemplo y verás. Para la próxima semana.... Saludos. |
| La franja horaria es GMT +2. Ahora son las 01:15. |
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.