Launch Form (LFO) from a BPM

Hello, I’ve hunted this forum over… but is there any way to do Launch Form from a BPM

What I’m trying to achieve is, when our sales team convert a Quote to a Sales Order from Quote Entry, I would like it to launch the Order Entry form after the quote is converted,

At the moment we have a Post Method that copies other data across, so I imagine I would put it on that… but I’m not sure of the LFO code for a BPM

You could check the following:

Also, it may not be cool to link outside, but check this guy out:

Thanks Andrew, they are both seem to be for coding in a UI customization… not a BPM

On second thoughts, that probably won’t work for a BPM. Not sure that it would even be possible without overriding the call to convert to sales order.

I was thinking to fire it off a post directive, after the Sales Order is created

Right. But isn’t the BPM server side? How does it know where to launch the form? The same issue as why you can’t just do a MessageBox.Show(“”) as the BPM has to communicate back to the client to launch the form.

The following may help:

It seems that a customized BPM form that then does the client side bit could work.

2 Likes

You can’t do it from a BPM its all server-side. A few options you can try:

  1. Throw a BPM Form that is merely some friendly message box look-alike “You Did! You Converted, we Won!” and then Customize that BPM Form to LaunchForm. (Probably on BPMForm Closing Event)
  2. You should be able to find an UI Event or AfterAdapterCall when that value is changed to WON and monitor on UI side and LaunchForm.
1 Like

What’s the difference between a BPM form and a UI form. Isn’t the BPM form triggered server side to load on the client?

Yes it is technically still a UI Form… I guess I mean to say BPM Form or Quote Entry Form. BPM Form you can customize as well.

I’m just wondering if there isn’t a way to fire off a UI form. Especially if it’s just to run asynchronously. I like your idea of customizing the BPM form to fire off the LaunchForm.

It’s just not possible to launch a client form directly from a BPM.

Also BPM forms are an abomination no one should choose to use. :slight_smile:

As noted by hasokeric up above, what you need to do is launch it client side, and it’s fairly simple to do with a customization on the Quote Entry form. Add a handler for the AfterAdapterMethod event, for the CreateOrder method. You can figure out the order number by searching the OrderDtl table for QuoteNum == your original quote number.

True, I agree that using the AfterAdapterMethod would be best.

Agree they are messy – one thing that comes to mind as a hack… what if you used a BPM Form to hide itself on load, perform X action and then close itself – kind of hijack it to Launch your own UD Form :smiley: one could say then that BPMs allow you to launch your own Form’s … pass in the FormID through BPMData and viola! :slight_smile:

I would still use UI – just find an event sometimes the AfterAdapter is not enough its merely an “Update” so you have to resort to checking a value of a field in there etc…

Would need to try it, but I have a sneaking suspicion doing this would cause all kinds of fun issues related to the context and session… I’m not convinced the full context is properly passed from the BPM to the BPM form…

1 Like