Módulo: DRAWBACK
Funcionalidade: CE Reports Formulários
Data/Hora da Publicação: 26/02/2008 00:00:00
Data/Hora Última Alteração: 17/02/2011 15:19:06
Descrição da Nota: AGRUPAMENTO DE ITENS COM O MESMO NCM E DI / RE
Sintoma
O programa não está agrupando os itens com mesmo NCM pertencentes à mesma DI / RE.
Solução
O programa foi atualizado para agrupar os itens com mesmo NCM e DI / RE.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 06026 Data: 26/02/2008 Hora: 10:05:04
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 06026
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00004
Agrupamento : 00036
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
03751 - 00001 - 7.0 - 00001 - AJUSTE NO PROGRAMA PARA TRAZER A DESCRIÇÃO DE CADA NCM
04498 - 00002 - 7.0 - 00002 - AJUSTE NA MASCARA DO NUMERO DA DI NO RUD IMPORTAÇÃO
04982 - 00003 - 7.0 - 00003 - ADICIONADA A DESCRIÇÃO DOS NCM'S
05043 - 00004 - 7.0 - 00003 - ATUALIZAÇÃO DA MOEDA E VALOR NO LOCAL DE EMBARQUE
06000 - 00005 - 7.0 - 00004 - PROCESSOS ENVOLVENDO TRADING COMPANIES
----------------------------------------------------------------------------------------------------
AGRUPAMENTO DE ITENS COM O MESMO NCM E DI / RE
----------------------------------------------------------------------------------------------------
Palavras Chave:
AGRUPAMENTO DE ITENS COM O MESMO NCM E DI / RE RUD IMPORTAÇÃO EXPORTAÇÃO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/ZYCRR002
REPS /PWS/ZYCRR006
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCRR002
...
TYPES: nrre TYPE /pws/zycit259-nrre,
dtre TYPE /pws/zycit259-dtre,
j_1bnbm TYPE /pws/zycit259-j_1bnbm,
gewei TYPE /pws/zycit259-gewei,
ntgew TYPE /pws/zycit259-ntgew,
qtd_iten TYPE /pws/zycit259-qtd_iten,
meins TYPE /pws/zycit259-meins,
vl_fob TYPE /pws/zycit259-vlfob,
waersfob TYPE /pws/zycit259-waersfob,
vl_cif TYPE /pws/zycit259-vlcif,
* >> Início da exclusão:
maktx TYPE makt-maktx,
* << Fim da exclusão
nfnum TYPE /pws/zycit259-nfnum,
serie TYPE /pws/zycit259-serie,
dtnf TYPE /pws/zycit259-dtnf,
* >> Início da inclusão:
maktx(200) TYPE c,
* << Fim da inclusão
subtot TYPE c,
j_1bnbmtot TYPE /pws/zycit259-j_1bnbm,
ntgewtot TYPE /pws/zycit259-ntgew,
qtd_tot TYPE /pws/zycit279-qtd_perda,
...
...
p_cabecalho-p_proc1 = p_proc1.
p_cabecalho-p_proc2 = p_proc2.
SELECT MAX( anexo ) FROM /pws/zycit476
INTO p_cabecalho-anexo
WHERE nrseqd EQ p_nrseqd
AND tipo EQ 'I'.
IF p_cabecalho-anexo IS INITIAL.
MESSAGE i015(/pws/zycim) WITH text-003 text-004.
LEAVE PROGRAM.
ENDIF.
* >> Início da exclusão: FORM SELECT_DATA
SELECT /pws/zycit259~nrre /pws/zycit259~dtre
/pws/zycit259~j_1bnbm /pws/zycit259~gewei
/pws/zycit259~ntgew /pws/zycit259~qtd_iten
/pws/zycit259~meins /pws/zycit259~vlfobemb
/pws/zycit259~waersemb /pws/zycit259~vlfob
makt~maktx /pws/zycit259~nfnum
/pws/zycit259~serie /pws/zycit259~dtnf
FROM ( /pws/zycit259 INNER JOIN makt
ON /pws/zycit259~codmat = makt~matnr )
INTO TABLE p_t_itens
WHERE /pws/zycit259~nrseqd EQ p_cabecalho-zycit244-nrcompos
AND makt~spras EQ 'P'.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECT_DATA
SELECT nrre dtre j_1bnbm gewei ntgew qtd_iten meins
vlfobemb waersemb vlfob nfnum serie dtnf
FROM /pws/zycit259 INTO TABLE p_t_itens
WHERE nrseqd EQ p_cabecalho-zycit244-nrcompos.
* << Fim da inclusão
it_itens[] = p_t_itens[].
REFRESH p_t_itens.
SELECT *
FROM t604n
INTO TABLE itab_t604n
FOR ALL ENTRIES IN it_itens
WHERE steuc = it_itens-j_1bnbm
AND spras = sy-langu.
LOOP AT it_itens.
IF it_itens-nrre IS INITIAL.
CONCATENATE it_itens-nfnum it_itens-serie
INTO it_itens-nrre SEPARATED BY '-'.
MOVE it_itens-dtnf TO it_itens-dtre.
ENDIF.
* >> Início da inclusão: FORM SELECT_DATA
READ TABLE itab_t604n WITH KEY steuc = it_itens-j_1bnbm
spras = sy-langu.
CONCATENATE itab_t604n-text1 itab_t604n-text2
itab_t604n-text3 itab_t604n-text4
itab_t604n-text5 INTO it_itens-maktx SEPARATED BY space.
* << Fim da inclusão
COLLECT it_itens INTO p_t_itens.
ENDLOOP.
SORT p_t_itens BY j_1bnbm.
LOOP AT p_t_itens INTO wa_itens.
v_tabix = sy-tabix.
CHECK wa_itens-subtot NE 'X'.
ON CHANGE OF wa_itens-j_1bnbm.
READ TABLE itab_t604n WITH KEY steuc = wa_itens-j_1bnbm
spras = sy-langu.
IF sy-subrc = 0.
...
...
MOVE itab_zycrt003-name TO v_tab.
APPEND v_tab.
ENDLOOP.
MOVE: '/PWS/ZYCRT003' TO f_tab-tabname,
'NAME' TO f_tab-fieldname,
'X' TO f_tab-selectflag.
APPEND f_tab.
CLEAR f_tab.
CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE'
EXPORTING
* >> Início da exclusão: FORM TRATA_PROCURADOR
display = ' '
fieldname = 'NAME'
tabname = '/PWS/ZYCRT003'
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_PROCURADOR
display = ' '
fieldname = 'NAME'
tabname = '/PWS/ZYCRT003'
* << Fim da inclusão
IMPORTING
* >> Início da exclusão: FORM TRATA_PROCURADOR
select_value = value
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_PROCURADOR
select_value = value
* << Fim da inclusão
TABLES
* >> Início da exclusão: FORM TRATA_PROCURADOR
valuetab = v_tab
fields = f_tab
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_PROCURADOR
valuetab = v_tab
fields = f_tab
* << Fim da inclusão
EXCEPTIONS
* >> Início da exclusão: FORM TRATA_PROCURADOR
FIELD_NOT_IN_DDIC = 1
MORE_THEN_ONE_SELECTFIELD = 2
NO_SELECTFIELD = 3
OTHERS = 4.
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_PROCURADOR
field_not_in_ddic = 1
more_then_one_selectfield = 2
no_selectfield = 3
OTHERS = 4.
* << Fim da inclusão
IF sy-subrc EQ 0.
MOVE value TO p_proc.
ENDIF.
ENDFORM.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCRR006
...
gewei TYPE /pws/zycit260-gewei,
ntgew TYPE /pws/zycit260-ntgew,
qtd_vinc TYPE /pws/zycit279-qtd_perda,
meins TYPE /pws/zycit260-meins,
vlfobt TYPE /pws/zycit260-vlfob_t,
netpr TYPE /pws/zycit260-netpr,
waers TYPE /pws/zycit260-waers,
vlfob TYPE /pws/zycit260-vlfob,
grupo TYPE /pws/zycit260-grupo,
desc_g TYPE /pws/zycit260-desc_g,
* >> Início da exclusão:
maktx TYPE makt-maktx,
* << Fim da exclusão
* >> Início da inclusão:
maktx(200) TYPE c,
* << Fim da inclusão
subtot TYPE c,
j_1bnbmtot TYPE /pws/zycit260-j_1bnbm,
ntgewtot TYPE /pws/zycit260-ntgew,
qtd_tot TYPE /pws/zycit279-qtd_perda,
vl_fembtot TYPE /pws/zycit260-vlfob,
vl_fobtot TYPE /pws/zycit260-vlfob_t,
diadic(14) TYPE c,
descr_ncmt(200) TYPE c,
descr_ncm(200) TYPE c.
TYPES: END OF s_itens,
...
...
IMPORTING
cgc_number = p_cabecalho-zycit244-cnpj.
CALL FUNCTION '/PWS/ZYCR_DATA_EXTENSO'
EXPORTING
data = sy-datlo
spras = 'P'
IMPORTING
data_extenso = p_cabecalho-sy_datlo.
p_cabecalho-p_proc1 = p_proc1.
p_cabecalho-p_proc2 = p_proc2.
* >> Início da exclusão: FORM SELECT_DATA
SELECT /pws/zycit260~nrdi /pws/zycit260~reg_di
/pws/zycit260~adicao /pws/zycit260~dtdi
/pws/zycit260~j_1bnbm /pws/zycit260~gewei
/pws/zycit260~ntgew /pws/zycit260~qtd_vinc
/pws/zycit260~meins /pws/zycit260~vlfob
/pws/zycit260~netpr
/pws/zycit260~waers /pws/zycit260~vlfob_t
/pws/zycit260~grupo /pws/zycit260~desc_g
makt~maktx
FROM ( /pws/zycit260 INNER JOIN makt
ON /pws/zycit260~codcomp = makt~matnr )
INTO TABLE p_t_itens
WHERE /pws/zycit260~nrseqd EQ p_cabecalho-zycit244-nrcompos
AND makt~spras EQ 'P'.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECT_DATA
SELECT nrdi reg_di adicao dtdi j_1bnbm gewei ntgew qtd_vinc
meins vlfob netpr waers vlfob_t grupo desc_g
FROM /pws/zycit260 INTO TABLE p_t_itens
WHERE nrseqd EQ p_cabecalho-zycit244-nrcompos.
* << Fim da inclusão
it_itens[] = p_t_itens[].
SELECT *
FROM t604n
INTO TABLE itab_t604n
FOR ALL ENTRIES IN it_itens
WHERE steuc = it_itens-j_1bnbm
AND spras = sy-langu.
REFRESH p_t_itens.
LOOP AT it_itens.
CONCATENATE it_itens-reg_di it_itens-adicao INTO it_itens-diadic.
* >> Início da inclusão: FORM SELECT_DATA
READ TABLE itab_t604n WITH KEY steuc = it_itens-j_1bnbm
spras = sy-langu.
CONCATENATE itab_t604n-text1 itab_t604n-text2
itab_t604n-text3 itab_t604n-text4
itab_t604n-text5 INTO it_itens-maktx separated by space
.
* << Fim da inclusão
COLLECT it_itens INTO p_t_itens.
ENDLOOP.
SORT p_t_itens BY j_1bnbm.
LOOP AT p_t_itens INTO wa_itens.
v_tabix = sy-tabix.
CHECK wa_itens-subtot NE 'X'.
ON CHANGE OF wa_itens-j_1bnbm.
READ TABLE itab_t604n WITH KEY steuc = wa_itens-j_1bnbm
spras = sy-langu.
IF sy-subrc = 0.
...