Application Studio Can't find correct Action similar to Set Field

Learning application studio and events is going to be quite the curve.

I cannot find the action similar to “Set Field”, in application studio. Any ideas? Thanks!

image

Im stuck here lol:

Row-Update is the closest you will find, but comparing a BPM/Function widget to Application Studio is a bit apples and oranges.

5 Likes

We all feel your pain.

3 Likes

Are there any advanced documentation on these different actions. like how to even configure them. The EpiWeb courses dont cover everything.

So how would someone translate this:

To this:

Why would you?

If you were doing in a BPM before, why would it make sense to move it to the UI?

3 Likes

Isn’t this the future of Epicor/Kinetic?

The UI portion, yes.

Keep what you can in the backend.

If it’s business logic, it really needs to be in the backend unless their is no
better option.

4 Likes

So the business logic like Method Directives and Data Directives will still work regardless of UI used?

1 Like

Business logic should always be in the back end… therefore it should be either in a BPM or a FUNCTION.
Example:
We have seen many people put business logic into the UI for Sales Order Entry. One example was where someone put the “Calculate Commissions” special logic directly into the UI. It worked great until they also incorporated using ECC to for incoming orders… none of those got correct commissions becuase they were never processed through the UI.
Then they added QUOTES, and started converting quotes to orders. That never triggered the commission logic they had in order entry.
Then they added EDI… same story.
Having logic in the UI will only work if you are running the UI… but if you have a BPM that is triggered by either a method call, or by a data change, or if you have a FUNCTION that you can call from multiple places so that the results are always the same, then you save yourself lots of hastle.

5 Likes

For the most part yes. It all follows the same pattern.

I have seen some differences, where they have refactored some procedures from
classic to work better in the Kinetic UI, by adding directives or changing how the directives are
called, but that has been rare.

Some tracing in the classic client and the web client sorted that out relatively quickly.

3 Likes

@timshuwy @klincecum

Thanks for clarifying.

Fancier version:
image

I’m an enabler. Information is power! :rofl:

3 Likes

I don’t judge. I’ve never been known to give anyone information they shouldn’t use.

Sebastian Stan Chaos GIF by HULU

new Date('{Constant.Today}').toLocaleDateString().substring(0,10)

toLocaleDateString uses your local date format.

1 Like

Okay so i ran into something where a BPM did not work in Kinetic UI.

The BPM validates an entered part number to make sure its real and active. See how is works in Classic.

BPMPartVal1

and see how it works in KUI

BPMPARTVAL2

@hmwillett @timshuwy @klincecum

The BPM:

Very weird, maybe double check your field mapping?

On another note. Don’t do this (see below). Unless Epicor has fixed/changed this finally this will basically cause ALL part records to be returned then compared and filtered with the temp table in DS.

Alternatively grab the part number from your temp dataset and store it to a variable and use that in your query.


Typically for these i’ll just use a custom code condition with something like this in it. “.Any()” returns a bool for basically if record exists. Performance wise much faster than query condition.

2 Likes

I dont think my environments allows custom code like you show.