DataEase Schema Challenge
DataEase Schema Challenge
A Challenge
Since DE8x can sing and dance and do all things possible, it must be capable of producing a report such as :-
for System database(x)
list records
Field1, field name, Type, Text Options, Required, Indexed, Unique, Field Data , Virtual Control, Field Security View, Field Security Write,
Derivation lookup "Jobs" "JobCustomerCode"
etc
etc.
so that it can be documented.
Re:DataEase Schema NO Challenge...;-)
DataEase is "self-documenting" as you have Status Tables that contain all the information about Tables, Documents, DQL's, Derivations, OML etc..
The only thing missing is Code on Buttons which has been on the TODO list for quite some time.
The Status Tables are just normal tables so you can make your own DQL/Report to create the documentation.
We are planning to create a Documentation Module that you can install in an app to create the Documentation as PDF but that too is still further down the ToDo list.
If you want to make sure that the Status Tables are fully up to date, simply call the function RefreshStatus() at the beginning of your DQL as this will refresh all the Status Tables.
RefreshStatus
RefreshStatus()
retval:=RefreshStatus()
Function that will automatically refresh all status/info/system documents in DE8. You can now run this function and after you will be sure that all these info tables are up to date.
This is very useful if you use the Status Tables for programming or information purposes. We use the as basis for manipulation of data throughout the table, as well as input in UserMode based Editors etc.
To be able to use the Status reports in DQL you need to enable viewing them.
Re:Re:DataEase Schema NO Challenge...
Lovely.....Thanks a million
Other uses of the Status Tables will include...
You can of course also use the information stored in these files to create your own Install files/Packages for updates etc.
This stuff is "old" but as so much other stuff in DFW it has been hidden by bad implementation, bugs, problems, lack of trust in the product etc.
We find that when we are working on new functionality we feel the product need, we invariably find traces of almost completed "ideas" along the same lines.
The problem is very often that the difference between 99% and 100% from a user perspective is an "abyss".
100% finished is when a function is polished, works as described and documented, is easy to understand both how to use and why it is there and of course comes with proper step-by-step documentation and easily readable samples.
We have recently fixed Install in DFW.
This used to be one of the more critical functions in DFD,because it was how you could "Industrially" update applications.
It has never worked in DFW...not along the lines above at least and in 7.x it only worked if you knew all the many work arounds and even then it was a hit and miss game...
We have fixed it in DE8.5 not only so YOU can update your applications, but also so we can distribute "modules".
Modules that you can install in your apps....
Modules for creating Installation packages.
Modules for documenting your app.
Modules for version control of your apps.
Modules like Addressbooks, DQLeditors, ReportEditors, WebShops, CRM, CMS...
Re:Other uses of the Status Tables will include...
It looks like Christmas is coming early!
Now how to contact the million or so lost sheep !
Re:Re:Other uses of the Status Tables will include...
No point crying over lost sheep...
Our goal is new users (happy if they are old ones that want to be new) and new use.
We can't develop software for the past, that was where it went wrong in the past...
If DataEase is good enough for new users, I am sure it will be good enough for "old" users. but not the other way around as DataEase has found out the hard way...
Re:Re:Re:Other uses of the Status Tables will include...
I used that to document my program, but it has a big problem: it does not tells if a field is virtual; could you please fix that?