I wish to use TOraNumberField field type. Table declaration has Oracle field type "NUMBER" (or "NUMBER(16)" for example). I have set OraSession.Options: EnableIntegers=true, EnableNumbers=true.
All ok, compiled and working...
But! After the C++Builder project just first reloaded into IDE - error occured (during forms loading):
"Class TOraNumberField not found. Ignore the error and continue?"
"Ignoring" will eliminate TOraNumber-field declaration;
in case of "cancelling" - form will not displayed (until this TOraNumberField will be deleted), but project compiled successfully....
All paths to ODAC-libs a specified correctly.
Is there any solution?
I won't use TIntegerField and TFloatField.
ps. using C++Builder 6, Oracle 9.2.0.7
Class TOraNumberField not found. Ignore the error and continue?...
detailed description (and simple example)
I tried to use ODAC 5.55.122, 5.55.124 - both has the same problem.
I think that problem is easy reproducable:
just now i created the new (empty) project, drops OraSession1 (TOraSession) + OraTable1 (TOraTable) + DataSource1 (TDataSource or TOraDataSource). Set OraTable1.TableName="SYSTEM.HELP" ('system' table in Oracle 9.2.0.7).
Default project directories settings (not changed):
Include path = "..\Lib\ODAC555124\Source\CBuilder6\Odac\Include;..\;ODAC_Test;$(BCB)\include;$(BCB)\include\vcl"
Library path = "..\Lib\ODAC555124\Source\CBuilder6\Odac\Include;..\;ODAC_Test;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib"
1) First, OraSession1.Options not changed: EnableIntegers=true, EnableNumbers=false (as by default). Fields editor was called for OraTable1, added field "SEQ" (from table "SYSTEM.HELP", type is "NUMBER") - the delphi-type is "TFloatField", as expected. Project compiled, closed & reopened successfully, always.
2) Set OraSession1.Options.EnableNumbers=true. Field "SEQ" deleted and created newly. Now the type is "TOraNumberField", as expected (due to EnableNumbers=true). Project compiled successfully, then closed... But does not open!
Error message: "Class TOraNumberField not found. Ignore the error and continue? NOTE: Ugnoring the error may cause components to be deleted or property values to be lost. [Ignore] [Cancel] [Ignore All]". After pressing [Cancel] button the second message box appears: "Error creating form: Class TOraNumberField not found [Ok]". Pressing [Ok], project loaded, but his form (with database-aware components) not shown - i.e. code editor available, but visual editor not. Then, i try to compile the project - this is done successfully, project compiled!!! Full project rebuild works also. And program works as expected.
Problem only that class TOraNumberField load failed at design-time (and form designer does not work).
Setting project path's to:
Include path = "$(BCB)\Include;$(BCB)\Include\Vcl;..\Lib\ODAC555124\Source\CBuilder6\Odac\Include;..\Lib\ODAC555124\Source\CBuilder6\Odac\CRGrid;..\Lib\ODAC555124\Source"
Library path = "$(BCB)\Lib;$(BCB)\Lib\Obj;..\Lib\ODAC555124\Source\CBuilder6\Odac\Lib;..\Lib\ODAC555124\Source\CBuilder6\Odac\Dcu;..\Lib\ODAC555124\Source\CBuilder6\Odac\CRGrid;..\Lib\ODAC555124\Source"
- does not help to solve a problem.
I think that problem is easy reproducable:
just now i created the new (empty) project, drops OraSession1 (TOraSession) + OraTable1 (TOraTable) + DataSource1 (TDataSource or TOraDataSource). Set OraTable1.TableName="SYSTEM.HELP" ('system' table in Oracle 9.2.0.7).
Default project directories settings (not changed):
Include path = "..\Lib\ODAC555124\Source\CBuilder6\Odac\Include;..\;ODAC_Test;$(BCB)\include;$(BCB)\include\vcl"
Library path = "..\Lib\ODAC555124\Source\CBuilder6\Odac\Include;..\;ODAC_Test;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib"
1) First, OraSession1.Options not changed: EnableIntegers=true, EnableNumbers=false (as by default). Fields editor was called for OraTable1, added field "SEQ" (from table "SYSTEM.HELP", type is "NUMBER") - the delphi-type is "TFloatField", as expected. Project compiled, closed & reopened successfully, always.
2) Set OraSession1.Options.EnableNumbers=true. Field "SEQ" deleted and created newly. Now the type is "TOraNumberField", as expected (due to EnableNumbers=true). Project compiled successfully, then closed... But does not open!

Problem only that class TOraNumberField load failed at design-time (and form designer does not work).
Setting project path's to:
Include path = "$(BCB)\Include;$(BCB)\Include\Vcl;..\Lib\ODAC555124\Source\CBuilder6\Odac\Include;..\Lib\ODAC555124\Source\CBuilder6\Odac\CRGrid;..\Lib\ODAC555124\Source"
Library path = "$(BCB)\Lib;$(BCB)\Lib\Obj;..\Lib\ODAC555124\Source\CBuilder6\Odac\Lib;..\Lib\ODAC555124\Source\CBuilder6\Odac\Dcu;..\Lib\ODAC555124\Source\CBuilder6\Odac\CRGrid;..\Lib\ODAC555124\Source"
- does not help to solve a problem.