CE PLUS - Nota 000731

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Embarque

Data/Hora da Publicação: 26/01/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 12:00:44

Descrição da Nota: PREENCHER O FABRICANTE DE ACORDO COM O INFORMADO NO PEDIDO DE COMPRAS

Sintoma

Agregar os custos efetivos da admissão na nacionalização da mercadoria de entreposto aduaneiro.

 

 

Solução

Feito desenvolvimento para tratamento do custo efetivo da DA.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

A FATURA 04 NÃO ESTÁ LEVANDO O VALOR DA DESPESA NA PASTA EXPENDIT.

MELHORIA NAS MENSAGENS DO BATCH INPUT - AUTORIZAÇÃO

Informações Complementares

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

Nota Número 00731 Data: 26/01/2006 Hora: 14:03:53

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

 

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

Nota Número              : 00731

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00022

Agrupamento              : 00098

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

Referência às notas relacionadas:

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

 

00851  - 00001 - 6.0    - 00022  - MELHORIA NAS MENSAGENS DO BATCH INPUT - AUTORIZAÇÃO

00984  - 00002 - 6.0    - 00022  - A FATURA 04 NÃO ESTÁ LEVANDO O VALOR DA DESPESA NA PASTA EXPENDIT

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

PREENCHER O FABRICANTE DE ACORDO COM O INFORMADO NO PEDIDO DE COMPRAS

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

Palavras Chave:

FABRICANTE - MFRNR - PEDIDO DE COMPRAS - EMBARQUE - FATURA - DI

FORNECEDOR

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

Objetos da nota:

DYNP /PWS/SAPMZYCI001                        0102

PROG /PWS/MZYCI003O01

REPS /PWS/MZYCI001F01

REPS /PWS/MZYCI001F03

REPS /PWS/MZYCI001O01

REPS /PWS/MZYCI001TOP

REPS /PWS/MZYCI001X01

REPS /PWS/MZYCI003F01

REPS /PWS/MZYCI003F02

REPS /PWS/MZYCI003I01

REPS /PWS/MZYCI003O01

REPS /PWS/MZYCI003TOP

REPS /PWS/MZYCI023F01

REPS /PWS/MZYCI023F02

TABL /PWS/ZYCIE003

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

Modificações efetuadas em REPS /PWS/MZYCI001F01

 

...

    SELECT ekko~ebeln ekko~inco1 ekko~spras

           ekpo~ebelp ekpo~txz01 ekpo~menge ekpo~ktmng ekpo~bstyp

           ekpo~meins ekpo~ntgew ekpo~gewei ekpo~netpr ekpo~bednr

           ekpo~uebto ekpo~uebtk ekpo~loekz ekpo~elikz ekpo~j_1bnbm

           ekpo~werks ekko~lifnr ekpo~j_1bmatuse ekpo~matnr ekpo~mtart

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

           ekpo~mfrnr

* << Fim da inclusão

           FROM ( ekpo INNER JOIN ekko ON ekpo~ebeln = ekko~ebeln )

     INTO TABLE itab_itens_aux

     FOR ALL ENTRIES IN itab_zycit003

       WHERE ekko~ebeln = itab_zycit003-ebeln

         AND ekko~bukrs EQ /pws/zycie001-bukrs

...

 

...

              itab_itens_aux-bednr   TO  itab_zycit003-bednr,

              itab_itens_aux-uebto   TO  itab_zycit003-uebto,

              itab_itens_aux-uebtk   TO  itab_zycit003-uebtk,

              itab_itens_aux-lifnr   TO  itab_zycit003-lifnr,

              itab_itens_aux-j_1bnbm TO  itab_zycit003-j_1bnbm,

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

              itab_itens_aux-werks   TO  itab_zycit003-werks.

* << Fim da exclusão

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

              itab_itens_aux-werks   TO  itab_zycit003-werks,

              itab_itens_aux-mfrnr   to itab_zycit003-LIFNRFABR .

* << Fim da inclusão

        IF itab_zycit003-j_1bnbm IS INITIAL.

          IF t001-land1 EQ 'BR'.

            SELECT SINGLE steuc FROM marc INTO itab_zycit003-j_1bnbm

                   WHERE matnr = itab_itens_aux-matnr.

          ELSE.

...

 

...

       itab_zycit003-qtd_iten IS INITIAL.

      itab_zycit003-ntgew = 1 / 1000.

    ENDIF.

    MODIFY itab_zycit003 INDEX v_tabix.

  ENDLOOP.

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

  perform carrega_fabric.

* << Fim da inclusão

ENDFORM.

FORM lock_record.

  CHECK sy-tcode = '/PWS/ZYCI001_A' AND

        NOT /pws/zycie001-nrseq IS INITIAL.

  CALL FUNCTION '/PWS/ZYCI_ENQUEUE_ZYCIT001'

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F03

 

...

        EXIT.

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDFORM.

* >> Início da inclusão:

form carrega_fabric.

  if not itab_zycit003[] is initial.

    select ebeln ebelp mfrnr from ekpo

    into table itab_fabric

    for all entries in itab_zycit003

    where ebeln eq itab_zycit003-ebeln

    and   ebelp eq itab_zycit003-ebelp.

  endif.

endform.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI001O01

 

...

        IF screen-group2 EQ 'RG6'.

          screen-input = '1'.

        ENDIF.

      ENDIF.

      IF screen-name EQ '/PWS/ZYCIE003-QTD_ITEN'.

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

        screen-input = '0'.

      ENDIF.

     if screen-name eq '/PWS/ZYCIE003-LIFNRFABR' .

         if not /pws/zycie003-lifnrfabr is initial.

            read table itab_fabric with key

                mfrnr = /pws/zycie003-lifnrfabr.

            if sy-subrc eq 0.

* << Fim da inclusão

        screen-input = '0'.

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

            ELSE.

               screen-input = '1'.

            endif.

         else.

            screen-input = '1'.

         endif.

* << Fim da inclusão

      ENDIF.

      MODIFY SCREEN.

    ENDLOOP.

  ENDIF.

  IF v_tcode = '/PWS/ZYCI001_E'.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001TOP

 

...

        j_1bnbm    LIKE ekpo-j_1bnbm   ,

        werks      LIKE ekpo-werks     ,

        lifnr      LIKE ekko-lifnr     ,

        j_1bmatuse LIKE ekpo-j_1bmatuse,

        matnr      LIKE ekpo-matnr     ,

* >> Início da exclusão:

        mtart LIKE ekpo-mtart,

* << Fim da exclusão

* >> Início da inclusão:

        mtart      LIKE ekpo-mtart     ,

        mfrnr      like ekpo-mfrnr     ,

* << Fim da inclusão

      END OF itab_itens_aux            .

DATA: itab_itens_aux2 LIKE itab_itens_aux OCCURS 0 WITH HEADER LINE,

      itab_itens_aux3 LIKE itab_itens_aux OCCURS 0 WITH HEADER LINE,

      itab_zycit263   LIKE /pws/zycie263 OCCURS 0 WITH HEADER LINE,

      itab_zycit006   LIKE /pws/zycie006 OCCURS 0 WITH HEADER LINE.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001X01

 

...

      noinitial,

      mark,

      idnlf         LIKE mepo1319-idnlf,

      invoiced LIKE /pws/zycie263-qtd_iten.

DATA: END OF itab_zycit003.

* >> Início da inclusão:

data: begin of itab_fabric occurs 0.

data:   ebeln like ekpo-ebeln,

        ebelp like ekpo-ebelp,

        mfrnr like ekpo-mfrnr.

data: end of itab_fabric.

* << Fim da inclusão

data: end of common part a.

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F01

FORM salvar_dados.

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

  DATA v_tot_fat2 LIKE /pws/zycie006-vltotal.

* << Fim da exclusão

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

  DATA :v_tot_fat2 LIKE /pws/zycie006-vltotal,

        v_salva_desp.

* << Fim da inclusão

  CLEAR v_stop.

  IF /pws/zycie006-tpfatura NE '11' AND

  ( /pws/zycie006-tpfatura NE '04' AND /pws/zycie006-vinserv EQ 'X' ).

    IF /pws/zycie006-nrseqce IS INITIAL.

      MESSAGE i015 WITH text-075.

...

 

...

  ENDIF.

  MOVE /pws/zycie006-vltotal TO v_tot_fat2.

  PERFORM retorna_decimais USING /pws/zycie006-waers

                         CHANGING v_tot_fat2.

  IF /pws/zycie006-tpfatura = '11'.

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

    PERFORM trata_fabricante.

* << Fim da inclusão

    LOOP AT itab_zycit003 WHERE servico NE 'X'.

    ENDLOOP.

    IF sy-subrc EQ 0.

      MESSAGE i013 WITH text-130.

      v_stop = 'X'.

    ENDIF.

  ELSEIF /pws/zycie006-tpfatura = '01'.

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

    PERFORM trata_fabricante.

* << Fim da inclusão

    LOOP AT itab_zycit003 WHERE servico EQ 'X'.

    ENDLOOP.

    IF sy-subrc EQ 0.

      MESSAGE i001 WITH text-129.

      v_stop = 'X'.

...

 

...

      v_tot_desp = /pws/zycie006-vltotal - v_tot_desp.

      MOVE v_tot_desp TO v_total_desp.

      MESSAGE i061 WITH text-051 v_total_desp text-020.

      MOVE: 'X' TO v_stop.

    ELSE.

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

      PERFORM salva_zycit047.

* << Fim da exclusão

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

      v_salva_desp = 'X'.

* << Fim da inclusão

    ENDIF.

  ENDIF.

  IF v_stop = 'X'.

    EXIT.

  ENDIF.

...

 

...

 

...

  ENDIF.

  IF NOT /pws/zycie006-paquis IS INITIAL AND

         v_paquis NE /pws/zycie006-paquis

         AND NOT itab_zycit003[] IS INITIAL.

    LOOP AT itab_zycit003.

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

      MOVE /pws/zycie006-paquis TO itab_zycit003-paquis.

      MODIFY itab_zycit003.

* << Fim da exclusão

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

      MOVE /pws/zycie006-paisfab TO  itab_zycit003-paquis.

      MODIFY: itab_zycit003.

* << Fim da inclusão

    ENDLOOP.

    MOVE /pws/zycie006-paquis TO v_paquis.

  ENDIF  .

ENDFORM.

FORM exibir_fabricante.

...

 

...

  ENDIF.

ENDFORM.

FORM load_forn.

  DATA wa_adrc       LIKE adrc.

  CLEAR v_flag_fabric.

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

  IF itab_zycit003-fabric EQ '1'.

* << Fim da exclusão

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

  IF /pws/zycie006-fabricante eq '1'.

* << Fim da inclusão

    SELECT SINGLE lifnr name1 land1 adrnr stras ort01 ort02 regio

          FROM lfa1

          INTO CORRESPONDING FIELDS OF wa_lfa1

          WHERE lifnr EQ /pws/zycie006-lifnr.

    SELECT SINGLE * FROM adrc INTO wa_adrc

...

 

...

    WHERE land1 = wa_lfa1-land1 AND

          spras = sy-langu AND

          bland = wa_adrc-region.

    /pws/zycie080-lifnr       = wa_lfa1-lifnr.

    /pws/zycie080-name1       = wa_lfa1-name1.

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

    IF NOT itab_zycit003-paisfab IS INITIAL.

      /pws/zycie080-landa       = itab_zycit003-paisfab.

    ELSE.

* << Fim da inclusão

    /pws/zycie080-landa       = wa_lfa1-land1.

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

    /pws/zycie080-logradouro  = wa_lfa1-adrnr.

    /pws/zycie080-nrlogr      = wa_lfa1-stras.

* << Fim da exclusão

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

    ENDIF.

    /pws/zycie080-nrlogr      = wa_lfa1-adrnr.

    /pws/zycie080-logradouro  = wa_lfa1-stras.

* << Fim da inclusão

    /pws/zycie080-compl       = wa_lfa1-ort02.

    /pws/zycie080-city        = wa_lfa1-ort01.

    /pws/zycie003-ebeln       = itab_zycit003-ebeln.

    /pws/zycie003-ebelp       = itab_zycit003-ebelp.

    SELECT SINGLE landx FROM t005t INTO v_pais_origem

      WHERE spras = sy-langu

        AND land1 EQ /pws/zycie080-landa.

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

  ELSEIF itab_zycit003-fabric EQ '2'.

* << Fim da exclusão

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

  ELSEIF '02' CA /pws/zycie006-fabricante .

* << Fim da inclusão

    SELECT SINGLE lifnr name1 land1 adrnr stras ort01 ort02 regio

          FROM lfa1

          INTO CORRESPONDING FIELDS OF wa_lfa1

          WHERE lifnr EQ /pws/zycie006-lifnr.

    SELECT SINGLE * FROM adrc INTO wa_adrc

...

 

...

    WHERE land1 = wa_lfa1-land1 AND

          spras = sy-langu AND

          bland = wa_adrc-region.

    /pws/zycie080-lifnr       = wa_lfa1-lifnr.

    /pws/zycie080-name1       = wa_lfa1-name1.

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

    IF NOT itab_zycit003-paisfab IS INITIAL.

      /pws/zycie080-landa       = itab_zycit003-paisfab.

    ELSE.

* << Fim da inclusão

    /pws/zycie080-landa       = wa_lfa1-land1.

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

    /pws/zycie080-logradouro  = wa_lfa1-adrnr.

    /pws/zycie080-nrlogr      = wa_lfa1-stras.

* << Fim da exclusão

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

    ENDIF.

    /pws/zycie080-nrlogr      = wa_lfa1-adrnr.

    /pws/zycie080-logradouro  = wa_lfa1-stras.

* << Fim da inclusão

    /pws/zycie080-compl       = wa_lfa1-ort02.

    /pws/zycie080-city        = wa_lfa1-ort01.

    /pws/zycie003-ebeln       = itab_zycit003-ebeln.

    /pws/zycie003-ebelp       = itab_zycit003-ebelp.

    SELECT SINGLE landx FROM t005t INTO v_pais_aquis

...

 

...

      WHERE spras = sy-langu

        AND land1 EQ /pws/zycie006-paisfab.

    /pws/zycie003-lifnrfabr = itab_zycit003-lifnrfabr.

    IF itab_zycit003-flagfabr = 'N'.

      /pws/zycie080a-name1 = itab_zycit003-descfab.

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

      /pws/zycie080a-landa = /pws/zycie006-paisfab.

* << Fim da exclusão

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

      IF NOT itab_zycit003-paisfab IS INITIAL.

        /pws/zycie080a-landa       = itab_zycit003-paisfab.

      ELSE.

        /pws/zycie080a-landa       = wa_lfa1-land1.

      ENDIF.

* << Fim da inclusão

      CLEAR: /pws/zycie080a-logradouro, /pws/zycie080a-nrlogr,

 /pws/zycie080a-compl,

         /pws/zycie080a-city, /pws/zycie080a-regio.

    ELSEIF itab_zycit003-flagfabr = 'S'.

      SELECT SINGLE lifnr name1 land1 adrnr stras ort01 ort02 regio

...

 

...

      SELECT SINGLE bezei FROM t005u INTO /pws/zycie080a-regio

      WHERE land1 = wa_lfa1-land1 AND

            spras = sy-langu AND

            bland = wa_adrc-region.

      /pws/zycie080a-name1       = wa_lfa1-name1.

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

      IF NOT itab_zycit003-paisfab IS INITIAL.

        /pws/zycie080a-landa       = itab_zycit003-paisfab.

      ELSE.

* << Fim da inclusão

      /pws/zycie080a-landa       = wa_lfa1-land1.

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

      /pws/zycie080a-logradouro  = wa_lfa1-adrnr.

      /pws/zycie080a-nrlogr      = wa_lfa1-stras.

* << Fim da exclusão

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

      ENDIF.

      /pws/zycie080a-nrlogr      = wa_lfa1-adrnr.

      /pws/zycie080a-logradouro  = wa_lfa1-stras.

* << Fim da inclusão

      /pws/zycie080a-compl       = wa_lfa1-ort02.

      /pws/zycie080a-city        = wa_lfa1-ort01.

    ENDIF.

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

  ELSEIF itab_zycit003-fabric EQ '3'.

* << Fim da exclusão

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

  ELSEIF /pws/zycie006-fabricante EQ '3'.

* << Fim da inclusão

    SELECT SINGLE lifnr name1 land1 adrnr stras ort01 ort02 regio

          FROM lfa1

          INTO CORRESPONDING FIELDS OF wa_lfa1

          WHERE lifnr EQ /pws/zycie006-lifnr.

    SELECT SINGLE * FROM adrc INTO wa_adrc

...

 

...

    WHERE land1 = wa_lfa1-land1 AND

          spras = sy-langu AND

          bland = wa_adrc-region.

    /pws/zycie080-lifnr       = wa_lfa1-lifnr.

    /pws/zycie080-name1       = wa_lfa1-name1.

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

    IF NOT itab_zycit003-paisfab IS INITIAL.

      /pws/zycie080-landa       = itab_zycit003-paisfab.

    ELSE.

* << Fim da inclusão

    /pws/zycie080-landa       = wa_lfa1-land1.

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

    /pws/zycie080-logradouro  = wa_lfa1-adrnr.

    /pws/zycie080-nrlogr      = wa_lfa1-stras.

* << Fim da exclusão

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

    ENDIF.

    /pws/zycie080-nrlogr      = wa_lfa1-adrnr.

    /pws/zycie080-logradouro  = wa_lfa1-stras.

* << Fim da inclusão

    /pws/zycie080-compl       = wa_lfa1-ort02.

    /pws/zycie080-city        = wa_lfa1-ort01.

    /pws/zycie003-ebeln       = itab_zycit003-ebeln.

    /pws/zycie003-ebelp       = itab_zycit003-ebelp.

    SELECT SINGLE landx FROM t005t INTO v_pais_aquis

...

 

...

FORM exibe_item.

  CLEAR v_consiste.

  LOOP AT itab_zycit003 WHERE marc EQ 'X'.

    v_index_det = sy-tabix.

    v_consiste = v_consiste + 1.

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

    IF NOT /pws/zycie006-descfab    IS INITIAL.

      MOVE: /pws/zycie006-descfab    TO itab_zycit003-descfab.

    ENDIF.

    IF NOT /pws/zycie006-paisfab    IS INITIAL.

      MOVE: /pws/zycie006-paisfab    TO itab_zycit003-paisfab.

    ENDIF.

    IF NOT /pws/zycie006-lifnrfabr  IS INITIAL.

      MOVE: /pws/zycie006-lifnrfabr  TO itab_zycit003-lifnrfabr.

    ENDIF.

    IF NOT /pws/zycie006-flagfabr   IS INITIAL.

      MOVE: /pws/zycie006-flagfabr   TO itab_zycit003-flagfabr.

    ENDIF.

    IF NOT /pws/zycie006-fabricante IS INITIAL.

      MOVE: /pws/zycie006-fabricante TO itab_zycit003-fabric.

    ENDIF.

    MODIFY itab_zycit003 INDEX sy-tabix.

* << Fim da exclusão

  ENDLOOP.

  IF sy-subrc EQ 0 AND v_consiste = '1'.

    MOVE-CORRESPONDING itab_zycit003 TO /pws/zycie003.

    IF /pws/zycie006-fabricante = '2'.

      IF /pws/zycie003-flagfabr = 'S'.

...

 

 

...

      IF sy-subrc EQ 0.

        PERFORM busca_sequencial_fatura.

        MESSAGE i061 WITH text-008 /pws/zycie001-embarca

                          text-009 /pws/zycie001-nrseq.

        INSERT INTO /pws/zycit006 VALUES /pws/zycie006.

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

        PERFORM atualiza_novo_seq.

* << Fim da inclusão

        WHILE sy-subrc NE 0.

          PERFORM busca_sequencial_fatura.

          MESSAGE i061 WITH text-008 /pws/zycie001-embarca

                            text-009 /pws/zycie001-nrseq.

          INSERT INTO /pws/zycit006 VALUES /pws/zycie006.

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

          PERFORM atualiza_novo_seq.

* << Fim da inclusão

        ENDWHILE.

        v_flag_sequencial = 'X'.

        v_existe = 'S'.

      ELSE.

        INSERT INTO /pws/zycit006 VALUES /pws/zycie006.

        WHILE sy-subrc NE 0.

          PERFORM busca_sequencial_fatura.

          MESSAGE i061 WITH text-008 /pws/zycie001-embarca

                            text-009 /pws/zycie001-nrseq.

          INSERT INTO /pws/zycit006 VALUES /pws/zycie006.

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

          PERFORM atualiza_novo_seq.

* << Fim da inclusão

        ENDWHILE.

        v_flag_sequencial = 'X'.

        v_existe = 'S'.

      ENDIF.

      COMMIT WORK AND WAIT.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F02

 

...

        ENDLOOP.

      ENDIF.

    ENDIF.

  ENDIF.

  DELETE FROM /pws/zycit263

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

   WHERE nrseq = itab_zycit003-nrseq.

* << Fim da exclusão

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

   WHERE nrseq = itab_zycit003-nrseq

   AND   ebeln = itab_zycit003-ebeln

   AND   ebelp = itab_zycit003-ebelp

   AND   eliminado EQ space.

* << Fim da inclusão

  PERFORM fill_nrseq_pgfat.

ENDFORM.

FORM busca_sequencialre.

  DATA:

    v_nrseq   LIKE /pws/zycit001-nrseq,

...

 

...

      MOVE v_tot_desp TO v_total_desp.

      MESSAGE s061 WITH text-051 v_total_desp text-020 .

    ENDIF.

  ENDIF.

  PERFORM move_pais.

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

  PERFORM trata_fabricante.

ENDFORM.

 

 

FORM consiste_fabr.

  IF '02' CA /pws/zycie006-fabricante .

    READ TABLE itab_mfrnr WITH KEY ebeln = itab_zycit003-ebeln

                                   ebelp = itab_zycit003-ebelp.

    IF sy-subrc NE 0.

      /pws/zycie006-lifnrfabr = /pws/zycie003-lifnrfabr.

      /pws/zycie006-descfab   = /pws/zycie003-descfab  .

      IF /pws/zycie006-fabricante = '0'.

        IF /pws/zycie006-paisfab IS INITIAL.

          /pws/zycie006-paisfab   = /pws/zycie003-paisfab  .

        ENDIF.

      ELSE.

        /pws/zycie006-paisfab   = /pws/zycie003-paisfab  .

      ENDIF.

    ELSE.

      IF NOT itab_mfrnr-mfrnr IS INITIAL.

        /pws/zycie006-lifnrfabr = itab_mfrnr-mfrnr.

        SELECT SINGLE *

           FROM lfa1

           WHERE lifnr = itab_mfrnr-mfrnr.

        IF sy-subrc EQ 0.

          /pws/zycie006-descfab = lfa1-name1.

* << Fim da inclusão

  IF /pws/zycie006-fabricante = '0'.

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

            IF /pws/zycie006-paisfab IS INITIAL.

              /pws/zycie006-paisfab   = /pws/zycie003-paisfab  .

            ENDIF.

          ELSE.

            /pws/zycie006-paisfab   = /pws/zycie003-paisfab  .

          ENDIF.

        ENDIF.

      ENDIF.

    ENDIF.

* << Fim da inclusão

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

 

    IF v_fabr_ant = '1'.

      CLEAR: /pws/zycie006-flagfabr,

             /pws/zycie006-lifnrfabr, /pws/zycie006-descfab,

             /pws/zycie006-paisfab, v_fabr_ant.

* << Fim da exclusão

    ENDIF.

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

ENDFORM.

 

 

 

FORM trata_fabricante.

  IF /pws/zycie006-fabricante = '0'.

* << Fim da inclusão

    IF /pws/zycie006-flagfabr = 'S'.

      IF NOT /pws/zycie006-lifnrfabr IS INITIAL.

        CLEAR:

               lfa1.

        SELECT SINGLE *

          FROM lfa1

          WHERE lifnr = /pws/zycie006-lifnrfabr.

        IF sy-subrc EQ 0.

          /pws/zycie006-descfab = lfa1-name1.

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

          IF /pws/zycie006-paisfab IS INITIAL.

* << Fim da inclusão

          /pws/zycie006-paisfab = lfa1-land1.

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

          ENDIF.

* << Fim da inclusão

          CLEAR v_descfab.

...

 

...

      CLEAR /pws/zycie006-lifnrfabr.

    ENDIF.

    LOOP AT itab_zycit003.

      READ TABLE itab_mfrnr WITH KEY ebeln = itab_zycit003-ebeln

                                     ebelp = itab_zycit003-ebelp.

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

      IF sy-subrc EQ 0.

        READ TABLE itab_lfa1 WITH KEY

                lifnr  = itab_mfrnr-mfrnr.

        IF sy-subrc EQ 0.

          SELECT SINGLE * FROM lfa1

            WHERE lifnr EQ itab_mfrnr-mfrnr.

* << Fim da inclusão

      IF sy-subrc EQ 0.

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

        MOVE itab_mfrnr-mfrnr TO /pws/zycie006-lifnrfabr.

* << Fim da exclusão

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

            itab_zycit003-descfab = itab_lfa1-name1.

            IF itab_zycit003-paisfab IS INITIAL.

              itab_zycit003-paisfab = itab_lfa1-land1.

            ENDIF.

          ENDIF.

          itab_zycit003-lifnrfabr = itab_mfrnr-mfrnr.

        ELSE.

* << Fim da inclusão

        SELECT SINGLE *

          FROM lfa1

          WHERE lifnr = /pws/zycie006-lifnrfabr.

        IF sy-subrc EQ 0.

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

          itab_zycit003-lifnrfabr = /pws/zycie006-lifnrfabr .

* << Fim da exclusão

          /pws/zycie006-descfab = lfa1-name1.

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

            IF /pws/zycie006-paisfab IS INITIAL.

* << Fim da inclusão

          /pws/zycie006-paisfab = lfa1-land1.

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

            ENDIF.

          ENDIF.

          itab_zycit003-lifnrfabr = /pws/zycie006-lifnrfabr .

* << Fim da inclusão

        ENDIF.

      ELSE.

        MOVE /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr.

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

      ENDIF.

      MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab.

      IF itab_zycit003-paisfab IS INITIAL.

        MOVE /pws/zycie006-paisfab TO itab_zycit003-paisfab.

* << Fim da inclusão

      ENDIF.

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

      MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab,

            /pws/zycie006-paisfab TO itab_zycit003-paisfab,

            /pws/zycie006-flagfabr TO itab_zycit003-flagfabr,

            '0' TO itab_zycit003-fabric.

      MODIFY itab_zycit003.

* << Fim da exclusão

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

      MOVE: /pws/zycie006-flagfabr TO itab_zycit003-flagfabr.

      MODIFY: itab_zycit003,/pws/zycit003.

* << Fim da inclusão

    ENDLOOP.

    v_flag = 'X'.

  ELSEIF /pws/zycie006-fabricante = '1'.

    v_fabr_ant = '1'.

    CLEAR lfa1.

...

 

...

      WHERE lifnr EQ /pws/zycie006-lifnr.

    /pws/zycie006-lifnrfabr = /pws/zycie006-lifnr.

    /pws/zycie006-flagfabr = 'S'.

    /pws/zycie006-descfab = lfa1-name1.

    /pws/zycie006-paisfab = lfa1-land1.

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

    LOOP AT itab_zycit003.

      itab_zycit003-fabric  = '1'.

      MODIFY itab_zycit003.

    ENDLOOP.

* << Fim da inclusão

    LOOP AT itab_zycit003.

      MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab,

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

            /pws/zycie006-paisfab TO itab_zycit003-paisfab,

* << Fim da exclusão

            /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr,

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

            /pws/zycie006-flagfabr TO itab_zycit003-flagfabr,

            '1' TO itab_zycit003-fabric.

      MODIFY itab_zycit003.

* << Fim da exclusão

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

            /pws/zycie006-flagfabr TO itab_zycit003-flagfabr.

      IF itab_zycit003-paisfab IS INITIAL.

        MOVE /pws/zycie006-paisfab TO itab_zycit003-paisfab.

      ENDIF.

      MODIFY: itab_zycit003, /pws/zycit003.

* << Fim da inclusão

    ENDLOOP.

    v_flag = 'X'.

  ELSEIF /pws/zycie006-fabricante = '2'.

    CLEAR: /pws/zycie006-descfab,

    /pws/zycie006-paisfab , /pws/zycie006-lifnrfabr,

    /pws/zycie006-flagfabr.

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

    LOOP AT itab_zycit003.

      itab_zycit003-fabric  = '2'.

      MODIFY itab_zycit003.

    ENDLOOP.

* << Fim da inclusão

    IF v_flag EQ 'X'.

      LOOP AT itab_zycit003.

        READ TABLE itab_mfrnr WITH KEY ebeln = itab_zycit003-ebeln

                                       ebelp = itab_zycit003-ebelp.

        IF sy-subrc EQ 0.

          READ TABLE itab_lfa1 WITH KEY

                  lifnr  = /pws/zycie006-lifnrfabr.

          IF sy-subrc EQ 0.

            itab_zycit003-lifnrfabr = itab_mfrnr-mfrnr.

            itab_zycit003-descfab = itab_lfa1-name1.

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

            IF itab_zycit003-paisfab IS INITIAL.

* << Fim da inclusão

            itab_zycit003-paisfab = itab_lfa1-land1.

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

            itab_zycit003-fabric  = '2'.

* << Fim da exclusão

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

            ENDIF.

* << Fim da inclusão

          ELSE.

            SELECT SINGLE * FROM lfa1

              WHERE lifnr EQ itab_mfrnr-mfrnr.

            itab_zycit003-lifnrfabr = itab_mfrnr-mfrnr.

            itab_zycit003-descfab = lfa1-name1.

            itab_zycit003-paisfab = lfa1-land1.

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

            itab_zycit003-fabric  = '2'.

* << Fim da exclusão

          ENDIF.

        ELSE.

          CLEAR: itab_zycit003-fabric, itab_zycit003-paisfab,

                 itab_zycit003-descfab, itab_zycit003-lifnrfabr,

                 itab_zycit003-flagfabr.

        ENDIF.

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

        MODIFY itab_zycit003.

* << Fim da exclusão

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

        MODIFY: itab_zycit003,/pws/zycit003 .

* << Fim da inclusão

      ENDLOOP.

      v_flag = space.

    ENDIF.

  ELSEIF /pws/zycie006-fabricante = '3'.

    v_flag = 'X'.

    CLEAR: /pws/zycie006-descfab,

    /pws/zycie006-paisfab ,

    /pws/zycie006-lifnrfabr,

    /pws/zycie006-flagfabr.

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

    LOOP AT itab_zycit003.

      itab_zycit003-fabric  = '3'.

      MODIFY itab_zycit003.

    ENDLOOP.

* << Fim da inclusão

    LOOP AT itab_zycit003.

      CLEAR:  itab_zycit003-descfab,

              itab_zycit003-lifnrfabr, itab_zycit003-flagfabr.

      CLEAR: itab_zycit003-paisfab, itab_zycit003-porigem .

      MOVE: '3' TO itab_zycit003-fabric.

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

      MODIFY: itab_zycit003,/pws/zycit003.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM atualiza_novo_seq.

  IF /pws/zycie006-tpfatura EQ '04'.

    LOOP AT itab_zycit047.

      itab_zycit047-nrseq = /pws/zycie006-nrseq.

      MODIFY itab_zycit047.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM carrega_descr.

  IF /pws/zycie006-fabricante = '2'.

    IF /pws/zycie003-fabric = '1'.

      /pws/zycie003-flagfabr = 'S'.

      /pws/zycie003-lifnrfabr = /pws/zycie006-lifnr.

    ELSEIF /pws/zycie003-fabric = '3'.

      CLEAR: /pws/zycie003-lifnrfabr, /pws/zycie003-flagfabr,

             /pws/zycie003-descfab,  /pws/zycie003-paisfab.

    ENDIF.

    IF NOT /pws/zycie006-fabricante IS INITIAL.

      /pws/zycie003-flagfabr = 'S'.

    ENDIF.

    IF /pws/zycie003-flagfabr = 'S'.

      CLEAR lfa1.

      SELECT SINGLE * FROM lfa1

        WHERE lifnr EQ /pws/zycie003-lifnrfabr.

      MOVE lfa1-name1 TO itab_zycit003-descfab.

      IF itab_zycit003-paisfab IS INITIAL.

        MOVE lfa1-land1 TO itab_zycit003-paisfab.

      ENDIF.

    ELSEIF /pws/zycie003-flagfabr = 'N'.

      CLEAR /pws/zycie003-lifnrfabr.

    ENDIF.

  ELSE.

    itab_zycit003-descfab   = /pws/zycie006-descfab.

    IF itab_zycit003-paisfab IS INITIAL.

      itab_zycit003-paisfab   = /pws/zycie006-paisfab.

    ENDIF.

    itab_zycit003-flagfabr  = /pws/zycie006-flagfabr.

  ENDIF.

ENDFORM.

form calcula_total_planejado.

  CLEAR: v_val_plan_tot, v_tot_qtd.

  LOOP AT itab_zycit003.

    MOVE sy-tabix TO v_tabix.

    IF v_waers_diferente = 'X'.

      IF /pws/zycit006-tpfatura = '02' AND NOT

         /pws/zycit085-ukursfre IS INITIAL.

        v_taxa = /pws/zycit085-ukursfre.

      ELSEIF /pws/zycie006-tpfatura = '03' AND NOT

             /pws/zycit085-ukursseg IS INITIAL.

        v_taxa = /pws/zycit085-ukursseg.

      ELSE.

        PERFORM busca_taxa USING itab_zycit003-waers

                          CHANGING v_taxa.

      ENDIF.

    ELSE.

      v_taxa = 1.

    ENDIF.

    IF /pws/zycie006-nrseq_pgfat IS INITIAL AND

       itab_zycit003-toinv IS INITIAL.

      itab_zycit003-toinv = itab_zycit003-qtd_iten -

                            itab_zycit003-invoiced.

      MODIFY itab_zycit003 INDEX v_tabix TRANSPORTING toinv.

    ENDIF.

    IF /pws/zycie006-nrseq_pgfat IS INITIAL AND

       itab_zycit003-ntgew IS INITIAL AND

       NOT /pws/zycie006-ntgew IS INITIAL.

      CLEAR: v_tot_ntgew,  v_tot_qtd.

      LOOP AT itab_zycit263 WHERE ebeln = itab_zycit003-ebeln

                              AND ebelp = itab_zycit003-ebelp

                              AND eliminado EQ space.

        v_tot_ntgew = itab_zycit263-ntgew + v_tot_ntgew.

        v_tot_qtd = itab_zycit263-qtd_iten + v_tot_qtd.

      ENDLOOP.

      IF NOT v_tot_ntgew IS INITIAL AND

         NOT v_tot_qtd IS INITIAL.

        itab_zycit003-ntgew = v_tot_ntgew / v_tot_qtd *

                itab_zycit003-toinv.

        MODIFY itab_zycit003 INDEX v_tabix TRANSPORTING ntgew.

      ELSE.

        IF NOT itab_zycit003[] IS INITIAL.

          SELECT nrseq ebeln ebelp ntgew qtd_iten

            FROM /pws/zycit003 INTO TABLE itab_peso

            FOR ALL ENTRIES IN itab_zycit003

            WHERE nrseq = itab_zycit003-nrseq AND

                  ebeln = itab_zycit003-ebeln AND

                  ebelp = itab_zycit003-ebelp.

        ENDIF.

        LOOP AT itab_zycit003.

          READ TABLE itab_peso WITH KEY

                  nrseq = itab_zycit003-nrseq

                  ebeln = itab_zycit003-ebeln

                  ebelp = itab_zycit003-ebelp.

          itab_zycit003-ntgew = itab_peso-ntgew /

               itab_peso-qtd_iten * itab_zycit003-toinv.

* << Fim da inclusão

      MODIFY itab_zycit003.

    ENDLOOP.

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

      ENDIF.

* << Fim da inclusão

  ENDIF.

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

    v_val_plan_tot = v_val_plan_tot + ( itab_zycit003-netpr

                     * itab_zycit003-toinv * v_taxa ).

  ENDLOOP.

* << Fim da inclusão

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

ENDFORM.

FORM consiste_fabr.

* << Fim da exclusão

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

  IF /pws/zycie006-ratval = '3'.

    PERFORM check_total.

  ENDIF.

* << Fim da inclusão

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

  IF /pws/zycie006-fabricante EQ '2'.

    READ TABLE itab_mfrnr WITH KEY ebeln = itab_zycit003-ebeln

                                   ebelp = itab_zycit003-ebelp.

    IF sy-subrc NE 0.

      /pws/zycie006-lifnrfabr = /pws/zycie003-lifnrfabr.

      /pws/zycie006-descfab   = /pws/zycie003-descfab  .

      /pws/zycie006-paisfab   = /pws/zycie003-paisfab  .

* << Fim da exclusão

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

  CLEAR : v_tot_aux, v_tot .

  PERFORM soma_total.

  LOOP AT itab_zycit003.

    v_tabix = sy-tabix.

    PERFORM atualizando_total.

    IF /pws/zycie006-fabricante EQ '2' AND

       itab_zycit003-descfab IS INITIAL.

      READ TABLE itab_lfa1 WITH KEY  lifnr = itab_zycit003-lifnrfabr.

      IF sy-subrc EQ 0.

        itab_zycit003-descfab = itab_lfa1-name1.

* << Fim da inclusão

    ENDIF.

  ENDIF.

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

    MODIFY itab_zycit003 INDEX v_tabix.

* << Fim da inclusão

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

ENDFORM.

* << Fim da exclusão

* >> Início da inclusão:

  ENDLOOP.

  CLEAR v_tabix.

endform.

* << Fim da inclusão

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003I01

 

...

    INTO TABLE itab_zycbt115

    WHERE nrcorrep EQ /pws/zycie006-nrseq

      AND tpdoc     EQ 'F'.

ENDMODULE.

MODULE user_command_0100 INPUT.

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

  DATA:

        e_exec_okcode,

        v_descfab(01).

* << Fim da exclusão

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

  DATA:  e_exec_okcode.

* << Fim da inclusão

  CLEAR: r_okcode, e_exec_okcode.

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

  CALL METHOD cl_gui_cfw=>dispatch.

  IF NOT r_okcode IS INITIAL.

    okcode = r_okcode.

  ENDIF.

* << Fim da inclusão

  IF okcode EQ 'PB_HELP'.

    v_tela_help = '0051'.

    EXIT.

  ENDIF.

  IF okcode EQ 'CLOSE'.

...

 

...

        PERFORM exibir_fabricante.

      WHEN 'DELE'.

        /pws/zycie003-flagfabr = 'S'.

        PERFORM eliminar_fatura.

      WHEN 'SAVE'.

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

        SELECT SINGLE *

          FROM /pws/zycit085

          WHERE nrbl  EQ /pws/zycie006-nrseqce

            AND nrdi  NE ''

            AND dtreg NE ''.

* << Fim da exclusão

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

        PERFORM trata_save.

* << Fim da inclusão

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

        IF v_refer  NE 'X' AND sy-subrc NE 0.

* << Fim da exclusão

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

      WHEN 'MODI'.

        PERFORM trata_modi.

      WHEN 'MODO'.

        DATA: v_autoriza TYPE feld.

* << Fim da inclusão

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

          PERFORM consiste_campos_obrigatorios.

        ELSEIF ( /pws/zycie006-tpfatura EQ '01' AND

               /pws/zycie006-frpagto  EQ 'P' ) OR

               /pws/zycie006-tpfatura NE '01'.

          IF v_refer  NE 'X'.

* << Fim da exclusão

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

        CALL FUNCTION '/PWS/ZYGL_AUTORIZA_MODO_BATCH'

             EXPORTING

                  codmod   = 'D'

                  usuario  = sy-uname

                  func     = 'FAT'

             IMPORTING

                  autoriza = v_autoriza.

* << Fim da inclusão

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

            PERFORM consiste_campos_obrigatorios.

          ENDIF.

        ELSE.

          MESSAGE e039 WITH text-041.

        ENDIF.

* << Fim da exclusão

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

        IF v_autoriza = 'X'.

          PERFORM modo_batch_input.

* << Fim da inclusão

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

      WHEN 'MODI'.

        IF v_status_s = '0'.

          IF /pws/zycie006-eliminado NE 'X' AND

         ( ( v_existe_di EQ 'S' AND /pws/zycie006-tpfatura EQ '02' ) OR

           ( v_existe_di EQ 'S' AND /pws/zycie006-tpfatura EQ '03' ) OR

           ( v_existe_di EQ 'S' AND /pws/zycie006-tpfatura EQ '04' ) OR

            ( v_existe_di EQ 'S' AND /pws/zycie006-tpfatura EQ '09' ) ).

            v_status_s = 1.

          ELSEIF /pws/zycie006-eliminado NE 'X' AND v_existe_di NE 'S'.

            v_status_s = 1.

          ELSEIF /pws/zycie006-eliminado EQ 'X'.

            MESSAGE s015 WITH text-037.

         ELSEIF v_existe_di EQ 'S' AND ( /pws/zycie006-tpfatura EQ '01'

                      OR /pws/zycie006-tpfatura = '11' ).

            MESSAGE s015 WITH text-041.

          ENDIF.

* << Fim da exclusão

        ELSE.

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

          v_status_s = '0'.

        ENDIF.

        IF /pws/zycie006-tpfatura EQ '04'.

          PERFORM verifica_despesas.

* << Fim da exclusão

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

          MESSAGE w013 WITH text-161 text-162.

* << Fim da inclusão

        ENDIF.

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

      WHEN 'MODO'.

        PERFORM modo_batch_input.

* << Fim da exclusão

      WHEN 'BACK'.

        SELECT SINGLE *

          FROM /pws/zycit085

          WHERE nrbl  EQ /pws/zycie006-nrseqce

            AND nrdi  NE ''

...

 

...

          PERFORM verifica_alteracoes.

          CLEAR: v_dbanco, v_dforn, v_dmoeda, v_dmoeda_emb,

                 v_dtpfatura, v_dfrpagto, /pws/zycie006.

          CLEAR v_livre.

          CLEAR v_existe_lc.

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

          CLEAR itab_zycit047[]. REFRESH itab_zycit047.

* << Fim da inclusão

          LEAVE TO SCREEN 0 .

        ELSEIF sy-tcode EQ '/PWS/ZYCI003_C' OR sy-tcode EQ

        '/PWS/ZYCI003_A'

            OR sy-tcode = '/PWS/ZYCI003_M'.

          PERFORM verifica_alteracoes.

...

 

...

        MOVE itab_zycit003-nrseq TO /pws/zycie003-nrseq.

        EXPORT /pws/zycie003-nrseq TO MEMORY ID '001'.

        EXPORT /pws/zycie006-nrseq TO MEMORY ID '002'.

        SUBMIT /pws/zycir051 AND RETURN.

      WHEN 'ENTE'.

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

        PERFORM trata_ente.

* << Fim da inclusão

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

        IF /pws/zycie006-tpfatura = '04'.

          PERFORM soma_despesa.

          IF v_tot_desp <> /pws/zycie006-vltotal.

            v_tot_desp = /pws/zycie006-vltotal - v_tot_desp.

            MOVE v_tot_desp TO v_total_desp.

            MESSAGE s061 WITH text-051 v_total_desp text-020 .

          ENDIF.

        ENDIF.

        PERFORM move_pais.

        IF /pws/zycie006-fabricante = '0'.

          IF v_fabr_ant = '1'.

            CLEAR: /pws/zycie006-flagfabr,

                   /pws/zycie006-lifnrfabr, /pws/zycie006-descfab,

                   /pws/zycie006-paisfab, v_fabr_ant.

          ENDIF.

          IF /pws/zycie006-flagfabr = 'S'.

            IF NOT /pws/zycie006-lifnrfabr IS INITIAL.

              CLEAR:

                     lfa1.

              SELECT SINGLE *

                FROM lfa1

                WHERE lifnr = /pws/zycie006-lifnrfabr.

              IF sy-subrc EQ 0.

                /pws/zycie006-descfab = lfa1-name1.

                /pws/zycie006-paisfab = lfa1-land1.

                CLEAR v_descfab.

              ELSEIF v_descfab IS INITIAL.

                v_descfab = 'X'.

              ENDIF.

            ELSE.

              IF /pws/zycie006-fabricante NE '0'.

                CLEAR: /pws/zycie006-descfab, /pws/zycie006-paisfab.

                MESSAGE s015 WITH text-053.

              ENDIF.

            ENDIF.

          ELSE.

            CLEAR /pws/zycie006-lifnrfabr.

          ENDIF.

          LOOP AT itab_zycit003.

            MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab,

                  /pws/zycie006-paisfab TO itab_zycit003-paisfab,

                  /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr,

                  /pws/zycie006-flagfabr TO itab_zycit003-flagfabr,

                  '2' TO itab_zycit003-fabric.

            MODIFY itab_zycit003.

          ENDLOOP.

          v_flag = 'X'.

        ELSEIF /pws/zycie006-fabricante = '1'.

          v_fabr_ant = '1'.

          CLEAR lfa1.

          SELECT SINGLE * FROM lfa1

            WHERE lifnr EQ /pws/zycie006-lifnr.

          /pws/zycie006-lifnrfabr = /pws/zycie006-lifnr.

          /pws/zycie006-flagfabr = 'S'.

          /pws/zycie006-descfab = lfa1-name1.

          /pws/zycie006-paisfab = lfa1-land1.

          LOOP AT itab_zycit003.

            MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab,

                  /pws/zycie006-paisfab TO itab_zycit003-paisfab,

                  /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr,

                  /pws/zycie006-flagfabr TO itab_zycit003-flagfabr,

                  '1' TO itab_zycit003-fabric.

            MODIFY itab_zycit003.

          ENDLOOP.

          v_flag = 'X'.

        ELSEIF /pws/zycie006-fabricante = '2'.

          CLEAR: /pws/zycie006-descfab,

          /pws/zycie006-paisfab , /pws/zycie006-lifnrfabr,

          /pws/zycie006-flagfabr.

          IF v_flag EQ 'X'.

            LOOP AT itab_zycit003.

              CLEAR: itab_zycit003-fabric, itab_zycit003-paisfab,

                     itab_zycit003-descfab, itab_zycit003-lifnrfabr,

                     itab_zycit003-flagfabr.

              MODIFY itab_zycit003.

            ENDLOOP.

            v_flag = space.

          ENDIF.

        ELSEIF /pws/zycie006-fabricante = '3'.

          v_flag = 'X'.

          CLEAR: /pws/zycie006-descfab,

          /pws/zycie006-lifnrfabr,

          /pws/zycie006-flagfabr.

          LOOP AT itab_zycit003.

            CLEAR:  itab_zycit003-descfab,

                    itab_zycit003-lifnrfabr, itab_zycit003-flagfabr.

            MOVE: '3' TO itab_zycit003-fabric.

            MODIFY itab_zycit003.

          ENDLOOP.

        ENDIF.

* << Fim da exclusão

      WHEN 'CAMB'.

        CALL SCREEN 0112 STARTING AT 5 5 ENDING AT 65 20.

      WHEN 'REC'.

        IF NOT /pws/zycie006-belnr_p IS INITIAL.

          PERFORM executa_recebimento.

...

 

...

    ENDIF.

  ENDIF.

  IF ( /pws/zycie006-tpfatura = '02' OR

     /pws/zycie006-tpfatura = '03' OR

     /pws/zycie006-tpfatura = '04' ) AND

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

     v_forn IS INITIAL.

* << Fim da exclusão

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

     v_forn IS INITIAL

     AND /pws/zycie006-eliminado NE 'X'.

* << Fim da inclusão

    CLEAR /pws/zycie006-lifnr.

    v_forn = 'X'.

  ENDIF.

  IF t001-land1 = 'CL'.

    /pws/zycie006-waers_clp = /pws/zycbt007-waersb.

...

 

...

  itab_zycit003-fabric    = /pws/zycie003-fabric.

  itab_zycit003-lifnrfabr = /pws/zycie003-lifnrfabr.

  itab_zycit003-porigem   = /pws/zycie003-porigem.

  itab_zycit003-paquis    = /pws/zycie003-paquis.

  itab_zycit003-mfrpn     = /pws/zycie003-mfrpn.

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

  IF /pws/zycie006-fabricante = '2'.

    IF /pws/zycie003-fabric = '1'.

      /pws/zycie003-flagfabr = 'S'.

      /pws/zycie003-lifnrfabr = /pws/zycie006-lifnr.

    ELSEIF /pws/zycie003-fabric = '3'.

      CLEAR: /pws/zycie003-lifnrfabr, /pws/zycie003-flagfabr,

             /pws/zycie003-descfab,  /pws/zycie003-paisfab.

    ENDIF.

    IF NOT /pws/zycie006-fabricante IS INITIAL.

      /pws/zycie003-flagfabr = 'S'.

    ENDIF.

    IF /pws/zycie003-flagfabr = 'S'.

      CLEAR lfa1.

      SELECT SINGLE * FROM lfa1

        WHERE lifnr EQ /pws/zycie003-lifnrfabr.

      MOVE lfa1-name1 TO /pws/zycie003-descfab.

      MOVE lfa1-land1 TO /pws/zycie003-paisfab.

    ELSEIF /pws/zycie003-flagfabr = 'N'.

      CLEAR /pws/zycie003-lifnrfabr.

    ENDIF.

  ELSE.

    itab_zycit003-descfab   = /pws/zycie006-descfab.

    itab_zycit003-paisfab   = /pws/zycie006-paisfab.

    itab_zycit003-flagfabr  = /pws/zycie006-flagfabr.

  ENDIF.

* << Fim da exclusão

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

  itab_zycit003-paisfab     = /pws/zycie003-paisfab.

  PERFORM carrega_descr.

* << Fim da inclusão

  IF /pws/zycie006-nrseq_pgfat IS INITIAL AND itab_zycit132[] IS

 INITIAL.

    vcalc = itab_zycit003-toinv + itab_zycit003-invoiced.

    IF vcalc > itab_zycit003-qtd_iten.

      MESSAGE s015 WITH text-119.

...

 

...

      /pws/zycie003-flagfabr = 'S'.

      /pws/zycie003-lifnrfabr = /pws/zycie006-lifnr.

    ELSEIF /pws/zycie003-fabric = '3'.

      CLEAR: /pws/zycie003-lifnrfabr, /pws/zycie003-flagfabr,

             /pws/zycie003-descfab  .

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

    ELSE.

      /pws/zycie003-fabric = /pws/zycie006-fabricante.

* << Fim da inclusão

    ENDIF.

    IF NOT /pws/zycie006-fabricante IS INITIAL.

      /pws/zycie003-flagfabr = 'S'.

    ENDIF.

    IF /pws/zycie003-flagfabr = 'S' AND /pws/zycie003-fabric NE '3'.

...

 

...

      SELECT SINGLE *

        FROM lfa1

        WHERE lifnr EQ /pws/zycie003-lifnrfabr.

      IF sy-subrc EQ 0.

        MOVE lfa1-name1 TO /pws/zycie003-descfab.

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

        IF /pws/zycie003-paisfab IS INITIAL.

* << Fim da inclusão

        MOVE lfa1-land1 TO /pws/zycie003-paisfab.

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

        ENDIF.

* << Fim da inclusão

      ENDIF.

...

 

...

        DESCRIBE TABLE itab_zycit129 LINES v_codint.

      ENDIF.

  ENDCASE.

ENDMODULE.

MODULE calcula_total_planejado INPUT.

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

if not /pws/zycie006-tpfatura is initial.

* << Fim da inclusão

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

  CLEAR: v_val_plan_tot, v_tot_qtd.

  LOOP AT itab_zycit003.

    MOVE sy-tabix TO v_tabix.

    IF v_waers_diferente = 'X'.

      IF /pws/zycit006-tpfatura = '02' AND NOT

         /pws/zycit085-ukursfre IS INITIAL.

        v_taxa = /pws/zycit085-ukursfre.

      ELSEIF /pws/zycie006-tpfatura = '03' AND NOT

             /pws/zycit085-ukursseg IS INITIAL.

        v_taxa = /pws/zycit085-ukursseg.

      ELSE.

        PERFORM busca_taxa USING itab_zycit003-waers

                          CHANGING v_taxa.

      ENDIF.

    ELSE.

      v_taxa = 1.

    ENDIF.

* << Fim da exclusão

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

  perform calcula_total_planejado.

* << Fim da inclusão

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

    IF /pws/zycie006-nrseq_pgfat IS INITIAL AND

       itab_zycit003-toinv IS INITIAL.

      itab_zycit003-toinv = itab_zycit003-qtd_iten -

                            itab_zycit003-invoiced.

      MODIFY itab_zycit003 INDEX v_tabix TRANSPORTING toinv.

    ENDIF.

    IF /pws/zycie006-nrseq_pgfat IS INITIAL AND

       itab_zycit003-ntgew IS INITIAL AND

       NOT /pws/zycie006-ntgew IS INITIAL.

      CLEAR: v_tot_ntgew,  v_tot_qtd.

      LOOP AT itab_zycit263 WHERE ebeln = itab_zycit003-ebeln

                              AND ebelp = itab_zycit003-ebelp

                              AND eliminado EQ space.

        v_tot_ntgew = itab_zycit263-ntgew + v_tot_ntgew.

        v_tot_qtd = itab_zycit263-qtd_iten + v_tot_qtd.

      ENDLOOP.

      IF NOT v_tot_ntgew IS INITIAL AND

         NOT v_tot_qtd IS INITIAL.

        itab_zycit003-ntgew = v_tot_ntgew / v_tot_qtd *

                itab_zycit003-toinv.

        MODIFY itab_zycit003 INDEX v_tabix TRANSPORTING ntgew.

      ELSE.

        IF NOT itab_zycit003[] IS INITIAL.

          SELECT nrseq ebeln ebelp ntgew qtd_iten

            FROM /pws/zycit003 INTO TABLE itab_peso

            FOR ALL ENTRIES IN itab_zycit003

            WHERE nrseq = itab_zycit003-nrseq AND

                  ebeln = itab_zycit003-ebeln AND

                  ebelp = itab_zycit003-ebelp.

        ENDIF.

        LOOP AT itab_zycit003.

          READ TABLE itab_peso WITH KEY

                  nrseq = itab_zycit003-nrseq

                  ebeln = itab_zycit003-ebeln

                  ebelp = itab_zycit003-ebelp.

          itab_zycit003-ntgew = itab_peso-ntgew /

               itab_peso-qtd_iten * itab_zycit003-toinv.

          MODIFY itab_zycit003.

        ENDLOOP.

      ENDIF.

    ENDIF.

    v_val_plan_tot = v_val_plan_tot + ( itab_zycit003-netpr

                     * itab_zycit003-toinv * v_taxa ).

  ENDLOOP.

  IF /pws/zycie006-ratval = '3'.

    PERFORM check_total.

* << Fim da exclusão

  ENDIF.

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

  CLEAR : v_tot_aux, v_tot .

  PERFORM soma_total.

  LOOP AT itab_zycit003.

    v_tabix = sy-tabix.

    PERFORM atualizando_total.

    MODIFY itab_zycit003 INDEX v_tabix.

  ENDLOOP.

  CLEAR v_tabix.

* << Fim da exclusão

ENDMODULE.

MODULE atualiza_zycbt117 INPUT.

  MODIFY itab_zycbt117 INDEX tc_pg_ant-current_line.

ENDMODULE.

MODULE user_command_0500 INPUT.

...

 

...

            CLEAR: /pws/zycie006-descfab , /pws/zycie006-paisfab.

            SELECT SINGLE *

              FROM lfa1

              WHERE lifnr = /pws/zycie006-lifnrfabr.

            /pws/zycie006-descfab = lfa1-name1.

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

            IF /pws/zycie006-paisfab IS INITIAL.

* << Fim da inclusão

            /pws/zycie006-paisfab = lfa1-land1.

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

            ENDIF.

* << Fim da inclusão

          ELSE.

...

 

...

        ELSE.

          CLEAR /pws/zycie006-lifnrfabr.

        ENDIF.

        LOOP AT itab_zycit003.

          MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab,

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

                /pws/zycie006-paisfab TO itab_zycit003-paisfab,

* << Fim da exclusão

                /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr,

                /pws/zycie006-flagfabr TO itab_zycit003-flagfabr,

                '2' TO itab_zycit003-fabric.

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

          IF itab_zycit003-paisfab IS INITIAL.

            MOVE /pws/zycie006-paisfab TO itab_zycit003-paisfab.

          ENDIF.

* << Fim da inclusão

          MODIFY itab_zycit003.

        ENDLOOP.

        v_flag = 'X'.

      ELSEIF /pws/zycie006-fabricante = '1'.

        v_fabr_ant = '1'.

...

 

...

        /pws/zycie006-flagfabr = 'S'.

        /pws/zycie006-descfab = lfa1-name1.

        /pws/zycie006-paisfab = lfa1-land1.

        LOOP AT itab_zycit003.

          MOVE: /pws/zycie006-descfab TO itab_zycit003-descfab,

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

                /pws/zycie006-paisfab TO itab_zycit003-paisfab,

* << Fim da exclusão

                /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr,

                /pws/zycie006-flagfabr TO itab_zycit003-flagfabr,

                '1' TO itab_zycit003-fabric.

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

          IF itab_zycit003-paisfab IS INITIAL.

            MOVE /pws/zycie006-paisfab TO itab_zycit003-paisfab.

          ENDIF.

* << Fim da inclusão

          MODIFY itab_zycit003.

        ENDLOOP.

        v_flag = 'X'.

      ELSEIF /pws/zycie006-fabricante = '2'.

        CLEAR: /pws/zycie006-descfab,

...

 

...

MODULE carrega_pais INPUT.

  PERFORM carrega_pais.

ENDMODULE.

MODULE atualiza_pais INPUT.

  PERFORM carrega_pais.

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

  PERFORM consiste_fabr.

* << Fim da inclusão

ENDMODULE.

MODULE consiste_fabr INPUT.

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

  IF /pws/zycie006-fabricante EQ '2'.

    /pws/zycie006-lifnrfabr = /pws/zycie003-lifnrfabr.

    /pws/zycie006-descfab   = /pws/zycie003-descfab  .

    /pws/zycie006-paisfab   = /pws/zycie003-paisfab  .

  ENDIF.

* << Fim da exclusão

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

  PERFORM consiste_fabr.

* << Fim da inclusão

ENDMODULE.

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003O01

 

...

    ENDIF.

    v_existe_lc = 'X'.

  ELSE.

    CLEAR v_existe_lc.

  ENDIF.

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

  IF itab_mfrnr[] IS INITIAL.

    LOOP AT itab_zycit003.

      MOVE : itab_zycit003-ebeln      TO itab_mfrnr-ebeln,

             itab_zycit003-ebelp      TO itab_mfrnr-ebelp,

             itab_zycit003-lifnrfabr TO itab_mfrnr-mfrnr.

      APPEND itab_mfrnr.

    ENDLOOP.

  ENDIF.

  IF NOT itab_zycit003[] IS INITIAL.

    SELECT lifnr land1 name1 FROM lfa1

    INTO TABLE itab_lfa1

    FOR ALL ENTRIES IN itab_zycit003

    WHERE lifnr EQ itab_zycit003-lifnrfabr.

  ENDIF.

* << Fim da inclusão

ENDMODULE.

MODULE carrega_zycie006 OUTPUT.

  MOVE: itab_zycit006-nrseq    TO /pws/zycie006-nrseq,

        itab_zycit006-nrfat    TO /pws/zycie006-nrfat,

        itab_zycit006-belnr_p  TO /pws/zycie006-belnr_p,

...

 

...

            screen-input = '0' .

          ELSE.

            IF /pws/zycie006-fabricante = '0'.

              IF screen-name = '/PWS/ZYCIE006-LIFNRFABR' AND

               ( /pws/zycie006-flagfabr = 'N'            OR

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

                 /pws/zycie006-flagfabr = space ).

* << Fim da exclusão

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

                 /pws/zycie006-flagfabr = space )  .

* << Fim da inclusão

                screen-input = '1'.

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

              ELSEIF ( screen-name = '/PWS/ZYCIE006-DESCFAB'   OR

                       screen-name = '/PWS/ZYCIE006-PAISFAB' ) AND

* << Fim da exclusão

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

              ELSEIF ( screen-name = '/PWS/ZYCIE006-DESCFAB' ) AND

* << Fim da inclusão

                     ( /pws/zycie006-flagfabr = 'S'            OR

                       /pws/zycie006-flagfabr = space ).

                CLEAR:

                       lfa1.

                SELECT SINGLE *

                  FROM lfa1

                  WHERE lifnr = /pws/zycie006-lifnrfabr.

                IF sy-subrc EQ 0.

                  /pws/zycie006-descfab = lfa1-name1.

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

                     if /pws/zycie006-paisfab is initial.

* << Fim da inclusão

                  /pws/zycie006-paisfab = lfa1-land1.

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

                     endif.

* << Fim da inclusão

                  screen-input = '0'.

                ELSE.

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

                  screen-input = '1'.

                ENDIF.

              ELSEIF  screen-name = '/PWS/ZYCIE006-PAISFAB'.

                IF SY-TCODE ne '/PWS/ZYCIE003_E' .

* << Fim da inclusão

                  screen-input = '1'.

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

                ELSE.

                  screen-input = '0'.

* << Fim da inclusão

                ENDIF.

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

                MODIFY SCREEN.

* << Fim da inclusão

              ELSE.

...

 

...

                                     ) OR /pws/zycie006-tpfatura = '  '.

  CHECK NOT itab_zycit003 IS INITIAL.

  MOVE: itab_zycit003 TO /pws/zycie003.

  MOVE: itab_zycit003-total TO /pws/zycie036-vldif.

  MOVE: /pws/zycie001-waers TO /pws/zycie036-waers_dif.

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

  SELECT SINGLE *

     FROM lfa1

      WHERE lifnr = /pws/zycie003-lifnrfabr.

  IF sy-subrc EQ 0.

    /pws/zycie003-descfab = lfa1-name1.

    IF /pws/zycie003-paisfab IS INITIAL.

      /pws/zycie003-paisfab = lfa1-land1.

    ENDIF.

  ENDIF.

* << Fim da inclusão

  SELECT SINGLE * FROM tcurx WHERE currkey = /pws/zycie001-waers.

  IF sy-subrc <> 0.

    tcurx-currdec = 2.

  ENDIF.

  tc_itens-lines = tc_itens-lines + 10.

...

 

...

    IF NOT /pws/zycie006-belnr_p IS INITIAL OR

       NOT itab_zycit132-belnr_p IS INITIAL.

      IF NOT itab_zycit003-toinv IS INITIAL .

        IF screen-name EQ 'ITAB_ZYCIT003-TOINV'.

          screen-input = 0.

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

        ENDIF.

      ENDIF.

* << Fim da inclusão

        ENDIF.

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

    IF screen-name = '/PWS/ZYCIE003-PAISFAB' .

      IF sy-tcode NE '/PWS/ZYCIE003_E'.

        screen-input = 1.

      ELSE.

        screen-input = 0.

* << Fim da inclusão

      ENDIF.

    ENDIF.

    MODIFY SCREEN.

  ENDLOOP.

ENDMODULE.

...

 

...

        screen-name EQ 'TAB_FORN3'.

        screen-invisible = '1'.

      ENDIF.

      MODIFY SCREEN.

    ELSEIF v_fabricante EQ '3'.

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

      IF screen-group1 = 'F1'.

        screen-invisible = '1'.

      ENDIF.

      IF screen-group1 = 'F2'.

        screen-invisible = '1'.

      ENDIF.

      IF screen-group1 = 'F3'.

        screen-invisible = '0'.

      ENDIF.

      IF screen-group2 = 'C1'.

        screen-invisible = '1'.

      ENDIF.

      IF screen-group2 = 'C2'.

        screen-invisible = '0'.

      ENDIF.

      IF screen-name EQ 'TAB_FORN3' .

        screen-invisible = '0'.

      ELSEIF screen-name EQ 'TAB_FORN2' OR

        screen-name EQ 'TAB_FORN1'.

        screen-invisible = '1'.

      ENDIF.

      MODIFY SCREEN.

    ELSEIF v_fabricante EQ '0'.

* << Fim da inclusão

      IF screen-group1 = 'F1'.

        screen-invisible = '1'.

      ENDIF.

      IF screen-group1 = 'F2'.

        screen-invisible = '1'.

...

 

...

               AND /pws/zycie003-flagfabr = 'S' ) OR

            ( screen-name = '/PWS/ZYCIE003-PAISFAB'

               AND /pws/zycie003-flagfabr = 'S' ).

        screen-input = '0'.

      ENDIF.

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

      IF /pws/zycie003-fabric = '1'  AND

* << Fim da exclusão

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

      IF /pws/zycie006-fabricante = '1'  AND

* << Fim da inclusão

         ( screen-name = '/PWS/ZYCIE003-LIFNRFABR' OR

           screen-name = '/PWS/ZYCIE003-DESCFAB' OR

           screen-name = '/PWS/ZYCIE003-FLAGFABR' OR

           screen-name = '/PWS/ZYCIE003-PAISFAB' ).

        screen-input = '0'.

      ENDIF.

    ENDIF.

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

    IF /pws/zycie003-fabric = '3'.

* << Fim da exclusão

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

    IF /pws/zycie006-fabricante = '3'.

* << Fim da inclusão

      IF screen-name = '/PWS/ZYCIE003-PAISFAB'.

        screen-input = '1'.

      ELSEIF screen-name = '/PWS/ZYCIE003-LIFNRFABR' OR

             screen-name = '/PWS/ZYCIE003-DESCFAB' OR

             screen-name = '/PWS/ZYCIE003-FLAGFABR'.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI003TOP

...

      END OF   rtext_aux.

DATA: BEGIN OF itab_t001w OCCURS 0,

            werks LIKE ekpo-werks,

            bwkey LIKE mbew-bwkey,

      END   OF itab_t001w.

* >> Início da inclusão:

data: begin of itab_mfrnr occurs 0,

        ebeln like ekpo-ebeln,

        ebelp like ekpo-ebelp,

        mfrnr like ekpo-mfrnr,

      end of itab_mfrnr.

data: begin of itab_lfa1 occurs 0,

        lifnr like lfa1-lifnr,

        land1 like lfa1-land1,

        name1 like lfa1-name1,

      end of itab_lfa1      .

* << Fim da inclusão

CONTROLS:

  ts_fa         TYPE TABSTRIP,

  ts_faturas TYPE TABSTRIP,

  tc_faturas TYPE TABLEVIEW USING SCREEN '0001',

  tc_ccambio TYPE TABLEVIEW USING SCREEN '0103',

...

 

...

  v_forn,

  v_tela_help LIKE sy-dynnr value '0052',

  v_kurst like /pws/zycit000-kurst      ,

  v_nrseq LIKE /pws/zycit001-nrseq      ,

  v_awkey LIKE bkpf-awkey               ,

* >> Início da exclusão:

  v_existe_lc  type C                   .

* << Fim da exclusão

* >> Início da inclusão:

  v_existe_lc  type C                   ,

        v_descfab(01).

* << Fim da inclusão

DATA:  gv_subscreen_0050   TYPE sy-dynnr VALUE '0051',

       gv_subscreen_0100_1 TYPE sy-dynnr,

       gv_subscreen_0300_2 TYPE sy-dynnr.

CONSTANTS: BEGIN OF gc_subscreen,

             prog     TYPE sy-dynnr VALUE '0100',

...

 

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

Modificações efetuadas em PROG /PWS/MZYCI023F01

 

...

       itab_it-advalicms     NE itab_itb-advalicms     OR

       itab_it-vlantid       NE itab_itb-vlantid       OR

       itab_it-meinsantid    NE itab_itb-meinsantid    OR

       itab_it-qtdeantid     NE itab_itb-qtdeantid     OR

       itab_it-codcambial    NE itab_itb-codcambial    OR

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

       itab_it-inco_item     NE itab_itb-inco_item   .

* << Fim da exclusão

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

       itab_it-inco_item     NE itab_itb-inco_item   or

       itab_it-paisfab       ne itab_itb-paisfab.

* << Fim da inclusão

      PERFORM adic_next.

    ELSE.

      IF itab_zycit001-flag_adicao EQ 'X'.

        PERFORM adic_next.

      ENDIF.

...

 

...

    MODIFY /pws/zycit200 FROM TABLE itab_zycit200b.

  ENDIF.

  IF /pws/zycie006-codcambial = '4'.

    CLEAR /pws/zycie116-valtot.

  ENDIF.

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

  IF NOT sy-tabix = 0.

* << Fim da exclusão

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

  IF NOT v_pos = 0.

* << Fim da inclusão

    MOVE-CORRESPONDING /pws/zycie116 TO itab_zycit116.

    MODIFY itab_zycit116 INDEX v_pos.

    IF sy-subrc NE 0.

      APPEND itab_zycit116.

    ENDIF.

...

 

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

Modificações efetuadas em PROG /PWS/MZYCI023F02

...

    /pws/zycie080-landa       = wa_adrc-country.

    /pws/zycie080-logradouro  = wa_adrc-street.

    /pws/zycie080-nrlogr      = wa_adrc-house_num1.

    /pws/zycie080-compl       = wa_lfa1-ort02.

    /pws/zycie080-city        = wa_adrc-city1.

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

    IF /pws/zycie006-fabricante EQ 3.

      PERFORM load_pais USING /pws/zycie006-paisfab

                              CHANGING a_spais1 a_pais1.

    ELSE.

* << Fim da exclusão

      PERFORM load_pais USING    /pws/zycie080-landa

                           CHANGING a_spais1 a_pais1.

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

    ENDIF.

* << Fim da exclusão

  ELSE.

    SELECT SINGLE bezei FROM t005u INTO /pws/zycie080a-regio

    WHERE land1 = wa_lfa1-land1 AND

          spras = sy-langu AND

          bland = wa_adrc-region.

    /pws/zycie080a-lifnr      = wa_lfa1-lifnr.

    /pws/zycie080a-name1      = wa_lfa1-name1.

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

    /pws/zycie080a-landa      = wa_adrc-country.

* << Fim da exclusão

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

     if itab_itb-paisfab is initial.

      /pws/zycie080A-landa       = wa_adrc-country.

      /pws/zycie080a-logradouro = wa_adrc-street.

      /pws/zycie080a-nrlogr     = wa_adrc-house_num1.

      /pws/zycie080a-compl      = wa_lfa1-ort02.

      /pws/zycie080a-city       = wa_adrc-city1.

    else.

       /pws/zycie080A-landa       = itab_itb-paisfab.

       if itab_itb-paisfab eq wa_adrc-country.

* << Fim da inclusão

    /pws/zycie080a-logradouro = wa_adrc-street.

    /pws/zycie080a-nrlogr     = wa_adrc-house_num1.

    /pws/zycie080a-compl      = wa_lfa1-ort02.

    /pws/zycie080a-city       = wa_adrc-city1.

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

       else.

          clear /pws/zycie080a-regio.

       endif.

    endif.

* << Fim da inclusão

    IF /pws/zycie006-fabricante EQ 0 AND

       /pws/zycie080a-name1 IS INITIAL.

      /pws/zycie080a-name1 = /pws/zycie006-descfab.

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

     if itab_itb-paisfab is initial.

* << Fim da inclusão

      /pws/zycie080a-landa = /pws/zycie006-paisfab.

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

     else.

       /pws/zycie080a-landa   = itab_itb-paisfab.

     endif.

* << Fim da inclusão

    ENDIF.

    PERFORM load_pais USING    /pws/zycie080a-landa

                      CHANGING a_spais2 a_pais2.

  ENDIF.

ENDFORM.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI023O01

...

      LOOP AT SCREEN.

        IF NOT screen-group1 IS INITIAL.

          screen-invisible = '1'.

          CASE screen-group1.

            WHEN 'F3'.

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

              IF '01' ca wa_it-fabric .

* << Fim da exclusão

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

              IF '1' CA /PWS/ZYCIE006-FABRICANTE .

* << Fim da inclusão

                screen-invisible = '0'.

              ENDIF.

            WHEN 'F1' OR 'F2'.

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

              IF '23' CA wa_it-fabric.

* << Fim da exclusão

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

              IF '023' CA /PWS/ZYCIE006-FABRICANTE.

* << Fim da inclusão

                screen-invisible = '0'.

              ENDIF.

            WHEN 'ALL'.

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

              IF '012' CA wa_it-fabric.

* << Fim da exclusão

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

              IF '012' CA /PWS/ZYCIE006-FABRICANTE.

* << Fim da inclusão

                screen-invisible = '0'.

              ENDIF.

          ENDCASE.

          MODIFY SCREEN.

        ENDIF.

      ENDLOOP.

    WHEN '0312'.

      LOOP AT SCREEN.

        screen-invisible = '0'.

        IF screen-group1 = 'UNK'.

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

          IF wa_it-fabric NE '3'.

* << Fim da exclusão

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

          IF /PWS/ZYCIE006-FABRICANTE NE '3'.

* << Fim da inclusão

            screen-invisible = '1'.

          ENDIF.

        ELSE.

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

          IF wa_it-fabric EQ '3'.

* << Fim da exclusão

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

          IF /PWS/ZYCIE006-FABRICANTE EQ '3'.

* << Fim da inclusão

            screen-invisible = '1'.

          ENDIF.

        ENDIF.

        MODIFY SCREEN.

      ENDLOOP.

...

 

...

 /pws/zycie116-periodic.

    a_1indice     = a_2indice     = a_3indice     =

 /pws/zycie116-indice.

    a_1valtot     = a_2valtot     = a_3valtot     =

 /pws/zycie116-valtot.

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

    IF     itab_zycit003-fabric EQ '1'.

* << Fim da exclusão

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

     if /pws/zycie006-fabricante eq '1'.

* << Fim da inclusão

      PERFORM load_forn USING: /pws/zycie006-lifnr '800'.

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

    ELSEIF itab_zycit003-fabric EQ '2'.

* << Fim da exclusão

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

    ELSEIF /pws/zycie006-fabricante CA '02'.

* << Fim da inclusão

      PERFORM load_forn USING: /pws/zycie006-lifnr '800'.

      IF itab_zycit003-flagfabr = 'N'.

        /pws/zycie080a-name1 = itab_zycit003-descfab.

        /pws/zycie080a-landa = /pws/zycie006-paisfab.

        CLEAR: /pws/zycie080a-logradouro, /pws/zycie080a-nrlogr,

 /pws/zycie080a-compl,

               /pws/zycie080a-city, /pws/zycie080a-regio.

      ELSE.

        PERFORM load_forn USING itab_zycit003-lifnrfabr '80A'.

      ENDIF.

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

    ELSEIF itab_zycit003-fabric EQ '3'.

* << Fim da exclusão

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

    ELSEIF /pws/zycie006-fabricante EQ '3'.

* << Fim da inclusão

      PERFORM load_forn USING /pws/zycie006-lifnr '800'.

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

    ELSEIF itab_zycit003-fabric EQ '0'.

        PERFORM load_forn USING itab_zycit003-lifnrfabr '800'.

      /pws/zycie080a-name1 = itab_zycit003-descfab.

      /pws/zycie080a-landa = /pws/zycie006-paisfab.

* << Fim da exclusão

    ENDIF.

    PERFORM: load_cncm USING wa_it-j_1bnbm,

             load_pais USING wa_it-porigem CHANGING a_spais a_pais,

             load_pais USING /pws/zycie080-landa CHANGING a_spais1

a_pais1,

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI023X01

 

...

        ad_devido     LIKE /pws/zycie085-vlfob,

        ad_recolher   LIKE /pws/zycie085-vlfob,

        vlfobr        LIKE /pws/zycie100a-vlfre,

        codcambial    like /pws/zycie006-codcambial,

        inco_item     like /pws/zycit001-inco1,

* >> Início da inclusão:

        paisfab       like /pws/zycit003-paisfab,

* << Fim da inclusão

        mark,

END OF itab_it.

DATA: BEGIN OF itab_zycit049 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycie049.

DATA:   tipo      LIKE /pws/zycit019-tipo,

...

 

 

 

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

Modificações efetuadas em TABL /PWS/ZYCIE003

 

 

 

    Campos

 

         Nome campo   Elem.dados    Tab.verif.    N CtDt Comp. Grupo

 

 

DE  :    PAISFAB      /PWS/ZYCIL042                 CHAR     3

PARA:    PAISFAB      /PWS/ZYCIL042 T005            CHAR     3