módulo de dados

API para uso do objeto ModuloDeDadosDeOperacoes

Criando um IDENTIFICADOR para o seu objeto.

Todo objeto que usar o módulo de dados dever ter seu identificador criado caso o mesmo já não exista. O identificador será um váriavel "constante".

Isso torna possível a identificação da origem do dataset no módulo. Facilitando também, se realmente necessário, o acesso de um dataset de outro objeto.

Ex: Acessando o dataSet de titulos do objeto Titulos no OperacaoPedido

OperacaoPedido {

var titulos = this.moduloDeDados.pegaDataSet(Titulo.IDENTIFICADOR,"titulos", TipoDoDataSetNaOperacao.DATASET)

}

Como criar um dataset, seu clone e seu atualizavel de uma vez no módulo de dados?

var identificadorObjeto = "Operacao"

var moduloDeDados = new ModuloDeDadosDeOperacoes();

moduloDeDados.criaDataSets( identificadorObjeto, "pedido", PEDIDO );

//Outros Exemplos

moduloDeDados.criaDataSets( identificadorObjeto , "pedidoAssociado", "PEDIDO" );

moduloDeDados.criaDataSets( identificadorObjeto , "pedidoAcessorio", "PEDIDO" );

moduloDeDados.criaDataSets( identificadorObjeto , "escala", "TABELA" );

Como criar um dataset no módulo de dados?

moduloDeDados.criaDataSet( identificadorObjeto, "escala", TipoDoDataSetNaOperacao.INTERNO )

//CRIANDO UM ATUALIZAVEL

moduloDeDados.criaDataSet( identificadorObjeto, "escala", TipoDoDataSetNaOperacao.ATUALIZAVEL, "TABELA" )

//CRIANDO DATASET

var moduloDeDados = new ModuloDeDadosDeOperacoes();

moduloDeDados.criaDataSet( identificadorObjeto, "escala", TipoDoDataSetNaOperacao.DATASET, "TABELA" )

//CRIANDO UM CLONE (OBS: Só irá funcionar se o original já existir)

Como acessar um dataset existente no módulo de dados?

//Obtendo um dataSet principal

var pedido = moduloDeDados.pegaDataSet( identificadorObjeto, "pedido", TipoDoDataSetNaOperacao.DATASET )

//Obtendo um dataSet interno (clone)

var pedidoClone = moduloDeDados.pegaDataSet( identificadorObjeto, "pedido", TipoDoDataSetNaOperacao.INTERNO )

///Obtendo um dataSet atualizável

var pedidoAtualizavel = moduloDeDados.pegaDataSet( identificadorObjeto, "pedido", TipoDoDataSetNaOperacao.ATUALIZAVEL )

Como adicionar um dataset no módulo de dados?

this.escala = new DataSet()

this.escala.createField( 'PEDIDO', 'integer' )

this.escala.createField( 'ESCALA', 'integer' )

this.escala.createField( 'ENTIDADE', 'integer' )

this.escala.createField( 'FUNCAO', 'integer' )

this.escala.createField( 'INFORMADO', 'boolean' )

this.escala.createField( 'POSICAO', 'integer' )

this.escala.create()

var moduloDeDados = new ModuloDeDadosDeOperacoes();

moduloDeDados.adicionaDataSet( this.escala, identificadorDoObjeto, "escala", TipoDoDataSetNaOperacao.DATASET )

Como criar um interno (clone) de um dataset já existente no módulo de dados?

var moduloDeDados = new ModuloDeDadosDeOperacoes();

moduloDeDados.criaDataSet( identificadorObjeto, "escala", TipoDoDataSetNaOperacao.INTERNO )

Como criar um atualizavel de um dataset no módulo de dados?

var moduloDeDados = new ModuloDeDadosDeOperacoes();

moduloDeDados.criaDataSet( identificadorObjeto, "escala", TipoDoDataSetNaOperacao.ATUALIZAVEL, "TABELA" )

Como limpar um dataset?

var moduloDeDados = new ModuloDeDadosDeOperacoes();

moduloDeDados.limpaDataSet(identificadorDoObjeto, "EscalaDeTrabalho_escala")

Como obter os dados de uma operação em contingência para gravação em disco?

var operacaoPedido = new OperacaoPedido();

operacaoPedido.applyUpdatesDosDataSetsNaGravacao = false;

operacaoPedido.fechaOperacaoNoTerminoDaGravacao = false;

operacaoPedido.emContingencia = true;

//Preenche os dados da operação

operacaoPedido.grava();

//Pega uma stream que pode ser salva em disco

var stream = operacaoPedido.moduloDeDados.pegaStream();

Como abrir uma operação gravada em contingência?

var operacaoPedido = new OperacaoPedido()

operacaoPedido.abre(stream);

Como vincular/desvincular/pegar módulos de dados para gravação em contingência?

var operacao1 = new OperacaoPedido();

operacao1.nova()

//cria nova operação

var operacao2 = new OperacaoPedidoTransferenciaVinculada();

//cria nova operação

operacao2.nova()

var idUnicoDoModulo = "opPedido$1234"

//Adicionando

operacao1.moduloDeDados.adicionaModuloVinculado(operacao2.moduloDeDados, idUnicoDoModulo);

//Pegando

var moduloVinculado = operacao1.moduloDeDados.pegaModuloVinculado(idUnicoDoModulo);

//Removendo

operacao1.moduloDeDados.removeModuloVinculado(idUnicoDoModulo);

Script

-1897036588 /products/INTEQerp infrastructure/library/objects/moduloDeDadosDeOperacoes.ijs