software‎ > ‎módulos‎ > ‎compra‎ > ‎manuais técnicos‎ > ‎

manual técnico de data limite


Conceito


Data limite permite garantir que as movimentações de entradas, saídas, os saldos e os possíveis resultados apurados dentro de um intervalo de tempo possam ser bloqueados. Para conhecer melhor sobre o conceito de data limite, clique AQUI.


Configurações


Adicionando campos para filtro no processo de configuração de data limite.

O processo de configuração de data limite permite adicionar campos para filtro através do evento noDefineGradeConfiguracaoDataLimite, definido na classe de operação selecionada. Este evento deve retornar um objeto de objetos, conforme exemplo abaixo:


this.noDefineGradeConfiguracaoDataLimite.set(function (){
    var camposAdicionais = {};
    camposAdicionais[nomeDoCampo] = {};
    camposAdicionais[nomeDoCampo].nomeCampoTransacional = nomeDoCampoDoRegistro;
    return camposAdicionais;
});

Legenda:

nomeDoCampo: Nome do campo da tabela VINCULA utilizado na pesquisa combinatória.
nomeDoCampoDoRegistro : Nome do campo do registro que será validado.


OBS

1) É obrigatório o uso da propriedade "nomeCampoTransacional" para os objetos internos.
2) Após a criação do evento, o campo da tabela VINCULA deverá ser utilizado como filtro na pesquisa combinatório, conforme documentação "Definindo classe para pesquisa combinatória".

Definindo classe para pesquisa combinatória


A classe utilizada para pesquisa combinatória, deve ser obtida através da propriedade classeConfiguracaoPesquisaParaDataLimite, definida por padrão no x-class -1897036166( /Dados/Transacionais/0500 INTEQcommerce.ic ). 

OBS: Classe que contém a definição dos filtros: -1897036163 ( /Configuração/Operações/Data Limite )

Exemplo: 

var filtro = this.filtro( 'CLASSEOPERACAO' );
filtro.prioridade = --prioridade;
filtro.classeLimite = -2009000000; /* Transacionais */
filtro.tipo = TipoFiltro.CLASSE;

var filtro = this.filtro( 'IGROUPUSER' );
filtro.prioridade = --prioridade;
filtro.tipo = TipoFiltro.GRUPO_OU_USUARIO;


Campo que será verificado a data limite

Campo utilizado para validar a data limite. As opções de data, para este campo do cadastro, serão listadas de acordo com o configurado na propriedade "possiveisCamposParaDataLimite" definida em x-class. Caso não seja selecionada nenhuma informação para este campo, o sistema validará a data de acordo com o definido na propriedade "campoBaseParaDataLimite" também definida em x-class.

Localização do x-class: \Raiz\Dados\Transacionais.

Exemplos:

Situação 1: "this.campoBaseParaDataLimite = EMISSAO" e "this.possiveisCamposParaDataLimite = "EMISSAO;EMISSAOMOV;APROVACAO;PROGRAMACA;MOVIMENTAC"".
    
    No cadastro de "Configurações de Data Limite", no campo "Campo utilizado para validar a data limite", serão exibidos como opção os campos: EMISSAO, EMISSAOMOV, APROVACAO, PROGRAMACA e MOVIMENTA. O cliente escolheu a opção MOVIMENTAC. Neste caso, o sistema não utilizará a EMISSAO (conforme informado na propriedade "this. campoBaseParaDataLimite"), e sim a MOVIMENTAC para validar a data limite.


Situação 2: "this.campoBaseParaDataLimite = EMISSAO" e "this.possiveisCamposParaDataLimite = "".

    No cadastro de "Configurações de Data Limite", no campo "Campo utilizado para validar a data limite" não serão exibidas opções, mas o sistema utilizará o campo EMISSAO para validar a data limite.


Telas Envolvidas


Nome: Configuracao de Data Limite.ip    
Chave: -1897036099    
Caminho: Ir Para >> Compra >> Ferramentas Administrativas >> Configurações >> Configuracao de Data Limite.ip
                Ir Para >> Venda   >> Ferramentas Administrativas >> Configurações >> Configuracao de Data Limite.ip

Objetivo: Permitir cadastrar uma data limite para uma determinada classe de operação + usuário/grupo + campos customizados 
de acordo com a configuração realizada no evento noDefineGradeConfiguracaoDataLimite(LINK) da classe selecionada. 



Nome: Migrar configuracoes de data limite da iPermission para VINCULA.imt
Chave: -1897036098
Caminho: Ir Para >> Compra >> Ferramentas Administrativas >> Manutenções >> Manutenções.ip
                Ir Para >> Venda   >> Ferramentas Administrativas >> Manutenções >> Manutenções.ip

Objetivo: Migrar todas as configurações de data limite existente na tabela iPermissson para classe "Configuração de Data Limite" da tabela VINCULA. 
OBS: Caso exista dois registro com o mesmo usuário/grupo e classe de operação, o sistema irá gravar apenas o primeiro registro.   


Modelo de Dados


O processo de configuração de data limite contém por padrão os campos: iGROUPUSER, CLASSEOPERACAO, LIMITE, LIMITEDIAS, LIMITEFUTURA e LIMITEDIASFUTURA. A adição de campos no processo é realizada através do evento noDefineGradeConfiguracaoDataLimiteEste evento é executado em dois momentos:
  • Exibição dos campos no processo "Configuracao de Data Limite.ip" para cada classe selecionada pelo usuário;
  • Obtenção dos campos que devem ser utilizados na pesquisa combinatória;
A finalidade dos campos adicionais é a criação de novos filtros além dos já existentes( iGROUPUSER e CLASSEOPERACAO ).


A classe de dados "Configuração de Data Limite" contém:
  • Definição dos campos CLASSEOPERACAO, IGROUPUSER, LIMITE, LIMITEDIAS, LIMITEFUTURA, LIMITEDIASFUTURA;
  • Evento onBeforePost, verificando:
    • Duplicação de registro;
    • Campos requeridos;
    • Quantidade máxima de limite dias.


Scripts Envolvidos


Objetos

-1898190413 /products/INTEQerp infrastructure/library/objects/operacao.ijs
-1897036069  /products/INTEQerp infrastructure/library/validadorDeDataLimite.ijs

Processos

-1897036099 /products/INTEQerp infrastructure/library/cadastro/Configurações de Datas Limite.ip
-1894442383 /products/INTEQorder/modules/Venda/Ferramentas Administrativas/Configuracoes/Configurações de Datas Limite.ip
-1894442384 /products/INTEQorder/modules/Compra/Ferramentas Administrativas/Configuracoes/Configurações de Datas Limite.ip

X-class

-1897148404 /Dados/Transacionais/0100 Transacionais.ic
-1897036166 /Dados/Transacionais/0500 INTEQcommerce.ic
-1894333764 /Configuracao/Operacoes/Data Limite/0100 INTEQcommerce.ic 
-1897036164 /Dados/Auxiliares/de Cadastros/Vinculos/Vinculos de Regras e Sugestao/Configuracao de Data Limite/0100 INTEQcommerce.ic   


Classes

-1897036163 /Configuração/Operações/Data Limite
-1897036165 /Dados/Auxiliares/de Cadastros/Vínculos/Vínculos de Regras e Sugestão/Configuração de Data Limite    
-1897036008 /products/INTEQerp infrastructure/tests/Operacoes/Testes de Integracao/Data Limite

Manutenção


-1897036098 /products/INTEQerp infrastructure/library/pedido/ferramentas administrativas/manutencao/Migrar configuracoes de data limite da iPermission para VINCULA.imt

Testes Unitários

-1897048326 /products/INTEQerp infrastructure/tests/ValidadorDeDataLimite.it
-1897036007 /products/INTEQerp infrastructure/tests/Operacoes/Testes de Integracao/Data Limite/OperacaoComDataLimiteConfigurada.it


Comments