Histórico da Página
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 para consulta de pedidos de Vendas.
O Método ou Webservice 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
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:
VDP90422.4gl – 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:
1 Completa - Todos;
2 - Empresa e pedido; 3 - Empresa 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ão carregados todos os pedidos;
-- Posição inicial paginação - Indica a partir de qual posição serão carregados os pedidos.
2) Fazer 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
Funções externas:
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 o pedido no array para posterior retorno.
–> Após o cursor, criar novos cursores para cada tabela que precisa ser carregada. Verificar a necessidade de leitura conforme parametrização (log2250) ou SELECT DISTINCT verificando se existem registros na base (não utilizar empresa no where);
) 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 pelas funções SET abaixo.
· função_set() - Criar função de SET para cada campo de filtro e parâmetros que serão enviados pelo vdp90422.
· 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;
· processo_consultar_pedidos() - Será a função principal, executada pelo VDP90422. Dentro dela:
1) Criar um cursor dinâmico, com base nos filtros informados, buscando apenas empresa e pedido (utilizar DISTINCT) e ordenando por esses mesmos campos.
) Retornar Status de execução e Mensagem (erro/validação,etc) para a o vdp90422;
Funções internas:
· validação_tela() - Fará as chamadas das funções VDPR260.
· efetivar_tabelas_pedido() - Efetivar dados das tabelas quentes através das respectivas DML's
· consiste_pedido() - Executar o vdp20023 para consistir o pedido
· simular_faturamento() - Executar o vdp90046 para simular o faturamento do pedido (necessário ajustes por causa das msgs em tela)
VDPR260.4gl – Validações dos campos conforme é realizado hoje em tela (VDP20000)
Funções externas:
- carrega_parametros() - Fará carga dos parâmetros do LOG00086 e outros necessários durante a validação.
- valida_XXXX() - Cria uma função para cada campo que necessite de validação.
Observações: 1) Deverá receber todas as variáveis por parâmetro local;
2) Sempre retornar 3 parâmetros: status de execução, mensagem e o tipo de mensagem: E - Erro SQL / V - Validação / A - Alerta;
2) Revisar as mensagens se estão com linguagem clara do erro.
3) Adicionar nas mensagens a chave do cadastro. Ex.: Cliente XXXXX não cadastrado.
4) Deverá respeitar os parâmetros do LOG00086 para obrigar ou não o preenchimento dos campos.
Tabelas que serão previstas
Tabela | Descrição | Prevista | observação |
ate_mov_os | Assistência técnica | sim | |
ped_aen_item_ped | AEN por item | sim | |
ped_comissao_item | Comissão de representante por item | sim | |
ped_compl_pedido | Complementos do pedido | sim | |
ped_consg_adic | Consignatários adicionais | sim | |
ped_end_ent | endereço entrega pedido | sim | |
ped_end_retirada | Endereço de retirada | sim | |
ped_exp_item | Dados de exportação do item | sim | |
ped_inf_com_item | Complemento do item | sim | |
ped_inf_com_mestre | Complemento mestre | sim | |
ped_info_compl | informações complementares | sim | |
ped_info_nf_e | ped_info_nf_e | sim | |
ped_it_canc_bonf | itens de bonif cancelados | sim | Somente no cancelamento |
ped_item_nat | natureza oper item | sim | |
ped_itens | Itens do pedido | sim | |
ped_itens_adic | Adicionais do item | sim | |
ped_itens_bnf | itens de bonificaçao | sim | |
ped_itens_cancel | itens cancelados | sim | Somente 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_kit_pedido | Informações mestre do kit | sim | |
ped_nf_referencia | NF de referência | sim | |
ped_observacao | observações de pedido | sim | |
ped_proc_refer | Processo referenciado | sim | |
ped_seq_ped_cliente | nitemped e xped | sim | |
pedido_comis | comissoes de pedidos | sim | |
pedido_list | Controle para listagem | sim | |
pedidos | Cabeçalho do pedido | sim | |
vdp_end_entga_intm | endereço entrega cliente intermediário | sim | |
vdp_ped_item_compl | Complemento do item | sim | Somente na modificação |
vdp_pedido_kit_seq | relacionamento dos itens com o kit | sim | |
vendor_pedido | Informações do vendor | sim | |
ped_item_prazo | Prazo de entrega por grade | sim |
Tabelas que não serão previstas
Tabela | Descrição | Prevista | observação |
ped_dupl_compl | Complemento das duplicatas antecipadas do pedido | não | VDP20000 não utiliza |
ped_duplicata | Duplicatas antecipadas do pedido | não | VDP20000 não utiliza |
ped_infc_auxiliar | informações auxiliares | não | VDP20000 não utiliza |
ped_item_compl | ped_item_compl | não | VDP20000 não utiliza |
ped_itens_serie | ped_itens_serie | não | VDP20000 não utiliza |
pedidos_textil | pedidos_textil | não | VDP20000 não utiliza |
sac_ped_rastr | sac_ped_rastr | não | VDP20000 não utiliza |
sac_ped_rastreab | sac_ped_rastreab | não | VDP20000 não utiliza |
sac_pedido | sac_pedido | não | VDP20000 não utiliza |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|