CE PLUS - Nota 006648

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DA

Data/Hora da Publicação: 29/05/2008 00:00:00

Data/Hora Última Alteração: 09/03/2010 13:23:28

Descrição da Nota: ATUALIZAR SELEÇÃO DE TEXTOS DO CAMPO ESPECIFICAÇÃO DA DA

Sintoma

 

Atualizar seleção de textos do campo especificação da DA

 

Solução

 

Atualizar seleção de textos do campo especificação da DA

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 06648 Data: 29/05/2008 Hora: 15:10:23

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

 

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

Nota Número              : 06648

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00005

Agrupamento              : 00049

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

ATUALIZAR SELEÇÃO DE TEXTOS DO CAMPO ESPECIFICAÇÃO DA DA

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

Palavras Chave:

 

 

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

Objetos da nota:

REPS /PWS/MZYCI070F03

REPS /PWS/MZYCI070I01

 

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

Modificações efetuadas em REPS /PWS/MZYCI070F03

 

...

            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.

  DATA: v_spras LIKE ekko-spras.

  IF rtexti IS INITIAL.

* >> 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-ematn

                           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 = '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.

  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.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI070I01

 

...

                          textline1     = text-045

                          titel         = text-025

                     IMPORTING

                          answer        = v_resposta.

                IF v_resposta EQ 'N' OR v_resposta EQ 'A'.

                  EXIT.

                ENDIF.

              ENDIF.

            ENDIF.

          ENDIF.

* >> Início da inclusão: MODULE USER_COMMAND_EXIT

          IF v_tcode IS INITIAL and

             sy-tcode EQ '/PWS/ZYCI070_C'.

            PERFORM delete_text.

          ENDIF.

* << Fim da inclusão

          CLEAR: editor2.

          IF sy-binpt IS INITIAL.

            CALL METHOD editcontainer2->free.

          ENDIF.

          PERFORM unlock_record.

          PERFORM clear_workareas.

          IF v_comm = 'LEAV'.

            LEAVE PROGRAM.

          ELSE.

            IF v_tcode NE '/PWS/ZYCI070_C'    AND

...