Easy to Create, Easy to Change - Easy to use!


DE8 - ExecDQL Sample App


Started by Fatma
Search
You will need to Sign In to be able to add or comment on the forum!

DE8 - ExecDQL Sample App

I just want to ask about the sample app about ExecDQL here http://www.dataease.com/DG3_BlogList/?ParentID=0000000090&field1=0000000090

When i just try and click the "View agreement" and "generate agreement" i get errors executing setGlobal+opendocument, I even tried and added the SetGlobal function to the CDF table but still not working, am i missing something?

Thanks.

Written by Fatma 01/10/13 at 09:31:01 Dataease [{8}]FIVE

Re:DE8 - ExecDQL Sample App

You are not, it is “our bug” and it is almost left there to remind us of how important it is to not re-use names/replace functionality but add ;-)


SetGlobal() is an old CDF unrelated to us. It was developed by someone else, but widely used by the DE community due to limitations in our product….

When we started on the DE8 development global variables (built in) was high on our priority list and for the same reason the developer of the CDF SetGlobal()/GetGlobal(() chose that name, we did the same.

And the story would have ended well if we had defined them the same way, but we didn’t. Ours use variable names and the CDF use variable numbers:

So the format of ours was: SetGlobal(“MyVariabelname”,value) and GetGlobal(“MyVariableName”) when the CDF is SetGlobal(n,value) where n can be between 1 and a 100.

We chose variable name because to manage a 100 numbers is “Impossible”.

However migrated apps of course got problems with the derivation where SetGlobal()/GetGlobal() were already being used, so very quickly after the release of DE8 Classic we decided to rename our functions to SetVar()/GetVar() when there was still time.

The problem was then small for existing users, but a little bigger for ourselves.

We tried to find all the places where we had used SetGlobal()/GetGlobal() but sadly we missed some and especially on buttons. The reason for that is that Button Actions is not part of the status reports, so we couldn’t search through the database to find where we had used it. As you can tell when you start dipping into the CRM sample, it is quite a lot of new code in there ;-)

But two good things came out of this.

We fixed the problem with Saving of tables with illegal Derivations and we will include Actions in the status reports (we also cleaned up the status reports and made a function to refresh them automatically RefreshStatus()

http://www.dataease.com/DG3_BlogList/?ParentID=0000000117&field1=0000000117

Status reports is basically the documentation of the entire database, so when the Actions are include we will make a Template that will generate the complete documentation in a Memo Field (HTMLfield) of the entire system.

We will also use the Status Tables to create a ExecDQL editor and a Install File generator etc…. nothing better than when DataEase can be made in DataEase ;-)

So the solution is simply to replace GetGlobal() with GetVar() and SetGlobal() with SetVar() if you get this problem.

Written by DataEase Tech Sup 01/10/13 at 09:31:36 Dataease [{8}]FIVE