CE PLUS - Nota 005408

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DSI

Data/Hora da Publicação: 06/12/2007 00:00:00

Data/Hora Última Alteração: 09/03/2010 11:20:21

Descrição da Nota: DSI - CAMPO ESPECIFICAÇÃO

Sintoma

 

O programa não está obedecendo a parametrização de textos da tabela /PWS/ZYCIT229 para exibir

o campo ESPECIFICAÇÃO - Det. Item. Também não exibe textos quando dá duplo click neste campo.

 

Solução

 

Incluir verificação da parametrização da Tabela /PWS/ZYCIT229 em todos os pontos onde são carregados

textos para o campo Especificação, inclusive duplo click.

Versões Tratadas

7.0

Informações Complementares

 

----------------------------------------------------------------------------------------------------

Nota Número 05408 Data: 06/12/2007 Hora: 15:40:26

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 05408

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00003

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

----------------------------------------------------------------------------------------------------

Texto Rápido:

DSI - CAMPO ESPECIFICAÇÃO

----------------------------------------------------------------------------------------------------

Palavras Chave:

CAMPO ESPECIFICAÇÃO; TEXTOS; PARAMETRIZAÇÃO DE TEXTOS;

/PWS/ZYCIT229; /PWS/ZYCIT100-ESPECIFICACAO

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCI058F01

REPS /PWS/MZYCI058F02

REPS /PWS/MZYCI058F03

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI058F01

 

...

    IF sy-tcode NE '/PWS/ZYCI023_E'.

      v_changed = '1'.

    ENDIF.

  ENDIF.

ENDFORM.

FORM data_dele.

  DELETE FROM /pws/zycit085 WHERE nrseqdi = /pws/zycie085-nrseqdi.

  DELETE FROM /pws/zycit095 WHERE nrseqdi = /pws/zycie085-nrseqdi.

  DELETE FROM /pws/zycit100 WHERE nrseqdi = /pws/zycie085-nrseqdi.

  DELETE FROM /pws/zycit049 WHERE nrseq   = /pws/zycie085-nrseqdi.

* >> Início da exclusão: FORM DATA_DELE

  IF v_dit = 'N'.

* << Fim da exclusão

    DELETE FROM /pws/zycit086 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit087 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit096 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit114 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit115 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit116 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit118 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit121 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit124 WHERE nrseqdi = /pws/zycie085-nrseqdi.

    DELETE FROM /pws/zycit049 WHERE nrseq   = /pws/zycie085-nrseqdi.

    PERFORM delete_text.

* >> Início da exclusão: FORM DATA_DELE

  ENDIF.

* << Fim da exclusão

  COMMIT WORK.

  LEAVE PROGRAM.

ENDFORM.

FORM save_data_item.

  IF v_dit = 'S' AND /pws/zycie093-meiotransp = 'PS'

                 AND /pws/zycie085-tpdi       = 'S'.

    /pws/zycie100a-vlii  = t_iirec.

    /pws/zycie100a-vlipi = t_ipirec.

  ENDIF.

  /pws/zycie100a-pis_calc  = t_pis_calc.

...

 

...

      MESSAGE i015 WITH text-074.

    ENDIF.

  ENDIF.

  IF /pws/zycie006-mdpgto = '20' OR /pws/zycie006-mdpgto = '21'.

    IF itab_zycit121c[] IS INITIAL.

      MESSAGE i015 WITH text-074.

    ENDIF.

  ENDIF.

ENDFORM.

 

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI058F02

 

...

    IF v_dit = 'S'.

      /pws/zycie093-prepaid = /pws/zycie093-vlfre.

    ENDIF.

    CLEAR /pws/zycie093-collect.

  ENDIF.

ENDFORM.

FORM load_blwa.

  PERFORM load_waers USING itab_it-waers CHANGING t_msis t_mdes.

ENDFORM.

FORM read_text_blitem CHANGING p_text.

* >> Início da exclusão: FORM READ_TEXT_BLITEM

  CALL FUNCTION 'READ_TEXT'

       EXPORTING

            client                  = sy-mandt

            id                      = 'ZDSI'  "Constante

            language                = sy-langu

            name                    = v_txtki

            object                  = '/PWS/CIDI'  "Objeto Fixo

       TABLES

            lines                   = rtexti

       EXCEPTIONS

            id                      = 1

            language                = 2

            name                    = 3

            not_found               = 4

            object                  = 5

            reference_check         = 6

            wrong_access_to_archive = 7

            OTHERS                  = 8.

 

  IF sy-subrc = 0.

* << Fim da exclusão: FORM READ_TEXT_BLITEM

* >> Início da inclusão: FORM READ_TEXT_BLITEM

  PERFORM fill_desc.

* << Fim da inclusão: FORM READ_TEXT_BLITEM

  CLEAR: p_text.

  IF NOT rtexti[] IS INITIAL.

    READ TABLE rtexti INDEX 1.

    p_text = rtexti-tdline.

  ELSE.

    IF sy-dynnr NE '0400'.

* >> Início da inclusão: FORM READ_TEXT_BLITEM

      IF NOT itab_it-especificacao IS INITIAL.

        p_text = itab_it-especificacao.

      ELSE.

* << Fim da inclusão: FORM READ_TEXT_BLITEM

        p_text = itab_it-descr.

* >> Início da inclusão: FORM READ_TEXT_BLITEM

      ENDIF.

* << Fim da inclusão: FORM READ_TEXT_BLITEM

    ENDIF.

  ENDIF.

* >> Início da exclusão: FORM READ_TEXT_BLITEM

  ELSE.

    IF sy-dynnr NE '0400'.

      p_text = itab_it-descr.

    ELSE.

      IF NOT itab_it-especificacao IS INITIAL.

        IF rtexti[] IS INITIAL.

          rtexti-tdformat = space.

          rtexti-tdline   = itab_it-especificacao.

          APPEND rtexti.

        ENDIF.

        /pws/zycie100a-especificacao = itab_it-especificacao.

      ELSE.

        /pws/zycie100a-especificacao = rtexti-tdline.

        itab_it-especificacao   = rtexti-tdline.

        MODIFY itab_it TRANSPORTING especificacao

                       WHERE ebeln =  itab_it-ebeln

                         AND ebelp =  itab_it-ebelp.

      ENDIF.

    ENDIF.

  ENDIF.

* << Fim da exclusão: FORM READ_TEXT_BLITEM

ENDFORM.                    " read_text_blitem

FORM text_edit_blitem CHANGING p_text.

  DELETE ADJACENT DUPLICATES FROM rtexti COMPARING tdline.

  READ TABLE rtexti INDEX 1.

  IF sy-subrc = 0.

...

 

...

      ELSE.

        p_text = rtexti-tdline.

      ENDIF.

    ENDIF.

  ELSE.

    IF NOT p_text IS INITIAL.

      rtexti-tdline = p_text.

      APPEND rtexti.

    ENDIF.

  ENDIF.

* >> Início da exclusão: FORM TEXT_EDIT_BLITEM

  xtheadi-tdobject   = '/PWS/CIDDI'.

* << Fim da exclusão

* >> Início da inclusão: FORM TEXT_EDIT_BLITEM

  xtheadi-tdobject   = '/PWS/CIDI'.

* << Fim da inclusão

  xtheadi-tdname     = v_txtki.

  xtheadi-tdid       = 'ZDSI'.

  xtheadi-tdspras    = sy-langu.

  xtheadi-tdlinesize = 072.

* >> Início da inclusão: FORM TEXT_EDIT_BLITEM

  DATA: v_spras LIKE ekko-spras.

  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.

        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.

  ENDIF.

  SORT rtexti BY tdline.

  DELETE ADJACENT DUPLICATES FROM rtexti COMPARING tdline.

* << Fim da inclusã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

 

...

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

FORM text_item_fill.

  CLEAR:   rtexti, xtheadi.

  REFRESH: rtexti.

  CONCATENATE /pws/zycie085-nrseqdi itab_it-nrseq itab_it-ebeln

             itab_it-ebelp INTO v_txtki.

  PERFORM fill_desc.

* >> Início da exclusão: FORM TEXT_ITEM_FILL

  xtheadi-tdobject   = '/PWS/CIDDI'.

  xtheadi-tdname     = v_txtki.

  xtheadi-tdid       = 'ZDSI'.

  xtheadi-tdspras    = sy-langu.

  xtheadi-tdlinesize = 070.

  CALL FUNCTION 'READ_TEXT'

       EXPORTING

            client                  = sy-mandt

            id                      = 'ZDSI'

            language                = sy-langu

            name                    = v_txtki

            object                  = '/PWS/CIDI'

       TABLES

            lines                   = rtexti

       EXCEPTIONS

            id                      = 1

            language                = 2

            name                    = 3

            not_found               = 4

            object                  = 5

            reference_check         = 6

            wrong_access_to_archive = 7

            OTHERS                  = 8.

* << Fim da exclusão

ENDFORM.

FORM text_adic_fill.

  CLEAR:   rtexti, xtheadi.

  REFRESH: rtexti.

  CONCATENATE /pws/zycie085-nrseqdi itab_itb-nrseq itab_itb-ebeln

             itab_itb-ebelp INTO v_txtki.

  CALL FUNCTION 'READ_TEXT'

       EXPORTING

            client                  = sy-mandt

            id                      = 'ZDSI'

...

 

...

        ittxt2-line = it_words_app-word.

        APPEND ittxt2.

      ENDLOOP.

    ENDIF.

  ENDLOOP.

  MOVE: ittxt2[] TO ittxt1[].

  CALL METHOD editor2->set_text_as_r3table EXPORTING table = ittxt1[].

  LEAVE TO SCREEN 0.

ENDFORM.

FORM read_text_especif CHANGING p_text.

* >> Início da exclusão: FORM READ_TEXT_ESPECIF

  READ TABLE itab_stxl INDEX 1.

* << Fim da exclusão

  CALL FUNCTION 'READ_TEXT'

    EXPORTING

      client                        = sy-mandt

      id                            = itab_stxl-tdid

      language                      = itab_stxl-tdspras

      name                          = v_name

      object                        = itab_stxl-tdobject

      archive_handle                = 0

      local_cat                     = ' '

    TABLES

...

 

...

      rtexti-tdline = rtextesp-tdline.

      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.

* >> Início da exclusão: FORM FILL_DESC

  CLEAR rtexti. REFRESH rtexti.

  CALL FUNCTION 'READ_TEXT'

       EXPORTING

            client                  = sy-mandt

            id                      = 'ZDSI'

            language                = sy-langu

            name                    = v_txtki

            object                  = '/PWS/CIDDI'

       TABLES

            lines                   = rtexti

       EXCEPTIONS

            id                      = 1

            language                = 2

            name                    = 3

            not_found               = 4

            object                  = 5

            reference_check         = 6

            wrong_access_to_archive = 7

            OTHERS                  = 8.

  IF sy-subrc = 0.

    READ TABLE rtexti INDEX 1.

  ENDIF.

* << Fim da exclusão

  DATA: v_spras LIKE ekko-spras.

* >> Início da exclusão: FORM FILL_DESC

  IF rtexti IS INITIAL.

* << Fim da exclusão

    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.

...

 

...

                      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.

* >> Início da exclusão: FORM FILL_DESC

    ENDIF.

* << Fim da exclusã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.

...