DERun.exe is a boot strap version of DataEase to be used for scheduled task trough the windows scheduler or simply to run long lasting DQLs without having to wait for them to finish in the GUI.

How to use

When calling DERun it will look at the number of parameters and calculate what to set. DERun must always have a App to run in and what to run with a query for input data. The rest is optional. In the development server all but the what to run optional as it then will run on the DevServerDemo following DataEase Pro. The way it works is "what to to" and the query are always the last parameters and Path to App and the App name is always the first. The rest are optional.

RepoPath The absolute path the the repository (App) to be used by DERun
RepoName
The name of the repository (App)
[UserName] User name used to log in to the repository
[Password] The password for the user used to log in to the repository
[TableName] The table where you will find the code to run
[FieldId]
The search field used to locate the code in the table (must be a text field)
[FieldToDo] Field used to tell the runner what to do. Default is run the dql and return to console. The todo set when starting runner will always over ride the one set in the field
[FieldCode] Field holding the code to run
[ToDo] Tell the runner how to use the code and what to return. Now it can be
 - DQL  | returns a JSON string with result of how it went (ok or failed). If ok a output key holds the result, if failed you get error code , errorpos  and errorincode
 - Derivation | returns a JSON string with result ok or failed. If ok return from derivation will be returned in output key, if failed it will return the error as a key
ToRun How to locate the code to run. This can be the search name in a table, a filename (if starts on \\ or have : at second position like \\serverpath\dir\dlq.dql or c:\mydqls\dql.dlq) or #id or @name that will locate the dql in $$DQLStore$$.
Query Used to add

What the program reads the parameters as with different number of parameters

0 You will get error message and a string showing what arguments is supported
1 ToRun
2 ToRun Query
3 RepoPath RepoName ToRun
4 RepoPath RepoName ToRun Query
5 RepoPath RepoName UserName Password ToRun
6
RepoPath RepoName UserName Password ToRun Query
7 RepoPath RepoName UserName Password TableName ToRun Query
8 RepoPath RepoName UserName Password TableName FieldId ToRun Query
9 RepoPath RepoName UserName Password TableName FieldId FieldToDo ToRun Query
10 RepoPath RepoName UserName Password TableName FieldId FieldToDo FieldCode ToRun Query
11 RepoPath RepoName UserName Password TableName FieldId FieldToDo FieldCode ToDo ToRun Query

Examples of use

DERun "C:\Users\me\Documents\My DataEase\MyApp" TheApp MyUser MyPass DQL0001 ""

This will start a task in the TheApp application from "C:\Users\me\Documents\My DataEase\MyApp with user name MyUser and password MyPass and run a job description in the standard Scheduler table with ID="DQL0001" and no query.

DERun \"C:\\Users\\me\\Documents\\My DataEase\\MyApp\" TheApp MyUser MyPass "C:\Users\me\Documents\My DataEase\MyApp\MyDql.dql name=Alfred&code=3159

This wil run a file based DQL that can be found the the app path and it will pick up data-entry values for name and code

DERun "C:\Users\me\Documents\My DataEase\MyApp" TheApp MyUser MyPass @TheTask ""

This will run a DQL stored in the $$DQLStore$$ the the given app without input paramters