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.
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.