CE PLUS - Nota 007581

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: LI

Data/Hora da Publicação: 17/11/2008 00:00:00

Data/Hora Última Alteração: 23/02/2011 10:03:28

Descrição da Nota: VINCULAÇÃO DE ATO CONCESSÓRIO NA LI

Sintoma

Ajustado programa de LI para que possa ser realizada a vunculação a um Ato concessório sem que tenha

sido feita a vinculação prévia dos pedidos a um Ato Concessório.

 

 

Solução

Ajustado programa de LI para que possa ser realizada a vunculação a um Ato concessório sem que tenha

sido feita a vinculação prévia dos pedidos a um Ato Concessório.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ATUALIZAÇÃO DA GRAVAÇÃO DOS DADOS DO DRAWBACK

AO SUBSTITUIR LI, PROGRAMA RECLAMA DE NÚMERO DE REGISTRO

QUNATIDADE NA UNIDADE DE MEDIDA ESTATISTICA NO DETALHE DO ITEN DA LI

AJUSTADO PREENCHIMENTO DAS TABELAS DE DRAWBACK NO RECEBIMENTO COM LOTE

SALDO PLI, BALANCE ORDER NA PLI E NO EMBARQUE

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 07581 Data: 17/11/2008 Hora: 09:51:24

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 07581

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00007

Agrupamento              : 00074

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

02236  - 00001 - 6.0    - 00025  - SALDO PLI, BALANCE ORDER NA PLI E NO EMBARQUE

03154  - 00002 - 6.0    - 00026  - AJUSTADO PREENCHIMENTO DAS TABELAS DE DRAWBACK NO RECEBIMENTO COM

04686  - 00003 - 7.0    - 00003  - QUNATIDADE NA UNIDADE DE MEDIDA ESTATISTICA NO DETALHE DO ITEN DA

05253  - 00004 - 7.0    - 00003  - ATUALIZAÇÃO DA GRAVAÇÃO DOS DADOS DO DRAWBACK

07382  - 00005 - 7.0    - 00007  - AO SUBSTITUIR LI, PROGRAMA RECLAMA DE NÚMERO DE REGISTRO

----------------------------------------------------------------------------------------------------

VINCULAÇÃO DE ATO CONCESSÓRIO NA LI

----------------------------------------------------------------------------------------------------

Palavras Chave:

VINCULAÇÃO - LI - ATO - CONCESSÓRIO -

/PWS/SAPMZYCI020 - /PWS/SAPMZYCI017

----------------------------------------------------------------------------------------------------

Objetos da nota:

DYNP /PWS/SAPMZYCI020                        0810

REPS /PWS/MZYCI017F02

REPS /PWS/MZYCI020F01

REPS /PWS/MZYCI020F02

REPS /PWS/MZYCI020I01

REPS /PWS/MZYCI020O01

REPS /PWS/MZYCI020X01

REPT /PWS/SAPMZYCI020

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em DYNP /PWS/SAPMZYCI020                        0810

 

MODIFICAR CARACTERÍSTICAS DA TELA 0810

Altura atual (linhas)    28

 

MODIFICAR FRAME ""

Altura                   3

Linha                    1

 

MODIFICAR FRAME "%#AUTOTEXT001"

Altura                   24

Linha                    4

 

EXCLUIR CAMPO TEXTO "/PWS/ZYCIE079-DESC_COMPLEM"

 

EXCLUIR TEXTO "/PWS/ZYCIE079-DESC_COMPLEM"

 

EXCLUIR CAMPO TEXTO "/PWS/ZYCIE079-GEWEI"

 

EXCLUIR TEXTO "/PWS/ZYCIE079-GEWEI"

 

MODIFICAR CAMPO TEXTO "/PWS/ZYCIE079-MEINS"

Linha                    2

Coluna                   57

 

MODIFICAR TEXTO "/PWS/ZYCIE079-MEINS"

Comprimento Visível      6

Linha                    2

Coluna                   50

Texto                    UM NCM

 

EXCLUIR CAMPO TEXTO "/PWS/ZYCIE079-NETPR"

 

EXCLUIR TEXTO "/PWS/ZYCIE079-NETPR"

 

EXCLUIR CAMPO TEXTO "/PWS/ZYCIE079-NTGEW"

 

EXCLUIR TEXTO "/PWS/ZYCIE079-NTGEW"

 

INCLUIR CAMPO TEXTO "/PWS/ZYCIE079-QTD_ITEN"

Comprimento Visível      19

Linha                    2

Coluna                   30

Formato                  DEC

Linhas mínimas           15

Colunas mínimas          5

Texto                    _.___.___.___,_____

 

INCLUIR TEXTO "/PWS/ZYCIE079-QTD_ITEN"

Comprimento Visível      22

Linha                    2

Coluna                   6

Formato                  CHAR

Texto                    Qtde. Pedido na UM NCM

Código função

 

EXCLUIR CAMPO TEXTO "/PWS/ZYCIE079-SLQTDE"

 

EXCLUIR TEXTO "/PWS/ZYCIE079-SLQTDE"

 

EXCLUIR TEXTO "/PWS/ZYCIE244-DESCTIPO_AC" em tbl.contr./tabstr.

 

EXCLUIR TEXTO "/PWS/ZYCIE244-DESC_MODALIDADE" em tbl.contr./tabstr.

 

EXCLUIR TEXTO "/PWS/ZYCIE244-DTATOC" em tbl.contr./tabstr.

 

EXCLUIR TEXTO "/PWS/ZYCIE244-NRATOC" em tbl.contr./tabstr.

 

EXCLUIR TEXTO "/PWS/ZYCIE244-NRSEQD" em tbl.contr./tabstr.

 

EXCLUIR TEXTO "/PWS/ZYCIE244-S_REALFOB" em tbl.contr./tabstr.

 

EXCLUIR TEXTO "/PWS/ZYCIE245-SDOCOMP_T" em tbl.contr./tabstr.

 

INCLUIR CAMPO TEXTO "/PWS/ZYCIT245-NETPR_T"

Altura                   19

Comprimento Visível      31

Linha                    2

Coluna                   96

Formato                  CURR

Campo referência         /PWS/ZYCIT245-WAERS

Linhas mínimas           23

Colunas mínimas          2

Texto                    _______________________________

 

INCLUIR TEXTO "/PWS/ZYCIT245-NETPR_T"

Comprimento Visível      20

Linha                    2

Coluna                   75

Formato                  CHAR

Texto                    FOB Importação na LI

Código função

 

INCLUIR CAMPO TEXTO "/PWS/ZYCIT245-WAERS"

Comprimento Visível      5

Linha                    2

Coluna                   116

Formato                  CUKY

Linhas mínimas           5

Texto                    _____

 

EXCLUIR TEXTO "C_ICON_VIN" em tbl.contr./tabstr.

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-DATA" em tbl.contr./tabstr.

Altura                   10

Comprimento Visível      10

Linha                    1

Coluna                   3

Formato                  DATS

Texto                    __________

 

INCLUIR TEXTO "ITAB_ATOS2-DATA" em tbl.contr./tabstr.

Altura                   10

Comprimento Visível      10

Linha                    1

Coluna                   3

Formato                  CHAR

Texto                    Dt.Emissão

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-ICON" em tbl.contr./tabstr.

Altura                   6

Comprimento Visível      132

Linha                    1

Coluna                   1

Formato                  CHAR

Texto                    _______________________________________________

 

INCLUIR TEXTO "ITAB_ATOS2-ICON" em tbl.contr./tabstr.

Altura                   6

Comprimento Visível      6

Linha                    1

Coluna                   1

Formato                  CHAR

Texto                    Status

 

INCLUIR CAIXA DE VERIFICAÇÃO "ITAB_ATOS2-MARC" em tbl.contr./tabstr.

Altura                   1

Comprimento Visível      1

Linha                    1

Formato                  CHAR

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-MOD_TEXT" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      60

Linha                    1

Coluna                   4

Formato                  CHAR

Texto                    _______________________________________________

 

INCLUIR TEXTO "ITAB_ATOS2-MOD_TEXT" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      10

Linha                    1

Coluna                   4

Formato                  CHAR

Texto                    Modalidade

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-NRSEQD" em tbl.contr./tabstr.

Altura                   14

Comprimento Visível      10

Linha                    1

Coluna                   2

Formato                  CHAR

Texto                    __________

 

INCLUIR TEXTO "ITAB_ATOS2-NRSEQD" em tbl.contr./tabstr.

Altura                   14

Comprimento Visível      19

Linha                    1

Coluna                   2

Formato                  CHAR

Texto                    Seq.Ato concessório

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-QTD_TOT" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      38

Linha                    1

Coluna                   6

Formato                  DEC

Texto                    ______________________________________

 

INCLUIR TEXTO "ITAB_ATOS2-QTD_TOT" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      15

Linha                    1

Coluna                   6

Formato                  CHAR

Texto                    Saldo Qtd no AC

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-TIPO_TEXT" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      60

Linha                    1

Coluna                   5

Formato                  CHAR

Texto                    _______________________________________________

 

INCLUIR TEXTO "ITAB_ATOS2-TIPO_TEXT" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      5

Linha                    1

Coluna                   5

Formato                  CHAR

Texto                    Tipo

 

INCLUIR CAMPO TEXTO "ITAB_ATOS2-VLFOB" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      20

Linha                    1

Coluna                   7

Formato                  DEC

Texto                    ____________________

 

INCLUIR TEXTO "ITAB_ATOS2-VLFOB" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      15

Linha                    1

Coluna                   7

Formato                  CHAR

Texto                    Saldo FOB no AC

 

EXCLUIR CAIXA DE VERIFICAÇÃO "IT_VINCULATO-MARC" em tbl.contr./tabstr.

 

MODIFICAR CONTROLE DE TABELA "TC_VINCULATO"

Altura                   22

Linha                    5

Coluna                   4

 

EXCLUIR CAMPO TEXTO "V_DTATOC_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_ICON_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_MODAL_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_NRATOC_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_NRSEQD_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_SDOCOMP_T_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_SDOFOB_VIN" em tbl.contr./tabstr.

 

EXCLUIR CAMPO TEXTO "V_TPDRAW_VIN" em tbl.contr./tabstr.

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0810

PROCESS BEFORE OUTPUT.

 MODULE status_0810.

 module ordena_lista.

* >> Início da exclusão:

   loop at it_vinculato with control tc_vinculato

* << Fim da exclusão

* >> Início da inclusão:

   loop at itab_atos2 with control tc_vinculato

* << Fim da inclusão

    cursor tc_vinculato-current_line.

    module carrega_it_vinculato.

  endloop.

PROCESS AFTER INPUT.

* >> Início da exclusão:

  loop at it_vinculato.

* << Fim da exclusão

* >> Início da inclusão:

  loop at itab_atos2.

* << Fim da inclusão

    module modifica_it_vinculato.

  endloop.

  MODULE user_command_0810.

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI017F02

 

...

FORM adiciona_saldo_ato.

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

  DATA: itab_zycit079 TYPE /pws/zycit079 OCCURS 0 WITH HEADER LINE.

  DATA: itab_ekpo2 TYPE ekpo OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

...

 

...

           WHERE ebeln = itab_itens_nf-ebeln

             AND ebelp = itab_itens_nf-ebelp.

    SELECT * FROM /pws/zycit078 INTO TABLE itab_zycit078

        FOR ALL ENTRIES IN itab_zycit003

        WHERE nrseqli EQ itab_zycit003-nrseqli.

    SELECT * FROM /pws/zycit376 INTO TABLE itab_zycit376

      FOR ALL ENTRIES IN itab_zycit003

      WHERE ebeln EQ itab_zycit003-ebeln

        AND ebelp EQ itab_zycit003-ebelp

        AND nrseqd NE space.

* >> Início da exclusão: FORM ADICIONA_SALDO_ATO

    IF NOT itab_zycit376[] IS INITIAL.

* << Fim da exclusão

      SELECT * FROM /pws/zycit245 INTO TABLE itab_zycit245

* >> Início da exclusão: FORM ADICIONA_SALDO_ATO

          FOR ALL ENTRIES IN itab_zycit376

          WHERE nrseqd EQ itab_zycit376-nrseqd

            AND nritem EQ itab_zycit376-nritem.

* << Fim da exclusão

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

        FOR ALL ENTRIES IN itab_zycit003

        WHERE nrseqd EQ itab_zycit003-nrseqd

          AND nritem < 90000.

    SELECT * FROM /pws/zycit079 INTO TABLE itab_zycit079

        FOR ALL ENTRIES IN itab_zycit003

        WHERE nrseqli EQ itab_zycit003-nrseqli

          AND ebeln EQ itab_zycit003-ebeln

          AND ebelp EQ itab_zycit003-ebelp.

    SELECT * FROM ekpo INTO TABLE itab_ekpo2

      FOR ALL ENTRIES IN itab_zycit003

        WHERE ebeln EQ itab_zycit003-ebeln

          AND ebelp EQ itab_zycit003-ebelp.

* << Fim da inclusão

    ENDIF.

* >> Início da exclusão: FORM ADICIONA_SALDO_ATO

  ENDIF.

* << Fim da exclusão

  LOOP AT itab_zycit003 WHERE NOT nrseqd IS initial.

    READ TABLE itab_itens_nf WITH KEY nrseq = itab_zycit003-nrseq

                                      ebeln = itab_zycit003-ebeln

                                      ebelp = itab_zycit003-ebelp.

    READ TABLE itab_zycit042 WITH KEY nrseq = itab_itens_nf-nrseq

                                      ebeln = itab_itens_nf-ebeln

...

 

...

                                         /pws/zycit085-dttax

                                CHANGING itab_zycit279-vltot.

      PERFORM valor_converte USING /pws/zycbt007-waersb

                                         /pws/zycbt007-waersa

                                         /pws/zycit085-dttax

                                CHANGING itab_zycit279-vlfrete.

      PERFORM valor_converte USING /pws/zycbt007-waersb

                                         /pws/zycbt007-waersa

                                         /pws/zycit085-dttax

                                CHANGING itab_zycit279-vlseg.

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

      READ TABLE itab_zycit279 TRANSPORTING NO FIELDS

                    WITH KEY nrseq = itab_zycit003-nrseq

                             ebeln = itab_zycit003-ebeln

                             ebelp = itab_zycit003-ebelp.

      IF sy-subrc NE 0.

* << Fim da inclusão

      READ TABLE itab_zycit376 WITH KEY ebeln = itab_zycit003-ebeln

                                        ebelp = itab_zycit003-ebelp.

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

        IF sy-subrc EQ 0.

* << Fim da inclusão

      READ TABLE itab_zycit245 WITH KEY nrseqd = itab_zycit376-nrseqd

                                        nritem = itab_zycit376-nritem.

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

        ELSE.

          READ TABLE itab_zycit079

                        WITH KEY nrseqli = itab_zycit003-nrseqli

                                 ebeln = itab_zycit003-ebeln

                                 ebelp = itab_zycit003-ebelp.

          READ TABLE itab_zycit245

                            WITH KEY nrseqd = itab_zycit003-nrseqd

                         nritem+2 = itab_zycit079-item_drawback.

          READ TABLE itab_ekpo2 WITH KEY ebeln = itab_zycit003-ebeln

                                        ebelp = itab_zycit003-ebelp.

          itab_zycit079-netpr = itab_zycit079-netpr *

                              itab_zycit079-qtd_iten.

          itab_zycit376-qtd_apro = itab_zycit279-menge.

          PERFORM converter_moeda

                               USING itab_zycit079-netpr

                                     itab_zycit079-waers

                                     /pws/zycbt007-waersa

                                     itab_ekpo2-aedat

                            CHANGING itab_zycit376-vlfob .

        ENDIF.

* << Fim da inclusão

      CLEAR: v_variacfob.

      IF NOT itab_zycit279-menge  IS INITIAL

     AND NOT itab_zycit376-qtd_apro IS INITIAL.

        v_variacfob = itab_zycit279-menge *

         ( ( itab_zycit376-vlfob / itab_zycit376-qtd_apro ) -

           ( itab_zycit279-vltot / itab_zycit279-menge    ) ).

      ENDIF.

      itab_zycit245-vlvinc = itab_zycit245-vlvinc - v_variacfob.

      MODIFY itab_zycit245 TRANSPORTING vlvinc WHERE

* >> Início da exclusão: FORM ADICIONA_SALDO_ATO

                                     nrseqd EQ itab_zycit376-nrseqd AND

                                     nritem EQ itab_zycit376-nritem.

* << Fim da exclusão

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

                                     nrseqd EQ itab_zycit245-nrseqd AND

                                       nritem EQ itab_zycit245-nritem.

* << Fim da inclusão

      UPDATE /pws/zycit245 SET vlvinc = itab_zycit245-vlvinc

                           WHERE nrseqd EQ itab_zycit245-nrseqd

                             AND nritem EQ itab_zycit245-nritem.

* >> Início da inclusão: FORM ADICIONA_SALDO_ATO

      ENDIF.

* << Fim da inclusão

      .

      .

      .

      PERFORM taxa_converte USING    /pws/zycit001-waers

...

 

...

FORM estorna_saldo_ato.

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

  DATA: itab_zycit079 TYPE /pws/zycit079 OCCURS 0 WITH HEADER LINE.

  DATA: itab_ekpo2 TYPE ekpo OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

...

 

...

         FROM ekpo INTO CORRESPONDING FIELDS OF TABLE itab_matuse

         FOR ALL ENTRIES IN itab_itens_nf

         WHERE ebeln = itab_itens_nf-ebeln

           AND ebelp = itab_itens_nf-ebelp.

  IF NOT itab_itens_nf[] IS INITIAL.

    SELECT * FROM /pws/zycit376 INTO TABLE itab_zycit376d

      FOR ALL ENTRIES IN itab_itens_nf

      WHERE ebeln EQ itab_itens_nf-ebeln

        AND ebelp EQ itab_itens_nf-ebelp

        AND nrseqd NE space.

* >> Início da exclusão: FORM ESTORNA_SALDO_ATO

    IF NOT itab_zycit376d[] IS INITIAL.

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

    IF itab_zycit003[] IS INITIAL.

      SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003

             FOR ALL ENTRIES IN itab_itens_nf

             WHERE nrseq = itab_itens_nf-nrseq

               AND ebeln = itab_itens_nf-ebeln

               AND ebelp = itab_itens_nf-ebelp.

    ENDIF.

    IF NOT itab_zycit003[] IS INITIAL.

* << Fim da inclusão

      SELECT * FROM /pws/zycit245 INTO TABLE itab_zycit245d

* >> Início da exclusão: FORM ESTORNA_SALDO_ATO

          FOR ALL ENTRIES IN itab_zycit376d

          WHERE nrseqd EQ itab_zycit376d-nrseqd

            AND nritem EQ itab_zycit376d-nritem.

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

          FOR ALL ENTRIES IN itab_zycit003

          WHERE nrseqd EQ itab_zycit003-nrseqd

            AND nritem < 90000.

      SELECT * FROM /pws/zycit079 INTO TABLE itab_zycit079

          FOR ALL ENTRIES IN itab_zycit003

          WHERE nrseqli EQ itab_zycit003-nrseqli

            AND ebeln EQ itab_zycit003-ebeln

            AND ebelp EQ itab_zycit003-ebelp.

      SELECT * FROM ekpo INTO TABLE itab_ekpo2

        FOR ALL ENTRIES IN itab_zycit003

          WHERE ebeln EQ itab_zycit003-ebeln

            AND ebelp EQ itab_zycit003-ebelp.

* << Fim da inclusão

    ENDIF.

  ENDIF.

  LOOP AT itab_itens_nf.

    READ TABLE itab_matuse WITH KEY ebeln = itab_itens_nf-ebeln

                                    ebelp = itab_itens_nf-ebelp.

    READ TABLE itab_zycit279 WITH KEY nrseq = itab_itens_nf-nrseq

                                      ebeln = itab_itens_nf-ebeln

                                      ebelp = itab_itens_nf-ebelp.

    IF sy-subrc = 0 .

      v_tabix1 = sy-tabix.

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

      IF /pws/zycit321-lote EQ space OR

         itab_zycit279-lote IS INITIAL.

        PERFORM carrega_umncm_real USING itab_zycit003-matnr

                                CHANGING itab_itens_nf-meins

                                         itab_itens_nf-qtd_item.

        itab_zycit279-slqtde =

                          itab_zycit279-slqtde - itab_itens_nf-qtd_item.

        IF itab_zycit279-slqtde < 0.

          itab_zycit279-slqtde = 0.

        ENDIF.

        IF itab_zycit279-slqtde = 0.

* << Fim da inclusão

      READ TABLE itab_zycit376d WITH KEY ebeln = itab_itens_nf-ebeln

                                        ebelp = itab_itens_nf-ebelp.

* >> Início da exclusão: FORM ESTORNA_SALDO_ATO

      READ TABLE itab_zycit245d WITH KEY nrseqd = itab_zycit376d-nrseqd

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

          IF sy-subrc EQ 0 .

            READ TABLE itab_zycit245d

                            WITH KEY nrseqd = itab_zycit376d-nrseqd

* << Fim da inclusão

                                         nritem = itab_zycit376d-nritem.

* >> Início da exclusão: FORM ESTORNA_SALDO_ATO

      READ TABLE itab_zycit003 WITH KEY nrseq = itab_itens_nf-nrseq

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

            READ TABLE itab_zycit003

                             WITH KEY nrseq = itab_itens_nf-nrseq

* << Fim da inclusão

                                        ebeln = itab_itens_nf-ebeln

                                        ebelp = itab_itens_nf-ebelp.

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

          ELSE.

            READ TABLE itab_zycit003

                             WITH KEY nrseq = itab_itens_nf-nrseq

                                      ebeln = itab_itens_nf-ebeln

                                      ebelp = itab_itens_nf-ebelp.

            READ TABLE itab_zycit079

                          WITH KEY nrseqli = itab_zycit003-nrseqli

                                   ebeln = itab_zycit003-ebeln

                                   ebelp = itab_zycit003-ebelp.

            READ TABLE itab_zycit245d

                              WITH KEY nrseqd = itab_zycit003-nrseqd

                           nritem+2 = itab_zycit079-item_drawback.

            READ TABLE itab_ekpo2 WITH KEY ebeln = itab_zycit003-ebeln

                                          ebelp = itab_zycit003-ebelp.

            itab_zycit079-netpr = itab_zycit079-netpr *

                                itab_zycit079-qtd_iten.

            itab_zycit376d-qtd_apro = itab_zycit279-menge.

            PERFORM converter_moeda

                                 USING itab_zycit079-netpr

                                       itab_zycit079-waers

                                       /pws/zycbt007-waersa

                                       itab_ekpo2-aedat

                              CHANGING itab_zycit376d-vlfob .

          ENDIF.

* << Fim da inclusão

      CLEAR: v_variacfobd.

      IF NOT itab_zycit279-menge  IS INITIAL

     AND NOT itab_zycit376d-qtd_apro IS INITIAL.

        v_variacfobd = itab_zycit279-menge *

        ( ( itab_zycit376d-vlfob / itab_zycit376d-qtd_apro ) -

          ( itab_zycit279-vltot / itab_zycit279-menge    ) ).

      ENDIF.

      itab_zycit245d-vlvinc = itab_zycit245d-vlvinc + v_variacfobd.

* >> Início da exclusão: FORM ESTORNA_SALDO_ATO

      MODIFY itab_zycit245d TRANSPORTING vlvinc WHERE

                                     nrseqd EQ itab_zycit376d-nrseqd AND

                                     nritem EQ itab_zycit376d-nritem.

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

          MODIFY itab_zycit245d TRANSPORTING vlvinc

                        WHERE nrseqd EQ itab_zycit245d-nrseqd

                          AND nritem EQ itab_zycit245d-nritem.

* << Fim da inclusão

      UPDATE /pws/zycit245 SET vlvinc = itab_zycit245d-vlvinc

                           WHERE nrseqd EQ itab_zycit245d-nrseqd

                             AND nritem EQ itab_zycit245d-nritem.

* >> Início da exclusão: FORM ESTORNA_SALDO_ATO

      IF /pws/zycit321-lote EQ space OR

         itab_zycit279-lote IS INITIAL.

        PERFORM carrega_umncm_real USING itab_zycit003-matnr

                                CHANGING itab_itens_nf-meins

                                         itab_itens_nf-qtd_item.

        itab_zycit279-slqtde =

                          itab_zycit279-slqtde - itab_itens_nf-qtd_item.

        IF itab_zycit279-slqtde < 0.

          itab_zycit279-slqtde = 0.

        ENDIF.

        IF itab_zycit279-slqtde = 0.

* << Fim da exclusão

          DELETE FROM /pws/zycit279 WHERE nrseq = itab_itens_nf-nrseq

                                      AND ebeln = itab_itens_nf-ebeln

                                      AND ebelp = itab_itens_nf-ebelp.

          DELETE  itab_zycit279     WHERE nrseq = itab_itens_nf-nrseq

                                      AND ebeln = itab_itens_nf-ebeln

                                      AND ebelp = itab_itens_nf-ebelp.

          CLEAR itab_zycit279.

          CONTINUE.

        ENDIF.

        MODIFY itab_zycit279 INDEX v_tabix1.

...

 

...

            ELSE.

            DELETE FROM /pws/zycit279 WHERE nrseq = itab_itens_nf-nrseq

                                        AND ebeln = itab_itens_nf-ebeln

                                        AND ebelp = itab_itens_nf-ebelp

                                    AND lote  = itab_zycit223-lote_forn.

            DELETE  itab_zycit279     WHERE nrseq = itab_itens_nf-nrseq

                                        AND ebeln = itab_itens_nf-ebeln

                                        AND ebelp = itab_itens_nf-ebelp

                                    AND lote  = itab_zycit223-lote_forn.

            ENDIF.

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

          READ TABLE itab_zycit279 WITH KEY nrseq = itab_itens_nf-nrseq

                                            ebeln = itab_itens_nf-ebeln

                                            ebelp = itab_itens_nf-ebelp.

            IF sy-subrc EQ 0.

* << Fim da inclusão

            CLEAR itab_zycit279.

            CONTINUE.

* >> Início da inclusão: FORM ESTORNA_SALDO_ATO

            ENDIF.

            READ TABLE itab_zycit376d

                WITH KEY ebeln = itab_itens_nf-ebeln

                         ebelp = itab_itens_nf-ebelp.

            IF sy-subrc EQ 0 .

              READ TABLE itab_zycit245d

                              WITH KEY nrseqd = itab_zycit376d-nrseqd

                                       nritem = itab_zycit376d-nritem.

              READ TABLE itab_zycit003

                               WITH KEY nrseq = itab_itens_nf-nrseq

                                        ebeln = itab_itens_nf-ebeln

                                        ebelp = itab_itens_nf-ebelp.

            ELSE.

              READ TABLE itab_zycit003

                               WITH KEY nrseq = itab_itens_nf-nrseq

                                        ebeln = itab_itens_nf-ebeln

                                        ebelp = itab_itens_nf-ebelp.

              READ TABLE itab_zycit079

                            WITH KEY nrseqli = itab_zycit003-nrseqli

                                     ebeln = itab_zycit003-ebeln

                                     ebelp = itab_zycit003-ebelp.

              READ TABLE itab_zycit245d

                                WITH KEY nrseqd = itab_zycit003-nrseqd

                             nritem+2 = itab_zycit079-item_drawback.

             READ TABLE itab_ekpo2 WITH KEY ebeln = itab_zycit003-ebeln

                                            ebelp = itab_zycit003-ebelp.

              itab_zycit079-netpr = itab_zycit079-netpr *

                                  itab_zycit079-qtd_iten.

              itab_zycit376d-qtd_apro = itab_zycit279-menge.

              PERFORM converter_moeda

                                   USING itab_zycit079-netpr

                                         itab_zycit079-waers

                                         /pws/zycbt007-waersa

                                         itab_ekpo2-aedat

                                CHANGING itab_zycit376d-vlfob .

            ENDIF.

            CLEAR: v_variacfobd.

            IF NOT itab_zycit279-menge  IS INITIAL

               AND NOT itab_zycit376d-qtd_apro IS INITIAL.

              v_variacfobd = itab_zycit279-menge *

                 ( ( itab_zycit376d-vlfob / itab_zycit376d-qtd_apro ) -

                   ( itab_zycit279-vltot / itab_zycit279-menge    ) ).

            ENDIF.

           itab_zycit245d-vlvinc = itab_zycit245d-vlvinc + v_variacfobd.

            MODIFY itab_zycit245d TRANSPORTING vlvinc

                          WHERE nrseqd EQ itab_zycit245d-nrseqd

                            AND nritem EQ itab_zycit245d-nritem.

            UPDATE /pws/zycit245 SET vlvinc = itab_zycit245d-vlvinc

                                 WHERE nrseqd EQ itab_zycit245d-nrseqd

                                   AND nritem EQ itab_zycit245d-nritem.

* << Fim da inclusão

          ENDIF.

          MODIFY itab_zycit279 INDEX v_tabix .

        ENDLOOP.

      ENDIF.

    ENDIF.

  ENDLOOP.

  IF NOT itab_zycit279[] IS INITIAL.

    MODIFY /pws/zycit279 FROM TABLE itab_zycit279.

  ENDIF.

ENDFORM.

...

 

...

* >> Início da inclusão:

FORM converter_moeda USING p_devlme

                           p_deme

                           p_parame

                           p_data

                  CHANGING p_paravlme.

  DATA: v_ctmoeda LIKE tcurr-kurst VALUE 'G',

        v_devlme   LIKE bsak-wrbtr,

        v_paravlme LIKE bsak-wrbtr.

  v_devlme = p_devlme .

  IF p_devlme NE 0.

    CALL FUNCTION '/PWS/ZYCB_MONTANTE_CONVERTE'

         EXPORTING

              i_montante                 = v_devlme

              i_demoeda                  = p_deme

              i_paramoeda                = p_parame

              i_ctmoeda                  = v_ctmoeda

              i_dtbase                   = p_data

         IMPORTING

              e_montante                 = v_paravlme

         EXCEPTIONS

              i_demoeda_nao_encontrado   = 1

              i_paramoeda_nao_encontrado = 2

              fator_nao_encontrado       = 3

              i_ctmoeda_nao_encontrado   = 4

              i_dtbase_nao_encontrada    = 5

              taxa_nao_encontrada        = 6

              i_montante_nao_encontrado  = 7.

    p_paravlme = v_paravlme.

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

      PERFORM verificacao_sub.

      CLEAR v_flagsub.

    ENDIF.

  ENDIF.

  PERFORM: verifica_saldo       ,

           verifica_saldo_pexpam.

  IF v_erro_pexpam EQ 'S' OR

     v_erro_drawback EQ 'S'.

    EXIT.

  ENDIF.

* >> Início da inclusão: FORM SAVE

  PERFORM save_drawback.

* << Fim da inclusão

  CLEAR: v_ncm,

         v_erro.

  READ TABLE it_zycit079 INDEX 1.

  IF sy-subrc EQ 0.

    READ TABLE itab_itens_aux WITH KEY ebelp = it_zycit079-ebelp

                                   ebeln = it_zycit079-ebeln.

    v_ncm = itab_itens_aux-j_1bnbm.

  ENDIF.

  MOVE: v_ncm TO /pws/zycie078-steuc1,

        v_ncm TO wa_zycit078-steuc1.

...

 

...

  CLEAR it_vincula.

  REFRESH it_vincula.

  PERFORM: salva_forn   ,

           salva_item   ,

           salva_anu    ,

           salva_anu2   ,

           salva_v_esp  ,

           save_txt     ,

           save_txt_2   ,

           save_pexpam  ,

* >> Início da exclusão: FORM SAVE

           save_drawback,

* << Fim da exclusão

           atual_item   .

  IF okcode = 'CANCEL'.

    UPDATE /pws/zycit079 SET numli = space

                WHERE numli = /pws/zycie078-nrseqli.

  ENDIF.

  MODIFY /pws/zycit085 FROM /pws/zycie085.

  MESSAGE s017 WITH /pws/zycie078-nrseqli.

  COMMIT WORK.

  CASE v_tcode.

    WHEN '/PWS/ZYCI020_C'.

...

 

...

          CLEAR: /pws/zycie078-nrseqd,

                 /pws/zycie078-reg_drawback.

          EXIT.

        ENDIF.

      ENDIF.

    ENDIF.

    EXIT.

  ENDLOOP.

ENDFORM.

FORM save_drawback.

* >> Início da exclusão: FORM SAVE_DRAWBACK

  CHECK v_salvo_drawback IS INITIAL.

  MODIFY /pws/zycit245 FROM TABLE it_zycit245.

* << Fim da exclusão

* >> Início da inclusão: FORM SAVE_DRAWBACK

  DATA: itab_zycit079a TYPE /pws/zycit079 OCCURS 0 WITH HEADER LINE,

        wa_zycit078    TYPE /pws/zycit078,

        v_vl_temp TYPE /pws/zycit245-netpr_t,

        v_vl_temp2 TYPE /pws/zycit245-netpr_t.

  SELECT * FROM /pws/zycit376 INTO TABLE itab_zycit376

      FOR ALL ENTRIES IN it_zycit079

      WHERE ebeln EQ it_zycit079-ebeln

        AND ebelp EQ it_zycit079-ebelp.

  IF sy-subrc EQ 0.

    EXIT.

  ENDIF.

  REFRESH: it_zycit245.

  IF /pws/zycbt007-bukrs NE /pws/zycit078-bukrs.

    SELECT SINGLE * FROM /pws/zycbt007

          WHERE bukrs EQ /pws/zycit078-bukrs.

  ENDIF.

  SELECT SINGLE * FROM /pws/zycit078 INTO wa_zycit078

        WHERE nrseqli EQ /pws/zycie078-nrseqli.

  IF NOT wa_zycit078-nrseqd IS INITIAL.

    SELECT * FROM /pws/zycit245 INTO TABLE it_zycit245

          WHERE nrseqd EQ wa_zycit078-nrseqd

           AND nritem < 90000.

    SELECT  * FROM /pws/zycit079 INTO TABLE itab_zycit079a

          WHERE nrseqli EQ /pws/zycie078-nrseqli.

    LOOP AT itab_zycit079a.

      READ TABLE it_zycit245 WITH KEY

                  nritem+2 = itab_zycit079a-item_drawback.

      READ TABLE it_ekpo WITH KEY ebeln = itab_zycit079a-ebeln

                                  ebelp = itab_zycit079a-ebelp.

      IF sy-subrc NE 0.

        SELECT SINGLE * FROM ekpo INTO it_ekpo

                WHERE ebeln = itab_zycit079a-ebeln

                  AND ebelp = itab_zycit079a-ebelp.

        APPEND it_ekpo.

      ENDIF.

      v_vl_temp = itab_zycit079a-qtd_iten *

                  itab_zycit079a-netpr.

      PERFORM converter_moeda USING v_vl_temp

                                 itab_zycit079a-waers

                                 /pws/zycbt007-waersa

                                 it_ekpo-aedat

                        CHANGING v_vl_temp2 .

      PERFORM converte_um_ncm USING it_ekpo-matnr

                           CHANGING itab_zycit079a-meins

                                    itab_zycit079a-qtd_iten.

      it_zycit245-vlvinc = it_zycit245-vlvinc -

                                            v_vl_temp2.

      it_zycit245-vinculado = it_zycit245-vinculado -

                                  itab_zycit079a-qtd_iten.

      MODIFY it_zycit245 TRANSPORTING vlvinc vinculado

            WHERE nritem EQ it_zycit245-nritem.

    ENDLOOP.

  ENDIF.

  IF wa_zycit078-nrseqd NE /pws/zycie078-nrseqd.

    IF NOT wa_zycit078-nrseqd IS INITIAL.

      CALL FUNCTION '/PWS/ZYCI_DEQUEUE_ZYCIT244'

           EXPORTING

                nrseqd = itab_atos2-nrseqd.

    ENDIF.

    SELECT * FROM /pws/zycit245 APPENDING TABLE it_zycit245

          WHERE nrseqd EQ /pws/zycie078-nrseqd

           AND nritem < 90000.

  ENDIF.

* << Fim da inclusão

  IF NOT /pws/zycie078-nrseqd IS INITIAL.

* >> Início da exclusão: FORM SAVE_DRAWBACK

    v_salvo_drawback = 'S'.

* << Fim da exclusão

* >> Início da inclusão: FORM SAVE_DRAWBACK

    LOOP AT it_zycit079.

      READ TABLE it_zycit245 WITH KEY

                  nritem+2 = it_zycit079-item_drawback

                  nrseqd   = /pws/zycie078-nrseqd.

      READ TABLE it_ekpo WITH KEY ebeln = it_zycit079-ebeln

                                  ebelp = it_zycit079-ebelp.

      IF sy-subrc NE 0.

        SELECT SINGLE * FROM ekpo INTO it_ekpo

                WHERE ebeln = it_zycit079-ebeln

                  AND ebelp = it_zycit079-ebelp.

        APPEND it_ekpo.

      ENDIF.

      v_vl_temp = it_zycit079-qtd_iten *

                  it_zycit079-netpr.

      PERFORM converter_moeda USING v_vl_temp

                                 it_zycit079-waers

                                 /pws/zycbt007-waersa

                                 it_ekpo-aedat

                        CHANGING v_vl_temp2 .

      PERFORM converte_um_ncm USING it_ekpo-matnr

                           CHANGING it_zycit079-meins

                                    it_zycit079-qtd_iten.

      it_zycit245-vlvinc = it_zycit245-vlvinc +

                                            v_vl_temp2.

      it_zycit245-vinculado = it_zycit245-vinculado +

                                  it_zycit079-qtd_iten.

      MODIFY it_zycit245 TRANSPORTING vlvinc vinculado

            WHERE nritem EQ it_zycit245-nritem

              AND nrseqd EQ it_zycit245-nrseqd.

    ENDLOOP.

* << Fim da inclusão

  ENDIF.

* >> Início da inclusão: FORM SAVE_DRAWBACK

  MODIFY /pws/zycit245 FROM TABLE it_zycit245.

* << Fim da inclusão

  IF /pws/zycie078-status EQ 'VIN'.

    LOOP AT it_zycit079.

      UPDATE /pws/zycit003 SET nrseqd     = /pws/zycie078-nrseqd

                          nrdrawback = /pws/zycie078-nrdrawback

                          modalidade = /pws/zycie078-modalidade

                     WHERE ebeln = it_zycit079-ebeln

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI020F02

 

...

    ENDIF.

    IF v_tcode EQ '/PWS/ZYCI020_C' OR

       v_tcode EQ '/PWS/ZYCI020_P'.

      LEAVE PROGRAM.

    ELSE.

      IF sy-dynnr EQ '0001'.

        LEAVE PROGRAM.

      ELSE.

        PERFORM unlock_record.

        PERFORM unlock_pedido.

* >> Início da inclusão: FORM COMM_BACK

        CALL FUNCTION '/PWS/ZYCI_DEQUEUE_ZYCIT244'

             EXPORTING

                  nrseqd = /pws/zycie078-nrseqd.

* << Fim da inclusão

        v_tcode = sy-tcode.

        LEAVE TO SCREEN '0001'.

      ENDIF.

    ENDIF.

  ENDIF.

  CLEAR v_resp_save.

ENDFORM.

...

 

...

 

FORM desvincula_ato.

  CLEAR: v_descr11.

  MOVE: /pws/zycie078-nrseqd TO v_nrseqd   ,

        space TO /pws/zycie078-nrseqd      ,

        space TO /pws/zycie078-reg_drawback,

        space TO /pws/zycie078-codregtri   ,

        space TO /pws/zycie078-modalidade  ,

        space TO /pws/zycie078-tipodb      ,

        space TO /pws/zycie078-digito      .

* >> Início da inclusão: FORM DESVINCULA_ATO

  CLEAR: it_zycit079.

  MODIFY it_zycit079 TRANSPORTING item_drawback qtd_drawback

                                  vl_prod_drawback

                            WHERE nrseqli EQ /pws/zycie078-nrseqli.

* << Fim da inclusão

ENDFORM.

...

 

...

      LOOP AT it_zycit079.

        READ TABLE itab_zycit376 WITH KEY ebeln = it_zycit079-ebeln

                                          ebelp = it_zycit079-ebelp

                                          nrseqd = v_nrseqd_v.

        IF sy-subrc NE 0.

          v_nvinc = 'X'.

          MESSAGE i015 WITH text-440.

          EXIT.

        ENDIF.

      ENDLOOP.

* >> Início da exclusão: FORM VINCULA_ATO

    ELSE.

      MESSAGE i015 WITH text-439.

      EXIT.

    ENDIF.

* << Fim da exclusão

    IF v_nvinc NE 'X' AND v_ncmdf NE 'X'.

      SELECT SINGLE * FROM /pws/zycit244

          WHERE nrseqd EQ itab_zycit376-nrseqd.

      /pws/zycie078-nrseqd = itab_zycit376-nrseqd.

      /pws/zycie078-reg_drawback = itab_zycit376-nratoc.

      /pws/zycie078-modalidade = /pws/zycit244-modalidade.

      /pws/zycie078-tipodb = /pws/zycit244-tipo.

      /pws/zycie078-codagsecex = /pws/zycit244-codagencia.

      /pws/zycie078-digito = /pws/zycit244-digito.

      /pws/zycie078-codfunleg = '16'.

...

 

...

          it_zycit079-qtd_drawback =

          ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

        ELSE.

          it_zycit079-qtd_drawback =

          ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

        ENDIF.

        it_zycit079-vl_prod_drawback =

                it_zycit079-qtd_iten * it_zycit079-netpr.

        MODIFY it_zycit079.

      ENDLOOP.

* >> Início da inclusão: FORM VINCULA_ATO

      ENDIF.

    ELSE.

      PERFORM vincular_atoc.

* << Fim da inclusão

    ENDIF.

  ENDIF.

ENDFORM.

 

...

 

...

             AND flagpli NE 'X'.

    IF sy-subrc NE 0.

      MESSAGE w015 WITH text-001.

      EXIT.

    ENDIF.

    IF NOT /pws/zycie078-nrseqd IS INITIAL.

      v_salvo_drawback = 'S'.

      IF it_log[] IS INITIAL.

        v_verficado = 'S'.

      ENDIF.

* >> Início da inclusão: FORM CARREGA_DADOS

      CALL FUNCTION '/PWS/ZYCI_ENQUEUE_ZYCIT244'

           EXPORTING

                nrseqd         = /pws/zycie078-nrseqd

           EXCEPTIONS

                foreign_lock   = 1

                system_failure = 2.

      CASE sy-subrc.

        WHEN 1.

          MESSAGE i015 WITH text-455 text-456.

          v_tcode = '/PWS/ZYCI020_E'.

        WHEN 2.

          MESSAGE a015 WITH text-153.

      ENDCASE.

* << Fim da inclusão

    ELSE.

      CLEAR v_salvo_drawback.

    ENDIF.

    IF /pws/zycie078-tpli EQ 'N'.

      CLEAR /pws/zycie078-tpni.

    ENDIF.

    MOVE: /pws/zycie078 TO wa_zycit078.

    v_cgc = /pws/zycie078-cnpj.

    WRITE: v_cgc    TO v_cnpj.

    PERFORM: mask,

...

 

...

* >> Início da inclusão:

FORM vincular_atoc.

  DATA: itab_dd07t LIKE dd07t OCCURS 0 WITH HEADER LINE,

        v_modal TYPE dd07t-domname VALUE '/PWS/ZYGLD052',

        v_tipo  TYPE dd07t-domname VALUE '/PWS/ZYGLD053',

        v_vl_temp TYPE /pws/zycit245-netpr_t,

        v_vl_temp2 TYPE /pws/zycit245-netpr_t,

        v_grupo TYPE /pws/zycit433-grupo,

        v_dele TYPE c.

  REFRESH: it_zycit244, it_zycit245, itab_atos, itab_atos2, it_ekpo,

           itab_zycit079.

  SELECT * FROM dd07t

           INTO TABLE itab_dd07t

           WHERE ( domname  = v_modal

              OR   domname  = v_tipo )

             AND ddlanguage = sy-langu(1).

  SELECT SINGLE * FROM /pws/zycit321.

  SELECT SINGLE * FROM /pws/zycbt007

          WHERE bukrs EQ /pws/zycie078-bukrs.

  IF sy-subrc NE 0.

    SELECT SINGLE * FROM /pws/zycbt007

            WHERE bukrs EQ space.

  ENDIF.

  SELECT * FROM /pws/zycit244 INTO TABLE it_zycit244

         WHERE status  EQ 'D'

           AND ( tipo  EQ 'C' OR tipo EQ 'G' OR tipo EQ 'N' )

           AND vcto_vg >= sy-datlo.

  SELECT * FROM /pws/zycit245 INTO TABLE it_zycit245

         FOR ALL ENTRIES IN it_zycit244

         WHERE nrseqd EQ it_zycit244-nrseqd

           AND nritem < 90000.

  IF /pws/zycit321-c_comum NE 'X'.

    SELECT * FROM /pws/zycit433

   INTO TABLE itab_zycit433

          WHERE dtde  <= sy-datlo

            AND dtate >= sy-datlo.

  ENDIF.

  SELECT * FROM ekpo INTO TABLE it_ekpo

      FOR ALL ENTRIES IN it_zycit079

      WHERE ebeln EQ it_zycit079-ebeln

        AND ebelp EQ it_zycit079-ebelp.

  itab_zycit079[] = it_zycit079[]        .

  CLEAR: /pws/zycie079, /pws/zycit245.

  LOOP AT itab_zycit079.

    READ TABLE it_ekpo WITH KEY ebeln = itab_zycit079-ebeln

                                ebelp = itab_zycit079-ebelp.

    v_vl_temp =  itab_zycit079-qtd_iten * itab_zycit079-netpr.

    PERFORM converter_moeda USING v_vl_temp

                               itab_zycit079-waers

                               /pws/zycbt007-waersa

                               it_ekpo-aedat

                      CHANGING v_vl_temp2 .

    itab_zycit079-netpr = v_vl_temp2 .

    PERFORM converte_um_ncm USING it_ekpo-matnr

                         CHANGING itab_zycit079-meins

                                  itab_zycit079-qtd_iten.

    MODIFY itab_zycit079.

    /pws/zycie079-qtd_iten = /pws/zycie079-qtd_iten +

                              itab_zycit079-qtd_iten.

    /pws/zycit245-netpr_t = /pws/zycit245-netpr_t +

                            itab_zycit079-netpr.

    /pws/zycit245-waers =  /pws/zycbt007-waersa.

    /pws/zycie079-meins = itab_zycit079-meins.

  ENDLOOP.

  LOOP AT it_zycit245.

    CLEAR: itab_atos.

    READ TABLE it_zycit244 WITH KEY nrseqd = it_zycit245-nrseqd.

    IF /pws/zycit321-c_comum NE 'X' AND

       it_zycit244-tipo NE 'G'.

      IF it_zycit245-codcomp IS INITIAL.

        CONTINUE.

      ENDIF.

      IF it_zycit245-grupo EQ space.

        READ TABLE itab_zycit433 WITH KEY matnr = it_zycit245-codcomp.

        IF sy-subrc EQ 0.

          it_zycit245-grupo = itab_zycit433-grupo.

          MODIFY it_zycit245 TRANSPORTING grupo

                  WHERE codcomp EQ it_zycit245-codcomp.

        ENDIF.

      ENDIF.

      READ TABLE it_ekpo WITH KEY matnr = it_zycit245-codcomp.

      IF sy-subrc NE 0.

        v_dele = 'X'.

        IF it_zycit245-grupo NE space.

          LOOP AT itab_zycit433 WHERE grupo EQ it_zycit245-grupo.

            READ TABLE it_ekpo WITH KEY matnr = it_zycit245-codcomp.

            IF sy-subrc EQ 0.

              CLEAR v_dele.

              EXIT.

            ENDIF.

          ENDLOOP.

        ENDIF.

        IF v_dele EQ 'X'.

          DELETE it_zycit245 WHERE

                  codcomp EQ it_zycit245-codcomp.

          IF it_zycit245-grupo NE space.

            LOOP AT itab_zycit433 WHERE grupo EQ it_zycit245-grupo.

              DELETE it_zycit245 WHERE

                      codcomp EQ itab_zycit433-matnr.

            ENDLOOP.

          ENDIF.

          CONTINUE.

        ENDIF.

      ENDIF.

    ENDIF.

    IF /pws/zycit321-c_comum EQ 'X' AND

       it_zycit244-tipo NE 'G' AND

       it_zycit245-j_1bnbm NE /pws/zycie078-steuc1.

      DELETE it_zycit245.

      CONTINUE.

    ENDIF.

    itab_atos-nrseqd     = it_zycit245-nrseqd    .

    itab_atos-nritem     = it_zycit245-nritem    .

    itab_atos-nratoc     = it_zycit244-nratoc    .

    itab_atos-matnr      = it_zycit245-codcomp   .

    itab_atos-grupo      = it_zycit245-grupo     .

    itab_atos-j_1bnbm    = it_zycit245-j_1bnbm   .

    itab_atos-tipo       = it_zycit244-tipo      .

    itab_atos-modalidade = it_zycit244-modalidade.

    itab_atos-data       = it_zycit244-dtatoc    .

    itab_atos-vlfob = it_zycit245-netpr_t - it_zycit245-vlvinc.

    itab_atos-qtd_tot =

            it_zycit245-qtd_ncm - it_zycit245-vinculado.

    IF itab_atos-vlfob <= 0 AND it_zycit244-tipo EQ 'G'.

      CONTINUE.

    ENDIF.

    IF itab_atos-qtd_tot <= 0 AND it_zycit244-tipo NE 'G'.

      CONTINUE.

    ENDIF.

    IF itab_atos-qtd_tot < 0.

      CLEAR: itab_atos-qtd_tot.

    ENDIF.

    IF itab_atos-vlfob < 0.

      CLEAR: itab_atos-vlfob.

    ENDIF.

    APPEND itab_atos.

  ENDLOOP.

  LOOP AT itab_atos.

    CLEAR: it_zycit245.

    IF /pws/zycit321-c_comum NE 'X' AND

       itab_atos-tipo NE 'G'.

      IF itab_atos-grupo NE space.

        LOOP AT itab_zycit433 WHERE grupo EQ it_zycit245-grupo.

          v_dele = 'X'.

          LOOP AT it_ekpo WHERE matnr EQ itab_zycit433-matnr.

            READ TABLE itab_zycit079 WITH KEY ebeln = it_ekpo-ebeln

                                              ebelp = it_ekpo-ebelp.

            it_zycit245-qtd_ncm = it_zycit245-qtd_ncm +

                                  itab_zycit079-qtd_iten.

            it_zycit245-netpr_t = it_zycit245-netpr_t +

                                  itab_zycit079-netpr .

            CLEAR v_dele.

          ENDLOOP.

          IF v_dele EQ 'X'.

            DELETE itab_zycit433.

          ENDIF.

        ENDLOOP.

      ELSE.

        LOOP AT it_ekpo WHERE matnr EQ itab_atos-matnr.

          READ TABLE itab_zycit079 WITH KEY ebeln = it_ekpo-ebeln

                                            ebelp = it_ekpo-ebelp.

          it_zycit245-qtd_ncm = it_zycit245-qtd_ncm +

                                itab_zycit079-qtd_iten.

          it_zycit245-netpr_t = it_zycit245-netpr_t +

                                itab_zycit079-netpr .

        ENDLOOP.

      ENDIF.

    ELSE.

      LOOP AT itab_zycit079.

        it_zycit245-qtd_ncm = it_zycit245-qtd_ncm +

                              itab_zycit079-qtd_iten.

        it_zycit245-netpr_t = it_zycit245-netpr_t +

                              itab_zycit079-netpr .

      ENDLOOP.

    ENDIF.

    IF itab_atos-vlfob < it_zycit245-netpr_t.

      itab_atos-status = 'E'.

    ENDIF.

    IF itab_atos-qtd_tot < it_zycit245-qtd_ncm AND

       itab_atos-tipo NE 'G'.

      itab_atos-status = 'E'.

    ENDIF.

    IF itab_atos-status EQ 'E'.

      MODIFY itab_atos TRANSPORTING status

                              WHERE nrseqd EQ itab_atos-nrseqd.

    ENDIF.

    CLEAR: itab_atos2.

    itab_atos2-nrseqd     = itab_atos-nrseqd.

    itab_atos2-nratoc     = itab_atos-nratoc.

    itab_atos2-data       = itab_atos-data.

    itab_atos2-modalidade = itab_atos-modalidade.

    itab_atos2-tipo       = itab_atos-tipo.

    itab_atos2-qtd_tot    = itab_atos-qtd_tot.

    itab_atos2-vlfob      = itab_atos-vlfob.

    itab_atos2-status    = itab_atos-status.

    READ TABLE itab_dd07t WITH KEY

              domname    = v_modal

              domvalue_l = itab_atos2-modalidade.

    itab_atos2-mod_text   = itab_dd07t-ddtext.

    READ TABLE itab_dd07t WITH KEY

              domname    = v_tipo

              domvalue_l = itab_atos2-tipo.

    itab_atos2-tipo_text  = itab_dd07t-ddtext.

    COLLECT itab_atos2.

  ENDLOOP.

  LOOP AT itab_atos2.

    CALL FUNCTION '/PWS/ZYCI_ENQUEUE_ZYCIT244'

         EXPORTING

              nrseqd         = itab_atos2-nrseqd

         EXCEPTIONS

              foreign_lock   = 1

              system_failure = 2.

    CASE sy-subrc.

      WHEN 1.

        DELETE itab_atos2.

      WHEN 2.

        MESSAGE a015 WITH text-153.

        .

    ENDCASE.

    IF itab_atos2-status EQ 'E'.

      PERFORM call_icon USING text-451

                              text-453

                  CHANGING itab_atos2-icon.

    ELSEIF /pws/zycit321-c_comum NE 'X' AND

           itab_atos2-tipo NE 'G'.

      LOOP AT it_ekpo.

        READ TABLE itab_atos WITH KEY

                      nrseqd = itab_atos2-nrseqd

                      matnr  = it_ekpo-matnr.

        IF sy-subrc NE 0.

          v_dele = 'X'.

          CLEAR itab_zycit433.

          READ TABLE itab_zycit433 WITH KEY grupo = it_ekpo-matnr.

          IF sy-subrc EQ 0.

            READ TABLE itab_atos WITH KEY

                          nrseqd = itab_atos2-nrseqd

                          grupo  = itab_zycit433-grupo.

            IF sy-subrc EQ 0.

              CLEAR: v_dele.

            ENDIF.

          ENDIF.

          IF v_dele EQ 'X'.

            PERFORM call_icon USING text-451

                                    text-453

                    CHANGING itab_atos2-icon.

            itab_atos2-status = 'E'.

            EXIT.

          ENDIF.

        ENDIF.

      ENDLOOP.

      IF itab_atos2-icon IS INITIAL.

        PERFORM call_icon USING text-452

                                text-454

                CHANGING itab_atos2-icon.

      ENDIF.

    ELSE.

      PERFORM call_icon USING text-452

                              text-454

              CHANGING itab_atos2-icon.

    ENDIF.

    MODIFY itab_atos2.

  ENDLOOP.

  IF NOT itab_atos2[] IS INITIAL.

    CALL SCREEN '0810'.

  ELSE.

    MESSAGE i015 WITH text-395.

  ENDIF.

ENDFORM.

FORM call_icon USING p_name p_inf CHANGING p_v_icone.

  CALL FUNCTION 'ICON_CREATE'

       EXPORTING

            name                  = p_name

            text                  = ''

            info                  = p_inf

            add_stdinf            = 'X'

       IMPORTING

            result                = p_v_icone

       EXCEPTIONS

            icon_not_found        = 1

            outputfield_too_short = 2

            OTHERS                = 3.

ENDFORM.

FORM converter_moeda USING p_devlme

                           p_deme

                           p_parame

                           p_data

                  CHANGING p_paravlme.

  DATA: v_ctmoeda LIKE tcurr-kurst VALUE 'G',

        v_devlme   LIKE bsak-wrbtr,

        v_paravlme LIKE bsak-wrbtr.

  v_devlme = p_devlme .

  IF p_devlme NE 0.

    CALL FUNCTION '/PWS/ZYCB_MONTANTE_CONVERTE'

         EXPORTING

              i_montante                 = v_devlme

              i_demoeda                  = p_deme

              i_paramoeda                = p_parame

              i_ctmoeda                  = v_ctmoeda

              i_dtbase                   = p_data

         IMPORTING

              e_montante                 = v_paravlme

         EXCEPTIONS

              i_demoeda_nao_encontrado   = 1

              i_paramoeda_nao_encontrado = 2

              fator_nao_encontrado       = 3

              i_ctmoeda_nao_encontrado   = 4

              i_dtbase_nao_encontrada    = 5

              taxa_nao_encontrada        = 6

              i_montante_nao_encontrado  = 7.

    p_paravlme = v_paravlme.

  ENDIF.

ENDFORM.

.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI020I01

 

...

      ENDIF.

    ENDIF.

  ENDIF.

  IF e_exec_okcode IS INITIAL.

    CASE okcode.

      WHEN 'BACK'.

        PERFORM comm_back.

      WHEN 'SAVE'.

        PERFORM comm_save.

      WHEN 'PED'.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        IF /pws/zycie078-nrseqd IS INITIAL.

* << Fim da inclusão

        PERFORM comm_selecitem.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        ELSE.

          MESSAGE i015 WITH text-394.

        ENDIF.

* << Fim da inclusão

      WHEN 'COPY'.

        PERFORM comm_copy.

      WHEN 'CANCEL'.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        IF /pws/zycie078-nrseqd IS INITIAL.

* << Fim da inclusão

        PERFORM comm_cancel.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        ELSE.

          MESSAGE i015 WITH text-394.

        ENDIF.

* << Fim da inclusão

      WHEN 'LISUBST'.

        PERFORM comm_lisubst.

      WHEN 'DET'.

        PERFORM comm_detli.

      WHEN 'DTLI'.

      WHEN 'OBLI'.

        PERFORM observacao_li.

      WHEN 'DLIT'.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        IF /pws/zycie078-nrseqd IS INITIAL.

* << Fim da inclusão

        PERFORM deleta_itens.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        ELSE.

          MESSAGE i015 WITH text-394.

        ENDIF.

* << Fim da inclusão

      WHEN 'MKTD'.

        PERFORM marcar_todos.

      WHEN 'DKTD'.

        PERFORM desmarca_todos.

...

 

...

        PERFORM comm_marcdele.

      WHEN 'EXTLI'.

        PERFORM comm_extli.

      WHEN 'ENVIO'.

        PERFORM envio_dados.

      WHEN 'DESVIN'.

        PERFORM desvin_li.

      WHEN 'DESVINATO'.

        PERFORM desvincula_ato.

      WHEN 'VINCULATO'.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        IF /pws/zycie078-nrseqd IS INITIAL.

* << Fim da inclusão

        PERFORM vincula_ato.

* >> Início da inclusão: MODULE USER_COMMAND_0100

        ELSE.

          MESSAGE i015 WITH text-394.

        ENDIF.

* << Fim da inclusão

      WHEN 'CLI'.

        PERFORM comm_cli.

      WHEN 'TRANSM'.

        PERFORM: envio_dados,

...

 

...

 

MODULE modifica_it_vinculato INPUT.

* >> Início da inclusão: MODULE MODIFICA_IT_VINCULATO

  MODIFY itab_atos2 INDEX tc_vinculato-current_line.

* << Fim da inclusão

* >> Início da exclusão: MODULE MODIFICA_IT_VINCULATO

  MOVE: v_ebeln_vin    TO it_vinculato-ebeln   ,

        v_ebelp_vin    TO it_vinculato-ebelp   ,

        v_nrseqd_vin   TO it_vinculato-nrseqd  ,

        v_nratoc_vin   TO it_vinculato-nratoc  ,

        v_sdocomp_t_vin TO it_vinculato-sdocompt,

* << Fim da exclusão

* >> Início da inclusão: MODULE MODIFICA_IT_VINCULATO

  IF itab_atos2-marc EQ 'X'.

    CLEAR: itab_atos2-marc.

    MODIFY itab_atos2 TRANSPORTING marc

            WHERE nrseqd NE itab_atos2-nrseqd.

* << Fim da inclusão

* >> Início da exclusão: MODULE MODIFICA_IT_VINCULATO

        v_sdofob_vin   TO it_vinculato-sdofob_ac,

        v_fobli_vin    TO it_vinculato-vlfob_li ,

        v_modal_vin    TO it_vinculato-descmodal_ac,

        v_tpdraw_vin   TO it_vinculato-desctipo_ac,

        v_qtd_iten_vin TO it_vinculato-qtd_iten,

        v_icon_vin     TO it_vinculato-icon    .

* << Fim da exclusão

* >> Início da inclusão: MODULE MODIFICA_IT_VINCULATO

  ENDIF.

* << Fim da inclusão

* >> Início da exclusão: MODULE MODIFICA_IT_VINCULATO

  MODIFY it_vinculato INDEX tc_vinculato-current_line.

* << Fim da exclusão

ENDMODULE.

MODULE user_command_0810 INPUT.

  DATA: BEGIN OF it_zycit244_aux OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit244.

  DATA: END OF it_zycit244_aux.

  CLEAR v_verficado.

  CASE sy-ucomm.

    WHEN 'BACK'.

      LEAVE TO SCREEN 100.

    WHEN 'VINCULA'.

* >> Início da inclusão: MODULE USER_COMMAND_0810

      READ TABLE itab_atos2 WITH KEY marc = 'X'.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

      CLEAR v_check.

      LOOP AT it_vinculato WHERE marc EQ 'X'.

        v_check = '1'.

      ENDLOOP.

      IF v_check IS INITIAL.

        MESSAGE s015 WITH text-184.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

      IF sy-subrc NE 0 OR itab_atos2-status EQ 'E'.

        MESSAGE i015 WITH text-457.

* << Fim da inclusão

        EXIT.

      ENDIF.

* >> Início da inclusão: MODULE USER_COMMAND_0810

      READ TABLE it_zycit244 WITH KEY nrseqd = itab_atos2-nrseqd.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

      SELECT * FROM /pws/zycit244 INTO TABLE it_zycit244_aux

              WHERE nrseqd = it_vinculato-nrseqd.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

      IF /pws/zycit321-c_comum NE 'X' AND

         itab_atos2-tipo NE 'G'.

        LOOP AT itab_atos WHERE nrseqd EQ itab_atos2-nrseqd.

          IF itab_atos-grupo NE space.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

      IF it_vinculato-sdofob_ac < it_vinculato-vlfob_li.

        MESSAGE s015 WITH  text-403 text-405.

        EXIT.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

            LOOP AT itab_zycit433 WHERE grupo EQ itab_atos-grupo.

              LOOP AT it_ekpo WHERE matnr EQ itab_zycit433-matnr.

                READ TABLE it_zycit079 WITH KEY

                                          ebeln = it_ekpo-ebeln

                                          ebelp = it_ekpo-ebelp.

                MOVE:

                     itab_atos-nritem+2 TO it_zycit079-item_drawback.

                IF v_qtdtot > 0.

                  it_zycit079-qtd_drawback = ( it_zycit079-qtd_iten *

                                    /pws/zycie078-qtdest ) / v_qtdtot.

                ELSE.

                  it_zycit079-qtd_drawback =

                      ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

* << Fim da inclusão

      ENDIF.

* >> Início da inclusão: MODULE USER_COMMAND_0810

                it_zycit079-vl_prod_drawback =

                        it_zycit079-qtd_iten * it_zycit079-netpr.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

      IF it_vinculato-sdocompt < it_vinculato-qtd_iten AND

        it_vinculato-tipo NE 'G'.

        MESSAGE s015 WITH  text-404 text-405.

        EXIT.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

                MODIFY it_zycit079 TRANSPORTING  item_drawback

                                  qtd_drawback vl_prod_drawback

                                  WHERE ebeln = it_ekpo-ebeln

                                    AND ebelp = it_ekpo-ebelp.

              ENDLOOP.

            ENDLOOP.

          ELSE.

            LOOP AT it_ekpo WHERE matnr EQ itab_atos-matnr.

              READ TABLE it_zycit079 WITH KEY

                                        ebeln = it_ekpo-ebeln

                                        ebelp = it_ekpo-ebelp.

              MOVE:

                   itab_atos-nritem+2 TO it_zycit079-item_drawback.

              IF v_qtdtot > 0.

                it_zycit079-qtd_drawback =

             ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

              ELSE.

                it_zycit079-qtd_drawback =

                ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

* << Fim da inclusão

      ENDIF.

* >> Início da inclusão: MODULE USER_COMMAND_0810

              it_zycit079-vl_prod_drawback =

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

      SELECT * FROM /pws/zycit172 INTO TABLE it_zycit172

             WHERE descricao = it_zycit244-praca.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

                      it_zycit079-qtd_iten * it_zycit079-netpr.

              MODIFY it_zycit079 TRANSPORTING  item_drawback

                                qtd_drawback vl_prod_drawback

                                WHERE ebeln = it_ekpo-ebeln

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

      LOOP AT it_vinculato  WHERE marc EQ 'X'

                            AND icon NE '@0A\QSTATUS COM ERRO@'.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

                                  AND ebelp = it_ekpo-ebelp.

            ENDLOOP.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

        READ TABLE it_zycit172.

        READ TABLE it_zycit079 WITH KEY ebelp = it_vinculato-ebelp

                                        ebeln = it_vinculato-ebeln.

        IF sy-subrc EQ 0.

       READ TABLE it_zycit244_aux WITH KEY nrseqd = it_vinculato-nrseqd.

          /pws/zycie078-codfunleg = '16'.

          IF it_zycit244_aux-modalidade = 'I'.

            /pws/zycie078-codregtri = '2'.

* << Fim da exclusão

          ENDIF.

* >> Início da inclusão: MODULE USER_COMMAND_0810

        ENDLOOP.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

          IF it_zycit244_aux-modalidade = 'S'.

            /pws/zycie078-codregtri = '5'.

          ENDIF.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

      ELSE.

        READ TABLE itab_atos WITH KEY nrseqd = itab_atos2-nrseqd.

        LOOP AT it_zycit079.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

          MOVE: it_vinculato-nrseqd     TO /pws/zycie078-nrseqd    ,

                it_vinculato-modalidade TO /pws/zycie078-modalidade,

                it_zycit244_aux-tipo    TO /pws/zycie078-tipodb    ,

                it_vinculato-nratoc     TO /pws/zycie078-reg_drawback,

                it_zycit172-codagencia  TO /pws/zycie078-codagsecex,

                it_zycit172-digito      TO /pws/zycie078-digito.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

          MOVE itab_atos-nritem+2 TO it_zycit079-item_drawback.

* << Fim da inclusão

* >> Início da exclusão: MODULE USER_COMMAND_0810

          CLEAR it_zycit245. REFRESH it_zycit245.

          SELECT * FROM /pws/zycit245 INTO TABLE it_zycit245

              WHERE nrseqd EQ /pws/zycie078-nrseqd.

          READ TABLE it_zycit079 INDEX 1.

          READ TABLE it_zycit003_aux2 WITH KEY

                                            ebeln = it_zycit079-ebeln

                                            ebelp = it_zycit079-ebelp.

          READ TABLE it_zycit245 WITH KEY codcomp =

                                              it_zycit003_aux2-matnr.

          MOVE:

            it_zycit245-nritem+2     TO it_zycit079-item_drawback,

            /pws/zycie078-vlmerc   TO it_zycit079-vl_prod_drawback.

* << Fim da exclusão

          IF v_qtdtot > 0.

            it_zycit079-qtd_drawback =

            ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.

          ELSE.

            it_zycit079-qtd_drawback =

            ( it_zycit079-qtd_iten * /pws/zycie078-qtdest ).

          ENDIF.

* >> Início da exclusão: MODULE USER_COMMAND_0810

          MODIFY it_zycit079 INDEX 1.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

          it_zycit079-vl_prod_drawback =

                  it_zycit079-qtd_iten * it_zycit079-netpr.

          MODIFY it_zycit079.

        ENDLOOP.

* << Fim da inclusão

        ENDIF.

* >> Início da exclusão: MODULE USER_COMMAND_0810

      ENDLOOP.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

      SELECT * FROM /pws/zycit172 INTO TABLE it_zycit172

             WHERE descricao = it_zycit244-praca.

      MOVE: itab_atos2-nrseqd      TO /pws/zycie078-nrseqd    ,

            itab_atos2-modalidade  TO /pws/zycie078-modalidade,

            itab_atos2-tipo        TO /pws/zycie078-tipodb    ,

            itab_atos2-nratoc      TO /pws/zycie078-reg_drawback,

            it_zycit172-codagencia TO /pws/zycie078-codagsecex,

            it_zycit172-digito     TO /pws/zycie078-digito.

      IF itab_atos2-modalidade = 'I'.

        /pws/zycie078-codregtri = '2'.

      ELSE.

        /pws/zycie078-codregtri = '5'.

      ENDIF.

* << Fim da inclusão

      IF NOT /pws/zycie078-tipodb IS INITIAL.

        IF /pws/zycie078-modalidade EQ 'I'.

          /pws/zycie078-drawback = '3'.

        ELSE.

          IF /pws/zycie078-tipodb = 'G'.

            /pws/zycie078-drawback = '1'.

          ELSE.

            /pws/zycie078-drawback = '2'.

          ENDIF.

        ENDIF.

      ENDIF.

* >> Início da exclusão: MODULE USER_COMMAND_0810

      LOOP AT it_vinculato WHERE marc NE 'X'.

        DELETE it_vinculato INDEX sy-tabix.

* << Fim da exclusão

* >> Início da inclusão: MODULE USER_COMMAND_0810

      LOOP AT itab_atos2 WHERE nrseqd NE /pws/zycit078-nrseqd.

        CALL FUNCTION '/PWS/ZYCI_DEQUEUE_ZYCIT244'

             EXPORTING

                  nrseqd = itab_atos2-nrseqd.

* << Fim da inclusão

      ENDLOOP.

* >> Início da exclusão: MODULE USER_COMMAND_0810

      IF it_log[] IS INITIAL.

        v_verficado = 'S'.

        MESSAGE s015 WITH text-141.

      ENDIF.

* << Fim da exclusão

      LEAVE TO SCREEN '100'.

    WHEN 'DELEITEM'.

      LOOP AT it_vinculato WHERE marc EQ 'X'.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI020O01

 

...

 

MODULE carrega_it_vinculato OUTPUT.

* >> Início da exclusão: MODULE CARREGA_IT_VINCULATO

  MOVE: it_vinculato-ebeln     TO v_ebeln_vin,

        it_vinculato-ebelp     TO v_ebelp_vin,

        it_vinculato-nrseqd    TO v_nrseqd_vin,

        it_vinculato-nratoc    TO v_nratoc_vin,

        it_vinculato-dtatoc    TO v_dtatoc_vin,

        it_vinculato-sdofob_ac TO v_sdofob_vin,

        it_vinculato-vlfob_li      TO v_fobli_vin,

        it_vinculato-descmodal_ac  TO v_modal_vin,

        it_vinculato-desctipo_ac  TO v_tpdraw_vin,

        it_vinculato-icon      TO v_icon_vin.

  IF it_vinculato-desctipo_ac NE text-446.

    MOVE: it_vinculato-sdocompt  TO v_sdocomp_t_vin,

          it_vinculato-qtd_iten  TO v_qtd_iten_vin     .

  ENDIF.

* << Fim da exclusão

ENDMODULE.

MODULE status_0810 OUTPUT.

  SET PF-STATUS '0810'.

  SET TITLEBAR  '0810'.

* >> Início da exclusão: MODULE STATUS_0810

  LOOP AT it_vinculato WHERE tipo NE 'G'.

* << Fim da exclusão

* >> Início da inclusão: MODULE STATUS_0810

  LOOP AT itab_atos2 WHERE tipo NE 'G'.

* << Fim da inclusão

    EXIT.

  ENDLOOP.

  IF sy-subrc NE 0.

    LOOP AT SCREEN.

      IF screen-name EQ '/PWS/ZYCIE079-SLQTDE' OR

         screen-name EQ '/PWS/ZYCIE079-MEINS' OR

         screen-name EQ '/PWS/ZYCIE079-DESC_COMPLEM' .

        screen-invisible = 1.

        MODIFY SCREEN.

      ENDIF.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI020X01

 

...

 

* >> Início da inclusão:

TABLES: /pws/zycit321.

* << Fim da inclusão

DATA: BEGIN OF COMMON PART a.

...

 

...

 

* >> Início da inclusão:

  data    v_flagsub1   .

DATA: BEGIN OF itab_atos OCCURS 0 .

DATA: nrseqd     TYPE /pws/zycit244-nrseqd,

      nritem     TYPE /pws/zycit245-nritem,

      nratoc     TYPE /pws/zycit244-nratoc ,

      matnr      TYPE /pws/zycit245-codcomp ,

      grupo      TYPE /pws/zycit245-grupo ,

      j_1bnbm    TYPE /pws/zycit245-j_1bnbm ,

      data       TYPE /pws/zycit244-dtatoc,

      modalidade TYPE /pws/zycit244-modalidade,

      tipo       TYPE /pws/zycit244-tipo,

      qtd_tot    TYPE /pws/zycit245-qtd_tot,

      vlfob      TYPE /pws/zycit245-netpr,

      status    TYPE c.

DATA: END OF itab_atos.

DATA: BEGIN OF itab_atos2 OCCURS 0 .

DATA: nrseqd     TYPE /pws/zycit244-nrseqd,

      nratoc     TYPE /pws/zycit244-nratoc ,

      data       TYPE /pws/zycit244-dtatoc,

      modalidade TYPE /pws/zycit244-modalidade,

      tipo       TYPE /pws/zycit244-tipo,

      mod_text   TYPE dd07t-ddtext,

      tipo_text  TYPE dd07t-ddtext,

      qtd_tot    TYPE /pws/zycit245-qtd_tot,

      vlfob      TYPE /pws/zycit245-netpr,

      status     TYPE c,

      icon       TYPE icons-text,

      marc.

DATA: END OF itab_atos2.

DATA: itab_zycit079 LIKE it_zycit079 OCCURS 0 WITH HEADER LINE,

      itab_zycit433 TYPE /pws/zycit433 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

DATA: END OF COMMON PART.

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPT /PWS/SAPMZYCI020

 

------------------------------------------------------------------------

Modificado símbolo de texto:

 

Idioma: PT

 

Símbolo: 394

 

Texto: (29 caracteres)

"LI já possui Ato Concessório."

 

Comprimento máximo: 50

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 451

 

Texto: (12 caracteres)

"ICON_LED_RED"

 

Comprimento máximo: 12

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 452

 

Texto: (14 caracteres)

"ICON_LED_GREEN"

 

Comprimento máximo: 14

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 453

 

Texto: (18 caracteres)

"Saldo insuficiente"

 

Comprimento máximo: 30

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 454

 

Texto: (10 caracteres)

"Disponível"

 

Comprimento máximo: 30

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 455

 

Texto: (39 caracteres)

"Ato Concessório está sendo alterado por"

 

Comprimento máximo: 50

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 456

 

Texto: (23 caracteres)

"Só é possivel "Exibir"."

 

Comprimento máximo: 50

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 457

 

Texto: (36 caracteres)

"Marcar linha valida para vinculação!"

 

Comprimento máximo: 50