Skip to content

edmilson-nascimento/document_update

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 

Repository files navigation

Atualização de NF

Static Badge GitHub commit activity (branch)

Este tem como objeto fazer um modelo de base para que seja poupado trabalho quando houver uma solução de atualização de Nota Fiscal.

  • Utilização de BAPI
  • Atualização de cabeçalho, item, taxas e etc
  • Filtro para NF informada na selection-screen

Recuperação das informações

Antes de iniciar os ajustes, é muito importante que os dados sejam recuperados para que as tabelas obrigatórias BAPI sejam passadas corretamente. Tabelas passadas sem informações, serão aceitas como deleção para esta BAPI. A recuperação dessas informações pode ser feita através da BAPI 'J_1B_NF_DOCUMENT_READ' conforme abaixo.

        call function 'J_1B_NF_DOCUMENT_READ'
          exporting
            doc_number               = doc_number
          importing
            doc_header               = doc_header
          tables
            doc_partner              = doc_partner
            doc_item                 = doc_item
            doc_item_tax             = doc_item_tax
            doc_header_msg           = doc_header_msg
            doc_refer_msg            = doc_refer_msg
*           doc_ot_partner           =
*           doc_import_di            =
*           doc_import_adi           =
*           doc_cte_res              =
*           doc_cte_docref           =
          exceptions
            document_not_found       = 1
            docum_lock               = 2
            others                   = 3 .
        if sy-subrc <> 0 .
          message id sy-msgid type sy-msgty number sy-msgno
                with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        endif.

Alteração das informações

Apos a Recuperação das informações, ficam disponíveis as tabelas internas para que os dados sejam alterados. Basta atualizar o registro que deseja antes de chamar a próxima BAPI.

Atualização das informações

É possivel fazer alteração dos valores que espera que sejam atualizados no pontos onde as informações são passadas para as estrutura/tabelas da BAPI. Nesse caso, estou alterando apenas o campo taxsi4 que corresponde a Situação de impostos COFINS, mas pode ser aplicados a varios campos diferentes.

    loop at lt_j_1bnflin into ls_j_1bnflin .
      ls_j_1bnflin-taxsi4 = '04' .
      append ls_j_1bnflin to doc_item .
    endloop .

As informações são recuperadas pelas estruturas/tabelas ls_j_1bnfdoc e lt_j_1bnflin, mas as informações que serão atualizadas estão nos parâmetros de entrada da função J_1B_NF_DOCUMENT_UPDATE.

Apos a execução, é necessário um commit de bando de dados, que nesse caso é feito pela BAPI responsavel.

      call function 'BAPI_TRANSACTION_COMMIT'
*         exporting
*           wait          =
*         importing
*           return        =
                .

About

Atualização de NF usando J_1B_NF_DOCUMENT_UPDATE

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages