Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Informações Gerais
Especificação | |||||||||||||||||||||||
Produto | Logix | Módulo | WMS | ||||||||||||||||||||
Segmento Executor | Supply Chain - Inovação | ||||||||||||||||||||||
Projeto1 | LOGWMS01 | IRM/EPIC1 |
| ||||||||||||||||||||
Requisito/Story/Issue1 |
| Subtarefa1 |
| ||||||||||||||||||||
País | ( x ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. |
Aviso | ||
---|---|---|
| ||
Os requisitos tratados por esta especificação fazem parte de um conjunto de requisitos destinados a atender a funcionalidade de "Convocação Ativa". O desenvolvimento será realizado de forma incremental, sendo assim, cada requisito irá incrementar a funcionalidade da convocação ativa que será considerada como completa quando todos os requisitos estiverem concluídos. Esta especificação trata do requisito 4 6 de um total de 13 requisitos. Sendo que as especificações dos requisitos anteriores estão em: Introdução & Requisito 1 → ER_LOGWMS01-845_ME_15.1-Convocação_Ativa-Grupo_de_Endereços Requisito 2 → ER_LOGWMS01-942_ME_15.2-Convocação_Ativa-Configuração Requisito 3 → ER_LOGWMS01-826_ME_15.3-Convocação_Ativa-Gerenciamento Requisito 4 → ER_LOGWMS01-827_ME_15.4-Convocação_Ativa-Recebimento Requisito 5 → ER_LOGWMS01-1621_ME15.5-Convocação_Ativa-Armazenagem_Transferencia |
Dica | ||
---|---|---|
| ||
Os arquivos originais(dinâmicos) utilizados e aqui apresentados em formato de imagem(estático) estão anexos a este documento.
|
Objetivos
- Criar novos e ajustar
Objetivo
- Realizar ajuste identificado durante processo de análise.
- Caso informado algum usuário no plano de inventário, somente estes usuário deverão visualizar a atividade de inventário na lista pública/particular.
- Criar novos controles para convocação ativa:
- Gravar a informação do programa criador e do último programa que atualizou o registro Excluir as colunas endereço origem e destino da tabela de controle das pendências de convocação ativa;
- Gravar a informação do programa que finalizou/excluiu o registro da programa originador da criação da pendência de convocação ativa;
- Gravar a data de exclusão da exclusão da convocação ativa.
- Gerar pendência de convocação ativa ao gerar contagem do inventário;
- Atualizar registros de pendência de convocação ativa ao alocar/desalocar usuário no plano de inventário;
- Excluir pendências de convocação ativa ao cancelar plano de inventário; Atualizar registros de pendência de convocação ativa ao iniciar/finalizar contagem de inventário através do coletor de dados.
Definição da Regra de Negócio
Realizar ajuste identificado durante processo de análise.WMS6070 - Lista pública
Sugestão de implementação
Expandir | ||
---|---|---|
| ||
→ wms6070_verifica_qtd_planejada Atualmente já existem consistências referentes ao inventário (tipo_proecesso IN (200,201,202)). Alterar SQL já existente que verifica situação do plano (+/- linha 497) ou criar nova consulta SQL que faça a validação descrita acima. sup_inv_usuario_habilitado → Tabela que armazena os usuário informados no plano de inventário.
|
Resumo dos Objetos Alterados/Criados.
Rotina | Tipo de Operação | Opção de Menu | Regra de negócio |
---|---|---|---|
WMS6070 | [Alteração] | Logix → Logística → WMS → Coletores → Pendências → WMS6070 - Lista pública | Filtrar para que atividade de inventário seja acessível apenas para os usuários configurados no plano de inventário. Caso não exista nenhum usuário configurado no plano de inventário nenhum filtro deverá ser realizado e desta forma qualquer usuário qualificado com recurso para a atividade poderá realizar a execução da atividade. |
SUP20002 | [Alteração] | Logix → Logística → WMS → Inventário → SUP20000 - Plano de inventário → Usuários | Verificar se o usuário informado possui recurso para execução da atividade de inventário. Ao identificar usuário sem recurso para execução da atividade de inventário, notificar e não permitir continuar o processo. |
Estrutura de Menu
- programa originador da alteração do usuário executor da pendência de convocação ativa;
- Gravar programa originador da finalização/exclusão da pendência de convocação ativa bem como um indicador que informe se o registro foi Finalizado (executado) ou foi Excluído por uma operação de desalocação por exemplo.
- Ajustar busca de atividades principal do programa WMS6743 facilitando a inclusão de novas atividades na convocação ativa.
Objetos a serem alterados ou criados
Rotina | Tipo de Operação | Opção de Menu |
---|---|---|
wmsr139 | [Alteração] | <função de regra de negócio da convocação ativa> |
wmsm274 | [Alteração] | <dml referente a tabela wms_conv_ativa> |
wms6435a | [Alteração] | <acionado através da central do planejador para atividades de armazenagem/transferência/canc. armazenagem/ressuprimento> Logix → Logística → WMS → Gerenciamento operacional → Central do planejador |
wms6435b | [Alteração] | <acionado através da central do planejador para atividades de armazenagem/transferência/canc. armazenagem/ressuprimento> Logix → Logística → WMS → Gerenciamento operacional → Central do planejador |
wms6435c | [Alteração] | <acionado através da central do planejador para atividades de armazenagem/transferência/canc. armazenagem/ressuprimento> Logix → Logística → WMS → Gerenciamento operacional → Central do planejador |
wms663108a | [Alteração] | <acionado através da central de alocação para atividades de armazenagem/transferência/canc. armazenagem/ressuprimento> Logix → Logística → WMS → Gerenciamento operacional → Alocação de recursos |
wms663108b | [Alteração] | <acionado através da central de alocação para atividades de armazenagem/transferência/canc. armazenagem/ressuprimento> Logix → Logística → WMS → Gerenciamento operacional → Alocação de recursos |
wms663108c | [Alteração] | <acionado através da central de alocação para atividades de armazenagem/transferência/canc. armazenagem/ressuprimento> Logix → Logística → WMS → Gerenciamento operacional → Alocação de recursos |
wms6743 | [Alteração] | Logix → Logística → WMS → Coletores → Diversos → Convocação Ativa |
wms6180 | [Alteração] | <acionado através da lista pública/particular para atividades de armazenagem/transferência/canc. armazenagem> Logix → Logística → WMS → Coletores → Pendências → WMS6070 - Lista pública/WMS6069 - Listaparticular |
wms6177 | [Alteração] | Logix → Logística → WMS → Movimentação armazém → Planejamento de armazenagem |
Definição da Regra de Negócio
- Criar novos e ajustar controles para convocação ativa.
- Objetivo: Excluir as colunas endereço origem e destino das tabelas de controle das pendências de convocação ativa (wms_conv_ativa e wms_conv_ativa_historico);
- Contextualização:
- As colunas de endereço origem e destino foram criadas nos primeiros requisitos referente a convocação ativa onde as atividades de recebimento foram as primeiras analisadas. As atividades de recebimento sempre são realizadas em apenas um endereço, neste caso então, ao ter os campos referentes aos endereços na wms_conv_ativa não se fazia necessário releitura destas informações no programa de convocação ativa (WMS6743). Atualmente já tivemos a experiência de implementar convocação ativa para outros processos além do recebimento, como por exemplo movimentação interna. Nestes processos foi possível identificar que o endereço origem e destino na wms_conv_ativa acaba tendo pouca utilização, gerando apenas esforço e processamento para manter estes campos consistentes uma vez que a cada atualização de pendências de convocação ativa a atualização destes campos se faz necessário. Atualmente a utilização destes campos se restringe apenas para apresentar as informações ao usuário no programa de convocação ativa (WMS6743) e deveria ser utilizado para identificar se o usuário possui permissão nos endereços dos movimentos, porém como geralmente existem 'N' movimentos para 1 registro da convocação ativa, a leitura desta informação acaba sendo feita diretamente nos processos de movimento.
- Segue abaixo passos para atingir o objetivo proposto:
- Pelos motivos mencionados na contextualização, os campos referente a endereço origem e destino deverão ser removidos da tabela, consequentemente as alterações abaixo serão necessárias:
Abaixo funções a serem removidas e/ou alteradas:
Expandir title Clique aqui para verificar as indicações para implementações Funções a serem removidas:
→ wmsr139_atualiza_end_origem_destino_conv_ativa; (1)
→ wms6435a_atualiza_end_origem_destino_conv_ativa; (2)
→ wms6435b_atualiza_end_origem_destino_conv_ativa; (3)
→ wms663108a_atualiza_end_origem_destino_conv_ativa; (4)
→ wms663108b_atualiza_end_origem_destino_conv_ativa; (5)Funções a serem alteradas para remover a chamada das funções removidas mencionadas acima:
→ wms6177_incluir_processo_moviment; (1)
→ wms6177_excluir_os_reserva_processo; (1)
→ wms6180_gera_tabelas_processo_movimentacao; (1)
→ wmsr139_ajusta_pendencia_conv_ativa_movtos_os_ativ; (1)
→ wmsr139_ajusta_pendencia_conv_ativa_movtos_os_ativ; (1)
→ wms6435a_atualiza_conv_ativa; (2)
→ wms6435b_atualiza_conv_ativa; (3)
→ wms663108a_atualiza_conv_ativa; (4)
→ wms663108b_atualiza_conv_ativa; (5)Funções a serem alteradas para que seja retirado a utilização da coluna de endereco_origem e destino.
→ wms6435a_gera_pendencias_conv_ativa_transf_armz_os;
→ wms6435b_gera_pendencias_conv_ativa_transf_armz_os;
→ wms6435c_gera_pendencias_conv_ativa_transf_armz_os;
→ wms663108a_gera_pendencias_conv_ativa_transf_armz_os;
→ wms663108b_gera_pendencias_conv_ativa_transf_armz_os;
→ wms663108c_gera_pendencias_conv_ativa_transf_armz_os;
→ wmsr139_gera_conv_ativa_historico;
→ wmsr139_gera_pendencias_conv_ativa_transf_armz_os;
→ wmsr139_gera_pendencias_conv_ativa_recebto_cesv;
→ wmsr139_gera_pendencias_conv_ativa_recebto_os_ativ;WMS6743 - Programa da Convocação Ativa
→ wms6743_busca_atividades_conv_ativa;
Alterar a função para que quando a busca for realizada para atividade de recebimento, não seja mais lido/relacionado o campo wms_conv_ativa.endereco_origem e sim o campo wms_ordem_servico.endereco_origem
→ wms6743_carrega_dados_todas_atividades;
Alterar a função para remover o relacionamento com as tabelas 'apelidadas' de end_origem/end_destino e para que quando informado os filtros de endereço origem e destino seja lido ou wms_ordem_servico.endereco_origem/destino para atividades de recebimento, ou wms_processo_moviment.endereco_origem/destino para atividades diferente de recebimento onde exista algum movimento para o endereço origem/destino informado. Devido a necessidade de filtro mais elaborado para estes campos, a implementação deverá se dar verificando se a variável referente ao filtro (l_where_wmsr78) possui endereço origem/destino (wms_conv_ativa.endereco_origem ou wms_conv_ativa.endereco_destino). Possuindo, uma nova cláusula AND provavelmente utilizando EXISTS deverá ser adicionada ao where clause (l_sql_stmt_where) do SQL principal (l_sql_stmt) para tratar a necessidade de busca. O valor do código de barras do endereço informado no filtro também deverá ser obtido através da manipulação da string referente ao where clause do filtro (l_where_wmsr78), sendo que o valor estará logo após o sinal de "=", exemplo " wms_conv_ativa.endereco_origem = 10 ".
→ wms6743_busca_des_reduz_end_origem / wms6743_busca_des_reduz_end_destino
Alterar a função para buscar a descrição reduzida do endereço através da ordem de serviço (wms_ordem_servico) quando recebimento ou através dos movimentos (wms_processo_moviment) quando diferente de recebimento. Caso seja encontrado mais de um endereço continuar exibindo a descrição "VARIOS ENDS. ORIG/DEST."
→ wms6743_aloca_usuario_atividade_mov_int
Remover chamada para a função wmsr139_atualiza_end_origem_destino_conv_ativa.
http://tdn.totvs.com.br/pages/viewpage.action?spaceKey=LLOG&title=ER_LOGWMS01-831_ME_15.8.1+-+Ressuprimento→ Esta especificação estava em desenvolvimento durante a criação deste documento, sendo assim, faz-se necessária uma breve verificação por referências a wms_cont_ativa.endereco_origem e wms_contiva_ativa.endereco_destino para serem excluídas.
- Objetivo: Gravar programa originador da criação da pendência de convocação ativa;
- Segue abaixo passos para atingir o objetivo proposto:
- Executar conversor de tabela (wms00593) referente as modificações realizadas nas tabelas wms_conv_ativa e wms_conv_ativa_historico conforme descrito no item Modelo de Dados;
Alterar as funções abaixo para que seja gravado o programa que originou a inclusão de novo registro da pendência de convocação ativa (wms_conv_ativa.programa_origem)
Expandir title Clique aqui para verificar as indicações para implementações » Utilizar a função log1200_nome_programa() para buscar o nome do programa para ser gravado no campo wms_conv_ativa.programa_origem.
Funções a serem alteradas:
→ wmsr139_gera_pendencias_conv_ativa_recebto_cesv;
→ wmsr139_gera_pendencias_conv_ativa_recebto_os_ativ;
→ wmsr139_gera_pendencias_conv_ativa_transf_armz_os;
→ wms6435a_gera_pendencias_conv_ativa_transf_armz_os;
→ wms6435b_gera_pendencias_conv_ativa_transf_armz_os;
→ wms6435c_gera_pendencias_conv_ativa_transf_armz_os;
→ wms663108a_gera_pendencias_conv_ativa_transf_armz_os;
→ wms663108b_gera_pendencias_conv_ativa_transf_armz_os;
→ wms663108c_gera_pendencias_conv_ativa_transf_armz_os.
→ wmsm274.
- Objetivo: Gravar programa originador da alteração do usuário executor da pendência de convocação ativa;
- Segue abaixo passos para atingir o objetivo proposto:
- Executar conversor mencionado no item 1. b) i. para aplicar as alterações das tabelas;
Alterar as funções abaixo para que seja gravado o programa que originou a alteração de registro da pendência de convocação ativa (wms_conv_ativa.programa_alteracao)
Expandir title Clique aqui para verificar as indicações para implementações » Utilizar a função log1200_nome_programa() para buscar o nome do programa para ser gravado no campo wms_conv_ativa.programa_alteracao.
Funções a serem alteradas:
→ wmsr139_atualiza_pendencias_conv_ativa_recebto_os_ativ;
→ wmsr139_atualiza_pendencias_conv_ativa_transf_armz_os.
- Objetivo: Gravar programa originador da finalização/exclusão da pendência de convocação ativa bem como um indicador que informe se o registro foi Finalizado (executado) ou foi Excluído por uma operação de desalocação por exemplo.
- Contextualização:
- Atualmente não é possível representar nos registros de histórico da convocação ativa quando um registro foi efetivamente finalizado ou apenas excluído da pendência de convocação ativa. Isso porque essas duas operações geram a exclusão do registro da wms_conv_ativa e inclusão na tabela wms_conv_ativa_historico. Existe o campo dat_hor_fim na tabela wms_conv_ativa_historico para indicar a data e hora da finalização da pendência de convocação ativa, porém finalização é diferente de exclusão, e quando esta exclusão acontece não é possível obter data e hora.
- Segue abaixo passos para atingir o objetivo proposto:
- Para resolver esta situação foi criado o campo tipo_exclusao conforme o item Modelo de Dados. No item iii) é possível visualizar as funções que precisam de alteração para que este novo campo seja gravado.
- Além da data gração do tipo de exclusão da pendência de convocação ativa, faz-se necessário a gravação do programa originador da exclusão. No item d) iii) é possível visualizar as funções que percism de alteração para que este novo campo seja gravado.
Executar conversor mencionado no item 1. b) i) para aplicar as alterações das tabelas, e alterar as funções abaixo para implementar os itens d) i) e ii)
Expandir title Clique aqui para verificar as indicações para implementações » Utilizar a função log1200_nome_programa() para buscar o nome do programa e gravar no campo wms_conv_ativa_historico.programa_exclusao.
Funções a serem alteradas:
→ wmsr139_gera_conv_ativa_historico - Além do programa que gerou a exclusão gravar 'F' no campo tipo_exclusao;
→ wmsm274_wms_conv_ativa_gera_historico. - Gravar 'E' no campo tipo_exclusao e passar a também gravar a data de finalização.
- Objetivo: Ajustar busca de atividades principal do programa WMS6743 facilitando a inclusão de novas atividades na convocação ativa.
- Contextualização:
- Atualmente no início do programa WMS6743 é feito uma busca das pendências de convocação ativa pendentes de convocação. Esta busca considera diversos critérios, conforme abaixo:
- Somente atividade que estão em andamento, interrompida ou pendente;
- Que não possuam atividade pré-requisito pendente de execução;
- Realiza a consistência de restrição de endereços e depositante quando pendência de convocação ativa ainda sem usuário executor.
- Somente atividade que estão em andamento, interrompida ou pendente;
- Este último item 3) gera uma complexidade grande na consulta SQL pois para cada atividade os endereços são validados de forma diferenciada. Exemplo:
- Atividade de recebimento o endereço fica na ordem de serviço;
- Atividade de movimentação interna o endereço fica nos processos de movimento;
- Atividade de inventário (próximo requisito), o endereço fica nos controle do inventário;
- Atividade de reconferência (próximos requisitos), os endereços a serem reconferidos ficam no próprio estoque.
- Sendo assim, o objetivo deste item é retirar esta validação desta primeira busca, e incluir no loop de avaliação de cada atividade e assim validar cada atividade individualmente
- Segue abaixo passos para atingir o objetivo proposto:
- Alterar a função wms6743_busca_atividades_conv_ativa e retirar a validação referente aos grupos de endereços para cada atividade;
- Criar funções específicas para realizar o tratamento retirado da função wms6743_busca_atividades_conv_ativa. Inicialmente é possível identificar duas possíveis funções, uma para validação de endereço através da ordem de serviço (wms6743_verifica_restricao_endereco_os) e outra para validação de endereço através dos processos de movimento (wms6743_verifica_restricao_endereco_movimentos). Estas novas funções podem ser chamadas no bloco existente para verificação de atividade pronta para ser executada (wms6743_permite_executar_atividade).
- Objetivo: Excluir as colunas endereço origem e destino das tabelas de controle das pendências de convocação ativa (wms_conv_ativa e wms_conv_ativa_historico);
Modelo de Dados
wms_conv_ativa
Operação | Nome | Descrição | Tipo | Obrigatório |
---|
Modelo de Dados
wms_conv_ativa
Nome | Descrição | Tipo | Obrigatório | |
---|---|---|---|---|
inclusão de coluna | ||||
programa_origem | Programa que criou o registro | CHAR(08) | NãoSim | |
inclusão de coluna | programa_alteracao | Último programa que atualizou o registro | CHAR(08) | Não |
exclusão de coluna | endereco_origem | Endereço origem | INTEGER | Não |
exclusão de coluna | endereco_destino | Endereço destino | INTEGER | Não |
wms_conv_ativa_historico
Operação | Nome | Descrição | Tipo | Obrigatório | |
---|---|---|---|---|---|
inclusão de coluna | programa_origem | Programa que criou o registro | CHAR(08) | NãoSim | |
inclusão de coluna | programa_alteracao | Último programa que atualizou o registro | CHAR(08) | Não | |
inclusão de coluna | programa_exclusao | Programa que realizou exclusão do registro | CHAR(08) | Sim | Não |
inclusão de coluna | tipodat_hor_exclusao | Data e hora em que Indica se o registro foi excluído | DATETIME YEAR TO SECOND | Sim |
ou finalizado, sendo: F - Finalizado; E - Excluído. | CHAR(1) | Não | ||
exclusão de coluna | endereco_origem | Endereço origem | INTEGER | Não |
exclusão de coluna | endereco_destino | Endereço destino | INTEGER | Não |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|