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.
7.0
Produto:
Nota
Descrição
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.
...