macro escojer impresora
macro escojer impresora
Buenos dias. No se utiizar "getPrinterNames" para escojer la impresora por la cual quisiera imprimir. Seria vital alguna ayudita. Gracias
Editado por el administrador (RGB-es): he eliminado el tema duplicado de éste originalmente publicado en el foro de Calc. Si no lo has hecho aún por favor lee la Guía de supervivencia
Editado por el administrador (RGB-es): he eliminado el tema duplicado de éste originalmente publicado en el foro de Calc. Si no lo has hecho aún por favor lee la Guía de supervivencia
openOffice 4.2.0 y XP profesional
Re: macro escojer impresora
Hola...
En mi libro hay un capitulo entero a la impresión: http://user.services.openoffice.org/es/ ... =50&t=1545
Específicamente el ejemplo 3 te sirve...
Por favor, si esto responde tu pregunta, edita el primer mensaje de este hilo y agrega al principio del título la etiqueta [RESUELTO], de esta forma conseguiremos un foro más ordenado.
Saludos
En mi libro hay un capitulo entero a la impresión: http://user.services.openoffice.org/es/ ... =50&t=1545
Específicamente el ejemplo 3 te sirve...
Código: Seleccionar todo
Sub Imprimiendo3()
'Matriz para el descriptor de impresión
Dim mDI(2) As New com.sun.star.beans.PropertyValue
Dim mOpc()
'Cambiamos la impresora para imprimir
mDI(0).Name = "Name"
mDI(0).Value = "HP_PSC_2200"
'Cambiamos la orientación 0 = Vertical, 1 = Horizontal
mDI(1).Name = "PaperOrientation"
mDI(1).Value = 1
'Establecemos las opciones de la impresora
ThisComponent.setPrinter( mDI )
'Enviamos a imprimir
ThisComponent.Print( mOpc() )
End Sub
Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: macro escojer impresora
Muchas gracias por la colovoracion, pero abusando un poco mas de Tus conociminetos, la pregunta es : Me servi la respuesta, pero se podria ver primeros las impresoras disponibles y escojer una. Es porque la hoja tiene que ir en distintos ordenadores. Gracias
openOffice 4.2.0 y XP profesional
Re: macro escojer impresora
Hola...
¿Cual seria la diferencia de ir a Archivo | Imprimir... y seleccionar una?
Saludos
¿Cual seria la diferencia de ir a Archivo | Imprimir... y seleccionar una?
Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: macro escojer impresora
Hola. Perdona mi pesadez, me refiero si esto seria posible mediante una macro justo antes de dar la orden ThisComponent.Print( mOpc() ) . No siempre quisiera imprimir por la predeterminada.
Si me hago muy pesado por favor decirmelo.
Gracias de nuevo
Si me hago muy pesado por favor decirmelo.
Gracias de nuevo
openOffice 4.2.0 y XP profesional
Re: macro escojer impresora
Hola...
No, no es pesadez, pero implementarlo por código, sería "casi" el mismo efecto de ir a Archivo | Imprimir... y seleccionar la impresora que quieras, no veo gran diferente en presentar un cuadro de dialogo personalizado, por que la lista de impresoras tienes que mostrarla en algún lado, habría que agregar un cuadro de diálogo con al menos un cuadro de lista para listar las impresoras, lo cual, casi es igual a ir al menú Archivo | Imprimir..., por ello, mi pregunta va de nuevo ¿cual seria la diferencia de ir a Archivo | Imprimir... y seleccionar una?...
Saludos
P.D. He probado el servicio com.sun.star.awt.PrinterServer que se supone implementa el método getPrinterNames: http://api.openoffice.org/docs/common/r ... erver.html
Pero en el IDE no está disponible dicho método, no se si sea un error, lo investigaré...
No, no es pesadez, pero implementarlo por código, sería "casi" el mismo efecto de ir a Archivo | Imprimir... y seleccionar la impresora que quieras, no veo gran diferente en presentar un cuadro de dialogo personalizado, por que la lista de impresoras tienes que mostrarla en algún lado, habría que agregar un cuadro de diálogo con al menos un cuadro de lista para listar las impresoras, lo cual, casi es igual a ir al menú Archivo | Imprimir..., por ello, mi pregunta va de nuevo ¿cual seria la diferencia de ir a Archivo | Imprimir... y seleccionar una?...
Saludos
P.D. He probado el servicio com.sun.star.awt.PrinterServer que se supone implementa el método getPrinterNames: http://api.openoffice.org/docs/common/r ... erver.html
Pero en el IDE no está disponible dicho método, no se si sea un error, lo investigaré...
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: macro escojer impresora
Hola..
Tienes toda la razón, pero si pudieras ver el contenido y el porque de la hoja, quiza te ayudaria a comprender el porque me interesaria. Es para general y actualizar partes de reparción.....? Como puede hacer para que la tengas en Tu poder ???
Saludos... Tomás
Tienes toda la razón, pero si pudieras ver el contenido y el porque de la hoja, quiza te ayudaria a comprender el porque me interesaria. Es para general y actualizar partes de reparción.....? Como puede hacer para que la tengas en Tu poder ???
Saludos... Tomás
openOffice 4.2.0 y XP profesional
Re: macro escojer impresora
Como se haría si la impresora está en RED... tengo esta dirección y no me Funciona
Document.Print (Array(MakePropertyValue("NAME", "//server8/lili/EPSON Stylus C110 Series")))
donde :
Public Function MakePropertyValue(cName, uValue) As Object
Dim oStruct, oServiceManager As Object
Set oServiceManager = CreateObject("com.sun.star.ServiceManager")
Set oStruct = oServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
oStruct.Name = cName
oStruct.Value = uValue
Set MakePropertyValue = oStruct
End Function
Programo en Visual Basic 6.0....
Document.Print (Array(MakePropertyValue("NAME", "//server8/lili/EPSON Stylus C110 Series")))
donde :
Public Function MakePropertyValue(cName, uValue) As Object
Dim oStruct, oServiceManager As Object
Set oServiceManager = CreateObject("com.sun.star.ServiceManager")
Set oStruct = oServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
oStruct.Name = cName
oStruct.Value = uValue
Set MakePropertyValue = oStruct
End Function
Programo en Visual Basic 6.0....
OpenOffice 3.1 - Windows XP