4Each • Exibir tópico - Ajuda com API

Ajuda com API

Duvidas sobre EMS 2, EMS 5 e HCM

Ajuda com API

Mensagempor Rogerio em 28 Jun 2010, 15:18

Galera alguem sabe qual a API que uso para fazer Transferência de Materiais (CP0310) ??? ou alguma outra forma mais facil...
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Re: Ajuda com API

Mensagempor eduardo.leite em 28 Jun 2010, 16:32

Caro colega,

Tem a API de Transferência de Materiais para a Produção (CPAPI014), leia a documentação em anexo e veja se te atenda.
Você não está autorizado a ver ou baixar esse anexo.
Att.


Eduardo B. Leite
MSN/E-Mail: leite1969@yahoo.com.br
SKYPE: eduardo.batista.leite

P.S.: Estou procurando trabalho para ser feito em períodos noturnos e finais de semana.
eduardo.leite
Suporte
Suporte
 
Mensagens: 217
Registro: 04 Fev 2009, 05:48

Re: Ajuda com API

Mensagempor Rogerio em 28 Jun 2010, 18:52

Valew Eduardo, uma coisa como faço para indicar o lote do item no qual estou efetuando a tranferencia?
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Re: Ajuda com API

Mensagempor Rogerio em 30 Jun 2010, 10:16

Galera alguem sabe como faço para indicar o lote na qual quero quer seja feita a tranferência pela API de Transferência de Materiais para a Produção (CPAPI014)
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Re: Ajuda com API

Mensagempor eduardo.leite em 30 Jun 2010, 11:06

Existem as tabelas tt-req-sum e tt-aloca que são passados os dados de lote.
Att.


Eduardo B. Leite
MSN/E-Mail: leite1969@yahoo.com.br
SKYPE: eduardo.batista.leite

P.S.: Estou procurando trabalho para ser feito em períodos noturnos e finais de semana.
eduardo.leite
Suporte
Suporte
 
Mensagens: 217
Registro: 04 Fev 2009, 05:48

Re: Ajuda com API

Mensagempor Rogerio em 30 Jun 2010, 11:58

Mas na documentação não tem como deve preencher esses campos, como são definidas essas tabelas... E em que momento eu passo essas temp-tables como parametros
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Re: Ajuda com API

Mensagempor Rogerio em 01 Jul 2010, 16:53

Alguem sabe como faço para popular as tabelas tt-req-sum e tt-aloca da API de Transferência de Materiais para a Produção (CPAPI014)???
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Re: Ajuda com API

Mensagempor eduardo.leite em 05 Jul 2010, 20:14

Rogério,

Estive um pouco agarrado com atividades e não consegui antes fazer um exemplo para você, eu ainda não havia feito desta maneira.

A rotina abaixo não foi testada, mas a lógica é mais ou menos desta maneira que está sendo feita, preencha os campos com os valores e faça um teste.

Código: Selecionar todos

{cpp/cpapi014.i}   /* tt-transf  */
{cpp/cpapi014.i1}  /* tt-req-sum */

def var c-erro      as character    no-undo.
def var c-texto     as character    no-undo.

def var h-cpapi014  as handle       no-undo.

create tt-transf.

assign tt-transf.tipo-trans            = ""
       tt-transf.cod-estabel           = ""
       tt-transf.data                  = ""
       tt-transf.nr-req-sum            = ""
       tt-transf.cod-depos-dest        = ""
       tt-transf.cod-localiz-dest      = ""
       tt-transf.deposito-ini          = ""
       tt-transf.deposito-fim          = ""
       tt-transf.item-ini              = ""
       tt-transf.item-fim              = ""
       tt-transf.cod-versao-integracao = 1
       tt-transf.procura-saldos        = ""
       tt-transf.loc-ent-unica         = ""
       tt-transf.conta-contabil        = ""
       tt-transf.percentual            = ""
       tt-transf.carrega-req-sum       = "".

run cpp/cpapi014.p persistent set h-cpapi014 (input table tt-transf,
                                              input-output table tt-erro,
                                              input yes).

for each tt-error:

    message tt-erro.cd-erro     skip
            tt-erro.mensagem    view-as alert-box.

end.

if return-value = "NOK" then
    return "NOK".
   
run pi-dados-default in h-cpapi014.
   
find first tt-transf.
   
run pi-valida-transf in h-cpapi014 (input no,
                                    input tt-transf.nr-req-sum,
                                    output c-erro,
                                    output c-texto).
                           
do i-cont = 1 to num-entries (c-erro):

    create tt-erro.
    assign tt-erro.cd-erro  = int(entry (i-cont, c-erro))  no-error.

    run utp/ut-msgs.p (input "msg",
                       input tt-erro.cd-erro,
                       input entry (i-cont, c-texto)).                       
       
    assign tt-erro.mensagem = return-value.
             
end.                   
   
for each tt-error:

    message tt-erro.cd-erro     skip
            tt-erro.mensagem    view-as alert-box.

end.
   
if c-erro <> ""
    then return return-value.   
   
run pi-carrega-tt-req-sum IN h-cpapi014. /* carrega temp-table */

for each tt-req-sum:
    delete tt-req-sum.
end.
   
run pi-retorna-tt-req-sum in h-cpapi014 (output table tt-req-sum).

for each tt-req-sum:

    assign tt-req-sum.lote        = ""
           tt-req-sum.cod-localiz = ""
           tt-req-sum.cod-refer   = ""
           tt-req-sum.qt-requis   = "".
   
end.

run pi-recebe-tt-req-sum in h-cpapi014 (input table tt-req-sum).

run pi-processa-transf   in h-cpapi014 (input        table tt-transf,                               
                                        input-output table tt-erro,
                                        input        yes).

if valid-handle(h-cpapi014) then
    delete object h-cpapi014.

Att.


Eduardo B. Leite
MSN/E-Mail: leite1969@yahoo.com.br
SKYPE: eduardo.batista.leite

P.S.: Estou procurando trabalho para ser feito em períodos noturnos e finais de semana.
eduardo.leite
Suporte
Suporte
 
Mensagens: 217
Registro: 04 Fev 2009, 05:48

Re: Ajuda com API

Mensagempor Rogerio em 07 Jul 2010, 15:56

Eduardo muito obrigado, mas estou fazendo de outra forma, já que na req-sum já existe um determinado lote, eu primeiro verifico o lote nela antes de validar....

Uma coisa, nos parametros da cpapi014, na tt-transf, nos campos ITEM-INI e ITEM-FIM, SE EU COLOCAR RESPECTIVAMENTE "" e "Z", isso quer dizer que a API fará a tansferência de todos os itens existentes naquela requisição que eu informei no campo tt-transf.nr-req-sum??? ou eu tenho que executar a API uma vez para cada item que desejo efetuar a transferência?
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Re: Ajuda com API

Mensagempor Rogerio em 28 Jul 2010, 17:24

Cara estou tendo outro problema:

O item origem está no deposito - ALM na localizacao - A1
quero trnaferir ele para o deposito AND sem localizacao.
estou populando a tt-transf assim:

.
.
.
tt-transf.cod-depos-dest = "AND"
tt-transf.cod-localiz-dest = ""
...

Mas o que está acontecendo é o seguinte, o EMS está tentando transferir para o deposito AND localizacao A1, e naum localizacao em branco como eu gostaria....

O que pode ser isso??? será que tem mais algum campo no qual eu deva preencher?
ROGERIO
Analista de Sistemas
Avatar do usuário
Rogerio
Usuário Analista
Usuário Analista
 
Mensagens: 150
Registro: 28 Jan 2009, 06:02
Localização: Jundiai - SP

Próximo

Voltar para EMS 2 , 5 e HCM

Quem está online

Usuários navegando neste fórum: CommonCrawl [Bot] e 1 visitante