CE PLUS - Nota 011649

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: LI

Data/Hora da Publicação: 23/11/2011 00:00:00

Data/Hora Última Alteração: 28/11/2011 10:44:15

Descrição da Nota: TRILHA DE AUDITORIA NO DESEMBARAÇO DA LI/LSI/PLI

Sintoma

A partir de agora, os programas do PWCE devem gravar log das tabelas - trilha de auditoria.

 

 

Solução

Novo tratamento para inclusão de trilha de auditoria, que registrará cada alteração no banco de

dados: inserção, modificação,deleção.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

NÃO ATUALIZA DADOS DO NALADI NO DETALHE DO ITEM DA PLI

IMPLEMENTAÇÃO DO FUNDAP NA LI

VINCULAÇÃO E DESVINCULAÇÃO DO ATO CONCESS. À LI

PLI OS CAMPOS FAB. SOB ENCOMENDA E MAT. USADO GRAVAVAM NA TABELA DA CAPA

AO SELECIONAR ITEM DA LI OCORRE DUMP

AJUSTES NA PLI PARA TRANSMISSÃO E GERAÇÃO DO ARQUIVO TEXTO

VALORES DO CAMPO QTDE ESTATÍSTICA DA PLI ESTÃO INCORRETOS.

BUSCA DO MATERIAL (MATNR) NA TABELA EKPO.

ERRO AO TRANSMITIR PLI PELO BOTÃO DE TRANSMISSÃO NA TELA DA PRÉ-CRÍTICA

CALCULO DA QUANTIDADE ESTATISTICA

LI SUBSTITUTIVA FORNECEDOR FABRICANTE

AO CRIAR PLI, NÃO TRAZ FATOR, UNIDADE DE MEDIDA DA ZYCIT338

NÃO SALVA AO ALTERAR TEXTOS DA LI.

LI - LICENÇA DE IMPORTAÇÃO - SALDO DO PEDIDO

AO ACESSAR A LI COM O SEQUENCIAL SEM OS ZEROS NÃO ENCONTRA A LI NO EXCEL

AO ENTRAR NO DETALHE DO ITEM DA PLI OCORRE DUMP DIVISÃO POR ZERO

PLI ESTA SE PERDENDO AO COMPOR O CAMPO VALOR NO LOCAL DA MERCADORIA

PADRONIZAÇÃO CODE INSPECTOR

INCLUSÃO DO CAMPO DE IDENTIFICAÇÃO DO ATO CONCESSÓRIO

ALTERAÇÃO PARA UTILIZAR NOVA FUNÇÃO PARA BUSCAR TEXTOS

DESEMBARAÇO PLI RELATÓRIO CRÍTICAS FALHA COM QUANTIDADE E UNIDADE ESTIST

CONVERSÃO DE MOEDAS (CONVERTER PRIMEIRAMENTE PARA MOEDA LOCAL)

AO VERIFICAR PRÉ-CRÍTICA DA PLI, RECLAMA DA FALTA DO PPB.

NÃO LIMPA CRITÉRIO DE SELEÇÃO AO DESVINCULAR ITEM E NÃO TRAZ REGIME TRIB

NÃO CARREGA TODAS AS LINHAS PARAMETRIZADAS DO TEXTO DA LI

NÃO ESTA GRAVANDO AS INFORMAÇÕES COMPLEMENTARES DA LSI

NÃO ESTÁ PREENCHENDO QUANTIDADE DO PRODUTO NAS INFOR. DE DRAWBACK

DUMP AO CLICAR NO BOTÃO EXTRATO DA LI

AO VINCULAR UM ITEM APENAS DO EMBARQUE, EMITE ERRO DE NCM DIFERENTE

EXIBE MSG "EXISTEM NCMS DIFERENTES" SENDO QUE SÓ HÁ UM ITEM NA LI

IMPLEMENTAÇÃO DE EXIT NO DESEMBARAÇO LI

NA LI NÃO VINCULA O ITEM CASO DE ALGUM ERRO NA VERIFICAÇÃO

COMPARTILHAMENTO DE VARIÁVEIS PARA USO EM EXIT ESPECÍFICA.

QTDE.ESTATÍSTICA E NÃO ESTÁ CONVERTENDO CORRETAMENTE.

EXIT PARA PLI

TRATAMENTO PARA O PARAMETRO DE NUMERO DE CASAS DECIMAIS PARA O PESO

MENSAGENS PARAMETRIZAVEIS PARA UNIDADE DE MEDIDA ESTATISTICA

TRATAMENTO PARA UTILIZAR LI COM GRANEL

FILTRO DE PEDIDO ITEM MATERIAL NA VINCULAÇÃO DO PEDIDO NA LI

CONTROLE DE SALDO DO PEDIDO.

DESVINCULAR EMBARQUE

TRATAMENTO NO PESO LIQUÍDO NA PASTA DE MERCADORIA

AJUSTE NA TRANSMISSÃO PARA O SISCOMEX DA PLI

TRATAMENTO DE DRAWBACK PARA LI SUBSTITUTIVA.

IMPLEMENTAÇÃO DRAWBACK TIPO EMBARCAÇÃO

ADICIONADAS CONSISTÊNCIA NA VINCULAÇÃO DO EMBARQUE NA LI

ACRESCENTAR OPÇÃO DE TEXTOS DE DRAWBACK NA ZYCIT229

AO VINCULAR PEDIDO DESVINCULAR, VINCULAR DE NOVO NA LI O SALDO INCORRETO

O PROGRAMA NÃO ESTÁ SOMANDO AS QUANTIDADES NA UM ESTATISTICA

O PROGRAMA NÃO ESTÁ GRAVANDO OS DADOS DA AGÊNCIA SECEX

VERIFICAÇÃO AMPLIADA NOS PROGRAMAS EMBARQUE E RECEBIMENTO

AJUSTES PARA TRATAMENTO DE PLI COM PEDIDO SEM MATERIAL

PLI NÃO ATUALIZA DADOS DO FABRICANTE NO DETALHE DO ITEM.

BLOQUEIA DESVINCULAÇÃO DO ATO CONCESSÓRIO CASO LI VINCULADA A EMBARQUE

VALOR FOB NA LI ESTÁ SENDO CALCULADA INCORRETAMENTE.

PROGRAMA ESTÁ PERMITINDO CRIAR PLI COM ITENS SEM SALDO.

VALOR UNITARIO DOS ITENS ESTÁ INCORRETO.

PREENCHIMENTO DO CAMPO CRA NA PLI

NA PLI AO COLOCAR ORGÃO ANUENTE PARA O ITEM DUPLICA PARA OS DEMAIS ITENS

VINCULAÇÃO DE LI NO EMBARQUE

QUANDO USAMOS OPÇÃO 2 - FABRICANTE NA LI,DEVEMOS TÊ-LO CADASTRADO NO SAP

QUANTIDADE DO PRODUTO NAS INFORMAÇÕES DE DRAWBACK ESTÁ ERRADA.

AJUSTE NO SEQUENCIAL DA LI E REGISTRO DE DRAWBACK NA PRÉ-CRÍTICA

AGILES - AJUSTES TECNICOS NA FUNCIONALIDADE DA L.I.

DESENVOLVIMENTO NACIONALIZAÇÃO DE ADMISSÃO TEMPORÁRIA

CALCULAR O PESO LIQUIDO DOS ITENS APENAS QUANDO A QUANTIDADE FOR ALTERAD

ALTERAÇÃO NO CAMPO MOEDA DA PLI.

LI USUÁRIO BLOQUEIO

CALCULAR A QUANTIDADE ESTATISTICA DE ACORDO COM O NCM DO PEDIDO.

ABERTURA DA EXIT LI005

NECESSÁRIO EXIT PARA DESENVOLVIMENTO ESPECÍFICO.

CONVERSÃO DE UNIDADES QUE NÃO NECESSITAM SER CADASTRADAS

LEVAR OS DADOS DO CAMPO ESPECIFICAÇÃO PARA LI SUBSTITUTIVA

DATA DE ENC.NO EMBARQUE E DESPESAS NO MOVIMENTADO E DIFERENÇA NO CUSTO.

AJUSTES DE VERIFICAÇÃO AMPLIADA DA LI

TRILHA DE AUDITORIA

ADICIONADO PAIS NA SELEÇÃO DA UNIDADE ESTATISTICA.

Informações Complementares

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

Nota Número 11649 Data: 23/11/2011 Hora: 09:32:04

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

 

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

Nota Número              : 11649

Categoria                : Melhoria

Prioridade               : Baixa

Versão PW.CE             : 8.0

Pacote                   : 00009

Agrupamento              : 00095

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

Referência às notas relacionadas:

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

 

00063  - 00001 - 6.0    - 00021  - QTDE.ESTATÍSTICA E NÃO ESTÁ CONVERTENDO CORRETAMENTE.

00112  - 00002 - 6.0    - 00021  - VINCULAÇÃO E DESVINCULAÇÃO DO ATO CONCESS. À LI

00141  - 00003 - 6.0    - 00021  - VALORES DO CAMPO QTDE ESTATÍSTICA DA PLI ESTÃO INCORRETOS.

00160  - 00004 - 6.0    - 00021  - BUSCA DO MATERIAL (MATNR) NA TABELA EKPO.

00174  - 00005 - 6.0    - 00021  - EXIBE MSG "EXISTEM NCMS DIFERENTES" SENDO QUE SÓ HÁ UM ITEM NA LI

00225  - 00006 - 6.0    - 00021  - ALTERAÇÃO NO CAMPO MOEDA DA PLI.

00318  - 00007 - 6.0    - 00021  - O PROGRAMA NÃO ESTÁ GRAVANDO OS DADOS DA AGÊNCIA SECEX

00450  - 00008 - 6.0    - 00021  - AGILES - AJUSTES TECNICOS NA FUNCIONALIDADE DA L.I.

00480  - 00009 - 6.0    - 00021  - AJUSTE NO SEQUENCIAL DA LI E REGISTRO DE DRAWBACK NA PRÉ-CRÍTICA

00980  - 00010 - 6.0    - 00022  - CONVERSÃO DE UNIDADES QUE NÃO NECESSITAM SER CADASTRADAS

01057  - 00011 - 6.0    - 00023  - DATA DE ENC.NO EMBARQUE E DESPESAS NO MOVIMENTADO E DIFERENÇA NO

02084  - 00012 - 6.0    - 00024  - TRATAMENTO NO PESO LIQUÍDO NA PASTA DE MERCADORIA

02605  - 00013 - 6.0    - 00025  - ERRO AO TRANSMITIR  PLI PELO BOTÃO DE TRANSMISSÃO NA TELA DA PRÉ-

02745  - 00014 - 6.0    - 00026  - EXIT PARA PLI

03209  - 00015 - 6.0    - 00026  - PLI NÃO ATUALIZA DADOS DO FABRICANTE NO DETALHE DO ITEM.

03531  - 00016 - 7.0    - 00001  - DUMP AO CLICAR NO BOTÃO EXTRATO DA LI

03774  - 00017 - 7.0    - 00001  - NÃO LIMPA CRITÉRIO DE SELEÇÃO AO DESVINCULAR ITEM E NÃO TRAZ REGI

03832  - 00018 - 7.0    - 00001  - AJUSTE NA TRANSMISSÃO PARA O SISCOMEX DA PLI

04366  - 00019 - 7.0    - 00003  - IMPLEMENTAÇÃO DO FUNDAP NA LI

04815  - 00020 - 7.0    - 00003  - QUANDO USAMOS OPÇÃO 2 - FABRICANTE NA LI,DEVEMOS TÊ-LO CADASTRADO

04842  - 00021 - 7.0    - 00003  - LI - LICENÇA DE IMPORTAÇÃO - SALDO DO PEDIDO

04926  - 00022 - 7.0    - 00003  - AO VINCULAR PEDIDO DESVINCULAR, VINCULAR DE NOVO NA LI O SALDO IN

05308  - 00023 - 7.0    - 00003  - AO ENTRAR NO DETALHE DO ITEM DA PLI OCORRE DUMP DIVISÃO POR ZERO

05326  - 00024 - 7.0    - 00003  - FILTRO DE PEDIDO ITEM MATERIAL NA VINCULAÇÃO DO PEDIDO NA LI

05343  - 00025 - 7.0    - 00003  - NÃO ESTA GRAVANDO AS INFORMAÇÕES COMPLEMENTARES DA LSI

05613  - 00026 - 7.0    - 00004  - PADRONIZAÇÃO CODE INSPECTOR

06213  - 00027 - 7.0    - 00005  - O PROGRAMA NÃO ESTÁ SOMANDO AS QUANTIDADES NA UM ESTATISTICA

06421  - 00028 - 7.0    - 00005  - COMPARTILHAMENTO DE VARIÁVEIS PARA USO EM EXIT ESPECÍFICA.

06611  - 00029 - 7.0    - 00005  - ALTERAÇÃO PARA UTILIZAR NOVA FUNÇÃO PARA BUSCAR TEXTOS

06848  - 00030 - 7.0    - 00006  - AO SELECIONAR ITEM DA LI OCORRE DUMP

06972  - 00031 - 7.0    - 00006  - MENSAGENS PARAMETRIZAVEIS PARA UNIDADE DE MEDIDA ESTATISTICA

07462  - 00032 - 7.0    - 00007  - LI SUBSTITUTIVA FORNECEDOR FABRICANTE

07477  - 00033 - 7.0    - 00007  - LEVAR OS DADOS DO CAMPO ESPECIFICAÇÃO PARA LI SUBSTITUTIVA

07523  - 00034 - 7.0    - 00007  - CONTROLE DE SALDO DO PEDIDO.

07688  - 00035 - 7.0    - 00007  - NÃO ATUALIZA DADOS DO NALADI NO DETALHE DO ITEM DA PLI

07831  - 00036 - 7.0    - 00008  - CALCULO DA QUANTIDADE ESTATISTICA

08030  - 00037 - 7.0    - 00008  - VALOR UNITARIO DOS ITENS ESTÁ INCORRETO.

08095  - 00038 - 7.0    - 00008  - BLOQUEIA DESVINCULAÇÃO DO ATO CONCESSÓRIO CASO LI VINCULADA A EMB

08146  - 00039 - 7.0    - 00008  - TRATAMENTO PARA O PARAMETRO DE NUMERO DE CASAS DECIMAIS PARA O PE

08318  - 00040 - 7.0    - 00009  - DESENVOLVIMENTO NACIONALIZAÇÃO DE ADMISSÃO TEMPORÁRIA

08373  - 00041 - 7.0    - 00009  - VERIFICAÇÃO AMPLIADA NOS PROGRAMAS EMBARQUE E RECEBIMENTO

08421  - 00042 - 7.0    - 00009  - AJUSTES DE VERIFICAÇÃO AMPLIADA DA LI

08676  - 00043 - 7.0    - 00010  - AJUSTES PARA TRATAMENTO DE PLI COM PEDIDO SEM MATERIAL

08854  - 00044 - 7.0    - 00010  - AO VERIFICAR PRÉ-CRÍTICA DA PLI, RECLAMA DA FALTA DO PPB.

08952  - 00045 - 8.0    - 00001  - AO CRIAR PLI, NÃO TRAZ FATOR, UNIDADE DE MEDIDA DA ZYCIT338

09110  - 00046 - 8.0    - 00001  - PROGRAMA ESTÁ PERMITINDO CRIAR PLI COM ITENS SEM SALDO.

09117  - 00047 - 8.0    - 00001  - DESEMBARAÇO PLI RELATÓRIO CRÍTICAS FALHA COM QUANTIDADE E UNIDADE

09240  - 00048 - 8.0    - 00001  - NA LI NÃO VINCULA O ITEM CASO DE ALGUM ERRO NA VERIFICAÇÃO

09342  - 00049 - 8.0    - 00001  - ADICIONADO PAIS NA SELEÇÃO DA UNIDADE ESTATISTICA.

09371  - 00050 - 8.0    - 00001  - AO ACESSAR A LI COM O SEQUENCIAL SEM OS ZEROS NÃO ENCONTRA A LI N

09387  - 00051 - 8.0    - 00001  - IMPLEMENTAÇÃO DE EXIT NO DESEMBARAÇO LI

09619  - 00052 - 8.0    - 00002  - IMPLEMENTAÇÃO DRAWBACK TIPO EMBARCAÇÃO

09656  - 00053 - 8.0    - 00002  - TRATAMENTO DE DRAWBACK PARA LI SUBSTITUTIVA.

09719  - 00054 - 8.0    - 00002  - CALCULAR A QUANTIDADE ESTATISTICA DE ACORDO COM O NCM DO PEDIDO.

09816  - 00055 - 8.0    - 00002  - ABERTURA DA EXIT LI005

09906  - 00056 - 8.0    - 00002  - CONVERSÃO DE MOEDAS (CONVERTER PRIMEIRAMENTE PARA MOEDA LOCAL)

10002  - 00057 - 8.0    - 00003  - INCLUSÃO DO CAMPO DE IDENTIFICAÇÃO DO ATO CONCESSÓRIO

10043  - 00058 - 8.0    - 00003  - CALCULAR O PESO LIQUIDO DOS ITENS APENAS QUANDO A QUANTIDADE FOR

10065  - 00059 - 8.0    - 00003  - ADICIONADAS CONSISTÊNCIA NA VINCULAÇÃO DO EMBARQUE NA LI

10071  - 00060 - 8.0    - 00003  - DESVINCULAR EMBARQUE

10300  - 00061 - 8.0    - 00004  - LI NÃO PERMITE ALTERAR DADOS DO CABEÇALHO. DADOS DA EMPRESA E IMP

10307  - 00062 - 8.0    - 00004  - IMPLEMENTAÇÕES NA PLI PARA ATENDER SUFRAMA 5.0

10338  - 00063 - 8.0    - 00004  - AJUSTES CODE INSPECTOR

10376  - 00064 - 8.0    - 00004  - PLI OS CAMPOS FAB. SOB ENCOMENDA E MAT. USADO GRAVAVAM NA TABELA

10420  - 00065 - 8.0    - 00004  - NA PLI AO COLOCAR ORGÃO ANUENTE PARA O ITEM DUPLICA PARA OS DEMAI

10494  - 00066 - 8.0    - 00004  - AJUSTES NA PLI PARA TRANSMISSÃO E GERAÇÃO DO ARQUIVO TEXTO

10496  - 00067 - 8.0    - 00004  - PLI ESTA SE PERDENDO AO COMPOR O CAMPO VALOR NO LOCAL DA MERCADOR

10567  - 00068 - 8.0    - 00004  - QUANTIDADE DO PRODUTO NAS INFORMAÇÕES DE DRAWBACK ESTÁ ERRADA.

10602  - 00069 - 8.0    - 00004  - NÃO ESTÁ PREENCHENDO QUANTIDADE DO PRODUTO NAS INFOR. DE DRAWBACK

10816  - 00070 - 8.0    - 00005  - NÃO CARREGA TODAS AS LINHAS PARAMETRIZADAS DO TEXTO DA LI

10819  - 00071 - 8.0    - 00005  - NÃO SALVA AO ALTERAR TEXTOS DA LI.

10844  - 00072 - 8.0    - 00006  - ACRESCENTAR OPÇÃO DE TEXTOS DE DRAWBACK NA ZYCIT229

10886  - 00073 - 8.0    - 00006  - TRATAMENTO PARA UTILIZAR LI COM GRANEL

11026  - 00074 - 8.0    - 00007  - VINCULAÇÃO DE LI NO EMBARQUE

11248  - 00075 - 8.0    - 00008  - NECESSÁRIO EXIT PARA DESENVOLVIMENTO ESPECÍFICO.

11350  - 00076 - 8.0    - 00008  - VALOR FOB NA LI ESTÁ SENDO CALCULADA INCORRETAMENTE.

11363  - 00077 - 8.0    - 00008  - PREENCHIMENTO DO CAMPO CRA NA PLI

11416  - 00078 - 8.0    - 00008  - AO VINCULAR UM ITEM APENAS DO EMBARQUE, EMITE ERRO DE NCM DIFEREN

11506  - 00079 - 8.0    - 00009  - TRILHA DE AUDITORIA

11554  - 00080 - 8.0    - 00009  - LI USUÁRIO BLOQUEIO

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

TRILHA DE AUDITORIA NO DESEMBARAÇO DA LI/LSI/PLI

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

Palavras Chave:

DESEMBARAÇO DA LI/LSI/PLI - UPDATE - DELETE - INSERT - MODIFY -

/PWS/SAPMZYCI020 - DESEMBARAÇO LI/LSI/PLI - TRILHA DE AUDITORIA

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

Objetos da nota:

REPS /PWS/MZYCI020F01

REPS /PWS/MZYCI020F02

REPS /PWS/MZYCI020X01

REPS /PWS/SAPMZYCI020

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

FORM save.

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

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

* << Fim da inclusão

...

 

...

  IF v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_N' OR

     v_tcode EQ '/PWS/ZYCI020_G'.

    /pws/zycie078-usernamea = sy-uname.

    /pws/zycie078-dtusera = sy-datum.

  ENDIF.

  IF NOT v_flag IS INITIAL.

    wa_zycit078_aux2-nrlisub     = /pws/zycie078-nrli.

    wa_zycit078_aux2-nrseqlisub  = /pws/zycie078-nrseqli.

    MODIFY /pws/zycit078 FROM wa_zycit078_aux2.

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

    MOVE-CORRESPONDING wa_zycit078_aux2 TO /pws/zycit078.

    PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

          ' '  '/PWS/SAPMZYCI020' /pws/zycit078-nrseqli.

* << Fim da inclusão

  ENDIF.

  CONCATENATE /pws/zycie078-steuc1(4) /pws/zycie078-steuc1+5(2)

  /pws/zycie078-steuc1+8(2) INTO v_steuc1.

  /pws/zycie078-steuc2 = v_steuc1.

  MODIFY /pws/zycit078 FROM /pws/zycie078.

  MOVE-CORRESPONDING /pws/zycie078 TO wa_zycit078.

  MOVE-CORRESPONDING /pws/zycie078 TO /pws/zycit078.

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

  PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

        ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

  LOOP AT it_vincula_aux.

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

      PERFORM vincula_li.

    ELSEIF /pws/zycie078-tpli EQ 'S'.

      PERFORM vincula_lsi.

    ENDIF.

  ENDLOOP.

  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  ,

           atual_item   .

  IF okcode = 'CANCEL'.

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

    CLEAR: lt_zycit079, lt_zycit079[].

    SELECT * FROM /pws/zycit079 INTO TABLE lt_zycit079

         WHERE numli = /pws/zycie078-nrseqli.

* << Fim da inclusão

    UPDATE /pws/zycit079 SET numli = space

                WHERE numli = /pws/zycie078-nrseqli.

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

    LOOP AT lt_zycit079.

      CLEAR: lt_zycit079-numli.

      MOVE-CORRESPONDING lt_zycit079 TO /pws/zycit079.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDLOOP.

* << Fim da inclusão

  ENDIF.

  MODIFY /pws/zycit085 FROM /pws/zycie085.

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

  MOVE-CORRESPONDING /pws/zycie085 TO /pws/zycit085.

  PERFORM carrega_log USING '/PWS/ZYCIT085' 'U'

        ' '  '/PWS/SAPMZYCI023' /pws/zycie085-nrseqdi.

* << Fim da inclusão

  MESSAGE s017 WITH /pws/zycie078-nrseqli.

  COMMIT WORK.

  CASE v_tcode.

...

 

...

FORM salva_item.

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

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

        lt_zycit092   TYPE /pws/zycit092 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

...

 

...

    IF v_tcode EQ '/PWS/ZYCI020_C' OR

       v_tcode EQ '/PWS/ZYCI020_A' OR

       v_tcode EQ '/PWS/ZYCI020_I' OR

       v_tcode EQ '/PWS/ZYCI020_G'.

      it_zycit079-tpli = 'N'.

    ELSEIF v_tcode EQ '/PWS/ZYCI020_P' OR

           v_tcode EQ '/PWS/ZYCI020_N'.

      it_zycit079-tpli = 'S'.

    ENDIF.

    READ TABLE it_zycit079_aux2 WITH KEY nrseqli = it_zycit079-nrseqli

                                          ebeln  = it_zycit079-ebeln

                                          ebelp  = it_zycit079-ebelp

                                          tpli   = v_tpli.

    IF sy-subrc EQ 0.

      DELETE it_zycit079_aux2 WHERE nrseqli = it_zycit079-nrseqli

                                AND tpli    = v_tpli

                                AND ebeln   = it_zycit079-ebeln

                                AND ebelp   = it_zycit079-ebelp.

    ENDIF.

    MODIFY it_zycit079.

  ENDLOOP.

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

  CLEAR: lt_zycit079, lt_zycit079[].

  SELECT * FROM /pws/zycit079

           INTO TABLE lt_zycit079

           WHERE nrseqli = /pws/zycie078-nrseqli

             AND tpli    = v_tpli.

  LOOP AT lt_zycit079.

    MOVE-CORRESPONDING lt_zycit079 TO /pws/zycit079.

    READ TABLE it_zycit079 WITH KEY nrseqli = lt_zycit079-nrseqli

                                    tpli    = lt_zycit079-tpli

                                    ebeln   = lt_zycit079-ebeln

                                    ebelp   = lt_zycit079-ebelp.

    IF sy-subrc NE 0.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycit079-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  DELETE FROM /pws/zycit079 WHERE nrseqli = /pws/zycie078-nrseqli.

  MODIFY /pws/zycit079 FROM TABLE it_zycit079.

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

  LOOP AT it_zycit079.

    MOVE-CORRESPONDING it_zycit079 TO /pws/zycit079.

    READ TABLE lt_zycit079 WITH KEY nrseqli = it_zycit079-nrseqli

                                    tpli    = it_zycit079-tpli

                                    ebeln   = it_zycit079-ebeln

                                    ebelp   = it_zycit079-ebelp.

    IF sy-subrc EQ 0.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

            ' '  '/PWS/SAPMZYCI020' it_zycit079-nrseqli.

    ELSE.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'I'

            ' '  '/PWS/SAPMZYCI020' it_zycit079-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  IF NOT /pws/zycie078-numpli IS INITIAL.

    READ TABLE it_zycit079 INDEX 1.

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

    CLEAR: lt_zycit079, lt_zycit079[].

    SELECT * FROM /pws/zycit079 INTO TABLE lt_zycit079

           WHERE nrseqli = /pws/zycie078-numpli

             AND numli   = /pws/zycie078-nrseqli.

* << Fim da inclusão

    UPDATE /pws/zycit079 SET nrli  = it_zycit079-nrli

                     WHERE nrseqli = /pws/zycie078-numpli

                       AND numli   = /pws/zycie078-nrseqli.

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

    LOOP AT lt_zycit079.

      lt_zycit079-nrli = it_zycit079-nrli.

      MOVE-CORRESPONDING lt_zycit079 TO /pws/zycit079.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDLOOP.

* << Fim da inclusão

  ENDIF.

  IF NOT /pws/zycie078-flagpli IS INITIAL.

    PERFORM salva_anui    .

    PERFORM salva_anu2i   .

  ENDIF.

  LOOP AT it_zycit079.

    READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln

                                    ebelp = it_zycit079-ebelp.

    IF sy-subrc EQ 0.

      UPDATE /pws/zycit092 SET menge  = it_zycit079-menge

                          slqtde = it_zycit079-slqtde

                          meins  = it_zycit079-meins

                          uebto  = it_zycit079-uebto

                          uebtk  = it_zycit079-uebtk

                       WHERE ebeln = it_zycit079-ebeln

                         AND ebelp = it_zycit079-ebelp.

      IF sy-subrc NE 0.

        INSERT /pws/zycit092 FROM it_zycit092.

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

        MOVE-CORRESPONDING it_zycit092 TO /pws/zycit092.

        PERFORM carrega_log USING '/PWS/ZYCIT092' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

      ELSE.

        it_zycit092-menge  = it_zycit079-menge.

        it_zycit092-slqtde = it_zycit079-slqtde.

        it_zycit092-meins  = it_zycit079-meins.

        it_zycit092-uebto  = it_zycit079-uebto.

        it_zycit092-uebtk  = it_zycit079-uebtk.

        MOVE-CORRESPONDING it_zycit092 TO /pws/zycit092.

        PERFORM carrega_log USING '/PWS/ZYCIT092' 'U'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

      ENDIF.

    ELSE.

      MOVE: it_zycit079-ebeln  TO /pws/zycit092-ebeln,

            it_zycit079-ebelp  TO /pws/zycit092-ebelp,

            it_zycit079-menge  TO /pws/zycit092-menge,

            it_zycit079-slqtde TO /pws/zycit092-slqtde,

            it_zycit079-meins  TO /pws/zycit092-meins,

            it_zycit079-uebto  TO /pws/zycit092-uebto,

            it_zycit079-uebtk  TO /pws/zycit092-uebtk.

      INSERT /pws/zycit092.

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

      PERFORM carrega_log USING '/PWS/ZYCIT092' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

    ENDIF.

  ENDLOOP.

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

  IF NOT it_zycit079_aux2[] IS INITIAL.

    CLEAR: lt_zycit092, lt_zycit092[].

    SELECT * FROM /pws/zycit092 INTO TABLE lt_zycit092

        FOR ALL ENTRIES IN it_zycit079_aux2

        WHERE ebeln EQ it_zycit079_aux2-ebeln

          AND ebelp EQ it_zycit079_aux2-ebelp.

  ENDIF.

* << Fim da inclusão

  LOOP AT it_zycit079_aux2.

    CLEAR v_txtki.

    CONCATENATE it_zycit079_aux2-nrseqli it_zycit079_aux2-ebeln

                it_zycit079_aux2-ebelp INTO v_txtki.

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

    MOVE-CORRESPONDING it_zycit079_aux2 TO /pws/zycit079.

    PERFORM carrega_log USING '/PWS/ZYCIT079' 'D'

          ' '  '/PWS/SAPMZYCI020' it_zycit079_aux2-nrseqli.

* << Fim da inclusão

    DELETE FROM /pws/zycit079 WHERE nrseqli = it_zycit079_aux2-nrseqli

                           AND tpli    = v_tpli

                           AND ebeln   = it_zycit079_aux2-ebeln

                           AND ebelp   = it_zycit079_aux2-ebelp.

    it_zycit079_aux2-slqtde = it_zycit079_aux2-slqtde

                       + it_zycit079_aux2-qtd_iten.

    it_zycit079_aux2-qtd_iten = 0.

    UPDATE /pws/zycit092 SET slqtde = it_zycit079_aux2-slqtde

                    WHERE ebeln EQ it_zycit079_aux2-ebeln

                      AND ebelp EQ it_zycit079_aux2-ebelp.

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

    IF sy-subrc EQ 0.

      READ TABLE lt_zycit092 WITH KEY ebeln = it_zycit079_aux2-ebeln

                                      ebelp = it_zycit079_aux2-ebelp.

      IF sy-subrc EQ 0.

        lt_zycit092-slqtde = it_zycit079_aux2-slqtde.

        MOVE-CORRESPONDING lt_zycit092 TO /pws/zycit092.

        PERFORM carrega_log USING '/PWS/ZYCIT092' 'U'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    IF it_zycit079_aux2-menge EQ it_zycit079_aux2-slqtde.

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

      READ TABLE lt_zycit092 WITH KEY ebeln = it_zycit079_aux2-ebeln

                                      ebelp = it_zycit079_aux2-ebelp.

      IF sy-subrc EQ 0.

        MOVE-CORRESPONDING lt_zycit092 TO /pws/zycit092.

        PERFORM carrega_log USING '/PWS/ZYCIT092' 'D'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

      ENDIF.

* << Fim da inclusão

      DELETE FROM /pws/zycit092

             WHERE ebeln     = it_zycit079_aux2-ebeln

               AND ebelp     = it_zycit079_aux2-ebelp.

    ENDIF.

    CALL FUNCTION 'READ_TEXT'

         EXPORTING

              client                  = sy-mandt

              id                      = 'ZTLI'

              language                = sy-langu

              name                    = v_txtki

...

 

...

           EXCEPTIONS

                not_found = 1

                OTHERS    = 2.

      IF sy-subrc EQ 0.

        COMMIT WORK.

      ENDIF.

    ENDIF.

  ENDLOOP.

  IF /pws/zycie078-status EQ 'CAN' OR

     /pws/zycie078-status EQ 'INA'.

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

    IF NOT it_zycit079[] IS INITIAL.

      CLEAR: lt_zycit092, lt_zycit092[].

      SELECT * FROM /pws/zycit092 INTO TABLE lt_zycit092

          FOR ALL ENTRIES IN it_zycit079

          WHERE ebeln EQ it_zycit079-ebeln

            AND ebelp EQ it_zycit079-ebelp.

    ENDIF.

* << Fim da inclusão

    CLEAR /pws/zycit092-slqtde.

    LOOP AT it_zycit079.

      /pws/zycit092-slqtde = it_zycit079-slqtde

                         + it_zycit079-qtd_iten.

      UPDATE /pws/zycit092 SET slqtde = /pws/zycit092-slqtde

                      WHERE ebeln EQ it_zycit079-ebeln

                        AND ebelp EQ it_zycit079-ebelp.

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

      IF sy-subrc EQ 0.

        READ TABLE lt_zycit092 WITH KEY ebeln = it_zycit079-ebeln

                                        ebelp = it_zycit079-ebelp.

        IF sy-subrc EQ 0.

          lt_zycit092-slqtde = /pws/zycit092-slqtde.

          MOVE-CORRESPONDING lt_zycit092 TO /pws/zycit092.

          PERFORM carrega_log USING '/PWS/ZYCIT092' 'U'

                ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

        ENDIF.

      ENDIF.

* << Fim da inclusão

    ENDLOOP.

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

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

      CLEAR: /pws/zycit136.

      SELECT SINGLE * FROM /pws/zycit136 INTO /pws/zycit136

             WHERE nrseq  = /pws/zycie078-nrseq

               AND tp_doc = 'LI'.

      IF sy-subrc EQ 0.

        PERFORM carrega_log USING '/PWS/ZYCIT136' 'D'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

      ENDIF.

* << Fim da inclusão

      DELETE FROM /pws/zycit136

             WHERE nrseq  = /pws/zycie078-nrseq

             AND   tp_doc = 'LI'.

    ENDIF.

  ENDIF.

  CLEAR it_zycit079_aux2.

  REFRESH it_zycit079_aux2.

  LOOP AT it_zycit079.

    MOVE-CORRESPONDING it_zycit079 TO it_zycit079_aux2.

    APPEND it_zycit079_aux2.

  ENDLOOP.

  COMMIT WORK.

ENDFORM.

...

 

...

FORM salva_forn.

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

  DATA: lt_zycit080 TYPE /pws/zycit080 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  IF v_tcode EQ '/PWS/ZYCI020_C' OR

     v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_I' OR

     v_tcode EQ '/PWS/ZYCI020_G'.

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

    SELECT * FROM /pws/zycit080 INTO TABLE lt_zycit080

       WHERE nrseqli = /pws/zycie078-nrseqli.

    LOOP AT lt_zycit080.

      MOVE-CORRESPONDING lt_zycit080 TO /pws/zycit080.

      PERFORM carrega_log USING '/PWS/ZYCIT080' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDLOOP.

* << Fim da inclusão

    DELETE FROM /pws/zycit080 WHERE

                       nrseqli = /pws/zycie078-nrseqli.

    COMMIT WORK.

    IF /pws/zycie078-fabric EQ '1'.

      MOVE: /pws/zycie078-nrseqli TO /pws/zycie080-nrseqli.

      /pws/zycie080-tipoforn  = 'E'.

      MODIFY /pws/zycit080 FROM /pws/zycie080.

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

      MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

      PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      MOVE-CORRESPONDING /pws/zycie080 TO wa_zycit080_aux.

    ELSEIF /pws/zycie078-fabric EQ '2'.

      MOVE: /pws/zycie078-nrseqli TO /pws/zycie080c-nrseqli,

            /pws/zycie078-nrseqli TO /pws/zycie080a-nrseqli.

      /pws/zycie080c-tipoforn  = 'E'.

      /pws/zycie080a-tipoforn = 'F'.

      MODIFY /pws/zycit080 FROM /pws/zycie080c.

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

      MOVE-CORRESPONDING /pws/zycie080c TO /pws/zycit080.

      PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      MOVE-CORRESPONDING /pws/zycie080c TO wa_zycit080_aux4.

      MODIFY /pws/zycit080 FROM /pws/zycie080a.

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

      MOVE-CORRESPONDING /pws/zycie080a TO /pws/zycit080.

      PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      MOVE-CORRESPONDING /pws/zycie080a TO wa_zycit080_aux2.

    ELSEIF /pws/zycie078-fabric EQ '3'.

      MOVE: /pws/zycie078-nrseqli TO /pws/zycie080b-nrseqli.

      /pws/zycie080b-tipoforn  = 'E'.

      MODIFY /pws/zycit080 FROM /pws/zycie080b.

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

      MOVE-CORRESPONDING /pws/zycie080b TO /pws/zycit080.

      PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      MOVE-CORRESPONDING /pws/zycie080b TO wa_zycit080_aux3.

    ENDIF.

    COMMIT WORK.

  ENDIF.

ENDFORM.

...

 

...

  SELECT * FROM /pws/zycit081

           INTO TABLE it_zycit081_aux

           WHERE nrseqli = /pws/zycie078-nrseqli

             AND tpli    = v_tpli.

  LOOP AT it_zycit081.

    READ TABLE it_zycit081_aux WITH KEY nrseqli  = it_zycit081-nrseqli

                                       tpli      = v_tpli

                                       nranuente = it_zycit081-nranuente

                                       orgao     = it_zycit081-orgao.

    IF sy-subrc = 0.

      UPDATE /pws/zycit081 SET nrseqli = it_zycit081-nrseqli

                          nranuente    = it_zycit081-nranuente

                          orgao        = it_zycit081-orgao

                      WHERE nrseqli    = it_zycit081-nrseqli

                        AND tpli       = v_tpli

                        AND nranuente  = it_zycit081-nranuente

                        AND orgao      = it_zycit081-orgao.

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

      MOVE-CORRESPONDING it_zycit081 TO /pws/zycit081.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'U'

            ' '  '/PWS/SAPMZYCI020' it_zycit081-nrseqli.

* << Fim da inclusão

      DELETE it_zycit081_aux WHERE nrseqli       = it_zycit081-nrseqli

                                   AND tpli      = v_tpli

                                   AND nranuente = it_zycit081-nranuente

                                   AND orgao     = it_zycit081-orgao.

    ELSE.

      IF NOT it_zycit081-nranuente IS INITIAL OR

         NOT it_zycit081-orgao     IS INITIAL.

        MOVE: it_zycit081-nrseqli   TO /pws/zycit081-nrseqli,

              v_tpli                TO /pws/zycit081-tpli,

              it_zycit081-nranuente TO /pws/zycit081-nranuente,

              it_zycit081-orgao     TO /pws/zycit081-orgao.

        INSERT /pws/zycit081.

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

        PERFORM carrega_log USING '/PWS/ZYCIT081' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit081-nrseqli.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDLOOP.

  LOOP AT it_zycit081_aux.

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

    MOVE-CORRESPONDING it_zycit081_aux TO /pws/zycit081.

    PERFORM carrega_log USING '/PWS/ZYCIT081' 'D'

          ' '  '/PWS/SAPMZYCI020' it_zycit081_aux-nrseqli.

* << Fim da inclusão

    DELETE FROM  /pws/zycit081 WHERE nrseqli  = it_zycit081_aux-nrseqli

                                AND tpli      = v_tpli

                                AND nranuente = it_zycit081_aux-nranuente

                                AND orgao     = it_zycit081_aux-orgao.

  ENDLOOP.

  CLEAR it_zycit081_aux.

  REFRESH it_zycit081_aux.

  LOOP AT it_zycit081.

    MOVE-CORRESPONDING it_zycit081 TO it_zycit081_aux.

    APPEND it_zycit081_aux.

  ENDLOOP.

...

 

...

    v_tpli = 'S'.

  ENDIF.

  CLEAR: it_anu2_aux.

  REFRESH: it_anu2_aux.

  SELECT *

         FROM /pws/zycit109

         INTO TABLE it_anu2_aux

         WHERE nrseqli = /pws/zycie078-nrseqli

           AND tpli    = v_tpli.

  LOOP AT it_anu2.

    READ TABLE it_anu2_aux WITH KEY nrseqli = /pws/zycie078-nrseqli

                                    tpli    = v_tpli

                                    codncm  = it_anu2-codncm.

    IF sy-subrc = 0.

      UPDATE /pws/zycit109 SET ebeln = it_anu2-ebeln

                               ebelp = it_anu2-ebelp

                         WHERE nrseqli  = it_anu2-nrseqli AND

                               codncm   = it_anu2-codncm  AND

                               tpli     = v_tpli.

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

      MOVE-CORRESPONDING it_anu2 TO /pws/zycit109.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

      DELETE it_anu2_aux WHERE nrseqli = it_anu2-nrseqli

                           AND codncm  = it_anu2-codncm

                           AND tpli    = v_tpli.

    ELSE.

      IF NOT it_anu2-codncm IS INITIAL.

        MOVE: it_anu2-nrseqli   TO /pws/zycit109-nrseqli,

              it_anu2-codncm    TO /pws/zycit109-codncm,

              v_tpli            TO /pws/zycit109-tpli,

              it_anu2-ebeln     TO /pws/zycit109-ebeln,

              it_anu2-ebelp     TO /pws/zycit109-ebelp.

        INSERT /pws/zycit109.

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

        PERFORM carrega_log USING '/PWS/ZYCIT109' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDLOOP.

  LOOP AT it_anu2_aux.

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

    MOVE-CORRESPONDING it_anu2_aux TO /pws/zycit109.

    PERFORM carrega_log USING '/PWS/ZYCIT109' 'D'

          ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

    DELETE FROM  /pws/zycit109 WHERE nrseqli = it_anu2_aux-nrseqli

                            AND codncm  = it_anu2_aux-codncm

                            AND tpli    = v_tpli.

  ENDLOOP.

  CLEAR it_anu2_aux.

  REFRESH it_anu2_aux.

  LOOP AT it_anu2.

    MOVE-CORRESPONDING it_anu2 TO it_anu2_aux.

    APPEND it_anu2_aux.

  ENDLOOP.

...

 

...

FORM questiona_cancel.

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

  DATA: lt_zycit003 TYPE /pws/zycit003 OCCURS 0 WITH HEADER LINE.

  IF NOT it_zycit079[] IS INITIAL.

    CLEAR: lt_zycit003, lt_zycit003[].

    SELECT * FROM /pws/zycit003 INTO TABLE lt_zycit003

      FOR ALL ENTRIES IN it_zycit079

      WHERE nrseq = /pws/zycie078-nrseq

        AND ebeln = it_zycit079-ebeln

        AND ebelp = it_zycit079-ebelp.

  ENDIF.

* << Fim da inclusão

  IF v_respcan NE '1'.

    CALL FUNCTION 'POPUP_TO_CONFIRM'

         EXPORTING

              text_question         = text-035

              text_button_1         = text-004

              icon_button_1         = 'ICON_OKAY'

              text_button_2         = text-005

              icon_button_2         = 'ICON_CONCEL'

              default_button        = '1'

              display_cancel_button = 'X'

...

 

...

      CALL SCREEN 0600 STARTING AT 05 05.

      IF NOT it_zycit079[] IS INITIAL.

        LOOP AT it_zycit079.

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

            UPDATE /pws/zycit003 SET nrseqli = space

                                nrli    = space

                                nrlisub = space

                      WHERE nrseq = /pws/zycie078-nrseq

                        AND ebeln = it_zycit079-ebeln

                        AND ebelp = it_zycit079-ebelp.

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

            IF sy-subrc EQ 0.

              READ TABLE lt_zycit003 WITH KEY

                                          nrseq = /pws/zycie078-nrseq

                                          ebeln = it_zycit079-ebeln

                                          ebelp = it_zycit079-ebelp.

              IF sy-subrc EQ 0.

                CLEAR: lt_zycit003-nrseqli, lt_zycit003-nrli,

                       lt_zycit003-nrlisub.

                MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

                PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

                      ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

              ENDIF.

            ENDIF.

* << Fim da inclusão

          ENDIF.

          MOVE 'X' TO it_zycit079-mark.

          MODIFY it_zycit079.

          COMMIT WORK.

        ENDLOOP.

        MOVE space TO /pws/zycie078-nrseq.

      ENDIF.

      /pws/zycie078-status = 'CAN'.

      PERFORM deleta_itens.

      PERFORM save.

...

 

...

  CALL SCREEN 0600 STARTING AT 05 05.

  IF NOT it_zycit079[] IS INITIAL.

    LOOP AT it_zycit079.

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

        UPDATE /pws/zycit003 SET nrseqli = space

                            nrli    = space

                            nrlisub = space

                  WHERE nrseq = /pws/zycie078-nrseq

                    AND ebeln = it_zycit079-ebeln

                    AND ebelp = it_zycit079-ebelp.

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

        IF sy-subrc EQ 0.

          READ TABLE lt_zycit003 WITH KEY

                                      nrseq = /pws/zycie078-nrseq

                                      ebeln = it_zycit079-ebeln

                                      ebelp = it_zycit079-ebelp.

          IF sy-subrc EQ 0.

            CLEAR: lt_zycit003-nrseqli, lt_zycit003-nrli,

                   lt_zycit003-nrlisub.

            MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

            PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

                  ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

          ENDIF.

* << Fim da inclusão

      ENDIF.

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

      ENDIF.

* << Fim da inclusão

      MOVE 'X' TO it_zycit079-mark.

      MODIFY it_zycit079.

      COMMIT WORK.

    ENDLOOP.

    MOVE space TO /pws/zycie078-nrseq.

  ENDIF.

  /pws/zycie078-status = 'CAN'.

  PERFORM deleta_itens.

  PERFORM save.

  PERFORM deleta_transm.

  v_tcode = '/PWS/ZYCI020_E'.

  MESSAGE s015 WITH text-036.

ENDFORM.

...

 

...

FORM questiona_cancel2.

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

  DATA: lt_zycit003 TYPE /pws/zycit003 OCCURS 0 WITH HEADER LINE.

  IF NOT it_zycit079[] IS INITIAL.

    CLEAR: lt_zycit003, lt_zycit003[].

    SELECT * FROM /pws/zycit003 INTO TABLE lt_zycit003

      FOR ALL ENTRIES IN it_zycit079

      WHERE nrseq = /pws/zycie078-nrseq

        AND ebeln = it_zycit079-ebeln

        AND ebelp = it_zycit079-ebelp.

  ENDIF.

* << Fim da inclusão

  CALL FUNCTION 'POPUP_TO_CONFIRM'

       EXPORTING

            text_question         = text-038

            text_button_1         = text-004

            icon_button_1         = 'ICON_OKAY'

            text_button_2         = text-005

            icon_button_2         = 'ICON_CONCEL'

            default_button        = '1'

            display_cancel_button = 'X'

       IMPORTING

...

 

...

    CALL SCREEN 0600 STARTING AT 05 05.

    IF NOT it_zycit079[] IS INITIAL.

      LOOP AT it_zycit079.

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

          UPDATE /pws/zycit003 SET nrseqlsi = space

                              nrlsi    = space

                              nrlsisub = space

                    WHERE nrseq = /pws/zycie078-nrseq

                      AND ebeln = it_zycit079-ebeln

                      AND ebelp = it_zycit079-ebelp.

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

          IF sy-subrc EQ 0.

            READ TABLE lt_zycit003 WITH KEY

                                        nrseq = /pws/zycie078-nrseq

                                        ebeln = it_zycit079-ebeln

                                        ebelp = it_zycit079-ebelp.

            IF sy-subrc EQ 0.

              CLEAR: lt_zycit003-nrseqlsi, lt_zycit003-nrlsi,

                     lt_zycit003-nrlsisub.

              MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

              PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

                    ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

            ENDIF.

* << Fim da inclusão

        ENDIF.

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

        ENDIF.

* << Fim da inclusão

        MOVE 'X' TO it_zycit079-mark.

        MODIFY it_zycit079.

        COMMIT WORK.

      ENDLOOP.

      MOVE space TO /pws/zycie078-nrseq.

    ENDIF.

...

 

...

FORM save_pexpam.

  MODIFY /pws/zycit203 FROM TABLE it_zycit203.

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

  LOOP AT it_zycit203.

    MOVE-CORRESPONDING it_zycit203 TO /pws/zycit203.

    PERFORM carrega_log USING '/PWS/ZYCIT203' 'U'

          ' '  '/PWS/SAPMZYCI036' /pws/zycit203-nrseqp.

  ENDLOOP.

* << Fim da inclusão

ENDFORM.

...

 

...

        v_count2(7) TYPE n              ,

        v_ano2(4)   TYPE c              ,

        v_nrseq_v   LIKE /pws/zycie078-nrseqli.

  MOVE: /pws/zycie078-nrseqli TO v_nrseq_v.

  INSERT INTO /pws/zycit078 VALUES /pws/zycie078.

WHILE sy-subrc NE 0.

    CONCATENATE '%' 'I' sy-datum+2(2) INTO v_ano2.

    SELECT MAX( nrseqli ) INTO (v_nrseqli2) FROM /pws/zycit078

           WHERE nrseqli LIKE v_ano2.

    v_count2 = v_nrseqli2+0(7) + 1.

    CONCATENATE v_count2+0(7) 'I' sy-datum+2(2)

                     INTO /pws/zycie078-nrseqli.

    INSERT INTO /pws/zycit078 VALUES /pws/zycie078.

  ENDWHILE.

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

  MOVE-CORRESPONDING /pws/zycie078 TO /pws/zycit078.

  PERFORM carrega_log USING '/PWS/ZYCIT078' 'I'

        ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

  IF v_nrseq_v NE /pws/zycie078-nrseqli.

    LOOP AT it_zycit079.

      it_zycit079-nrseqli = /pws/zycie078-nrseqli.

...

 

...

FORM desvin_li.

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

  DATA: lt_zycit003 TYPE /pws/zycit003 OCCURS 0 WITH HEADER LINE.

  IF NOT it_zycit079[] IS INITIAL.

    CLEAR: lt_zycit003, lt_zycit003[].

    SELECT * FROM /pws/zycit003 INTO TABLE lt_zycit003

      FOR ALL ENTRIES IN it_zycit079

      WHERE nrseq = /pws/zycie078-nrseq

        AND ebeln = it_zycit079-ebeln

        AND ebelp = it_zycit079-ebelp.

  ENDIF.

* << Fim da inclusão

  CHECK NOT /pws/zycie078-nrseq IS INITIAL.

  IF NOT /pws/zycie078-nrli IS INITIAL.

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

      MESSAGE i015 WITH text-159 text-160.

    ELSEIF /pws/zycie078-tpli EQ 'S'.

      MESSAGE i015 WITH text-200 text-160.

    ENDIF.

    EXIT.

  ENDIF.

  IF NOT /pws/zycie078-nrseq IS INITIAL.

...

 

...

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

        UPDATE /pws/zycit003 SET nrseqli    = space

                            nrli       = space

                            nrlisub    = space

                            nrseqd     = space

                            nrdrawback = space

                            modalidade = space

                  WHERE nrseq = /pws/zycie078-nrseq

                    AND ebeln = it_zycit079-ebeln

                    AND ebelp = it_zycit079-ebelp.

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

        IF sy-subrc EQ 0.

          READ TABLE lt_zycit003 WITH KEY

                                      nrseq = /pws/zycie078-nrseq

                                      ebeln = it_zycit079-ebeln

                                      ebelp = it_zycit079-ebelp.

          IF sy-subrc EQ 0.

            CLEAR: lt_zycit003-nrseqli, lt_zycit003-nrli,

                   lt_zycit003-nrlisub, lt_zycit003-nrseqd,

                   lt_zycit003-nrdrawback, lt_zycit003-modalidade.

            MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

            PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

                  ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

          ENDIF.

        ENDIF.

* << Fim da inclusão

      ELSEIF /pws/zycie078-tpli EQ 'S'.

        UPDATE /pws/zycit003 SET nrseqlsi    = space

                            nrlsi       = space

                  WHERE nrseq = /pws/zycie078-nrseq

                    AND ebeln = it_zycit079-ebeln

                    AND ebelp = it_zycit079-ebelp.

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

        IF sy-subrc EQ 0.

          READ TABLE lt_zycit003 WITH KEY

                                      nrseq = /pws/zycie078-nrseq

                                      ebeln = it_zycit079-ebeln

                                      ebelp = it_zycit079-ebelp.

          IF sy-subrc EQ 0.

            CLEAR: lt_zycit003-nrseqlsi, lt_zycit003-nrlsi.

            MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

            PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

                  ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

          ENDIF.

* << Fim da inclusão

      ENDIF.

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

      ENDIF.

* << Fim da inclusão

      MOVE 'X' TO it_zycit079-mark.

      MODIFY it_zycit079.

    ENDLOOP.

    IF /pws/zycie078-nrli IS INITIAL.

      MOVE  'COM' TO /pws/zycie078-status .

    ELSE.

...

 

...

          space TO /pws/zycie078-dtregdi,

          space TO /pws/zycie078-nrseq  .

    UPDATE /pws/zycit078

      SET nrseqdi = /pws/zycie078-nrseqdi

          nrdi    = /pws/zycie078-nrdi

          adicao  = /pws/zycie078-adicao

          dtregdi = /pws/zycie078-dtregdi

          nrseq   = /pws/zycie078-nrseq

          status  = /pws/zycie078-status

      WHERE nrseqli EQ /pws/zycie078-nrseqli.

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

    IF sy-subrc EQ 0.

      MOVE-CORRESPONDING /pws/zycie078 TO /pws/zycit078.

      PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

* << Fim da inclusão

    PERFORM deleta_itens.

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

      MESSAGE s015 WITH text-162.

    ELSEIF /pws/zycie078-tpli EQ 'S'.

      MESSAGE s015 WITH text-202.

    ENDIF.

  ELSE.

    MESSAGE i015 WITH  text-384.

  ENDIF.

ENDFORM.

...

 

...

    ENDIF.

    DATA:BEGIN OF it_zycit003_sub OCCURS 0.

            INCLUDE STRUCTURE /pws/zycit003.

    DATA:END OF it_zycit003_sub.

    IF NOT v_exit IS INITIAL.

      EXIT.

    ENDIF.

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

      SELECT * FROM /pws/zycit003

              INTO TABLE it_zycit003_sub

              WHERE nrseqli EQ wa_zycit078_aux2-nrseqli.

      IF sy-subrc EQ 0.

        LOOP AT it_zycit003_sub.

          it_zycit003_sub-nrseqli = /pws/zycie078-nrseqli.

          MOVE: /pws/zycie078-nrli TO it_zycit003_sub-nrli,

                'X' TO it_zycit003_sub-nrlisub.

          MODIFY it_zycit003_sub.

        ENDLOOP.

        MODIFY /pws/zycit003 FROM TABLE it_zycit003_sub.

      ENDIF.

    ELSEIF /pws/zycie078-tpli EQ 'S'.

      SELECT * FROM /pws/zycit003

       INTO TABLE it_zycit003_sub

       WHERE nrseqlsi EQ wa_zycit078_aux2-nrseqli.

      IF sy-subrc EQ 0.

        LOOP AT it_zycit003_sub.

          it_zycit003_sub-nrseqlsi = /pws/zycie078-nrseqli.

          MOVE: /pws/zycie078-nrli TO it_zycit003_sub-nrlsi,

                'X' TO it_zycit003_sub-nrlsisub.

          MODIFY it_zycit003_sub.

        ENDLOOP.

        MODIFY /pws/zycit003 FROM TABLE it_zycit003_sub.

      ENDIF.

    ENDIF.

    COMMIT WORK.

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

    LOOP AT it_zycit003_sub.

      MOVE-CORRESPONDING it_zycit003_sub TO /pws/zycit003.

      PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

            ' '  '/PWS/SAPMZYCI001' /pws/zycit003-nrseq.

    ENDLOOP.

* << Fim da inclusão

  ENDIF.

ENDFORM.

...

 

...

FORM save_drawback.

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

  DATA: lt_zycit003 TYPE /pws/zycit003 OCCURS 0 WITH HEADER LINE.

  IF NOT it_zycit079[] IS INITIAL.

    CLEAR: lt_zycit003, lt_zycit003[].

    SELECT * FROM /pws/zycit003 INTO TABLE lt_zycit003

      FOR ALL ENTRIES IN it_zycit079

      WHERE nrseq = /pws/zycie078-nrseq

        AND ebeln = it_zycit079-ebeln

        AND ebelp = it_zycit079-ebelp.

  ENDIF.

* << Fim da inclusão

  DATA: v_qtdtotd TYPE /pws/zycit079-qtd_iten,

        v_pesod   TYPE /pws/zycit079-qtd_iten.

  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.                 "#EC CI_NOFIRST

...

 

...

      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.

  ENDIF.

  MODIFY /pws/zycit245 FROM TABLE it_zycit245.

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

  LOOP AT it_zycit245.

    MOVE-CORRESPONDING it_zycit245 TO /pws/zycit245.

    PERFORM carrega_log USING '/PWS/ZYCIT245' 'U'

          ' '  '/PWS/SAPMZYCI040' /pws/zycit245-nrseqd.

  ENDLOOP.

* << 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

                       AND ebelp = it_zycit079-ebelp

                       AND nrseq = /pws/zycie078-nrseq.

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

      IF sy-subrc EQ 0.

        READ TABLE lt_zycit003 WITH KEY

                                    nrseq = /pws/zycie078-nrseq

                                    ebeln = it_zycit079-ebeln

                                    ebelp = it_zycit079-ebelp.

        IF sy-subrc EQ 0.

          lt_zycit003-nrseqd      = /pws/zycie078-nrseqd.

          lt_zycit003-nrdrawback  = /pws/zycie078-nrdrawback.

          lt_zycit003-modalidade  = /pws/zycie078-modalidade.

          MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

          PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

                ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

        ENDIF.

      ENDIF.

* << Fim da inclusão

    ENDLOOP.

  ENDIF.

ENDFORM.

...

 

...

FORM vincula_li.

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

  DATA: lt_zycit003 TYPE /pws/zycit003 OCCURS 0 WITH HEADER LINE.

  IF NOT it_vincula_aux[] IS INITIAL.

    CLEAR: lt_zycit003, lt_zycit003[].

    SELECT * FROM /pws/zycit003 INTO TABLE lt_zycit003

      FOR ALL ENTRIES IN it_vincula_aux

      WHERE nrseq = /pws/zycie078-nrseq

        AND ebeln = it_vincula_aux-ebeln

        AND ebelp = it_vincula_aux-ebelp.

  ENDIF.

* << Fim da inclusão

  IF NOT /pws/zycie078-nrseqlisuba IS INITIAL.

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

                        nrlisub    = 'X'

                        nrli       = /pws/zycie078-nrli

                        nrseqd     = /pws/zycie078-nrseqd

                        nrdrawback = /pws/zycie078-nrdrawback

                        modalidade = /pws/zycie078-modalidade

                   WHERE ebeln = it_vincula_aux-ebeln

                     AND ebelp = it_vincula_aux-ebelp

                     AND nrseq = /pws/zycie078-nrseq.

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

    IF sy-subrc EQ 0.

      READ TABLE lt_zycit003 WITH KEY

                                  nrseq = /pws/zycie078-nrseq

                                  ebeln = it_vincula_aux-ebeln

                                  ebelp = it_vincula_aux-ebelp.

      IF sy-subrc EQ 0.

        lt_zycit003-nrseqli    = /pws/zycie078-nrseqli.

        lt_zycit003-nrlisub    = 'X'.

        lt_zycit003-nrli       = /pws/zycie078-nrli.

        lt_zycit003-nrseqd     = /pws/zycie078-nrseqd.

        lt_zycit003-nrdrawback = /pws/zycie078-nrdrawback.

        lt_zycit003-modalidade = /pws/zycie078-modalidade.

        MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

        PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

              ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

      ENDIF.

    ENDIF.

* << Fim da inclusão

  ELSE.

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

                        nrli       = /pws/zycie078-nrli

                        nrseqd     = /pws/zycie078-nrseqd

                        nrdrawback = /pws/zycie078-nrdrawback

                        modalidade = /pws/zycie078-modalidade

                   WHERE ebeln = it_vincula_aux-ebeln

                     AND ebelp = it_vincula_aux-ebelp

                     AND nrseq = /pws/zycie078-nrseq.

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

    IF sy-subrc EQ 0.

      READ TABLE lt_zycit003 WITH KEY

                                  nrseq = /pws/zycie078-nrseq

                                  ebeln = it_vincula_aux-ebeln

                                  ebelp = it_vincula_aux-ebelp.

      IF sy-subrc EQ 0.

        lt_zycit003-nrseqli    = /pws/zycie078-nrseqli.

        lt_zycit003-nrli       = /pws/zycie078-nrli.

        lt_zycit003-nrseqd     = /pws/zycie078-nrseqd.

        lt_zycit003-nrdrawback = /pws/zycie078-nrdrawback.

        lt_zycit003-modalidade = /pws/zycie078-modalidade.

        MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

        PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

              ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

      ENDIF.

* << Fim da inclusão

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

ENDFORM.

...

 

...

FORM vincula_lsi.

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

  DATA: lt_zycit003 TYPE /pws/zycit003 OCCURS 0 WITH HEADER LINE.

  IF NOT it_vincula_aux[] IS INITIAL.

    CLEAR: lt_zycit003, lt_zycit003[].

    SELECT * FROM /pws/zycit003 INTO TABLE lt_zycit003

      FOR ALL ENTRIES IN it_vincula_aux

      WHERE nrseq = /pws/zycie078-nrseq

        AND ebeln = it_vincula_aux-ebeln

        AND ebelp = it_vincula_aux-ebelp.

  ENDIF.

* << Fim da inclusão

  IF NOT /pws/zycie078-nrseqlisuba IS INITIAL.

    UPDATE /pws/zycit003 SET nrseqlsi = /pws/zycie078-nrseqli

                        nrlsisub      = 'X'

                        nrlsi         = /pws/zycie078-nrli

                   WHERE ebeln = it_vincula_aux-ebeln

                     AND ebelp = it_vincula_aux-ebelp

                     AND nrseq = /pws/zycie078-nrseq.

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

    IF sy-subrc EQ 0.

      READ TABLE lt_zycit003 WITH KEY

                                  nrseq = /pws/zycie078-nrseq

                                  ebeln = it_vincula_aux-ebeln

                                  ebelp = it_vincula_aux-ebelp.

      IF sy-subrc EQ 0.

        lt_zycit003-nrseqlsi = /pws/zycie078-nrseqli.

        lt_zycit003-nrlsisub = 'X'.

        lt_zycit003-nrlsi    = /pws/zycie078-nrli.

        MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

        PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

              ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

      ENDIF.

    ENDIF.

* << Fim da inclusão

  ELSE.

    UPDATE /pws/zycit003 SET nrseqlsi = /pws/zycie078-nrseqli

                             nrlsi    = /pws/zycie078-nrli

                   WHERE ebeln = it_vincula_aux-ebeln

                     AND ebelp = it_vincula_aux-ebelp

                     AND nrseq = /pws/zycie078-nrseq.

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

    IF sy-subrc EQ 0.

      READ TABLE lt_zycit003 WITH KEY

                                  nrseq = /pws/zycie078-nrseq

                                  ebeln = it_vincula_aux-ebeln

                                  ebelp = it_vincula_aux-ebelp.

      IF sy-subrc EQ 0.

        lt_zycit003-nrseqlsi = /pws/zycie078-nrseqli.

        lt_zycit003-nrlsi    = /pws/zycie078-nrli.

        MOVE-CORRESPONDING lt_zycit003 TO /pws/zycit003.

        PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'

              ' '  '/PWS/SAPMZYCI001' lt_zycit003-nrseq.

      ENDIF.

    ENDIF.

* << Fim da inclusão

  ENDIF.

ENDFORM.

...

 

...

FORM savepli.

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

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

* << Fim da inclusão

...

 

...

  IF v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_N' OR

     v_tcode EQ '/PWS/ZYCI020_G'.

    /pws/zycie078-usernamea = sy-uname.

    /pws/zycie078-dtusera = sy-datum.

  ENDIF.

  IF NOT v_flag IS INITIAL.

    wa_zycit078_aux2-nrlisub     = /pws/zycie078-nrli.

    wa_zycit078_aux2-nrseqlisub  = /pws/zycie078-nrseqli.

    MODIFY /pws/zycit078 FROM wa_zycit078_aux2.

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

    MOVE-CORRESPONDING wa_zycit078_aux2 TO /pws/zycit078.

    PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

          ' '  '/PWS/SAPMZYCI020' /pws/zycit078-nrseqli.

* << Fim da inclusão

  ENDIF.

  CONCATENATE /pws/zycie078-steuc1(4) /pws/zycie078-steuc1+5(2)

  /pws/zycie078-steuc1+8(2) INTO v_steuc1.

  IF /pws/zycie078-transm IS INITIAL.

    /pws/zycie078-transm = 'N'.

  ENDIF.

  /pws/zycie078-steuc2 = v_steuc1.

  MODIFY /pws/zycit078 FROM /pws/zycie078.

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

  MOVE-CORRESPONDING /pws/zycie078 TO /pws/zycit078.

  PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

        ' '  '/PWS/SAPMZYCI020' /pws/zycit078-nrseqli.

* << Fim da inclusão

  MOVE: /pws/zycie078 TO wa_zycit078.

  COMMIT WORK.

  LOOP AT it_vincula_aux.

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

      PERFORM vincula_li.

    ELSEIF /pws/zycie078-tpli EQ 'S'.

      PERFORM vincula_lsi.

    ENDIF.

  ENDLOOP.

  CLEAR it_vincula.

...

 

...

                         USING /pws/zycie078.

  IF v_exit = 'S'.

    EXIT.

  ENDIF.

  PERFORM: salva_item   ,

           save_txt     ,

           salva_anu2_pli ,

           save_pexpam  ,

           save_drawback.

  IF okcode = 'CANCEL'.

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

    CLEAR: lt_zycit079, lt_zycit079[].

    SELECT * FROM /pws/zycit079 INTO TABLE lt_zycit079

        WHERE numli = /pws/zycie078-nrseqli.

* << Fim da inclusão

    UPDATE /pws/zycit079 SET numli = space

                WHERE numli = /pws/zycie078-nrseqli.    "#EC CI_NOFIELD

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

    LOOP AT lt_zycit079.

      CLEAR: lt_zycit079-numli.

      MOVE-CORRESPONDING lt_zycit079 TO /pws/zycit079.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

          ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDLOOP.

* << Fim da inclusão

  ENDIF.

  MESSAGE s017 WITH /pws/zycie078-nrseqli.

  COMMIT WORK.

  CASE v_tcode.

    WHEN '/PWS/ZYCI020_C'.

      v_tcode = '/PWS/ZYCI020_A'.

    WHEN '/PWS/ZYCI020_P'.

      v_tcode = '/PWS/ZYCI020_N'.

    WHEN '/PWS/ZYCI020_I'.

      v_tcode = '/PWS/ZYCI020_G'.

  ENDCASE.

  PERFORM lock_record.

ENDFORM.

...

 

...

FORM salva_fornpli TABLES p_it_zycit079 LIKE it_zycit079[]

                   USING    p_zycie078 STRUCTURE /pws/zycie078.

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

  DATA: lt_zycit080 TYPE /pws/zycit080 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  IF v_tcode EQ '/PWS/ZYCI020_C' OR

     v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_I' OR

     v_tcode EQ '/PWS/ZYCI020_G'.

    CLEAR: it_lfa1,

           it_adrc,

           it_ekko.

    REFRESH: it_lfa1,

             it_adrc,

             it_ekko.

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

    SELECT * FROM /pws/zycit080 INTO TABLE lt_zycit080

       WHERE nrseqli = p_zycie078-nrseqli.

    LOOP AT lt_zycit080.

      MOVE-CORRESPONDING lt_zycit080 TO /pws/zycit080.

      PERFORM carrega_log USING '/PWS/ZYCIT080' 'D'

            ' '  '/PWS/SAPMZYCI020' p_zycie078-nrseqli.

    ENDLOOP.

* << Fim da inclusão

    DELETE FROM /pws/zycit080 WHERE

                       nrseqli = p_zycie078-nrseqli.

    COMMIT WORK.

    IF NOT p_it_zycit079[] IS INITIAL.

      SELECT lifnr adrnr land1 FROM lfa1

             INTO TABLE it_lfa1

             FOR ALL ENTRIES IN p_it_zycit079

             WHERE lifnr EQ p_it_zycit079-lifnr.

      SELECT ebeln lifnr FROM ekko

             INTO TABLE it_ekko

...

 

 

...

        ENDIF.

        /pws/zycie080-tipoforn  = 'E'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = v_bezei.

        /pws/zycie080-compl       = it_adrc-city2.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

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

        MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

        PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

        CLEAR /pws/zycie080.

        MOVE: p_zycie078-nrseqli TO /pws/zycie080-nrseqli,

              p_it_zycit079-lifnr TO /pws/zycie080-lifnr,

              p_it_zycit079-ebeln TO /pws/zycie080-ebeln,

              p_it_zycit079-ebelp TO /pws/zycie080-ebelp.

        PERFORM gera_nrforn.

        READ TABLE it_lfa1 WITH KEY lifnr = /pws/zycie080-lifnr.

        IF sy-subrc EQ 0.

          READ TABLE it_adrc WITH KEY addrnumber = it_lfa1-adrnr.

        ENDIF.

        /pws/zycie080-tipoforn  = 'F'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = it_adrc-region.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

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

        MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

        PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      ELSEIF p_it_zycit079-fabric EQ '2'.

        MOVE: p_zycie078-nrseqli TO /pws/zycie080-nrseqli,

              p_it_zycit079-ebeln TO /pws/zycie080-ebeln,

              p_it_zycit079-ebelp TO /pws/zycie080-ebelp.

        READ TABLE it_ekko WITH KEY ebeln = p_it_zycit079-ebeln.

        /pws/zycie080-lifnr = it_ekko-lifnr.

        PERFORM gera_nrforn.

        IF v_exit = 'S'.

          EXIT.

        ENDIF.

...

 

...

        ENDIF.

        /pws/zycie080-tipoforn  = 'E'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = v_bezei.

        /pws/zycie080-compl       = it_adrc-city2.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

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

        MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

        PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

        CLEAR /pws/zycie080.

        MOVE: p_zycie078-nrseqli TO /pws/zycie080-nrseqli,

              p_it_zycit079-lifnr TO /pws/zycie080-lifnr,

              p_it_zycit079-ebeln TO /pws/zycie080-ebeln,

              p_it_zycit079-ebelp TO /pws/zycie080-ebelp.

        PERFORM gera_nrforn.

        READ TABLE it_lfa1 WITH KEY lifnr = /pws/zycie080-lifnr.

        IF sy-subrc EQ 0.

          READ TABLE it_adrc WITH KEY addrnumber = it_lfa1-adrnr.

        ENDIF.

        /pws/zycie080-tipoforn  = 'F'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = it_adrc-region.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

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

        MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

        PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      ELSEIF p_it_zycit079-fabric EQ '3'.

        MOVE: p_zycie078-nrseqli TO /pws/zycie080-nrseqli,

              p_it_zycit079-ebeln TO /pws/zycie080-ebeln,

              p_it_zycit079-ebelp TO /pws/zycie080-ebelp.

        READ TABLE it_ekko WITH KEY ebeln = p_it_zycit079-ebeln.

        /pws/zycie080-lifnr = it_ekko-lifnr.

        PERFORM gera_nrforn.

        IF v_exit = 'S'.

          EXIT.

        ENDIF.

...

 

...

        ENDIF.

        /pws/zycie080-tipoforn  = 'E'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = v_bezei.

        /pws/zycie080-compl       = it_adrc-city2.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

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

        MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

        PERFORM carrega_log USING '/PWS/ZYCIT080' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

      ENDIF.

    ENDLOOP.

    COMMIT WORK.

  ENDIF.

ENDFORM.

...

 

...

  ENDSELECT.

  SELECT name1 country street house_num1 city1 region

         FROM adrc

         INTO (/pws/zycie080-name1, /pws/zycie080-landa,

 /pws/zycie080-logradouro,

           /pws/zycie080-nrlogr, /pws/zycie080-city,

 /pws/zycie080-regio)

         WHERE addrnumber EQ v_adrnr.

  ENDSELECT.

  MODIFY /pws/zycit080 FROM /pws/zycie080.

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

  MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

  PERFORM carrega_log USING '/PWS/ZYCIT080' 'U'

        ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

ENDFORM.

...

 

...

FORM completa_forn_f.

  DATA: v_adrnr LIKE lfa1-adrnr.

  /pws/zycie080-tipoforn  = 'F'.

  SELECT adrnr FROM lfa1

         INTO v_adrnr

         WHERE lifnr EQ /pws/zycie080-lifnr.

  ENDSELECT.

  SELECT name1 country street house_num1 city1 region

         FROM adrc

         INTO (/pws/zycie080-name1, /pws/zycie080-landa,

 /pws/zycie080-logradouro,

           /pws/zycie080-nrlogr, /pws/zycie080-city,

 /pws/zycie080-regio)

         WHERE addrnumber EQ v_adrnr.

  ENDSELECT.

  MODIFY /pws/zycit080 FROM /pws/zycie080.

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

  MOVE-CORRESPONDING /pws/zycie080 TO /pws/zycit080.

  PERFORM carrega_log USING '/PWS/ZYCIT080' 'U'

        ' '  '/PWS/SAPMZYCI020' /pws/zycit080-nrseqli.

* << Fim da inclusão

ENDFORM.

...

 

...

FORM salva_anu2_pli.

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

  DATA: lt_zycit109 TYPE /pws/zycit109 OCCURS 0 WITH HEADER LINE.

  SELECT * FROM /pws/zycit109 INTO TABLE lt_zycit109

   WHERE nrseqli  = /pws/zycie078-nrseqli.

  it_anu2-tpli = 'N'.

  MODIFY it_anu2 TRANSPORTING tpli

       WHERE nrseqli = /pws/zycie078-nrseqli.

  LOOP AT lt_zycit109.

    READ TABLE it_anu2 WITH KEY nrseqli = lt_zycit109-nrseqli

                                tpli    = lt_zycit109-tpli

                                codncm  = lt_zycit109-codncm.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING lt_zycit109 TO /pws/zycit109.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  DELETE FROM /pws/zycit109

  WHERE nrseqli  = /pws/zycie078-nrseqli.

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

  it_anu2-tpli = 'N'.

  MODIFY it_anu2 TRANSPORTING tpli

       WHERE nrseqli = /pws/zycie078-nrseqli.

* << Fim da inclusão

  LOOP AT it_anu2.

    it_anu2-tpli = 'N'.

    MODIFY it_anu2 INDEX sy-tabix TRANSPORTING tpli.

    INSERT /pws/zycit109 FROM it_anu2.

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

    READ TABLE lt_zycit109 WITH KEY nrseqli = it_anu2-nrseqli

                                    tpli    = it_anu2-tpli

                                    codncm  = it_anu2-codncm.

    IF sy-subrc EQ 0.

      MOVE-CORRESPONDING it_anu2 TO /pws/zycit109.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ELSE.

      MOVE-CORRESPONDING it_anu2 TO /pws/zycit109.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  CLEAR it_anu2_aux.

  REFRESH it_anu2_aux.

  LOOP AT it_anu2.

    MOVE-CORRESPONDING it_anu2 TO it_anu2_aux.

    APPEND it_anu2_aux.

  ENDLOOP.

  COMMIT WORK.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F02

 

...

           v_tcode EQ '/PWS/ZYCI020_C' OR

           v_tcode EQ '/PWS/ZYCI020_E'.

          IF NOT okcode EQ 'TRANSM'.

            MESSAGE i015 WITH text-115.

          ENDIF.

        ELSEIF v_tcode EQ '/PWS/ZYCI020_G' OR

             v_tcode EQ '/PWS/ZYCI020_I' OR

             v_tcode EQ '/PWS/ZYCI020_L'.

          MESSAGE i015 WITH text-154.

        ENDIF.

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

        MOVE-CORRESPONDING wa_zycit136 TO /pws/zycit136.

        PERFORM carrega_log USING '/PWS/ZYCIT136' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit136-nrseq.

* << Fim da inclusão

      ELSE.

        IF NOT okcode EQ 'TRANSM'.

          MESSAGE i015 WITH text-116.

        ENDIF.

      ENDIF.

    ELSE.

      CASE sy-dynnr.

        WHEN '0100'.

          CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'

               EXPORTING

...

 

...

               EXPORTING

                    defaultoption = 'Y'

                    diagnosetext1 = text-155

                    textline1     = text-156

                    titel         = text-157

               IMPORTING

                    answer        = v_resposta.

      ENDCASE.

      IF v_resposta EQ 'J'.

        wa_zycit136-stasis = 'A'.

        wa_zycit136-dtenvf   = sy-datum.

        MODIFY /pws/zycit136 FROM wa_zycit136.

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

        MOVE-CORRESPONDING wa_zycit136 TO /pws/zycit136.

        PERFORM carrega_log USING '/PWS/ZYCIT136' 'U'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit136-nrseq.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

      wa_zycit136-nrseq    = /pws/zycie078-nrseqli   .

      wa_zycit136-identify = /pws/zycie078-identify  .

      wa_zycit136-bukrs    = /pws/zycie078-bukrs     .

      wa_zycit136-branch   = /pws/zycie078-j_1bbranch.

      wa_zycit136-dtenvf   = sy-datum           .

      wa_zycit136-uname    = sy-uname           .

      wa_zycit136-stasis   = 'A'                .

      MODIFY /pws/zycit136 FROM wa_zycit136.

      IF sy-subrc EQ 0.

        MESSAGE i015 WITH text-165.

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

        MOVE-CORRESPONDING wa_zycit136 TO /pws/zycit136.

        PERFORM carrega_log USING '/PWS/ZYCIT136' 'I'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit136-nrseq.

* << Fim da inclusão

      ELSE.

        MESSAGE i015 WITH text-116.

      ENDIF.

    ELSE.

      CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'

           EXPORTING

                defaultoption = 'Y'

                diagnosetext1 = text-166

                textline1     = text-167

                titel         = text-168

           IMPORTING

                answer        = v_resposta.

      IF v_resposta EQ 'J'.

        wa_zycit136-stasis = 'A'.

        wa_zycit136-dtenvf   = sy-datum.

        MODIFY /pws/zycit136 FROM wa_zycit136.

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

        MOVE-CORRESPONDING wa_zycit136 TO /pws/zycit136.

        PERFORM carrega_log USING '/PWS/ZYCIT136' 'U'

              ' '  '/PWS/SAPMZYCI020' /pws/zycit136-nrseq.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

  ENDIF.

  IF sy-subrc EQ 0.

    LOOP AT itab_zycit257.

      MOVE: 'X' TO itab_zycit104-flag,

            'I' TO itab_zycit104-codmod,

           itab_zycit257-codint  TO itab_zycit104-codint,

           itab_zycit257-idtext  TO itab_zycit104-idtext,

           itab_zycit257-tdspras TO itab_zycit104-tdspras.

      APPEND itab_zycit104.

    ENDLOOP.

    LOOP AT itab_zycit104.

      INSERT INTO /pws/zycit104 VALUES itab_zycit104.

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

      MOVE-CORRESPONDING itab_zycit104 TO /pws/zycit104.

      PERFORM carrega_log USING '/PWS/ZYCIT104' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

    ENDLOOP.

    IF ( ittxt1[] IS INITIAL AND

       v_tcode EQ '/PWS/ZYCI020_C' ) OR

       ( ittxt1[] IS INITIAL AND

...

 

...

FORM atual_item.

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

  DATA: lt_zycit078 TYPE /pws/zycit078 OCCURS 0 WITH HEADER LINE,

        lt_zycit080 TYPE /pws/zycit080 OCCURS 0 WITH HEADER LINE,

        lt_zycit081 TYPE /pws/zycit081 OCCURS 0 WITH HEADER LINE,

        lt_zycit109 TYPE /pws/zycit109 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  LOOP AT it_zycit079_del.

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

    MOVE-CORRESPONDING it_zycit079_del TO /pws/zycit079.

    PERFORM carrega_log USING '/PWS/ZYCIT079' 'D'

          ' '  '/PWS/SAPMZYCI020' it_zycit079_del-numli.

* << Fim da inclusão

    DELETE FROM /pws/zycit079 WHERE nrseqli = it_zycit079_del-numli

                           AND tpli    = 'N'

                           AND ebeln   = it_zycit079_del-ebeln

                           AND ebelp   = it_zycit079_del-ebelp.

    COMMIT WORK.

    SELECT SINGLE * FROM /pws/zycit079

        WHERE nrseqli EQ it_zycit079_del-numli.

    IF sy-subrc NE 0 .

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

      SELECT * FROM /pws/zycit078 INTO TABLE lt_zycit078

         WHERE nrseqli = it_zycit079_del-numli.

      SELECT * FROM /pws/zycit080 INTO TABLE lt_zycit080

         WHERE nrseqli = it_zycit079_del-numli.

      SELECT * FROM /pws/zycit081 INTO TABLE lt_zycit081

         WHERE nrseqli = it_zycit079_del-numli.

      SELECT * FROM /pws/zycit109 INTO TABLE lt_zycit109

         WHERE nrseqli = it_zycit079_del-numli

           AND tpli    = 'N'.

      LOOP AT lt_zycit078.

        MOVE-CORRESPONDING lt_zycit078 TO /pws/zycit078.

        PERFORM carrega_log USING '/PWS/ZYCIT078' 'D'

              ' '  '/PWS/SAPMZYCI020' it_zycit079_del-numli.

      ENDLOOP.

      LOOP AT lt_zycit080.

        MOVE-CORRESPONDING lt_zycit080 TO /pws/zycit080.

        PERFORM carrega_log USING '/PWS/ZYCIT080' 'D'

              ' '  '/PWS/SAPMZYCI020' it_zycit079_del-numli.

      ENDLOOP.

      LOOP AT lt_zycit081.

        MOVE-CORRESPONDING lt_zycit081 TO /pws/zycit081.

        PERFORM carrega_log USING '/PWS/ZYCIT081' 'D'

              ' '  '/PWS/SAPMZYCI020' it_zycit079_del-numli.

      ENDLOOP.

      LOOP AT lt_zycit109.

        MOVE-CORRESPONDING lt_zycit109 TO /pws/zycit109.

        PERFORM carrega_log USING '/PWS/ZYCIT109' 'D'

              ' '  '/PWS/SAPMZYCI020' it_zycit079_del-numli.

      ENDLOOP.

* << Fim da inclusão

      DELETE FROM /pws/zycit078 WHERE nrseqli = it_zycit079_del-numli.

      DELETE FROM /pws/zycit080 WHERE nrseqli = it_zycit079_del-numli.

      DELETE FROM /pws/zycit081 WHERE nrseqli = it_zycit079_del-numli.

      DELETE FROM /pws/zycit109 WHERE nrseqli = it_zycit079_del-numli

                           AND   tpli    = 'N'.

      COMMIT WORK.

    ENDIF.

  ENDLOOP.

ENDFORM.

...

 

...

  CLEAR  /pws/zycie078c.

  MOVE : /pws/zycie078  TO /pws/zycie078c,

         v_pliorig TO /pws/zycie078c-numpli.

  CLEAR : /pws/zycie078c-flagpli,

          /pws/zycie078c-nrpli  ,

          /pws/zycie078c-dtreg  .

  CONCATENATE '%' 'I' sy-datum+2(2) INTO v_ano2.

  SELECT MAX( nrseqli ) INTO (v_nrseqli2) FROM /pws/zycit078

         WHERE nrseqli LIKE v_ano2.

  v_count2 = v_nrseqli2+0(7) + 1.

  CONCATENATE v_count2+0(7) 'I' sy-datum+2(2)

                  INTO /pws/zycie078c-nrseqli.

  MOVE: /pws/zycie078c TO /pws/zycit078.

  INSERT /pws/zycit078.

WHILE sy-subrc NE 0.

    CONCATENATE '%' 'I' sy-datum+2(2) INTO v_ano2.

    SELECT MAX( nrseqli ) INTO (v_nrseqli2) FROM /pws/zycit078

           WHERE nrseqli LIKE v_ano2.

    v_count2 = v_nrseqli2+0(7) + 1.

    CONCATENATE v_count2+0(7) 'I' sy-datum+2(2)

                    INTO /pws/zycie078c-nrseqli.

    INSERT INTO /pws/zycit078 VALUES /pws/zycie078c.

  ENDWHILE.

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

  MOVE-CORRESPONDING /pws/zycie078c TO /pws/zycit078.

  PERFORM carrega_log USING '/PWS/ZYCIT078' 'I'

        ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

* << Fim da inclusão

  UPDATE /pws/zycit078 SET flagpli = space

    WHERE nrseqli = /pws/zycie078c-nrseqli

      AND    tpli = /pws/zycie078-tpli.

...

 

...

FORM salva_itemncm.

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

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

* << Fim da inclusão

  DATA: v_tpli  LIKE /pws/zycit078-tpli ,

        v_vltot LIKE /pws/zycit078-vltot,

        v_idx   LIKE sy-tabix,

        v_ncm_t LIKE /pws/zycie078-steuc1.

  CLEAR  : it_zycit079_aux2, v_vltot, v_ncm_t.

  REFRESH: it_zycit079_aux2.

  v_tpli = 'N'.

  LOOP AT it_zycit079_ncm.

    v_idx = sy-tabix.

    READ TABLE it_zycit079 WITH KEY

...

 

...

      MODIFY it_zycit079 TRANSPORTING numli

                   WHERE ebeln EQ it_zycit079_ncm-ebeln

                     AND ebelp EQ it_zycit079_ncm-ebelp.

    ENDIF.

    v_vltot =  v_vltot + ( it_zycit079_ncm-netpr *

                it_zycit079_ncm-qtd_iten  ).

    v_ncm_t = it_zycit079_ncm-steuc1.

    PERFORM criar_texto_ncm.

    it_zycit079_ncm-tpli = v_tpli.

    MODIFY it_zycit079_ncm INDEX v_idx.

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

  ENDLOOP.

  SELECT * FROM /pws/zycit079 INTO TABLE lt_zycit079

    WHERE nrseqli = /pws/zycie078c-nrseqli.

  LOOP AT lt_zycit079.

    READ TABLE it_zycit079_ncm WITH KEY nrseqli = lt_zycit079-nrseqli

                                        tpli    = lt_zycit079-tpli

                                        ebeln   = lt_zycit079-ebeln

                                        ebelp   = lt_zycit079-ebelp.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING lt_zycit079 TO /pws/zycit079.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  DELETE FROM /pws/zycit079 WHERE nrseqli = /pws/zycie078c-nrseqli.

  MODIFY /pws/zycit079 FROM TABLE it_zycit079_ncm.

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

  LOOP AT it_zycit079_ncm.

    MOVE-CORRESPONDING it_zycit079_ncm TO /pws/zycit079.

    READ TABLE lt_zycit079 WITH KEY nrseqli = it_zycit079_ncm-nrseqli

                                    tpli    = it_zycit079_ncm-tpli

                                    ebeln   = it_zycit079_ncm-ebeln

                                    ebelp   = it_zycit079_ncm-ebelp.

    IF sy-subrc EQ 0.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ELSE.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  UPDATE /pws/zycit078 SET vltot  = v_vltot

                           steuc1 = v_ncm_t

               WHERE nrseqli = /pws/zycie078c-nrseqli.

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

  /pws/zycie078c-vltot  = v_vltot.

  /pws/zycie078c-steuc1 = v_ncm_t.

  MOVE-CORRESPONDING /pws/zycie078c TO /pws/zycit078.

  PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

        ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

* << Fim da inclusão

  LOOP AT it_zycit079.

    UPDATE /pws/zycit079 SET numli  = it_zycit079-numli

                 WHERE nrseqli = it_zycit079-nrseqli

                   AND tpli    = v_tpli

                   AND ebeln   = it_zycit079-ebeln

                   AND ebelp   = it_zycit079-ebelp.

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

    MOVE-CORRESPONDING it_zycit079 TO /pws/zycit079.

    PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

          ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

* << Fim da inclusão

  ENDLOOP.

  COMMIT WORK.

ENDFORM.

...

 

...

FORM salva_anuncm.

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

  DATA: lt_zycit081 TYPE /pws/zycit081 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  CLEAR  : it_zycit081_aux.

  REFRESH: it_zycit081_aux.

  DATA v_tpli LIKE /pws/zycit081-tpli.

...

 

...

    v_tpli = 'N'.

  ENDIF.

  SELECT nrseqli tpli nranuente orgao ebeln ebelp

           FROM /pws/zycit081

           INTO TABLE it_zycit081_aux

           WHERE nrseqli = /pws/zycie078c-nrseqli

             AND tpli    = v_tpli.

  LOOP AT it_zycit081_ncm.

    it_zycit081_ncm-tpli = v_tpli.

    MODIFY it_zycit081_ncm INDEX sy-tabix.

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

  ENDLOOP.

  SELECT * FROM /pws/zycit081 INTO TABLE lt_zycit081

     WHERE nrseqli = /pws/zycie078c-nrseqli

       AND tpli    = v_tpli.

  LOOP AT lt_zycit081.

    READ TABLE it_zycit081_ncm WITH KEY nrseqli  = lt_zycit081-nrseqli

                                       tpli      = lt_zycit081-tpli

                                       nranuente = lt_zycit081-nranuente

                                       orgao     = lt_zycit081-orgao.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING lt_zycit081 TO /pws/zycit081.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  DELETE FROM /pws/zycit081 WHERE nrseqli = /pws/zycie078c-nrseqli

                         AND tpli    = v_tpli.

  MODIFY /pws/zycit081 FROM TABLE it_zycit081_ncm.

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

  LOOP AT it_zycit081_ncm.

    MOVE-CORRESPONDING it_zycit081_ncm TO /pws/zycit081.

    READ TABLE lt_zycit081 WITH KEY nrseqli  = it_zycit081_ncm-nrseqli

                                  tpli      = it_zycit081_ncm-tpli

                                  nranuente = it_zycit081_ncm-nranuente

                                  orgao     = it_zycit081_ncm-orgao.

    IF sy-subrc EQ 0.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ELSE.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  CLEAR it_zycit081_aux.

  REFRESH it_zycit081_aux.

  COMMIT WORK.

ENDFORM.

...

 

...

FORM salva_anu2ncm.

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

  DATA: lt_zycit109 TYPE /pws/zycit109 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  DATA v_tpli LIKE /pws/zycit109-tpli.

  v_tpli = 'N'.

  CLEAR: it_anu2_aux.

  REFRESH: it_anu2_aux.

  LOOP AT it_anu2ncm.

    it_anu2ncm-tpli = v_tpli.

    MODIFY it_anu2ncm INDEX sy-tabix.

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

  ENDLOOP.

  SELECT * FROM /pws/zycit109 INTO TABLE lt_zycit109

    WHERE nrseqli = /pws/zycie078c-nrseqli

      AND tpli    = v_tpli.

  LOOP AT lt_zycit109.

    READ TABLE it_anu2ncm WITH KEY nrseqli = lt_zycit109-nrseqli

                                   tpli    = lt_zycit109-tpli

                                   codncm  = lt_zycit109-codncm.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING lt_zycit109 TO /pws/zycit109.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  DELETE FROM /pws/zycit109 WHERE nrseqli = /pws/zycie078c-nrseqli

                         AND tpli    = v_tpli.

  MODIFY /pws/zycit109 FROM TABLE it_anu2ncm.

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

  LOOP AT it_anu2ncm.

    MOVE-CORRESPONDING it_anu2ncm TO /pws/zycit109.

    READ TABLE lt_zycit109 WITH KEY nrseqli = it_anu2ncm-nrseqli

                                   tpli    = it_anu2ncm-tpli

                                   codncm  = it_anu2ncm-codncm.

    IF sy-subrc EQ 0.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ELSE.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078c-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  CLEAR it_anu2_aux.

  REFRESH it_anu2_aux.

  COMMIT WORK.

ENDFORM.

...

 

...

FORM exclui_li.

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

  DATA: lt_zycit092 TYPE /pws/zycit092 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  FREE it_zycit079_del[].

  LOOP AT it_zycit079 WHERE mark = 'X'.

    v_tabix = sy-tabix.

    IF NOT /pws/zycie078-numpexpam IS INITIAL.

      READ TABLE itab_itens_aux WITH KEY ebeln = it_zycit079-ebeln

                                         ebelp = it_zycit079-ebelp.

      IF sy-subrc EQ 0.

        READ TABLE it_zycit203 WITH KEY codcomp = itab_itens_aux-matnr.

        IF sy-subrc = 0.

          it_zycit203-qtd_final = it_zycit203-qtd_final +

...

 

...

      ENDIF.

    ENDIF.

    MOVE it_zycit079 TO it_zycit079_del.

    APPEND it_zycit079_del.

    CLEAR it_zycit079-numli.

    it_zycit079-transm_it = 'N'.

    UPDATE /pws/zycit079 SET transm_it = 'N'

                        WHERE nrseqli = it_zycit079-nrseqli

                        AND   ebeln   = it_zycit079-ebeln

                        AND   ebelp   = it_zycit079-ebelp.

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

    MOVE-CORRESPONDING it_zycit079 TO /pws/zycit079.

    PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

          ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

    MODIFY it_zycit079 INDEX v_tabix.

  ENDLOOP.

  IF sy-subrc NE 0.

    MESSAGE i085.

  ENDIF.

  IF NOT /pws/zycie078-flagpli IS INITIAL.

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

    IF NOT it_zycit079_del[] IS INITIAL.

      CLEAR: lt_zycit092, lt_zycit092[].

      SELECT * FROM /pws/zycit092 INTO TABLE lt_zycit092

          FOR ALL ENTRIES IN it_zycit079_del

          WHERE ebeln EQ it_zycit079_del-ebeln

            AND ebelp EQ it_zycit079_del-ebelp.

    ENDIF.

* << Fim da inclusão

    LOOP AT it_zycit079_del.

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

      MOVE-CORRESPONDING it_zycit079_del TO /pws/zycit079.

      PERFORM carrega_log USING '/PWS/ZYCIT079' 'D'

            ' '  '/PWS/SAPMZYCI020' it_zycit079_del-numli.

* << Fim da inclusão

      DELETE FROM /pws/zycit079 WHERE nrseqli = it_zycit079_del-numli

                             AND tpli    = 'N'

                             AND ebeln   = it_zycit079_del-ebeln

                             AND ebelp   = it_zycit079_del-ebelp.

      SELECT SINGLE * FROM /pws/zycit078

                 WHERE  nrseqli = it_zycit079_del-numli.

      UPDATE /pws/zycit078 SET status = 'CAN'

                    WHERE  nrseqli = it_zycit079_del-numli.

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

      /pws/zycit078-status = 'CAN'.

      PERFORM carrega_log USING '/PWS/ZYCIT078' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycit078-nrseqli.

* << Fim da inclusão

      it_zycit079_del-slqtde = it_zycit079_del-slqtde

                         + it_zycit079_del-qtd_iten.

      UPDATE /pws/zycit092 SET slqtde = it_zycit079_del-slqtde

                      WHERE ebeln EQ it_zycit079_del-ebeln

                        AND ebelp EQ it_zycit079_del-ebelp.

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

      READ TABLE lt_zycit092 WITH KEY ebeln = it_zycit079_del-ebeln

                                      ebelp = it_zycit079_del-ebelp.

      IF sy-subrc EQ 0.

        lt_zycit092-slqtde = it_zycit079_del-slqtde.

        MOVE-CORRESPONDING lt_zycit092 TO /pws/zycit092.

        PERFORM carrega_log USING '/PWS/ZYCIT092' 'U'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

      ENDIF.

      CLEAR: /pws/zycit136.

      SELECT SINGLE * FROM /pws/zycit136 INTO /pws/zycit136

             WHERE nrseq  = /pws/zycie078-nrseq

               AND tp_doc = 'LI'.

      IF sy-subrc EQ 0.

        PERFORM carrega_log USING '/PWS/ZYCIT136' 'D'

              ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

      ENDIF.

* << Fim da inclusão

      DELETE FROM /pws/zycit136

             WHERE nrseq  = /pws/zycie078-nrseq

             AND   tp_doc = 'LI'.

    ENDLOOP.

  ENDIF.

ENDFORM.

...

 

...

FORM salva_anui.

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

  DATA: lt_zycit081 TYPE /pws/zycit081 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  DATA v_tpli LIKE /pws/zycit081-tpli.

  IF v_tcode EQ '/PWS/ZYCI020_C' OR

     v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_I' OR

     v_tcode EQ '/PWS/ZYCI020_G'.

    v_tpli = 'N'.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_P' OR

         v_tcode EQ '/PWS/ZYCI020_N'.

    v_tpli = 'S'.

  ENDIF.

  LOOP AT it_zycit081.

    it_zycit081-tpli = v_tpli.

    MODIFY it_zycit081 INDEX sy-tabix.

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

  ENDLOOP.

  SELECT * FROM /pws/zycit081 INTO TABLE lt_zycit081

    WHERE nrseqli = /pws/zycie078-nrseqli

      AND tpli    = v_tpli.

  LOOP AT lt_zycit081.

    READ TABLE it_zycit081 WITH KEY nrseqli  = lt_zycit081-nrseqli

                                   tpli      = lt_zycit081-tpli

                                   nranuente = lt_zycit081-nranuente

                                   orgao     = lt_zycit081-orgao.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING lt_zycit081 TO /pws/zycit081.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  DELETE FROM /pws/zycit081 WHERE nrseqli = /pws/zycie078-nrseqli

                         AND tpli    = v_tpli.

  MODIFY /pws/zycit081 FROM TABLE it_zycit081.

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

  LOOP AT it_zycit081.

    MOVE-CORRESPONDING it_zycit081 TO /pws/zycit081.

    READ TABLE lt_zycit081 WITH KEY nrseqli  = it_zycit081-nrseqli

                                  tpli      = it_zycit081-tpli

                                  nranuente = it_zycit081-nranuente

                                  orgao     = it_zycit081-orgao.

    IF sy-subrc EQ 0.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ELSE.

      PERFORM carrega_log USING '/PWS/ZYCIT081' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  CLEAR it_zycit081_aux.

  REFRESH it_zycit081_aux.

  LOOP AT it_zycit081.

    MOVE-CORRESPONDING it_zycit081 TO it_zycit081_aux.

    APPEND it_zycit081_aux.

  ENDLOOP.

  COMMIT WORK.

ENDFORM.

...

 

...

FORM salva_anu2i.

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

  DATA: lt_zycit109 TYPE /pws/zycit109 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  DATA v_tpli LIKE /pws/zycit109-tpli.

  IF v_tcode EQ '/PWS/ZYCI020_C' OR

     v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_I' OR

     v_tcode EQ '/PWS/ZYCI020_G'.

    v_tpli = 'N'.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_P' OR

         v_tcode EQ '/PWS/ZYCI020_N'.

    v_tpli = 'S'.

  ENDIF.

  CLEAR: it_anu2_aux.

  REFRESH: it_anu2_aux.

  LOOP AT it_anu2r.

    it_anu2r-tpli = v_tpli.

    MODIFY it_anu2r INDEX sy-tabix.

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

  ENDLOOP.

  SELECT * FROM /pws/zycit109 INTO TABLE lt_zycit109

    WHERE nrseqli = /pws/zycie078-nrseqli

      AND tpli    = v_tpli.

  LOOP AT lt_zycit109.

    READ TABLE it_anu2r WITH KEY nrseqli = lt_zycit109-nrseqli

                                 tpli    = lt_zycit109-tpli

                                 codncm  = lt_zycit109-codncm.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING lt_zycit109 TO /pws/zycit109.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'D'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  DELETE FROM /pws/zycit109 WHERE nrseqli = /pws/zycie078-nrseqli

                         AND tpli    = v_tpli.

  MODIFY /pws/zycit109 FROM TABLE it_anu2r.

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

  LOOP AT it_anu2r.

    MOVE-CORRESPONDING it_anu2r TO /pws/zycit109.

    READ TABLE lt_zycit109 WITH KEY nrseqli = it_anu2r-nrseqli

                                    tpli    = it_anu2r-tpli

                                    codncm  = it_anu2r-codncm.

    IF sy-subrc EQ 0.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'U'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ELSE.

      PERFORM carrega_log USING '/PWS/ZYCIT109' 'I'

            ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  CLEAR it_anu2_aux.

  REFRESH it_anu2_aux.

  LOOP AT it_anu2r.

    MOVE-CORRESPONDING it_anu2r TO it_anu2_aux.

    APPEND it_anu2_aux.

  ENDLOOP.

  COMMIT WORK.

ENDFORM.

...

 

...

         IMPORTING

              answer                = v_resp_save

         EXCEPTIONS

              text_not_found        = 1

              OTHERS                = 2.

    IF v_resp_save EQ '1'.

      LOOP AT it_zycit079.

        it_zycit079-transm_it = 'N'.

        UPDATE /pws/zycit079 SET transm_it = 'N'

        WHERE nrseqli = it_zycit079-nrseqli.

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

        MOVE-CORRESPONDING it_zycit079 TO /pws/zycit079.

        PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

              ' '  '/PWS/SAPMZYCI020' it_zycit079-nrseqli.

* << Fim da inclusão

        MODIFY it_zycit079.

      ENDLOOP.

      COMMIT WORK.

    ELSE.

      v_transm = 'N'.

    ENDIF.

  ELSEIF v_cont GT 1 .

    CALL FUNCTION 'POPUP_TO_CONFIRM'

         EXPORTING

              text_question         = text-379

...

 

...

         IMPORTING

              answer                = v_resp_save

         EXCEPTIONS

              text_not_found        = 1

              OTHERS                = 2.

    IF v_resp_save EQ '1'.

      LOOP AT it_zycit079.

        it_zycit079-transm_it = 'N'.

        UPDATE /pws/zycit079 SET transm_it = 'N'

        WHERE nrseqli = it_zycit079-nrseqli.

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

        MOVE-CORRESPONDING it_zycit079 TO /pws/zycit079.

        PERFORM carrega_log USING '/PWS/ZYCIT079' 'U'

              ' '  '/PWS/SAPMZYCI020' it_zycit079-nrseqli.

* << Fim da inclusão

        MODIFY it_zycit079.

      ENDLOOP.

      COMMIT WORK.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

FORM deleta_transm.

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

  CLEAR: /pws/zycit136.

  SELECT SINGLE * FROM /pws/zycit136 INTO /pws/zycit136

         WHERE nrseq = /pws/zycie078-nrseqli

           AND tp_doc = 'LI'.

  IF sy-subrc EQ 0.

    PERFORM carrega_log USING '/PWS/ZYCIT136' 'D'

          ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

  ENDIF.

* << Fim da inclusão

  DELETE FROM /pws/zycit136 WHERE nrseq  EQ /pws/zycie078-nrseqli

                              AND tp_doc EQ 'LI'.

ENDFORM.

...

 

...

        ENDIF.

      ENDLOOP.

    ENDIF.

    v_slqtde = itab_ekpo-menge - v_qtdemb.

    it_zycit092-slqtde = v_slqtde.

    it_zycit092-menge  = itab_ekpo-menge.

    UPDATE /pws/zycit092 SET slqtde  = it_zycit092-slqtde

                             menge   = itab_ekpo-menge

                       WHERE ebeln   = it_zycit092-ebeln

                         AND ebelp   = it_zycit092-ebelp .

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

    MOVE-CORRESPONDING it_zycit092 TO /pws/zycit092.

    PERFORM carrega_log USING '/PWS/ZYCIT092' 'U'

          ' '  '/PWS/SAPMZYCI020' /pws/zycie078-nrseqli.

* << Fim da inclusão

    MODIFY it_zycit092.

  ENDLOOP.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020X01

 

TABLES:

* >> Início da inclusão:

        /pws/zycit203,

        /pws/zycit080,

        /pws/zycit136,

        /pws/zycit104,

* << Fim da inclusão

        /pws/zycit001,

        /pws/zycit078,

        /pws/zycie078,

        /pws/zycie078c,

        /pws/zycit079,

        /pws/zycie079,

        /pws/zycie079a,

        /pws/zycie080,

        /pws/zycie080a,

        /pws/zycie080b,

...

 

 

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

Modificações efetuadas em REPS /PWS/SAPMZYCI020

 

INCLUDE /pws/mzyci020top.

INCLUDE /pws/mzyci020o01.

INCLUDE /pws/mzyci020f01.

INCLUDE /pws/mzyci020i01.

INCLUDE /PWS/MZYCI020F02.

* >> Início da inclusão:

INCLUDE /pws/zygllog.

* << Fim da inclusão