1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Urgente Perdendo parte de uma string

Discussão em 'Progress 4GL' iniciado por AndersonApdo, Novembro 19, 2014.

  1. AndersonApdo

    AndersonApdo Membro Participativo

    olá, estou executando o seguinte app:

    Código:
    USING net.progress.encode.gzip.Zlib.
    PROCEDURE Unpackify:
        DEFINE INPUT-OUTPUT PARAMETER ENCODEDSOURCE AS LONGCHAR CASE-SENSITIVE NO-UNDO.
        DEFINE VARIABLE UNECODEDSOURCE              AS Memptr     NO-UNDO.
        DEFINE VARIABLE TempBlobFile                AS CHARACTER   NO-UNDO.
        Set-SIZE(UNECODEDSOURCE) = 0.
        TempBlobFile = SUBSTITUTE('&1.unpackify_&3.blob',
                                  SESSION:TEMP-DIR,
                                  THIS-PROCEDURE:UNIQUE-ID).
        /** First Stage Decode the data to memptr**/
        UNECODEDSOURCE = BASE64-DECODE(ENCODEDSOURCE).
        OUTPUT TO c:\4gl\teste.txt.
       
        
        /** THE MAGIC! I don't know why but we have to drop the first four bytes starting at the 5th byte.**/
        /** Compress GZIP files start with 0x1F 0x8B 0x08**/
        COPY-LOB FROM UNECODEDSOURCE STARTING AT 5 TO FILE TempBlobFile.
       
        /** Memory Clean up.**/
        Set-SIZE(UNECODEDSOURCE) = 0.
        Zlib:getInstance():uncompressFile(TempBlobFile, TempBlobFile + '.xml', true).
       
        IF SEARCH(TempBlobFile + '.xml') NE ? THEN
        DO:
            COPY-LOB FROM FILE TempBlobFile + '.xml' TO OBJECT ENCODEDSOURCE.
            OS-DELETE VALUE(TempBlobFile + '.xml').
        END.
        
        /** Delete the temporary Blob file**/
        OS-DELETE VALUE(TempBlobFile).
        RETURN.
    END PROCEDURE.
    /** Main Block**/
    
    
    DEFINE VARIABLE OracleDBblbField AS LONGCHAR CASE-SENSITIVE NO-UNDO.
    OracleDBblbField = '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'.
    RUN Unpackify (INPUT-OUTPUT OracleDBblbField).
    
    /* copy-lob OracleDBblbField to file 'c:\4gl\zlib-new.xml'. */
    
    MESSAGE  STRING(OracleDBblbField) length(OracleDBblbField)
        View-AS ALERT-BOX INFO.
    era para ele me retornar um XML grande, mas está retornando apenas 25 caracteres, na versão 11.4 do Progress ele retorna certinho, mas na 10.2b ele está com este problema. Você possuem alguma ideia de como posso resolver isso?
  2. Eilleen

    Eilleen Membro Ativo

    Boa tarde, Anderson!

    Provavelmente Progress 10.2b não está reconhecendo algum comando/tipo que o 11.4 reconhece, ou houve alteração no comando de uma versão para outra...
    Dá uma pesquisada nas modificações das versões, quem sabe encontre algo. ;)
    jeanhype curtiu isso.
  3. AndersonApdo

    AndersonApdo Membro Participativo

    Olá Eilleen, realmente, o problema estava na versão. Agradeço sua ajuda.

    Modifiquei a método e transformei ele em uma função que retorna está string, só modificando a forma de converter ele e resolvi o problema.

    Obrigado.
  4. Eilleen

    Eilleen Membro Ativo

    Olá!
    Que bom que deu certo! :D

Compartilhe esta Página