Using 2 Approvals in K2 - k2

Quite a novice to using two Forms in K2 for Approval,Like an Originator and an approver, one sends the request, and the other Approves the request and sends to the second party who in turn verifies the information and upon update sends a notification to the Originator. I wanted to know how i can go about something like this Like where do i start? So far I have been able to have it linked to one of the Approvers , but in this case there are 2 of them like this chain
Originator -> First Reviewer (Approver) - > Second approver.
How do i go about something like this?

there are different ways to accomplish this:
You might do it by adding 2 user tasks one after another - so that 2nd task is opened after 1st one is approved.
You might use single task with multiple recipient groups, configure task to require 2 responses, and then configure custom voting rule to achieve desired result.
Approach 1 would be easier to implement.

You have to create two tasks one after another, the control goes to second task if the first one is approved. After the approval of second task you can add a email notification.

Related

AEM 6.5 Parallel Multiple approvals workflow

I have a requirement where i need to get approvals from multiple users and workflow can be proceeded to the next step when all the users have approved. I wanted to know how we can achieve or design a single workflow model to achieve the requirement
You can add a separate participant step for each approver/approverGroup. Afte r approval from one approver/approverGroup, next step would send approval request to next one.
Once all are done, you can proceed further.
OR
Complex one [Not recommended]
You can create your custom process step to send notifcation to all approvers and in the next operation, proceed only when each one of them has approved[keep that record on seprate node of each workflow instance ]

Create Purchase Order Workflow Ignoring Items with Certain Item->Locations

When creating a Purchase Order (PO) from a Sales Order (SO) in NetSuite, desire to only populate the PO->ItemList with Items from SO which are set to a specific Item->Location even when they share Preferred Vendor.
How can we achieve this? Thinking perhaps a Workflow can check the ItemList when the Create PO link is clicked on an Item.
Our solution ended up being to identify the items which were not to be added to the PO. Then we set the quantity to 0 and added a User Error message upon saving if they were still on the PO. This could be achieved via some scripting, though this was sufficient for our needs with this workflow process.

Independent ordered queues for job that is process exactly same way

I am looking for a queuing tool to help me process jobs in order. I will use an example of user joining a website to help convey the problem, in real life they are more dull jobs which can each take up to 1 minute, there are several thousand users.
user1 - Registration -> Process Payment -> Upload photos -> Resize photos
user2 - Reset password -> Log in -> Upload photos -> Resize photos
The above jobs all need to be processed in order for that user. i.e. you can not process payment before the registration has finished. Each of these jobs is processed in the same way (fire of a http request to an external service).
If user 1 registration takes a long time their is no reason for user 2 to wait for his password reset. If I had multiple workers on a single queue the next job to be popped off could be anything so a users tasks may be processed in the wrong order.
At the moment I have a hacked together system which does this using a redis list but its not ideal and needs improvement. If there is an off the shelf tool or pattern which does this it would be great. I thought I could potentially programataclly create a new queue on rabbitmq for each user but felt it wasn't designed for that so much.
The answer is to use amqp message groups which are supported by some clients, I ended on using fairy as I am using nodejs already.

Best way to notify users of an account that needs to be updated?

I am using Microsoft CRM 4.0. I currently have many accounts that need to be updated by the sales person assigned to the account. What would be the best way to notify the user of the update? Also, It would be nice if there was also a way to notify me back that the task had been completed. I was thinking the best way would be through a workflow but It does not allow me to select multiple accounts at once to notify the user, of which ones need the update. I also have mobile access with CRM.
You're on the right track. You could use a combination of workflows to accomplish this. I don't know what exactly it is they need to update but you could create a bit flag called new_isrecordupdated and then create workflows that wait until the fields needing to be updated are changed. When they are you can set that flag to true. Then have another workflow sleep for X days and verify that the field is false, if so send out an email to the user.
If you need them to complete tasks, then the workflow will need to sit on the tasks if they're regarding an account. On a status change of completed, update the flag to false.
Again, I'm not sure what you're looking for them to update so I can't say with 100% certainty that this is what you need.
Depending on how many accounts you are talking about, you may want a scheduled console application to find all of the outstanding accounts that still require attention. It could then create a single email for each sales person each day with links to each of the accounts that still required attention.
You could also have a single daily report letting you know which accounts had been updated and which were still needed updating.
These could be done with a scheduled application or an SSRS Report.
In addition it would be helpful to add a view for your sales reps that showed them the complete list of accounts that they needed to update. You would also want a similar view sorted by the assigned owner.
This way you have notification, but not abusive notification if a lot of these are happening and you have a way for both you and your salesmen see anything outstanding with a simple glance at a view.
You would probably need to have a boolean to set an account as needing an update, and then you could use a plug-in to reset that flag whenever the owner updated it along with setting a last updated date. This would give you the fields to flag an account as needing to be updated and the date would allow you to see which accounts had been updated by their owners.

Multilevel Approval Workflow Using Sharepoint Designer

I need to create a multilevel Approval Workflow for following scenario:
Workflow starts once item is created employee (Say in a ProductList) for certain Amount.
Manager Approves the workflow.
If Amount is < $5000, email goes to Employee as approved.
If Amount is > $5000, further approval is required. Item goes for further approval to VP and then CEO.
I am getting many examples on workflow, most of the examples are sending just an email based on condition. I need sending for further approval based on condition.
Create a list with the following columns
a. Product Name (Text box)
b. Price(Text box)
c. Mgr approval (choice)
d. Final approval(Choice)
Hide column c & d using JavaScript when user enter the value
a Create a workflow in item created for sending mail to manager
Show the column c using JavaScript or the manager
Create another workflow for send mail to final approval on item edited event after checking following conditions
a. Amount >5000
b. Mgrapproval (c) status is approved
Show the column d using JavaScript for the final approval
You can use simple JavaScript if the mgrapprover and final approver does not change. If these values are dynamic it is better to create a webpart for generating JavaScript by checking the login user group.
I would do the following:
Create a list with your approval items in it
Create an approval request as you have done
Check whether the amount >= 5000
If it is ask for approval from the VP and CEO (follow the same steps as you do for step 1 but this time using VP and CEO prefixes for your variables and collection tasks).
If possible, I'd also reference external lists for the amount to check at, and for the VP and CEO names - so that you dont have to redeploy the workflows when the amount changes or the VP/CEO change.
Theres a good write up of a similar multiple approval SP workflow scenario here
As an Aside, you might not want to send the emails with the task url, I'd suggest coding the actual edit page urls into the email so that users (i.e. Managers, VP and CEO) dont have to view the task, then click edit item, then approve, by viewing the Edit screen you can get the url and input your Workflow TaskItemID into the url directly which will give the end user a better overall experience. Only one button click to approve/reject instead of multiple clicks to just get to the screen.
I did this kind of thing by having a workflow like yours on the first list and when a certain condition is fullfilled(like >5000$), I move the item in another list where another workflow process it for approval like you need to. It may seem like your multiplicating workflow, but I usually prefer to have more pretty simple workflow than one workflow that does a lot of things.