Hello!
Aurelius protests that one of the tables either doesn't have the entity attribute (which it does) or is not part of the model (which as far as I can tell it is).
The general schema of the class is this:
[Entity]
[Table('PETPERSONALE')]
[Id('FID', TIdGenerator.IdentityOrSequence)]
TPETPERSONALE = class( TBFiveModelDataLogBase )
private
[Column('ID', [TColumnProp.Required, TColumnProp.NoInsert, TColumnProp.NoUpdate])]
FID: Integer;
[Column('MATRICOLA', [TColumnProp.Required], 50)]
FMATRICOLA: string;
[Column('ID_CMTSTATI', [])]
FID_CMTSTATI: Nullable<Integer>;
[Column('EMAIL', [], 255)]
FEMAIL: Nullable<string>;
[Column('TELEFONO', [], 50)]
FTELEFONO: Nullable<string>;
[Column('DATA_INIZIO', [])]
FDATA_INIZIO: Nullable<TDateTime>;
[Column('DATA_FINE', [])]
FDATA_FINE: Nullable<TDateTime>;
[Column('ID_PIANO', [])]
FID_PIANO: Nullable<Integer>;
[Column('ESCLUDI_INCARICO', [], 1)]
FESCLUDI_INCARICO: Nullable<string>;
[Column('SMART_WORKING', [], 1)]
FSMART_WORKING: Nullable<string>;
[Column('INSERIMENTO_MANUALE', [], 1)]
FINSERIMENTO_MANUALE: Nullable<string>;
[Column('CID', [], 8)]
FCID: Nullable<string>;
[Column('RESPONSABILE', [], 1)]
FRESPONSABILE: Nullable<string>;
[Column('GRADO', [], 20)]
FGRADO: Nullable<string>;
[Column('GENERA_INCARICO_FLUSSO', [], 1)]
FGENERA_INCARICO_FLUSSO: Nullable<string>;
[Column('DATA_FINE_ESCLUDI_INCARICO', [])]
FDATA_FINE_ESCLUDI_INCARICO: Nullable<TDateTime>;
[Column('NOTE', [], 1000)]
FNOTE: Nullable<string>;
// [Association([TAssociationProp.Lazy], CascadeTypeAll - [TCascadeType.Remove])]
// [JoinColumn('ID_CMTSITI', [], 'ID_CMTOGGETTI')]
// FID_CMTSITI: Proxy<TCMTSITI>;
//
[Association([TAssociationProp.Lazy], CascadeTypeAll - [TCascadeType.Remove])]
[JoinColumn('ID_CMTSOCIETA', [], 'ID')]
FID_CMTSOCIETA: Proxy<TCMTSOCIETA>;
//
// [Association([TAssociationProp.Lazy], CascadeTypeAll - [TCascadeType.Remove])]
// [JoinColumn('ID_CMTUNITAORGANIZZATIVE', [], 'ID')]
// FID_CMTUNITAORGANIZZATIVE: Proxy<TCMTOGGETTI>;
[Association([TAssociationProp.Lazy, TAssociationProp.Required], CascadeTypeAll - [TCascadeType.Remove])]
[JoinColumn('ID_PETANAGRAFICA', [TColumnProp.Required], 'ID')]
FID_PETANAGRAFICA: Proxy<TPETANAGRAFICA>;
// function GetID_CMTSITI: TCMTSITI;
// procedure SetID_CMTSITI(const Value: TCMTSITI);
function GetID_CMTSOCIETA: TCMTSOCIETA;
procedure SetID_CMTSOCIETA(const Value: TCMTSOCIETA);
// function GetID_CMTUNITAORGANIZZATIVE: TCMTOGGETTI;
// procedure SetID_CMTUNITAORGANIZZATIVE(const Value: TCMTOGGETTI);
function GetID_PETANAGRAFICA: TPETANAGRAFICA;
procedure SetID_PETANAGRAFICA(const Value: TPETANAGRAFICA);
public
property ID: Integer read FID write FID;
property MATRICOLA: string read FMATRICOLA write FMATRICOLA;
property ID_CMTSTATI: Nullable<Integer> read FID_CMTSTATI write FID_CMTSTATI;
property EMAIL: Nullable<string> read FEMAIL write FEMAIL;
property TELEFONO: Nullable<string> read FTELEFONO write FTELEFONO;
property DATA_INIZIO: Nullable<TDateTime> read FDATA_INIZIO write FDATA_INIZIO;
property DATA_FINE: Nullable<TDateTime> read FDATA_FINE write FDATA_FINE;
property ID_PIANO: Nullable<Integer> read FID_PIANO write FID_PIANO;
property ESCLUDI_INCARICO: Nullable<string> read FESCLUDI_INCARICO write FESCLUDI_INCARICO;
property SMART_WORKING: Nullable<string> read FSMART_WORKING write FSMART_WORKING;
property INSERIMENTO_MANUALE: Nullable<string> read FINSERIMENTO_MANUALE write FINSERIMENTO_MANUALE;
property CID: Nullable<string> read FCID write FCID;
property RESPONSABILE: Nullable<string> read FRESPONSABILE write FRESPONSABILE;
property GRADO: Nullable<string> read FGRADO write FGRADO;
property GENERA_INCARICO_FLUSSO: Nullable<string> read FGENERA_INCARICO_FLUSSO write FGENERA_INCARICO_FLUSSO;
property DATA_FINE_ESCLUDI_INCARICO: Nullable<TDateTime> read FDATA_FINE_ESCLUDI_INCARICO write FDATA_FINE_ESCLUDI_INCARICO;
property NOTE: Nullable<string> read FNOTE write FNOTE;
// property ID_CMTSITI: TCMTSITI read GetID_CMTSITI write SetID_CMTSITI;
property ID_CMTSOCIETA: TCMTSOCIETA read GetID_CMTSOCIETA write SetID_CMTSOCIETA;
// property ID_CMTUNITAORGANIZZATIVE: TCMTOGGETTI read GetID_CMTUNITAORGANIZZATIVE write SetID_CMTUNITAORGANIZZATIVE;
property ID_PETANAGRAFICA: TPETANAGRAFICA read GetID_PETANAGRAFICA write SetID_PETANAGRAFICA;
end;
Some properties are commented on purpose because TMS Data Modeler refuses to map certain classes and we're trying to get a minimum set working as part of our trial to see if Aurelius can come in and substitute our insane amount of SQL.
In particular, this class is referenced here:
[Entity]
[Table('SSTPERSONALE_VISITE')]
[Id('FID', TIdGenerator.IdentityOrSequence)]
TSSTPERSONALE_VISITE = class( TBFiveModelDataLogBase )
private
[Column('ID', [TColumnProp.Required, TColumnProp.NoInsert, TColumnProp.NoUpdate])]
FID: Integer;
[Column('ID_CMTSTATI', [TColumnProp.Required])]
FID_CMTSTATI: Integer;
[Column('ID_SSTVISITE', [])]
FID_SSTVISITE: Nullable<Integer>;
[Column('DATA_PIANIFICATA', [TColumnProp.Required])]
FDATA_PIANIFICATA: TDateTime;
[Column('DATA_CONCORDATA', [])]
FDATA_CONCORDATA: Nullable<TDateTime>;
[Column('ORA_VISITA', [], 5)]
FORA_VISITA: Nullable<string>;
[Column('DATA_EFFETTIVA', [])]
FDATA_EFFETTIVA: Nullable<TDateTime>;
[Column('PERIODICITA', [])]
FPERIODICITA: Nullable<Integer>;
[Column('DATA_VALIDITA', [])]
FDATA_VALIDITA: Nullable<TDateTime>;
[Column('FORZA_DATA_VALIDITA', [], 1)]
FFORZA_DATA_VALIDITA: Nullable<string>;
[Column('LUOGOVISITA', [], 250)]
FLUOGOVISITA: Nullable<string>;
[Column('ID_SSTTIPIRICHIEDENTE', [])]
FID_SSTTIPIRICHIEDENTE: Nullable<Integer>;
[Column('ID_SSTTIPOLOGIEVISITA', [])]
FID_SSTTIPOLOGIEVISITA: Nullable<Integer>;
[Column('NOTE', [], 1000)]
FNOTE: Nullable<string>;
[Column('ESITO_ACCERTAMENTO', [], 1)]
FESITO_ACCERTAMENTO: Nullable<string>;
[Column('PIANIFICAZIONEMANUALE', [], 1)]
FPIANIFICAZIONEMANUALE: Nullable<string>;
[Column('ID_GRUPPOOMOGENEO', [])]
FID_GRUPPOOMOGENEO: Nullable<Integer>;
[Column('ID_MANSIONE', [])]
FID_MANSIONE: Nullable<Integer>;
[Column('ID_STRUTTURAORGANIZZATIVA', [])]
FID_STRUTTURAORGANIZZATIVA: Nullable<Integer>;
[Column('ID_SSTAMBULATORI', [])]
FID_SSTAMBULATORI: Nullable<Integer>;
[Column('CONFERMACONVOCAZIONE', [], 1)]
FCONFERMACONVOCAZIONE: Nullable<string>;
[Column('ORASUGGERITA_DA', [])]
FORASUGGERITA_DA: Nullable<TDateTime>;
[Column('ORASUGGERITA_A', [])]
FORASUGGERITA_A: Nullable<TDateTime>;
[Column('COMMENTOUTENTE', [], 100)]
FCOMMENTOUTENTE: Nullable<string>;
[Column('NOTE_MEDICO', [TColumnProp.Lazy])]
[DBTypeMemo]
FNOTE_MEDICO: TBlob;
[Column('PRESCRIZIONI_NON_STANDARD', [TColumnProp.Lazy])]
[DBTypeMemo]
FPRESCRIZIONI_NON_STANDARD: TBlob;
[Column('ID_SSTESPOSIZIONE', [])]
FID_SSTESPOSIZIONE: Nullable<Integer>;
[Column('GRUPPIOMOGENEI', [TColumnProp.Lazy])]
[DBTypeMemo]
FGRUPPIOMOGENEI: TBlob;
[Column('DATA_RICHIESTA', [])]
FDATA_RICHIESTA: Nullable<TDateTime>;
[Column('MOTIVAZIONE_VISITA', [], 500)]
FMOTIVAZIONE_VISITA: Nullable<string>;
[Association([TAssociationProp.Lazy, TAssociationProp.Required], CascadeTypeAll - [TCascadeType.Remove])]
[JoinColumn('ID_PETPERSONALE', [TColumnProp.Required], 'ID')]
FID_PETPERSONALE: Proxy<TPETPERSONALE>;
[Association([TAssociationProp.Lazy, TAssociationProp.Required], CascadeTypeAll - [TCascadeType.Remove])]
[ForeignJoinColumn('ID',[TColumnProp.Required],'ID')]
FID_PETCACHEPERSONALE: TPETCACHEPERSONALE;
[Association([TAssociationProp.Lazy], CascadeTypeAll - [TCascadeType.Remove])]
[JoinColumn('ID_SSTESITI', [], 'ID')]
FID_SSTESITI: Proxy<TSSTESITI>;
[Association([TAssociationProp.Lazy], CascadeTypeAll - [TCascadeType.Remove])]
[JoinColumn('ID_SSTMEDICI', [], 'ID')]
FID_SSTMEDICI: Proxy<TSSTMEDICI>;
function GetID_PETPERSONALE: Proxy<TPETPERSONALE>;
procedure SetID_PETPERSONALE(const Value: Proxy<TPETPERSONALE>);
function GetID_SSTESITI: TSSTESITI;
procedure SetID_SSTESITI(const Value: TSSTESITI);
function GetID_SSTMEDICI: TSSTMEDICI;
procedure SetID_SSTMEDICI(const Value: TSSTMEDICI);
function GetID_PETCACHEPERSONALE: TPETCACHEPERSONALE;
procedure SetID_PETCACHEPERSONALE(const Value: TPETCACHEPERSONALE);
public
property ID: Integer read FID write FID;
property ID_CMTSTATI: Integer read FID_CMTSTATI write FID_CMTSTATI;
property ID_SSTVISITE: Nullable<Integer> read FID_SSTVISITE write FID_SSTVISITE;
property DATA_PIANIFICATA: TDateTime read FDATA_PIANIFICATA write FDATA_PIANIFICATA;
property DATA_CONCORDATA: Nullable<TDateTime> read FDATA_CONCORDATA write FDATA_CONCORDATA;
property ORA_VISITA: Nullable<string> read FORA_VISITA write FORA_VISITA;
property DATA_EFFETTIVA: Nullable<TDateTime> read FDATA_EFFETTIVA write FDATA_EFFETTIVA;
property PERIODICITA: Nullable<Integer> read FPERIODICITA write FPERIODICITA;
property DATA_VALIDITA: Nullable<TDateTime> read FDATA_VALIDITA write FDATA_VALIDITA;
property FORZA_DATA_VALIDITA: Nullable<string> read FFORZA_DATA_VALIDITA write FFORZA_DATA_VALIDITA;
property LUOGOVISITA: Nullable<string> read FLUOGOVISITA write FLUOGOVISITA;
property ID_SSTTIPIRICHIEDENTE: Nullable<Integer> read FID_SSTTIPIRICHIEDENTE write FID_SSTTIPIRICHIEDENTE;
property ID_SSTTIPOLOGIEVISITA: Nullable<Integer> read FID_SSTTIPOLOGIEVISITA write FID_SSTTIPOLOGIEVISITA;
property NOTE: Nullable<string> read FNOTE write FNOTE;
property ESITO_ACCERTAMENTO: Nullable<string> read FESITO_ACCERTAMENTO write FESITO_ACCERTAMENTO;
property PIANIFICAZIONEMANUALE: Nullable<string> read FPIANIFICAZIONEMANUALE write FPIANIFICAZIONEMANUALE;
property ID_GRUPPOOMOGENEO: Nullable<Integer> read FID_GRUPPOOMOGENEO write FID_GRUPPOOMOGENEO;
property ID_MANSIONE: Nullable<Integer> read FID_MANSIONE write FID_MANSIONE;
property ID_STRUTTURAORGANIZZATIVA: Nullable<Integer> read FID_STRUTTURAORGANIZZATIVA write FID_STRUTTURAORGANIZZATIVA;
property ID_SSTAMBULATORI: Nullable<Integer> read FID_SSTAMBULATORI write FID_SSTAMBULATORI;
property CONFERMACONVOCAZIONE: Nullable<string> read FCONFERMACONVOCAZIONE write FCONFERMACONVOCAZIONE;
property ORASUGGERITA_DA: Nullable<TDateTime> read FORASUGGERITA_DA write FORASUGGERITA_DA;
property ORASUGGERITA_A: Nullable<TDateTime> read FORASUGGERITA_A write FORASUGGERITA_A;
property COMMENTOUTENTE: Nullable<string> read FCOMMENTOUTENTE write FCOMMENTOUTENTE;
property NOTE_MEDICO: TBlob read FNOTE_MEDICO write FNOTE_MEDICO;
property PRESCRIZIONI_NON_STANDARD: TBlob read FPRESCRIZIONI_NON_STANDARD write FPRESCRIZIONI_NON_STANDARD;
property ID_SSTESPOSIZIONE: Nullable<Integer> read FID_SSTESPOSIZIONE write FID_SSTESPOSIZIONE;
property GRUPPIOMOGENEI: TBlob read FGRUPPIOMOGENEI write FGRUPPIOMOGENEI;
property DATA_RICHIESTA: Nullable<TDateTime> read FDATA_RICHIESTA write FDATA_RICHIESTA;
property MOTIVAZIONE_VISITA: Nullable<string> read FMOTIVAZIONE_VISITA write FMOTIVAZIONE_VISITA;
property ID_PETPERSONALE: Proxy<TPETPERSONALE> read GetID_PETPERSONALE write SetID_PETPERSONALE;
property ID_SSTESITI: TSSTESITI read GetID_SSTESITI write SetID_SSTESITI;
property ID_SSTMEDICI: TSSTMEDICI read GetID_SSTMEDICI write SetID_SSTMEDICI;
property ID_PETCACHEPERSONALE: TPETCACHEPERSONALE read GetID_PETCACHEPERSONALE write SetID_PETCACHEPERSONALE;
end;
And upon trying to load the latter in a service Aurelius complains about the former.
All classes have a call to RegisterEntity in the initialization section, so there is no compiler woopla' going on.
TBFIveXXXX is an abstract entity with some logging information (user and date for insert and modification)
What else might cause this error?
Thanks!