CE PLUS - Nota 012242

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: PLI

Data/Hora da Publicação: 25/05/2012 00:00:00

Data/Hora Última Alteração: 02/07/2012 16:35:29

Descrição da Nota: PERMITIR QUE O USUÁRIO ALTERE O CAMPO ESPECIFICAÇÃO TÉCNICA

Sintoma

Abrir campo Especificação Tecnica dos itens da PLI para digitação. Continuar trazendo conteúdo da

338 como sugestão, mas para envio de dados deve ser considerado o que o usuário digitar na tela.

 

Se campo BEMENCOMENDA (tab3 do item) = "S"  preencher "1" no campo CONDMERC (pasta 2 da aba

Mercadoria) da LI

 

Se campo MATUSADO (tab3 do item) = "S"  preencher "2" no campo CONDMERC (pasta 2 da aba Mercadoria)

da LI

 

 

Solução

Atualizado programa para transferir campo de condições mercadoria da PLI para as LI¿s vinculadas e

abertura do campo Especificação técnica para digitação.

 

Versões Tratadas

9.0

Informações Complementares

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

Nota Número 12242 Data: 25/05/2012 Hora: 11:22:56

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

 

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

Nota Número              : 12242

Categoria                : Melhoria

Prioridade               : Baixa

Versão PW.CE             : 8.0

Pacote                   : 00011

Agrupamento              : 00115

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

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

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

PERMITIR QUE O USUÁRIO ALTERE O CAMPO ESPECIFICAÇÃO TÉCNICA

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

Palavras Chave:

NOVAS CONSISTÊNCIAS PARA O CAMPO CONDMERC

 

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

Objetos da nota:

REPS /PWS/MZYCI020F01

REPS /PWS/MZYCI020F02

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

         id                  = 1

         language            = 2

         linesize            = 3

         name                = 4

         object              = 5

         textformat          = 6

         communication       = 7

         OTHERS              = 8.

    ENDIF.

    IF v_field = 'V_ESP338'.

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

      CLEAR: v_txtki, rtexti.

      REFRESH: rtexti.

      CONCATENATE /pws/zycie078-nrseqli

                  /pws/zycie079a-ebeln

                  /pws/zycie079a-ebelp

             INTO v_txtki.

      CALL FUNCTION 'READ_TEXT'

           EXPORTING

                client                  = sy-mandt

                id                      = '0338'

                language                = sy-langu

                name                    = v_txtki

                object                  = '/PWS/ZYCI'

           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 NOT rtexti[] IS INITIAL.

        READ TABLE  rtexti   INDEX 1.

        v_esp338 = rtexti-tdline.

      ELSEIF rtexti[] IS INITIAL and

             SY-TCODE eq '/PWS/ZYCI020_I'.

* << Fim da inclusão

      SELECT SINGLE matnr FROM ekpo INTO v_matnr

                     WHERE ebeln = /pws/zycie079a-ebeln

                       AND ebelp = /pws/zycie079a-ebelp.

      SELECT SINGLE * FROM /pws/zycit338 INTO itab_zycit338

      WHERE matnr = v_matnr

        AND codsufra = /pws/zycie079a-codsufra.

      READ TABLE itab_zycit338 INDEX 1.

      CLEAR v_txtki.

      itab_zycit338-mandt = sy-mandt.

      itab_zycit338-matnr = v_matnr.

...

 

...

                id                      = 1

                language                = 2

                name                    = 3

                not_found               = 4

                object                  = 5

                reference_check         = 6

                wrong_access_to_archive = 7

                OTHERS                  = 8.

      READ TABLE rtexti INDEX 1.

      v_esp338 = rtexti-tdline.

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

      ENDIF.

      CLEAR: v_txtki.

      CONCATENATE /pws/zycie078-nrseqli

                  /pws/zycie079a-ebeln

                  /pws/zycie079a-ebelp

             INTO v_txtki.

* << Fim da inclusão

      wa_thead-tdobject   = '/PWS/ZYCI'.

      wa_thead-tdname     = v_txtki.

      wa_thead-tdid       = '0338'.

      wa_thead-tdspras    = sy-langu.

      wa_thead-tdlinesize = 132.

      CALL FUNCTION 'EDIT_TEXT'

        EXPORTING

          header              = wa_thead

        TABLES

         lines             = rtexti

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F02

 

...

    READ TABLE rtexti INDEX 1.

    CLEAR rtexti-tdformat.

    v_esp = rtexti-tdline.

    MODIFY rtexti INDEX 1.

    PERFORM save_txt_2.

  ENDIF.

  IF v_esp IS INITIAL.

    READ TABLE rtexti INDEX 1.

    v_esp = rtexti-tdline.

  ENDIF.

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

  CLEAR: v_txtki, rtexti338.

  REFRESH: rtexti338.

  CONCATENATE /pws/zycie078-nrseqli

              /pws/zycie079a-ebeln

              /pws/zycie079a-ebelp

         INTO v_txtki.

  CALL FUNCTION 'READ_TEXT'

       EXPORTING

            client                  = sy-mandt

            id                      = '0338'

            language                = sy-langu

            name                    = v_txtki

            object                  = '/PWS/ZYCI'

       TABLES

            lines                   = rtexti338

       EXCEPTIONS

            id                      = 1

            language                = 2

            name                    = 3

            not_found               = 4

            object                  = 5

            reference_check         = 6

            wrong_access_to_archive = 7

            OTHERS                  = 8.

  IF NOT rtexti338[] IS INITIAL.

    READ TABLE  rtexti338   INDEX 1.

    v_esp338 = rtexti338-tdline.

  ELSEIF rtexti338[] IS INITIAL AND

         sy-tcode EQ '/PWS/ZYCI020_I'.

* << Fim da inclusão

  SELECT SINGLE matnr FROM ekpo INTO v_matnr

                 WHERE ebeln = /pws/zycie079a-ebeln

                   AND ebelp = /pws/zycie079a-ebelp.

  CLEAR: itab_zycit338.

  REFRESH: itab_zycit338.

  SELECT SINGLE * FROM /pws/zycit338 INTO itab_zycit338

  WHERE matnr = v_matnr

    AND codsufra = /pws/zycie079a-codsufra.

  READ TABLE itab_zycit338 INDEX 1.

  CLEAR v_txtki.

...

 

...

            id                      = 1

            language                = 2

            name                    = 3

            not_found               = 4

            object                  = 5

            reference_check         = 6

            wrong_access_to_archive = 7

            OTHERS                  = 8.

  READ TABLE  rtexti338   INDEX 1.

  v_esp338 = rtexti338-tdline.

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

  ENDIF.

* << Fim da inclusão

ENDFORM.

...

 

...

      MODIFY it_zycit079_ncm2 INDEX v_tabix.

      IF v_steuc1 EQ it_zycit079_ncm2-steuc1 AND

           v_lifnr EQ it_zycit079_ncm2-lifnr AND

           v_codsufra EQ it_zycit079_ncm2-codsufra AND

           v_linha <= 78.

        v_linha = v_linha + 1.

        MOVE it_zycit079_ncm2 TO it_zycit079_ncm.

        APPEND it_zycit079_ncm.

        DELETE it_zycit079_ncm2 INDEX v_tabix.

      ELSE.

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

        READ TABLE it_zycit079_ncm INDEX 1.

        IF sy-subrc EQ 0.

          IF it_zycit079_ncm-bemencomenda EQ 'S'.

            /pws/zycie078-condmerc = '1'.

          ENDIF.

          IF it_zycit079_ncm-matusado EQ 'S'.

            /pws/zycie078-condmerc = '2'.

          ENDIF.

          CLEAR it_zycit079_ncm.

        ENDIF.

* << Fim da inclusão

        PERFORM : gera_seq_novoreg,

                  atual_tabelas   ,

                  gera_novoreg    ,

                  limpa_tabncm    .

        MOVE it_zycit079_ncm2 TO it_zycit079_ncm.

        APPEND it_zycit079_ncm.

        v_steuc1 = it_zycit079_ncm2-steuc1.

        v_lifnr = it_zycit079_ncm2-lifnr.

        v_codsufra = it_zycit079_ncm2-codsufra.

        CLEAR v_linha.

      ENDIF.

    ENDLOOP.

    IF NOT it_zycit079_ncm2[] IS INITIAL.

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

        READ TABLE it_zycit079_ncm INDEX 1.

        IF sy-subrc EQ 0.

          IF it_zycit079_ncm-bemencomenda EQ 'S'.

            /pws/zycie078-condmerc = '1'.

          ENDIF.

          IF it_zycit079_ncm-matusado EQ 'S'.

            /pws/zycie078-condmerc = '2'.

          ENDIF.

          CLEAR it_zycit079_ncm.

        ENDIF.

* << Fim da inclusão

      PERFORM : gera_seq_novoreg,

                atual_tabelas   ,

                gera_novoreg    ,

                limpa_tabncm    .

    ENDIF.

  ELSE.

    CLEAR v_linha.

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

    READ TABLE it_zycit079_verif INDEX 1.

    IF sy-subrc EQ 0.

      IF it_zycit079_verif-bemencomenda EQ 'S'.

        /pws/zycie078-condmerc = '1'.

      ENDIF.

      IF it_zycit079_verif-matusado EQ 'S'.

        /pws/zycie078-condmerc = '2'.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    LOOP AT it_zycit079_verif.

      v_linha = v_linha + 1.

      CLEAR it_zycit079_ncm.

      MOVE it_zycit079_verif TO it_zycit079_ncm.

      APPEND it_zycit079_ncm.

      IF v_linha = 80.

        IF NOT it_zycit079_ncm[] IS INITIAL.

          PERFORM: gera_seq_novoreg,

                   atual_tabelas   ,

                   gera_novoreg    ,

...