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 Manipular duplicatas na geração de nota fiscal via BODI

Discussão em 'EMS , HCM e Totvs 11' iniciado por Márcio Mello, Setembro 4, 2024.

  1. Márcio Mello

    Márcio Mello Sem Pontuação

    Olá pessoal.

    Estou realizando a importação de notas fiscais de saída no Datasul, através da BODI317.
    Tudo vai bem, exceto pelas duplicatas.
    Preciso gerar as duplicatas com conforme uma regra específica.
    Até consigo fazer a geração das duplicatas com base na condição de pagamento:

    RUN geraDuplicatas IN h-bodi317pr (input i-seq-wt-docto, output l-proc-ok-aux).

    Porém não consigo usar a BODI318 para personalizar as duplicatas.

    ===========================================
    ...
    RUN linkTowt-docto in h-bodi318 (input h-bodi317pr).
    RUN setConstraintWtDocto IN h-bodi318 (INPUT i-seq-wt-docto).
    RUN openQueryStatic in h-bodi318 (input "ofWtDocto":U).

    create tt-wt-fat-duplic.
    assign tt-wt-fat-duplic.seq....

    run emptyRowErrors in h-bodi318.
    run setRecord in h-bodi318 (input table tt-wt-fat-duplic).
    run createRecord in h-bodi318.
    ...
    ===========================================

    Ocorre o erro:
    "Procedure dibo/bodi318.p has no entry point for openQuery (6456)"

    Caso eu gere as duplicatas no início deste trecho com a função 'geraDuplicatas', não ocorre este erro, porém misturam as duplicatas geradas com as que desejo gerar.

    Já tentei usar também as funções 'getKey', 'openQueryDefault', 'openQueryOfWtDocto', 'openQueryWtDocto', sem sucesso. Talvez eu não tenha usado da maneira correta.


    Alguém pode me ajudar?
    Alguém tem exemplo de código que gera nota no FT4003 e que faça um cálculo customizado de duplicatas?

    Grato.
  2. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    Meu caro, como essa tabela é uma tabela de inicio de processo, ou seja, apartir dela que as coisas vão acontecer e ela não é o resultado de um calculo, vc pode no seu programa, simplesmente fazer essa parte na mão, sem usar BO, simples, for each na tabela, limpa ela, create na tabela e deixa do jeito que vc precisa. depois só mandar processar a nota que vai acatar o que vc colocou lá, só lembrando que a condição de pagamento na nota tem que ser zero, pra ele entender que vc está informando algo personalizado.

Compartilhe esta Página