CE PLUS - Nota 004599

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Embarque

Data/Hora da Publicação: 03/09/2007 00:00:00

Data/Hora Última Alteração: 22/02/2011 10:51:45

Descrição da Nota: REMOÇÃO DE ITENS DO EMBARQUE COM OV SEM REMESSA

Sintoma

Itens do embarque não são removidos quando possui ordem de venda com remessa.

 

 

Solução

acrescentar OV sem remessa como item não atualizável, assim como os outros tipos de itens.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

REMOÇÃO DE ITENS DO EMBARQUE COM OV SEM REMESSA

Informações Complementares

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

Nota Número 04599 Data: 03/09/2007 Hora: 09:32:40

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

 

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

Nota Número              : 04599

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

Agrupamento              : 00010

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

Referência às notas relacionadas:

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

 

04536  - 00001 - 7.0    - 00002  - REMOÇÃO DE ITENS DO EMBARQUE COM OV SEM REMESSA

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

REMOÇÃO DE ITENS DO EMBARQUE COM OV SEM REMESSA

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

Palavras Chave:

REMOÇÃO ITENS EMBARQUE OV SEM REMESSA

 

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

Objetos da nota:

REPS /PWS/MZYCE003F01

REPS /PWS/MZYCE003F02

 

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

Modificações efetuadas em REPS /PWS/MZYCE003F01

 

...

        END OF itab_analisado.

  FIELD-SYMBOLS: <fs_vbfa> LIKE itab_vbfa.

  LOOP AT itab_zycet002 WHERE vbeln_vf IS initial.

    IF ( NOT itab_zycet002-vbeln_va IS INITIAL AND

         NOT itab_zycet002-aupos    IS INITIAL AND

         NOT itab_zycet002-vbeln_vl IS INITIAL AND

         NOT itab_zycet002-posnl    IS INITIAL ) OR

       ( NOT itab_zycet002-ebeln    IS INITIAL AND

         NOT itab_zycet002-ebelp    IS INITIAL AND

         NOT itab_zycet002-vbeln_vl IS INITIAL AND

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

         NOT itab_zycet002-posnl    IS INITIAL ).

* << Fim da exclusão

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

         NOT itab_zycet002-posnl    IS INITIAL ) OR

       ( NOT itab_zycet002-vbeln_va IS INITIAL AND

         NOT itab_zycet002-aupos    IS INITIAL AND

         NOT itab_zycet002-fkimg    IS INITIAL ).

* << Fim da inclusão

      CONTINUE.

    ENDIF.

    v_vbeln_va = itab_zycet002-vbeln_va.

    v_vbeln_vl = itab_zycet002-vbeln_vl.

    v_posnr_va = itab_zycet002-aupos.

    v_posnr_vl = itab_zycet002-posnl.

    v_tipo_ov = 'CI'.

    IF v_vbeln_va IS INITIAL.

      IF NOT itab_zycet002-ebeln IS INITIAL.

        v_vbeln_va = itab_zycet002-ebeln.

...

 

====================================================================================

 

ATENÇÃO! OS AJUSTES ABAIXO REVERTEM OS AJUSTES DA NOTA 04536! SÓ APLIQUE OS PROXÍMOS

ABAIXO SE A NOTA 04536 FOI APLICADA.

 

====================================================================================

 

...

    sy-subrc = 4.

  ENDIF.

ENDFORM.

FORM envia_para_cambio.

  DATA: v_resposta(1)  TYPE c,

        v_modo_venc(1) TYPE c,

        v_mode(1)      TYPE c,

        v_result(1)    TYPE c,

        v_status_agrup TYPE i.

  REFRESH: itab_zycet093.

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

  PERFORM refresh_embarque USING space.

* << Fim da exclusão

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

  PERFORM refresh_embarque USING 'X'.

* << Fim da inclusão

  PERFORM verifica_alteracao.

  CHECK sy-subrc IS INITIAL.

  PERFORM valida_envio_para_cambio.

  CHECK sy-subrc EQ 0.

  CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'

       EXPORTING

            defaultoption  = 'N'

            textline1      = text-556

            titel          = text-530

            cancel_display = space

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE003F02

 

...

                 FROM itab_zycet002

                 TRANSPORTING novo

                 WHERE novo <> 'X'.

          APPEND LINES OF it_zycet002_rem_transp[] TO itab_zycet002[].

        ENDIF.

      ENDIF.

    WHEN 'DEL_MK'.

      PERFORM elimina_itens_marcados USING 'X'

                                     CHANGING v_exclui.

      IF v_exclui EQ 'X'.

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

        PERFORM refresh_embarque USING space.

* << Fim da exclusão

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

        PERFORM refresh_embarque USING 'X'.

* << Fim da inclusão

        IF itab_zycet002_tc[] IS INITIAL.

          okcode = 'T/02'.

        ENDIF.

      ENDIF.

    WHEN 'DETAIL'.

      okcode = 'DUMMY'.

      READ TABLE itab_zycet002_tc WITH KEY mark = 'X'.

      IF sy-subrc NE 0.

        MESSAGE s323(v1).

        EXIT.

...

 

...

  COMMIT WORK.

  PERFORM busca_numero_sequencial.

  IF /pws/zycee001-nrseq IS INITIAL.

    EXIT.

  ENDIF.

  IF okcode                EQ 'STA1' AND

     /pws/zycee001-envia_c EQ 'X'.

    UPDATE /pws/zycet001 SET sta1 = /pws/zycee001-sta1

                      WHERE nrseq = /pws/zycee001-nrseq.

  ELSE.

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

    PERFORM refresh_embarque USING space.

* << Fim da exclusão

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

    PERFORM refresh_embarque USING 'X'.

* << Fim da inclusão

    itab_zycet002-nrseq = /pws/zycee001-nrseq.

    MODIFY itab_zycet002 TRANSPORTING nrseq

                         WHERE nrseq NE /pws/zycee001-nrseq.

    itab_zycet003-nrseq = /pws/zycee001-nrseq.

    LOOP AT itab_zycet003 WHERE NOT nrseqre IS initial.

      UPDATE /pws/zycet003 SET dtlibanu = itab_zycet003-dtlibanu

                         WHERE nrseq    = itab_zycet003-nrseq AND

                               nrseqre  = itab_zycet003-nrseqre.

    ENDLOOP.

    DELETE itab_zycet003 WHERE NOT nrseqre IS initial.

...