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 | TOTVS12 | Módulo | WMS |
Segmento Executor | Supply Chain - Logística - Inovação | ||
Projeto1 | LOGWMS01 | IRM1 |
|
Requisito1 | LOGWMS01-95 | Subtarefa1 | |
Chamado2 | TUVGO7 | ||
País | ( X ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Objetivo
Alterar processo de transferência entre endereços para permitir transferir saldos com status Análise e CQ-armazenado, mantendo o status deste após a confirmação da transferência.
O processo de transferência pode ser executado pelos programas:
- Transferência entre endereços WM0380.
- Transferências entre endereços via coletor BC9025.
Ambos os programas executam o WM9090 para gerar o documento/registro da transferência e as confirmações/movimentações deste via WM9091.
O programa WM9091, é executado em dois momentos específicos na confirmação da transferência: o primeiro, na confirmação da saída do endereços de origem e o segundo, na confirmação de entrada no endereços de destino.
A alteração deste programa permitirá registrar o status do saldo wm-box-saldo.ind-status-saldo, do registro de origem para sobrepor este no movimento de destino, assim como o id-movto para manter o registro do documento do originador, para que seja possível a gestão do processo de CQ (Digitação resultado exames CQ0210).
Após a transferência executada pelo WM0380 "Confirmar Transferência" ou BC9025 o usuário poderá usar o CQ0210 para Digitação dos resultados dos Exames aprovando ou rejeitando as quantidades conforme sua necessidade (parcial ou total). Na confirmação da amostra o programa WM0371a irá gerar um Documento de "Amostra", conforme as quantidades digitadas pelo usuário, sugerindo e confirmando esta "Saída".
Quando confirmado via botão Confirmação WMS, na tela WM0371, será gerado um Documento de Rejeição do tipo Saída, com situação Implantado das quantidades rejeitadas.
Definição da Regra de Negócio
REQ001 | Alteração wm9090 |
Alterar programa de geração de documento de transferência WM9090 para permitir a alocação de saldos com status 3, 4 e 7.
Sendo assim na linha 173, alterar a situação atual:
IF wm-box-saldo.ind-status-saldo <> 3
Para:
(wm-box-saldo.ind-status-saldo = 1 OR
wm-box-saldo.ind-status-saldo = 2 OR
wm-box-saldo.ind-status-saldo = 5 OR
wm-box-saldo.ind-status-saldo = 6)
REQ002 | Alteração wm9091 |
Alterar de confirmação de separação para incluir processo de registro de status dos saldos para utilizar no processo de destino no saldo e id movto deste.
Incluir a:
DEF INPUT PARAM i-ind-status-saldo-origem LIKE wm-box-saldo.ind-status-saldo NO-UNDO.
DEF OUTPUT PARAM o-ind-status-saldo-origem LIKE wm-box-saldo.ind-status-saldo NO-UNDO.
DEF INPUT PARAM i-id-movto-box-saldo LIKE wm-box-saldo.id-movto NO-UNDO.
DEF OUTPUT PARAM o-id-movto-box-saldo LIKE wm-box-saldo.id-movto NO-UNDO.
No bloco de confirmação de saída, onde estas são realizadas COM etiqueta, no bloco de posicionamento da wm-box-saldo, na linha 598, alterar:
ASSIGN wm-box-saldo.qtd-item-bloq = wm-box-saldo.qtd-item-bloq + tt-etiqueta.qtd-item
Para:
ASSIGN wm-box-saldo.qtd-item-bloq = wm-box-saldo.qtd-item-bloq + tt-etiqueta.qtd-item
o-ind-status-saldo-origem = wm-box-saldo.ind-status-saldo
o-id-movto-box-saldo = wm-box-saldo.id-movto.
No bloco de confirmação de saída, onde estas são realizadas SEM etiqueta, no bloco de posicionamento da wm-box-saldo, na linha 701, alterar:
FOR EACH wm-box-saldo EXCLUSIVE-LOCK
WHERE wm-box-saldo.cod-estabel = wms-box-sdo-alocad.cod-estabel
AND wm-box-saldo.cod-local = wms-box-sdo-alocad.cod-local
AND wm-box-saldo.cod-cliente = wms-box-sdo-alocad.cod-cliente
AND wm-box-saldo.id-box = wms-box-sdo-alocad.id-box
AND wm-box-saldo.cod-item = wms-box-sdo-alocad.cod-item
AND wm-box-saldo.cod-refer = wms-box-sdo-alocad.cod-refer
AND wm-box-saldo.cod-lote = wms-box-sdo-alocad.cod-lote
AND wm-box-saldo.cod-embalagem = wms-box-sdo-alocad.cod-embalagem
AND wm-box-saldo.ind-status-saldo = 3
Para:
FOR EACH wm-box-saldo EXCLUSIVE-LOCK
WHERE wm-box-saldo.cod-estabel = wms-box-sdo-alocad.cod-estabel
AND wm-box-saldo.cod-local = wms-box-sdo-alocad.cod-local
AND wm-box-saldo.cod-cliente = wms-box-sdo-alocad.cod-cliente
AND wm-box-saldo.id-box = wms-box-sdo-alocad.id-box
AND wm-box-saldo.cod-item = wms-box-sdo-alocad.cod-item
AND wm-box-saldo.cod-refer = wms-box-sdo-alocad.cod-refer
AND wm-box-saldo.cod-lote = wms-box-sdo-alocad.cod-lote
AND wm-box-saldo.cod-embalagem = wms-box-sdo-alocad.cod-embalagem
ASSIGN o-ind-status-saldo-origem = wm-box-saldo.ind-status-saldo
o-id-movto-box-saldo = wm-box-saldo.id-movto.
No processo de entrada alterar:
Linha 817:
ASSIGN wm-box-movto.ind-status-movto = 3 /* Atualizado */
wm-box-saldo.ind-status-saldo = 3. /*Liberado*/
Para:
ASSIGN wm-box-movto.ind-status-movto = 3 /* Atualizado */
wm-box-saldo.ind-status-saldo = IF (i-ind-status-saldo-origem = 1 OR i-ind-status-saldo-origem = 3) THEN 3 ELSE i-ind-status-saldo-origem /*Status do movimento de origem*/
wm-box-saldo.id-movto = IF i-ind-status-saldo-origem = 7 THEN i-id-movto-box-saldo ELSE wm-box-movto.id-movto.
REQ003 | Alteração wm0380 |
Alterar as chamadas dos programas WM9091, para as alterações citadas na REQ001.
Processo de Confirmação de Saída:
RUN wmp/wm9091.p (INPUT r-box-movto,
INPUT 0, /* box destino */
INPUT c-usuario,
INPUT "", /* equipto */
INPUT "", /* coletor */
INPUT TIME, /* hora inicio */
INPUT NO,
INPUT 0,
INPUT i-ind-status-saldo-origem,
OUTPUT o-ind-status-saldo-origem,
INPUT i-id-movto-box-saldo,
OUTPUT o-id-movto-box-saldo,
INPUT TABLE tt-etiqueta,
OUTPUT TABLE RowErrors).
Processo de confirmação de entrada:
RUN wmp/wm9091.p (INPUT r-box-movto,
INPUT ttWm-box-movto.id-box, /* box destino */
INPUT c-usuario,
INPUT "", /* equipto */
INPUT "", /* coletor */
INPUT TIME, /* hora inicio */
INPUT NO,
INPUT 0,
INPUT o-ind-status-saldo-origem,
OUTPUT o-ind-status-saldo-origem,
INPUT o-id-movto-box-saldo,
OUTPUT o-id-movto-box-saldo,
INPUT TABLE tt-etiqueta,
OUTPUT TABLE RowErrors).
REQ004 | Alteração BC9025 |
Alterar os programas BC9025L:
Incluir variáveis:
DEFINE VARIABLE i-ind-status-saldo-origem LIKE wm-box-saldo.ind-status-saldo NO-UNDO.
DEFINE VARIABLE o-ind-status-saldo-origem LIKE wm-box-saldo.ind-status-saldo NO-UNDO.
DEFINE VARIABLE i-id-movto-box-saldo LIKE wm-box-saldo.id-movto NO-UNDO.
DEFINE VARIABLE o-id-movto-box-saldo LIKE wm-box-saldo.id-movto NO-UNDO.
Alterar as chamadas do programa WM9091:
Processo de saída:
RUN wmp/wm9091.p(INPUT ROWID(wm-box-movto), /* pRwMovto */
INPUT ?, /* pIdBoxDestino */
INPUT ttWork.cod-usuario, /* pCodUsuario */
INPUT ttWork.cod-equipamento,/* pCodEqpto */
INPUT ttWork.cod-coletor, /* pCodColetor */
INPUT TIME, /* pHoraInicio */
INPUT NO, /* pSobreporBox */
INPUT 0, /* pIdAgrupador */
INPUT i-ind-status-saldo-origem,
OUTPUT o-ind-status-saldo-origem,
INPUT i-id-movto-box-saldo,
OUTPUT o-id-movto-box-saldo,
INPUT TABLE tt-etiqueta, /* tt-etiqueta */
OUTPUT TABLE RowErrors). /* rowerrors */
Processo entrada:
RUN wmp/wm9091.p (INPUT ttWm-box-movto-idx.r-rowid, /* pRwMovto */
INPUT ttWork.num-box-orig, /* pIdBoxDestino */
INPUT ttWork.cod-usuario, /* pCodUsuario */
INPUT ttWork.cod-equipamento, /* pCodEqpto */
INPUT ttWork.cod-coletor, /* pCodColetor */
INPUT TIME, /* pHoraInicio */
INPUT YES, /* pSobreporBox */
INPUT 0, /* pIdAgrupador */
INPUT o-ind-status-saldo-origem,
OUTPUT o-ind-status-saldo-origem,
INPUT o-id-movto-box-saldo,
OUTPUT o-id-movto-box-saldo,
INPUT TABLE tt-etiqueta, /* tt-etiqueta */
OUTPUT TABLE RowErrors). /* rowerrors */
Alterar BC9025M:
O programa BC9025M após a o comando 888888, executa o BC9025. Sendo assim, os retornos das variáveis i-ind-status-saldo-origem, o-ind-status-saldo-origem, i-id-movto-box-saldo e o-id-movto-box-saldo. Devem estar disponíveis para o programa BC9025O.
RUN wmp/wm9091.p(INPUT ROWID(wm-box-movto), /* pRwMovto */
INPUT ?, /* pIdBoxDestino */
INPUT ttWork.cod-usuario, /* pCodUsuario */
INPUT ttWork.cod-equipamento, /* pCodEqpto */
INPUT ttWork.cod-coletor, /* pCodColetor */
INPUT TIME, /* pHoraInicio */
INPUT NO, /* pSobreporBox */
INPUT 0, /* pIdAgrupador */
INPUT i-ind-status-saldo-origem,
OUTPUT o-ind-status-saldo-origem,
INPUT i-id-movto-box-saldo,
OUTPUT o-id-movto-box-saldo,
INPUT TABLE tt-etiqueta, /* tt-etiqueta */
OUTPUT TABLE RowErrors). /* rowerrors */
Alterar BC9025O:
RUN wmp/wm9091.p (INPUT ttWm-box-movto-idx.r-rowid, /* pRwMovto */
INPUT ttWork.num-box-orig, /* pIdBoxDestino */
INPUT ttWork.cod-usuario, /* pCodUsuario */
INPUT ttWork.cod-equipamento, /* pCodEqpto */
INPUT ttWork.cod-coletor, /* pCodColetor */
INPUT TIME, /* pHoraInicio */
INPUT YES, /* pSobreporBox */
INPUT 0, /* pIdAgrupador */
INPUT o-ind-status-saldo-origem,
OUTPUT o-ind-status-saldo-origem,
INPUT o-id-movto-box-saldo,
OUTPUT o-id-movto-box-saldo,
INPUT TABLE tt-etiqueta, /* tt-etiqueta */
OUTPUT TABLE RowErrors). /* rowerrors */
Mapa Mental
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
[ACAA040 – Parâmetros] | [Alteração] | [Atualizações > Acadêmico > Tesouraria] | - |
[ACAA050 – Negociação Financeira] | [Envolvida] | [Atualizações > Acadêmico > Tesouraria] | - |
[ACAA060 – Cadastro de Pedidos] | [Criação] | [Atualizações > Acadêmico > Cadastros] | - |
Exemplo de Aplicação:
Criar o campo “% Mínimo Espécie” (AAA_PERESP), onde o usuário informará o % (percentual) que o aluno pagará em dinheiro. Esse % (percentual) poderá ser alterado durante a negociação.
Criar o campo Referência Mínima para Cálculo (AAA_REFCAL), onde o usuário informará um dos 4 valores disponíveis para pagamento das mensalidades, como a referência mínima para calcular o débito total do aluno.
Criar o parâmetro MV_ACPARNE que definirá se as informações de % Mínimo Espécie e Referência Mínima para Cálculo serão obrigatórias.
O parâmetro MV_ACPARNE deve ter as seguintes opções: 1=Obrigatório e 2=Opcional. Deve ser inicializado como opcional.
Tabelas Utilizadas:
SE2 – Cadastro de Contas a Pagar
FI9 – Controle de Emissão de DARF>.
Protótipo de Tela
Não se aplica.
Fluxo do Processo
Dicionário de Dados
Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/
Índice | Chave |
01 | <FI9_FILIAL+FI9_IDDARF+FI9_STATUS> |
02 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF> |
03 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO> |
Campo | <AAA_PERESP> |
Tipo | <N> |
Tamanho | <6> |
Valor Inicial | <Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. |
Mandatório | Sim ( ) Não ( ) |
Descrição | <Referência Mínima para Cálculo> |
Título | <Ref.Calc.> |
Picture | <@E999.99> |
Help de Campo | <Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação> |
Grupo de Perguntas
Nome: FINSRF2
X1_ORDEM | 01 |
X1_PERGUNT | Emissão De |
X1_TIPO | D |
X1_TAMANHO | 8 |
X1_GSC | G |
X1_VAR01 | MV_PAR01 |
X1_DEF01 | Comum |
X1_CNT01 | '01/01/08' |
X1_HELP | Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório |
Consulta Padrão
Consulta: AMB
Descrição | Configurações de Planejamento |
Tipo | Consulta Padrão |
Tabela | “AMB” |
Índice | “Código” |
Campo | “Código”; ”Descrição” |
Retorno | AMB->AMB_CODIGO |
Estrutura de Menu
Procedimentos | |||
Descrição | (Max 40 posições) | (Max 40 posições) | (Max 40 posições) |
Módulo |
|
|
|
Programa base |
|
|
|
Nome Menu | (Max 32 posições) | (Max 32 posições) | (Max 32 posições) |
Interface | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex |
Registro padrão | Sim | Sim | Sim |
Visualiza Menu | Sim/Não | Sim/Não | Sim/Não |
Release de Liberação |
|
|
|
Programas | |||
Descrição | (Max 40 posições) | (Max 40 posições) | (Max 40 posições) |
Nome Externo |
|
|
|
Nome Menu/Programa | (Max 32 posições) | (Max 32 posições) | (Max 32 posições) |
Nome Verbalizado[1] | (Max 254 posições) | (Max 254 posições) | (Max 254 posições) |
Procedimento |
|
|
|
Template | (Verificar lista de opções no man01211) | (Verificar lista de opções no man01211) | (Verificar lista de opções no man01211) |
Tipo[2] | Consulta/Manutenção/ Relatório/Tarefas | Consulta/Manutenção/ Relatório/Tarefas | Consulta/Manutenção/ Relatório/Tarefas |
Interface | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex |
Categoria[3] |
|
|
|
Executa via RPC | Sim/Não | Sim/Não | Sim/Não |
Registro padrão | Sim | Sim | Sim |
Outro Produto | Não | Não | Não |
Visualiza Menu | Sim/Não | Sim/Não | Sim/Não |
Query on-line | Sim/Não | Sim/Não | Sim/Não |
Log Exec. | Sim/Não | Sim/Não | Sim/Não |
Rotina (EMS) |
|
|
|
Sub-Rotina (EMS) |
|
|
|
Localização dentro da Sub Rotina (EMS) |
|
|
|
Compact[4] | Sim/Não | Sim/Não | Sim/Não |
Home[5] | Sim/Não | Sim/Não | Sim/Não |
Posição do Portlet[6] | 0 – Top Left 1 – Top Right 2 – Bottom Left 3 – Bottom Right | 0 – Top Left 1 – Top Right 2 – Bottom Left 3 – Bottom Right | 0 – Top Left 1 – Top Right 2 – Bottom Left 3 – Bottom Right |
Cadastro de Papéis
Código Papel | (máx 3 posições) |
Descrição em Português* |
|
Descrição em Inglês* |
|
[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|