Job Entry - Landing Page Open Jobs

Hi All,

Does anyone know a way of making the Job Entry landing page only show Open Jobs on first load? I know how to do it for myself as a personalisation but need this to be as standard for all users. Is this possible?

Thanks

I would do this by adding a new “View” for the landing page grid. You can make that “view” the default, but users can easily change that to something else if they want.

image

Basically you just need to reverse engineer the existing stock Views that are already available, and then add a new one.

Looking at the stock views, they include parameters… and those parameters are actually defined in TransView columns… so we need to find when and where those are set.

They’re defined via a row-update to TransView columns in the BeforeInitialize Event:

So, I would start by making a new event that runs after BeforeInitialize:

We’ll use a Row Update to set up a new “Open” TransView column. That way you’re not working against base functionality, you’re just building a new option.

RowUpdate Binding: TransView.LandingPageWhereClauseOpen
RowUpdate Value (JSON):
"Plant = '{Constant.CurrentPlant}' and JobType != 'MNT' and JobClosed = false BY CreateDate desc, JobNum desc"

JobClosed = false is what we need to only return Open jobs in this view.

If the event works and you preview now… you’ll see our new TransView column ready to be used in the debugger:

Now… you need to edit the Landing Page…

Open the View Options on the landing page grid Properties > Advanced > View Options. The first one is “All”… take note of all those settings… also copy the Rest Params from the “All” view (JSON) and paste them into Notepad or whatever you prefer, we’ll need those in a second and you don’t want to have to retype them all.

Create a NEW view and use all the same settings as the original “All” view… except set the description to “Open”. Paste a copy of all the Rest Parameters into the new “Open” view. You only need to change the top parameter from the original:

"whereClauseJobHead": "?{TransView.LandingPageWhereClauseAll}"

To your new TransView column you made earlier:

"whereClauseJobHead": "?{TransView.LandingPageWhereClauseOpen}"

Preview:
You should see your new Open View as an option:
image

If it worked, you should get results in your landing page grid and to test… Add a filter on the “Closed” column… set it to IS TRUE.

Since your view should only include Open jobs, but you just asked for only CLOSED jobs… you should get “No records available.” This tells you your View parameters worked:

Back in App Studio, check the “Is Default” option on the new Open View for your Landing Page Grid.

Preview again. If it doesn’t load the page with your new “Open” view as default. Look at all the other available Views and make sure they’re not ALSO checked with the default setting. Setting one doesn’t appear to clear the others.

6 Likes

Wow. Thank you for this very indepth response. Really appreciate it.

I have followed along as best as I can (I’m not very technical and still learning kinetic)
I now have the view ‘Open’ and when launching Job Entry it opens as ‘Open’ but there are closed jobs still in the view.

The only thing I can see that I didn differently is I omitted the JobType - any ideas??

Can you paste in what your parameter is then for that row-update… just want to see if that is why it’s not filtering correctly.

1 Like

The parameter I put is:

{

“whereClause”: “Plant = ‘{Constant.CurrentPlant}’ and JobClosed = false BY JobNum desc”

}

I also tried “Plant = ‘{Constant.CurrentPlant}’ and JobClosed = false BY JobNum desc”

Hmm… just tested that and it worked okay for me. (You shouldn’t need the curly brackets).

Can you double check/verify that top line in your View parameters is correct on your end?

Sorry not sure how to do that bit?

So, edit your landing page… when that opens, click on your grid and click on Properties. Scroll down to Advanced and click on View Options.

Select your “Open” view and then click on the pencil and show me what’s in the JSON window that pops up:

1 Like

Really appreciate your patience here

As you can see, it shows closed orders and the jobnum is not desc

No worries.

So, I think you still need all the other parameters (there are a bunch!).

So, open the “All” view and copy all of them! Then go to your “Open” view and paste them all in!

Then, just change the top one to your Open transview clause. See if that works better.

So now its displaying the jobs in the order I want as in newest at the top but its still including closed orders

No… it should look like this:

See how many parameters there are?

Are those NOT in your “All” view?

No all I have is that 1 line in my All view

1 Like

The reason you need them ALL is because you’re populating this landing page view via a rest-call:

image

The GetRows service is expecting ALL OF THESE INPUTS:

It will then want to send back a response based on those inputs.

We only CARE about the JobHead, so we give that a parameter that means something… and everything else gets a parameter of “1=0”…which is a false statement… so it won’t return anything for those, but we still have to include them or the call itself will fail.

If you evaluate this in the Debugger… (I set mine up the way you had yours)…

The Payload is what you’re sending… and we’re only sending 1 out of many parameters:

In that case, the Response is a failure:

If you include all the parameters… it’ll look like this:

Payload (includes everything):

So Response will be all records that meet those parameters.

Check your other views… Firm / Unfirm. Do THEY have more parameters?

You’re in an older version… perhaps Epicor changed what service they’re using here.

Are these the same services your stock views are using (All, Firm, Unfirm)?

image

So my Firm and Unfirm are similar to the ALL

What are the stock views?

All, Firm, Unfirm… not a technical term… just saying “Stock” is what comes with Epicor out-of-the-box.

I’m guessing that means it can’t be done in this version then?

Copy the below and paste them into your “Open” view… let’s see what happens…

{

"whereClauseJobHead": "?{TransView.LandingPageWhereClauseOpen}",

"whereClauseJobHeadAttch": "1=0",

"whereClauseJobAsmbl": "1=0",

"whereClauseJobAsmblAttch": "1=0",

"whereClauseJobAsmblInsp": "1=0",

"whereClauseJobMtl": "1=0",

"whereClauseJobMtlAttch": "1=0",

"whereClauseJobMtlInsp": "1=0",

"whereClauseJobMtlRefDes": "1=0",

"whereClauseJobMtlRestriction": "1=0",

"whereClauseJobMtlRestrictSubst": "1=0",

"whereClauseJobOper": "1=0",

"whereClauseJobOperAttch": "1=0",

"whereClauseJobOperAction": "1=0",

"whereClauseJobOperActionParam": "1=0",

"whereClauseJobOperInsp": "1=0",

"whereClauseJobOperMachParam": "1=0",

"whereClauseJobOpDtl": "1=0",

"whereClauseJobResources": "1=0",

"whereClauseJobOperRestriction": "1=0",

"whereClauseJobOperRestrictSubst": "1=0",

"whereClauseJobAsmblRestriction": "1=0",

"whereClauseJobAsmblRestrictSubst": "1=0",

"whereClauseJobAsmRefDes": "1=0",

"whereClauseJobAudit": "1=0",

"whereClauseJobPart": "1=0",

"whereClauseJobProd": "1=0",

"whereClauseJobStage": "1=0"

}

someone quest GIF

1 Like