CE PLUS - Nota 005079

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Registro de Exportação (RE)

Data/Hora da Publicação: 25/10/2007 00:00:00

Data/Hora Última Alteração: 22/02/2011 10:05:00

Descrição da Nota: ALTERAÇÃO DA RE PARA ATENDER CENÁRIOS DE EMBARQUES SEM ORDEM DE VENDA

Sintoma

Necessária adaptação do programa da RE para atender cenários onde no Embarque a Ordem de Venda não é

preenchida, por exemplo, Embarque por Fornecimento.

 

 

Solução

Adaptação das rotinas e seleções para atender a cenários de Embarques que não têm a Ordem de Venda

preenchida.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

VINCULAÇÃO DE RC NO RE

ENQUADRAMENTO DO RE COM PEDIDO DE COMPRA

PREENCHIMENTO DE ENQUADRAMENTO PARA EMBARQUES POR PEDIDO DE COMPRA

PREENCHIMENTO DE CAMPO 24 QUANDO RE COM DRAWBACK

Informações Complementares

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

Nota Número 05079 Data: 25/10/2007 Hora: 15:17:14

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

 

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

Nota Número              : 05079

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00018

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

Referência às notas relacionadas:

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

 

03090  - 00001 - 6.0    - 00026  - PREENCHIMENTO DE CAMPO 24 QUANDO RE COM DRAWBACK

03596  - 00002 - 7.0    - 00001  - VINCULAÇÃO DE RC NO RE

04656  - 00003 - 7.0    - 00002  - PREENCHIMENTO DE ENQUADRAMENTO PARA EMBARQUES POR PEDIDO DE COMPR

04927  - 00004 - 7.0    - 00003  - ENQUADRAMENTO DO RE COM PEDIDO DE COMPRA

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

ALTERAÇÃO DA RE PARA ATENDER CENÁRIOS DE EMBARQUES SEM ORDEM DE VENDA

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

Palavras Chave:

RE, ORDEM, EMBARQUE, FORNECIMENTO, ENQUADRAMENTO, PREENCHIMENTO

 

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

Objetos da nota:

REPS /PWS/LZYCEGF6F01

REPS /PWS/LZYCEGF6TOP

REPS /PWS/MZYCE041F01

REPS /PWS/MZYCE041TOP

REPS /PWS/MZYCE105F01

TABD /PWS/ZYCET321

 

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

Modificações efetuadas em REPS /PWS/LZYCEGF6F01

 

...

       FOR ALL ENTRIES IN itab_zycit282a

         WHERE docnum = itab_zycit282a-docnumimp.

  ENDIF.

  IF NOT itab_zycit244[] IS INITIAL.

    SELECT lifnr stcd1 regio FROM lfa1 INTO TABLE itab_lfa1

      FOR ALL ENTRIES IN itab_zycit244

      WHERE lifnr = itab_zycit244-lifnr.

  ENDIF.

ENDFORM.

FORM busca_enq_agru.

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

  DATA: itab_zycet130 LIKE /pws/zycet130 OCCURS 0 WITH HEADER LINE,

        BEGIN OF itab_tipo OCCURS 10,

         tipo LIKE /pws/zycet118-tipo,

        END OF itab_tipo.

* << Fim da exclusão

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

  DATA: itab_zycet130 LIKE /pws/zycet130 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

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

  DATA: v_branch LIKE t001w-j_1bbranch.

* << Fim da exclusão

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

  DATA: itab_enquadramento   TYPE t_enquadramento.

  DATA: itab_enquad_especial TYPE t_enquad_especial.

* << Fim da inclusão

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

  DATA: itab_enquadramento TYPE t_enquadramento.

  SELECT SINGLE j_1bbranch

  FROM t001w

  INTO v_branch

   WHERE werks = itab_zycit244-werks.

* << Fim da exclusão

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

  DATA: itab_enquad_anexo     TYPE t_enquadramento.

  DATA: itab_enquad_esp_anexo TYPE t_enquad_especial.

  DATA: wa_enquad_especial LIKE LINE OF itab_enquad_especial.

  it_zycet078[] = itab_zycet078a[].

* << Fim da inclusão

  SORT itab_zycet118a BY seqagrupado tipo.

  DELETE ADJACENT DUPLICATES FROM itab_zycet118a COMPARING

                                              seqagrupado tipo.

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

  LOOP AT itab_zycet118a.

    MOVE-CORRESPONDING itab_zycet118a TO itab_tipo.

    COLLECT itab_tipo.

    CLEAR   itab_tipo.

  ENDLOOP.

  SORT itab_tipo BY tipo DESCENDING.

  SELECT * FROM /pws/zycet130 INTO TABLE itab_zycet130

           FOR ALL ENTRIES IN itab_zycit244

           WHERE tipo       EQ itab_zycit244-tipo

             AND modalidade EQ itab_zycit244-modalidade.

  CLEAR: v_codenq,

         v_tipo.

  LOOP AT itab_tipo.

    IF v_tipo IS INITIAL.

      v_tipo = itab_tipo-tipo.

    ELSEIF ( v_tipo EQ text-071 ) AND

           ( itab_tipo-tipo EQ text-015 ).

      CONTINUE.

    ENDIF.

* << Fim da exclusão

    LOOP AT itab_zycet118a.

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

      READ TABLE itab_zycit282a

            WITH KEY vbeln_va = itab_zycet118a-vbeln_va

                     aupos    = itab_zycet118a-aupos

                     vbeln_vl = itab_zycet118a-vbeln_vl

                     posnl    = itab_zycet118a-posnl.

      IF sy-subrc EQ 0.

        READ TABLE itab_zycet130

              WITH KEY tipo       = itab_zycit244-tipo

                       modalidade = itab_zycit244-modalidade.

        IF sy-subrc EQ 0.

          v_codenq = itab_zycet130-codenq.

        ENDIF.

      ELSE.

        IF NOT wa_zycet116-codenq1 IS INITIAL.

          v_codenq = wa_zycet116-codenq1.

        ELSE.

          SELECT SINGLE *

          FROM /pws/zycet145

          INTO  wa_zycet145

           WHERE bukrs  EQ itab_zycit244-bukrs

             AND branch EQ v_branch.

          IF sy-subrc EQ 0.

            v_codenq = wa_zycet145-codenq.

          ENDIF.

        ENDIF.

      ENDIF.

      READ TABLE itab_zycet078a WITH KEY codnrseq =

                                itab_zycet118a-seqagrupado.

      IF sy-subrc EQ 0.

        v_index = sy-tabix.

        CASE ' '.

          WHEN itab_zycet078a-codenq1.

            itab_zycet078a-codenq1 = v_codenq.

            MODIFY itab_zycet078a INDEX v_index.

            CASE ' '.

              WHEN wa_zycet116-codenq1.

                wa_zycet116-codenq1 = v_codenq.

              WHEN wa_zycet116-codenq2.

                IF v_codenq NE wa_zycet116-codenq1.

                  wa_zycet116-codenq2 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq3.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2.

                  wa_zycet116-codenq3 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq4.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2 AND

                   v_codenq NE wa_zycet116-codenq3.

                  wa_zycet116-codenq4 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq5.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2 AND

                   v_codenq NE wa_zycet116-codenq3 AND

                   v_codenq NE wa_zycet116-codenq4.

                  wa_zycet116-codenq5 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq6.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2 AND

                   v_codenq NE wa_zycet116-codenq3 AND

                   v_codenq NE wa_zycet116-codenq4 AND

                   v_codenq NE wa_zycet116-codenq5.

                  wa_zycet116-codenq6 = v_codenq.

                ENDIF.

            ENDCASE.

          WHEN itab_zycet078a-codenq2.

            itab_zycet078a-codenq2 = v_codenq.

            MODIFY itab_zycet078a INDEX v_index.

          WHEN itab_zycet078a-codenq3.

            itab_zycet078a-codenq3 = v_codenq.

            MODIFY itab_zycet078a INDEX v_index.

          WHEN itab_zycet078a-codenq4.

            itab_zycet078a-codenq4 = v_codenq.

            MODIFY itab_zycet078a INDEX v_index.

          WHEN itab_zycet078a-codenq5.

            itab_zycet078a-codenq5 = v_codenq.

            MODIFY itab_zycet078a INDEX v_index.

          WHEN itab_zycet078a-codenq6.

            itab_zycet078a-codenq6 = v_codenq.

            MODIFY itab_zycet078a INDEX v_index.

        ENDCASE.

      ELSE.

        itab_zycet078a-nrseqre  = itab_zycet118a-nrseqre.

        itab_zycet078a-codnrseq = itab_zycet118a-seqagrupado.

        itab_zycet078a-codenq1  = v_codenq.

        CASE ' '.

          WHEN wa_zycet116-codenq1.

            wa_zycet116-codenq1 = v_codenq.

          WHEN wa_zycet116-codenq2.

            IF v_codenq NE wa_zycet116-codenq1.

              wa_zycet116-codenq2 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq3.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2.

              wa_zycet116-codenq3 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq4.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2 AND

               v_codenq NE wa_zycet116-codenq3.

              wa_zycet116-codenq4 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq5.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2 AND

               v_codenq NE wa_zycet116-codenq3 AND

               v_codenq NE wa_zycet116-codenq4.

              wa_zycet116-codenq5 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq6.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2 AND

               v_codenq NE wa_zycet116-codenq3 AND

               v_codenq NE wa_zycet116-codenq4 AND

               v_codenq NE wa_zycet116-codenq5.

              wa_zycet116-codenq6 = v_codenq.

            ENDIF.

        ENDCASE.

        APPEND itab_zycet078a.

      ENDIF.

    ENDLOOP.

  ENDLOOP.

  LOOP AT itab_zycet118a.

* << Fim da exclusão

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

    REFRESH:  itab_enquad_anexo,

              itab_enquad_esp_anexo.

* << Fim da inclusão

    READ TABLE itab_zycit282a

        WITH KEY vbeln_va = itab_zycet118a-vbeln_va

                 aupos    = itab_zycet118a-aupos

                 vbeln_vl = itab_zycet118a-vbeln_vl

                 posnl    = itab_zycet118a-posnl

                 tipo     = itab_zycet118a-tipo.

    IF sy-subrc = 0 AND NOT itab_zycet118a-nrato IS INITIAL.

      PERFORM busca_enquadramento_db

          USING

            itab_zycet002a[]

            itab_zycit282a

            itab_zycit244[]

          CHANGING

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

            itab_enquadramento[].

* << Fim da exclusão

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

            itab_enquad_anexo[]

            itab_enquad_esp_anexo[].

      APPEND LINES OF itab_enquad_anexo TO itab_enquadramento.

      APPEND LINES OF itab_enquad_esp_anexo TO itab_enquad_especial.

* << Fim da inclusão

    ELSE.

      PERFORM busca_enquadramento

          USING

            itab_zycet002a[]

            itab_zycet118a

          CHANGING

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

            itab_enquadramento[].

* << Fim da exclusão

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

            itab_enquad_anexo[]

            itab_enquad_esp_anexo[].

      APPEND LINES OF itab_enquad_anexo TO itab_enquadramento.

      APPEND LINES OF itab_enquad_esp_anexo TO itab_enquad_especial.

* << Fim da inclusão

    ENDIF.

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

    PERFORM atualiza_enquad_anexo

        USING

          itab_zycet118a-nrseqre

          itab_zycet118a-seqagrupado

          itab_enquad_anexo[]

          itab_enquad_esp_anexo[]

        CHANGING

          it_zycet078[].

* << Fim da inclusão

  ENDLOOP.

  SORT itab_enquadramento.

  DELETE ADJACENT DUPLICATES FROM itab_enquadramento.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq1 INDEX 1.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq2 INDEX 2.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq3 INDEX 3.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq4 INDEX 4.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq5 INDEX 5.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq6 INDEX 6.

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

  IF NOT itab_enquad_especial[] IS INITIAL.

    SORT itab_enquad_especial.

    DELETE ADJACENT DUPLICATES FROM itab_enquad_especial.

    LOOP AT itab_enquad_especial INTO wa_enquad_especial.

      CHECK wa_enquad_especial NE wa_zycet116-codenq1 AND

            wa_enquad_especial NE wa_zycet116-codenq2 AND

            wa_enquad_especial NE wa_zycet116-codenq3 AND

            wa_enquad_especial NE wa_zycet116-codenq4 AND

            wa_enquad_especial NE wa_zycet116-codenq5 AND

            wa_enquad_especial NE wa_zycet116-codenq6.

      IF wa_zycet116-codenq1 IS INITIAL.

        wa_zycet116-codenq1 = wa_enquad_especial.

      ELSEIF wa_zycet116-codenq2 IS INITIAL.

        wa_zycet116-codenq2 = wa_enquad_especial.

      ELSEIF wa_zycet116-codenq3 IS INITIAL.

        wa_zycet116-codenq3 = wa_enquad_especial.

      ELSEIF wa_zycet116-codenq4 IS INITIAL.

        wa_zycet116-codenq4 = wa_enquad_especial.

      ELSEIF wa_zycet116-codenq5 IS INITIAL.

        wa_zycet116-codenq5 = wa_enquad_especial.

      ELSEIF wa_zycet116-codenq6 IS INITIAL.

        wa_zycet116-codenq6 = wa_enquad_especial.

      ENDIF.

    ENDLOOP.

  ENDIF.

  REFRESH itab_zycet078a.

  itab_zycet078a[] = it_zycet078.

* << Fim da inclusão

  EXPORT itab_zycet078a[] TO MEMORY ID 'T078'.

  EXPORT wa_zycet116      TO MEMORY ID 'T116'.

  EXPORT itab_zycet119a[] TO MEMORY ID 'T119'.

  EXPORT itab_zycet066a[] TO MEMORY ID 'T066'.

ENDFORM.

FORM busca_enquadra.

  LOOP AT itab_zycet118a.

    CASE itab_zycet118a-tipo.

      WHEN text-071.

        v_codenq  = text-016.

...

 

...

      MODIFY it_zycet119 TRANSPORTING fkimg vrkme.

    ENDIF.

  ENDLOOP.

ENDFORM.

FORM busca_enquadramento_db

    USING

      p_zycet002   LIKE itab_zycet002a[]

      p_zycit282   LIKE itab_zycit282a

      p_zycit244   LIKE itab_zycit244[]

    CHANGING

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

      p_enquadramento TYPE t_enquadramento.

* << Fim da exclusão

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

      p_enquadramento   TYPE t_enquadramento

      p_enquad_especial TYPE t_enquad_especial.

* << Fim da inclusão

  DATA: v_tipo_emb  TYPE /pws/zycet001-tipo_emb,

        wa_zycet002 LIKE LINE OF p_zycet002.

  READ TABLE p_zycet002 INTO wa_zycet002

                        WITH KEY vbeln_va = p_zycit282-vbeln_va

                                 aupos    = p_zycit282-aupos

                        TRANSPORTING nrseq auart.

  CHECK sy-subrc = 0.

  SELECT SINGLE tipo_emb

      INTO v_tipo_emb

      FROM /pws/zycet001

...

 

...

  CHECK sy-subrc = 0.

  SELECT codenq

      APPENDING TABLE p_enquadramento

      FROM /pws/zycet321

      FOR ALL ENTRIES IN p_zycit244

      WHERE tipodoc = wa_zycet002-auart

        AND tipoemb = v_tipo_emb

        AND tipo_db = p_zycit244-tipo

        AND mod_db  = p_zycit244-modalidade.

  SELECT codsgp

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

      APPENDING TABLE p_enquadramento

* << Fim da exclusão

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

      APPENDING TABLE p_enquad_especial

* << Fim da inclusão

      FROM /pws/zycet321

      FOR ALL ENTRIES IN p_zycit244

      WHERE tipodoc = wa_zycet002-auart

        AND tipoemb = v_tipo_emb

        AND tipo_db = p_zycit244-tipo

        AND mod_db  = p_zycit244-modalidade

        AND codsgp  <> space.

ENDFORM.

FORM busca_enquadramento

    USING

      p_zycet002   LIKE itab_zycet002a[]

      p_zycit118   LIKE itab_zycet118a

    CHANGING

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

      p_enquadramento TYPE t_enquadramento.

* << Fim da exclusão

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

      p_enquadramento   TYPE t_enquadramento

      p_enquad_especial TYPE t_enquad_especial.

* << Fim da inclusão

  DATA: v_tipo_emb  TYPE /pws/zycet001-tipo_emb,

        wa_zycet002 LIKE LINE OF p_zycet002.

  READ TABLE p_zycet002 INTO wa_zycet002

                        WITH KEY vbeln_va = p_zycit118-vbeln_va

                                 aupos    = p_zycit118-aupos

                        TRANSPORTING nrseq auart.

  CHECK sy-subrc = 0.

  SELECT SINGLE tipo_emb

      INTO v_tipo_emb

      FROM /pws/zycet001

      WHERE nrseq = wa_zycet002-nrseq.

  CHECK sy-subrc = 0.

  SELECT codenq

      APPENDING TABLE p_enquadramento

      FROM /pws/zycet321

      WHERE tipodoc = wa_zycet002-auart

        AND tipoemb = v_tipo_emb

        AND tipo_db = space

        AND mod_db  = space.

  SELECT codsgp

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

      APPENDING TABLE p_enquadramento

* << Fim da exclusão

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

      APPENDING TABLE p_enquad_especial

* << Fim da inclusão

      FROM /pws/zycet321

      WHERE tipodoc = wa_zycet002-auart

        AND tipoemb = v_tipo_emb

        AND tipo_db = space

        AND mod_db  = space

        AND codsgp  <> space.

ENDFORM.

FORM preenche_092_000016 TABLES it_zycet092 STRUCTURE /pws/zycet092.

  DATA: v_ncm        LIKE /pws/zycet118-ncm,

        v_vrkme      LIKE /pws/zycet118-vrkme,

...

 

...

       INTO TABLE itab_j1bnfdoc

       FOR ALL ENTRIES IN itab_zycit282a

         WHERE docnum = itab_zycit282a-docnumimp.

  ENDIF.

  IF NOT itab_zycit244[] IS INITIAL.

    SELECT lifnr stcd1 regio FROM lfa1 INTO TABLE itab_lfa1

      FOR ALL ENTRIES IN itab_zycit244

      WHERE lifnr = itab_zycit244-lifnr.

  ENDIF.

ENDFORM.

* >> Início da inclusão:

FORM atualiza_enquad_anexo

        USING

          p_nrseqre         TYPE /pws/zycet118-nrseqre

          p_seqagrupado     TYPE /pws/zycet118-seqagrupado

          p_enquadramento   TYPE t_enquadramento

          p_enquad_especial TYPE t_enquad_especial

        CHANGING

          p_zycet078       LIKE  it_zycet078[].

  DATA: wa_enquad_especial LIKE LINE OF p_enquad_especial,

        wa_enquadramento   LIKE LINE OF p_enquadramento.

  FIELD-SYMBOLS: <fs_zycet078> LIKE LINE OF p_zycet078.

  DATA: wa_zycet078 LIKE LINE OF p_zycet078.

  LOOP AT p_enquadramento INTO wa_enquadramento.

    READ TABLE p_zycet078[] ASSIGNING <fs_zycet078>

           WITH KEY codnrseq = p_seqagrupado.

    IF sy-subrc EQ 0.

      CHECK wa_enquadramento NE <fs_zycet078>-codenq1 AND

            wa_enquadramento NE <fs_zycet078>-codenq2 AND

            wa_enquadramento NE <fs_zycet078>-codenq3 AND

            wa_enquadramento NE <fs_zycet078>-codenq4 AND

            wa_enquadramento NE <fs_zycet078>-codenq5 AND

            wa_enquadramento NE <fs_zycet078>-codenq6.

      IF <fs_zycet078>-codenq1 IS INITIAL.

        <fs_zycet078>-codenq1 = wa_enquadramento.

      ELSEIF <fs_zycet078>-codenq2 IS INITIAL.

        <fs_zycet078>-codenq2 = wa_enquadramento.

      ELSEIF <fs_zycet078>-codenq3 IS INITIAL.

        <fs_zycet078>-codenq3 = wa_enquadramento.

      ELSEIF <fs_zycet078>-codenq4 IS INITIAL.

        <fs_zycet078>-codenq4 = wa_enquadramento.

      ELSEIF <fs_zycet078>-codenq5 IS INITIAL.

        <fs_zycet078>-codenq5 = wa_enquadramento.

      ELSEIF <fs_zycet078>-codenq6 IS INITIAL.

        <fs_zycet078>-codenq6 = wa_enquadramento.

      ENDIF.

    ELSE.

      CLEAR wa_zycet078.

      wa_zycet078-nrseqre  = itab_zycet118a-nrseqre.

      wa_zycet078-codnrseq = itab_zycet118a-seqagrupado.

      wa_zycet078-codenq1  = wa_enquadramento.

      APPEND wa_zycet078 TO p_zycet078[].

    ENDIF.

    UNASSIGN <fs_zycet078>.

  ENDLOOP.

  LOOP AT p_enquad_especial INTO wa_enquad_especial.

    READ TABLE p_zycet078[] ASSIGNING <fs_zycet078>

           WITH KEY codnrseq = p_seqagrupado.

    IF sy-subrc EQ 0.

      CHECK wa_enquad_especial NE <fs_zycet078>-codenq1 AND

            wa_enquad_especial NE <fs_zycet078>-codenq2 AND

            wa_enquad_especial NE <fs_zycet078>-codenq3 AND

            wa_enquad_especial NE <fs_zycet078>-codenq4 AND

            wa_enquad_especial NE <fs_zycet078>-codenq5 AND

            wa_enquad_especial NE <fs_zycet078>-codenq6.

      IF <fs_zycet078>-codenq1 IS INITIAL.

        <fs_zycet078>-codenq1 = wa_enquad_especial.

      ELSEIF <fs_zycet078>-codenq2 IS INITIAL.

        <fs_zycet078>-codenq2 = wa_enquad_especial.

      ELSEIF <fs_zycet078>-codenq3 IS INITIAL.

        <fs_zycet078>-codenq3 = wa_enquad_especial.

      ELSEIF <fs_zycet078>-codenq4 IS INITIAL.

        <fs_zycet078>-codenq4 = wa_enquad_especial.

      ELSEIF <fs_zycet078>-codenq5 IS INITIAL.

        <fs_zycet078>-codenq5 = wa_enquad_especial.

      ELSEIF <fs_zycet078>-codenq6 IS INITIAL.

        <fs_zycet078>-codenq6 = wa_enquad_especial.

      ENDIF.

    ELSE.

      CLEAR wa_zycet078.

      wa_zycet078-nrseqre  = itab_zycet118a-nrseqre.

      wa_zycet078-codnrseq = itab_zycet118a-seqagrupado.

      wa_zycet078-codenq1  = wa_enquad_especial.

      APPEND wa_zycet078 TO p_zycet078[].

    ENDIF.

    UNASSIGN <fs_zycet078>.

  ENDLOOP.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/LZYCEGF6TOP

 

...

        INCLUDE STRUCTURE /pws/zycet119.

DATA:     tipo    LIKE /pws/zycit244-tipo,

      END   OF itab_zycet119a.

DATA: itab_zycet002a LIKE /pws/zycet002 OCCURS  5 WITH HEADER LINE,

      itab_zycet066a LIKE /pws/zycet066 OCCURS  5 WITH HEADER LINE,

      itab_zycet078a LIKE /pws/zycet078 OCCURS  5 WITH HEADER LINE,

      itab_zycet092a LIKE /pws/zycet092 OCCURS  5 WITH HEADER LINE,

      itab_zycet116a LIKE /pws/zycet116 OCCURS  5 WITH HEADER LINE,

      itab_zycet118a LIKE /pws/zycet118 OCCURS  5 WITH HEADER LINE,

      itab_zycit244  LIKE /pws/zycit244 OCCURS  5 WITH HEADER LINE.

* >> Início da inclusão:

DATA: it_zycet078 TYPE TABLE OF /pws/zycet078.

* << Fim da inclusão

DATA: wa_zycet116 TYPE /pws/zycet116,

      wa_zycit282 LIKE itab_zycit282a.

DATA:   v_dsmerc     LIKE /pws/zycet118-dsmerc,

        v_index      LIKE sy-tabix,

        v_codenq     LIKE /pws/zycet078-codenq1,

        v_fkimgtot   LIKE /pws/zycet008-vlme,

        v_brgewtot   LIKE /pws/zycet002-brgew,

        v_fob        LIKE /pws/zycet008-vlme,

        v_fob2       LIKE /pws/zycet008-vlme,

        v_comissao   LIKE /pws/zycet008-vlme,

...

 

...

        itemacre_t   TYPE p DECIMALS 4,

        itemcomi_t   TYPE p DECIMALS 4,

        tpcalc       LIKE  /pws/zycee001-tpcalc,

        bukrs        LIKE  /pws/zycee001-bukrs,

        werks        LIKE  /pws/zycee001-werks,

        v_tipo       LIKE /pws/zycet130-tipo.

DATA: wa_zycet145 LIKE /pws/zycet145,

      wa_thead    LIKE thead.

DATA: wa_zycee313_prov LIKE /pws/zycee313,

      wa_zycee313_real LIKE /pws/zycee313.

* >> Início da exclusão:

TYPES: t_enquadramento TYPE TABLE OF /pws/zycet116-codenq1.

* << Fim da exclusão

* >> Início da inclusão:

TYPES: t_enquadramento TYPE TABLE OF /pws/zycet116-codenq1,

       t_enquad_especial TYPE TABLE OF /pws/zycet321-codsgp.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCE041F01

 

...

        TRANSPORTING marca.

    IF sy-subrc = 0.

      itab_zycet092-marca = itab_zycet118-marca.

      MODIFY itab_zycet092.

    ENDIF.

  ENDLOOP.

ENDFORM.

FORM dias_limite.

  DATA: v_start_date LIKE sy-datum,

        v_days LIKE t5a4a-dlydy.

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

  IF NOT wa_zycet269-dialim IS INITIAL.

* << Fim da exclusão

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

  IF NOT wa_zycet321-dialim IS INITIAL.

* << Fim da inclusão

    IF NOT itab_zycet001-dtprev IS INITIAL.

      v_start_date = itab_zycet001-dtprev.

    ELSE.

      v_start_date = sy-datum.

    ENDIF.

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

    MOVE wa_zycet269-dialim TO v_days.

* << Fim da exclusão

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

    MOVE wa_zycet321-dialim TO v_days.

* << Fim da inclusão

    CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'

         EXPORTING

              date      = v_start_date

              days      = v_days

              signum    = '+'

              months    = '0'

              years     = '0'

         IMPORTING

              calc_date = itab_zycet116-dtlimi.

  ENDIF.

...

 

...

    READ TABLE itab_centro INDEX 1.

    IF sy-subrc EQ 0.

      MOVE: itab_centro-werks      TO itab_zycet116-werks,

            itab_centro-j_1bbranch TO itab_zycet116-j_1bbranch.

    ENDIF.

  ENDIF.

ENDFORM.

FORM sel_enquad.

  CLEAR: itab_zycet001,itab_zycet020.

  READ TABLE itab_zycet001 INDEX 1.

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

  IF itab_zycet001-tipo_emb NE 'D'.

    READ TABLE itab_zycet020 WITH KEY auart = itab_zycet002-auart

                                      bukrs = itab_zycet002-bukrs.

  ENDIF.

* << Fim da exclusão

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

  IF itab_zycet001-tipo_emb NA 'DF'.

* << Fim da inclusão

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

  IF sy-subrc EQ 0.

    IF itab_zycet001-tipo_emb NE 'D'.

      SELECT SINGLE * FROM /pws/zycet269 INTO wa_zycet269

* << Fim da exclusão

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

    SELECT SINGLE * FROM /pws/zycet321 INTO wa_zycet321

* << Fim da inclusão

                      WHERE tipoemb EQ itab_zycet001-tipo_emb

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

                        AND tipodoc EQ itab_zycet020-tipodoc.

* << Fim da exclusão

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

                      AND tipodoc EQ itab_zycet002-auart

                      AND tipo_db EQ space

                      AND mod_db  EQ space.

* << Fim da inclusão

    ELSE.

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

      SELECT SINGLE * FROM /pws/zycet269 INTO wa_zycet269

        WHERE tipoemb = itab_zycet001-tipo_emb.

* << Fim da exclusão

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

    SELECT SINGLE * FROM /pws/zycet321 INTO wa_zycet321

      WHERE tipoemb EQ itab_zycet001-tipo_emb

        AND tipodoc EQ space

        AND tipo_db EQ space

        AND mod_db  EQ space.

* << Fim da inclusão

    ENDIF.

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

    IF sy-subrc EQ 0.

* << Fim da exclusão

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

  IF sy-subrc EQ 0 AND NOT itab_zycet116-tpre EQ '05'.

* << Fim da inclusão

      PERFORM determina_enquad.

      IF itab_zycet116-codenq1 IS INITIAL.

        READ TABLE itab_zycet285 INDEX 1.

        CHECK sy-subrc IS INITIAL.

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

        itab_zycet116-codenq1 = wa_zycet269-codsgp.

* << Fim da exclusão

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

      itab_zycet116-codenq1 = wa_zycet321-codsgp.

* << Fim da inclusão

      ELSEIF itab_zycet116-codenq2 IS INITIAL.

        READ TABLE itab_zycet285 INDEX 1.

        CHECK sy-subrc IS INITIAL.

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

        itab_zycet116-codenq2 = wa_zycet269-codsgp.

* << Fim da exclusão

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

      itab_zycet116-codenq2 = wa_zycet321-codsgp.

* << Fim da inclusão

      ELSEIF itab_zycet116-codenq3 IS INITIAL.

        READ TABLE itab_zycet285 INDEX 1.

        CHECK sy-subrc IS INITIAL.

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

        itab_zycet116-codenq3 = wa_zycet269-codsgp.

* << Fim da exclusão

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

      itab_zycet116-codenq3 = wa_zycet321-codsgp.

* << Fim da inclusão

      ELSEIF itab_zycet116-codenq4 IS INITIAL.

        READ TABLE itab_zycet285 INDEX 1.

        CHECK sy-subrc IS INITIAL.

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

        itab_zycet116-codenq4 = wa_zycet269-codsgp.

* << Fim da exclusão

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

      itab_zycet116-codenq4 = wa_zycet321-codsgp.

* << Fim da inclusão

      ELSEIF itab_zycet116-codenq5 IS INITIAL.

        READ TABLE itab_zycet285 INDEX 1.

        CHECK sy-subrc IS INITIAL.

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

        itab_zycet116-codenq5 = wa_zycet269-codsgp.

* << Fim da exclusão

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

      itab_zycet116-codenq5 = wa_zycet321-codsgp.

* << Fim da inclusão

      ELSEIF itab_zycet116-codenq6 IS INITIAL.

        READ TABLE itab_zycet285 INDEX 1.

        CHECK sy-subrc IS INITIAL.

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

        itab_zycet116-codenq6 = wa_zycet269-codsgp.

* << Fim da exclusão

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

      itab_zycet116-codenq6 = wa_zycet321-codsgp.

* << Fim da inclusão

      ENDIF.

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

  ELSE.

* << Fim da inclusão

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

    ELSE.

* << Fim da exclusão

      IF NOT itab_zycet116-tpre EQ '05'.

        MOVE: wa_zycet145-codenq   TO itab_zycet116-codenq1.

        APPEND itab_zycet116.

      ELSEIF itab_zycet116-codenq1 IS INITIAL.

        PERFORM determina_enquad.

        IF itab_zycet116-codenq1 IS INITIAL.

          MOVE: wa_zycet145-codenq   TO itab_zycet116-codenq1.

          MODIFY itab_zycet116 INDEX 1.

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

        ENDIF.

* << Fim da exclusão

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

* >> Início da inclusão:

FORM determina_enquad.

* << Fim da inclusão

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

FORM determina_enquad.

* << Fim da exclusão

  IF itab_zycet116-tpre EQ '05'.

    CALL FUNCTION '/PWS/ZYCE_ENQFAB_RE'

         EXPORTING

              agrupado          = itab_zycet116-agrupado

              tipo              = 'ENQ'

              itab_zycet092_aux = itab_zycet092_aux

         TABLES

              itab_zycet002     = itab_zycet002

              itab_zycet118     = itab_zycet118

              itab_zycet078     = itab_zycet078aux

...

 

...

    ENDLOOP.

  ELSE.

    APPEND itab_zycet116.

  ENDIF.

  READ TABLE itab_zycet116 INDEX 1.

  IF v_ato NE 'X' AND

  ( itab_zycet116-codagrup EQ '000007' OR

    itab_zycet116-codagrup EQ '000010' OR

    itab_zycet116-codagrup EQ '000013' OR

    itab_zycet116-codagrup EQ '000014' ).

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

    IF NOT itab_zycet116-codenq3 IS INITIAL

       AND itab_zycet116-codenq3 NE wa_zycet145-codenq

       AND itab_zycet116-codenq3 NE wa_zycet269-codenq

       AND itab_zycet116-codenq3 NE wa_zycet269-codsgp.

      CLEAR itab_zycet116-codenq3.

    ENDIF.

    IF NOT itab_zycet116-codenq4 IS INITIAL

       AND itab_zycet116-codenq4 NE wa_zycet145-codenq

       AND itab_zycet116-codenq4 NE wa_zycet269-codenq

       AND itab_zycet116-codenq4 NE wa_zycet269-codsgp.

      CLEAR itab_zycet116-codenq4.

    ENDIF.

    IF NOT itab_zycet116-codenq5 IS INITIAL

       AND itab_zycet116-codenq5 NE wa_zycet145-codenq

       AND itab_zycet116-codenq5 NE wa_zycet269-codenq

       AND itab_zycet116-codenq5 NE wa_zycet269-codsgp.

      CLEAR itab_zycet116-codenq5.

    ENDIF.

    IF NOT itab_zycet116-codenq6 IS INITIAL

       AND itab_zycet116-codenq6 NE wa_zycet145-codenq

       AND itab_zycet116-codenq6 NE wa_zycet269-codenq

       AND itab_zycet116-codenq6 NE wa_zycet269-codsgp.

      CLEAR itab_zycet116-codenq6.

    ENDIF.

* << Fim da exclusão

    IF itab_zycet116-codenq1 IS INITIAL.

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

      IF NOT wa_zycet321-codenq IS INITIAL.

        MOVE: wa_zycet321-codenq TO itab_zycet116-codenq1.

      ELSE.

* << Fim da inclusão

      MOVE: wa_zycet145-codenq TO itab_zycet116-codenq1.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

    LOOP AT itab_zycet078.

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

      IF itab_zycet078-codenq1 IS INITIAL.

* << Fim da inclusão

      MOVE: itab_zycet116-codenq1 TO itab_zycet078-codenq1,

            itab_zycet116-codenq2 TO itab_zycet078-codenq2.

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

      ENDIF.

* << Fim da inclusão

      MODIFY itab_zycet078.

    ENDLOOP.

  ELSEIF itab_zycet116-codagrup IS INITIAL.

    IF itab_zycet116-codenq1 IS INITIAL.

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

      IF NOT wa_zycet321-codenq IS INITIAL.

        MOVE: wa_zycet321-codenq TO itab_zycet116-codenq1.

      ELSE.

* << Fim da inclusão

      MOVE: wa_zycet145-codenq TO itab_zycet116-codenq1.

    ENDIF.

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

    ENDIF.

* << Fim da inclusão

    LOOP AT itab_zycet078.

      MOVE: itab_zycet116-codenq1 TO itab_zycet078-codenq1.

      MODIFY itab_zycet078.

    ENDLOOP.

  ELSEIF v_ato EQ ' ' AND itab_zycet116-codenq1 IS INITIAL.

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

    IF NOT wa_zycet321-codenq IS INITIAL.

      MOVE: wa_zycet321-codenq TO itab_zycet116-codenq1.

    ELSE.

* << Fim da inclusão

    MOVE: wa_zycet145-codenq TO itab_zycet116-codenq1.

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

    ENDIF.

* << Fim da inclusão

  ENDIF.

  PERFORM dias_limite.

  MODIFY itab_zycet116 INDEX 1.

ENDFORM.

FORM verifica_re.

  DATA: itab_zycet008 LIKE /pws/zycet008 OCCURS 0 WITH HEADER LINE.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE041TOP

 

...

DATA : END OF itab_zycet118_modificado.

DATA : BEGIN OF itab_zycet118_new OCCURS 10.

        INCLUDE STRUCTURE /pws/zycet118.

DATA : END OF itab_zycet118_new.

DATA : BEGIN OF itab_zycet118_del OCCURS 10.

        INCLUDE STRUCTURE /pws/zycet118.

DATA : END OF itab_zycet118_del.

DATA : BEGIN OF itab_118_disponivel OCCURS 10.

        INCLUDE STRUCTURE /pws/zycet118.

DATA : END OF itab_118_disponivel.

* >> Início da exclusão:

DATA: wa_zycet269 LIKE /pws/zycet269.

* << Fim da exclusão

* >> Início da inclusão:

DATA: wa_zycet321 TYPE /pws/zycet321.

* << Fim da inclusão

DATA: wa_zycet145 LIKE /pws/zycet145.

DATA: itab_zycet037 LIKE /pws/zycet037 OCCURS 0 WITH HEADER LINE.

DATA: itab_zycet081 LIKE /pws/zycet081 OCCURS 10 WITH HEADER LINE.

DATA: BEGIN OF itab_zycet066 OCCURS 10.

        INCLUDE STRUCTURE /pws/zycet066.

DATA: END OF itab_zycet066.

DATA: itab_zycet145 LIKE /pws/zycet145 OCCURS 10 WITH HEADER LINE.

DATA: itab_zycet285 LIKE /pws/zycet285 OCCURS 0 WITH HEADER LINE.

DATA : BEGIN OF itab_saldo_ato OCCURS 10,

        nrato     LIKE /pws/zycet118-nrato,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE105F01

 

...

  IF itab_t604f-/pws/codncmre EQ text-072.

    /pws/zycee118-psliq = /pws/zycee118-solsolv + /pws/zycee118-psagua.

  ELSE.

    CLEAR: /pws/zycee118-psliq, /pws/zycee118-solsolv,

           /pws/zycee118-psagua.

  ENDIF.

  MOVE:

          /pws/zycee118-codnrseq  TO itab_zycet118-codnrseq,

          /pws/zycee116-nrseqre   TO itab_zycet118-nrseqre,

          /pws/zycee118-vbeln_va  TO itab_zycet118-vbeln_va,

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

          /pws/zycee118-vbeln_vl  TO itab_zycet118-vbeln_vl,

* << Fim da inclusão

          /pws/zycee118-vbeln_vf  TO itab_zycet118-vbeln_vf,

          /pws/zycee118-posnr     TO itab_zycet118-posnr,

          /pws/zycee118-ebeln     TO itab_zycet118-ebeln,

          /pws/zycee118-saldordem TO itab_zycet118-saldordem,

          /pws/zycee118-vincular  TO itab_zycet118-vincular,

          /pws/zycee118-vrkme     TO itab_zycet118-vrkme,

          /pws/zycee118-marca     TO itab_zycet118-marca,

          /pws/zycee118-dsmerc    TO itab_zycet118-dsmerc,

          /pws/zycee118-observ    TO itab_zycet118-observ,

          /pws/zycee118-ntgew     TO itab_zycet118-ntgew,

...

 

...

                        + itab_zycet118-psagua.

  ELSE.

    CLEAR: /pws/zycee118-psliq,

           /pws/zycee118-solsolv,

           /pws/zycee118-psagua.

  ENDIF.

  MOVE :

     itab_zycet118-nrseqre   TO /pws/zycee118-nrseqre,

     itab_zycet118-codnrseq  TO /pws/zycee118-codnrseq,

     itab_zycet118-vbeln_va  TO /pws/zycee118-vbeln_va,

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

     itab_zycet118-vbeln_vl  TO /pws/zycee118-vbeln_vl,

* << Fim da inclusão

     itab_zycet118-vbeln_vf  TO /pws/zycee118-vbeln_vf,

     itab_zycet118-posnr     TO /pws/zycee118-posnr,

     itab_zycet118-ebeln     TO /pws/zycee118-ebeln,

     itab_zycet118-saldordem TO /pws/zycee118-saldordem,

     itab_zycet118-vincular  TO /pws/zycee118-vincular,

     itab_zycet118-vrkme     TO /pws/zycee118-vrkme,

     itab_zycet118-marca     TO /pws/zycee118-marca,

     itab_zycet118-dsmerc    TO /pws/zycee118-dsmerc,

     itab_zycet118-observ    TO /pws/zycee118-observ,

     itab_zycet118-nrseqre   TO /pws/zycee118-nrseqre,

...

 

...

    PERFORM saldo_anexo.

    PERFORM atua_fat.

    LEAVE TO SCREEN '0100'.

  ELSE.

    MESSAGE s016 WITH text-111.

  ENDIF.

ENDFORM.

FORM saldo_anexo.

  LOOP AT itab_zycet118 WHERE saldordem NE space.

    itab_zycet118_saldo-vbeln_va  = itab_zycet118-vbeln_va.

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

    itab_zycet118_saldo-vbeln_vl  = itab_zycet118-vbeln_vl.

* << Fim da inclusão

    itab_zycet118_saldo-vbeln_vf  = itab_zycet118-vbeln_vf.

    itab_zycet118_saldo-posnr     = itab_zycet118-posnr.

    itab_zycet118_saldo-saldordem = itab_zycet118-saldordem.

    APPEND itab_zycet118_saldo.

  ENDLOOP.

ENDFORM.

FORM trata_editor.

  IF editmens IS INITIAL.

    CREATE OBJECT container EXPORTING container_name = 'EDITMENS'.

    CREATE OBJECT editmens EXPORTING

...

 

...

      WHERE nrseq = p_zycet001-nrseq.

  SELECT SINGLE kunnr

      FROM vbpa

      INTO v_kunnr

      WHERE vbeln = any ( SELECT vbeln_va

                              FROM /pws/zycet002

                              WHERE nrseq = p_zycet001-nrseq

                                AND st_vd IN ('VD', 'DP') )

        AND posnr = '000000'

        AND parvw = p_zycet145-importador.

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

  IF sy-subrc = 0.

* << Fim da exclusão

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

  IF sy-subrc NE 0.

    SELECT SINGLE kunnr

      FROM vbpa

      INTO v_kunnr

      WHERE vbeln = any ( SELECT vbeln_vl

                              FROM /pws/zycet002

                              WHERE nrseq = p_zycet001-nrseq

                                AND st_vd IN ('VD', 'DP') )

        AND posnr = '000000'

        AND parvw = p_zycet145-importador.

    IF sy-subrc NE 0.

      SELECT SINGLE kunnr

        FROM vbpa

        INTO v_kunnr

        WHERE vbeln = any ( SELECT vbeln_vf

                                FROM /pws/zycet002

                                WHERE nrseq = p_zycet001-nrseq

                                  AND st_vd IN ('VD', 'DP') )

          AND posnr = '000000'

          AND parvw = p_zycet145-importador.

    ENDIF.

  ENDIF.

  IF NOT v_kunnr IS INITIAL.

* << Fim da inclusão

    SELECT SINGLE /pws/codpa

        FROM t005

        INTO v_codpa

        WHERE land1 = ( SELECT land1

                            FROM kna1

                            WHERE kunnr = v_kunnr ).

  ENDIF.

  SELECT nrseqrc

         nrrc

         bukrs

...

 

...

      WHERE nrseq = p_zycet001-nrseq.

  SELECT SINGLE kunnr

      FROM vbpa

      INTO p_pagador

      WHERE vbeln = any ( SELECT vbeln_va

                              FROM /pws/zycet002

                              WHERE nrseq = p_zycet001-nrseq

                                AND st_vd IN ('VD', 'DP') )

        AND posnr = '000000'

        AND parvw = p_zycet145-importador.

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

  IF sy-subrc = 0.

* << Fim da exclusão

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

  IF sy-subrc NE 0.

    SELECT SINGLE kunnr

        FROM vbpa

        INTO p_pagador

        WHERE vbeln = any ( SELECT vbeln_vl

                                FROM /pws/zycet002

                                WHERE nrseq = p_zycet001-nrseq

                                  AND st_vd IN ('VD', 'DP') )

          AND posnr = '000000'

          AND parvw = p_zycet145-importador.

    IF sy-subrc NE 0.

      SELECT SINGLE kunnr

      FROM vbpa

      INTO p_pagador

      WHERE vbeln = any ( SELECT vbeln_vf

                              FROM /pws/zycet002

                              WHERE nrseq = p_zycet001-nrseq

                                AND st_vd IN ('VD', 'DP') )

        AND posnr = '000000'

        AND parvw = p_zycet145-importador.

    ENDIF.

  ENDIF.

  IF NOT p_pagador IS INITIAL.

* << Fim da inclusão

    SELECT SINGLE /pws/codpa

        FROM t005

        INTO p_pais_pagador

        WHERE land1 = ( SELECT land1

                            FROM kna1

                            WHERE kunnr = p_pagador ).

  ENDIF.

  SELECT SINGLE nrseqrc

                nrrc

                bukrs

...

 

 

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

Modificações efetuadas em TABD /PWS/ZYCET321

 

Alteraro no campo "TIPOEMB" o "Tipo de Campo" (elemento de dados) de /PWS/ZYCEL581 para:

/PWS/ZYCEL610.