WonderBotz reusable code

WonderBotz has been building reusable code since our inception. We call our code library the PowerPack and they are valuable assets that underpin our prebuilt solutions. We provide them several ways:

  1. Many assets come with each of our prebuilt solutions
  2. Application-based and general helpers are provided when we are your RPA platform license reseller and soon will be available for purchase directly on our site
  3. Processing engines are licensed separately
  4. Patterns are delivered with our mentoring services

Application-based developer helpers

These helpers work with specific third-party applications and perform commonly needed tasks.

Blue Prism credential and queue management helpers
  • Set any credential attribute in Blue Prism Credential Manager [1000]
  • Load collection of data into work queue [1001]
  • Retrieve process-related configuration data from work queue [1002]
  • Remove all tags from work given queue items [1003]

Google tool and usage helpers
  • Translate text to new language using Google [1004]
  • Standardize address format using Google [1005]

Microsoft Internet Explorer helpers
  • Engage
  • Send binary value to HTTP endpoint using POST or GET methods [1053]
  • Send collection to HTTP endpoint using POST method [1054]
  • Send JSON formatted text to HTTP endpoint using POST method [1055]
  • Send string to HTTP endpoint using specified method [1056]
  • Download file using pop-up bar in Internet Explorer [1057]
  • Get full text from active webpage [1058]
  • Insert value into webpage HTML elements using Javascript [1059]
  • Manage application
  • Open new instance of Internet Explorer [1060]
  • Shut down given instance of Internet Explorer [1061]
  • Upload HTTP certificate file and return certificate ID [1062]
  • Close all windows in Internet Explorer [1063]
  • Navigate
  • Open first window and go to URL in new Internet Explorer instance [1064]
  • Go to URL using Internet Explorer [1065]

Microsoft InfoPath helpers
  • Get field values and download attachments from InfoPath Form [1066]

Microsoft Outlook helpers
  • Get details (i.e., id, subject, dates, body, to/cc/bcc/from)
  • Get email details for all mail from a subfolder with a given subject line [1067-VBO]
  • Get email details for all mail received since a date [1068-VBO]
  • Get email details for all mail with a given subject line [1069-VBO]
  • Get email details for all mail with a given subject line (accepting wildcards) [1070-VBO]
  • Get email details for all sent emails with a given subject line [1071-VBO]
  • Get email details for unread mail [1072-VBO]
  • Get body text from open email in Outlook [1073-V2013]
  • Get sender address and subject line of first email in current Outlook folder [1074-V2013]
  • Get all emails (with details) from Outlook folder [1075-MAPIEX]
  • Manage application
  • Shut down Outlook including all instances [1076-V2013]
  • Move/delete email
  • Delete email from Outlook inbox [1077-VBO]
  • Move email to given Outlook folder [1078-VBO]
  • Move email to given Outlook folder [1079-MAPIEX]
  • Save email
  • Save all emails in sent folder as .msg files to folder path [1080-VBO]
  • Save current email in given file format (text, outlook template, outlook message, HTML, MHT) to folder path [1081-VBO]
  • Using given naming pattern, save all attachments in an Outlook email to folder path [1082-VBO]
  • Using given naming pattern, save specific attachment in an Outlook email to folder path [1083-VBO]
  • Save current Outlook email to folder path as html file [1084-V2013]
  • Save current Outlook email to folder path as text file [1085-V2013]
  • Save Outlook email as a pdf file to a folder path [1086-V2013]
  • Save attachment(s) in given Outlook email to folder path [1087-MAPIEX]
  • Send email
  • Send email in predefined template/addressee with given updated information [1088-VBO]
  • Forward email to predefined addressee [1089-VBO]
  • Reply all to a given email ID with given message with option to provide new subject line [1090-VBO]
  • Reply all to a given email ID with given message [1091-VBO]
  • Reply to sender of a given email ID with given message with option to provide new subject line [1092-VBO]
  • Send email with given subject, body, to/cc/bcc parameters [1093-VBO]
  • Reply all to a given email ID with given message with option to add/remove recipients [1094-MAPIEX]
  • Reply all to a given email ID with given message with option to provide new subject line [1095-MAPIEX]

Microsoft PowerPoint helpers
  • Edit presentation
  • Add new slide in selected layout in PowerPoint presentation [1096-VBO]
  • Close and optionally save presentation in PowerPoint [1097-VBO]
  • Copy given presentation slide in PowerPoint [1098-VBO]
  • Create new PowerPoint presentation with selected layout [1099-VBO]
  • Duplicate slide in PowerPoint presentation [1100-VBO]
  • Get slide count of PowerPoint presentation [1101-VBO]
  • Insert new slide to given location within PowerPoint presentation [1102-VBO]
  • Paste slide to target location within PowerPoint presentation [1103-VBO]
  • Perform given paste-special to target location within PowerPoint presentation [1104-VBO]
  • Remove slide from PowerPoint presentation [1105-VBO]
  • Select given slide in PowerPoint presentation [1106-VBO]
  • Edit slide
  • Add file object to a PowerPoint slide [1107-VBO]
  • Add shape to a PowerPoint slide [1108-VBO]
  • Crop image in PowerPoint Presentation to specific coordinates within itself [1109-VBO]
  • Edit text and format of given shape in Powerpoint slide [1110-VBO]
  • Edit header text in PowerPoint slide [1111-VBO]
  • Resize content area on PowerPoint slide [1112-VBO]
  • Manage application
  • Bring PowerPoint application to forefront [1113-VBO]
  • Open a new instance of PowerPoint [1114-VBO]
  • Open PowerPoint file [1115-VBO]
  • Run macro in PowerPoint [1116-VBO]
  • Save file as new PowerPoint presentation [1117-VBO]
  • Save presentation changes in PowerPoint [1118-VBO]
  • Shut down given instance of PowerPoint [1119-VBO]
  • Start slideshow in PowerPoint [1120-VBO]

Microsoft PowerShell helpers
  • Download SFTP file to folder path using PowerShell [1121]
  • Return ‘true’ if file exists in SFTP servier; otherwise return ‘false’ [1122]
  • Upload file to SFTP servier with PowerShell [1123]

Microsoft Word helpers
  • Export Word file as *.PDF to given folder path [1124-V2013]
  • Get full text of file in Word [1125-V2013]
  • Open Word file [1126-V2013]
  • Open Word file and get full text [1127-V2013]
  • Print file as PDF in Word [1128-V2013]
  • Shut down Word, including all instances [1129-V2013]

SAP Concur helpers
  • Go to new URL while within SAP Concur webpage [1130]
  • Log into SAP Concur through webpage with provided credentials [1131]
  • Maximize SAP Concur webpage window [1132]
  • Open SAP Concur webpage [1133]
  • Shut down SAP Concur webpage [1134]

Tableau helpers
  • Export Tableau dashboard images to folder path [1136]
  • Log into Tableau dashboard webpage using provided credentials [1137]
  • Open dashboard webpage in Tableau [1138]
  • Retrun ‘true’ when filter setting are as expected within Tableau dashboard; Otherwise returns false [1139]
  • Save Tableau dashboard to folder path [1140]
  • Set filters within Tableau dashboard [1141]
  • Shut down Tableau dashboard webpage [1142]

Zip helpers
  • Save all files in a folder path (including subfolders) to a given zip file and folder path [1030]
  • Save Zip file contents to folder path [1031]

General developer helpers

These helpers are designed to basic needs that could present in just about any automation. They will speed developer productivity, ease testing and simplify maintenance activities.

Collection management helpers
  • Create collection
  • Create collection by combining two source collections [1006]
  • Create collection by copying current row [1007]
  • Create collection by parsing string delimited by user-defined text [1008]
  • Delete records
  • Delete all rows that have a given value in a column [1009]
  • Delete first row when given value matches value in a column [1010]
  • Get values
  • Create given character-delimited string including all row in a collection [1011]
  • Create comma-delimited string containing column names [1012]
  • Get all rows where specified text is in a column [1013]
  • Get the first row with matching value in given column [1014]
  • Get value from a given field [1015]
  • Get value of every row in a column [1016]
  • Get field value if same value exists elsewhere within in a column (i.e., more than one occurrence) [1017]
  • Modify collection
  • Create collection by copying rows based upon value in column [1018]
  • Get and then remove columns from a collection [1019]
  • Move column in a collection [1020]
  • Move columns in a collection conforming to new column map [1021]
  • Retain first match and remove later matches based upon column value [1022]
  • Create single-row collection using two columns in multi-row collection so that one row is field names and other row is values [1023]
  • Transpose a multi-row single-column collection into single-row multi-column collection [1024]
  • When field label is given value, update value in given field with given text [1025]
  • Update values in a collection
  • Replace all matching values in collection with given value [1026]
  • Replace given text in each row of a column with given text [1027]
  • Verify contents
  • Return ‘true’ if a collection doesn’t have any rows; otherwise returns ‘false’ [1028]
  • Return ‘true’ if a given collection field is null; otherwise returns ‘false’ [1029]

File processing and management helpers
  • Save all files in a folder path (including subfolders) to a given zip file and folder path [1030]
  • Save Zip file contents to folder path [1031]
  • Copy FTP file to local or server-based shared file path [1032]
  • Rename file by appending random text to current name [1033]
  • Return ‘true’ if file appears in folder within defined period; otherwise returns ‘false’ [1034]

HTTP helpers
  • Send binary value to HTTP endpoint using POST or GET methods [1053]
  • Send collection to HTTP endpoint using POST method [1054]
  • Send JSON formatted text to HTTP endpoint using POST method [1055]
  • Send string to HTTP endpoint using specified method [1056]
  • Upload HTTP certificate file and return certificate ID [1062]

Regex helpers
  • Delete all special characters in provided regex text [1035]
  • Get first text that matches given regex pattern in in given string [1036]
  • Get all text that matches given regex pattern in given string [1037]
  • Replaces partial regex expression with given text [1038]
  • Return ‘true’ if regex pattern is found in provided string; otherwise returns ‘false’ [1039]

Screen capture helpers
  • Capture screen image and save to folder path [1040]

String handling helpers
  • Attempt to find email address, if any, from within given text; returns null if no email found [1045]
  • Attempt to find field values with given labels from provided text; returns null if no email found [1042]
  • Attempt to find phone number (10-digit; 10-digit with +1 country code) in given text and standardizes format (###-###-####) [1050]
  • Convert text-delimited string into collection [1043]
  • Get a random string of numbers [1044]
  • Get field values with given labels from given collection [1041]
  • Get next letter in alphabet [1046]
  • Parse return-delimited text into collection rows [1047]
  • Remove trailing zeros after decimal place [1048]
  • Replace one character in text with give character [1049]

XML helpers
  • Convert XML code to a data collection [1051]
  • Convert XML code to a nested data collection [1052]

Processing engines

Our processing engines do the heavy lifting for automations. They are pre-packaged functionality controlled by external parameters for ease of integration and re-use. Compiled versions are available with a license key.

Email Manager

Email Manager manages email correspondence. It retrieves an email and applies simple user-defined instructions (code-free) based upon email addresses, email domains, subjects, body text, or attachments. It can create work queue items in any work queue, send, reply, or forward emails, or run an RPA automation. Also, email manager can also verify the sender is on an approved sender list, for additional security.

eSignature Lifecycle Manager

ELM manages the creation and delivery of signed documents in DocuSign or Adobe EchoSign. It uses provided data to prefill required forms and creates digital document envelopes, enabling recipients to complete their forms, upload required documents and sign off on their submission. Signed forms and the corresponding structured data plus any uploaded documents are delivered as outputs. Although adding new forms requires setup in the eSignature platform, no RPA code changes are required when adding additional forms and envelopes as processing is managed by external config files.

Document Processing (DocProc)

DocProc enables the robot to work with another application using loosely-coupled integration rather than a technical or RPA-based approach. It delivers work to the application (e.g., OCR application, analytic optimization model), checks back regularly for the delivered outputs, provides status on request and, thereafter the process continues. It throws errors and sends alerts if the loosely-coupled application fails to perform its function in the allotted time.

Report Re-writer

Report Re-writer transforms structured data (e.g., existing report, Excel workbook, SQL extract, dashboards, some PDFs) to make it easier for use by leadership, business analysts, data scientists and downstream automations. It is able to add/remove columns, sub-totals, footers, headers and also add row-level data using lookups and formulas among other techniques. It is controlled by simple Excel-like instructions (code-free), so it’s easy for business users to maintain.

Datamart Maker

Datamart Maker assembles datasets for use by business analysts, data scientists and downstream automations. It creates operational data stores needed at regular intervals or on-demand such as for consolidation of subledger data for journal entries or rerunning business optimization models. Controlled by simple, Excel-like instructions (code-free), it is able to combine many discrete datasets in different formats into one consolidated, structured dataset.

Data quality and cleansing engine

Data quality and cleansing engine validates and corrects field-level data, including adding missing values to complete the data. It identifies and addresses issues in the value of an individual data attribute or a field within the context of a record. For example, it is able to (1) check for blank fields, strings, dates, numbers, specific words, (2) validate field value relying on values in other fields in the record, and (3) confirm that the value of a data attribute is among acceptable choices or ranges. Based on its findings, the robot can correct undesirable values using lookups and logic or send an alert. It is controlled by simple instructions (code-free) so It’s easy for businesspeople to setup, maintain and expand the rules

Transaction Matching

Transaction Matching compares two financial datasets (e.g., bank statement line items, unapplied deposits in the ledger; intercompany accounts) looping through each record to find corresponding item(s) in other dataset, for example, 1:1 or 1:many. It is able to match summary-level data to multiple related records, using simple user-managed rules-based logic (code-free) and includes human-in-the-loop for near but not definitive matches.

Report Packager

Report package prepares management information and personalized reports for distribution. It is able to (1) refresh data within existing Excel analyses and Tableau and other dashboards (2) load and manipulate data in Excel workbooks, PowerPoint presentations and more, (3) slice up data into subsets to create personalized reports. It is controlled by simple instructions (code-free) so It’s easy for businesspeople to create repeatable and auditable outputs.

Design patterns

Our design patterns are proven approaches to technical solution design and architecture.

  • Chassis (orchestrates alternative sub-processes in a single end-to-end process)
  • Dispatcher
  • Publisher-subscriber
  • Processor
  • Smarter process (orchestrates AI for inclusion into automations)

Inquire below