Schedule BPM Help - Reference Post Inside

Reading this post, it looks like you can schedule a BPM to run.

I’m stuck. I have a SysAgentSched.Update / In-Transaction BPM built as shown in their post.
The post above stops at “Executing Custom Code”. So I either need help writing custom code to uncheck a UD field in the VendPart table or add something else so my other BPM it will fire.

Ideally, UD Field box gets checked when new record is created in Supplier Part List when Effective Date is not todays date. (Done with another BPM already)
Scheduled BPM checks all Supplier Part Records where Effective Date = Today and the checkbox is true.

Then it can simply uncheck the box and an existing working BPM will fire.

DMT on a schedule is my next move to fire by other BPM if I cannot solve it in the system.

You can schedule a function to run a BPM.

I just did this for a customer on Wednesday and it works slick (easier than trying to attach to the system agent/monitor).

I was working on a 10.2.700 - so not sure if this is avail in 10.2.600. Search menu for schedule function. If you have it - you can figure it out in about an hour.

DaveO

1 Like

@kylepbsps - I’m glad my previous post could help. @DaveOlender is right - the newer versions that allow you schedule a function provide an alternate route - although I’d argue that using the schedule to trigger something is the same no matter how you do it :slight_smile:

As for you’re issue - I’d write the BPM so it work’s directly when you interact with the record - in order to test the code without having to trigger something that runs in the background that you cannot see. Get the code working in the UI as a BPM, and then move that code to the scheduled BPM or Function.

I guess the issue i’m having is that someone will enter the new record but the values shouldn’t take effect until a later date. I don’t want my BPM to run until the day its effective. By storing a checkbox value, I can hopefully clear that value when the date arrives, and by clearing the value will trigger the 2nd BPM.

Checking once a day was the best I could come up with for scheduling. I’ll check out 10.2.7 and see if that “schedule function” exists in my license.

yes, writing code that the end-users will inevitably hose up is the most annoying aspect of all of this.

I meant clearing the value automatically if the date matches todays date, therefore triggering another bpm. Can’t rely on the users haha. That was my purpose for the box and its not shown on the form.

Alright! New toys! It does exist in 10.2.600.10 also

image

You have to start by allowing yourself permissions: Bring over the 3 Function Security Groups (Ok I brought over all 3 - you will want to research the abilities and limitations of each group and select just the appropriate security group - of coarse :slight_smile:

image

1 Like

I can get this to launch on a schedule from the first post I referenced. I still cannot figure out how to update a UD field in the VendPart_UD.xxx only in the temptable which isnt useful.

I’m trying to clear a UD boolean field that meets certain criteria and run it daily.

I can get the test email sent at the bottom just fine.

Any Ideas?




I’m thinking Supplier Price List which access’s VendPart table rely’s on information from Part first. I’ll try to query part, then VendPart, or store my custom field in the Part Table, so I can retrieve it easier.

Simply would be
Query VendPart table where MyCustomUDField = True AND EffectiveDate = Today
Change field to False
Done

Trying to do this on a schedule to fire another BPM

I recently scheduled a BPM using a Updateable BAQ and “exporting” it. I found this solution on another thread from people much smarter than I. The reason I gravitated towards this solution was to avoid a BPM being fired unnecessarily every time a task is run.

  1. Create BAQ
  2. Add tables and configure the results to show the records you want modified.
  3. Click Updatable Checkbox on General tab.
    image
  4. Go to Update > Update Processing. Check the Advanced BPM Update only and click the BPM Directives Configuration Button
  5. Click the GetList Method, then create your BPM. This will get fired when you schedule your BAQ to be exported
    image
  6. Test your BAQ with hitting the GetList button inside of the BAQ screen
    image
    7.Your BAQ/BPM is working as expected, lets schedule it. Go to System Setup > System Maintenance > System Agent. New > New Schedule.
    image
  7. Once you have defined how often you would like this to run, lets queue it up. System Management > Business Activity Queries > BAQ Export Process
    image
  8. Enter in your BAQID. Select Output Format CSV. Change the schedule dropdown to the one you create. CHECK RECURRING so it fires more than once on this schedule/frequency
  9. Check your AppServer for the file export to verify the records that were affected.
2 Likes

I got it all done. Thanks everyone.

After I document my side I might do a writeup since I had such a hard time figuring it out.

Schedule UBAQ with BPM inside was the solution.

1 Like

Please do, the community here will surely appreciate it!!

Working on it now =)

1 Like

For others, I did it with UserCodeType instead of a UBAQ: