Classe TdtmKernelComum

DescriçãoHierarquiaCamposMétodosProperties

Unit

Declaração

type TdtmKernelComum = class(TdtmKernelInterfaceDados)

Descrição

Classe KernelComum

Modulo de Dados para administração das regras de Negocio.
é nesta classe que estão concentrados os comandos de manipulação e armazenamento de informações, bem como controles de ligações mestre detalhe, entre outros.

Hierarquia

Visão Geral

Campos

Public cdsDataSetConsulta: TClientDataSet;
Public ProviderConsulta: TDataSetProvider;
Public QueryConsulta: TZReadOnlyQuery;
Private objFormularioCadastro: TObject;
Private objFormularioConsulta: TObject;
Private intNumeroMaximoRegistrosConsulta: smallint;
Private bolLimitarRegistrosConsulta: Boolean;
Private bolEntidadeNaoPersistente: Boolean;
Private bolExibirExcluidos: Boolean;
Private strRelatorioTitulo: string;
Private clsCadastro: TFormClass;
Private clsConsulta: TFormClass;
Private bolCancelarAlteracoes: boolean;
Private bolInclusao: Boolean;
Private bolSolicitarDialogoImpressao: Boolean;
Private bolConfirmarExclusao: Boolean;
Private bolVerificarParametros: Boolean;
Private bolCadastroConfirmado: Boolean;
Private bolOrdemInversa: Boolean;
Private bolVoltarID: Boolean;
Private bolEmCadastro: Boolean;
Private bolCadastroEmEdicao: Boolean;
Private bolCriarConsulta: boolean;
Private bolGerarID: boolean;
Private genGenero: TGenero;
Private strFiltroVisao: String;
Private strNomeCampoID: String;
Private strNomeCampoOrdemInversa: String;
Private strCamposChave: String;
Private strNomeGerador: String;
Private strNomeCampoNome: String;
Private strNomeCampoAlterativo: String;
Private strNomeCampoData: String;
Private strNomeCampoGerador: String;
Private strSQLConsultaOriginal: String;
Private strNomeSingular: String;
Private strNomePlural: String;
Private strNomeModulo: String;
Private strNomeTabelaPrincipal: String;
Private strDescricaoDetalhes: String;
Private intRelatorioID: integer;
Private aryCamposChave: TCamposChave;
Private clsClasseRelatorio: TEntidadeClasse;
Private aryCamposConsulta: TCamposConsulta;
Private bolSomenteRelatorio: boolean;
Private bolRetornarValorConsulta: boolean;
Private bolDetalhe: boolean;
Private strLigacaoMestre: string;
Private objEntidadeMestre: TdtmKernelComum;
Private dscDataSourceMestre: TDataSource;
Private dscDataSource: TDataSource;
Private lstDetalhe: TList;
Private lstCamposAgregados: TList;
Private lstDiretivas: TStringList;
Private bolAplicarAoSalvarOuExcluir: boolean;
Private bolPermitirExcluirDetalhe: boolean;
Private bolPermitirSerExcluidoPeloMestre: boolean;
Private strCamposSomenteLeituraParaEdicao: string;
Private aryCamposSomenteLeituraParaEdicao: array of string;
Private strFiltroPesquisaPadrao: string;
Private bolPesquisando: boolean;
Private objControleVisao: TControleVisao;
Private bolExportarDiretivas: Boolean;
Protected bolPermitirNovo: boolean;
Protected bolPermitirEditar: boolean;
Protected bolPermitirExcluir: boolean;

Métodos

Public procedure DataModuleCreate(Sender: TObject);
Public procedure NivelGetText(Sender: TField; var Text: String; DisplayText: Boolean);
Public procedure TipoPessoaGetText(Sender: TField; var Text: String; DisplayText: Boolean);
Public procedure CampoBooleanGetTextSimNao(Sender: TField; var Text: String; DisplayText: Boolean);
Public procedure CampoDiaDaSemanaGetText(Sender: TField; var Text: String; DisplayText: Boolean);
Public procedure CampoDiaDaSemanaSetText(Sender : TField; var Text : string);
Public procedure CampoBooleanSetTextSimNao(Sender: TField; const Text: String);
Public procedure NivelSetText(Sender: TField; const Text: String);
Public procedure ReconciliarErro(DataSet: TCustomClientDataSet; E: EReconcileError; UpdateKind: TUpdateKind; var Action: TReconcileAction);
Public procedure ErroEdicao(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);
Public procedure ErroGravacao(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);
Public procedure AfterDataSetScroll(DataSet : TDataSet);
Public procedure OnDataSetCalcFields(DataSet : TDataSet);
Public procedure DataSetAntesAbrir(DataSet : TDataSet);
Public procedure DataSetAntesFechar(DataSet : TDataSet);
Public procedure DataModuleDestroy(Sender: TObject);
Private procedure DefinirCamposChave(const strCampos : string);
Private procedure VerificarParametrosEntidade;
Private procedure DefinirRelatorioID(const intID : integer);
Private function AnalizaErroDataSet(const strMsgErro: string): TTipoExcecao;
Private function ObterSQLConsultaOriginal : string;
Private function ObterDataSetConsulta: TClientDataSet;
Private procedure DefinirSQLConsulta(const strNovoSQL : string);
Private function ObterSQLConsulta : string;
Private procedure DefinirGerarIDAutomaticamente(const Value: boolean);
Private procedure DefinirEntidadeMestre(const Value: TdtmKernelComum);
Private procedure ConfigurarMestreDetalhe;
Private procedure AbrirDataSetConsulta;
Private procedure FecharDataSetConsulta;
Private procedure LimitarNumeroRegistrosConsulta;
Private procedure OcultarExcluidos;
Private constructor CriarDetalhe(const objEntidade : TdtmKernelComum; const strLigacao : string);
Private function ObterCampoID: TField;
Private function ObterCampoNome: TField;
Private procedure ConfigurarCampos(const dtsDataSet : TDataSet);
Private procedure DefinirSomenteLeitura(const Value: boolean);
Private function ObterSomenteLeitura: boolean;
Private procedure ConfigurarCamposAgregados;
Private function ObterCampoAgregado(const strNomeCampo: string): double;
Private procedure DefinirCamposSomenteLeituraParaEdicao(const Value: string);
Private procedure AposCriarVisoesConsulta;
Protected procedure IncluirDiretivas; virtual;
Protected procedure NovaDiretiva(const strNomeDiretiva, strDescricaoDiretiva: string);
Protected procedure CriarVisoesConsulta; virtual;
Protected procedure LocalizarChave;
Protected function NovoMestreDetalhe(const clsEntidadeDetalhe : TEntidadeClasse; const strLigacao : string) : TdtmKernelComum;
Protected procedure DefinirParametrosRelatorio; virtual;
Protected procedure DefinirNomeCampoID(const strID : string);
Protected function VerificarEmManutencao : boolean; virtual;
Protected procedure AposCriar; virtual;
Protected procedure AposCriarInterno;
Protected procedure InstanciarMestreDetalhe; virtual;
Protected procedure AntesDeDestruir; virtual;
Protected procedure AposNovo; override;
Protected procedure AntesDeSalvar(var bolContinuar : Boolean); override;
Protected procedure AposSalvar; override;
Protected procedure AntesDeExcluir(var bolContinuar : Boolean); override;
Protected procedure AposExcluir; override;
Protected procedure AposCancelar; override;
Protected procedure AntesDeCancelar; override;
Protected procedure AntesDeCriarCadastro(const bolNovoRegistro : boolean = false); virtual;
Protected procedure AposCriarCadastro(const bolNovoRegistro : boolean = false); virtual;
Protected procedure AntesDeCriarConsulta; virtual;
Protected procedure AposCriarConsulta; virtual;
Protected procedure AntesDeImprimir; virtual;
Protected procedure NovaVisao(const strTitulo, strFiltro : string; bolDefault : boolean = false);
Protected procedure AntesDeCancelarAlteracoes; override;
Protected function ConfirmarExclusao: boolean; virtual;
Protected procedure AposAplicarAlteracoes; override;
Protected procedure RegistroPosicionado; override;
Protected procedure CalcularCampos; virtual;
Protected procedure OrdenarCache(const strCampos : string; const bolDataSetConsulta : Boolean = false);
Protected procedure AposAtualizar; override;
Protected function NovoCampoAgregado(const strNomeCampo, strExpressao : string; const strFormato : string = '0.,00') : TCampoAgregado;
Protected procedure AntesDeFechar; override;
Protected procedure AposAbrir; override;
Protected procedure AntesDeEditar; override;
Protected procedure AntesDeNovo; override;
Protected procedure AposEditar; override;
Protected procedure AtualizarCamposSomenteLeituraParaEdicao( const bolSomenteLeitura : boolean); virtual;
Protected function SomenteLeituraParaEdicao : boolean; virtual;
Public procedure ObterListaDiretivas(var lst : TStringList);
Public procedure ExcluirTodos;
Public class procedure Registrar(const strNomeMenu : string; const strNome, strNomePlural : String;const strDescricao : string); overload; deprecated;
Public class procedure Registrar(const strNome, strNomePlural : String; const strDescricao : string); overload;
Public function Buscar (const strValor : string = ''): boolean;
Public function Ambiente : TAmbiente;
Public function FormatarMensagemEntidade(const strMensagem : string) : String;
Public function AplicarCache(const bolAplicarNosDetalhes : boolean = true; const bolAplicarNosDetalhesPrimeiro : boolean = false) : boolean;
Public procedure ExibirRelatorio;
Public procedure ObterRelatorio;
Public function GerarID (strGerador : string = ''; intIncremento : integer = 1) : integer;
Public function VoltarID (strGerador : string = ''; intID : integer = -1; intIncremento : integer = 1) : boolean;
Public function ChaveExiste : Boolean;
Public procedure DefinirFiltroVisao(const strFiltro : string; const bolAplicarFiltro : boolean = false);
Public procedure Exibir;
Public procedure Imprimir; virtual;
Public function CriarFormulario(const bolPesquisa : boolean = false; strCampoRetorno : string = '';const strFiltro : string = '') : Variant;
Public procedure AbrirManutencao(const bolIncluir : boolean = false);
Public function Pesquisar(const strNomeCampoRetorno : String = ''; const strFiltro : string = '') : Variant;
Public function Localizar(const aryCamposChave: TCamposChave; varValores : TResultadoCamposChave; const bolSomenteLocalizar : boolean = false) : boolean;
Public function LocalizarSomente(const varValores : TResultadoCamposChave) : boolean;
Public function ValoresCampoChave(const ADataSet : TDataSet = nil) : TResultadoCamposChave;
Public function ValoresCampoChaveCadastro : TResultadoCamposChave;
Public procedure DefinirCamposConsulta(const Value: array of string);
Public function ObterFiltroEntidade(const strSQLFiltro: string = ''): string;
Public procedure AtualizarMensagemConsulta;
Public function ProcurarDetalhe(const clsClasseDetalhe : TEntidadeClasse; const bolGerarErro : boolean = false) : TdtmKernelComum;

Properties

Protected property RelatorioTitulo : string read strRelatorioTitulo write strRelatorioTitulo;
Protected property LigacaoMestre : string read strLigacaoMestre write strLigacaoMestre;
Protected property EntidadeMestre : TdtmKernelComum read objEntidadeMestre write DefinirEntidadeMestre;
Protected property DataSourceMestre : TDataSource read dscDataSourceMestre write dscDataSourceMestre;
Protected property PermitirExcluirDetalhe : boolean read bolPermitirExcluirDetalhe write bolPermitirExcluirDetalhe;
Protected property ClasseCadastro : TFormClass read clsCadastro write clsCadastro;
Protected property ClasseConsulta : TFormClass read clsConsulta write clsConsulta;
Protected property ClasseRelatorio : TEntidadeClasse read clsClasseRelatorio write clsClasseRelatorio;
Protected property CamposSomenteLeituraParaEdicao : string read strCamposSomenteLeituraParaEdicao write DefinirCamposSomenteLeituraParaEdicao;
Protected property FiltroPesquisaPadrao : string read strFiltroPesquisaPadrao write strFiltroPesquisaPadrao;
Public property PermitirSerExcluidoPeloMestre : boolean read bolPermitirSerExcluidoPeloMestre write bolPermitirSerExcluidoPeloMestre;
Public property Detalhe : boolean read bolDetalhe;
Public property CampoID : TField read ObterCampoID;
Public property CampoNome : TField read ObterCampoNome;
Public property SQLConsulta : string read ObterSQLConsulta write DefinirSQLConsulta;
Public property DataSetConsulta : TClientDataSet read ObterDataSetConsulta;
Public property EmManutencao : boolean read VerificarEmManutencao;
Public property EmCadastro : boolean read bolEmCadastro write bolEmCadastro;
Public property SQLConsultaOriginal : string read ObterSQLConsultaOriginal;
Public property Genero : TGenero read genGenero write genGenero;
Public property DescricaoPlural : string read strNomePlural write strNomePlural;
Public property Descricao : String read strNomeSingular write strNomeSingular;
Public property NomeModulo : String read strNomeModulo write strNomeModulo;
Public property DescricaoDetalhes : string read strDescricaoDetalhes write strDescricaoDetalhes;
Public property RelatorioID : integer read intRelatorioID write DefinirRelatorioID;
Public property NomeCampoID : string read strNomeCampoID write DefinirNomeCampoID;
Public property NomeCampoNome : string read strNomeCampoNome write strNomeCampoNome;
Public property NomeCampoNomeAlternativo : string read strNomeCampoAlterativo write strNomeCampoAlterativo;
Public property NomeCampoData : string read strNomeCampoData write strNomeCampoData;
Public property NomeGerador : string read strNomeGerador write strNomeGerador;
Public property NomeCampoGerador : string read strNomeCampoGerador write strNomeCampoGerador;
Public property CamposChaveArray : TCamposChave read aryCamposChave;
Public property CamposChave : string read strCamposChave write DefinirCamposChave;
Public property FiltroVisao : string read strFiltroVisao;
Public property SolicitarConfirmacaoExclusao : boolean read bolConfirmarExclusao write bolConfirmarExclusao;
Public property NomeTabelaPrincipal : string read strNomeTabelaPrincipal write strNomeTabelaPrincipal;
Public property VerificarParametros : boolean read bolVerificarParametros write bolVerificarParametros;
Public property CriarConsulta : boolean read bolCriarConsulta write bolCriarConsulta;
Public property CamposConsulta : TCamposConsulta read aryCamposConsulta;
Public property SomenteRelatorio : boolean read bolSomenteRelatorio write bolSomenteRelatorio;
Public property GerarIDAutomaticamente : boolean read bolGerarID write DefinirGerarIDAutomaticamente;
Public property VoltarIDAutomaticamente : boolean read bolVoltarID write bolVoltarID;
Public property SolicitarDialogoImpressao : Boolean read bolSolicitarDialogoImpressao write bolSolicitarDialogoImpressao;
Public property NumeroMaximoRegistrosConsulta : smallint read intNumeroMaximoRegistrosConsulta write intNumeroMaximoRegistrosConsulta default 100;
Public property LimitarRegistrosConsulta : boolean read bolLimitarRegistrosConsulta default true;
Public property Visao : TControleVisao read objControleVisao;
Public property RetornarValorConsulta : boolean read bolRetornarValorConsulta write bolRetornarValorConsulta;
Public property CadastroConfirmado : Boolean read bolCadastroConfirmado;
Public property ExibirExcluidos : boolean read bolExibirExcluidos write bolExibirExcluidos;
Public property AplicarAoSalvarOuExcluir : boolean read bolAplicarAoSalvarOuExcluir write bolAplicarAoSalvarOuExcluir;
Public property PermitirNovo : boolean read bolPermitirNovo;
Public property PermitirEditar : boolean read bolPermitirEditar;
Public property PermitirExcluir : Boolean read bolPermitirExcluir;
Public property DataSource : TDataSource read dscDataSource;
Public property OrdemInversa : Boolean read bolOrdemInversa write bolOrdemInversa;
Public property NomeCampoOrdemInversa : string read strNomeCampoOrdemInversa write strNomeCampoOrdemInversa;
Public property SomenteLeitura : boolean read ObterSomenteLeitura write DefinirSomenteLeitura;
Public property CampoAgregado [const strNomeCampo : string]: double read ObterCampoAgregado;
Public property EntidadeNaoPersistente : Boolean read bolEntidadeNaoPersistente write bolEntidadeNaoPersistente;
Public property CadastroEmEdicao : Boolean read bolCadastroEmEdicao;
Public property ExportarDiretivas : Boolean read bolExportarDiretivas write bolExportarDiretivas;

Descrição

Campos

Public cdsDataSetConsulta: TClientDataSet;
 
Public ProviderConsulta: TDataSetProvider;
 
Public QueryConsulta: TZReadOnlyQuery;
 
Private objFormularioCadastro: TObject;

Armazena os ponteiros dos formularios da entidade

Private objFormularioConsulta: TObject;

Armazena os ponteiros dos formularios da entidade

Private intNumeroMaximoRegistrosConsulta: smallint;

Define o número máximo de registros visualizados na consulta

Private bolLimitarRegistrosConsulta: Boolean;

Define se deve ou não limitar o número máximo de registros na consulta

Private bolEntidadeNaoPersistente: Boolean;

Define se a Entidade não é persistente. sendo verdadeira a entidade nunca aplica as alterações, porém pode ser inserido dados nela normalmente

Private bolExibirExcluidos: Boolean;

Defie se irá exibir os registros excluídos

Private strRelatorioTitulo: string;

Armazena o título do relatório

Private clsCadastro: TFormClass;

Armazena o Nome da Classe do Formulario de Cadastro

Private clsConsulta: TFormClass;

Armazena o Nome da Classe do Formulario de Consulta

Private bolCancelarAlteracoes: boolean;

Armazena se a entidade irá cancelar as alteracoes apos um erro de gravacao

Private bolInclusao: Boolean;

Define se a entidade está em modo de inclusão

Private bolSolicitarDialogoImpressao: Boolean;

Define se será solicitado diálogo de impressão

Private bolConfirmarExclusao: Boolean;

Define se será exibido um dialogo de confirmação de exclusão

Private bolVerificarParametros: Boolean;

Define se será efetuada verificacao de parametros da entidade

Private bolCadastroConfirmado: Boolean;

Define se o cadastro foi confirmado

Private bolOrdemInversa: Boolean;

Define se a consulta deve vir na ordem inversa

Private bolVoltarID: Boolean;

Voltar IDs Automaticamente

Private bolEmCadastro: Boolean;

Armazena Verdadeiro quando a entidade estiver em cadastro

Private bolCadastroEmEdicao: Boolean;

Determina se está editando um registro (somente para cadastro)

Private bolCriarConsulta: boolean;

Define se a Consulta vai ser criada automaticamente

Private bolGerarID: boolean;

Quando verdadeiro a entidade gera automaticamente o id para o campo ID

Private genGenero: TGenero;

Armazena o Genero da Classe

Private strFiltroVisao: String;

Armazena o Filtro da Visao Atual de dados da Consulta

Private strNomeCampoID: String;

Armazena o Nome do Campo que representa o ID

Private strNomeCampoOrdemInversa: String;

Nome do campo a ser ordenado inversamente na entidade

Private strCamposChave: String;

String contendo os campos chave

Private strNomeGerador: String;

Armazena o Nome do Gerador de chaves primárias da Entidade

Private strNomeCampoNome: String;

Define o nome do campo de descrição padrão da entidade

Private strNomeCampoAlterativo: String;

Define um nome de campo alternativo, permite a pesquisa por dois campos ao mesmo tempo (utilizando a operação ou)

Private strNomeCampoData: String;

Define o nome do campo de data padrão da entidade

Private strNomeCampoGerador: String;

Nome do Campo que será incrementado pelo gerador de chaves primárias

Private strSQLConsultaOriginal: String;

Armazena o SQL original do DataSet de Consulta

Private strNomeSingular: String;

Armazena o Nome da Entidade no Singular

Private strNomePlural: String;

Armazena o Nome da Entidade no Plural

Private strNomeModulo: String;

Armazena o Módulo a que a entidade pertence

Private strNomeTabelaPrincipal: String;

Nome da tabela principal da entidade

Private strDescricaoDetalhes: String;

Armazena os detelhes da descricao

Private intRelatorioID: integer;

Armazena o Código do Relatório Principal da Entidade

Private aryCamposChave: TCamposChave;

Armazena o nome dos campos chave da entidade

Private clsClasseRelatorio: TEntidadeClasse;

Armazena a classe da entidade de relatório

Private aryCamposConsulta: TCamposConsulta;

Lista de Campos da consulta

Private bolSomenteRelatorio: boolean;

Define se é somente relatório

Private bolRetornarValorConsulta: boolean;

Verdadeiro se a consulta retornou valor

Private bolDetalhe: boolean;

Define se o objeto é um detalhe de outro

Private strLigacaoMestre: string;

Define a ligação com a entidade mestre Estrutura : 'CAMPODETALHE1=CAMPOMESTRE1;CAMPODETALHE2=CAMPOMESTRE2'

Private objEntidadeMestre: TdtmKernelComum;

Armazena a referência a entidade mestre

Private dscDataSourceMestre: TDataSource;

DataSource utilizado para o mestre detalhe com as entidades detalhes

Private dscDataSource: TDataSource;

DataSource utilizado para o mestre detalhe com as entidades detalhes

Private lstDetalhe: TList;

Lista de entidades detalhe

Private lstCamposAgregados: TList;

Lista de campos agregados

Private lstDiretivas: TStringList;

Lista de Diretivas de segurança adicionadas à entidade

Private bolAplicarAoSalvarOuExcluir: boolean;

Define se deve ou não aplicar as alterações no banco apos salvar

Private bolPermitirExcluirDetalhe: boolean;

Define se o framework pode se encarregar de excluir os registros detalhes antes de excluir o registro mestre

Private bolPermitirSerExcluidoPeloMestre: boolean;

Define se a entidade pode ser totalmente excluída (limpa) pelo mestre, ou seja, quando a propriedade PermitirExcluirDetalhe estiver ativa no mestre, e o detalhe queira ou não ser excluido através deste método (existe a necessidade de que em algum caso possa ser excluído e em outro não)

Private strCamposSomenteLeituraParaEdicao: string;

Determina uma lista de campos que não permitirão alteração quando a entidade está em modo de edição

Private aryCamposSomenteLeituraParaEdicao: array of string;

Array contendo os campos separados de strCamposSomenteLeituraParaEdicao

Private strFiltroPesquisaPadrao: string;

Determina um filtro padrão para a entidade quando a mesma está sendo pesquisada a partir de outra

Private bolPesquisando: boolean;

Determina se a entidade está em modo de pesquisa (na consulta)

Private objControleVisao: TControleVisao;

Objeto de Controle de Visoes TVisaoConsulta

Private bolExportarDiretivas: Boolean;

Define se a entidade vai retornar as diretivas de segurança

Protected bolPermitirNovo: boolean;

Determina se pode ou não inserir um novo registro a partir consulta

Protected bolPermitirEditar: boolean;

Determina se pode ou não editar um registro a partir da consulta

Protected bolPermitirExcluir: boolean;

Determina se pode ou não excluir um registro

Métodos

Public procedure DataModuleCreate(Sender: TObject);

Evento ao Criar o Modulo de Dados

Parâmetros
Sender
Entidade que requisitou a função
Public procedure NivelGetText(Sender: TField; var Text: String; DisplayText: Boolean);

Evento ao Obter texto em um campo de Nivel do banco de dados

Public procedure TipoPessoaGetText(Sender: TField; var Text: String; DisplayText: Boolean);

Evento ao Obter texto em um campo de pessoa do banco de dados

Public procedure CampoBooleanGetTextSimNao(Sender: TField; var Text: String; DisplayText: Boolean);

Obtem o texto de campos boolean como Sim e Não

Public procedure CampoDiaDaSemanaGetText(Sender: TField; var Text: String; DisplayText: Boolean);

Obtem o texto de campos do tipo dia da semana

Public procedure CampoDiaDaSemanaSetText(Sender : TField; var Text : string);

Grava o texto de campos do tipo dia da semana

Public procedure CampoBooleanSetTextSimNao(Sender: TField; const Text: String);

Grava os campos boolean (Sim e Não)

Public procedure NivelSetText(Sender: TField; const Text: String);

Evento ao Gravar Campo de Nivel no banco de dados

Public procedure ReconciliarErro(DataSet: TCustomClientDataSet; E: EReconcileError; UpdateKind: TUpdateKind; var Action: TReconcileAction);

Evento Reconciliar Erro de DataSet

Parâmetros
DataSet
TDataSet
E
Erro de Reconciliacao
UpdateKind
Modo de Atualizacao
Action
Acao a Ser tomada
Public procedure ErroEdicao(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);

Reconcilia Erro de Edição

Parâmetros
Dataset
DataSet que disparou o erro
E
Erro a ser tratado
Action
Ação a ser realizada diante do erro E
Public procedure ErroGravacao(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);

Reconcilia Erro de Gravação

Parâmetros
Dataset
DataSet que disparou o erro
E
Erro a ser tratado
Action
Ação a ser realizada diante do erro E
Public procedure AfterDataSetScroll(DataSet : TDataSet);

Evento disparado após uma movimentação de dados no dataset, como posicionar um registro por exemplo

Public procedure OnDataSetCalcFields(DataSet : TDataSet);

Evento disparado ao calcular os campos do dataset

Public procedure DataSetAntesAbrir(DataSet : TDataSet);

Evento Disparado antes de abrir o dataset

Public procedure DataSetAntesFechar(DataSet : TDataSet);

Evento disparado antes de fechar o dataset em um "Fechar/Close" por exeplo

Public procedure DataModuleDestroy(Sender: TObject);

Evento disparado ao destruir o datamodule

Private procedure DefinirCamposChave(const strCampos : string);

Define os campos chave baseado em uma string separada por vírgulas CAMPO1;CAMPO2;CAMPO3

Private procedure VerificarParametrosEntidade;

Médoto que verifica se os parametros foram preenchidos corretamente

Private procedure DefinirRelatorioID(const intID : integer);

Define o código do relatorio relacionado a esta entidade

Private function AnalizaErroDataSet(const strMsgErro: string): TTipoExcecao;

Analiza mensagem de erro de dataset para retornar o erro ao aplicativo

Private function ObterSQLConsultaOriginal : string;

Retorna o SQL original da consulta caso existe, caso contrário retorna o sql Original da entidade

Private function ObterDataSetConsulta: TClientDataSet;

Retorna o dataset de consulta da entidade

Private procedure DefinirSQLConsulta(const strNovoSQL : string);

Define o SQL da entidade

Private function ObterSQLConsulta : string;

Retorna o SQL atual da entidade

Private procedure DefinirGerarIDAutomaticamente(const Value: boolean);

Define se deve gerar o id da entidade automaticamente

Private procedure DefinirEntidadeMestre(const Value: TdtmKernelComum);

Define a entidade mestre da entidade atual

Private procedure ConfigurarMestreDetalhe;

Configura e carrega as propriedades de mestre-detalhe

Private procedure AbrirDataSetConsulta;

Abre o dataset de consulta

Private procedure FecharDataSetConsulta;

Fecha o dataset de consulta

Private procedure LimitarNumeroRegistrosConsulta;

Altera o comando SQL atual limitando o número de registros da consulta

Private procedure OcultarExcluidos;

Não exibe os registros marcados como excluídos nas consultas. um registro marcado como excluído possui um campo definido pela propriedade NomeCampoRegistroExcluido que vai conter o valor booleano que será verdadeiro caso o campo tenha sido marcado como excluído

Private constructor CriarDetalhe(const objEntidade : TdtmKernelComum; const strLigacao : string);

Constructor utilizado para criar a entidade como detalhe de outra

Parâmetros
objEntidade
Entidade que será ligada como mestre
strLigacao
String que define os campos de ligação no formato CAMPO_DETALHE=CAMPO_MESTRE
Private function ObterCampoID: TField;

Obtém o field referente ao campo de código

Private function ObterCampoNome: TField;

Obtém o field referente ao campo de nome

Private procedure ConfigurarCampos(const dtsDataSet : TDataSet);

Configura os formatos de campos data e valor

Parâmetros
dstDataSet
DataSet ao qual os campos serão configurados/formatados
Private procedure DefinirSomenteLeitura(const Value: boolean);

Define os datasets e os campos dos datasets como somente leitura

Parâmetros
Value
true para somente leitura, false para leitura e gravação
Private function ObterSomenteLeitura: boolean;

Retorna verdadeiro caso o dataset da entidade estiver marcado como somente leitura

Private procedure ConfigurarCamposAgregados;

Efetua a criação e configuração dos campos agregados

Private function ObterCampoAgregado(const strNomeCampo: string): double;

Retorna o valor de um campo agregado

Parâmetros
strNomeCampo
Nome o campo agregado que se quer ter o valor
Private procedure DefinirCamposSomenteLeituraParaEdicao(const Value: string);

Define os campos que serão somente leitura para a edição

Private procedure AposCriarVisoesConsulta;

Evento disparado aós a criação das visões de consulta

Protected procedure IncluirDiretivas; virtual;

Responsável por incluir as diretivas adicionais de segurança necessárias para determinadas entidades, dentro dele deverá ser chamado os procedimentos NovaDiretiva

Protected procedure NovaDiretiva(const strNomeDiretiva, strDescricaoDiretiva: string);

Cria uma Nova Diretiva de Segurança que pode ser testada com a função TAmbiente.OBterPermissaoDiretivaRecurso

Protected procedure CriarVisoesConsulta; virtual;

Neste método o desenvolvediro cria as visões extras para a consulta

Protected procedure LocalizarChave;

Efetua uma busca para localizar localizar a chave atual no dataset principal

Protected function NovoMestreDetalhe(const clsEntidadeDetalhe : TEntidadeClasse; const strLigacao : string) : TdtmKernelComum;

Cria um novo relacionamento mestre-detalhe entre os módulos

Parâmetros
clsEntidadeDetalhe
Entidade a qual será o detalhe da entidade atual
strLigacao
string contendo a ligacao entre os campos ex : CAMPO_DETALHE=CAMPO_MESTRE
Protected procedure DefinirParametrosRelatorio; virtual;

Método executado antes de exibir o relatório, definindo os parametros necessários

Protected procedure DefinirNomeCampoID(const strID : string);

Define os Campos quando for alterada a propriedade do campo id

Protected function VerificarEmManutencao : boolean; virtual;

Verifica se a Entidade está em Manutenção (Formulário de Cadastro aberto).

Protected procedure AposCriar; virtual;

Evento que ocorre logo apos a criação do Modulo de Dados depois dos datasets estarem configurados

Protected procedure AposCriarInterno;

Evento que ocorre apos logo após o evento AposCriar, pode ser utilizado para validar informações do AposCriar

Protected procedure InstanciarMestreDetalhe; virtual;

Cria as dependencias de mestre detalhes entre as entidades Lembrando que os mestre-detalhes também podem ser criados no método apósCriar Utiliza-se o método abaixo apenas quando há herança e precisa-se definir as classes que devem ser instanciadas nos filhos, aí no módulo pai cria-se o mestre-detalhe no método abaixo

Protected procedure AntesDeDestruir; virtual;

Evento que ocorre antes de destruir o Modulo de Dados

Protected procedure AposNovo; override;

TdtmKernelInterfaceDados.AposNovo

Protected procedure AntesDeSalvar(var bolContinuar : Boolean); override;

TdtmKernelInterfaceDados.AntesDeSalvar

Protected procedure AposSalvar; override;

TdtmKernelInterfaceDados.AposSalvar

Protected procedure AntesDeExcluir(var bolContinuar : Boolean); override;

TdtmKernelInterfaceDados.AntesDeExcluir

Protected procedure AposExcluir; override;

TdtmKernelInterfaceDados.AposExcluir

Protected procedure AposCancelar; override;

TdtmKernelInterfaceDados.AposCancelar

Protected procedure AntesDeCancelar; override;

TdtmKernelInterfaceDados.AntesDeCancelar

Protected procedure AntesDeCriarCadastro(const bolNovoRegistro : boolean = false); virtual;

Evento disparado antes de criar o formulario de cadastro

Protected procedure AposCriarCadastro(const bolNovoRegistro : boolean = false); virtual;

Evento disparado apos a criacao do formulario de cadastro

Protected procedure AntesDeCriarConsulta; virtual;

Evento disparado antes de criar o formulario de consulta

Protected procedure AposCriarConsulta; virtual;

Evento disparado apos a criacao do formulario de consulta

Protected procedure AntesDeImprimir; virtual;

Método disparado antes de imprimir o relatório da entidade

Protected procedure NovaVisao(const strTitulo, strFiltro : string; bolDefault : boolean = false);

Cria uma Nova Visao para a consulta

Parâmetros
strTitulo
Título da visão, que aparecerá no menu
strFiltro
Filtro a ser aplicado ao clicar na visão, Ex: VALOR > 10000
Protected procedure AntesDeCancelarAlteracoes; override;

TdtmKernelInterfaceDados.AntesDeCancelarAlteracoes

Protected function ConfirmarExclusao: boolean; virtual;

Pede confirmação para excluir um registro

Retornos

Retorna Verdadeiro caso o usuário confirme

Protected procedure AposAplicarAlteracoes; override;

TdtmKernelInterfaceDados.AposAplicarAlteracoes

Protected procedure RegistroPosicionado; override;

TdtmKernelInterfaceDados.RegistroPosicionado

Protected procedure CalcularCampos; virtual;

Método disparado no evento calcfields do dataset

Protected procedure OrdenarCache(const strCampos : string; const bolDataSetConsulta : Boolean = false);

Efetua a ordenação dos dados na cache local do dataset

Protected procedure AposAtualizar; override;

TdtmKernelInterfaceDados.AposAtualizar

Protected function NovoCampoAgregado(const strNomeCampo, strExpressao : string; const strFormato : string = '0.,00') : TCampoAgregado;

Cria um campo do tipo agregado para cálculos

Parâmetros
strNomeCampo
Nome do campo agregado
strFormato
formato a exibir o resultado
Protected procedure AntesDeFechar; override;

TdtmKernelInterfaceDados.AntesDeFechar

Protected procedure AposAbrir; override;

TdtmKernelInterfaceDados.AposAbrir

Protected procedure AntesDeEditar; override;

TdtmKernelInterfaceDados.AntesDeEditar

Protected procedure AntesDeNovo; override;

TdtmKernelInterfaceDados.AntesDeNovo

Protected procedure AposEditar; override;

TdtmKernelInterfaceDados.AposEditar

Protected procedure AtualizarCamposSomenteLeituraParaEdicao( const bolSomenteLeitura : boolean); virtual;

Atualiza os campos que foram definidos como somente leitura para edição

Protected function SomenteLeituraParaEdicao : boolean; virtual;

Determina se a entidade será definida ou não somente leitura para edição

Public procedure ObterListaDiretivas(var lst : TStringList);

Obtém os nomes das diretivas de segurança disponíveis para a entidade

Public procedure ExcluirTodos;

Excluir todos os registros do dataset (utilizado para excluir os registros detalhes, quando em mestre detalhe);

Public class procedure Registrar(const strNomeMenu : string; const strNome, strNomePlural : String;const strDescricao : string); overload; deprecated;

Warning: este símbolo está depreciado.

Registra o Módulo

Esta Função registra o Módulo Para que certas propriedades dos mesmo estejam acessíveis fora do escopo da classe.


Autor: Carlos Antonio da Silva
Data: 13 de Fevereiro de 2005
Marcado como deprecado em 14 de Junho de 2007, pois o parametro strNomeMenu não é mais necessário

Parâmetros
strNome
Nome do Modulo(Será mostrada no Menu)
strDescricao
Descricao do Modulo.
Public class procedure Registrar(const strNome, strNomePlural : String; const strDescricao : string); overload;

Registra o Módulo Simplificado

Esta Função registra o Módulo Para que certas propriedades dos mesmo estejam acessíveis fora do escopo da classe, sem a necessidade do parametro do menu.


Autor: Carlos Antonio da Silva
Data: 13 de Fevereiro de 2005
Modificado por: Alexandre da Silva
Data de Modificação: 14 de Junho de 2007

Parâmetros
strNome
Nome do Modulo(Será mostrada no Menu)
strDescricao
Descricao do Modulo.
Public function Buscar (const strValor : string = ''): boolean;

permite efetuar a busca na entidade através de uma cláusula where simples

Public function Ambiente : TAmbiente;

Retorna o objeto de Ambiente do sistema, que dá acesso á diversos recursos

See also
TAmbiente
Classe de controle do ambiente do aplicativo
Public function FormatarMensagemEntidade(const strMensagem : string) : String;

Formata uma mensagem de acordo com a entidade a mensagem deve estar de acordo com as especificações contidas na unit untKernelMensagens

Public function AplicarCache(const bolAplicarNosDetalhes : boolean = true; const bolAplicarNosDetalhesPrimeiro : boolean = false) : boolean;

Aplica as alterações no dataset mestre e nos detalhes

Public procedure ExibirRelatorio;

Procedimento responsável por exibir o relatório para o usuário.

Public procedure ObterRelatorio;

Procedimento responsável por carregar o relatório.

Public function GerarID (strGerador : string = ''; intIncremento : integer = 1) : integer;

Função para Gerar IDentificadores. chaves primárias

Utilizada para Gerar Chaves Primárias ou sequencias para campos de uma tabela


Utilização:

 var : intValor;
     : tmpQuery : TSQLQuery;
 begin
   // Cria a Query Temporária
   tmpQuery := TSQLQuery.Create(Self);
   tmpQuery.Connection := conConexao;
   // Obtém o novo código do formecedor
   intValor := GerarID('FORNECEDOR');
   tmpQuery.SQL.Add(Format('Insert into Fornecedor values(%d,"Industria e Comercio de Bebidas Ltda.",
  "Rua Maria das Graças","São Leopoldo","MG")',[intValor]));
   tmpQuery.ExecSQL;
   FreeAndNil(tmpQuery);
 end;


Autor: Alexandre da Silva
Data: 22 de Dezembro de 2004

Public function VoltarID (strGerador : string = ''; intID : integer = -1; intIncremento : integer = 1) : boolean;

Função para Voltar um ID Gerado

Utilizada para voltar um ID caso isto seja possível, por exemplo, Se um Usuário Insere um Novo ID<23> e outro usuário insere um novo ID<24>, caso o usuário que chamou o ID<24> executar a função VoltarID, o ID será recuperado, mas caso o usuario que chamou o ID<23> executar a funcao VoltarID, entao o retorno falhará, pois não temos nenhuma garantia se o usuário que chamou o ID<24> vai ou não cancelar a sua inserção.


Utilização:

 procedure Entidade.AposCancelar;
 begin
   // Volta o Id do formecedor caso possível
   VoltarID('FORNECEDOR');
 end;


Autor: Alexandre da Silva
Data: 22 de Dezembro de 2004

Public function ChaveExiste : Boolean;

Verifica se a chave já existe no banco de dados

Public procedure DefinirFiltroVisao(const strFiltro : string; const bolAplicarFiltro : boolean = false);

Define o filtro de uma visao

Public procedure Exibir;

Exibe um formulário da entidade, (Consulta/Cadastro) nesta ordem caso o primeiro nao exista

Public procedure Imprimir; virtual;

Procedimento para chamar a tela do Relatório

Public function CriarFormulario(const bolPesquisa : boolean = false; strCampoRetorno : string = '';const strFiltro : string = '') : Variant;

Cria o Formulario Anexado ao Módulo de Dados através da propriedade ClasseCadastro

Public procedure AbrirManutencao(const bolIncluir : boolean = false);

Abre o Formulário de Manutenção

Definindo o parametro bolIncluir como verdadeiro ao abrir a manutenção automaticamente será incluído um novo registro no Dataset, caso contrário será aberto o registro atual para edição.

Parâmetros
bolIncluir
Define se a Manutenção será aberta para edição ou para inclusão
Public function Pesquisar(const strNomeCampoRetorno : String = ''; const strFiltro : string = '') : Variant;

Abre a Consulta da Entidade

Public function Localizar(const aryCamposChave: TCamposChave; varValores : TResultadoCamposChave; const bolSomenteLocalizar : boolean = false) : boolean;

Efetua uma localizacao de registro

Parâmetros
aryCamposChave
Campos chave a serem localizados
varValores
Valores correspondentes aos campos chave
bolSomenteLocalizar
caso verdadeiro apenas executa um locate no dataset, caso contrário filtra com WHERE
Public function LocalizarSomente(const varValores : TResultadoCamposChave) : boolean;

Efetua somente um locate no dataset principal

Public function ValoresCampoChave(const ADataSet : TDataSet = nil) : TResultadoCamposChave;

Retorna um Array com os valores dos campos chave do registro atual

Public function ValoresCampoChaveCadastro : TResultadoCamposChave;

Retorna um Array com os valores dos campos chave do registro atual no dataset de cadastro

Public procedure DefinirCamposConsulta(const Value: array of string);

Define os campos visíveis no formulário de consulta

Public function ObterFiltroEntidade(const strSQLFiltro: string = ''): string;

Retorna o filtro da entidade, adicionando o filtro da visão, caso possua

Public procedure AtualizarMensagemConsulta;

Atualiza a mensagem da consulta

Public function ProcurarDetalhe(const clsClasseDetalhe : TEntidadeClasse; const bolGerarErro : boolean = false) : TdtmKernelComum;

Busca por uma entidade que seja detalhe da atual, e a retorna

Parâmetros
clsClasseDetalhe
classe detalhe a ser localizada
bolGerarErro
Caso verdadeiro retorna erro se a classe não for encontrada

Properties

Protected property RelatorioTitulo : string read strRelatorioTitulo write strRelatorioTitulo;

Acesso ou define o título do relatório referente à entidade

Protected property LigacaoMestre : string read strLigacaoMestre write strLigacaoMestre;

Define a ligação com a entidade mestre

Protected property EntidadeMestre : TdtmKernelComum read objEntidadeMestre write DefinirEntidadeMestre;

Armazena a referência a entidade mestre

Protected property DataSourceMestre : TDataSource read dscDataSourceMestre write dscDataSourceMestre;

DataSource utilizado para o mestre detalhe com as entidades detalhes

Protected property PermitirExcluirDetalhe : boolean read bolPermitirExcluirDetalhe write bolPermitirExcluirDetalhe;

Define se o framework pode se encarregar de excluir os registros detalhes antes de excluir o registro mestre

Protected property ClasseCadastro : TFormClass read clsCadastro write clsCadastro;

Grava a classe do formulario que será utilizado como Cadastro

Protected property ClasseConsulta : TFormClass read clsConsulta write clsConsulta;

Grava a classe do formulario que será utilizado como Consulta

Protected property ClasseRelatorio : TEntidadeClasse read clsClasseRelatorio write clsClasseRelatorio;

Grava a classe da entidade de relatório

Protected property CamposSomenteLeituraParaEdicao : string read strCamposSomenteLeituraParaEdicao write DefinirCamposSomenteLeituraParaEdicao;

Define os campos que serão somente leitura para Edição, passar como uma string separada por ; exemplo : CAMPO1;CAMPO2;CAMPO3

Protected property FiltroPesquisaPadrao : string read strFiltroPesquisaPadrao write strFiltroPesquisaPadrao;

Definir o Filtro que será aplicado por padrão a todas as pesquisas realizadas

Public property PermitirSerExcluidoPeloMestre : boolean read bolPermitirSerExcluidoPeloMestre write bolPermitirSerExcluidoPeloMestre;

Define se a entidade pode ser totalmente excluída (limpa) pelo mestre, ou seja, quando a propriedade PermitirExcluirDetalhe estiver ativa no mestre, e o detalhe queira ou não ser excluido através deste método (existe a necessidade de que em algum caso possa ser excluído e em outro não)

Public property Detalhe : boolean read bolDetalhe;

Define se o objeto é um detalhe de outro

Public property CampoID : TField read ObterCampoID;

Obtém o field referente ao campo de código

Public property CampoNome : TField read ObterCampoNome;

Obtém o field referente ao campo de nome

Public property SQLConsulta : string read ObterSQLConsulta write DefinirSQLConsulta;

SQL da entidade

Public property DataSetConsulta : TClientDataSet read ObterDataSetConsulta;

Dataset de consulta da entidade

Public property EmManutencao : boolean read VerificarEmManutencao;

Verifica se a Entidade se encontra em Manutenção

Public property EmCadastro : boolean read bolEmCadastro write bolEmCadastro;

Verifica se a Entidade se encontra em Cadastro

Public property SQLConsultaOriginal : string read ObterSQLConsultaOriginal;

Obtém o SQL Original do dataset da consulta

Public property Genero : TGenero read genGenero write genGenero;

Acessa o Genero da Entidade

Public property DescricaoPlural : string read strNomePlural write strNomePlural;

Nome da Entidade no Plural

Public property Descricao : String read strNomeSingular write strNomeSingular;

Nomeda Entidade no Singular

Public property NomeModulo : String read strNomeModulo write strNomeModulo;

Nome do Módulo da entidade

Public property DescricaoDetalhes : string read strDescricaoDetalhes write strDescricaoDetalhes;

Detalhes do Módulo

Public property RelatorioID : integer read intRelatorioID write DefinirRelatorioID;

Código do Relatório Principal da Entidade

Public property NomeCampoID : string read strNomeCampoID write DefinirNomeCampoID;

Nome do Campo a ser utlizado como ID (Chave Primária) da Entidade

Public property NomeCampoNome : string read strNomeCampoNome write strNomeCampoNome;

Define o nome do campo de descrição padrão da entidade

Public property NomeCampoNomeAlternativo : string read strNomeCampoAlterativo write strNomeCampoAlterativo;

Define um nome de campo alternativo, permite a pesquisa por dois campos ao mesmo tempo (utilizando a operação ou)

Public property NomeCampoData : string read strNomeCampoData write strNomeCampoData;

Define o nome do campo de data padrão da entidade

Public property NomeGerador : string read strNomeGerador write strNomeGerador;

Nome do Gerador de chaves primária da Entidade, geralmente o nome da tabela principal

Public property NomeCampoGerador : string read strNomeCampoGerador write strNomeCampoGerador;

Nome do Campo a Ser incrementado

Public property CamposChaveArray : TCamposChave read aryCamposChave;

Nome dos campos chave da entidade, em forma de array

Public property CamposChave : string read strCamposChave write DefinirCamposChave;

Nome dos campos chave da entidade, separados por ponto e virgula

Public property FiltroVisao : string read strFiltroVisao;

Filtro da Visão atual de dados da consulta

Public property SolicitarConfirmacaoExclusao : boolean read bolConfirmarExclusao write bolConfirmarExclusao;

Define se será solicidata confirmacao para a exclusao de retistros

Public property NomeTabelaPrincipal : string read strNomeTabelaPrincipal write strNomeTabelaPrincipal;

Define o Nome da tabela principal da entidade

Public property VerificarParametros : boolean read bolVerificarParametros write bolVerificarParametros;

Define se os parametros da entidade serao verificados na criacao. padrao = true

Public property CriarConsulta : boolean read bolCriarConsulta write bolCriarConsulta;

Define se será criado automaticamente um formulário de consulta para a entidade

Public property CamposConsulta : TCamposConsulta read aryCamposConsulta;

Retorna os campos visíveis da consulta

Public property SomenteRelatorio : boolean read bolSomenteRelatorio write bolSomenteRelatorio;

Define se é somente relatório

Public property GerarIDAutomaticamente : boolean read bolGerarID write DefinirGerarIDAutomaticamente;

Define se a geracao de IDs para a entidade vai ser automática

Public property VoltarIDAutomaticamente : boolean read bolVoltarID write bolVoltarID;

Define se o Retorno de IDs para a entidade vai ser automático

Public property SolicitarDialogoImpressao : Boolean read bolSolicitarDialogoImpressao write bolSolicitarDialogoImpressao;

Define se será solicitado diálogo de impressão direta ou visualização de relatório

Public property NumeroMaximoRegistrosConsulta : smallint read intNumeroMaximoRegistrosConsulta write intNumeroMaximoRegistrosConsulta default 100;

Define o n° máximo de registros a serem visualizados na consulta (padrão = 100)

Public property LimitarRegistrosConsulta : boolean read bolLimitarRegistrosConsulta default true;

Define se deve ou não limitar o número máximo de registros na consulta

Public property Visao : TControleVisao read objControleVisao;

Define o objeto de controle de visões para a consulta

Public property RetornarValorConsulta : boolean read bolRetornarValorConsulta write bolRetornarValorConsulta;

Caso a consulta retornou

Public property CadastroConfirmado : Boolean read bolCadastroConfirmado;

Verdadeiro se o cadastro for aplicado na base de dados

Public property ExibirExcluidos : boolean read bolExibirExcluidos write bolExibirExcluidos;

Caso Verdadeiro exibe os registros marcados como excluídos pelo método excluir

Public property AplicarAoSalvarOuExcluir : boolean read bolAplicarAoSalvarOuExcluir write bolAplicarAoSalvarOuExcluir;

Define se deve ou não aplicar as alterações no banco apos salvar

Public property PermitirNovo : boolean read bolPermitirNovo;

Determina se pode ou não inserir um novo registro na consulta

Public property PermitirEditar : boolean read bolPermitirEditar;

Determina se pode ou não editar um registro na consulta

Public property PermitirExcluir : Boolean read bolPermitirExcluir;

Determina se pode ou não excluir um registro

Public property DataSource : TDataSource read dscDataSource;

Retorna o DataSource da Entidade

Public property OrdemInversa : Boolean read bolOrdemInversa write bolOrdemInversa;

Ordem inversa na consulta

Public property NomeCampoOrdemInversa : string read strNomeCampoOrdemInversa write strNomeCampoOrdemInversa;

Nome do campo a ser ordenado inversamente

Public property SomenteLeitura : boolean read ObterSomenteLeitura write DefinirSomenteLeitura;

Define se a entidade é somente leitura

Public property CampoAgregado [const strNomeCampo : string]: double read ObterCampoAgregado;

Obtém o valor do campo agregado como float

Public property EntidadeNaoPersistente : Boolean read bolEntidadeNaoPersistente write bolEntidadeNaoPersistente;

Obtém/Define se a entidade é persistente ou não. uma entidade não persistente não armazena dados no banco de dados

Public property CadastroEmEdicao : Boolean read bolCadastroEmEdicao;

Determina se está entrando em edição a partir do cadastro

Public property ExportarDiretivas : Boolean read bolExportarDiretivas write bolExportarDiretivas;

Define se as diretivas serão exportadas default = sim/true

Autor

Criada

16 de Novembro de 2004