Quebra de Linha

Discussão em 'Progress 4GL' iniciado por turks, Julho 15, 2010.

  1. turks

    turks Membro Participativo

    boa tarde Galeraa!!

    Tudo bem por ai?
    Viu, seguinte, tô com uma duvida, sabe quando a gente gera um relatório que depois de uma certa quantidades de linha, ele automaticamente cria um caracter de quadradinho?

    Queria saber se tem como tirar pois na hora de imprimir esse quadradinho tá quebrando uma linha. E eu não queria que quebrasse.

    Obrigado pela atenção galeraa!
  2. pitsa

    pitsa Membro Participativo

    Usando as includes padrão de relatório do Datasul ele gera mesmo essas quebras de página.

    Gere o arquivo sem utilizar as includes que irá funcionar... tipo:

    Código:
    def stream str-rp.
    output stream str-rp to value(tt-param.arquivo) convert target "iso8859-1".
    put stream str-rp
         "teste teste" skip.
    output stream str-rp close.
    
  3. turks

    turks Membro Participativo

    Olá, obrigado pelo retorno.

    Não consegui fazer o que vc disse, mesmo assim não retirou a quebra.
    Posso te mandar o código pra você dar uma olhada por favor?

    É um relatório simplesinho, pra impressão de etiqueta.

    Olha o código abaixo.

    Código:
    /*--------- include de controle de versão ----------*/
    {include/i-prgvrs.i ies0014RP 2.06.00.000}
    
    /* Pré-processador para ativar ou não a saída para RTF*/
    &GLOBAL-DEFINE RTF NO
    
    /*------- Definição de Tabela Temporárias ----------*/
    define temp-table tt-param no-undo
        field destino          as integer
        field arquivo          as char format "x(35)"
        field usuario          as char format "x(12)"
        field data-exec        as date
        field hora-exec        as integer
        FIELD codigo--         AS CHARACTER FORMAT "X(15)"
        FIELD cliente          AS INTEGER
        FIELD modelo           AS CHARACTER FORMAT "X(45)"
        FIELD data-p           AS DATE
        FIELD data-e           AS DATE
        FIELD qt-imprimir      AS INTEGER.
        
    
    def temp-table tt-raw-digita
        field raw-digita      as raw.
    /*--------------------- recebimento de parâmetros -----------------*/
    DEFINE INPUT PARAMETER raw-param AS RAW NO-UNDO.  /*variável com conteúdo tt-param*/
    DEFINE INPUT PARAMETER TABLE FOR tt-raw-digita.
    
    /*-------------------- carrega parametros--------------------------*/
    CREATE tt-param.
    RAW-TRANSFER raw-param TO tt-param.
    
    /*----------- include padrão para variáveis de relatório ----------*/
    {include/i-rpvar.i}
    
    /*------------------ Definição de Variaveis------------------------*/
    
    DEFINE VARIABLE h-acomp         AS HANDLE     NO-UNDO. /* variavel deve ser sempre definida*/
    define variable i-count         as integer    no-undo.
    
    /*-------------- include padrão para output de relatórios----------*/
    {include/i-rpout.i &STREAM="stream str-rp"}
    
    /*-------------------- bloco principal do programa---------------- */
    ASSIGN c-programa 	  = "FES0004"
           c-versao	      = "2.04"
           c-revisao	  = ".00.000"
           c-empresa      = "Fiberbus"
           c-titulo-relat = "Emissão de Etiqueta".
    
    RUN utp/ut-acomp.p PERSISTENT SET h-acomp.
    {utp/ut-liter.i Imprimindo *}
    RUN pi-inicializar IN h-acomp ('Listagem de Pedidos').
    
    /* ---------------Definição do Form, ou cabeçalho----------------- */
    
    
    
    /* -------------------Lógica do Relatório------------------------- */
    
    
    
    FIND FIRST emitente NO-LOCK WHERE emitente.cod-emitente = cliente NO-ERROR.
    FIND FIRST ITEM NO-LOCK WHERE ITEM.it-codigo = codigo-- NO-ERROR.
    
    DO i-count = 1 to tt-param.qt-imprimir:
    
    PUT STREAM str-rp
          SKIP(3)
        "|         Descrição:                                         |" SKIP
        "|" ITEM.desc-item                                           "|" SKIP
        "|--------------+---------------------------------------------|" SKIP
        "|Código        |" codigo--    "                              |" SKIP 
       /* "|Data Produção |"  "                                     |" SKIP */
        "|Cliente       |" emitente.nome-abrev  "                                 |" SKIP
        "|Modelo        |" modelo               "|"                        SKIP
        "|Data Entrega  |" data-e "       |Data Produção |" data-p  "      |"   SKIP
        "|--------------+---------------+--------------+--------------|"   SKIP
        "|RE Acabador   |               |RE Liberação  |              |"   SKIP
        " --------------+---------------+--------------+-------------- "  SKIP(2).
    
    
    END.
    
    
    RUN pi-finalizar IN h-acomp.
    
    
  4. pitsa

    pitsa Membro Participativo

    seria algo assim:

    Código:
    
    /*--------- include de controle de versão ----------*/
    {include/i-prgvrs.i ies0014RP 2.06.00.000}
    
    /* Pré-processador para ativar ou não a saída para RTF*/
    &GLOBAL-DEFINE RTF NO
    
    /*------- Definição de Tabela Temporárias ----------*/
    define temp-table tt-param no-undo
        field destino          as integer
        field arquivo          as char format "x(35)"
        field usuario          as char format "x(12)"
        field data-exec        as date
        field hora-exec        as integer
        FIELD codigo--         AS CHARACTER FORMAT "X(15)"
        FIELD cliente          AS INTEGER
        FIELD modelo           AS CHARACTER FORMAT "X(45)"
        FIELD data-p           AS DATE
        FIELD data-e           AS DATE
        FIELD qt-imprimir      AS INTEGER.
        
    
    def temp-table tt-raw-digita
        field raw-digita      as raw.
    /*--------------------- recebimento de parâmetros -----------------*/
    DEFINE INPUT PARAMETER raw-param AS RAW NO-UNDO.  /*variável com conteúdo tt-param*/
    DEFINE INPUT PARAMETER TABLE FOR tt-raw-digita.
    
    /*-------------------- carrega parametros--------------------------*/
    CREATE tt-param.
    RAW-TRANSFER raw-param TO tt-param.
    
    /*------------------ Definição de Variaveis------------------------*/
    
    DEFINE VARIABLE h-acomp         AS HANDLE     NO-UNDO. /* variavel deve ser sempre definida*/
    define variable i-count         as integer    no-undo.
    def    stream   str-rp.
    
    RUN utp/ut-acomp.p PERSISTENT SET h-acomp.
    {utp/ut-liter.i Imprimindo *}
    RUN pi-inicializar IN h-acomp ('Listagem de Pedidos').
    
    /* ---------------Definição do Form, ou cabeçalho----------------- */
    
    
    
    /* -------------------Lógica do Relatório------------------------- */
    
    MESSAGE "Gerando no arquivo:" tt-param.arquivo
        VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
    output stream str-rp to value(tt-param.arquivo) convert target "iso8859-1".
    
    FIND FIRST emitente NO-LOCK WHERE emitente.cod-emitente = cliente NO-ERROR.
    FIND FIRST ITEM NO-LOCK WHERE ITEM.it-codigo = codigo-- NO-ERROR.
    
    DO i-count = 1 to tt-param.qt-imprimir:
    
        PUT STREAM str-rp
              SKIP(3)
            "|         Descrição:                                         |" SKIP
            "|" ITEM.desc-item                                           "|" SKIP
            "|--------------+---------------------------------------------|" SKIP
            "|Código        |" codigo--    "                              |" SKIP 
           /* "|Data Produção |"  "                                     |" SKIP */
            "|Cliente       |" emitente.nome-abrev  "                                 |" SKIP
            "|Modelo        |" modelo               "|"                        SKIP
            "|Data Entrega  |" data-e "       |Data Produção |" data-p  "      |"   SKIP
            "|--------------+---------------+--------------+--------------|"   SKIP
            "|RE Acabador   |               |RE Liberação  |              |"   SKIP
            " --------------+---------------+--------------+-------------- "  SKIP(2).
    
    
    END.
    
    output stream str-rp close.
    
    RUN pi-finalizar IN h-acomp.
    
    
  5. turks

    turks Membro Participativo

    Fala Pitsa.
    Blz?

    Cara, faz certo sim. Tira a quebra de linha na hora de executar em terminal, porem na hora de mandar direto pra impressão dá um erro esquisitão.

    Tem uma outra forma de faze-lo?
  6. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Qual erro esquisitão foi mostrado???

    A maneira correta é esta mesma ou até mesmo inserindo no OUTPUT o comando PAGE-SIZE 0, ficando assim:

    output stream str-rp to value(tt-param.arquivo) convert target "iso8859-1" page-size 0.

Compartilhe esta Página