I am using icCube 5.0 Reporting
I want to assign the value of an Event to that returned by the icCube MDX function UserName()--sort of like #{eventname} = UserName().
Eventually, #{eventname:reportParm} will be sent to a launched report for use in a filter.
Does anyone have any hints for me?
There is no clean way (already in todo list)
For the time being there is no clean way. You've to create a Constant - not an event - in Configuration/Constants that you call for example
ic3c-userName
Assign a javascript expression
:ic3reporting.context_.userInfo().name()
So you've now an event with the name of the user as value you can use.
From version 5.0.3 you can use the new syntax.
For user name:
:ic3reporting.userName()
also you can access the report's name by
:ic3reporting.reportName()
Related
I just can't find any info on this!!!
Please see the image. I want to capture the "number" from the user response as a variable (property) but can't see how to. Any ideas?!
I want to be able to do this within the composer, not with code. Surely #prebuilt number is storing the recognized entity - how do I set a variable (property) to the value of the entity? Thanks.
Here's the image of my issue
LOL - solved! The answer is to use coalesce. Keeping it here for reference for others.
Solution
I am writing a Post PLugin changing the owner. When the owner has a substitution manager, the owner is changed to the substitution manager. I tried a service.Update and an AssignRequest, but these throw an exception.
When I post the request my entity cannot update (and then throws "The request channel time out while waiting for reply after 10:00:00"). But like I see there is no recursion, because when I logged it I have only one repetition of log and it has stopped before or on line with update.
var assignedIncident = new AssignRequest
{
Assignee = substManagerRef, //get it throw another method, alreay checked in test it`s correct
Target = new EntityReference ("incident", incedentId)
};
service.Execute(assignedIncident);
I tried to write target in another way
Target = postEntityImage.ToEntityReference()
I tried to write simple update but the problem is the same.
Entity incident = new Entity("incident" , incidentId);
incident["ownerid"] = substManagerRef:
service.Update(incident);
Can somebody help me with that? Or maybe show the way to solve it)
The plugin is triggering itself and gets in a loop. The system only allows a maximum of 8 calls deep within plugins and that is the reason it throws an error and rolls back the transaction.
To solve this issue redesign your plugin in the following way:
Register your plugin on the Update message of your entity in the PreValidation stage.
In the plugin pick up the Target property from the InputParameters collection.
This is an Entity type. Modify or set the ownerid attribute on this Entity object.
That is all. You do not need to do an update, your modification is now passed into the plugin pipeline.
Note: for EntityReference attributes this technique only works when your plugin is registered in the PreValidation stage. For other regular attributes it also works in the PreOperation stage.
An example:
I am using autoinc feature in teamcity so whenever I change the version of my build I would like to change it only in one place.
%buildversion% is 5.0
so I would like to do the following:
%autoinc.buildname_%buildversion%%
to get %autoinc.buildname_5.0%.
Basically every time I change the version autoinc counter will be reseted.
Create the Paraemters
Create a Combined Paramter
We have two forms so far, and need to switch from window1 in from1 (which is login screen) to windowX in formX using button (trigger code below):
begin
show_window('windowX');
go_block('some_block_in_formX');
end;
This gives error FRM-41052: Cannot find Window: invalid ID
So question is, should I add formX into show_window parameter in certain way or is there another approach? Thank you.
Please note, that forms are in different files.
that forms are in different files.
If the forms are different files, you need to call the other form using open form/call form/newform - whatever suits your needs.
show_window/go_block sequence can be used only when you're moving to different windows/blocks of the same form - and the error message
error FRM-41052: Cannot find Window: invalid ID
is complaining that it can't go to that Window because it's in a different form.
Each form effectively has a private namespace for all its windows, blocks, items, etc - and your code always runs within the context of a single form.
To solve this, you'll need a form parameter, plus some code in the other form, e.g.:
in formX, add a parameter ACTION
in form1, pass the value 'XYZ' to ACTION
in formX, in the WHEN-NEW-FORM-INSTANCE trigger, check if :PARAMETER.ACTION = 'XYZ', and if so, do your show_window and go_block. Copy the same code to your WHEN-WINDOW-ACTIVATED trigger.
Of course, you'll need to think about the name of the parameter (e.g. ACTION) and value ('XYZ') that will make sense to people maintaining your forms in the future.
In PowerDesigner v12, how would one, through use of VBScript, assign a TriggerTemplate to triggers that are missing the definition?
We have a script now that can loop through the triggers and display the triggertemplate (if it has one), but all attempts to assign a template to these triggers have failed.
Any insight would be greatly appreciated!
Can someone with power edit this and add 'powerdesigner' as a tag? I can't do it.
Thanks,
Calvin
I may have found an answer, but I want to get other input on it.
While I cannot get a reference to the TriggerTemplates that are part of the DBMS, the model itself can have its own TriggerTemplates. These model based templates can be referenced and assigned to the triggers as needed.
My thoughts were to actually create copies of the DBMS templates inside the model, and use those instead.
Thoughts?