Módulo: DRAWBACK
Funcionalidade: Relatórios
Data/Hora da Publicação: 29/04/2009 00:00:00
Data/Hora Última Alteração: 01/03/2010 18:38:18
Descrição da Nota: RELATÓRIO DE VERIFICAÇÃO DA INTEGRIDADE DOS DADOS DO DRAWBACK
Sintoma
Relatório de verificação da integridade dos dados do drawback
Solução
Relatório de verificação da integridade dos dados do drawback
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 08354 Data: 29/04/2009 Hora: 14:33:56
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 08354
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00009
Agrupamento : 00096
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
RELATÓRIO DE VERIFICAÇÃO DA INTEGRIDADE DOS DADOS DO DRAWBACK
----------------------------------------------------------------------------------------------------
Palavras Chave:
RELATÓRIO DE VERIFICAÇÃO DA INTEGRIDADE DOS DADOS DO DRAWBACK
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/ZYCIR348
REPT /PWS/ZYCIR348
TRAN /PWS/ZYCIR348
REPS /PWS/ZYCIR349
REPT /PWS/ZYCIR349
TRAN /PWS/ZYCIR349
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCIR348
*Criar o programa /PWS/ZYCIR348:
*Caracteristicas:
Título: CI - Embarques apropriados e não comprovados
Categoria: Programa executável
Status:
Aplicação:
Grupo de autorização:
Cl.desenvolvimento: /PWS/ZYCI
Banco de dados lógico:
Versão tela seleção:
Aritmética em ponto fixo : Ativo
*Código fonte:
* >> Início da inclusão:
REPORT /pws/zycir348 MESSAGE-ID /pws/zycim.
TABLES /pws/zycit282.
INCLUDE /pws/z_rel_alv.
DATA: BEGIN OF itab_zycit282 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit282.
DATA: END OF itab_zycit282.
DATA: BEGIN OF itab_zycit282_aux OCCURS 0.
INCLUDE STRUCTURE /pws/zycit282.
DATA: END OF itab_zycit282_aux.
DATA: BEGIN OF itab_zycit248 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit248.
DATA: END OF itab_zycit248.
DATA: BEGIN OF itab_zycet001 OCCURS 0 ,
nrseq TYPE /pws/zycet001-nrseq ,
dtaverb TYPE /pws/zycet001-dtaverb ,
END OF itab_zycet001.
DATA: BEGIN OF itab_final OCCURS 0 ,
nrseqd TYPE /pws/zycit282-nrseqd ,
nrseqexp TYPE /pws/zycit282-nrseqexp ,
vbeln_va TYPE /pws/zycit282-vbeln_va ,
aupos TYPE /pws/zycit282-aupos ,
vbeln_vl TYPE /pws/zycit282-vbeln_vl ,
posnl TYPE /pws/zycit282-posnl ,
vbeln_vf TYPE /pws/zycit282-posnr ,
posnr TYPE /pws/zycit282-posnr ,
docnum TYPE /pws/zycit282-docnum ,
matnr_exp TYPE /pws/zycit282-matnr_exp,
qtd_mexp TYPE /pws/zycit282-qtd_mexp ,
meins TYPE /pws/zycit282-meins_e ,
dtaverb TYPE /pws/zycet001-dtaverb ,
averbado(4) TYPE c ,
selk ,
col ,
END OF itab_final .
DATA: v_cont(3) TYPE n ,
v_lines TYPE i ,
v_pct(3) TYPE n ,
v_tabix TYPE sy-tabix ,
v_text(30) TYPE c .
DATA: v_formato.
DATA: v_selinfo TYPE c VALUE 'X'.
DATA: v_varian LIKE disvariant.
DATA: v_marc LIKE ttab-tabname VALUE 'X'.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: p_nrseqd FOR /pws/zycit282-nrseqd OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-019.
PARAMETERS: v_zebra AS CHECKBOX,
v_otim AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b2.
INITIALIZATION.
START-OF-SELECTION.
PERFORM seleciona_dados.
PERFORM move_dados.
IF NOT itab_final[] IS INITIAL.
PERFORM e04_comment_build USING gt_list_top_of_page[].
PERFORM fieldcat.
PERFORM monta_rel_alv.
ELSE.
MESSAGE i002.
EXIT.
ENDIF.
END-OF-SELECTION.
FORM seleciona_dados.
SELECT * FROM /pws/zycit282 INTO TABLE itab_zycit282
WHERE nrseqd IN p_nrseqd. "#EC CI_NOFIRST
SELECT * FROM /pws/zycit248 INTO TABLE itab_zycit248
WHERE nrseqd IN p_nrseqd.
itab_zycit282_aux[] = itab_zycit282[].
SORT itab_zycit282_aux BY nrseqexp.
DELETE ADJACENT DUPLICATES FROM itab_zycit282_aux COMPARING nrseqexp.
IF NOT itab_zycit282_aux[] IS INITIAL.
SELECT nrseq dtaverb FROM /pws/zycet001 INTO TABLE itab_zycet001
FOR ALL ENTRIES IN itab_zycit282_aux
WHERE nrseq = itab_zycit282_aux-nrseqexp.
ELSE.
MESSAGE i002.
EXIT.
ENDIF.
ENDFORM.
FORM move_dados.
SORT itab_zycit282 BY nrseqexp vbeln_va aupos vbeln_vf posnr docnum
vbeln_vl posnl.
DELETE ADJACENT DUPLICATES FROM itab_zycit282 COMPARING nrseqexp
vbeln_va aupos vbeln_vf posnr docnum vbeln_vl posnl.
DESCRIBE TABLE itab_zycit282 LINES v_lines.
LOOP AT itab_zycit282.
v_tabix = sy-tabix.
v_cont = v_cont + 1.
READ TABLE itab_zycit248 WITH KEY nrseqd = itab_zycit282-nrseqd
vbeln_va = itab_zycit282-vbeln_va
aupos = itab_zycit282-aupos
vbeln_vl = itab_zycit282-vbeln_vl
posnl = itab_zycit282-posnl
nrseq = itab_zycit282-nrseqexp.
IF sy-subrc NE 0.
CLEAR itab_zycet001.
READ TABLE itab_zycet001 WITH KEY nrseq = itab_zycit282-nrseqexp.
MOVE:
itab_zycit282-nrseqd TO itab_final-nrseqd ,
itab_zycit282-nrseqexp TO itab_final-nrseqexp ,
itab_zycit282-vbeln_va TO itab_final-vbeln_va ,
itab_zycit282-aupos TO itab_final-aupos ,
itab_zycit282-vbeln_vl TO itab_final-vbeln_vl ,
itab_zycit282-posnl TO itab_final-posnl ,
itab_zycit282-vbeln_vf TO itab_final-vbeln_vf ,
itab_zycit282-posnr TO itab_final-posnr ,
itab_zycit282-docnum TO itab_final-docnum ,
itab_zycit282-matnr_exp TO itab_final-matnr_exp ,
itab_zycit282-qtd_mexp TO itab_final-qtd_mexp ,
itab_zycit282-meins_e TO itab_final-meins ,
itab_zycet001-dtaverb TO itab_final-dtaverb .
IF itab_final-dtaverb IS INITIAL.
itab_final-averbado = '@5D@'.
ELSE.
itab_final-averbado = '@5C@'.
ENDIF.
APPEND itab_final.
ENDIF.
IF v_cont = 1000.
CLEAR v_cont.
v_pct = v_tabix / v_lines * 100.
CONCATENATE text-018 v_pct '%' INTO v_text.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = v_text.
ENDIF.
ENDLOOP.
ENDFORM.
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = gt_list_top_of_page.
ENDFORM.
FORM e04_comment_build USING gt_list_top_of_page TYPE slis_t_listheader.
DATA: ls_line TYPE slis_listheader,
v_data(10) TYPE c,
v_data1(10) TYPE c,
v_hora1(10) TYPE c,
v_hora(10) TYPE c.
v_data = sy-datum.
v_hora = sy-uzeit.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = text-001.
APPEND ls_line TO gt_list_top_of_page.
IF NOT v_data IS INITIAL.
CONCATENATE v_data+6(2) '/' v_data+4(2) '/' v_data(4) INTO v_data1.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-key = text-002.
ls_line-info = v_data1.
APPEND ls_line TO gt_list_top_of_page.
ENDIF.
IF NOT v_hora IS INITIAL.
CONCATENATE v_hora(2) ':' v_hora+2(2) ':' v_hora+4(2) INTO v_hora1.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-key = text-003.
ls_line-info = v_hora1.
APPEND ls_line TO gt_list_top_of_page.
ENDIF.
ENDFORM.
FORM fieldcat.
DATA i TYPE i.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'NRSEQD'.
afield-ref_fieldname = 'NRSEQD'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 10.
afield-reptext_ddic = text-004.
afield-seltext_s = text-004.
afield-seltext_m = text-004.
afield-seltext_l = text-004.
afield-just = 'C'.
afield-hotspot = 'X'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'NRSEQEXP'.
afield-ref_fieldname = 'NRSEQEXP'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 10.
afield-reptext_ddic = text-005.
afield-seltext_s = text-005.
afield-seltext_m = text-005.
afield-seltext_l = text-005.
afield-just = 'C'.
afield-hotspot = 'X'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'VBELN_VA'.
afield-ref_fieldname = 'VBELN_VA'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 10.
afield-reptext_ddic = text-006.
afield-seltext_s = text-006.
afield-seltext_m = text-006.
afield-seltext_l = text-006.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'AUPOS'.
afield-ref_fieldname = 'AUPOS'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 5.
afield-reptext_ddic = text-007.
afield-seltext_s = text-007.
afield-seltext_m = text-007.
afield-seltext_l = text-007.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'VBELN_VL'.
afield-ref_fieldname = 'VBELN_VL'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 10.
afield-reptext_ddic = text-008.
afield-seltext_s = text-008.
afield-seltext_m = text-008.
afield-seltext_l = text-008.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'POSNL'.
afield-ref_fieldname = 'POSNL'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 5.
afield-reptext_ddic = text-009.
afield-seltext_s = text-009.
afield-seltext_m = text-009.
afield-seltext_l = text-009.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'VBELN_VF'.
afield-ref_fieldname = 'VBELN_VF'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 10.
afield-reptext_ddic = text-010.
afield-seltext_s = text-010.
afield-seltext_m = text-010.
afield-seltext_l = text-010.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'POSNR'.
afield-ref_fieldname = 'POSNR'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 5.
afield-reptext_ddic = text-011.
afield-seltext_s = text-011.
afield-seltext_m = text-011.
afield-seltext_l = text-011.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'DOCNUM'.
afield-ref_fieldname = 'DOCNUM'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 10.
afield-reptext_ddic = text-012.
afield-seltext_s = text-012.
afield-seltext_m = text-012.
afield-seltext_l = text-012.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'MATNR_EXP'.
afield-ref_fieldname = 'MATNR_EXP'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 20.
afield-reptext_ddic = text-013.
afield-seltext_s = text-013.
afield-seltext_m = text-013.
afield-seltext_l = text-013.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'QTD_MEXP'.
afield-ref_fieldname = 'QTD_MEXP'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 15.
afield-reptext_ddic = text-014.
afield-seltext_s = text-014.
afield-seltext_m = text-014.
afield-seltext_l = text-014.
afield-qfieldname = 'MEINS'.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'MEINS'.
afield-ref_fieldname = 'MEINS_E'.
afield-ref_tabname = '/PWS/ZYCIT282'.
afield-outputlen = 3.
afield-reptext_ddic = text-017.
afield-seltext_s = text-017.
afield-seltext_m = text-017.
afield-seltext_l = text-017.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'DTAVERB'.
afield-ref_fieldname = 'DTAVERB'.
afield-ref_tabname = '/PWS/ZYCET001'.
afield-outputlen = 10.
afield-reptext_ddic = text-015.
afield-seltext_s = text-015.
afield-seltext_m = text-015.
afield-seltext_l = text-015.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'AVERBADO'.
afield-ref_fieldname = 'SISCOMEX'.
afield-ref_tabname = '/PWS/ZYCIT248'.
afield-outputlen = 2.
afield-reptext_ddic = text-016.
afield-seltext_s = text-016.
afield-seltext_m = text-016.
afield-seltext_l = text-016.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
ENDFORM.
FORM user_command USING ucomm LIKE sy-ucomm
selfield TYPE slis_selfield.
CASE ucomm.
WHEN 'BEAN'.
READ TABLE itab_final INDEX selfield-tabindex.
REPLACE '1-' WITH ' ' INTO selfield-sel_tab_field.
CONDENSE selfield-sel_tab_field NO-GAPS.
feld = selfield-sel_tab_field.
IF feld = 'NRSEQEXP'.
SET PARAMETER ID '/PWS/ZYCEP001' FIELD itab_final-nrseqexp.
CALL TRANSACTION '/PWS/ZYCE003_E' "#EC CI_CALLTA
AND SKIP FIRST SCREEN.
ENDIF.
IF feld = 'NRSEQD'.
SET PARAMETER ID '/PWS/ZYCIP435' FIELD itab_final-nrseqd.
CALL TRANSACTION '/PWS/ZYCI040_E' "#EC CI_CALLTA
AND SKIP FIRST SCREEN.
ENDIF.
ENDCASE.
ENDFORM.
FORM monta_rel_alv.
v_repid = sy-repid.
IF NOT itab_final[] IS INITIAL.
CALL FUNCTION '/PWS/ZYGL_GERA_RELATORIO_ALV'
EXPORTING
v_program = v_repid
v_pf_status = ' '
v_user_command = 'USER_COMMAND'
v_top_of_page = 'TOP_OF_PAGE'
v_marc = 'X'
v_selinfo = 'X'
v_zebra = v_zebra
v_otimizado = v_otim
TABLES
i_fieldcat = i_fieldcat
t_data = itab_final
it_sort = i_sort.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/ZYCIR348
*Textos
001 Embarques apropriados e não comprovados
002 Data:
003 Hora:
004 Nr. Seq. Ato Concessório
005 Nr. Seq. Embarque
006 Orden de venda
007 Item da OV
008 Fornecimento
009 Item do Fornecimento
010 Faturamento
011 Item do Faturamento
012 Documento
013 Material
014 Quantidade
015 Dt. Averbação
016 Situação
017 UM
018 Verificando...
019 Critério de Seleção
*Textos de seleção
P_NRSEQD Ato Concessório
V_OTIM Otimizado
V_ZEBRA Zebrado
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCIR348
*Criação da transação /PWS/ZYCIR348
----------------------------------------------------------------------------------------------------
Modificações efetuadas em MENU /PWS/ZYCID
* Incluir o Relatório /PWS/ZYCIR348 no menu de Drawback
...
Vinculação de Importação
Siscomex
Entrada de Notas Fiscais (Mercado Interno)
Relatórios
Comprovação de Exportações (SISCOMEX)
Controle das Exportações
Controle das Importações
Forecast
Notas Fiscais de Entrada
Comprovação de Drawback Intermediário
Controle de Vencimento dos Atos Concessórios
Relatório de Comprovação de Atos Genérico
Listagem Geral de Atos Concessórios por Modalidade
Comprovação das Exportações
Comprovação das Importações
Apropriações dos RE¿s por Ato concessório
Apropriações das DI¿s por Ato concessório
Follow Up
Mapa geral dos saldos do Ato Concessório
Controle de LI`s por Ato Concessório
Relatório Gerencial das Economias Realizadas
Laudo de Insumo X Produto e Produto X Insumo
Relatório de vinculação dos Pedidos de Importação
Rel. de saldo à importar Drawback Isenção
Relat. DI X RE (Isenção)
Relat. RE X DI (Isenção)
Relatório de Nacionalização
* << Inicio da inclusão
Embarques apropriados e não comprovados
* << Fim da inclusão
Comprovação Drawback Intermediário-Importação / Comercial Exportadora
Parâmetros
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCIR349
*Criar o programa /PWS/ZYCIR349:
*Caracteristicas:
Título: Verificação das Comprovações das Importações
Categoria: Programa executável
Status:
Aplicação:
Grupo de autorização:
Cl.desenvolvimento: /PWS/ZYCI
Banco de dados lógico:
Versão tela seleção:
Aritmética em ponto fixo : Ativo
*Código fonte:
* >> Início da inclusão:
REPORT /pws/zycir349 MESSAGE-ID /pws/zycim.
TABLES /pws/zycit279.
INCLUDE /pws/z_rel_alv.
DATA: BEGIN OF itab_zycit282 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit282.
DATA: END OF itab_zycit282.
DATA: BEGIN OF itab_zycit282_aux OCCURS 0.
INCLUDE STRUCTURE /pws/zycit282.
DATA: END OF itab_zycit282_aux.
DATA: BEGIN OF itab_zycit279 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit279.
DATA: END OF itab_zycit279.
DATA: BEGIN OF itab_zycit470 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit470.
DATA: END OF itab_zycit470.
DATA: BEGIN OF itab_zycit470_aux OCCURS 0.
INCLUDE STRUCTURE /pws/zycit470.
DATA: END OF itab_zycit470_aux.
DATA: BEGIN OF itab_final OCCURS 0 ,
nrseqd TYPE /pws/zycit279-nrseqd ,
nrseq TYPE /pws/zycit279-nrseq ,
ebeln TYPE /pws/zycit279-ebeln ,
ebelp TYPE /pws/zycit279-ebelp ,
matnr TYPE /pws/zycit279-ebelp ,
qtd_comp TYPE /pws/zycit279-menge ,
qtd_apr TYPE /pws/zycit279-menge ,
qtd_dif TYPE /pws/zycit279-menge ,
meins TYPE /pws/zycit279-meins ,
selk ,
col ,
END OF itab_final .
DATA: v_tot TYPE /pws/zycit279-menge ,
v_saldo TYPE /pws/zycit279-menge ,
v_lines TYPE i ,
v_pct(3) TYPE n ,
v_tabix TYPE sy-tabix ,
v_text(30) TYPE c .
DATA: v_formato.
DATA: v_selinfo TYPE c VALUE 'X'.
DATA: v_varian LIKE disvariant.
DATA: v_marc LIKE ttab-tabname VALUE 'X'.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-015.
SELECT-OPTIONS: p_nrseqd FOR /pws/zycit279-nrseqd OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-015.
PARAMETERS: v_zebra AS CHECKBOX,
v_otim AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b2.
INITIALIZATION.
START-OF-SELECTION.
PERFORM seleciona_dados.
PERFORM move_dados.
IF NOT itab_final[] IS INITIAL.
PERFORM e04_comment_build USING gt_list_top_of_page[].
PERFORM fieldcat.
PERFORM monta_rel_alv.
ELSE.
MESSAGE i039 WITH text-014.
EXIT.
ENDIF.
END-OF-SELECTION.
FORM seleciona_dados.
SELECT * FROM /pws/zycit282 INTO TABLE itab_zycit282
WHERE nrseqd IN p_nrseqd. "#EC CI_NOFIRST
SELECT * FROM /pws/zycit279 INTO TABLE itab_zycit279
WHERE nrseqd IN p_nrseqd. "#EC CI_NOFIRST
SELECT * FROM /pws/zycit470 INTO TABLE itab_zycit470
WHERE nrseqd IN p_nrseqd. "#EC CI_NOFIRST
IF itab_zycit282[] IS INITIAL OR itab_zycit279[] IS INITIAL.
MESSAGE i002.
EXIT.
ENDIF.
ENDFORM.
FORM move_dados.
DESCRIBE TABLE itab_zycit279 LINES v_lines.
LOOP AT itab_zycit279.
v_tabix = sy-tabix.
REFRESH: itab_zycit282_aux, itab_zycit470_aux.
CLEAR: itab_zycit282_aux, itab_zycit470_aux, itab_final, v_tot,
v_saldo.
itab_zycit282_aux[] = itab_zycit282[].
itab_zycit470_aux[] = itab_zycit470[].
DELETE itab_zycit282_aux WHERE nrseqd NE itab_zycit279-nrseqd OR
nrseqimp NE itab_zycit279-nrseq OR
ebeln NE itab_zycit279-ebeln OR
ebelp NE itab_zycit279-ebelp.
DELETE itab_zycit470_aux WHERE nrseqd NE itab_zycit279-nrseqd OR
nrseq NE itab_zycit279-nrseq OR
ebeln NE itab_zycit279-ebeln OR
ebelp NE itab_zycit279-ebelp.
v_saldo = itab_zycit279-menge - itab_zycit279-slqtde.
LOOP AT itab_zycit282_aux.
v_tot = v_tot + itab_zycit282_aux-qtd_mimp.
ENDLOOP.
LOOP AT itab_zycit470_aux.
v_tot = v_tot + itab_zycit470_aux-qtd.
ENDLOOP.
IF v_saldo NE v_tot.
MOVE: itab_zycit279-nrseqd TO itab_final-nrseqd ,
itab_zycit279-nrseq TO itab_final-nrseq ,
itab_zycit279-ebeln TO itab_final-ebeln ,
itab_zycit279-ebelp TO itab_final-ebelp ,
itab_zycit279-matnr TO itab_final-matnr ,
v_saldo TO itab_final-qtd_comp ,
v_tot TO itab_final-qtd_apr ,
itab_zycit279-meins TO itab_final-meins .
itab_final-qtd_dif = v_tot - v_saldo.
APPEND itab_final.
ENDIF.
v_pct = v_tabix / v_lines * 100.
CONCATENATE text-013 v_pct '%' INTO v_text.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_pct
text = v_text.
ENDLOOP.
ENDFORM.
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = gt_list_top_of_page.
ENDFORM.
FORM e04_comment_build USING gt_list_top_of_page TYPE slis_t_listheader.
DATA: ls_line TYPE slis_listheader,
v_data(10) TYPE c,
v_data1(10) TYPE c,
v_hora1(10) TYPE c,
v_hora(10) TYPE c.
v_data = sy-datum.
v_hora = sy-uzeit.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = text-001.
APPEND ls_line TO gt_list_top_of_page.
IF NOT v_data IS INITIAL.
CONCATENATE v_data+6(2) '/' v_data+4(2) '/' v_data(4) INTO v_data1.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-key = text-002.
ls_line-info = v_data1.
APPEND ls_line TO gt_list_top_of_page.
ENDIF.
IF NOT v_hora IS INITIAL.
CONCATENATE v_hora(2) ':' v_hora+2(2) ':' v_hora+4(2) INTO v_hora1.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-key = text-003.
ls_line-info = v_hora1.
APPEND ls_line TO gt_list_top_of_page.
ENDIF.
ENDFORM.
FORM fieldcat.
DATA i TYPE i.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'NRSEQD'.
afield-ref_fieldname = 'NRSEQD'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 10.
afield-reptext_ddic = text-004.
afield-seltext_s = text-004.
afield-seltext_m = text-004.
afield-seltext_l = text-004.
afield-just = 'C'.
afield-hotspot = 'X'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'NRSEQ'.
afield-ref_fieldname = 'NRSEQ'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 10.
afield-reptext_ddic = text-005.
afield-seltext_s = text-005.
afield-seltext_m = text-005.
afield-seltext_l = text-005.
afield-just = 'C'.
afield-hotspot = 'X'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'EBELN'.
afield-ref_fieldname = 'EBELN'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 10.
afield-reptext_ddic = text-006.
afield-seltext_s = text-006.
afield-seltext_m = text-006.
afield-seltext_l = text-006.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'EBELP'.
afield-ref_fieldname = 'EBELP'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 5.
afield-reptext_ddic = text-007.
afield-seltext_s = text-007.
afield-seltext_m = text-007.
afield-seltext_l = text-007.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'MATNR'.
afield-ref_fieldname = 'MATNR'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 20.
afield-reptext_ddic = text-008.
afield-seltext_s = text-008.
afield-seltext_m = text-008.
afield-seltext_l = text-008.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'QTD_COMP'.
afield-ref_fieldname = 'MENGE'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 15.
afield-reptext_ddic = text-009.
afield-seltext_s = text-009.
afield-seltext_m = text-009.
afield-seltext_l = text-009.
afield-qfieldname = 'MEINS'.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'QTD_APR'.
afield-ref_fieldname = 'MENGE'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 15.
afield-reptext_ddic = text-010.
afield-seltext_s = text-010.
afield-seltext_m = text-010.
afield-seltext_l = text-010.
afield-qfieldname = 'MEINS'.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'QTD_DIF'.
afield-ref_fieldname = 'MENGE'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 15.
afield-reptext_ddic = text-011.
afield-seltext_s = text-011.
afield-seltext_m = text-011.
afield-seltext_l = text-011.
afield-qfieldname = 'MEINS'.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
i = i + 1.
CLEAR afield.
afield-col_pos = i.
afield-fieldname = 'MEINS'.
afield-ref_fieldname = 'MEINS'.
afield-ref_tabname = '/PWS/ZYCIT279'.
afield-outputlen = 3.
afield-reptext_ddic = text-012.
afield-seltext_s = text-012.
afield-seltext_m = text-012.
afield-seltext_l = text-012.
afield-just = 'C'.
APPEND afield TO i_fieldcat.
ENDFORM.
FORM user_command USING ucomm LIKE sy-ucomm
selfield TYPE slis_selfield.
CASE ucomm.
WHEN 'BEAN'.
READ TABLE itab_final INDEX selfield-tabindex.
REPLACE '1-' WITH ' ' INTO selfield-sel_tab_field.
CONDENSE selfield-sel_tab_field NO-GAPS.
feld = selfield-sel_tab_field.
IF feld = 'NRSEQD'.
SET PARAMETER ID '/PWS/ZYCIP435' FIELD itab_final-nrseqd.
CALL TRANSACTION '/PWS/ZYCI040_E' "#EC CI_CALLTA
AND SKIP FIRST SCREEN.
ENDIF.
IF feld = 'NRSEQ'.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD itab_final-nrseq.
CALL TRANSACTION '/PWS/ZYCI001_E'
AND SKIP FIRST SCREEN. "#EC CI_CALLTA
ENDIF.
ENDCASE.
ENDFORM.
FORM monta_rel_alv.
v_repid = sy-repid.
IF NOT itab_final[] IS INITIAL.
CALL FUNCTION '/PWS/ZYGL_GERA_RELATORIO_ALV'
EXPORTING
v_program = v_repid
v_pf_status = ' '
v_user_command = 'USER_COMMAND'
v_top_of_page = 'TOP_OF_PAGE'
v_marc = 'X'
v_selinfo = 'X'
v_zebra = v_zebra
v_otimizado = v_otim
TABLES
i_fieldcat = i_fieldcat
t_data = itab_final
it_sort = i_sort.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/ZYCIR349
*Textos
001 Verificação das comprovações das importações
002 Data:
003 Hora:
004 Ato Concessório
005 Embarque
006 Pedido
007 Item
008 Material
009 Qtd. Comprovada
010 Qtd. Apropriada
011 Diferença
012 UM
013 Verificando...
014 Não foram encontrados dados inconsistentes!
015 Critério de Seleção
*Textos de seleção
P_NRSEQD Ato Concessório
V_OTIM Otimizado
V_ZEBRA Zebrado
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCIR349
*Criação da transação /PWS/ZYCIR349