CE PLUS - Nota 010040

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 06/04/2010 00:00:00

Data/Hora Última Alteração: 07/04/2010 11:01:36

Descrição da Nota: PERMITIR CRIAR A ANA COM FATURA SEM CONTABILIZAÇÃO.

Sintoma

 

O programa não está permitindo gerar a ANA enquanto todas as faturas não estiverem contabilizadas,

em processos de DI o programa só bloqueia o recebimento.

 

Solução

 

Ajustado relatório para verificar apenas as faturas de mercadoria ao criar a ANA.

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTES FRETE INTERNACIONAL E SEGURO PARA EMBARQUES DE REGIME 16

Informações Complementares

 

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

Nota Número 10040 Data: 06/04/2010 Hora: 15:38:31

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

 

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

Nota Número              : 10040

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00003

Agrupamento              : 00016

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

06979  - 00001 - AJUSTES FRETE INTERNACIONAL E SEGURO PARA EMBARQUES DE REGIME 16

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

PERMITIR CRIAR A ANA COM FATURA SEM CONTABILIZAÇÃO.

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

Palavras Chave:

ANA - FATURA - CONTABILIZAÇÃO - CRIAR - MERCADORIA - FRETE - SEGURO

/PWS/SAPMZYCI001 - /PWS/SAPMZYCI059

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

Objetos da nota:

REPS /PWS/MZYCI001F02

REPS /PWS/MZYCI059F01

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F02

 

...

        IF sy-tcode EQ '/PWS/ZYCI001_A' OR sy-tcode EQ '/PWS/ZYCI001_C'.

          PERFORM valida_trans USING '/PWS/ZYCI059_A' 'skip'.

        ELSE.

          PERFORM valida_trans USING '/PWS/ZYCI059_E' 'skip'.

        ENDIF.

      ENDIF.

    ELSE.

      SELECT SINGLE * FROM /pws/zycit093

       WHERE nrseqce = /pws/zycit094-nrseqce.

      IF sy-subrc EQ 0.

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

        PERFORM check_contab_fat CHANGING e_contab.

        IF e_contab EQ 'X'.

          EXIT.

        ENDIF.

* << Fim da exclusão

        MOVE-CORRESPONDING /pws/zycit093 TO wa_zycie085.

        MOVE: /pws/zycit093-nrseqce TO wa_zycie085-nrbl,

              /pws/zycie001-embarca TO wa_zycie085-identify.

        EXPORT wa_zycie085 TO MEMORY ID rimc4.

        IF /pws/zycie001-tpdecl EQ 'DI'.

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

            PERFORM valida_trans USING '/PWS/ZYCI059_C' ''.

          ELSE.

            MESSAGE e015 WITH text-166.

          ENDIF.

...

 

...

FORM check_contab_fat CHANGING p_contab.

  DATA: itab_zycit132 TYPE /pws/zycit132 OCCURS 0 WITH HEADER LINE.

  DATA: itab_zycit006 TYPE /pws/zycit006 OCCURS 0 WITH HEADER LINE.

  CLEAR: itab_zycit006. REFRESH itab_zycit006.

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

  CLEAR p_contab.

* << Fim da inclusão

  IF /pws/zycie001-regime EQ '05' OR

     /pws/zycie001-regime EQ '16'.

    EXIT.

  ENDIF.

  IF /pws/zycit094-nrseqce IS INITIAL.

    SELECT SINGLE * FROM /pws/zycit094

        WHERE nrseq EQ /pws/zycie001-nrseq.             "#EC CI_NOFIRST

  ENDIF.

  IF okcode EQ 'DI'.

    SELECT * FROM /pws/zycit006 INTO TABLE itab_zycit006

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI059F01

 

...

      ELSEIF sy-subrc EQ 0 AND /pws/zycit041-docnum EQ '8888888888'.

        SELECT SINGLE * FROM /pws/zycit043

                                  WHERE nrseq =  /pws/zycit041-nrseq

                                 AND nfglobal = /pws/zycit041-nfglobal.

      ENDIF.

      IF sy-subrc EQ 0 AND  /pws/zycit041-docnum = '8888888888'.

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

        CHECK ok_code NE 'BACK' AND

              ok_code NE 'LEAV'.

* << Fim da inclusão

        MESSAGE i015 WITH text-028.

      ELSE.

        v_changed = '1'.

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

               ON /pws/zycit094~nrseq = /pws/zycit003~nrseq

          WHERE /pws/zycit094~nrseqce = /pws/zycie085-nrbl

             AND servico NE 'X'.

  IF sy-subrc EQ 0.

    CLEAR: itab_zycit006. REFRESH itab_zycit006.

    SELECT * FROM /pws/zycit006 INTO TABLE itab_zycit006

                  WHERE nrseqce = /pws/zycie085-nrbl

                    AND eliminado = space

                    AND frpagto   NE 'P'

                    AND belnr_p   = space.              "#EC CI_NOFIELD

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

    LOOP AT itab_zycit006 WHERE tpfatura NE '01'.

      p_v_bl = 'C'.

      EXIT.

    ENDLOOP.

    IF p_v_bl = 'C'.

      EXIT.

    ENDIF.

* << Fim da exclusão

    LOOP AT itab_zycit006 WHERE tpfatura = '01'.

      SELECT * FROM /pws/zycit132 INTO TABLE itab_zycit132

        WHERE nrseq = itab_zycit006-nrseq

          AND eliminado = space.

      IF sy-subrc EQ 0.

        LOOP AT itab_zycit132 WHERE belnr_p EQ space.

          p_v_bl = 'C'.

          EXIT.

        ENDLOOP.

        IF p_v_bl = 'C'.

...