Páginas filhas
  • ER MANDIS01 WebService Pedidos Consulta

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

(Obrigatório)

Informações Gerais

 

Especificação

Produto

Logix

Módulo

Vendas

Segmento Executor

Manufatura

Projeto1

MANDIS01

IRM1

MANDIS01-711

Requisito1

 

Subtarefa1

 

Chamado2

 

País

(  X) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

<Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>.

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 

(Obrigatório)

 Objetivo 

O objetivo consiste em desenvolver Métodos/Webservices Logix Desenvolver Web Service para consulta de pedidos de Vendas no LOGIX com base no protocolo REST. 

O Método ou Webservice Web Service irá tratar toda a regra de negócio porém não contempla interface. Ou seja, deverá ser chamado por algum aplicativo passar os parâmetros de entrada e receberá o retorno do processamento. A interface ficará sob responsabilidade do cliente.

(Obrigatório)

Definição da Regra de Negócio

 

Basicamente serão desenvolvidas 2 funções 4gl, uma API para trabalhar como Web Service e outra com as regras de negócios do produto.

 Desenvolver funções 4GL para centralização do processo de consulta de pedidos externo no Logix.

A estrutura dos novos fontes seguirá a seguinte divisão:

 VDP90422VDPR272.4gl – API para consulta de pedido de venda. Deverá receber a empresa e o pedido por parâmetro, consistir para confirmar que não existem erros no pedido e utilizar a já existente função vdp90046 para realizar a simulação do faturamento.

Função principal: vdpr999_pub_process_simulaFaturamentoPedido()

Parâmetros de entrada (Tipo: PathParam):

  1. empresa
  2. pedido

Parâmetros de saída:


Centralizador consulta, tomar como base as funções desenvolvidas para o WorkFlow de compras: 

$/Logix/Fontes_Doc/Sustentacao/V12/V12/fluig/wf/WFSUP005/PROGRAM e o manual do Fluig: http://tdn.totvs.com/display/public/fluig/DEV+fluig

1) Realizar o GET dos filtros e parâmetros passados pelo Fluig.

    FILTROS:

Em array:

Empresa

Pedido 

Cliente 

Natureza de operação 

Condição de pagamento 

Carteira 

Representante 1

Situação do pedido 

Transportadora ;

Campo único:

Data emissão pedido DE - DATE;

Data emissão pedido ATE - DATE;

Prazo de entrega DE - DATE;

Prazo de entrega ATE - DATE;

Campo livre - CHAR(5000);


Parâmetros:

-- Tipo de pesquisa - Indica quais dados do pedido serão carregados. Opções:

             Completa - Todos;

             Cabeçalho - Empresa, pedido, cliente, natureza de operação, condição de pagamento, situação, transportadora, carteira, representante 1, data emissão pedido;

-- Paginação - Indica a quantidade de pedidos que serão carregados/retornados por execução; Caso não informado ou informado valor 0, será limitado pelo tamanho do array da capa do pedido;

-- Posição inicial paginação - Indica a partir de qual posição serão carregados os pedidos.

 

2) Chamar função de inicialização e fazer a carga dos parâmetros e filtro para a função vdp90423;

3) Executar a função de consulta do vdp90423, recebendo o status de execução e mensagem;

4) Fazer o get das seguintes informações.

         –> Dados do pedido conforme o tipo de pequisa;

         --> Indicador status paginação; (F - Finalizado ; P - Pendente)

 5) Realizar o set para o Fluig, dos dados conforme tipo de pesquisa;

 

VDP90423.4gl – Controle de consulta de pedidos externos

 

          1) Criar função para pesquisa que será executada pelo vdp90422. Estrutura da função:

 

                  --> Criar um cursor dinâmico, com base nos filtros informados, buscando apenas os dados da tabela "pedidos" (utilizar DISTINCT) e ordenando pelos campos empresa e pedido.

                  --> Dentro do FOREACH: adicionar a lógica de paginação; inserir os pedidos em uma temp (estrutura da temp: empresa e pedido) e armazenar os dados da tabela  "pedidos" no array para posterior retorno.

                   –> Após o cursor, criar novo cursor na temp para percorrer pelas empresas encontradas. Para cada registro carregador os parâmetros e SELECT DISTINCT. Dentro desse cursor carregar os demais dados das tabelas auxiliares, criando cursores relacionando a tabela com a temp (conforme parametrização); 

                   --> Realizar FREE de todos os cursores após uso.

                  --> Retornar Status de execução e Mensagem (erro/validação,etc) para a o vdp90422;

       

Demais funções:

1) inicializa_variáveis() - Inicializar todos os parâmetros que são recebidos.

2) função_set() - Criar função de SET para cada campo de filtro e parâmetros que serão enviados pelo vdp90422.

3) função_get()  - Criar funções de GET para os retornos que são esperados pelo VDP90422, conforme abaixo:

o   Todos os dados do pedido, conforme tabelas em anexo;

o   Status da paginação;

 

 

Tabelas que serão previstas

 

TabelaDescriçãoPrevistaobservação
ped_aen_item_pedAEN por itemsim 
ped_comissao_item  Comissão de representante por itemsim 
ped_compl_pedido   Complementos do pedidosim 
ped_consg_adicConsignatários adicionaissim 
ped_end_ent        endereço entrega pedido                          sim 
ped_end_retirada   Endereço de retiradasim 
ped_exp_item    Dados de exportação do itemsim 
ped_inf_com_itemComplemento do itemsim 
ped_inf_com_mestre Complemento mestresim 
ped_info_compl     informações complementares                       sim 
ped_info_nf_e      ped_info_nf_e                                    sim 
ped_it_canc_bonf   itens de bonif cancelados                        simSomente no cancelamento
ped_item_nat       natureza oper item                               sim 
ped_itens       Itens do pedido    sim 
ped_itens_adic  Adicionais do itemsim 
ped_itens_bnf      itens de bonificaçao                             sim 
ped_itens_cancelitens cancelados   simSomente no cancelamento
ped_itens_desc     descontos de pedido                              sim 
ped_itens_grade itens de grade     sim 
ped_itens_rem   itens de remessa   sim 
ped_itens_texto    texto itens pedido                               sim 
ped_nf_referencia  NF de referênciasim 
ped_observacao     observações de pedido                            sim 
ped_proc_referProcesso referenciadosim 
ped_seq_ped_clientenitemped e xpedsim 
pedido_comis       comissoes de pedidos                             sim 
pedido_listControle para listagemsim 
pedidos Cabeçalho do pedidosim 
vdp_end_entga_intm endereço entrega cliente intermediário           sim 
vdp_ped_item_complComplemento do itemsimSomente na modificação
vendor_pedido      Informações do vendorsim 
ped_item_prazoPrazo de entrega por gradesim 

 

 


Tabelas que não serão previstas

 

TabelaDescriçãoPrevistaobservação
ped_dupl_compl     Complemento das duplicatas antecipadas do pedido nãoVDP20000 não utiliza
ped_duplicata      Duplicatas antecipadas do pedido                 nãoVDP20000 não utiliza
ped_infc_auxiliar  informações auxiliares                           nãoVDP20000 não utiliza
ped_item_compl     ped_item_compl                                   nãoVDP20000 não utiliza
ped_itens_serie ped_itens_serie    nãoVDP20000 não utiliza
pedidos_textil     pedidos_textil                                   nãoVDP20000 não utiliza
sac_ped_rastr      sac_ped_rastr                                    nãoVDP20000 não utiliza
sac_ped_rastreab   sac_ped_rastreab                                 nãoVDP20000 não utiliza
sac_pedido         sac_pedido                                       nãoVDP20000 não utiliza

 

 

 

 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.