Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Permitir filtrar e ordenar movimentos de separação
Informações Gerais
Especificação | |||
Produto | Logix | Módulo | Wms |
Segmento Executor | Distribuição e Logistica | ||
Projeto1 | IRM1 | ||
Requisito1 | Subtarefa1 | PDRDL-7733 | |
Chamado2 |
| ||
Release de Entrega Planejada | 12.1.9 | Réplica | Sim |
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).
Objetivo
Permitir ao operador filtrar e ordenar os movimentos de separação, proporcionando maior agilidade na operação.
Definição da Regra de Negócio
Será criada uma opção para filtrar os movimentos, onde estarão disponíveis para filtro os campos: Código de barras do endereço, coordenada 1, coordenada2, coordenada3, coordenada4.
Durante o processo de separação o usuário terá a opção de indicar o endereço mais próximo em que ele se encontra, para então filtrar os movimentos de separação associados a uma das coordenadas escolhidas (Bloco, Rua, Coluna, Andar, etc) através de uma nova função "Filtrar"
Além disso, o usuário, também terá a opção "Ordenar" para escolher a ordem de exibição dos movimentos, utilizando informações como Coordenadas do endereço, código de barras do endereço e código do produto podendo efetuar a ordenação de forma ascendente ou descendente.
Alterações nos programas:
Wms6214:
Na função wms6214_exibe_array_movimentos disponibilizar duas novas opções F9/Ctrl-F - Filtrar e F6/Ctrl-D - Ordenar.
- Função F9/Ctrl-F Filtrar:
1 - Chamar função CALL wmsr78_filtro_generico('WMS6238', 'Ressuprimento') RETURNING l_status, m_where_clause. Que irá abrir a tela de filtros.
2 - Após informar os filtros chamar a função:
CALL wmsr78_retorna_valor_atributo('WMS6238','COD_BARRAS_ENDERECO') RETURNING m_endereco
3 - Verificar se a variável m_endereco estará preenchida. Caso esteja preenchida, deverá chamar uma nova função wms6214_monta_filtros_movimentos para montar um where_clause.
A nova função deverá funcionar da seguinte maneira:
a - Buscar na tabela wms_endereco as coordenadas do endereço pelo código de barras informado.
b - Verificar novo parametro "XXXXXX", até qual coordenada deverá fazer o filtro, digamos que no parâmetro está até a coordenada 2, então alimentar variável m_where_clause_end e incluir coord 1 e coord 2. Exemplo: Vamos dizer que o operador bipou um código de barras '1234', com esse código você deverá ler a tabela WMS_ENDERECO onde o código de barras (e não o código do endereço) seja "1234" vamos dizer que você encontrou o endereço de código "9988", que tem as coordenadas 1='A' e coodernada 2= '1' e está parametrizado para filtrar até a coordenada 2.
c - Então deve chamar novamente a função wms6214_exibe_array_movimentos para atualizar a lista de movimentos.
d - Caso a variável m_endereco esteja nula, verificar se a variável m_where_clause possui algum dado, se possuir, quer dizer que algum outro filtro foi informado.
e - Então deve chamar novamente a função wms6214_exibe_array_movimentos para atualizar a lista de movimentos.
- Função F6/Ctrl-D Ordenar
1 - Abrir o nova tela wms62148.per onde o usuário poderá selecionar a ordem em que os movimentos serão apresentados. Esta tela deverá conter uma grid com 3 campos, conforme protótipo 1.
Na grid os três campos são: 1-Código 2-Descrição 3-Forma ordenação. Somente o primeiro e o terceiro campo estarão disponíveis para edição.
O campo código, deverá conter um zoom com as opções das coordenadas 1 a coordenada 4 e de Item. Para buscar as coordenadas do zoom, criar nova função wms6214_busca_desc_coordenadas_zoom(). D Dentro da função utilizar:
a - CALL log2250_busca_parametro(mr_wms_tela.empresa,'des_coorden_1')
RETURNING l_des_coorden_1, l_status
b - CALL log2250_busca_parametro(mr_wms_tela.empresa,'des_coorden_2')
RETURNING l_des_coorden_2, l_status
c - CALL log2250_busca_parametro(mr_wms_tela.empresa,'des_coorden_3')
RETURNING l_des_coorden_3, l_status
d - CALL log2250_busca_parametro(mr_wms_tela.empresa,'des_coorden_4')
RETURNING l_des_coorden_4, l_status
2 - O Campo Forma ordenação deverá conter duas opções: 1-Ascendente 2-Descendente.
3 - Não deverá permitir duplicar os campos.
4 - A sequência de ordenação será conforme a ordem selecionada na grid.
5 - Esse novo programa deverá alimentar variáveis modulares que serão lidas dentro do wms6214.
6 - Após sair da tela de filtros deve chamar novamente a função wms6214_exibe_array_movimentos para atualizar a lista de movimentos.
Alteração na função wms6214_carrega_movimentos_lista.
Dentro da função wms6214_carrega_movimentos_lista, no cursor cq_lista_movtos verificar as variáveis m_where_clause, e m_where_clause_end, caso estejam preenchidas, incluir no where do cursos.
Também deve ser verificadas as variáveis modulares de ordenação, e incluir no order by caso estejam preenchidas. Caso contrário, deixar o order by como está.
Ao confirmar e voltar pra tela de movimentos, deverá atualizar a lista, ordenando conforme parametrizado.
Wms6499 - Filtros genéricos
Na função wms6499_verifica_atributos antes do END FUNCTION, incluir INSERT para novos atributos conforme abaixo:
INSERT INTO wms_filtro_coletor_atributo (rotina, atributo, mostra_filtro, tabela_atributo, tip_dado, tamanho, descricao_exibicao, legenda, obrigatorio, val_inicial, considera_parcial, validacao)
VALUES ('WMS6214','COD_BARRAS_ENDERECO','N','WMS_ENDERECO','C','20','Endereço',null,'N',null,'N',null)
INSERT INTO wms_filtro_coletor_atributo (rotina, atributo, mostra_filtro, tabela_atributo, tip_dado, tamanho, descricao_exibicao, legenda, obrigatorio, val_inicial, considera_parcial, validacao)
VALUES ('WMS6214','COORDEN_1','N','WMS_ENDERECO','C','4','Coorden 1',null,'N',null,'N',null)
INSERT INTO wms_filtro_coletor_atributo (rotina, atributo, mostra_filtro, tabela_atributo, tip_dado, tamanho, descricao_exibicao, legenda, obrigatorio, val_inicial, considera_parcial, validacao)
VALUES ('WMS6214','COORDEN_2','N','WMS_ENDERECO','C','4','Coorden 2',null,'N',null,'N',null)
INSERT INTO wms_filtro_coletor_atributo (rotina, atributo, mostra_filtro, tabela_atributo, tip_dado, tamanho, descricao_exibicao, legenda, obrigatorio, val_inicial, considera_parcial, validacao)
VALUES ('WMS6214','COORDEN_3','N','WMS_ENDERECO','N','5','Coorden 3',null,'N',null,'N',null)
INSERT INTO wms_filtro_coletor_atributo (rotina, atributo, mostra_filtro, tabela_atributo, tip_dado, tamanho, descricao_exibicao, legenda, obrigatorio, val_inicial, considera_parcial, validacao)
VALUES ('WMS6214','COORDEN_4','N','WMS_ENDERECO','N','5','Coorden 4',null,'N',null,'N',null)
LOG00086 - Parâmetros
Criar novo parâmetro no sistema:
Conversor: wms00XXX.cnv (fazer checkin deste conversor no projeto/tarefa):
wmsXXXX.cnv - colar o conversor aqui
Parâmetro:
Código: wms_maior_coord_filt_sep
Descrição: "Maior coordenada para filtro de movimentos para separação"
Área: 9 - LOGIX WMS
Sistema: 407 - LOGIX WMS
Rotina: 292
Tipo conteúdo: N - Numérico
Permitir nulo?: S
Case sensitive: NULL
- Auto-incremento: N
- Situação: A – Ativo
- Efetuar replicação: N
- Replicação opcional: N
- Cliente: 105 – TOTVS
- Valor padrão: 2
- Comentário rodapé: NULL
- Help: Após acionar o Filtrar na separação(wms6214), o programa irá verificar o novo parâmetro para saber a maior coordenada que deve utilizar para o filtro dos movimentos para separação.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
wms6214 | [Alteração] | - | - |
wms6499 | [Alteração] |
Protótipo de Tela
Protótipo 1
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|