CE PLUS - Nota 008546

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 17/06/2009 00:00:00

Data/Hora Última Alteração: 22/02/2011 16:14:37

Descrição da Nota: AO NAVEGAR NO DETALHE DO ITEM DA FATURA, ITENS PERDE FORNECEDOR.

Sintoma

Ao navegar no detalhe do item da fatura, itens perde fornecedor.

 

 

Solução

não apagar fornecedor ao navegar nos itens.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

FATURA COM PROBLEMA NO TIPO DE FABRICANTE

PREENCHIMENTO DA AUTOMATICO DO FABRICANTE NA FATURA.

ERROS NA FATURA AO UTILIZAR TIPOS DE FABRICANTE 0,2 E 3.

Informações Complementares

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

Nota Número 08546 Data: 17/06/2009 Hora: 11:11:29

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

 

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

Nota Número              : 08546

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00010

Agrupamento              : 00101

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

Referência às notas relacionadas:

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

 

03551  - 00001 - 7.0    - 00001  - ERROS NA FATURA AO UTILIZAR TIPOS DE FABRICANTE 0,2 E 3.

07566  - 00002 - 7.0    - 00007  - PREENCHIMENTO DA AUTOMATICO DO FABRICANTE NA FATURA.

08514  - 00003 - 7.0    - 00009  - FATURA COM PROBLEMA NO TIPO DE FABRICANTE

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

AO NAVEGAR NO DETALHE DO ITEM DA FATURA, ITENS PERDE FORNECEDOR.

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

Palavras Chave:

FATURA - FORNECEDOR - TRANSMISSÃO SISCOMEX - DI

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCI003                        0400

REPS /PWS/MZYCI003F01

REPS /PWS/MZYCI003F02

REPS /PWS/MZYCI003I01

REPS /PWS/MZYCI003O01

REPS /PWS/MZYCI003X01

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F01

 

...

 

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

    MOVE-CORRESPONDING itab_zycit003 TO /pws/zycie003.

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

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

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

      ELSE.

        CLEAR /pws/zycie003-lifnrfabr.

      ENDIF.

    ENDIF.

* << Fim da exclusão

    LEAVE TO SCREEN '0400'.

  ELSE.

    IF v_consiste = '0'.

      MESSAGE s015 WITH text-024.

    ELSE.

      MESSAGE s015 WITH text-052.

    ENDIF.

  ENDIF.

ENDFORM.

 

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F02

 

...

    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.

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

    LOOP AT itab_zycit003.

      itab_zycit003-fabric  = '1'.

      MODIFY itab_zycit003.

    ENDLOOP.

* << Fim da exclusão

    LOOP AT itab_zycit003.

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

            /pws/zycie006-lifnrfabr TO itab_zycit003-lifnrfabr,

            /pws/zycie006-flagfabr TO itab_zycit003-flagfabr.

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

      MODIFY: itab_zycit003.

      UPDATE /pws/zycit003

          SET descfab   = itab_zycit003-descfab

              lifnrfabr = itab_zycit003-lifnrfabr

              flagfabr  = itab_zycit003-flagfabr

              paisfab   = itab_zycit003-paisfab

...

 

...

    v_flag = 'X'.

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

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

    v_flag = 'X'.

    CLEAR: /pws/zycie006-descfab,

    /pws/zycie006-paisfab ,

    /pws/zycie006-lifnrfabr,

    /pws/zycie006-flagfabr.

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

    LOOP AT itab_zycit003.

      itab_zycit003-fabric  = '3'.

      MODIFY itab_zycit003.

    ENDLOOP.

* << Fim da exclusão

    LOOP AT itab_zycit003.

      CLEAR:  itab_zycit003-descfab,

              itab_zycit003-lifnrfabr, itab_zycit003-flagfabr.

      MOVE: '3' TO itab_zycit003-fabric.

      MODIFY: itab_zycit003.

      UPDATE /pws/zycit003

          SET descfab   = itab_zycit003-descfab

              lifnrfabr = itab_zycit003-lifnrfabr

              flagfabr  = itab_zycit003-flagfabr

              paisfab   = itab_zycit003-paisfab

      WHERE nrseq EQ itab_zycit003-nrseq

...

 

...

 

  SELECT SINGLE * FROM lfa1

    WHERE lifnr EQ /pws/zycie006-lifnr.

  LOOP AT itab_zycit003.

    itab_zycit003-paquis = lfa1-land1.

    IF NOT itab_zycit003-lifnrfabr IS INITIAL.

      SELECT SINGLE land1 FROM lfa1

        INTO itab_zycit003-porigem

        WHERE lifnr EQ itab_zycit003-lifnrfabr.

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

      IF sy-subrc EQ 0.

        itab_zycit003-flagfabr = 'S'.

      ELSE.

        CLEAR itab_zycit003-flagfabr.

      ENDIF.

* << Fim da inclusão

    ELSE.

      IF NOT itab_zycit003-fabric EQ '3'.

        CLEAR itab_zycit003-porigem.

      ENDIF.

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

      CLEAR itab_zycit003-flagfabr.

* << Fim da inclusão

    ENDIF.

    MODIFY itab_zycit003.

  ENDLOOP.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI003I01

 

...

 

MODULE altera_item INPUT.

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

  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  .

    ELSE.

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

    ENDIF.

    /pws/zycie003-porigem = /pws/zycie003-paisfab.

    IF NOT /pws/zycie006-fabricante IS INITIAL.

      /pws/zycie003-flagfabr = 'S'.

    ENDIF.

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

      CLEAR lfa1.

      SELECT SINGLE *

        FROM lfa1

        WHERE lifnr EQ /pws/zycie003-lifnrfabr.

      IF sy-subrc EQ 0.

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

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

      ENDIF.

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

      CLEAR /pws/zycie003-lifnrfabr.

    ENDIF.

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

    /pws/zycie003-porigem = /pws/zycie003-paisfab.

  ENDIF.

* << Fim da exclusão

  MOVE-CORRESPONDING /pws/zycie003 TO itab_zycit003.

  MODIFY itab_zycit003 INDEX v_index_det.

ENDMODULE.

 

...

 

...

 

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

MODULE consiste_fabr INPUT.

ENDMODULE.

* << Fim da exclusão

...

 

...

 

* >> Início da inclusão:

module consiste_fabr input.

  CLEAR lfa1.

  SELECT SINGLE *

    FROM lfa1

    WHERE lifnr EQ /pws/zycie003-lifnrfabr.

  IF sy-subrc EQ 0.

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

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

  ENDIF.

endmodule.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI003O01

 

...

 

MODULE exibe_detalhe OUTPUT.

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

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

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

    ELSE.

      CLEAR /pws/zycie003-lifnrfabr.

    ENDIF.

  ENDIF.

* << Fim da exclusão

ENDMODULE.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003X01

 

...

 

* >> Início da exclusão:

DATA: v_paisfab VALUE 'X'.

* << Fim da exclusão

* >> Início da inclusão:

DATA: v_paisfab.

* << Fim da inclusão

...