CE PLUS - Nota 009040

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: LI

Data/Hora da Publicação: 18/09/2009 00:00:00

Data/Hora Última Alteração: 17/08/2010 11:29:06

Descrição da Nota: AO CRIAR LI¿S SUBSTITUTIVA COM CÓPIA O PROGRAMA ESTA SE PERDENDO

Sintoma

Na criação de LIs, possui a opção de criar com cópia e está sendo muito utilizado pelo cliente. Para

criar as LIs substitutivas, os campos de NRSEQLISUB e NRLISUB estão se misturando, não estão

condizentes com as respectivas LIs e seus Pedidos de Compras.

 

 

Solução

Verificar corretamente qual a LI que esta sendo substituida pelo nova LI

 

Versões Tratadas

7.0

Informações Complementares

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

Nota Número 09040 Data: 18/09/2009 Hora: 11:19:46

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

 

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

Nota Número              : 09040

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00001

Agrupamento              : 00001

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

AO CRIAR LI¿S SUBSTITUTIVA COM CÓPIA O PROGRAMA ESTA SE PERDENDO

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

Palavras Chave:

LI - SUBSTITUTIVA - CÓPIA

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCI020                        0106

REPS /PWS/MZYCI020F02

REPS /PWS/MZYCI020O01

REPS /PWS/MZYCI020X01

REPT /PWS/SAPMZYCI020

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI020                        0106

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0106

process before output.

  module: load_cabec3,

          set_screen_sub,

          set_screnn_106,

          propoe_codregtri.

process after input.

  field /pws/zycie078-codregtri  module clear_campos on request.

  field /pws/zycie078-codcambial module clear_campos2 on request.

  field /pws/zycie078-codagsecex module get_digito on request.

* >> Início da exclusão:

  field /PWS/ZYCIE078-CODREGTRI  module load_required11.

* << Fim da exclusão

  chain.

    field /pws/zycie078-nrseqd module get_drawback

      on chain-request.

  endchain.

  module: confer_valor,

          user_command_0106.

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F02

 

...

 

FORM comm_copy.

  IF v_tcode EQ '/PWS/ZYCI020_C'  OR

     v_tcode EQ '/PWS/ZYCI020_P' OR

     v_tcode EQ '/PWS/ZYCI020_I'.

    PERFORM save.

  ENDIF.

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

  FREE it_zycit079_copy.

  MOVE it_zycit079[] TO it_zycit079_copy[].

  LOOP AT it_zycit079_copy.

    v_indice = sy-tabix.

    IF NOT it_zycit079_copy-nrseqli IS INITIAL AND

       it_zycit079_copy-slqtde <= 0.

       DELETE it_zycit079_copy INDEX v_indice.

    ENDIF.

  ENDLOOP.

  IF it_zycit079_copy[] IS INITIAL.

    MESSAGE e015 WITH text-463 text-464.

  ELSE.

    LOOP AT it_zycit079.

      v_indice = sy-tabix.

      READ TABLE it_zycit079_copy WITH KEY nrseqli = it_zycit079-nrseqli

                                           tpli    = it_zycit079-tpli

                                           ebeln   = it_zycit079-ebeln

                                           ebelp   = it_zycit079-ebelp.

      IF SY-SUBRC <> 0.

         DELETE it_zycit079 INDEX v_indice.

      ENDIF.

    ENDLOOP.

  ENDIF.

* << Fim da inclusão

  PERFORM quest_gravacao.

  IF v_resp_save NE 'A'.

    CASE v_tcode.

      WHEN '/PWS/ZYCI020_A' OR '/PWS/ZYCI020_E'.

        v_tcode  = '/PWS/ZYCI020_C'.

      WHEN '/PWS/ZYCI020_N' OR '/PWS/ZYCI020_R'.

        v_tcode  = '/PWS/ZYCI020_P'.

      WHEN '/PWS/ZYCI020_G' OR '/PWS/ZYCI020_L'.

        v_tcode = '/PWS/ZYCI020_I'.

    ENDCASE.

...

 

...

          space TO wa_zycit078-identify,

          space TO wa_zycit078-nrli,

          space TO wa_zycit078-dtreg,

          space TO wa_zycit078-dtdef,

          space TO wa_zycit078-dtvencto,

          space TO wa_zycit078-nrseqlisub,

          space TO wa_zycit078-nrlisub,

          space TO wa_zycit078-nrseqlisuba,

          space TO wa_zycit078-nrlisuba.

    LOOP AT it_zycit079.

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

      IF NOT it_zycit079-nrseqli IS INITIAL AND

         it_zycit079-slqtde < it_zycit079-qtd_iten.

            it_zycit079-qtd_iten = it_zycit079-slqtde.

            it_zycit079-slqtde = 0.

      ELSE.

* << Fim da inclusão

      it_zycit079-slqtde = it_zycit079-slqtde

                     - it_zycit079-qtd_iten.

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

      ENDIF.

* << Fim da inclusão

      MODIFY it_zycit079 INDEX sy-tabix.

    ENDLOOP.

    wa_zycit078-nrseqli     = /pws/zycie078-nrseqli.

    IF /pws/zycie078-tpli EQ 'N'.

      IF v_tcode EQ '/PWS/ZYCI020_C'.

...

 

...

 

FORM carrega_dados.

  IF v_tcode EQ '/PWS/ZYCI020_A' OR

     v_tcode EQ '/PWS/ZYCI020_E'.

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

  CLEAR: it_zycit079, it_zycit079_aux, it_zycit079_aux2,

        it_zycit079_aux3, it_zycit079_aux4,

        wa_zycit078, wa_zycit078_aux2.

  FREE: it_zycit079, it_zycit079_aux, it_zycit079_aux2,

        it_zycit079_aux3, it_zycit079_aux4,

        wa_zycit078, wa_zycit078_aux2.

* << Fim da inclusão

    SELECT SINGLE * FROM /pws/zycit078

                    INTO /pws/zycie078

           WHERE nrseqli EQ /pws/zycie078-nrseqli

             AND tpli    EQ 'N'

             AND flagpli NE 'X'.

    IF sy-subrc NE 0.

      MESSAGE w015 WITH text-001.

      EXIT.

    ENDIF.

    IF NOT /pws/zycie078-nrseqd IS INITIAL.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI020O01

 

...

  IF /pws/zycit000-flagdraw IS INITIAL.

    it_code-fcode = 'DESVINATO'. APPEND it_code.

    it_code-fcode = 'VINCULATO'. APPEND it_code.

  ENDIF.

  IF v_tcode EQ '/PWS/ZYCI020_C' OR

     v_tcode EQ '/PWS/ZYCI020_P'.

    it_code-fcode = 'MODI'.    APPEND it_code.

    it_code-fcode = 'LISUBST'. APPEND it_code.

    it_code-fcode = 'MARCDELE'. APPEND it_code.

    it_code-fcode = 'CANCEL'.   APPEND it_code.

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

    it_code-fcode = 'COPY'.   APPEND it_code.

* << Fim da inclusão

    SET PF-STATUS '0100' EXCLUDING it_code.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_E' OR

         v_tcode EQ '/PWS/ZYCI020_R'.

    it_code-fcode = 'MODI'    .  APPEND it_code.

    it_code-fcode = 'SAVE'    .  APPEND it_code.

    it_code-fcode = 'DLIT'    .  APPEND it_code.

    it_code-fcode = 'PED'     .  APPEND it_code.

    it_code-fcode = 'COPY'    .  APPEND it_code.

    it_code-fcode = 'LISUBST' .  APPEND it_code.

    it_code-fcode = 'MKTD'    .  APPEND it_code.

...

 

...

    it_code-fcode = 'DESVIN'  .  APPEND it_code.

    it_code-fcode = 'ENVIO'   .  APPEND it_code.

    it_code-fcode = 'CANCEL'  .  APPEND it_code.

    it_code-fcode = 'DESVINATO'. APPEND it_code.

    it_code-fcode = 'TRANSM'   . APPEND it_code.

    it_code-fcode = 'VINCULATO'. APPEND it_code.

    SET PF-STATUS '0100' EXCLUDING it_code.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_A' OR

         v_tcode EQ '/PWS/ZYCI020_N'.

    it_code-fcode = 'MODI'. APPEND it_code.

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

    IF NOT /PWS/ZYCIE078-NRSEQLISUBA IS INITIAL.

      it_code-fcode = 'COPY'.   APPEND it_code.

    ENDIF.

* << Fim da inclusão

    SET PF-STATUS '0100' EXCLUDING it_code.

  ENDIF.

  IF v_tcode EQ '/PWS/ZYCI020_C'.

    SET TITLEBAR '0100'.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_A'.

    SET TITLEBAR '0100A'.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_E'.

    SET TITLEBAR '0100E'.

  ENDIF.

ENDMODULE.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020X01

 

...

 

* >> Início da inclusão:

DATA: BEGIN OF it_zycit079_copy OCCURS 0.

        INCLUDE STRUCTURE it_zycit079.

DATA: END OF it_zycit079_copy.

* << Fim da inclusão

DATA: END OF common part.

...

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI020

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 463

 

Texto: (17 caracteres)

"Copy not allowed."

 

Comprimento máximo: 20

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 463

 

Texto: (20 caracteres)

"Cópia não permitida."

 

Comprimento máximo: 20

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 463

 

Texto: (20 caracteres)

"Copias no permitido."

 

Comprimento máximo: 20

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 464

 

Texto: (21 caracteres)

"insufficient balance."

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 464

 

Texto: (19 caracteres)

"Saldo insuficiente."

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 464

 

Texto: (19 caracteres)

"Saldo insuficiente."

 

Comprimento máximo: 21