Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DI
Data/Hora da Publicação: 09/03/2012 00:00:00
Data/Hora Última Alteração: 25/04/2014 10:46:07
Descrição da Nota: CAMPOS HABILITADOS PARA ALTERAÇÃO QUANDO FATURA POSSUI DI.
Sintoma
Há campos habilitados para alteração quando fatura possui DI.
Solução
Fechar campos após criação da DI
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 12024 Data: 09/03/2012 Hora: 14:54:20
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 12024
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 8.0
Pacote : 00010
Agrupamento : 00107
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04937 - 00001 - 7.0 - 00003 - NECESSÁRIO EXIT PARA CÁLCULO DE VALOR REALIZADO NA FATURA
11731 - 00002 - 8.0 - 00009 - FECHAR O CAMPO PESO LÍQUIDO NA FATURA APÓS A CRIAÇÃO DA DI OU DSI
11739 - 00003 - 8.0 - 00009 - AO CRIAR FATURA SEM MARCAR ITEM, TABELA FICA ERRADA
----------------------------------------------------------------------------------------------------
CAMPOS HABILITADOS PARA ALTERAÇÃO QUANDO FATURA POSSUI DI.
----------------------------------------------------------------------------------------------------
Palavras Chave:
CAMPOS ABERTOS - FATURA COM DI - ALTERAÇÃO
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI003 0100
REPS /PWS/MZYCI003F01
REPS /PWS/MZYCI003F02
REPS /PWS/MZYCI003O01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI003 0100
*Acrescentar AC ao grupo 2 do campo /PWS/ZYCIE001-EMBARCA
MODIFICAR CAMPO TEXTO "/PWS/ZYCIE001-EMBARCA"
Grupo 2 AC
*Modificar numeração das colunas da Tabstrip
EXCLUIR ÁREA DE SUB-TELA "SS_DED" em tbl.contr./tabstr.
EXCLUIR BOTÃO "TAB_DED" em tbl.contr./tabstr.
MODIFICAR BOTÃO "TAB_FAT_PARC" em tbl.contr./tabstr.
Coluna 7
MODIFICAR BOTÃO "TAB_IMP" em tbl.contr./tabstr.
Coluna 9
MODIFICAR BOTÃO "TAB_REC" em tbl.contr./tabstr.
Coluna 8
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0100
...
MODULE: status_0100,
status_custom_0100,
set_screen,
exit_tela.
FIELD /pws/zycie006-bukrs MODULE authority_empresa.
CALL SUBSCREEN:
ss_itens INCLUDING syst-cprog '0106',
ss_cabec INCLUDING syst-cprog '0101',
ss_porigem INCLUDING syst-cprog '0102',
ss_desp INCLUDING syst-cprog '0107',
* >> Início da exclusão:
ss_ded INCLUDING syst-cprog '0109',
* << Fim da exclusão
ss_banco INCLUDING syst-cprog '0108',
ss_fat_parc INCLUDING syst-cprog '0111',
ss_camb INCLUDING syst-cprog '0350',
ss_imp INCLUDING syst-cprog '0113',
ss_rec INCLUDING syst-cprog '0110'.
CALL SUBSCREEN ss_html INCLUDING syst-cprog v_tela_help.
PROCESS AFTER INPUT.
FIELD /pws/zycie006-nrseqce MODULE call_bl.
FIELD /pws/zycie006-j_1bbranch MODULE trata_filial.
CALL SUBSCREEN:
ss_itens,
ss_cabec,
ss_porigem,
ss_desp,
* >> Início da exclusão:
ss_ded,
* << Fim da exclusão
ss_banco,
ss_fat_parc,
ss_camb,
ss_imp,
ss_rec.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F01
...
FORM selecionar_itens.
* >> Início da inclusão: FORM SELECIONAR_ITENS
DATA BEGIN OF itab_zycit003_aux2 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit003.
DATA END OF itab_zycit003_aux2.
* << Fim da inclusão
...
/pws/zycit003~nrseq_pgfat /pws/zycit003~waers
/pws/zycit003~waers_real /pws/zycit003~waers_mov
/pws/zycit003~waers_dif /pws/zycit003~descfab
/pws/zycit003~paisfab /pws/zycit003~mtart /pws/zycit003~werks
/pws/zycit003~lifnr /pws/zycit003~j_1bnbm
/pws/zycit003~fabric /pws/zycit003~nrseqcacl
/pws/zycit003~qtd_itencacl /pws/zycit003~indic_obrig
/pws/zycit003~porigem /pws/zycit003~paquis
/pws/zycit003~mfrpn /pws/zycit003~lifnrfabr
/pws/zycit003~flagfabr
* >> Início da inclusão: FORM SELECIONAR_ITENS
/pws/zycit003~matnr
* << Fim da inclusão
/pws/zycit003~nrseqda
/pws/zycit003~inco1
FROM ( /pws/zycit003 INNER JOIN /pws/zycit001
ON /pws/zycit003~nrseq = /pws/zycit001~nrseq )
INTO CORRESPONDING FIELDS OF TABLE itab_zycit003_aux
WHERE /pws/zycit003~nrseq IN so_nrseq
AND /pws/zycit003~ebeln IN so_ebeln
AND /pws/zycit003~lifnr IN itab_lifnr
AND /pws/zycit003~waers IN so_waers
AND /pws/zycit003~nrseq_pgfat EQ space
AND /pws/zycit001~bukrs EQ pa_bukrs
AND /pws/zycit003~inco1 IN itab_inco1
AND /pws/zycit001~j_1bbranch EQ pa_impor.
* >> Início da inclusão: FORM SELECIONAR_ITENS
IF sy-subrc EQ 0.
SELECT * FROM /pws/zycit003
INTO TABLE itab_zycit003_aux2
FOR ALL ENTRIES IN itab_zycit003_aux
WHERE nrseq = itab_zycit003_aux-nrseq
AND ebeln = itab_zycit003_aux-ebeln
AND ebelp = itab_zycit003_aux-ebelp.
IF sy-subrc EQ 0.
LOOP AT itab_zycit003_aux.
READ TABLE itab_zycit003_aux2 WITH KEY
nrseq = itab_zycit003_aux-nrseq
ebeln = itab_zycit003_aux-ebeln
ebelp = itab_zycit003_aux-ebelp.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING itab_zycit003_aux2 TO itab_zycit003_aux.
MODIFY itab_zycit003_aux.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F02
...
READ TABLE itab_zyglt100 WITH KEY zexit = 'FAT012' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
IF e_subrc EQ 0.
IF ( sy-tcode EQ '/PWS/ZYCI003_C' AND
/pws/zycie006-tpfatura = '01' AND
* >> Início da exclusão: FORM TP_FATURA
itab_sele[] IS INITIAL ) .
* << Fim da exclusão
* >> Início da inclusão: FORM TP_FATURA
itab_sele[] IS INITIAL AND
v_importou EQ 'X' ).
* << Fim da inclusão
MESSAGE e015 WITH text-218.
ENDIF.
IF sy-ucomm = 'ENTE' OR sy-ucomm = 'SAVE'.
IF /pws/zycie001-regime = '16'.
IF /pws/zycie006-tpfatura = '01'
OR /pws/zycie006-tpfatura = '02'
OR /pws/zycie006-tpfatura = '03'.
MESSAGE e013 WITH text-167.
ENDIF.
ENDIF.
...
...
FORM atualiza_fornecedor.
* >> Início da exclusão: FORM ATUALIZA_FORNECEDOR
IF v_paisfab NE 'X' .
* << Fim da exclusão
IF v_tpfabr EQ '0'.
itab_zycit003-lifnrfabr = /pws/zycie006-lifnrfabr.
itab_zycit003-descfab = /pws/zycie006-descfab .
itab_zycit003-paisfab = /pws/zycie006-paisfab.
ELSE.
IF sy-dynnr = '0106'.
itab_zycit003-lifnrfabr = /pws/zycie003-lifnrfabr.
itab_zycit003-descfab = /pws/zycie003-descfab .
itab_zycit003-paisfab = /pws/zycie003-paisfab.
IF v_tpfabr EQ '3' .
/pws/zycie003-porigem = itab_zycit003-porigem =
/pws/zycie003-paisfab.
ENDIF.
ENDIF.
ENDIF.
PERFORM carrega_descr.
CLEAR v_paisfab.
* >> Início da exclusão: FORM ATUALIZA_FORNECEDOR
ENDIF.
* << Fim da exclusão
IF sy-ucomm EQ 'SAVE' AND
v_tpfabr EQ '2' AND
/pws/zycie006-tpfatura EQ '01'.
IF /pws/zycie003-descfab IS INITIAL OR
/pws/zycie003-paisfab IS INITIAL.
IF /pws/zycie003-fabric NE '3'.
MESSAGE e015 WITH text-205.
ENDIF.
ENDIF.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003O01
...
* >> Início da inclusão: MODULE LOAD_DATA
IF NOT /pws/zycie094-nrseqce IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085
WHERE nrbl EQ /pws/zycie094-nrseqce.
IF sy-subrc EQ 0.
v_di = 'X'.
ENDIF.
ENDIF.
* << Fim da inclusão
ENDMODULE.
...
...
IF screen-name = 'TAB_REC'.
IF /pws/zycie006-tpfatura = '11'.
screen-invisible = '0'.
ELSE.
screen-invisible = '1'.
ENDIF.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF screen-name EQ '/PWS/ZYCIE001-EMBARCA' AND
v_di = 'X' .
screen-input = 0.
ENDIF.
* << Fim da inclusão
MODIFY SCREEN.
ENDLOOP.
WHEN '0102' OR '0105'.
LOOP AT SCREEN.
IF v_status_s = 0 OR sy-tcode = '/PWS/ZYCI003_M'.
screen-input = '0'.
MODIFY SCREEN.
ELSEIF v_status_s = 1 AND screen-group1 NE 'OUT'.
screen-input = '1' .
MODIFY SCREEN.
ENDIF.
IF screen-name = '/PWS/ZYCIE006-WAERS_EMB' AND
/pws/zycie006-waers_emb IS INITIAL.
screen-input = '1'.
MODIFY SCREEN.
ELSEIF screen-name = '/PWS/ZYCIE006-WAERS_EMB' AND
NOT /pws/zycie006-waers_emb IS INITIAL.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF v_di = 'X' .
screen-input = 0.
MODIFY SCREEN.
ENDIF.
* << Fim da inclusão
ENDLOOP.
...
...
MODIFY SCREEN.
ENDIF.
ENDIF.
IF NOT /pws/zycie006-nrseq_pgfat IS INITIAL AND
screen-name = '/PWS/ZYCIE006-TPFATURA'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
IF NOT itab_zycit100[] IS INITIAL AND
screen-name = '/PWS/ZYCIE006-NTGEW'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF v_di = 'X' .
screen-input = 0.
MODIFY SCREEN.
ENDIF.
* << Fim da inclusão
ENDLOOP.
IF /pws/zycie006-vlmerc IS INITIAL AND
/pws/zycie006-vlfre IS INITIAL AND
/pws/zycie006-vlseg IS INITIAL.
CLEAR /pws/zycie006-vltotal.
ENDIF.
...
...
LOOP AT tc_banco-cols INTO wa_cols.
wa_cols-screen-input = '0'.
MODIFY tc_banco-cols FROM wa_cols.
ENDLOOP.
ELSEIF v_status_s = 1.
LOOP AT tc_banco-cols INTO wa_cols.
wa_cols-screen-input = '1'.
IF v_existe_bol = 'X' AND wa_cols-screen-group4 = 'BOL'.
wa_cols-screen-input = 0.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF v_di EQ 'X' .
wa_cols-screen-input = 0.
ENDIF.
* << Fim da inclusão
MODIFY tc_banco-cols FROM wa_cols.
ENDLOOP.
ENDIF.
...
...
LOOP AT tc_ded-cols INTO wa_cols.
wa_cols-screen-input = '0'.
MODIFY tc_ded-cols FROM wa_cols.
ENDLOOP.
ELSE.
IF v_existe_bol = 'X'.
LOOP AT tc_ded-cols INTO wa_cols.
wa_cols-screen-input = 0.
MODIFY tc_ded-cols FROM wa_cols.
ENDLOOP.
ENDIF.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF v_di EQ 'X' .
LOOP AT tc_ded-cols INTO wa_cols.
wa_cols-screen-input = 0.
MODIFY tc_ded-cols FROM wa_cols.
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDIF.
...
...
wa_cols-screen-name EQ 'V_BANCO' OR
wa_cols-screen-name EQ 'V_AGENCIA' OR
wa_cols-screen-name EQ '/PWS/ZYCIE126-CONTA'.
wa_cols-screen-input = '0'.
ELSE.
wa_cols-screen-input = '1'.
ENDIF.
ENDIF.
IF v_existe_bol = 'X' AND wa_cols-screen-group3 = 'BOL'.
wa_cols-screen-input = 0.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF v_di = 'X' .
wa_cols-screen-input = '0'.
ENDIF.
* << Fim da inclusão
MODIFY tc_cambio-cols FROM wa_cols.
ENDLOOP.
ENDIF.
...
...
NOT itab_zycit132-belnr_p IS INITIAL.
IF NOT itab_zycit003-toinv IS INITIAL .
IF screen-name EQ 'ITAB_ZYCIT003-TOINV'.
screen-input = 0.
ENDIF.
ENDIF.
ENDIF.
IF screen-name = '/PWS/ZYCIE003-PAISFAB' AND
v_status_s <> 0.
IF sy-tcode NE '/PWS/ZYCIE003_E'.
* >> Início da inclusão: MODULE SET_SCREEN_TC_0106
IF v_di IS INITIAL.
* << Fim da inclusão
screen-input = 1.
* >> Início da inclusão: MODULE SET_SCREEN_TC_0106
ELSE.
screen-input = 0.
ENDIF.
* << Fim da inclusão
ELSE.
screen-input = 0.
ENDIF.
IF ( /pws/zycit000-land1 EQ 'PE' AND
...
...
* >> Início da inclusão: MODULE SET_SCREEN_TC_0106
IF v_di = 'X' .
LOOP AT tc_itens-cols INTO wa_cols.
wa_cols-screen-input = '0'.
MODIFY tc_itens-cols FROM wa_cols.
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDMODULE.
...
...
IF v_status_s NE '1'.
screen-input = '0' .
ENDIF.
IF NOT itab_zycit100[] IS INITIAL AND
screen-name = '/PWS/ZYCIE003-NTGEW'.
screen-input = 0.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN_0400
IF v_di = 'X' .
screen-input = 0.
MODIFY SCREEN.
ENDIF.
* << Fim da inclusão
MODIFY SCREEN.
ENDLOOP.
ENDMODULE.
...
...
ENDCASE.
* >> Início da inclusão: MODULE SET_TABLE
IF v_di = 'X'.
LOOP AT SCREEN.
screen-input = 0.
MODIFY SCREEN.
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDMODULE.
...
...
* >> Início da inclusão: MODULE SET_SCREEN_109
IF v_di EQ 'X' .
screen-input = 0.
ENDIF.
* << Fim da inclusão
MODIFY SCREEN.
ENDLOOP.
ENDIF.
ENDMODULE.
...
...
MODULE set_tc_screen_108 OUTPUT.
* >> Início da inclusão: MODULE SET_TC_SCREEN_108
IF v_di = 'X' .
LOOP AT tc_banco-cols INTO wa_cols.
wa_cols-screen-input = '0'.
MODIFY tc_banco-cols FROM wa_cols.
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDMODULE.
...