Custom Table Query on every Catalog Item

Dazler
Mega Sage

Hi,

As we are building our new Servicenow Platform at my company, I am task with developing/designing all of our Catalog Items.  The way that their processes are for each of those catalog items are unique.  I created a custom table that will help drive the Workflow.  Doing it like this means I would query that table on every request, I wanted the advice of the community to make sure that falls within best practice.

The reason I used the custom table is because they have nearly 200 catalog items (it was more than that, but I was able to combine many of them), I created 1 standardized workflow that many of the same catalog items could use.  

Having this set like this where every time a user submits a request it queries this custom table to retrieve the information to process, what I am asking is could way cause any issues?  Or am I on the right track with this idea?

I want to make sure that our Implementation is successful.

1 ACCEPTED SOLUTION

Michael Jones -
Giga Sage

If I understand correctly, you are using a table to essentially define the tasks that will be created when an item is submitted. That being the case, the approach you are taking is one that I have seen utilized many times in similar situations where you might have 100 items with different task requirements, rather than having to build countless workflows. 

The only impact that I have ever seen from this approach is that it can become difficult to display variables on tasks when you are creating the tasks dynamically, rather than via the Catalog Task activity - but that can be accomplished via scripting as well! 

Outside of that, the performance impact of the additional query at the start of a workflow would be negligible and essentially unnoticeable unless you are processing thousands of requests simultaneously - which in all honestly would likely have its own complications at volume. 

I think you're on the right track!

I hope this helps!

If this was helpful, or correct, please be kind and mark the answer appropriately.

Michael Jones - Proud member of the GlideFast Consulting Team!

 

I hope this helps!
Michael D. Jones
Proud member of the GlideFast Consulting Team!

View solution in original post

2 REPLIES 2

Michael Jones -
Giga Sage

If I understand correctly, you are using a table to essentially define the tasks that will be created when an item is submitted. That being the case, the approach you are taking is one that I have seen utilized many times in similar situations where you might have 100 items with different task requirements, rather than having to build countless workflows. 

The only impact that I have ever seen from this approach is that it can become difficult to display variables on tasks when you are creating the tasks dynamically, rather than via the Catalog Task activity - but that can be accomplished via scripting as well! 

Outside of that, the performance impact of the additional query at the start of a workflow would be negligible and essentially unnoticeable unless you are processing thousands of requests simultaneously - which in all honestly would likely have its own complications at volume. 

I think you're on the right track!

I hope this helps!

If this was helpful, or correct, please be kind and mark the answer appropriately.

Michael Jones - Proud member of the GlideFast Consulting Team!

 

I hope this helps!
Michael D. Jones
Proud member of the GlideFast Consulting Team!

Thank you so much for the advise.  I am truly appreciate.  I will be using the Catalog Task activity, but was more concerned about query that same table every time a request was submitted.  I wanted to make sure my process to that has been utilized by others.