on 06-30-2015 2:05 AM
Prezados,
No standard eu consigo definir que um tipo de pedido só possa ser gerado com base em contratos?
Ou que seus itens tenham que fazer referencia sempre para um contrato?
Obrigado.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Raphael,
Para fazer o que você está pensando de forma standard, será necessário primeiro criar uma nova chave de seleção de campos para o pedido. no SPRO o caminho é:
SPRO -> Administração dos Materiais -> Compras -> Pedido -> Determinar estrutura de tela a nível de documento.
Nesta transação, você criará uma nova chave de seleção, de preferência copiando de uma já existente, e nesta chave você marcará o campo contrato básico como Ent.obrig.
Uma vez criada esta chave de seleção, será necessário criar um novo tipo de pedido. Este novo tipo de pedido será criado através do seguinte caminho do SPRO:
SPRO -> Administração dos Materiais -> Compras -> Pedido -> Definir tipos de documentos
Assim como na transação anterior, é recomendado que se crie com cópia de um já existente. Depois de criado este novo tipo, ele deverá ser vinculado à nova chave de seleção de campos criada na transação anterior.
Aqui na nossa empresa a gente tem diversas regras neste sentido. Tem um determinado tipo de pedido onde a cotação é obrigatória, outra que o contrato é obrigatório, outro que nada é obrigatório etc....
Se fizer desta forma, você conseguirá o que deseja de forma standard.
Qualquer problema ou dúvida estou à disposição.
Atc,
Rodrigo Amorim
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Raphael,
Aqui no nosso ambiente temos uma série de tipos de cotação. Vou mostrar a configuração de um que a requisição é obrigatória.
Primeiro você vai ter que criar uma estrutura de tela.
Caminho no SPRO: SPRO -> MM -> Compras -> Solicitação de Cotação/Cotação -> Determinar estrutura da tela a nível de documento
Criamos aqui um chamado ZANA (Uma boa prática é criar com cópia a um já existente.)
Nesta estrutura de tela, você marca a requisição como obrigatória
Depois que fizer isso, você criará um tipo de cotação
Caminho SPRO: MM -> Compras -> Solicitação de Cotação/Cotação -> Definir tipo de documento
Aqui a gente criou o tipo ZDIS e a este tipo de cotação a gente atrelou a estrutura de tela criada acima. (Uma boa prática é criar um tipo com cópia de outro já existente)
Depois de feitas estas configurações, o campo da requisição passa a ser obrigatório para o tipo de cotação ZDIS. Se você não informar o sistema apresenta o erro abaixo e não deixa criar o documento.
Espero que ajude vocês aí nas configurações. Qualquer problema ou dúvida, só falar.
Atc,
Rodrigo
Raphael,
Fui debugar aqui e vi que na verdade, além da configuração, foi implementado uma exit para ativação desta mensagem. Pensei a princípio que fosse tudo standard, mas o ABAP implementou uma exit no momento da gravação da cotação.
Agora, eu como funcional, não entendo o motivo pelo qual isso foi feito, pois pela configuração, deveria ser basicamente uma checagem standard e não precisaria de código z abap para isso.
Segue um trecho do código:
DATA: lw_bekpo TYPE bekpo,
lw_beket TYPE beket,
lw_ekpo_ct TYPE ekpo,
lw_t162 TYPE t162.
DATA: lv_brefn TYPE t161-brefn,
lv_msgty TYPE sy-msgty,
lv_origemz TYPE xfeld.
* Encontra a barra de status de campo para o tipo de documento
SELECT SINGLE brefn
FROM t161
INTO lv_brefn
WHERE bstyp EQ pw_ekko-bstyp
AND bsart EQ pw_ekko-bsart.
CHECK sy-subrc EQ 0.
SELECT SINGLE *
FROM t162
INTO lw_t162
WHERE flref EQ lv_brefn.
* Verifica se o campo de requisição de compra está definido como
* obrigatório para o tipo de documento
CHECK lw_t162-faus1+2(1) EQ '+'.
* Loop nos itens do documento de compra para verificar se todos estão
* com a requisição preenchida
LOOP AT pt_bekpo INTO lw_bekpo WHERE loekz NE 'L' "Não eliminado
AND updkz EQ 'I'. "Inserção
LOOP AT pt_beket INTO lw_beket FROM sy-tabix.
IF lw_beket-ebelp <> lw_bekpo-ebelp.
EXIT.
ENDIF.
IF lw_beket-banfn IS INITIAL.
MESSAGE ID 'ME' TYPE lv_msgty NUMBER 083
WITH 'Requisição de compra - Item'(003) lw_bekpo-ebelp.
ENDIF.
ENDLOOP.
ENDLOOP.
Talvez isso ajude vocês a implementar também esta checagem por aí.
Atc,
Rodrigo
Rapahel,
Continuei aqui as pesquisas e parece que esta configuração aparentemente não funciona, Infelizmente.
http://scn.sap.com/thread/2050377
Atc,
Rodrigo
Raphael,
É possível sim fazer isso no standard. Amanhã no escritório eu te passo como se faz. Na empresa que eu trabalho isso foi feito.
Abraços,
Rodrigo Amorim
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
107 | |
12 | |
11 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.