CE PLUS - Nota 007279

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 08/09/2008 00:00:00

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

Descrição da Nota: QUANDO FATURA DE SERVIÇO LIVRE DE DÉBITO RECLAMA DE QUE NÃO POSSUI BL.

Sintoma

Quando há itens de serviço, reclama de que não possui bl.

 

 

Solução

Verificar se é item de serviço ou se é fatura livre de débito.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ERRO NO DOCUMENTO CONTÁBIL E VALORES DO EMBARQUE

Informações Complementares

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

Nota Número 07279 Data: 08/09/2008 Hora: 16:24:09

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

 

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

Nota Número              : 07279

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00006

Agrupamento              : 00064

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

Referência às notas relacionadas:

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

 

06865  - 00001 - 7.0    - 00006  - ERRO NO DOCUMENTO CONTÁBIL E VALORES DO EMBARQUE

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

QUANDO FATURA DE SERVIÇO LIVRE DE DÉBITO RECLAMA DE QUE NÃO POSSUI BL.

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

Palavras Chave:

ITENS DE SERVIÇO - BL - FATURA DE SERVIÇO

 

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

Objetos da nota:

REPS /PWS/MZYCI001F01

REPS /PWS/MZYCI001F02

REPS /PWS/MZYCI003F01

REPS /PWS/MZYCI003O01

REPS /PWS/MZYCI017F03

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F01

 

...

         /pws/zycie001-j_1bbranch

         v_lifnr

         /pws/zycie003-ebeln

         /pws/zycie006-nrseq

         e_status

      TO MEMORY ID '003'.

    EXPORT itab_sele[]

      TO MEMORY ID 'IP003B'.

    IF v_status_s = 1.

      IF NOT /pws/zycie001-modalidade EQ '02'.

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

        SELECT SINGLE * FROM /pws/zycit094              "#EC CI_NOFIRST

* << Fim da exclusão

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

        IF ( /pws/zycie001-modalidade EQ '03' AND

            itab_zycit003-servico EQ 'X' ) .

        ELSE.

         SELECT SINGLE * FROM /pws/zycit094             "#EC CI_NOFIRST

* << Fim da inclusão

         WHERE nrseq = /pws/zycie001-nrseq.

        IF sy-subrc NE 0.

          MESSAGE s061 WITH text-026 text-027.

          EXIT.

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

          ENDIF.

* << Fim da inclusão

        ENDIF.

      ENDIF.

      PERFORM valida_trans USING '/PWS/ZYCI003_C' ''.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F02

 

...

  ENDIF.

  LOOP AT itab_zycit006 WHERE tpfatura NE '01'.

    p_contab = 'X'.

    EXIT.

  ENDLOOP.

  IF p_contab = 'X'.

    MESSAGE i015 WITH text-474.

    EXIT.

  ENDIF.

  LOOP AT itab_zycit006 WHERE tpfatura = '01'.

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

    IF itab_zycit006-belnr_p EQ space .

* << Fim da exclusão

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

    IF ( itab_zycit006-belnr_p EQ space and

    not itab_zycit006-frpagto eq 'A') .

* << Fim da inclusão

      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_contab = 'X'.

          EXIT.

        ENDLOOP.

        IF p_contab = 'X'.

          EXIT.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F01

 

 

...

        v_subrc TYPE c.

  READ TABLE itab_zycit003 INDEX 1.

  SELECT SINGLE nrseqce FROM /pws/zycit094

    INTO v_nrseqce

    WHERE nrseq = itab_zycit003-nrseq.                  "#EC CI_NOFIRST

  SELECT SINGLE * FROM /pws/zycit001 INTO /pws/zycie001

  WHERE nrseq = itab_zycit003-nrseq.

  IF /pws/zycie001-modalidade EQ '02'.

    v_subrc = 'X'.

  ENDIF.

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

  IF v_subrc NE 'X'.

* << Fim da exclusão

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

  IF v_subrc NE 'X' .

    IF ( /pws/zycie001-modalidade EQ '03' AND

         itab_zycit003-servico EQ 'X' ).

    ELSE.

* << Fim da inclusão

    SELECT * FROM /pws/zycit094 INTO TABLE itab_zycit094

       WHERE nrseqce = v_nrseqce.

    /pws/zycie006-nrseqce = v_nrseqce.

    IF /pws/zycie006-nrseqce IS INITIAL.

      MESSAGE s015 WITH text-075.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

  ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003O01

 

...

      SELECT SINGLE * FROM /pws/zycit001 INTO /pws/zycie001

             WHERE nrseq EQ itab_zycit003-nrseq.

    ENDIF.

  ELSEIF sy-subrc EQ 0.

    IF NOT itab_sele[] IS INITIAL AND

       itab_zycit003[] IS INITIAL.

      SELECT * FROM /pws/zycit003

        INTO TABLE itab_zycit003

        WHERE nrseq = /pws/zycie001-nrseq.

      LOOP AT itab_zycit003.

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

        READ TABLE itab_sele WITH KEY ebeln = itab_sele-ebeln

                                      ebelp = itab_sele-ebelp.

* << Fim da exclusão

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

        READ TABLE itab_sele WITH

               KEY ebeln = itab_zycit003-ebeln

                   ebelp = itab_zycit003-ebelp.

* << Fim da inclusão

        IF sy-subrc NE 0.

          DELETE itab_zycit003.

        ENDIF.

      ENDLOOP.

    ENDIF.

    CLEAR okcode.

    MOVE: /pws/zycie001-bukrs   TO /pws/zycie006-bukrs  ,

          /pws/zycie001-inco1   TO /pws/zycie006-inco1,

          /pws/zycie001-waers   TO /pws/zycie006-waers_emb.

    IF  ( NOT /pws/zycie006-tpfatura EQ '02' OR

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017F03

 

...

    WHERE nrseq = /pws/zycit100-nrseq.                  "#EC CI_NOFIRST

    SELECT * FROM /pws/zycit006 INTO TABLE itab_zycit006

                  WHERE nrseqce = /pws/zycit094-nrseqce AND

                        eliminado = space AND

                        belnr_p   = space.              "#EC CI_NOFIELD

    LOOP AT itab_zycit006 WHERE tpfatura NE '01'.

      itab_zycit006-eliminado = 'X'.

      EXIT.

    ENDLOOP.

    LOOP AT itab_zycit006 WHERE tpfatura = '01'.

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

      IF NOT itab_zycit006-frpagto = 'A'.

* << Fim da inclusão

      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.

          itab_zycit006-eliminado = 'X'.

          EXIT.

        ENDLOOP.

        IF itab_zycit006-eliminado = 'X'.

          EXIT.

        ENDIF.

      ELSE.

        itab_zycit006-eliminado = 'X'.

        EXIT.

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

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDLOOP.

    IF itab_zycit006-eliminado = 'X'.

      MESSAGE i015 WITH text-262.

      EXIT.

    ENDIF.

  ENDIF.

  IF /pws/zycit001-modalidade = '99'.

    READ TABLE itab_nf INDEX 1.

    IF sy-subrc NE 0.

...