Páginas filhas
  • Cadastro Regra Geração de Lista de Separação - WMS6915

Versões comparadas

Chave

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

...

  • empresa: Código da empresa do processo de movimentação;.
  • processo_moviment: Número do processo de movimentação;.
  • plano_separacao: Número do plano de separação ao qual o movimento está relacionado;.
  • onda_separacao: Número da onda de separação ao qual o movimento está relacionado.

...

  • O [agrupador] e o [processo movimentação] são informações obrigatórias.
  • Os contadores / limitadores são opcionais, porém, se informado um contador deve ser indicado também seu respectivo limitador.
  • Os limitadores podem ser utilizados para gerar uma quebra de lista dentro de um agrupador.
  • Por exemplo, podemos ter um agrupador diferente para cada funcionalidade do endereço de origem (armazém, picking, entre outros) e, além disso, quebrar as listas a cada 3 (três) movimentos. O SQL para estas condições permaneceria assim:

...

  • [USUARIO]: Será substituído pelo código do usuário ativo que estiver realizando o processamento da onda de separação.
  • [DATA]: Data atual (formato DATE).
  • [HORA]: Hora atual.
  • [DATA-HORA]: Data e hora atual (formato DATETIME).

Quando a regra for no formato Função, esta terá dois valores de retorno:

...

Informações
titleIMPORTANTE!
Se houver alguma alguma regra ativa relacionada a qualquer depositante serão desconsiderados os parâmetros para a geração de lista automática configurados por empresa (LOG00087, parâmetro gera_lista_auto) ou por usuário (WMS60001, opção Parâmetros).

...

Outras Ações / Ações Relacionadas

As ações padrão do menu (Incluir, Modificar, Excluir, Consultar, Listar, Informar, Processar, Seguinte, Anterior, Primeiro, Último, Cancelar, Help, Zoom, Sobre e Fim) estão detalhadas na página Ambientação Logix.

...

  • SQL Criação tabela temporária
  • SQL Preparação dos dados
  • SQL Criação de listas

  Exemplo:

Criação de lista de separação efetuando quebra por funcionalidade e coordenada 1 de endereço.

1 - Em uma onda separação com 50 endereços diferentes (movimentos), onde 10 endereços são de picking e 40 endereços de armazém

2 - 10 endereços de picking, onde tenho 5 movimentos para cada coordenada 1 (tabela.campo wms_endereco.coorden_1):
   - 5 movimentos RUA A
   - 5 movimentos RUA D

...

4 - Neste exemplo a regra deverá quebra em 2 listas de funcionalidade picking e 4 listas para endereços de armazém, num total de 5 listas.

Para viabilizar este processo, deverão ser criadas duas regras no cadastro.

SQL para regra 1 (picking):

{quote}{{SELECT DENSE_RANK() OVER (ORDER BY wms_endereco.coorden_1),}}
{{ listas.processo_moviment,}}
{{ ender.coorden_1}}
{{ FROM tt_gera_lista_auto listas}}
{{ INNER JOIN wms_processo_moviment mov}}
{{ ON mov.empresa = listas.empresa}}
{{ AND mov.processo_moviment = listas.processo_moviment}}
{{ INNER JOIN wms_endereco ender}}
{{ ON ender.empresa = mov.empresa}}
{{ AND ender.endereco = mov.endereco_origem}}
{{ AND ender.funcao = 4}}
{quote}

SQL para regra 2 (armazém):

{quote}{{SELECT DENSE_RANK() OVER (ORDER BY wms_endereco.coorden_1),}}
{{ listas.processo_moviment,}}
{{ ender.coorden_1}}
{{ FROM tt_gera_lista_auto listas}}
{{ INNER JOIN wms_processo_moviment mov}}
{{ ON mov.empresa = listas.empresa}}
{{ AND mov.processo_moviment = listas.processo_moviment}}
{{ INNER JOIN wms_endereco ender}}
{{ ON ender.empresa = mov.empresa}}
{{ AND ender.endereco = mov.endereco_origem}}
{{ AND ender.funcao = 3}}
{quote}

Deve-se ainda, relacionar as duas regras ao depositante, o que deverá ser efetuado por meio da opção Relaciona.

...