xforms:action chains with guranteed order?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

xforms:action chains with guranteed order?

Marcus-2
Hi,

after some time I'm back in the world of OF and have to make some
changes to my last application.
We consider some problems, that for example, when i delete a singel file
within the database, at least all files of the collection are deleted. I
had no chance to build a reproducable error, but i think the reason
might be, that some of my actions are not proceeded in the right order!?

Is there any chance, that i might add a kind of priority or order to
actions, that must be proceeded in the right order? The only way i see
at the moment is to go through submissions and build a king of workflow
there, but that seems to be a bit of a overkill, to send a submission
for every action and check for "xforms-submission-done" or something
like that. :-(
Any other suggestions how one can solve that problem?

Is it possible to add an xxforms:if to a submission? So it will not be
proceeded, when the if-clause is "false"?

And how about the possibility to call submissions through a xpl? But how
can i replace a normal submission call through an xpl, so that only the
xform:actions are done there and the result can still be used, just like
the result of a submission call?

So, an example case may be a file delete. Before i can call the delete
submission i have to check, if there is set a file id, so that wihtout
the submission won't be called an i can be aware of deleting the whole
collection.
Another example might be the "xforms-ready" event. I have to do a lot of
actions there, but have to make sure, that the very last one is the one,
that sets my "dirty"-trigger to "false". At the moment every i tried
failed and everytime i load some data to my forms it always says, that i
have already made changes to the data, even i have done nothing! And the
"last" xforms:action" under "xforms-ready-event" is <xforms:setvalue
ref="xxforms:instance('control-instance')/data-status" /> so that this
flag should be empty, but it isn't at all.

Any ideas are appreciated. Thanks a lot!
Regards, Marcus


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
OW2 mailing lists service home page: http://www.ow2.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: xforms:action chains with guranteed order?

Alessandro Vernet
Administrator
Marcus,

On Tue, Jul 15, 2008 at 8:25 AM, Marcus <[hidden email]> wrote:
> Is there any chance, that i might add a kind of priority or order to
> actions, that must be proceeded in the right order? The only way i see at
> the moment is to go through submissions and build a king of workflow there,
> but that seems to be a bit of a overkill, to send a submission for every
> action and check for "xforms-submission-done" or something like that. :-(
> Any other suggestions how one can solve that problem?

Actions are executed in the order you write them. Do you have a case
where you execute a number of submissions in sequence? If those are
submission replace="instance", you can just run them in sequence with
<xforms:send>. Maybe I don't fully understand the issue you are
describing.

> Is it possible to add an xxforms:if to a submission? So it will not be
> proceeded, when the if-clause is "false"?

No, you can only have an "if" on actions.

> And how about the possibility to call submissions through a xpl? But how can
> i replace a normal submission call through an xpl, so that only the
> xform:actions are done there and the result can still be used, just like the
> result of a submission call?

You can use the oxf:xforms-submission processor to run an XForms
submission from XPL. You can call an XPL in XForms with
xxforms:call-xpl().

> So, an example case may be a file delete. Before i can call the delete
> submission i have to check, if there is set a file id, so that wihtout the
> submission won't be called an i can be aware of deleting the whole
> collection.

I think something like <xforms:send if="file id set"
submission="delete-file"/> should do the trick. I hope this helps,

Alex
--
Orbeon Forms - Web 2.0 Forms, open-source, for the Enterprise
Orbeon's Blog: http://www.orbeon.com/blog/
Personal Blog: http://avernet.blogspot.com/
Twitter - http://twitter.com/avernet


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
OW2 mailing lists service home page: http://www.ow2.org/wws