CE PLUS - Nota 006629

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.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ERRO AO SOLICITAR CONVERSÃO PARA BRL E TRAZER TEXTOS DA /PWS/ZYCIT229.

DESENVOLVIMENTO DE FUNÇÃO PARA TRATAR TEXTOS DESCRITIVOS DI/LI

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.

...