Impresión automatizada

dj-julio -  
 lallo -
Hola,

Debo desarrollar un script que imprima automáticamente un archivo en una impresora PDF.

Este script se ejecutará desde PHP ..(¿es posible?)
Necesito como parámetros de este script el nombre del archivo a imprimir y su directorio de destino.

Por el momento tengo esto:

Dim WordApp, Doc Set WordApp = CreateObject("Word.Application") 'Aquí definimos la impresora que se utilizará. WordApp.ActivePrinter="fichier" Set Doc = WordApp.documents.open(fichier) Doc.PrintOut Doc.Close WordApp.Quit


Gracias de antemano por vuestra ayuda.

2 respuestas

  1. guy
     
    Tengo un script imp.vbs con:
    if Wscript.arguments.count >0 then
    Dim WordApp, Doc
    Set WordApp = CreateObject("Word.Application")
    Set Doc = WordApp.documents.open(Wscript.arguments.Item(0))
    Doc.PrintOut 0
    Doc.Close
    WordApp.Quit
    end if

    para lanzar la impresión, hago en línea de comandos:
    imp.vbs c:\test.rtf
    (trabajo con archivos RTF que son más fáciles de modificar en PHP).

    En teoría, desde PHP se podría lanzar vía exec('imp.vbs c:\test.rtf). Pero cuando Apache corre como servicio (en mi caso con WAMP) eso no funciona. He probado muchas cosas sobre la configuración del servicio, pero nada. La única forma por ahora es lanzar Apache en modo usuario. No es ideal para un servidor.

    Y tú, ¿has encontrado algo?
    0
  2. clark
     
    Hola a todos, entiendo que este tema date pero me ha puesto en camino para escribir mi código. Preciso que soy principiante en Vbs.

    Me gustaría montar un código que me permita

    1. abrir un cuadro de diálogo que pregunte "¿el mes ha caducado por completo?". El mismo ofrecerá dos opciones: no y salimos del procedimiento o sí y lanzamos el procedimiento siguiente:

    1.1 tengo un gráfico en un archivo de Excel (grap1.feuille1.xls)

    1.2 quiero obtener este gráfico mediante un comando

    1.3 quiero elegir la impresora CutePDF que imprimirá el gráfico

    1.4 quiero guardar el PDF resultante de la impresión en un directorio muy específico (c:/repertoire-specifique)

    No he hecho el punto 1

    para el punto 1.1 en su lugar tomé la hoja (feuille.xls) porque no sé cómo dar la dirección del gráfico.

    el punto 1.2 creo que está bien

    el punto 1.3 me devuelve un error (xlApp.ActivePrinter="CutePDF Writer") no sé porqué

    el punto 1.4, lo estoy pensando (una propuesta sería bienvenida)

    Mi código:
    Dim xlapp, classeur, feuille, Doc Set xlapp = CreateObject("Excel.Application") xlapp.Visible = True Set classeur = xlapp.Workbooks.add Set feuille = xlapp.ActiveSheet 'punto 1.1 Set Doc = xlApp.WorkBooks.open("C:\Documents and Settings\stagiaire\Bureau\feuille.xls") Aquí se define la impresora que se utilizará. xlApp.ActivePrinter="CutePDF Writer" Doc.PrintOut Doc.Close
    0
    1. lallo
       
      Hola,

      busco una macro que me permita, a partir de un archivo de Excel, crear un PDF (Pdf Creator),
      el nombre del archivo PDF sería una concatenación de la celda A1; "-" ; B1 de la hoja impresa.
      El archivo PDF se guardaría siempre en el mismo directorio, por ejemplo "dossier1"

      Deseo que el archivo PDF permanezca abierto para visualizarlo y que se cierre manualmente.

      ¿Es posible?

      Gracias de antemano por cualquier indicación
      0