[RESOLVIDO] Gerando PDF com código de Barras

Discussão em 'EMS , HCM e Totvs 11' iniciado por naluf, Julho 3, 2009.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. naluf

    naluf Membro Participativo

    Segue anexo um exemplo da geração de código de barras utilizando o progress e pdf.

    obs.: utilizar o pacote PDF include.
    Código:
    /******************************************************************************
    * Programa..:   Etiqueta Embalagem
    * Autor.....:   Marcelo Fulan
    * Data......:   03/07/2009
    * Finalidade:   Impressão da Etiqueta de Embalagem dos Produtos Com Código de
    *               Barras no padrão Cod-39.
    ******************************************************************************/
    { _custom\glp\pdf\pdf_inc.i "THIS-PROCEDURE"}
    
    
    DEF VAR Vold_Y      AS INTEGER NO-UNDO.
    DEF VAR c-arquivo   AS CHAR FORMAT "x(17)" NO-UNDO.
    DEF VAR c-cod-barra AS CHAR FORMAT 'x(16)'.
    DEF VAR c-it-codigo AS CHAR FORMAT 'x(16)'.
    DEF VAR i-lote      AS INT FORMAT '999999999'.
    
    ASSIGN c-cod-barra = '1234567890123'
           c-it-codigo = 'XYKZ-123'
           i-lote      = 2009123456.
    
    ASSIGN c-arquivo = "C:\temp\teste.pdf". 
    
    /* Create stream for new PDF file */
    RUN pdf_new  IN h_PDFinc ("Spdf",c-arquivo).
    
    /* Parametrizar o local onde está a fonte do código de barras */
    RUN pdf_load_font  IN h_PDFinc ("Spdf","Code39","y:\ems2\_custom\glp\pdf\support\code39.ttf","y:\ems2\_custom\glp\pdf\support\code39.afm","").
    
    RUN pdf_set_parameter("Spdf","PageLayout","OneColumn").
    
    /* Formato Paisagem */
    RUN pdf_new_page2("Spdf","Landscape").
    
    RUN pdf_set_font IN h_PDFinc ("Spdf","Courier-Bold",18.0).
    RUN pdf_text_xy("Spdf", STRING("Teste de Etiqueta de Codigo de Barras") , 1, 580).
    RUN pdf_skip("Spdf").
    
    RUN pdf_set_font IN h_PDFinc ("Spdf","Courier-Bold",90.0).
    RUN pdf_text_xy("Spdf", c-it-codigo, 1, 510).
    RUN pdf_skip("Spdf").
    
    RUN pdf_set_font IN h_PDFinc ("Spdf","Courier",60.0).
    RUN pdf_text_xy("Spdf", string(i-lote, "9999,999999"), 1, 460).
    RUN pdf_skip("Spdf").
    
    RUN pdf_text_rotate ("Spdf",0).
    RUN pdf_set_font IN h_PDFinc ("Spdf","Code39",25.0).
    /* Utilizar os inicializados e finalizadores '*' ou '<' e '>' */
    RUN pdf_text_xy IN h_PDFinc ("Spdf", string('*') + STRING(c-cod-barra) + STRING('*'), 1, 300).
            
    RUN pdf_set_font IN h_PDFinc ("Spdf","Courier",14.0).
    RUN pdf_text_xy IN h_PDFinc ("Spdf", STRING(c-cod-barra), 100, 290).
    
    /*
    RUN pdf_text_rotate ("Spdf",90).
    RUN pdf_set_font IN h_PDFinc ("Spdf","Code39",25.0).
    /* Utilizar os inicializados e finalizadores '*' ou '<' e '>' */
    RUN pdf_text IN h_PDFinc ("Spdf", string('*') + STRING(c-cod-barra) + STRING('*')).
    */
    
    RUN pdf_close("Spdf").
    
    /*Verifica se o arquivo existe e o abre*/
    IF SEARCH (c-arquivo) <> ? THEN
        OS-COMMAND NO-WAIT VALUE(c-arquivo).
    ELSE DO:
        RUN glp/MESSAGE.p('Arquivo não encontado.','Arquivo não encontrado.').
    END.
    
  2. asbahr

    asbahr Membro Participativo

    Bom dia

    Onde eu encontro o arquivo pdf_inc.i ? Se você puder me enviar por e-mail ed-asbahrtchu@hotmail.com
    muito obrigado,
  3. naluf

    naluf Membro Participativo

  4. fdantas

    fdantas Administrator Moderador

    Pessoal quando forem postar código se possivel usar a tag CODE...

    Abraço
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página