Módulo: DOC. EXPORTAÇÃO
Funcionalidade: Embarque
Data/Hora da Publicação: 17/08/2007 00:00:00
Data/Hora Última Alteração: 22/02/2011 10:51:29
Descrição da Nota: SELEÇÃO DE DOCUMENTO DE VENDAS QUANDO EMBARQUE POR PEDIDO DE COMPRA
Sintoma
Quando Embarque por Pedido de Compra (/pws/zycee001-emb_tipo = 'D') e caso haja ordem de venda no
processo (Complementos) ou caso o campo 'Ordem de Venda' (/pws/zycet002-vbeln_va) esteja preenchido
(preenchimento por exit, visto que o standard não preenche), os parceiros do documento de vendas são
selecionados, exibindo na pasta parceiros os parceiros da Ordem de Venda e do Pedido de
Compra.
Solução
Programa alterado para efetuar a seleção dos parceiros da Ordem de Venda apenas quando Tipo do
Embarque diferente de 'D'.
Incluída consistência antes das seleções nas tabelas de SD para que quando não haja registro na
tabela vbak (cabeçalho da ordem), as demais seleções não sejam realizadas.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04447 Data: 17/08/2007 Hora: 10:52:17
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04447
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00002
Agrupamento : 00008
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04334 - 00001 - 7.0 - 00002 - TRATAMENTO NA PASTA PARCEIROS DO EMBARQUE POR PEDIDO DE COMPRA
04408 - 00002 - 7.0 - 00002 - ATUALIZAÇÃO DOS DADOS NO EMBARQUE POR PEDIDO DE COMPRA
----------------------------------------------------------------------------------------------------
SELEÇÃO DE DOCUMENTO DE VENDAS QUANDO EMBARQUE POR PEDIDO DE COMPRA
----------------------------------------------------------------------------------------------------
Palavras Chave:
EMBARQUE, SELEÇÃO, DOCUMENTO, VENDAS, PEDIDO, PARCEIROS, CONSISTÊNCIA.
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCE003F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE003F01
...
bukrs = space.
ENDIF.
IF itab_zycet020-tipodoc EQ 'OV' OR
itab_zycet020-tipodoc EQ 'CO' OR
itab_zycet020-tipodoc EQ 'VC' OR
itab_zycet020-tipodoc EQ 'DR'.
DELETE itab_vbak INDEX v_index.
ENDIF.
ENDLOOP.
ENDIF.
* >> Início da inclusão: FORM SELECIONA_DADOS_SAP
IF NOT itab_vbak[] IS INITIAL.
* << Fim da inclusão
SELECT vbeln
lfstk
fkstk
fksak
buchk
cmgst
FROM vbuk
APPENDING TABLE itab_vbuk
FOR ALL ENTRIES IN itab_vbak
WHERE vbeln = itab_vbak-vbeln.
SELECT vbeln
posnr
lfsta
fksta
fksaa
FROM vbup
APPENDING TABLE itab_vbup
FOR ALL ENTRIES IN itab_vbak
WHERE vbeln = itab_vbak-vbeln.
* >> Início da inclusão: FORM SELECIONA_DADOS_SAP
IF /pws/zycee001-tipo_emb NE 'D'.
* << Fim da inclusão
SELECT vbeln
posnr
parvw
kunnr
lifnr
adrnr
ablad
land1
FROM vbpa
APPENDING TABLE itab_vbpa
FOR ALL ENTRIES IN itab_vbak
WHERE vbeln = itab_vbak-vbeln.
* >> Início da inclusão: FORM SELECIONA_DADOS_SAP
ENDIF.
* << Fim da inclusão
SELECT vbeln
posnr
inco1
inco2
zterm
empst
bstkd
FROM vbkd
APPENDING TABLE itab_vbkd
FOR ALL ENTRIES IN itab_vbak
...
...
WHERE vbeln = itab_vbak-vbeln.
IF sy-subrc NE 0.
CALL FUNCTION 'MESSAGE_STORE'
EXPORTING
arbgb = '/PWS/ZYCEM'
msgty = 'E'
msgv1 = text-502
msgv2 = /pws/zycee001-nrseq
txtnr = 221
zeile = 'OV_SEL_003'.
* >> Início da inclusão: FORM SELECIONA_DADOS_SAP
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
ELSE.
IF itab_ped[] IS INITIAL.
CALL FUNCTION 'MESSAGE_STORE'
EXPORTING
arbgb = '/PWS/ZYCEM'
msgty = 'E'
msgv1 = text-501
msgv2 = /pws/zycee001-nrseq
...
...
ENDIF.
IF p_excluir EQ 'X'.
itab_zycet002-mark = 'X'.
MODIFY itab_zycet002.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM CONSISTENCIA_ITENS
SORT itab_zycet002 BY vbeln_va
aupos
vbeln_vl
posnl
vbeln_vf
posnr
ebeln
ebelp.
* << Fim da inclusão
IF wa_limpa-werks EQ 'X'.
CLEAR: /pws/zycee001-werks.
ENDIF.
IF wa_limpa-gsber EQ 'X'.
CLEAR: /pws/zycee001-gsber.
ENDIF.
CHECK p_excluir EQ 'X'.
READ TABLE itab_zycet002 WITH KEY mark = 'X'.
IF sy-subrc IS INITIAL.
PERFORM elimina_itens_marcados USING space
...