Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Fatura Mercadoria
Data/Hora da Publicação: 12/01/2011 00:00:00
Data/Hora Última Alteração: 22/02/2011 16:23:56
Descrição da Nota: INCLUÍDO TRATAMENTO PARA FATURA TIPO P EM PROCESSOS QUE UTILIZEM A ANA.
Sintoma
Não é possível contabilizar fatura P quando utilizado ANA.
Solução
Incluído tratamento para Fatura tipo P em processos que utilizem a ANA.
8.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 10884 Data: 12/01/2011 Hora: 16:03:46
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 10884
Categoria : Melhoria
Prioridade : Baixa
Versão PW.CE : 8.0
Pacote : 00006
Agrupamento : 00054
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01986 - 00001 - 6.0 - 00024 - ERRO NO CUSTO EFETIVO E FATURA DO TIPO P
03893 - 00002 - 7.0 - 00001 - AJUSTE DE PERFORMANCE NA CRIAÇÃO DA FATURA
04525 - 00003 - 7.0 - 00002 - AJUSTE PARA REALIZAR O RATEIO DE IMPOSTOS DE ACORDO COM A ANA
07255 - 00004 - 7.0 - 00006 - REMOVIDA VERIF. DE FORNEC. NACIONAL PARA FATURAS CONTAB. PELA MIR
10514 - 00005 - 8.0 - 00004 - FATURA EM REAIS NÃO VÃO PARA O CÂMBIO.
10782 - 00006 - 8.0 - 00005 - AO CRIAR FATURA PELO MENU /PWS/ZYCI EXIBE MENSAGENS INCORRETAS.
10866 - 00007 - 8.0 - 00006 - ERRO NO BOTÃO VOLTAR NA FATURA QUANDO É EXIBIÇÃO.
----------------------------------------------------------------------------------------------------
INCLUÍDO TRATAMENTO PARA FATURA TIPO P EM PROCESSOS QUE UTILIZEM A ANA.
----------------------------------------------------------------------------------------------------
Palavras Chave:
TRATAMENTO - FATURA - TIPO - P - ANA -
/PWS/SAPMZYCI059 - /PWS/SAPMZYCI003
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI003F01
REPS /PWS/MZYCI003F02
REPS /PWS/MZYCI003I01
REPS /PWS/MZYCI059F03
REPT /PWS/SAPMZYCI059
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F01
...
IF sy-subrc EQ 0.
v_contabiliza = 'S'.
ENDIF.
ENDIF.
IF v_congela IS INITIAL.
READ TABLE itab_zycit003 INDEX 1.
SELECT SINGLE *
FROM /pws/zycit042
WHERE nrseq EQ itab_zycit003-nrseq
AND docnum NE ''. "#EC CI_NOFIRST
* >> Início da exclusão: FORM ROTINA_DE_CONTABILIZACAO
IF sy-subrc NE 0 OR /pws/zycie006-tpfatura NE '01'.
* << Fim da exclusão
* >> Início da inclusão: FORM ROTINA_DE_CONTABILIZACAO
IF sy-subrc NE 0 OR /pws/zycie006-tpfatura NE '01'
OR ( NOT /pws/zycit085-nana IS INITIAL AND
NOT /pws/zycit085-dtreg IS INITIAL AND
/pws/zycie006-frpagto EQ 'P' ).
* << Fim da inclusão
IF v_pg_ant2 <> 'X'.
PERFORM contabilizacao_f-02_ou_f-43.
ENDIF.
ELSE.
MESSAGE i015 WITH text-169.
ENDIF.
ELSE.
MESSAGE i015 WITH text-135.
ENDIF.
ENDIF.
...
...
/pws/zycie006-nrseq_pgfat TO /pws/zycbt108-nrseq_pgfat,
/pws/zycie006-vltotal TO /pws/zycbt108-rmwwr,
/pws/zycie006-vltotal TO /pws/zycbt108-slfatcc,
/pws/zycie006-statusp TO /pws/zycbt108-fcont.
IF /pws/zycbt131 IS INITIAL.
MOVE /pws/zycie006-vltotal TO /pws/zycbt108-slfat.
ENDIF.
ENDIF.
/pws/zycbt108-dtincl = /pws/zycie006-dtincl.
/pws/zycbt108-gsber = itab_zycit003-gsber.
* >> Início da exclusão: FORM GRAVAR_CAMBIO
SELECT SINGLE nrdi FROM /pws/zycit085
INTO /pws/zycit085-nrdi
* << Fim da exclusão
* >> Início da inclusão: FORM GRAVAR_CAMBIO
SELECT SINGLE nrdi nana FROM /pws/zycit085
INTO (/pws/zycit085-nrdi, /pws/zycit085-nana)
* << Fim da inclusão
WHERE nrbl = /pws/zycie006-nrseqce . "#EC CI_NOFIELD
MOVE /pws/zycit085-nrdi TO /pws/zycbt108-nrdi.
* >> Início da inclusão: FORM GRAVAR_CAMBIO
IF /pws/zycbt108-nrdi IS INITIAL.
MOVE /pws/zycit085-nana TO /pws/zycbt108-nrdi.
ENDIF.
* << Fim da inclusão
IF /pws/zycie006-frpagto EQ 'A'.
/pws/zycbt108-status = 'E'.
ENDIF.
...
...
READ TABLE itab_zycit003 INDEX 1.
SELECT SINGLE * FROM /pws/zycit100
WHERE ebeln EQ itab_zycit003-ebeln
AND ebelp EQ itab_zycit003-ebelp
AND nrseq EQ itab_zycit003-nrseq. "#EC CI_NOFIRST
IF sy-subrc EQ 0.
SELECT SINGLE * FROM /pws/zycit085
WHERE nrseqdi EQ /pws/zycit100-nrseqdi.
IF sy-subrc EQ 0.
IF NOT /pws/zycit085-dtreg IS INITIAL AND
* >> Início da exclusão: FORM CONSISTE_CAMPOS_OBRIGATORIOS
NOT /pws/zycit085-nrdi IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM CONSISTE_CAMPOS_OBRIGATORIOS
( NOT /pws/zycit085-nrdi IS INITIAL OR
NOT /pws/zycit085-nana IS INITIAL ).
* << Fim da inclusão
v_di = 'X'.
ENDIF.
ENDIF.
ENDIF.
ELSE.
IF NOT /pws/zycit085-dtreg IS INITIAL AND
* >> Início da exclusão: FORM CONSISTE_CAMPOS_OBRIGATORIOS
NOT /pws/zycit085-nrdi IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM CONSISTE_CAMPOS_OBRIGATORIOS
( NOT /pws/zycit085-nrdi IS INITIAL OR
NOT /pws/zycit085-nana IS INITIAL ).
* << Fim da inclusão
v_di = 'X'.
ENDIF.
ENDIF.
IF NOT /pws/zycie006-lifnr IS INITIAL.
SELECT SINGLE land1 INTO v_land1
FROM lfa1 WHERE lifnr EQ /pws/zycie006-lifnr.
IF v_land1 EQ t001-land1 AND
/pws/zycit477 IS INITIAL.
SELECT SINGLE * FROM lfbw WHERE lifnr = /pws/zycie006-lifnr
AND bukrs = /pws/zycie006-bukrs
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F02
...
itab_account-wbs_elem = itab_ekkn_mult-ps_psp_pnr.
APPEND itab_account.
ENDLOOP.
ENDIF.
ENDLOOP.
ENDIF.
READ TABLE itab_zycie033 INDEX 1.
wa_headerdata-invoice_ind = 'X'.
wa_headerdata-pmnttrms = itab_zycie033-zterm.
wa_headerdata-bline_date = itab_zycie033-zfbdt.
* >> Início da inclusão: FORM MIRO_AM_LA
wa_headerdata-exch_rate = itab_zycbe033_aux-kursf.
* << Fim da inclusão
CASE /pws/zycie006-tpfatura.
WHEN '01'.
v_codeven = '001N'.
WHEN '02'.
v_codeven = '001NF'.
WHEN '03'.
v_codeven = '001NS'.
WHEN '04'.
v_codeven = '001NO'.
ENDCASE.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003I01
...
WHEN 'BACK'.
IF itab_zycit003[] IS INITIAL.
LEAVE PROGRAM.
ENDIF.
a_inicio = 'X'.
CLEAR: a_modpa.
SELECT SINGLE *
FROM /pws/zycit085
WHERE nrbl EQ /pws/zycie006-nrseqce
AND nrdi NE ''
* >> Início da inclusão: MODULE USER_COMMAND_0100
AND ( nrdi NE '' OR nana NE '' )
* << Fim da inclusão
AND dtreg NE ''. "#EC CI_NOFIELD
IF sy-subrc EQ 0.
LEAVE PROGRAM.
ENDIF.
IF sy-tcode EQ '/PWS/ZYCI003_L' OR sy-tcode EQ '/PWS/ZYCI003_E' OR
sy-tcode EQ '/PWS/ZYCI003_R' .
CLEAR: v_dbanco, v_dforn, v_dmoeda, v_dmoeda_emb,
v_dtpfatura, v_dfrpagto, /pws/zycie006.
CLEAR v_livre.
CLEAR v_existe_lc.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI059F03
...
FORM salva_fatura.
* >> Início da inclusão: FORM SALVA_FATURA
DATA v_msg TYPE c.
* << Fim da inclusão
DATA: v_belnr_p LIKE /pws/zycie006-belnr_p,
itab_132 LIKE /pws/zycie132 OCCURS 10 WITH HEADER LINE.
LOOP AT itab_zycit006.
MOVE itab_zycit006 TO /pws/zycie006.
FREE: itab_bdc, itab_msg.
REFRESH: itab_bdc, itab_msg.
IF /pws/zycie006 IS INITIAL.
READ TABLE itab_zycit263 INDEX 1.
SELECT SINGLE * FROM /pws/zycit006 "#EC CI_NOFIELD
INTO /pws/zycie006
...
...
itab_bdc-dynpro = '0100'.
itab_bdc-dynbegin = 'X'.
APPEND itab_bdc.
CLEAR itab_bdc.
itab_bdc-fnam = 'BDC_OKCODE'.
itab_bdc-fval = '=SAVE'.
APPEND itab_bdc.
IF v_modo IS INITIAL.
v_modo = 'N'.
ENDIF.
* >> Início da inclusão: FORM SALVA_FATURA
CLEAR itab_bdc.
itab_bdc-program = '/PWS/SAPMZYCI003'.
itab_bdc-dynpro = '0100'.
itab_bdc-dynbegin = 'X'.
APPEND itab_bdc.
CLEAR itab_bdc.
itab_bdc-fnam = 'BDC_OKCODE'.
itab_bdc-fval = '/E%EX'.
APPEND itab_bdc.
DATA wa_opt TYPE ctu_params.
wa_opt-dismode = 'N'.
wa_opt-updmode = 'S'.
wa_opt-racommit = 'X'.
CLEAR: v_msg.
* << Fim da inclusão
CALL TRANSACTION '/PWS/ZYCI003_A' USING itab_bdc
* >> Início da exclusão: FORM SALVA_FATURA
MODE v_modo
UPDATE 'S'
* << Fim da exclusão
* >> Início da inclusão: FORM SALVA_FATURA
OPTIONS FROM wa_opt
* << Fim da inclusão
MESSAGES INTO itab_msg. "#EC CI_CALLTA
IF sy-subrc EQ 0.
SELECT * FROM /pws/zycit132
INTO TABLE itab_132
WHERE nrseq EQ /pws/zycie006-nrseq.
IF sy-subrc EQ 0.
LOOP AT itab_132 WHERE belnr_p IS initial.
MESSAGE w015 WITH text-206 text-207.
* >> Início da inclusão: FORM SALVA_FATURA
v_msg = 'X'.
* << Fim da inclusão
EXIT.
ENDLOOP.
ELSE.
SELECT SINGLE belnr_p FROM /pws/zycit006
INTO v_belnr_p
WHERE nrseq EQ /pws/zycie006-nrseq.
IF v_belnr_p IS INITIAL.
MESSAGE w015 WITH text-206 text-207.
* >> Início da inclusão: FORM SALVA_FATURA
v_msg = 'X'.
* << Fim da inclusão
ENDIF.
ENDIF.
ELSE.
MESSAGE w015 WITH text-206 text-207.
ENDIF.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM SALVA_FATURA
IF v_msg EQ 'X'.
MESSAGE w015 WITH text-239.
ENDIF.
* << Fim da inclusão
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI059
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 239
Texto: (29 caracteres)
"Invoice successfully entered!"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 239
Texto: (32 caracteres)
"Fatura contabilizada com sucesso"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 239
Texto: (32 caracteres)
"Factura contabilizada con suceso"
Comprimento máximo: 50