CE PLUS - Nota 011703

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Recebimento

Data/Hora da Publicação: 10/12/2013 14:34:42

Data/Hora Última Alteração: 10/12/2013 14:34:42

Descrição da Nota: PROGRAMA ESTÁ SOLICITANDO PREENCHIMENTO DO LOTE INDEVIDAMENTE.

Sintoma

Ao Executar o recebimento de um material sujeito a lote o programa exibe mensagem solicitando o

preenchimento do lote mesmo que este já tenha sido informado no pedido de compra.

 

 

Solução

Ajustado programa para solicitar o preenchimento do lote apenas quando necessario.

 

Versões Tratadas

9.0


Pré-Requisitos

Produto:

Nota

Descrição

INBOUND DELIVERY - DESENVOLVIMENTO ADICIONAL

Informações Complementares

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

Nota Número 11703 Data: 29/11/2011 Hora: 15:54:24

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

 

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

Nota Número              : 11703

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00009

Agrupamento              : 00096

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

Referência às notas relacionadas:

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

 

11403  - 00001 - 8.0    - 00008  - INBOUND DELIVERY - DESENVOLVIMENTO ADICIONAL

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

PROGRAMA ESTÁ SOLICITANDO PREENCHIMENTO DO LOTE INDEVIDAMENTE.

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

Palavras Chave:

RECEBIMENTO - MENSAGEM - PREENCHIMENTO - LOTE - INFORMADO - PEDIDO

/PWS/SAPMZYCI017 - PARAMETRO

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

Objetos da nota:

REPS /PWS/MZYCI017F01

 

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

Modificações efetuadas em REPS /PWS/MZYCI017F01

 

...

FORM executa_batch_input.

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

  DATA: BEGIN OF itab_eket OCCURS 0,

    ebeln TYPE eket-ebeln,

    ebelp TYPE eket-ebelp,

    charg TYPE eket-charg,

    licha TYPE eket-licha,

  END OF itab_eket.

  DATA v_autbn TYPE tcuch-autbn.

* << Fim da inclusão

...

 

...

  IF  wa_nf-belnr_mr1m IS INITIAL AND

      wa_nf-mblnr_mb01 IS INITIAL AND

      wa_nf-belnr_f_51 IS INITIAL AND

      wa_nf-belnr_f_02 IS INITIAL.

    CLEAR: v_sair.

    SELECT SINGLE * FROM /pws/zycit321.

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

    SELECT SINGLE autbn FROM tcuch INTO v_autbn.

* << Fim da inclusão

    REFRESH: itab_zycit223.

    IF NOT itab_zycit003[] IS INITIAL.

      SELECT * FROM /pws/zycit223 INTO TABLE itab_zycit223

         FOR ALL ENTRIES IN itab_zycit003

         WHERE nrseq     = itab_zycit003-nrseq

           AND ebelp     = itab_zycit003-ebelp

           AND ebeln     = itab_zycit003-ebeln.         "#EC CI_NOFIRST

      REFRESH: itab_mara.

      SELECT matnr xchpf FROM mara

        INTO CORRESPONDING FIELDS OF TABLE itab_mara

        FOR ALL ENTRIES IN itab_zycit003

          WHERE matnr EQ itab_zycit003-matnr.

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

      SELECT ebeln ebelp charg licha FROM eket

         INTO TABLE itab_eket

           FOR ALL ENTRIES IN itab_zycit003

           WHERE ebelp = itab_zycit003-ebelp

             AND ebeln = itab_zycit003-ebeln.

* << Fim da inclusão

    ENDIF.

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

    IF NOT /pws/zycit321-lote IS INITIAL.

* << Fim da exclusão

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

    IF v_inbound IS INITIAL

       AND v_autbn NE '1'.

* << Fim da inclusão

      LOOP AT itab_zycit003.

        CLEAR: itab_mara.

        READ TABLE itab_mara WITH KEY matnr = itab_zycit003-matnr.

        IF itab_mara-xchpf EQ space.

          CONTINUE.

        ENDIF.

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

        READ TABLE itab_eket WITH KEY

             ebelp = itab_zycit003-ebelp

             ebeln = itab_zycit003-ebeln.

        IF sy-subrc EQ 0 AND

          itab_eket-charg NE space.

          CONTINUE.

        ENDIF.

* << Fim da inclusão

        READ TABLE itab_zycit223 WITH KEY

                  ebeln = itab_zycit003-ebeln

                  ebelp = itab_zycit003-ebelp.

        IF sy-subrc EQ 0.

          IF /pws/zycit321-lote EQ 2 AND

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

             wa_zycit000-flagdraw NE space.

* << Fim da exclusão

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

             wa_zycit000-flagdraw NE space

             AND itab_zycit003-nrseqd NE space

             AND itab_eket-licha IS INITIAL.

* << Fim da inclusão

            LOOP AT itab_zycit223 WHERE ebeln = itab_zycit003-ebeln

                                    AND ebelp = itab_zycit003-ebelp

                                    AND lote_forn EQ space.

              MESSAGE i015 WITH text-258 itab_zycit003-ebeln

                                                itab_zycit003-ebelp.

              v_sair = 'X'.

              EXIT.

            ENDLOOP.

          ENDIF.

        ELSE.

...