how to trigger a procedure from dataview cell based on another datablock
Hello,
I know from the Board manual https://www.boardmanual.com/board14/capsules/screens/objects/data-view/using-a-dataview.htm#data-view-drill-anywhere that i can trigger a procedure from a dataview single cell.
Drill-Procedure
If a Drill-Procedure has been configured on the Data View, select a cell and click the Drill down icon () , double-click on a row header (Entity member), or double-click a cell to follow the drill path configured by a Developer from the Data View to another Procedure of the current Capsule. To facilitate a different Drill-to-Procedure, if the configuration allows it, select a cell and click on the Drill anywhere icon to open a window where you can choose from a list of available Procedures to deploy as a drill.
Depending on the Drill-Procedure configuration, the Procedure will run with:
-A selection based on the Entity member selected or double clicked in the Data View
-A selection based on the row and column item corresponding to the cell selected or double clicked in the Data View
-No inherited selection
I have implemented it in a dataview with this setting:
you see the block c is a text algorithm if(j=1,"","⍇")
one procedure is set in the "edit drill" section.
Status quo: clicking in a single cell for this block triggers the procedure defined in the drill, regardless of the displayed text of the cell (result of text algorithm)
my wish: clicking in a cell for this block triggers the procedure defined in the drill only if a condition is true, in my case: result of text algorithm = ⍇
instead of no text ""
here a picture of my wish:
Does anyone know how to reach this in Board?
—
Board version 14.1.0.0.138638
Accepted Answer
-
Thanks @Tommaso Riva for your comment. You are describing a workaround, aren't you?
This would mean that displaying the trigger white hand and triggering a procedure from dataview cell conditionnaly (based on another datablock) is not possible in Board now.
So I must implement the workaround you and Mrs Zerara described: implement a switch point in the procedure (e.g. if then else action) to let the "real" (having business content) procedure run or not depending on the approval status of each single dataview row.
1
Answers
-
Hi @Arnaud Villemain ,
Thank you for this question !
If I'm getting it well, you're trying to trigger a procedure on the cell level respecting a certain condition.
One way to do that is to consider the algorithm directly on the procedure level.
Did you consider this way of doing ?
Best,
0 -
Hello @Fethi ZERARA
One way to do that is to consider the algorithm directly on the procedure level. Did you consider this way of doing ?
No, i didn't.
The users of my application need to approve some figures.
Each row shown in the dataview needs to be approved individually (thanks to the procedure set in the drill-to-procedure feature).
When already approved in the past, the row doesn't need approval anymore and in this case i want the "approve" cell to show nothing and to trigger nothing.
It is misleading for the user to still see the white-hand symbol there, although there is nothing more to trigger
0 -
to achieve what you want, you need to enable a lock cube in the procedure.
This allows you to manage the activation of the procedure and to warn the user if it has already approved.
The algorithm only works to display/not display the icon, but it does not prevent the procedure from starting.
0