Módulo: DOC. IMPORTAÇÃO
Funcionalidade: BL
Data/Hora da Publicação: 03/10/2011 00:00:00
Data/Hora Última Alteração: 18/11/2011 08:31:47
Descrição da Nota: TRILHA DE AUDITORIA NO BL
Sintoma
A partir de agora, os programas do PWCE devem gravar log das tabelas - trilha de auditoria.
Solução
Novo tratamento para inclusão de trilha de auditoria, que registrará cada alteração no banco de
dados: inserção, modificação,deleção.
8.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 11505 Data: 03/10/2011 Hora: 09:56:59
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 11505
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 8.0
Pacote : 00009
Agrupamento : 00088
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00094 - 00001 - 6.0 - 00021 - AJUSTES NO CONFLITO COM O JCO
00128 - 00002 - 6.0 - 00021 - VALOR DO FRETE BL ESTÁ GRAVANDO COM VALOR NEGATIVO.
00499 - 00003 - 6.0 - 00022 - CAMPO BUKRS (EMPRESA) DO BL NÃO ESTAVA SENDO PREENCHIDO
01282 - 00004 - 6.0 - 00023 - DESEMVOLVIMENTO DA DECLARAÇÃO DE ADMISSÃO (DA)
01398 - 00005 - 6.0 - 00023 - AJUSTES SY-DATUM / SY-DATLO
01480 - 00006 - 6.0 - 00023 - AJUSTES NO COMPRIMENTO DA DATA, CAMPO FREETIME E DTFORZOSO
01897 - 00007 - 6.0 - 00024 - CUSTO DE FRETE INTERNO NA IMPORTAÇÃO TOTALIZAR O CUSTO DA IMPORTA
02116 - 00008 - 6.0 - 00024 - AO CRIAR A DI ATRAVÉS DO BL NÃO LEVA OS ITENS DO EMBARQUE.
02511 - 00009 - 6.0 - 00025 - TRATAMENTO NO EMBARQUE DE MATERIAL + SERVIÇO E BL VINCULADO
03132 - 00010 - 6.0 - 00026 - DETALHE DO ITEM DA PASTA CONTAINER PROPÕE QUANTIDADE ERRADA
03482 - 00011 - 7.0 - 00001 - SISTEMA NÃO PERMITE ELIMINAR BL MESMO NÃO TENDO FATURA
03958 - 00012 - 7.0 - 00001 - ERRO AO EXCLUIR O BL, MESMO SENDO FATURAS DO TIPO SEVIÇO
04475 - 00013 - 7.0 - 00002 - GRAVAÇÃO DA IDENTIFICAÇÃO DO BL COM CARACTERES E NÚMEROS
04655 - 00014 - 7.0 - 00003 - AJUSTADA MENSAGEM PARA PROCESSOS COM ANA
05203 - 00015 - 7.0 - 00003 - PADRONIZAÇÃO DO PROGRAMA - CODE INSPECTOR BL
05210 - 00016 - 7.0 - 00003 - BL - FRETE EMBARQUE ENTREPOSTO ADUANEIRO
05437 - 00017 - 7.0 - 00003 - CORREÇÃO DA VERIFICAÇÃO DE EXISTENCIA DE FATURA NA EXCLUSÃO DO BL
07473 - 00018 - 7.0 - 00007 - NÃO PERMITIR EXCLUIR O BL SE O PROCESSO TIVER FATURA
07978 - 00019 - 7.0 - 00008 - DESEMBARAÇO BL COM PROCESSOS CONCORRENTES GRAVA INCORRETO O CONTA
08075 - 00020 - 7.0 - 00008 - VERIFICAÇÃO DE QUANTIDADE DE CARACTERES PARA O CAMPO IDENTIFICAÇÃ
08326 - 00021 - 7.0 - 00009 - VERIFICAÇÃO AMPLIADA NO PROGRAMA DO BL
08585 - 00022 - 7.0 - 00010 - APÓS FAZER NF SISTEMA DEIXA MUDAR VALOR DE FRETE NO BL.
09926 - 00023 - 8.0 - 00002 - PERMITE CRIAR DI PARA GRANEL SEM INFORMAR PESO BRUTO DESEMBARCADO
10010 - 00024 - 8.0 - 00003 - NO BL CONTEM CONTAINER GRAVADO COM NÚMERO DE CONTAINER VAZIO
10249 - 00025 - 8.0 - 00003 - AJUSTE PARA PERMITIR TIPO DE CONHECIMENTO 25 PARA TRANSP. MARÍTIM
11208 - 00026 - 8.0 - 00007 - DADOS DO BL - PASTA TRANSPORTE - TIPO DE DOCUMENTO DE CHEGADA DA
11506 - 00027 - 8.0 - 00009 - TRILHA DE AUDITORIA
----------------------------------------------------------------------------------------------------
TRILHA DE AUDITORIA NO BL
----------------------------------------------------------------------------------------------------
Palavras Chave:
BL - UPDATE - DELETE - INSERT - MODIFY - TRILHA DE AUDITORIA
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI002F02
REPS /PWS/MZYCI002TOP
REPS /PWS/MZYCI002X01
REPT /PWS/SAPMZYCI002
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI002F02
...
FORM grava_tabelas.
DATA: v_existe VALUE 'N',
wa_zycit001 LIKE /pws/zycit001.
* >> Início da inclusão: FORM GRAVA_TABELAS
DATA: lt_zycit094 TYPE /pws/zycit094 OCCURS 0 WITH HEADER LINE,
lt_zycit014 TYPE /pws/zycit014 OCCURS 0 WITH HEADER LINE,
lt_zycit055 TYPE /pws/zycit055 OCCURS 0 WITH HEADER LINE.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit093 INTO /pws/zycit093 WHERE
nrseqce = /pws/zycie093-nrseqce.
IF sy-subrc NE 0.
/pws/zycie093-dtuserc = sy-datlo.
/pws/zycie093-usernamec = sy-uname.
ELSE.
IF v_tcode EQ '/PWS/ZYCI002_A'.
/pws/zycie093-dtusera = sy-datlo.
/pws/zycie093-usernamea = sy-uname.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM GRAVA_TABELAS
DELETE itab_zycit055 WHERE nrcontainer IS initial.
IF NOT itab_zycit055[] IS INITIAL.
DESCRIBE TABLE itab_zycit055 LINES /pws/zycie093-qtd_cont.
ENDIF.
MOVE v_gewei TO /pws/zycie093-gewei_b.
* << Fim da inclusão
IF sy-tcode EQ '/PWS/ZYCI002_C' AND v_salvo NE 'X'.
INSERT INTO /pws/zycit093 VALUES /pws/zycie093.
WHILE sy-subrc NE 0.
PERFORM busca_sequencial.
INSERT INTO /pws/zycit093 VALUES /pws/zycie093.
v_existe = 'S'.
ENDWHILE.
IF v_existe = 'S'.
MESSAGE i061 WITH text-083 /pws/zycie093-embarca
text-084 /pws/zycie093-nrseqce.
ENDIF.
* >> Início da inclusão: FORM GRAVA_TABELAS
MOVE-CORRESPONDING /pws/zycie093 TO /pws/zycit093.
PERFORM carrega_log USING '/PWS/ZYCIT093' 'I'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
* << Fim da inclusão
ELSE.
MODIFY /pws/zycit093 FROM /pws/zycie093.
* >> Início da inclusão: FORM GRAVA_TABELAS
MOVE-CORRESPONDING /pws/zycie093 TO /pws/zycit093.
PERFORM carrega_log USING '/PWS/ZYCIT093' 'U'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
SELECT * FROM /pws/zycit094 INTO TABLE lt_zycit094
WHERE nrseqce = /pws/zycie093-nrseqce.
SELECT * FROM /pws/zycit014 INTO TABLE lt_zycit014
WHERE nrseq = /pws/zycie093-nrseqce.
SELECT * FROM /pws/zycit055 INTO TABLE lt_zycit055
WHERE nrseq = /pws/zycie093-nrseqce.
LOOP AT lt_zycit094.
READ TABLE itab_zycit094s WITH KEY nrseqce = lt_zycit094-nrseqce
nrseq = lt_zycit094-nrseq.
IF sy-subrc NE 0.
MOVE-CORRESPONDING lt_zycit094 TO /pws/zycit094.
PERFORM carrega_log USING '/PWS/ZYCIT094' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
* << Fim da inclusão
ENDIF.
* >> Início da exclusão: FORM GRAVA_TABELAS
DELETE itab_zycit055 WHERE nrcontainer IS initial.
IF NOT itab_zycit055[] IS INITIAL.
DESCRIBE TABLE itab_zycit055 LINES /pws/zycie093-qtd_cont.
* << Fim da exclusão
* >> Início da inclusão: FORM GRAVA_TABELAS
ENDLOOP.
LOOP AT lt_zycit014.
READ TABLE itab_zycit014 WITH KEY nrseq = lt_zycit014-nrseq
embarque = lt_zycit014-embarque
tpembal = lt_zycit014-tpembal.
IF sy-subrc NE 0.
MOVE-CORRESPONDING lt_zycit014 TO /pws/zycit014.
PERFORM carrega_log USING '/PWS/ZYCIT014' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
ENDLOOP.
LOOP AT lt_zycit055.
READ TABLE itab_zycit055 WITH KEY nrseq = lt_zycit055-nrseq
embarca = lt_zycit055-embarca
nrcontainer = lt_zycit055-nrcontainer.
IF sy-subrc NE 0.
MOVE-CORRESPONDING lt_zycit055 TO /pws/zycit055.
PERFORM carrega_log USING '/PWS/ZYCIT055' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
* << Fim da inclusão
ENDIF.
* >> Início da exclusão: FORM GRAVA_TABELAS
MOVE v_gewei TO /pws/zycie093-gewei_b.
MODIFY /pws/zycit093 FROM /pws/zycie093.
* << Fim da exclusão
* >> Início da inclusão: FORM GRAVA_TABELAS
ENDLOOP.
* << Fim da inclusão
DELETE FROM /pws/zycit094 WHERE nrseqce = /pws/zycie093-nrseqce.
MODIFY /pws/zycit094 FROM TABLE itab_zycit094s.
DELETE FROM /pws/zycit014 WHERE nrseq = /pws/zycie093-nrseqce.
MODIFY /pws/zycit014 FROM TABLE itab_zycit014.
DELETE FROM /pws/zycit055 WHERE nrseq = /pws/zycie093-nrseqce.
MODIFY /pws/zycit055 FROM TABLE itab_zycit055.
* >> Início da inclusão: FORM GRAVA_TABELAS
LOOP AT itab_zycit094s.
MOVE-CORRESPONDING itab_zycit094s TO /pws/zycit094.
READ TABLE lt_zycit094 WITH KEY nrseqce = itab_zycit094s-nrseqce
nrseq = itab_zycit094s-nrseq.
IF sy-subrc EQ 0.
PERFORM carrega_log USING '/PWS/ZYCIT094' 'U'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ELSE.
PERFORM carrega_log USING '/PWS/ZYCIT094' 'I'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
ENDLOOP.
LOOP AT itab_zycit014.
MOVE-CORRESPONDING itab_zycit014 TO /pws/zycit014.
READ TABLE lt_zycit014 WITH KEY nrseq = itab_zycit014-nrseq
embarque = itab_zycit014-embarque
tpembal = itab_zycit014-tpembal.
IF sy-subrc EQ 0.
PERFORM carrega_log USING '/PWS/ZYCIT014' 'U'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ELSE.
PERFORM carrega_log USING '/PWS/ZYCIT014' 'I'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
ENDLOOP.
LOOP AT itab_zycit055.
MOVE-CORRESPONDING itab_zycit055 TO /pws/zycit055.
READ TABLE lt_zycit055 WITH KEY nrseq = itab_zycit055-nrseq
embarca = itab_zycit055-embarca
nrcontainer = itab_zycit055-nrcontainer.
IF sy-subrc EQ 0.
PERFORM carrega_log USING '/PWS/ZYCIT055' 'U'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ELSE.
PERFORM carrega_log USING '/PWS/ZYCIT055' 'I'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
ENDLOOP.
* << Fim da inclusão
READ TABLE itab_zycit093s WITH KEY nrseqce = /pws/zycie093-nrseqce
identify = /pws/zycie093-identify.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING /pws/zycie093 TO itab_zycit093s.
MODIFY itab_zycit093s INDEX sy-tabix.
ENDIF.
LOOP AT itab_zycit094s.
SELECT SINGLE * FROM /pws/zycit001 INTO wa_zycit001
WHERE nrseq = itab_zycit094s-nrseq.
IF sy-subrc = 0.
MOVE: /pws/zycie093-embarca TO wa_zycit001-navio,
/pws/zycie093-paemb TO wa_zycit001-paorigem,
/pws/zycie093-padest TO wa_zycit001-padest,
/pws/zycie093-paispae TO wa_zycit001-paispao,
/pws/zycie093-paispad TO wa_zycit001-paispa.
MODIFY /pws/zycit001 FROM wa_zycit001.
* >> Início da inclusão: FORM GRAVA_TABELAS
MOVE-CORRESPONDING wa_zycit001 TO /pws/zycit001.
PERFORM carrega_log USING '/PWS/ZYCIT001' 'U'
' ' '/PWS/SAPMZYCI001' /pws/zycit001-nrseq.
* << Fim da inclusão
ENDIF.
ENDLOOP.
COMMIT WORK.
IF sy-subrc EQ 0.
PERFORM salvar_texto.
MESSAGE s017 WITH /pws/zycie093-nrseqce.
IF ( v_tcode EQ '/PWS/ZYCI002_C' OR
v_tcode EQ '/PWS/ZYCI002_A' ).
* >> Início da exclusão: FORM GRAVA_TABELAS
MOVE: itab_zycit094s[] TO itab_zycit094a[],
* << Fim da exclusão
* >> Início da inclusão: FORM GRAVA_TABELAS
MOVE: itab_zycit094s[] TO itab_zycit094a[],
* << Fim da inclusão
/pws/zycie093 TO wa_zycie093,
itab_zycit014[] TO itab_zycit014a[],
itab_zycit055[] TO itab_zycit055a[].
ENDIF.
ELSE.
MESSAGE i015 WITH text-016.
ENDIF.
v_salvo = 'X'.
ENDFORM.
...
...
ENDIF.
LOOP AT itab_zycit006.
v_tabix = sy-tabix.
IF itab_zycit006-tpfatura EQ '01'.
READ TABLE itab_zycit263
WITH KEY nrseq_pgfat = itab_zycit006-nrseq_pgfat.
IF sy-subrc NE 0.
itab_zycit006-eliminado = 'X'.
MODIFY itab_zycit006 INDEX v_tabix.
MODIFY /pws/zycit006 FROM itab_zycit006.
* >> Início da inclusão: FORM TRATA_BOTAO_DELE
MOVE-CORRESPONDING itab_zycit006 TO /pws/zycit006.
PERFORM carrega_log USING '/PWS/ZYCIT006' 'U'
' ' '/PWS/SAPMZYCI003' /pws/zycit006-nrseq.
* << Fim da inclusão
ELSE.
IF itab_zycit263-eliminado = 'X'.
itab_zycit006-eliminado = 'X'.
MODIFY itab_zycit006 INDEX v_tabix.
MODIFY /pws/zycit006 FROM itab_zycit006.
* >> Início da inclusão: FORM TRATA_BOTAO_DELE
MOVE-CORRESPONDING itab_zycit006 TO /pws/zycit006.
PERFORM carrega_log USING '/PWS/ZYCIT006' 'U'
' ' '/PWS/SAPMZYCI003' /pws/zycit006-nrseq.
* << Fim da inclusão
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
COMMIT WORK.
SELECT SINGLE * FROM /pws/zycit006
WHERE nrseqce = /pws/zycie093-nrseqce AND
eliminado = space
AND tpfatura NE '11'. "#EC CI_NOFIELD
IF sy-subrc = 0.
...
...
default_button = '2'
display_cancel_button = 'X'
IMPORTING
answer = v_confirm
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
IF v_confirm EQ '1'.
* >> Início da inclusão: FORM TRATA_BOTAO_DELE
LOOP AT itab_zycit094s.
MOVE-CORRESPONDING itab_zycit094s TO /pws/zycit094.
PERFORM carrega_log USING '/PWS/ZYCIT094' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDLOOP.
LOOP AT itab_zycit014.
MOVE-CORRESPONDING itab_zycit014 TO /pws/zycit014.
PERFORM carrega_log USING '/PWS/ZYCIT014' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDLOOP.
LOOP AT itab_zycit055.
MOVE-CORRESPONDING itab_zycit055 TO /pws/zycit055.
PERFORM carrega_log USING '/PWS/ZYCIT055' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDLOOP.
MOVE-CORRESPONDING /pws/zycie093 TO /pws/zycit093.
PERFORM carrega_log USING '/PWS/ZYCIT093' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
DELETE FROM /pws/zycit055 WHERE nrseq = /pws/zycie093-nrseqce.
* << Fim da inclusão
DELETE FROM /pws/zycit014 WHERE nrseq = /pws/zycie093-nrseqce.
DELETE FROM /pws/zycit094 WHERE nrseqce = /pws/zycie093-nrseqce.
DELETE FROM /pws/zycit093 WHERE nrseqce = /pws/zycie093-nrseqce
AND identify = /pws/zycie093-identify.
DELETE itab_zycit093s WHERE nrseqce = /pws/zycie093-nrseqce.
COMMIT WORK.
IF sy-subrc EQ 0.
MESSAGE s061 WITH text-031 /pws/zycie093-nrseqce text-032.
PERFORM limpa_variaveis.
LEAVE TO SCREEN 0.
...
...
FORM trata_botao200_save.
CLEAR itab_salva.
REFRESH itab_salva.
SELECT * FROM /pws/zycit383
INTO CORRESPONDING FIELDS OF TABLE itab_zycit383aux
WHERE identify = /pws/zycie383-identify AND
nrseqce = /pws/zycie383-nrseqce AND
bukrs = /pws/zycie383-bukrs AND
nrcontainer = /pws/zycie383-nrcontainer.
* >> Início da inclusão: FORM TRATA_BOTAO200_SAVE
LOOP AT itab_zycit383aux.
READ TABLE itab_zycit383 WITH KEY
identify = itab_zycit383aux-identify
nrseqce = itab_zycit383aux-nrseqce
bukrs = itab_zycit383aux-bukrs
nrcont = itab_zycit383aux-nrcont
nrseq = itab_zycit383aux-nrseq
ebeln = itab_zycit383aux-ebeln
ebelp = itab_zycit383aux-ebelp.
IF sy-subrc NE 0.
MOVE-CORRESPONDING itab_zycit383aux TO /pws/zycit383.
PERFORM carrega_log USING '/PWS/ZYCIT383' 'D'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
ENDLOOP.
* << Fim da inclusão
READ TABLE itab_zycit383aux INDEX 1.
IF sy-subrc EQ 0.
DELETE FROM /pws/zycit383
WHERE identify = /pws/zycie383-identify AND
nrseqce = /pws/zycie383-nrseqce AND
bukrs = /pws/zycie383-bukrs AND
nrcontainer = /pws/zycie383-nrcontainer.
ENDIF.
LOOP AT itab_zycit383.
MOVE: itab_zycit383-identify TO itab_salva-identify,
...
...
itab_zycit383-bukrs TO itab_salva-bukrs ,
itab_zycit383-nrcont TO itab_salva-nrcont ,
itab_zycit383-nrseq TO itab_salva-nrseq ,
itab_zycit383-ebeln TO itab_salva-ebeln ,
itab_zycit383-ebelp TO itab_salva-ebelp ,
itab_zycit383-qtd_iten TO itab_salva-qtd_iten.
APPEND itab_salva.
ENDLOOP.
LOOP AT itab_salva.
INSERT INTO /pws/zycit383 VALUES itab_salva.
* >> Início da inclusão: FORM TRATA_BOTAO200_SAVE
MOVE-CORRESPONDING itab_salva TO /pws/zycit383.
READ TABLE itab_zycit383aux WITH KEY
identify = itab_salva-identify
nrseqce = itab_salva-nrseqce
bukrs = itab_salva-bukrs
nrcont = itab_salva-nrcont
nrseq = itab_salva-nrseq
ebeln = itab_salva-ebeln
ebelp = itab_salva-ebelp.
IF sy-subrc EQ 0.
PERFORM carrega_log USING '/PWS/ZYCIT383' 'U'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ELSE.
PERFORM carrega_log USING '/PWS/ZYCIT383' 'I'
' ' '/PWS/SAPMZYCI002' /pws/zycie093-nrseqce.
ENDIF.
* << Fim da inclusão
ENDLOOP.
MESSAGE s015 WITH text-006.
v_nrbl = 1.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI002TOP
PROGRAM /pws/sapmzyci002
MESSAGE-ID /pws/zycim .
* >> Início da inclusão:
INCLUDE /pws/zygllog.
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI002X01
TABLES:
* >> Início da inclusão:
/pws/zycit383 ,
/pws/zycit094 ,
/pws/zycit014 ,
/pws/zycit055 ,
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI002
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 191
Texto: (1 caracteres)
"'"
Comprimento máximo: 1
Comprimento máximo: 1
Comprimento máximo: 1