CE PLUS - Nota 004787

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Nomeação - Carga Rota Viagem Transp

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

Data/Hora Última Alteração: 04/03/2010 11:13:01

Descrição da Nota: CORREÇÃO NA VINCULAÇÃO DE DOCUMENTO DE COMPRA

Sintoma

 

A vinculação de documentos de compra não funciona com seleções múltiplas.

 

Solução

 

implementação de funcionalidade de seleção múltipla para documentos de compra.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04787 Data: 21/09/2007 Hora: 14:34:53

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

 

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

Nota Número              : 04787

Categoria                : Erro de Programa

Prioridade               : Baixa

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00014

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

CORREÇÃO NA VINCULAÇÃO DE DOCUMENTO DE COMPRA

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

Palavras Chave:

VINCULAÇÃO NOMEAÇÃO DOCUMENTO COMPRA

 

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

Objetos da nota:

MESS /PWS/ZYCEM292

DYNP /PWS/SAPMZYCE103                        1500

DYNP /PWS/SAPMZYCE103                        1510

REPS /PWS/MZYCE103F01

REPS /PWS/MZYCE103I01

REPS /PWS/MZYCE103O01

TABD /PWS/ZYCEE109

TABD /PWS/ZYCET109

 

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

Modificações efetuadas em MESS /PWS/ZYCEM292

 

INCLUIR MENSAGEM: /PWS/ZYCEM(292)

MENSAGEM: "Todos os documentos já foram vinculados."

AUTO-EXPLICATIVA? (X)

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCE103                        1500

 

Incluído o campo "/PWS/ZYCEE109-EBELP" (tipo I/O) no table control TC_VINCU, entre os campos

"/PWS/ZYCEE109-EBELN" e "I_COMP". Marcar o campo para entrada "não possível".

 

Incluído o título de coluna "/PWS/ZYCEE109-EBELP" (tipo Label) no table control TC_VINCU, entre os

campos "/PWS/ZYCEE109-EBELN" e "I_COMP"

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCE103                        1510

 

MODIFICAR TABLE CONTROL: TC_COMP

 

ATRIBUTOS:

 

MARC. LINHAS:  ( ) - SEM         ( ) - SIMPLES    (X) - MÚLTIPLO

MARC. COLUNAS: (X) - SEM         ( ) - SIMPLES    ( ) - MÚLTIPLO

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCE103F01

 

...

      LOOP AT tc_vincu-cols INTO wa_col.

        IF  wa_col-screen-name = '/PWS/ZYCEE109-VBELN_VA' OR

            wa_col-screen-name = '/PWS/ZYCEE109-POSNR'    OR

            wa_col-screen-name = 'I_OV' .

          IF gtipo = 'PI'.

            wa_col-invisible = '1'.

          ELSE.

            wa_col-invisible = '0'.

          ENDIF.

        ELSEIF wa_col-screen-name = '/PWS/ZYCEE109-EBELN' OR

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

               wa_col-screen-name = '/PWS/ZYCEE109-EBELP' OR

* << Fim da inclusão

               wa_col-screen-name = '/PWS/ZYCEE109-ETENR'.

          IF gtipo = 'OV'.

            wa_col-invisible = '1'.

          ELSE.

            wa_col-invisible = '0'.

          ENDIF.

        ENDIF.

        MODIFY  tc_vincu-cols FROM wa_col.

      ENDLOOP.

    WHEN '1600'.

...

 

...

  ENDIF.

ENDFORM.

FORM executa_exit USING p_exit LIKE /pws/zyglt100-zexit.

  READ TABLE itab_zyglt100 WITH KEY zexit = p_exit BINARY SEARCH.

  CHECK sy-subrc = 0.

  CHECK NOT itab_zyglt100-zexit_ativa IS INITIAL.

  PERFORM (itab_zyglt100-formulario)

    IN PROGRAM (itab_zyglt100-programa)

    IF FOUND.

ENDFORM.

* >> Início da inclusão:

FORM marcacao_doc_compra USING p_marca TYPE char1.

  LOOP AT itcomp.

    itcomp-mark = p_marca.

    MODIFY itcomp.

  ENDLOOP.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCE103I01

 

...

          SORT it109 BY tpcont nreserva vbeln_va.

        ENDIF.

      ENDLOOP.

    WHEN 'I_COMP'.

* >> Início da exclusão: MODULE USER_COMMAND_1500

      GET CURSOR FIELD gfield VALUE gvalue LINE gidx.

      gpos = tc_vincu-top_line + gidx - 1.

      READ TABLE it135 INDEX gpos.

      IF sy-subrc = 0.

        CLEAR itcomp. REFRESH itcomp.

        LOOP AT it135.

          MOVE: it135-ebeln   TO itcomp-ebeln,

                it135-ebelp   TO itcomp-ebelp,

                it135-etenr   TO itcomp-etenr.

          APPEND itcomp.

        ENDLOOP.

        CALL SCREEN '1510' STARTING AT 5 6.

      ENDIF.

* << Fim da exclusão

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

      CLEAR: itcomp,

             itcomp[].

 

      LOOP AT it135.

 

        READ TABLE it109[] TRANSPORTING NO FIELDS

             WITH KEY ebeln = it135-ebeln

                      ebelp = it135-ebelp.

 

        CHECK sy-subrc <> 0.

 

        MOVE: it135-ebeln TO itcomp-ebeln,

              it135-ebelp TO itcomp-ebelp,

              it135-etenr TO itcomp-etenr.

 

        APPEND itcomp.

 

      ENDLOOP.

 

      IF NOT itcomp[] IS INITIAL.

 

        CALL SCREEN '1510' STARTING AT 5 6.

 

      ELSE.

 

        MESSAGE w292.

 

      ENDIF.

* << Fim da exclusão

    WHEN 'I_OV'.

      CLEAR: okcode.

      GET CURSOR FIELD gfield VALUE gvalue LINE gidx.

      gpos = tc_vincu-top_line + gidx - 1.

...

 

...

  ENDCASE.

ENDMODULE.

MODULE fill_sint2_exit4 INPUT.

  PERFORM fill_sint2_exit4.

ENDMODULE.

MODULE user_command_1510 INPUT.

  CASE sy-ucomm.

    WHEN 'CANCEL'.

      CLEAR: itcomp.

      LEAVE TO SCREEN 0.

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

    WHEN 'MARCA'.

      PERFORM marcacao_doc_compra USING 'X'.

    WHEN 'DESMARCA'.

      PERFORM marcacao_doc_compra USING space.

* << Fim da inclusão

    WHEN 'OK'.

* >> Início da exclusão: MODULE USER_COMMAND_1510

      READ TABLE itcomp WITH KEY mark = 'X'.

      IF sy-subrc = 0.

        it109-ebeln = itcomp-ebeln.

        it109-etenr = itcomp-etenr.

        it109-ntgew = itcomp-menge.

        MODIFY it109 INDEX gpos.

        IF sy-subrc NE 0.

          APPEND it109.

        ENDIF.

        LEAVE TO SCREEN 0.

      ELSE.

        MESSAGE i001 WITH text-010.

      ENDIF.

* << Fim da exclusão

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

      READ TABLE itcomp WITH KEY mark = 'X'.

 

      IF sy-subrc NE 0.

 

        MESSAGE i001 WITH text-010.

 

      ELSE.

 

        LOOP AT itcomp WHERE mark = 'X'.

 

          READ TABLE it109 INDEX gpos.

 

          IF sy-subrc = 0 AND it109-ebeln = space.

 

            it109-ebeln = itcomp-ebeln.

            it109-ebelp = itcomp-ebelp.

            it109-etenr = itcomp-etenr.

            it109-ntgew = itcomp-menge.

 

            MODIFY it109 INDEX gpos.

 

          ELSE.

 

            it109-ebeln = itcomp-ebeln.

            it109-ebelp = itcomp-ebelp.

            it109-etenr = itcomp-etenr.

            it109-ntgew = itcomp-menge.

 

            APPEND it109.

 

          ENDIF.

 

        ENDLOOP.

 

        DELETE itcomp WHERE mark = 'X'.

 

        LEAVE TO SCREEN 0.

 

      ENDIF.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE user_command_1520 INPUT.

  CASE sy-ucomm.

    WHEN 'CANCEL'.

      CLEAR: itovv.

      LEAVE TO SCREEN 0.

    WHEN 'OK'.

      PERFORM comm_ok.

 

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

Modificações efetuadas em REPS /PWS/MZYCE103O01

 

...

ENDMODULE.

MODULE load_it217 OUTPUT.

  MOVE: it217 TO /pws/zycee217.

  MOVE: it217-mark TO smark.

ENDMODULE.

MODULE verify_ov_intercompany OUTPUT.

  PERFORM load_po USING space.

ENDMODULE.

MODULE status_1510 OUTPUT.

  SET PF-STATUS '1500'.

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

  DESCRIBE TABLE itcomp[] LINES tc_comp-lines.

* << Fim da inclusão

ENDMODULE.

MODULE status_1520 OUTPUT.

  SET PF-STATUS '1500'.

ENDMODULE.

MODULE load_comp OUTPUT.

  MOVE-CORRESPONDING itcomp TO /pws/zycee135.

  MOVE: itcomp-mark   TO mark.

ENDMODULE.

MODULE load_ovv OUTPUT.

  MOVE-CORRESPONDING itovv TO /pws/zycee108.

...

 

 

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

Modificações efetuadas em TABD /PWS/ZYCEE109

 

Incluído o campo EBELP, usando o elemento de dados EBELP, entre os campos EBELN e TPCONT.

 

 

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

Modificações efetuadas em TABD /PWS/ZYCET109

 

Incluído o campo chave EBELP, usando o elemento de dados EBELP, entre os campos EBELN e TPCONT.