Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - Linha Datasul - MEQ - Documentação EQAPI300

time.png Tempo aproximado para leitura: 00:09:00 min

Dúvida
Como funciona a EQAPI300 - API de Manipulação de Embarques para Faturamento?

Ambiente
Cross Segmentos - TOTVS Backoffice (Linha Datasul) - Embarques (MEQ) – Todas as versões

Solução
O objetivo desta API é permitir que sejam criados e manipulados embarques e suas entidades relacionadas, como pedidos do embarque, resumos e alocação no embarque.

A API em sua versão atual deve ser executada em modo persistente e seus métodos internos acessados diretamente pelo programa que a está executando.

Exemplo de execução da API:

def var h-api as handle no-undo.

run eqp/eqapi300.p persistent set h-api.

Exemplo de execução dos métodos da API:

run pi-recebe-tt-embarque (input table tt-embarque).


Método Básico:

A API é composta de vários métodos, agrupados por sua funcionalidade, listados abaixo:

Métodos para recepção de temp-tables:
- PI-Recebe-TT-Embarque

a.PNG

- PI-Recebe-TT-It-Pre-Fat

b.PNG

- PI-Recebe-TT-Ped-Ent

c.PNG

- PI-Recebe-TT-Ped-Venda

d.PNG

- PI-Recebe-TT-Deposito

l.PNG

- PI-Recebe-TT-It-Narrativa

m.PNG

- PI-Recebe-TT-Item-Filho

n.PNG

Métodos de processamento:
- PI-Trata-TT-Embarque

e.PNG

- PI-Trata-TT-It-Pre-Fat

f.PNG

- PI-Trata-TT-Ped-Ent

g.PNG

- PI-Trata-TT-Ped-Venda

h.PNG

- PI-Trata-TT-It-Narrativa

o.PNG

- PI-Encerra-Embarque

i.PNG

Métodos genéricos:
- PI-Finalizar

k.PNG

- PI-Devolve-TT-Erro

j.PNG

Definição das tem-tables utilizadas pela API:

def temp-table tt-embarque no-undo like embarque use-index ch-emb

    field i-sequen as int

    field ind-oper as int. /* 1 - Inclusão

                              2 - Alteração

                              3 - Eliminação */

 

def temp-table tt-ped-venda no-undo

    field i-sequen    as int

    field cdd-embarq like embarque.cdd-embarq

    field nome-abrev  like ped-venda.nome-abrev

    field nr-pedcli   like ped-venda.nr-pedcli

    field ind-oper    as int /* 1 - Alocar

                                2 - Desalocar */

 

    index ch-pedido is primary

        nome-abrev

        nr-pedcli.

 

def temp-table tt-ped-ent no-undo

    field nome-abrev   like ped-ent.nome-abrev

    field nr-pedcli    like ped-ent.nr-pedcli

    field nr-sequencia like ped-ent.nr-sequencia

    field it-codigo    like ped-ent.it-codigo

    field cod-refer    like ped-ent.cod-refer

    field qt-alocada   like ped-ent.qt-alocada

    field qt-log-aloca like ped-ent.qt-log-aloca

    field qt-pedida    like ped-ent.qt-pedida

    field qt-atendida  like ped-ent.qt-atendida

    field dt-entrega   like ped-ent.dt-entrega

    field nr-entrega   like ped-ent.nr-entrega

    field hr-entrega   like ped-ent.hr-entrega

  

  &if defined(bf_dis_proc_ent) &then

    field nr-proc-exp  like ped-ent.nr-proc-exp

  &endif

 

    &if defined(bf_dis_desc_bonif) &then

        field num-sequencia-bonif like ped-item.num-sequencia-bonif

    &endif  

  

    field nat-operacao    like ped-item.nat-operacao

  

    field dec-1           like ped-ent.dec-1

    field qt-a-alocar     as decimal

    field i-sequen        as int

    field cdd-embarq     as decimal

    field nr-seq-registro as integer init 1

  

    index ch-ent is primary

    &if defined(bf_comex206b-1) &then

        nr-proc-exp

    &endif

        nome-abrev

        nr-pedcli

        nr-sequencia

        it-codigo

        cod-refer       

        nr-entrega.

      

def temp-table tt-it-pre-fat no-undo

    field cdd-embarq  as decimal

    field nr-resumo    as int

    field nome-abrev   as char

    field nr-pedcli    as char

    field nr-sequencia as int

    field it-codigo    as char

    field qt-a-alocar  as deci

    field i-sequen     as int

    field nr-entrega   as int

    index ch-it-pre-fat is primary

        cdd-embarq

        nr-resumo

        nome-abrev

        nr-pedcli

        nr-sequencia

        it-codigo

        nr-entrega.

      

def temp-table tt-aloc-man no-undo

    field cdd-embarq  as decimal

    field nr-resumo    as int

    field nome-abrev   as char

    field nr-pedcli    as char

    field nr-sequencia as int

    field it-codigo    as char

    field cod-estabel  as char

    field cod-depos    as char

    field cod-localiz  as char

    field lote         as char

    field cod-refer    as char

    field qt-a-alocar  as deci

    field i-sequen     as int

    field nr-entrega   as int.

 

def temp-table tt-deposito no-undo

    field sequen as int

    field cod-depos like deposito.cod-depos

    index ch-aeq-dep is primary unique

        sequen.

  

def temp-table tt-it-narrativa no-undo

    field nome-abrev   as char

    field nr-pedcli    as char

    field nr-sequencia as int

    field it-codigo    as char

    field cod-refer    as char

    field nr-entrega   as int

    field cdd-embarq  as decimal

    field nr-resumo    as int

    field narrativa    as char.

 

def temp-table tt-item-filho no-undo

    field nome-abrev   as char

    field nr-pedcli    as char

    field nr-sequencia as int

    field it-codigo    as char

    field cod-refer    as char

    field nr-entrega   as int

    field qt-a-alocar  as deci

    index ch-entrega is primary

        nome-abrev

        nr-pedcli

        nr-sequencia

        it-codigo

        cod-refer

        nr-entrega.

 

def temp-table tt-aloc-comp-man no-undo

    field cdd-embarq  as decimal

    field nr-resumo    as int

    field nome-abrev   as char

    field nr-pedcli    as char

    field nr-sequencia as int

    field it-codigo    as char

    field cod-estabel  as char

    field cod-depos    as char

    field cod-localiz  as char

    field lote         as char

    field cod-refer    as char

    field qt-a-alocar  as deci

    field i-sequen     as int

    field nr-entrega   as int.

 

def temp-table tt-aloc-neg no-undo

    field cod-depos   as char

    field cod-localiz as char.

 

DEF TEMP-TABLE tt-deposito-local NO-UNDO

    FIELD sequen     AS INT

    FIELD cod-depos  LIKE deposito.cod-depos

    FIELD dep-wms    AS LOGICAL

    FIELD it-codigo  LIKE ITEM.it-codigo

    INDEX ch-seq-dep IS PRIMARY sequen.

 

/* temp-table auxiliar criada para não provocar erro 3241*/

DEF TEMP-TABLE tt-manut-alocacao NO-UNDO LIKE tt-aloc-man.

 

/* temp table usada em cotas, para o AC1002 */

DEF TEMP-TABLE tt-ped-item-cotas

    FIELD nr-sequencia AS INT

    FIELD it-codigo    AS CHAR

    FIELD cod-refer    AS CHAR.

 

def temp-table tt-depos-wms no-undo

    field cod-depos as char

    field log-wms   as log.

 

DEFINE TEMP-TABLE tt-estabelec NO-UNDO

   FIELD cod-estabel LIKE estabelec.cod-estabel

   FIELD est-padrao  AS INTEGER  /* 0 para estabelecimento do pedido/embarque */

   index codigo      is primary est-padrao.

 

DEFINE TEMP-TABLE tt-integra NO-UNDO

    FIELD r-pedido AS ROWID.

A TEMP-TABLE TT-Embarque é utilizada para efetuar a manutenção das informações gerais sobre o embarque. É uma cópia da tabela embarque mais os seguintes campos:

- i-sequen: Utilizado para relacionar o registro da TT-Embarque com os possíveis registros da TT-Erro gerados pelo processamento da TEMP-TABLE;
- ind-oper : Indicador da operação a ser efetuada com o embarque. Pode conter os seguintes valores:

1. Inclusão de um novo embarque;
2. Alteração dos dados de um embarque existente;
3. Eliminação de um embarque.

A TEMP-TABLE TT-Ped-Venda é utilizada para efetuar a alocação ou desalocação de pedidos. Possui os seguintes campos:

- i-sequen: Utilizado para relacionar o registro da TT-Ped-Venda com os possíveis registros da TT-Erro gerados pelo processamento da TEMP-TABLE;
- cdd-embarq: Indica em qual embarque será efetuada a alocação ou desalocação do pedido;
- nome-abrev: Nome abreviado do cliente do pedido a ser alocado/desalocado;
- nr-pedcli: Número do pedido do cliente a ser alocado/desalocado;
- ind-oper: Indicador da operação a ser efetuada com o embarque. Pode conter os seguintes valores:

1. Alocação do pedido;
2. Desalocação do pedido.

A TEMP-TABLE TT-Ped-Ent é utilizada para efetuar a alocação de entregas de pedidos. Possui os seguintes campos:

- nome-abrev: Nome abreviado do cliente da entrega;
- nr-pedcli: Número do pedido do cliente da entrega;
- nr-sequencia: Número de sequência do item da entrega
- it-codigo: Código do item da entrega;
- cod-refer: Referência do item da entrega;
-  qt-alocada: Quantidade alocada da entrega do pedido;
- qt-log-aloca: Quantidade logicamente alocada para o pedido;
- qt-pedida: Quantidade solicitada da entrega no pedido de compra ou venda;
- qt-atendida: Quantidade faturada para a entrega no pedido;
- dt-entrega: Data de entrega do item do pedido;
- nr-entrega: Número da entrega;
- hr-entrega: Hora de Entrega do item do pedido;
- nr-proc-exp: Número do processo de exportação;
- num-sequencia-bonif: Número da sequência do item de venda quando for bonificação;
- nat-operacao: Natureza de operação;
- qt-a-alocar: Quantidade a ser alocada;
- i-sequen: Utilizado para relacionar o registro da TT-Ped-Ent com os possíveis registros da TT-Erro gerados pelo processamento da TEMP-TABLE;
- cdd-embarq: Indica em qual embarque será efetuada a alocação;

A TEMP-TABLE TT-It-Pre-Fat é utilizada para alterar a quantidade alocadas. Possui os seguintes campos:

- cdd-embarq: Indica em qual embarque será efetuado o processamento;
- nr-resumo: Número do resumo;
- nome-abrev: Nome abreviado do cliente;
- nr-pedcli: Número do pedido do cliente;
- nr-sequencia: Número de sequência do item;
- it-codigo: Código do item;
- qt-a-alocar: Quantidade a ser alocada/desalocada. Quantidades positivas alocam e negativas desalocam;
- i-sequen: Utilizado para relacionar o registro da TT-Ped-Ent com os possíveis registros da TT-Erro gerados pelo processamento da TEMP-TABLE;
-  nr-entrega: Número da entrega do item do pedido.

A TEMP-TABLE TT-Deposito é utilizada para informar quais depósitos devem ser pesquisados para efetuar as alocações. Possui os seguintes campos:

- sequen: Sequência em que o depósito será pesquisado;
- cod-depos: Código do depósito a ser pesquisado.

Importante
Cada vez que é executada um método PI-Recebe-TT-???? as demais TEMP-TABLES são eliminadas dentro da API. Pode ser utilizado o programa CD0667 (cdp/cd0667.w) para a exibição da TEMP-TABLE TT-Erro. O programa recebe como parâmetro de INPUT apenas a TEMP-TABLE.

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _