Showing ideas with status New.
Show all ideas
It took us some time to understand the intention behind how Active Queue works and I think there are options for improvements that greatly enhance AQs.
The ideas is to enable continuous processing triggered by new queue items and without occupying a runtime resource al the time while doing nothing.
Short summary on how AQ currently work (please see documentation for general description):
The assigned processes have to have a Poll loop that keeps the process active all the time even when there are no queue items available. This is necessary since the runtime resource is removed from the Target Resource definition when the process stops.
Various AQ can share the same Resource Group and resources can be assigned by de-/increasing the number of Target Resources and AQ will take care of starting the correct processes.
The ideas for improvements:
Most important: AQ Target Resource definition does not decrement when a process stops working but stays as it was defined. This removes the need of the empty Poll loop but processes are started by AQ when needed. (And does not use a license for just polling and waiting)
Nice to have: Adding thresholds for parallel processing. Something like 'active one resource for each x numbers of items'. Meaning, if x=100, one resource should be used if there are less than 100 items in the queue. If there are <200 two resources should be used and with <300 three resources asf. This will increase efficiency for low amount of processes and very quick processes. Instead of spawning the process, opening the applications, possible login, or navigating to the correct windows... the resources with all the technical basics already done can focus on business related steps.
Nice to have: Assign Target Resources dynamically. This could be in combination with the parallel processing idea. Here the point is to set a min / max Target Resource value. min would set the number of resources being reserved for this AQ. Although there might no process running on this resource, it will not be used for other processes to ensure the queue will never be blocked completely. max sets the max number of concurrent processes of this queue running in parallel.
Nice to have but tied to the prev point: Dynamic assignment of Resource Groups. The idea is to allow the total number of max Target Resources be greater than the actual available resources. With resources are made available again when there is nothing to process this setting would create an automatic dynamic assignment of resources for most efficiency. All resources not claimed by an AQ (Target Resource min setting) are moved to a common pool. AQ takes resources from this pool in peak times and returns them at off-peak times, making them available for other AQ.
Nice to have but tied to the prev point: AQ prioritization. In times when several queues are processed and there are not enough resources to meet their max Target Resources demands, the AQ with the highest prio should create an event to a lower prio AQ to free a resources. This freed resource then can be claimed by the higher prio queue.
The first point is the most important one that would enable a lot of customers the use of Active Queues.
... View more
I would like to have a new action stage, to be shown in the stage choice panel on the left side in Studio. You can call it whatever you like, but I'd like the new stage to be definable by the developer. For the fun of it, we could call it a Tiny Template. The new 'Tiny Template' stage would contain a stage, or a block of stages that are regularly used by the developer. Choosing the new stage would imply that the block of stages will be dragged into the page the developer is currently working on, in the same manner as the single stages that we have today. The new customizable 'Tiny Template' stage can be defined once by the developer and will remain accessible within BP Studio until its definition is changed by the developer. The 'Tiny Template' definition will be saved so it can be used again at any later time Studio is used. Why would this be practical? Lemme give y'all an example: When I'm testing new or modified parts of a process or object, stuff tends to crash. This is ok as it indicates where efforts for error handling are required. In order not to let any of these small crashes lead me back to to the Main Page, or wherever it bubbles up to, I usually add a temporary recover-resume-note block on the page. This will catch any errors and remain on the page I'm working on. When I move my work to the next page, I move or copy the block along with me to the net page. When all is done, I remove the blocks as not to permanently disturb the process flow. In the example above, I'd define my 'Tiny Template' as a recover-resume-note block and deploy it in every page I need it. Happy coding! ---------------- Paul Sweden
... View more
Problem: Per the Blue Prism documentation, Auto Archiving "causes a registered, running resource to check periodically throughout the day for any session logs that ended before a specified date/time and archive/delete them if such are found". My team has found that when very large sessions logs are being archived, it taxes our database and negatively impacts the performance of our automated sessions actively trying to run. The stress on the database can be so large that it seizes our servers and even takes down the entire environment. As a workaround, we identify large session logs and manually archive them before the auto archiving process gets to them. This is tedious and not ideal. Solution Idea: Alternatively, it would be great if Blue Prism added a way to configure Auto Archiving so it only runs during specified hours instead of checking "periodically throughout the day". If this were an option, we would set our archiving to happen outside of business hours so our database would not get so stressed.
... View more
In the current Decipher we don't have an option in the UI to modify the existing dashboards under reports. Adding an option to customize the dashboards or adding/creating new tiles (similar to Blue Prism enterprise) will help the business to track/create the model according to their wish.
... View more
This would help reduce the number of Environment Variables and help collapse / consolidate numerous environment variables into one single Environment Variable name which makes management / use of these a lot easier/efficient.
... View more
With resource pools, it is not possible to execute all tasks of a scheduler on the same resource. Example: We have 3 resources in a resource pool (VM1, VM2, VM3). When I create a scheduler, I always have 3 tasks (I am sure this is the case for many customers):
- Windows login - process - Windows logout
If I now run a scheduler on the resource pool, the following happens: The login process logs into VM1. The actual process is trying to run on VM2. The logout process tries to log out on VM3.
We want all tasks from a scheduler to run on the same resource in the resource pool. This is important because of security reasons. We have set it up in such a way that each process has its own Windows user, which has limited access rights to directories etc.
... View more
The "Mark Exception" action automatically creates a tag if the Exception Reason is not empty. The automatically generated tag has the format: "Exception: {Exception Reason}".
The exception reason often contains case-specific data. E.g., "product 523462 could not be found.". Blue Prism then creates a tag from this exception reason, causing our BPATag table to grow indefinitely.
... View more
The decipher application server requires a number of the services to be started in a specific order to operate correctly. Currently there ordering is not enforced by the service dependencies. Can this be included going forward to make it easier to restart the application servers.
... View more
Currently, to autoincrement a counter variable that adds +1 (typically) on every loop round, a separate calculation stage is needed plus a variable to hold a counter data. My suggestion is to integrate
autoincrement function into a loop (checkbox to trigger the feature on/off per loop)
in case autoincrement functionality is used
a placeholder for a name of counter variable (datatype : number)
button next the counter variable name to create a stage that holds counter variable
a placeholder for a base value (typically 0 or 1)
This is mostly a QoL enhancement.
... View more
As we're iterating through a collection, there are a number of cases where we want to make updates to the input data. When these data sets are in the thousands of rows, it's typically better on memory usage to use the same Collection in the input and output tabs.
One of the .NET quirks of this dataset, is that making these sorts of changes will set the current row to 1 each time. So if you use a Collection within a Loop stage and make changes to the Collection within that same Loop, you'll end up creating an infinite loop because it will never reach the last row. It would be useful to have an action in the Internal Object for Collections to set DataGrid.CurrentRowIndex or something equivalent in order to prevent these infinite loop scenarios.
... View more
While creating a new schedule ,the tool should show possible conflicts between two schedules , if they both share same resources and kickoff timings . Something which we see in ServiceNow if two CR are scheduled at the same time and for the same application
... View more
Can BluePrism come up with a functionality with regards to Adhoc debug mode so that developers don't have to face issues when they step through the process and into the Business Object and make changes. If we step back into the BO (after making changes) it opens in Adhoc Test mode and we are unable to make other changes. This is making it difficult to re-spy elements and edit pages in the BO. We have to reset the Process and step back through from the start in order to get the BO to open for us to make changes.
... View more
Hi, Now that we (since 6.10) have the ability to search for processes and objects in Studio, I'd like to ask for a few refinements of this long-awaited feature. 1. When searching Studio it would be nice to be able to search with multiple criteria. This way I would be able to list a process that I'll be working on as well as the object I know to be involved. The search criteria could have a ; as separator. Eg. 'process1;object5' would provide a list of processes and object matching these criteria. 2. As I tend to work on a process for a while, it would be nice to have the BP UI remember previous search criteria so I can pick them from a list. Happy coding! ---------------- Pau Sweden
... View more
We're running into an issue where Hub is failing to handshake with our SQL instance due to a discrepancy in the expected type of encryption. We are able to successfully connect to the SQL instance from the Application Server using connection string arguments. Please allow for the same functionality when asking for information to connect to SQL where required in the installation of other components as well. Edit: This problem is currently specific to Hub 4.7. We are installing it alongside a 7.2.0 x64 environment.
... View more
Prior to deploying a new version of a changed process or object, we are obliged to go over the changes with a colleague. To do so, we use the Studio Compare functionality.
This Compare highlights att changes in green, yellow or red for new, changed and deleted functionality. You use the hop to next or hop to previous buttons to navigate.
When there are a lot of changes on one particular page, they are all highlighted in yellow. Again, the hop to next or previous buttons are used to show what was changed to my colleague.
Unfortunately, the current stage is not indicated in any way and the screen just shows the yellow stages that were changed. This makes it quite hard to explain where we are.
This is what it looks today:
Wouldn't it be nice if the current stage would be marked in some manner? Something as simple as this perhaps:
Happy coding! --------------- Paul Sweden
... View more
We're currently at BP6.5.4 and in the process of migrating to BP6.10.5. For this migration we get to verify all our processes in 6.10 prior to go live in 6.10. While doing so I cannot help but notice that some of the screens where in 6.5 an escape was handled as a Cancel, for the same form in 6.10, the escape is no longer Cancel and I have to divert from using the keyboard to using the mouse. While this may seem trivial to some, any change away from the mouse is welcome in my view. Specially if you're doing this full-time. Example: Try the calculation stage properties and press escape - it will Cancel. Now press button 'Evaluate Expression' on the calculation stage properties and press escape - it will not Cancel in 6.10, but will Cancel in 6.5. There are more screens that have similar changes in behavior. In my view as a user of BP and as a software developer, similar forms should always have similar behavior. Any given property form should always behave as any other property form of similar type and function. I can add that the same goes for a screen that in 6.5 did not react to an Enter, but in 6.10, the Enter is interpreted as the Ok button. This I call progress, and I would like to see more of this. We're still at 6.10, but no doubt one day we will see the lights of BP7. I do hope that we by then are presented with a consistent way to blend mouse clicks and keyboard strikes each leading to the same and predictable result. Happy coding! --------------- Paul Sweden
... View more
The last screen for confirming DB upgrade during BP upgrade should show the DB name that will be affected.
Currently it warns in red: those changes cannot be undone! and I have to enter the password again ... but I cannot verify if my previous specifications of the DB was correct anymore at this stage.
There could be another line close to the lines with the DB versions saying: Affected database: <db name>.
Or it could be added to the password prompt like: Please retype the password for database <db name>.
... View more
Problem/Opportunity: Missed Components in Packages
This would be a job aid for deployment accuracy by tracking components as they are changed for inclusion in packages.
Blue Prism has a configuration option that prompts for Save Comment.
Add in the Save Prompt: Change ID
When creating packages if Save Comment/Change ID turned on prompt for Change ID and create a distinct list of components saved with the Change ID that can be dragged to the package.
This will help identify components as they are changed.
An extended suggestion would be to allow multiple Change IDs when creating a Package.
... View more
Hi, I would like Interact users to resize columns in form tables based on their requirements. Currently the columns are fixed size and the user has no option to resize the columns where some can contain only few characters whereas others can contain longer data. Regards Zdenek
... View more
My suggestion is to add an AutomateC command to enable or disable a specified existing schedule. This capability would greatly expand the flexibility of the Blue Prism scheduler.
Currently we have processes that have to be scheduled to run once (or more) every day, mostly just to determine that they don't need to do anything on that day. These superfluous runs create noise in the control room, extra logs, and potentially cause other processes to not run because all licenses are in use at that moment. For example, we have a process that needs to run every 30 minutes but only on one or two specific days of the month. The only way to do this currently (using just the BP scheduler) is to schedule it to run every 30 minutes every day, and either add logic so the process can determine that it shouldn't do anything most of the time or manually disable it for most of the month and manually enable it on the days when it should run.
With the proposed enable/disable AutomateC capability, we could maintain a file (Excel workbook?) containing a list of schedules. Each schedule in the file would have a business day or calendar day of the month and whether the schedule should be enabled or disabled on that date. A BP process would run early every morning and process this file. The BP process can determine the current business day and calendar day and enable/disable schedules accordingly. This would enable more efficient scheduling for processes that only run quarterly, monthly, bi-monthly, or on specific days (whether calendar days or business days).
... View more