Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DSI
Data/Hora da Publicação: 28/05/2008 00:00:00
Data/Hora Última Alteração: 22/02/2011 14:59:20
Descrição da Nota: AJUSTE PARA UTILIZAR NOVA FUNÇÃO PARA BUSCAR TEXTOS
Sintoma
Ajustado programa de DSI para utilizar nova a função /PWS/ZYCI_TEXTO_DETALHE_ITEM para buscar os
textos descritivos.
Solução
Ajustado programa de DSI para utilizar nova a função /PWS/ZYCI_TEXTO_DETALHE_ITEM para buscar os
textos descritivos.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 06629 Data: 28/05/2008 Hora: 08:13:49
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 06629
Categoria : Melhoria
Prioridade : Baixa
Versão PW.CE : 7.0
Pacote : 00005
Agrupamento : 00049
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
05301 - 00002 - 7.0 - 00003 - ERRO AO SOLICITAR CONVERSÃO PARA BRL E TRAZER TEXTOS DA /PWS/ZYCI
06593 - 00001 - 7.0 - 00005 - DESENVOLVIMENTO DE FUNÇÃO PARA TRATAR TEXTOS DESCRITIVOS DI/LI
----------------------------------------------------------------------------------------------------
AJUSTE PARA UTILIZAR NOVA FUNÇÃO PARA BUSCAR TEXTOS
----------------------------------------------------------------------------------------------------
Palavras Chave:
FUNÇÃO - TEXTOS - DSI
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI058F02
REPS /PWS/MZYCI058F03
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI058F02
...
CALL FUNCTION '/PWS/ZYCI_TEXTO_DETALHE_ITEM'
EXPORTING
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp
codeven = 'DI'
TABLES
rtext = rtexti
.
IF sy-subrc <> 0.
ENDIF.
* >> Início da exclusão: FORM TEXT_EDIT_BLITEM
SORT rtexti BY tdline.
DELETE ADJACENT DUPLICATES FROM rtexti COMPARING tdline.
* << Fim da exclusão
CALL FUNCTION 'EDIT_TEXT'
EXPORTING
display = v_txtdisplay
header = xtheadi
save = v_txtsave
TABLES
lines = rtexti
EXCEPTIONS
id = 1
language = 2
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI058F03
...
APPEND rtexti.
ENDLOOP.
ENDIF.
ENDFORM.
FORM fill_desc.
IF /pws/zycie085-dtuserc IS INITIAL AND
sy-tcode EQ '/PWS/ZYCI023_C' .
/pws/zycie085-dtuserc = sy-datum .
ENDIF.
DATA: v_spras LIKE ekko-spras.
* >> Início da exclusão: FORM FILL_DESC
SORT itab_zycit229 BY codseq.
READ TABLE itab_ekpo WITH KEY ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF NOT itab_zycit229[] IS INITIAL.
LOOP AT itab_zycit229.
CLEAR: v_name, v_texto, itab_makt, itab_stxl, v_spras.
FREE: itab_makt, itab_stxl.
IF itab_zycit229-spras NE space.
v_spras = itab_zycit229-spras.
ELSE.
SELECT SINGLE spras FROM ekko INTO v_spras
WHERE ebeln = itab_zycit003-ebeln.
ENDIF.
IF itab_zycit229-txtdesc = '01'.
SELECT SINGLE * FROM makt INTO itab_makt
WHERE matnr = itab_ekpo-matnr
AND spras = v_spras.
IF sy-subrc = 0.
rtexti-tdformat = '*'.
rtexti-tdline = itab_makt-maktx.
APPEND rtexti.
ELSE.
IF NOT itab_ekpo-txz01 IS INITIAL.
rtexti-tdformat = '*'.
rtexti-tdline = itab_ekpo-txz01.
APPEND rtexti.
ELSE.
READ TABLE itab_ekpo INDEX 1.
rtexti-tdformat = '*'.
rtexti-tdline = itab_ekpo-txz01.
APPEND rtexti.
ENDIF.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '02'.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'MATERIAL' AND
tdname = itab_ekpo-matnr AND
tdid = 'BEST' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
v_name = itab_ekpo-matnr.
PERFORM read_text_especif CHANGING v_texto.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '03'.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'MATERIAL' AND
tdname = itab_ekpo-matnr AND
tdid = 'GRUN' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
v_name = itab_ekpo-matnr.
PERFORM read_text_especif CHANGING v_texto.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '13'.
CONCATENATE itab_it-ebeln itab_it-ebelp INTO v_name.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'EKPO' AND
tdname = v_name AND
tdid = 'F02' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
PERFORM read_text_especif CHANGING v_texto.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '04'.
CONCATENATE itab_it-ebeln itab_it-ebelp INTO v_name.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'EKPO' AND
tdname = v_name AND
tdid = 'F01' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
PERFORM read_text_especif CHANGING v_texto.
ELSE.
MOVE itab_zycit003-descr TO itab_it-especificacao.
MODIFY itab_it TRANSPORTING especificacao
WHERE ebeln EQ itab_zycit003-ebeln
AND ebelp EQ itab_zycit003-ebelp.
rtexti-tdformat = '*'.
rtexti-tdline = itab_zycit003-descr.
APPEND rtexti.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '05'.
CONCATENATE itab_it-ebeln itab_it-ebelp INTO v_name.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'EKPO' AND
tdname = v_name AND
tdid = 'F03' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
PERFORM read_text_especif CHANGING v_texto.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '06'.
CONCATENATE itab_it-ebeln itab_it-ebelp INTO v_name.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'EKPO' AND
tdname = v_name AND
tdid = 'F04' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
PERFORM read_text_especif CHANGING v_texto.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '07'.
CONCATENATE itab_it-ebeln itab_it-ebelp INTO v_name.
SELECT SINGLE * FROM stxl INTO itab_stxl
WHERE relid = 'TX' AND
tdobject = 'EKPO' AND
tdname = v_name AND
tdid = 'F05' AND
tdspras = v_spras AND
srtf2 = 0.
IF sy-subrc = 0.
PERFORM read_text_especif CHANGING v_texto.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '09'.
SELECT SINGLE werks FROM ekpo INTO v_werks WHERE
ebeln = itab_it-ebeln AND
ebelp = itab_it-ebelp.
IF sy-subrc EQ 0.
SELECT SINGLE name1 FROM t001w INTO v_name WHERE
werks = v_werks.
IF sy-subrc EQ 0.
rtexti-tdformat = '*'.
CONCATENATE text-071 v_name
INTO rtexti-tdline SEPARATED BY space.
APPEND rtexti.
ENDIF.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '10'.
SELECT SINGLE werks FROM ekpo INTO v_werks WHERE
ebeln = itab_it-ebeln AND
ebelp = itab_it-ebelp.
IF sy-subrc EQ 0.
SELECT SINGLE stras ort01 regio FROM t001w INTO wa_ender
WHERE werks = v_werks.
IF sy-subrc EQ 0.
rtexti-tdformat = '*'.
CONCATENATE text-114 wa_ender-stras wa_ender-ort01
wa_ender-regio
INTO rtexti-tdline SEPARATED BY space.
APPEND rtexti.
ENDIF.
ENDIF.
ELSEIF itab_zycit229-txtdesc = '11'.
rtexti-tdformat = '*'.
CONCATENATE text-052 itab_zycit003-ebeln
INTO rtexti-tdline SEPARATED BY space.
APPEND rtexti.
ELSEIF itab_zycit229-txtdesc = '12'.
rtexti-tdformat = '*'.
CONCATENATE text-115 itab_zycit003-ebelp
INTO rtexti-tdline SEPARATED BY space.
APPEND rtexti.
ENDIF.
ENDLOOP.
ELSE.
READ TABLE itab_ekpo WITH KEY ebeln = itab_it-ebeln
ebelp = itab_it-ebelp.
rtexti-tdformat = '*'.
rtexti-tdline = itab_ekpo-txz01.
APPEND rtexti.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DESC
CALL FUNCTION '/PWS/ZYCI_TEXTO_DETALHE_ITEM'
EXPORTING
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp
codeven = 'DI'
TABLES
rtext = rtexti
.
IF sy-subrc <> 0.
* << Fim da inclusão
ENDIF.
IF itab_it-especificacao IS INITIAL.
READ TABLE rtexti INDEX 1.
itab_it-especificacao = rtexti-tdline.
ENDIF.
IF itab_it-especificacao IS INITIAL.
READ TABLE itab_zycit003 WITH KEY ebeln = itab_it-ebeln
ebelp = itab_it-ebelp.
itab_it-especificacao = itab_zycit003-descr.
ENDIF.
...