Framework:Macros: Difference between revisions
Created page with '__TOC__ A macro is a group of actions, each of which carries out a certain operation such as the opening of a form or the execution of a server command. With macros, you can auto…' |
No edit summary |
||
| (14 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
A macro is a group of actions, each of which carries out a certain operation such as the opening of a form or the execution of a server command. With macros, you can automate tasks that need to be performed frequently. For instance, you can create a macro that executes an import, i.e. deletes data, | A macro is a group of actions, each of which carries out a certain operation such as the opening of a form or the execution of a server command. With macros, you can automate tasks that need to be performed frequently. For instance, you can create a macro that executes an [[Framework:Imports|import]], i.e. deletes data, reimports them and then opens a report if a user calls it up through a menu item. | ||
To give properties to the macro, open the macro by clicking the “Design“ button, or by clicking on the context menu with the right mouse button, or by double-clicking the batch designer. With the “New” menu item, you can also create a new macro here. | To give properties to the macro, open the macro by clicking the “Design“ button, or by clicking on the context menu with the right mouse button, or by double-clicking the batch designer. With the “New” menu item, you can also create a new macro here. | ||
| Line 10: | Line 10: | ||
:*Message | :*Message | ||
The created actions will then be executed in the batch designer one after the other. The order of execution can be changed with the [[image: | The created actions will then be executed in the batch designer one after the other. The order of execution can be changed with the [[image:Am_Icon_Pfeil_Up.jpg]] and [[image:Am_Icon_Pfeil_Down.jpg]] buttons. | ||
[[image:Fw_Batch designer.jpg|thumb|center|Framework, Batch designer]] | [[image:Fw_Batch designer.jpg|thumb|center|Framework, Batch designer]] | ||
| Line 18: | Line 18: | ||
==NavAction== | ==NavAction== | ||
With NavActions, you can open masks, dimensions etc. In addition, NavActions can also execute formulae, imports etc. A description of all NavActions you find [[Framework:Navigation | With NavActions, you can open masks, dimensions etc. In addition, NavActions can also execute [[Framework:Formulae|formulae]], [[Framework:Imports|imports]] etc. A description of all NavActions you find [[Framework:Navigation Actions|here]]. | ||
[[image:Fw_Batch designer_NavAction.jpg|thumb|center|Framework, NavAction]] | [[image:Fw_Batch designer_NavAction.jpg|thumb|center|Framework, NavAction]] | ||
| Line 26: | Line 26: | ||
Various different server commands are available for choice | Various different server commands are available for choice | ||
{| | {| class="wikitable" width={{{breite|80%}}} | ||
|- | |- {{Tabellentitel}} | ||
| | | Command | ||
| | | Description | ||
|- | |- | ||
|DBC Execute Procedure | |DBC Execute Procedure | ||
| Line 38: | Line 38: | ||
|- | |- | ||
|Formula activate | |Formula activate | ||
|This ServerCommand can activate or deactivate formulae. In addition, the formula “Macro active” can be set. | |This ServerCommand can activate or deactivate [[Framework:Formulae|formulae]]. In addition, the formula “Macro active” can be set. | ||
|- | |- | ||
|Activate formulae | |Activate [[Framework:Formulae|formulae]] | ||
|Activates the CoPlanner formulae. | |Activates the CoPlanner [[Framework:Formulae|formulae]]. | ||
|- | |- | ||
|Deactivate formulae | |Deactivate [[Framework:Formulae|formulae]] | ||
|Deactivates the CoPlanner formulae. | |Deactivates the CoPlanner [[Framework:Formulae|formulae]]. | ||
|- | |- | ||
|Reload PlanSecurity | |Reload PlanSecurity | ||
| Line 63: | Line 63: | ||
|All datasets within the selected plan of a table are recalculated. In addition, XML filters for the datasets can be specified here.. | |All datasets within the selected plan of a table are recalculated. In addition, XML filters for the datasets can be specified here.. | ||
|- | |- | ||
|Start import on the Server | |Start [[Framework:Imports|import]] on the Server | ||
|Starts an import object on the Server. As each import object returns a ‘successful’ message, this ‘successful’ message can be suppressed with the “Activate feedback” parameter. | |Starts an import object on the Server. As each [[Framework:Imports|import object]] returns a ‘successful’ message, this ‘successful’ message can be suppressed with the “Activate feedback” parameter. | ||
|- | |- | ||
|Synchronize database | |Synchronize database | ||
|Forces the synchronization of the CoPlanner server and the SQL server before further CoPlanner ServerCommands are executed. | |Forces the synchronization of the CoPlanner server and the SQL server before further CoPlanner ServerCommands are executed. | ||
Complete pending calculations Forces the execution of all pending calculations (formulae). Then a database synchronization is forced before further ServerCommands are executed. | |- | ||
|Synchronize dataobject | |||
|(9.5 HF 1.8)Forces the synchronization of an CoPlanner table or dimension and the SQL server before further CoPlanner ServerCommands are executed. | |||
|- | |||
|Complete pending calculations | |||
|Forces the execution of all pending calculations ([[Framework:Formulae|formulae]]). Then a database synchronization is forced before further ServerCommands are executed. | |||
|- | |- | ||
|Execute formula | |Execute formula | ||
| Line 74: | Line 79: | ||
|- | |- | ||
|Change session parameter | |Change session parameter | ||
|Changes the session properties. Here it can be specified, for instance, that the session context is executed in macro mode so that subsequently further formulae will be executed whose property is set to ‘Execute in macro mode’. For this purpose, please specify the following parameters: | |Changes the session properties. Here it can be specified, for instance, that the session context is executed in macro mode so that subsequently further [[Framework:Formulae|formulae]] will be executed whose property is set to ‘Execute in macro mode’. For this purpose, please specify the following parameters: | ||
To change over to macro mode: MacroMode=1 | To change over to macro mode: MacroMode=1 | ||
To leave the macro mode: MacroMode=0 | To leave the macro mode: MacroMode=0 | ||
|- | |||
|OLAP refresh | |||
|Macro command to update OLAP connections (connections from CoPlanner server to SSAS will be closed and rebuilt if necessary). In addition to updating the dimensions this command is directed to delete any possible ADOMD caches (Security). After restarting the client changed dimension members in CoPlanner should be obvious to the user. | |||
|- | |||
|Set Log Level | |||
|For development purposes, all messages that are generated in the log can be shown in the console/Telnet in the Console. In real operation, it is not recommended because it can cause performance degradations. | |||
Configuration: | |||
[[image:Fw_Makrodesigner_Loglevel_setzen.jpg|thumb|center|Framework, Macro - Loglevel configuration]] | |||
|} | |} | ||
===Example: Delete table datasets=== | |||
The task is to use one macro in order to delete all datasets from a table that belong to the logged in plan. | |||
For this purpose, create a new macro and select “ServerCommand” as the action and perform the settings as shown in the following Figure. | |||
[[image:Fw_Batch designer_Macro Delete table rows.jpg|thumb|center|Framework, Makro – Delete table rows]] | |||
[[image: | Call up the filter editor by clicking the [[image:Icon_Dateiauswahl.jpg]] button. | ||
[[image:Fw_Batch designer_Macro Filter Editor.jpg|thumb|center|Framework, Macro – Filter - Editor]] | |||
From the combination list field, select the entry “BAB_Plan” and “Bike GmbH” in the “Enterprise” filter. By clicking the ‘Add’ button, this setting is applied. By replacing the criterion with the @Session_Enterprise_ID@ session variable, this filter always refers to the logged in enterprise. | |||
If you need this filter several times, you can save it with the “Save filter” command and reinsert it with “Load filter”. | |||
===Example: Delete table datasets depending on an dimension attribute=== | |||
The task is to use one macro in order to delete all datasets from a table that belong to an attribute of a dimension. In this example all records will be deleted in table "Tab1" which contains in the attribute field the value "True" in the dimension. | |||
[[image:Fw_Makrodesigner_Makro Filter Editor01.png|thumb|center|Framework, Macro – Filter - Editor]] | |||
{| class="wikitable" width={{{breite|50%}}} | |||
|- {{Tabellentitel}} | |||
| Column | |||
| Expression | |||
|- | |||
|Feld | |||
|Standard Dimension Column Name | |||
|- | |||
|Comparison type | |||
|Has to match with the data type(me ist =, not_me ist <>, usw.) | |||
|- | |||
|Criterion | |||
|Has to match with the data type | |||
|- | |||
|Type | |||
|BY_ATTRIBVAL_FeldNameInDim (In this example the attribute field is named "AttribFeld") | |||
|} | |||
==Message== | |||
Information about the execution of the macro at the client can be shown to the user with messages. For this purpose, enter the message text, message title and message type. | |||
[[image:Fw_Batch designer_Message.jpg|thumb|center|Framework, Macro - Message]] | |||
===Types of messages=== | |||
{| | |||
{| class="wikitable" width={{{breite|100%}}} | |||
|- | |- | ||
|''' | |'''Error''' | ||
[[image: | [[image:Fw_Fw_Batch designer_Fehler.jpg|thumb|center|Framework, Macro - Message - Error]] | ||
|''' | |'''Exception''' | ||
[[image: | [[image:Fw_Batch designer_Ausnahme.jpg|thumb|center|Framework, Macro - Message - Exception]] | ||
|'''Information''' | |'''Information''' | ||
[[image: | [[image:Fw_Batch designer_Information.jpg|thumb|center|Framework, Macro - Message - Information]] | ||
|''' | |'''Question''' | ||
[[image: | [[image:Fw_Batch designer_Frage.jpg|thumb|center|Framework, Macro - Message - Question]] | ||
|- | |- | ||
|''' | |'''No Symbol''' | ||
[[image: | [[image:Fw_Batch designer_Kein_Symbol.jpg|thumb|center|Framework, Macro - Message - No Symbol]] | ||
|'''Stop''' | |'''Stop''' | ||
[[image: | [[image:Fw_Batch designer_Stop.jpg|thumb|center|Framework, Macro - Message - Stop]] | ||
|''' | |'''Warning''' | ||
[[image: | [[image:Fw_Batch designer_Warnung.jpg|thumb|center|Framework, Macro - Message - Warning]] | ||
|} | |} | ||
== | ==Continuation condition== | ||
The continuation condition is available to influence the continuation of the macro. If it is activated, the condition must be fulfilled to continue with the macro. If the condition is not fulfilled, the macro is stopped at exactly this point. It is possible to display a message to indicate that the macro has been aborted. | |||
[[image:Fw_Batch_Designer_Fortsetzungsbedingung Inaktiv.jpg|thumb|center|Framework, Macro - Continuation condition - Inaktiv]] | |||
[[image: | [[image:Fw_Batch_Designer_Fortsetzungsbedingung Aktiv.jpg|thumb|center|Framework, Macro - Continuation condition - Aktiv]] | ||
For the condition, both expression fields must be filled in. An expression can be a query to the CoPlanner Server through the functions provided by the totality of business economics formulae, an SQL statement to the CoPlanner system database or a constant value. The query to the CoPlanner Server is identified with Transform=, an SQL server query with Sql=. A constant value is entered without special identification. | |||
Examples: | |||
[[image:Fw_Batch_Designer_Fortsetzungsbedingung Sql kombiniert mit CoPlanner Abfrage.jpg|thumb|center|Framework, Macro - Continuation condition – SQL combined with CoPlanner query]] | |||
[[image: | [[image:Fw_Batch_Designer_Fortsetzungsbedingung Sql kombiniert mit konstantem Wert.jpg|thumb|center|Framework, Macro - Continuation condition - SQL combined with constant value]] | ||
In case of constant values, the data type must be observed. If the SQL or CoPlanner query returns a sequence of characters as a result, the value must be surrounded by single quotation marks. If the query returns a numeric value as a result, the quotation marks are omitted. | |||
If an SQL query is defined that does not return a value but a results table, then the value of the left top corner is used for the comparison. | |||
[[image: | [[image:Fw_Batch_Designer_Fortsetzungsbedingung Ergebnis bei Abfrage mit Tabelle als Ergebnis.jpg|center|Framework, Macro - Continuation condition - Result of a query with table as a result]] | ||
Whether the SQL query does not return a single line can be queried with the ‘ZERO’ constant. | |||
[[image: | [[image:Fw_Batch_Designer_Fortsetzungsbedingung Abfrage ob Datensaetze geliefert werden.jpg|thumb|center|Framework, Macro - Continuation condition - Query whether datasets are supplied]] | ||
Expressions can also receive CoPlanner session variables. Before the evaluation of the expression proper, these are replaced with the corresponding value. Session variables can also be used as a constant value. | |||
[[image: | [[image:Fw_Batch_Designer_Fortsetzungsbedingung Abfrage mit Session Variable.jpg|thumb|center|Framework, Macro - Continuation condition - Query with session variable]] | ||
If the option “Report in case of non-fulfillment” is activated, the user is shown the message with the corresponding text if the macro is aborted. If the option is not active, the macro will be aborted without further message. | |||
[[image: | [[image:Fw_Batch_Designer_Fortsetzungsbedingung Meldung bei Nichterfuellung.jpg|thumb|center|Framework, Macro - Continuation condition - Message in case of non-fulfillment]] | ||
__NOEDITSECTION__ | __NOEDITSECTION__ | ||
[[Category:Framework| | [[Category:Framework|Macros]][[Category:Framework Objects|Macros]] | ||
[[de:Framework:Makros]] | |||
Latest revision as of 11:18, 12 September 2017
A macro is a group of actions, each of which carries out a certain operation such as the opening of a form or the execution of a server command. With macros, you can automate tasks that need to be performed frequently. For instance, you can create a macro that executes an import, i.e. deletes data, reimports them and then opens a report if a user calls it up through a menu item.
To give properties to the macro, open the macro by clicking the “Design“ button, or by clicking on the context menu with the right mouse button, or by double-clicking the batch designer. With the “New” menu item, you can also create a new macro here. Several actions can be defined in the batch designer. Additionally, you can assign a comment to these actions.
Available actions:
- NavAction
- ServerCommand
- Message
The created actions will then be executed in the batch designer one after the other. The order of execution can be changed with the
and
buttons.

Depending on the chosen action, the user has different configuration options available.
With NavActions, you can open masks, dimensions etc. In addition, NavActions can also execute formulae, imports etc. A description of all NavActions you find here.

ServerCommand
Various different server commands are available for choice
| Command | Description |
| DBC Execute Procedure | Stored Procedures can be executed. The name of the Stored Procedure must coincide precisely with the name of the Stored Procedure of the SQL Server (for instance sp_calc_table). In addition, parameters of the Stored Procedure can be transferred. The individual parameters are separated with “;”, and they all start with an “@” (for instance: @param1=FirstParameter;@param2=SecondParameter). The Database Connection String looks as follows: Server=ServerName;Initial Catalog=DatabaseName;user id=MyUserId; password=MyPassword |
| Delete plan datasets | The ServerCommand ‘Delete datasets’ deletes all datasets of the selected plan of all plan-dependant tables. If the plan is set to “Current plan”, only datasets of the plan where the user is logged in are deleted. |
| Formula activate | This ServerCommand can activate or deactivate formulae. In addition, the formula “Macro active” can be set. |
| Activate formulae | Activates the CoPlanner formulae. |
| Deactivate formulae | Deactivates the CoPlanner formulae. |
| Reload PlanSecurity | Reloads the security for the current plan. |
| Copy plan | Copies all datasets from one plan to another plan. |
| Copy table datasets | All datasets within the selected plan of a table are copied into another table. In addition, XML filters for the datasets can be specified here. |
| Delete table datasets | All datasets within the selected plan of a table are deleted. In addition, XML filters for the datasets can be specified here.
Apart from the selection of the table, it is also necessary to select a plan for deletion. This can be done by explicitly selecting a certain plan, or with the “Current plan” function, which automatically selects the plan of the login. If the option “independent of plan” is chosen, the data of the selected table are deleted from all plans! See example below. |
| Recalculate table of this plan | All datasets within the selected plan of a table are recalculated. In addition, XML filters for the datasets can be specified here.. |
| Start import on the Server | Starts an import object on the Server. As each import object returns a ‘successful’ message, this ‘successful’ message can be suppressed with the “Activate feedback” parameter. |
| Synchronize database | Forces the synchronization of the CoPlanner server and the SQL server before further CoPlanner ServerCommands are executed. |
| Synchronize dataobject | (9.5 HF 1.8)Forces the synchronization of an CoPlanner table or dimension and the SQL server before further CoPlanner ServerCommands are executed. |
| Complete pending calculations | Forces the execution of all pending calculations (formulae). Then a database synchronization is forced before further ServerCommands are executed. |
| Execute formula | Executes the selected formula. |
| Change session parameter | Changes the session properties. Here it can be specified, for instance, that the session context is executed in macro mode so that subsequently further formulae will be executed whose property is set to ‘Execute in macro mode’. For this purpose, please specify the following parameters:
To change over to macro mode: MacroMode=1 To leave the macro mode: MacroMode=0 |
| OLAP refresh | Macro command to update OLAP connections (connections from CoPlanner server to SSAS will be closed and rebuilt if necessary). In addition to updating the dimensions this command is directed to delete any possible ADOMD caches (Security). After restarting the client changed dimension members in CoPlanner should be obvious to the user. |
| Set Log Level | For development purposes, all messages that are generated in the log can be shown in the console/Telnet in the Console. In real operation, it is not recommended because it can cause performance degradations.
Configuration: |
Example: Delete table datasets
The task is to use one macro in order to delete all datasets from a table that belong to the logged in plan. For this purpose, create a new macro and select “ServerCommand” as the action and perform the settings as shown in the following Figure.

Call up the filter editor by clicking the
button.

From the combination list field, select the entry “BAB_Plan” and “Bike GmbH” in the “Enterprise” filter. By clicking the ‘Add’ button, this setting is applied. By replacing the criterion with the @Session_Enterprise_ID@ session variable, this filter always refers to the logged in enterprise.
If you need this filter several times, you can save it with the “Save filter” command and reinsert it with “Load filter”.
Example: Delete table datasets depending on an dimension attribute
The task is to use one macro in order to delete all datasets from a table that belong to an attribute of a dimension. In this example all records will be deleted in table "Tab1" which contains in the attribute field the value "True" in the dimension.

| Column | Expression |
| Feld | Standard Dimension Column Name |
| Comparison type | Has to match with the data type(me ist =, not_me ist <>, usw.) |
| Criterion | Has to match with the data type |
| Type | BY_ATTRIBVAL_FeldNameInDim (In this example the attribute field is named "AttribFeld") |
Message
Information about the execution of the macro at the client can be shown to the user with messages. For this purpose, enter the message text, message title and message type.

Types of messages
Continuation condition
The continuation condition is available to influence the continuation of the macro. If it is activated, the condition must be fulfilled to continue with the macro. If the condition is not fulfilled, the macro is stopped at exactly this point. It is possible to display a message to indicate that the macro has been aborted.


For the condition, both expression fields must be filled in. An expression can be a query to the CoPlanner Server through the functions provided by the totality of business economics formulae, an SQL statement to the CoPlanner system database or a constant value. The query to the CoPlanner Server is identified with Transform=, an SQL server query with Sql=. A constant value is entered without special identification.
Examples:


In case of constant values, the data type must be observed. If the SQL or CoPlanner query returns a sequence of characters as a result, the value must be surrounded by single quotation marks. If the query returns a numeric value as a result, the quotation marks are omitted.
If an SQL query is defined that does not return a value but a results table, then the value of the left top corner is used for the comparison.

Whether the SQL query does not return a single line can be queried with the ‘ZERO’ constant.

Expressions can also receive CoPlanner session variables. Before the evaluation of the expression proper, these are replaced with the corresponding value. Session variables can also be used as a constant value.

If the option “Report in case of non-fulfillment” is activated, the user is shown the message with the corresponding text if the macro is aborted. If the option is not active, the macro will be aborted without further message.








