[RESOLVIDO] bodi

Discussão em 'EMS , HCM e Totvs 11' iniciado por mpdelphi, Janeiro 3, 2012.

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

    mpdelphi Membro Participativo

    srs, boa tarde..... tenho esse customizado que funciona normalmente no ems 204, mas apos conversao do ems 206 ele da erro ?

    ---------------------------
    Erro (Press HELP to view stack trace)
    ---------------------------
    O parametro identificador de temp-table tt-it-terc-nf nao confere com a temp-table destino tt-it-terc-nf. (5363)
    ---------------------------
    OK Ajuda
    ---------------------------
    ja chequei o propath da include {dibo/bodi317sd.i1} e ele esta pegando do caminho certo, abri um chamado na totvs e eles estao me enrrolando, pra variar...

    alguem poderia por genteliza apenas executar o programa abaixo no ems 206b e ver se ele retorna o mesmo erro...


    Código:
    def var h-bodi317pr                   as handle no-undo.
    def var h-bodi317sd                   as handle no-undo.
    def var h-bodi317im1bra               as handle no-undo.
    def var h-bodi317va                   as handle no-undo.
    def var h-bodi317in                   as handle no-undo.
    def var h-bodi317ef                   as handle no-undo.
    def var l-proc-ok-aux                 as log    no-undo.
    def var c-ultimo-metodo-exec          as char   no-undo.
    def var i-seq-wt-docto                as int    no-undo.
    def var i-seq-wt-it-docto             as int    no-undo.
    
    /* Def temp-table de erros. Ela tb‚m est  definida na include dbotterr.i */
    def temp-table rowerrors no-undo
        field errorsequence    as int
        field errornumber      as int
        field errordescription as char FORMAT "x(200)"
        field errorparameters  as char FORMAT "x(200)"
        field errortype        as char FORMAT "x(200)"
        field errorhelp        as char FORMAT "x(200)"
        field errorsubtype     as CHAR FORMAT "x(200)".
    
    /* Definicao da tabela temporaria tt-notas-geradas, include {dibo/bodi317ef.i1} */
    def temp-table tt-notas-geradas no-undo
        field rw-nota-fiscal as   rowid
        field nr-nota        like nota-fiscal.nr-nota-fis
        field seq-wt-docto   like wt-docto.seq-wt-docto.
    
    /* Defini‡Æo de um buffer para tt-notas-geradas */
    def buffer b-tt-notas-geradas for tt-notas-geradas.
    
    
    
    
    {dibo/bodi317sd.i1} 
    
    
    
    
    /* Inicialização das BOS para Cálculo */
    run dibo/bodi317in.p persistent set h-bodi317in.
    /*
    run dibo/bodi317sd.p persistent set h-bodi317sd.
    */
    run inicializaBOS in h-bodi317in(output h-bodi317pr,
                                     output h-bodi317sd,     
                                     output h-bodi317im1bra,
                                     output h-bodi317va).
    
                /* Limpar a tabela de erros em todas as BOS */
    run emptyRowErrors        in h-bodi317in.
    
    
    run criaWtDocto in h-bodi317sd (   input  10082,           
                                       input  "01",      
                                       input  '1',                     
                                       input  '',                      
                                       input  "trw limeira",     
                                       input  ?,                       
                                       input  4,                       
                                       input  9999,              
                                       input  TODAY,                   
                                       input  ?,                       
                                       input  "511toa",            
                                       input  '',                      
                                       output i-seq-wt-docto,          
                                       output l-proc-ok-aux    )   .   
    
    
    
    def var h-bodi404te  as handle no-undo.
    
                                             
     EMPTY TEMP-TABLE tt-it-terc-nf.
    
     /* Limpar a tabela de erros em todas as BOS */
     run emptyRowErrors        in h-bodi317in.
    
     /* Disponibilizar o registro WT-DOCTO na bodi317sd */
     run localizaWtDocto in h-bodi317sd(input  10,
                                        output l-proc-ok-aux). 
     
     /* gera tt-it-terc-nf item para nota fiscal. */
     run geraItensTerceirosTtItTercNf in h-bodi317sd  (input  10,
                                        input  "1",                    
                                        input  "0000001",            
                                        input  "",              
                                        input  100,              
                                        input  0,                
                                        output TABLE tt-it-terc-nf,
                                        output l-proc-ok-aux).     
    
    
  2. mcarril

    mcarril Membro Participativo

    Código:
    run criaWtDocto in h-bodi317sd (   input  10082,           
                                       input  "01",      
                                       input  '1',                     
                                       input  '',                      
                                       input  "trw limeira",     
                                       input  ?,                       
                                       input  4,                       
                                       input  9999,              
                                       input  TODAY,                   
                                       input  ?,                       
                                       input  "511toa",            
                                       input  '',                      
                                       output i-seq-wt-docto,          
                                       output l-proc-ok-aux    )   .   
    
    QUAL É O CONTEÚDO DA h-bodi317sd ? ela esta recebendo e enviado os mesmos parâmetros ?
  3. hpfaff

    hpfaff Membro Participativo

    Caro mcarril.

    A definição de tabela temporária do EMS 204 e do EMS 206 são totalmente diferentes.
    você está utilizando a bodi317sd.i1 do EMS 204?
  4. notini

    notini Sem Pontuação

    Estou com o mesmo problema em um programa customizado pós-migração para o ems206b.
    Se tiverem opiniões sobre o que pode estar errado , ficarei grato.
    Segue o código:

    Código:
    {crrn/crfirn01.i}
    {include/i-freeac.i}
    
    DEF OUTPUT PARAM TABLE FOR tt-dados.
    DEF INPUT PARAM c-local-arquivo     AS CHAR         NO-UNDO.
    
    DEF STREAM s-imp.
    
    DEF VAR c-linha                     AS CHAR         NO-UNDO.
    DEF VAR i-count                     AS INT          NO-UNDO.
    DEF VAR i-num-linha                 AS INT  INIT 1  NO-UNDO.
    DEF VAR h-acomp                     AS HANDLE       NO-UNDO.
    
    DEF VAR i                           AS INT          NO-UNDO.
    
    RUN utp/ut-acomp.p PERSISTENT SET h-acomp.
    RUN pi-inicializar IN h-acomp(INPUT "Obtendo Cupons...").
    
    /* Ler arquivo de cupons */
    INPUT STREAM s-imp FROM VALUE(c-local-arquivo).
    
    EMPTY TEMP-TABLE tt-dados.
    INPUT STREAM s-imp FROM VALUE(c-local-arquivo) CONVERT TARGET "IBM850".
    
    REPEAT:
    
        RUN pi-acompanhar IN h-acomp(INPUT "Lendo cupons...").
    
        /* Lê o arquivo linha a linha */
        IMPORT STREAM s-imp UNFORMATTED c-linha.
    
        IF i-num-linha >= 4 THEN
        DO:
            c-linha = fn-free-accent(c-linha).
            c-linha = REPLACE(c-linha,"~"","").
            
            CREATE tt-dados.
            ASSIGN tt-dados.id                      = "Docto " + STRING(i-num-linha - 2)
                   tt-dados.data-pagto              = DATE(ENTRY(1,c-linha,";"))
                   tt-dados.data-apresentacao       = DATE(ENTRY(2,c-linha,";"))
                   tt-dados.estabelecimento         = ENTRY(3,c-linha,";")
                   tt-dados.descricao               = ENTRY(4,c-linha,";")
                   tt-dados.resumo                  = ENTRY(5,c-linha,";")
                   tt-dados.qtde-cvs                = INT(ENTRY(6,c-linha,";"))
                   tt-dados.valor-total             = DEC(ENTRY(7,c-linha,";"))
                   tt-dados.valor-bruto             = DEC(ENTRY(8,c-linha,";"))
                   tt-dados.qtde-rejeitados         = INT(ENTRY(9,c-linha,";"))
                   tt-dados.valor-liquido           = DEC(ENTRY(10,c-linha,";"))
                   tt-dados.cur-status              = ENTRY(11,c-linha,";")
                   tt-dados.bandeira                = ENTRY(12,c-linha,";").
                   /*tt-dados.cod-estabel             = INT(ENTRY(5,c-linha,";"))
                   tt-dados.qtde-comprovante        = INT(ENTRY(5,c-linha,";"))
                   tt-dados.situacao                = ENTRY(10,c-linha,";") */
          /* MESSAGE tt-dados.id ">" tt-dados.data-deposito.*/
        END.
        i-num-linha = i-num-linha + 1.
    
    END.
    
    RUN pi-finalizar IN h-acomp.
    Definição da temp-table:
    Código:
    DEF TEMP-TABLE tt-dados NO-UNDO
        FIELD id                AS CHAR
        FIELD data-pagto        AS DATE
        FIELD data-apresentacao AS DATE
        FIELD estabelecimento   AS CHAR
        FIELD descricao         AS CHAR
        FIELD resumo            AS CHAR
        FIELD qtde-cvs          AS INT
        FIELD valor-total       AS DEC
        FIELD valor-bruto       AS DEC
        FIELD qtde-rejeitados   AS INT
        FIELD valor-liquido     AS DEC
        FIELD cur-status        AS CHAR
        FIELD bandeira          AS CHAR.  
    @hpfaff

    Sabe onde eu posso encontrar informações sobre o que mudou na maneira de definir temp-tables no ems206b?




    ----------------------- edit---------------------

    perdão por upar o tópico , só agora que vi a última mensagem era de 2012.
    Rsacoman curtiu isso.
  5. hpfaff

    hpfaff Membro Participativo

    notini...

    Não existe documentação que informe o que mudou e o que não mudou nas versões do 2.04 para o 2.06 em termos de estrutura de tabela e programas.
    No caso de chamadas de BO's, geralmente utilizamos os programas compilados mesmo, abrimos em um editor de texto tipo Editplus ou Notepad++ e procuramos a tabela temporária. Os campos subsequentes que aparecem são os utilizados. (esses campos geralmente aparecem sem criptografia).

    Agora, com relação ao programa que postou, qual a finalidade dele? Qual o erro que está apresentando?
  6. notini

    notini Sem Pontuação

    O erro é o mesmo do criador do tópico: "O parametro identificador de temp-table tt-dados nao confere com a temp-table destino tt-dados. (5363)

    O programa tem como funcionalidade importar dados nesse formato de um arquivo:

    "Período: 05/01/2013 a 05/01/2013";"";"";"";"";"";"";"";"";"";"";""
    "TOTAL";"";"";"";"";"9";"421,77";"421,77";"";"410,18";"";""
    "Data prevista de pagamento";"Data de Apresentação";"Estabelecimento";"Descrição";"Resumo";"Qtde. CVs";"Valor Total Apresentado (R$)";"Valor Bruto (R$)";"Qtde. Rejeitados";"Valor Líquido (R$)";"Status";"Bandeira"
    "04/02/2013";"05/01/2013";"1209239285";"Visa crédito";"130205";"1";"26,40";"26,40";"0";"25,45";"Agendado";"VISA"
    "07/01/2013";"05/01/2013";"1209239285";"Visa electron";"5102105";"3";"107,42";"107,42";"0";"104,79";"Enviado Banco";"VISA"
    "04/02/2013";"05/01/2013";"1209239285";"MC crédito";"130205";"2";"82,87";"82,87";"0";"79,89";"Agendado";"Mastercard"
    "07/01/2013";"05/01/2013";"1209239285";"MC maestro";"5102105";"3";"205,08";"205,08";"0";"200,05";"Enviado Banco";"Mastercard"



    ps: no arquivo txt não existe quebra de linha na descrição dos campos , o fórum é que não suporta uma linha tão grande.
    Logo , a importação começa corretamente na 4 linha.
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página