REQUEST A DEMO

Tag: business rules

How To Customize the Clarify Rule Properties form to support function-based Rule Properties

January 11, 2017 Recently I discussed function-based rule properties, which allow you to add your own code for calculating a rule property value.I was asked last week about these – specifically, what if you’re using Dovetail Rulemanager, but not using Dovetail Agent. How do you define these properties?  BackgroundThe property can be defined as a function using the Rule Property UI within Dovetail Agent.But if you’re not using Dovetail Agent, but you are using Dovetail Rulemanager, you can still take advantage of these.Rule properties are stored in table_prop_name. There is a new custom field named x_is_function that defines this property as a function. If set to 1, this property will be evaluated as a function. If set to 0 (default), it will not be.So you can simply create your rule property as normal, then you just need to set the x_is_function column to…

Understanding Business Calendars and Holidays

January 4, 2017 When talking about calendars, notifications, and SLAs – questions around calendars and holidays often arise.So lets explain how they work within Dovetail apps.     Business CalendarsLets start with Business Calendars. They define the work hours.For example I may have a business calendar named “M-F 9-5” with the following work hours:Monday 9:00 AM – Monday 5:00 PMTuesday 9:00 AM – Tuesday 5:00 PMWednesday 9:00 AM – Wednesday 5:00 PMThursday 9:00 AM – Thursday 5:00 PMFriday 9:00 AM – Friday 5:00 PMPretty simple.Business Calendars can be setup using Dovetail Admin. HolidaysNow lets setup the Holidays.Using Dovetail Agent, navigate to the Admin page, and click on the Holidays icon: This takes us to the Manage Holidays page, where we can create, edit, and delete holidays.  Clicking the green plus icon allows us to create a new holiday We can give the holiday a name, a start…

How to Automate a Workflow Process by Combining function based Rule Properties and the SDK Toolkit extension

December 21, 2016 When working with parent-child cases, a common workflow is to close the parent case when all the child cases have been closed.We can easily automate this workflow using Dovetail tools and applications. Business RuleHere’s the rule that I want to create:When the last child case is closed, close the parent case.In order for this rule to function, I need to know when the last child case is closed.I can do that by looking at the number of open child cases on the parent case. When this number is equal to zero, I know that all of the children have been closed.But, out of the box, this number is not an available property.But I can easily create my own, using the function-based rule property functionality.  NumberOfOpenChildCasesOnParent Rule PropertyFollowing the examples, I can create my own function-based rule property.Given the child case objid, I…

Introducing Custom Function-based Rule Properties

December 20, 2016   Rule Properties Rule properties are used in a number of places throughout the Dovetail suite, including: Business Rule Conditions Business Rule Action Messages Canned Response Variables Task Manager Properties Email Log Templates Traditionally, a rule property would traverse a path through the schema, starting from the base object, and ending at a column. For example, the Contact First Name property for a case would use the path case_reporter2contact:first_name. However, there are instances where a path cannot be traversed, or where a calculation needs to be made.   Counts For example, you may wish to fire a business rule only if all of the subcases on a case have been closed. So your two business rule conditions would be: Number of Subcases is greater than zero Number of Open Subcases is equal to zero Or, you may wish to fire…

Demystifying the focus_obj2act_entry relation

December 5, 2016 I’ve had multiple people inquire lately about the focus_obj2act_entry relation.It’s definitely a bit of a magic relation, and can be confusing, so I figured it was time to blog about it. Business rule properties allow you to define a value that is determined by traversing through the schema starting from a particular object.For example, the Site Name property for a Case has a path of case_reporter2site:name. So when this rule property gets resolved, the property evaluator knows how to turn that schema path into actual SQL, such as:select name from table_case, table_site where case_reporter2site = table_site.objid and table_case.objid = {The Objid of the Case in Context}Pretty straightforward. focus_obj2act_entry propertiesWhen looking at existing business rule properties, you may notice that some of them start with the relation focus_obj2act_entry.For example, the Logger property uses focus_obj2act_entry:act_entry2user:login_name Notice the "focus_obj2act_entry" part of the path. If you look…

Replacing custom scripts with the SDK Toolkit extension

September 19, 2016 Recently, I talked about the new SDK Toolkit Extension in Dovetail Carrier, which allows for executing methods within the Dovetail SDK Toolkits, without writing any code. Once that was released, I was able to remove some custom scripts from our own production environment, and replaced them with this new SDK Toolkit extension.   Change Status This is the business rule that we has in place: Object Type Case Rule Name/Description When a customer logs a note via SelfService, change the case status to Customer Update Start Events Log Note Cancel Event None Conditions Logger = SelfService Action Title Change Status Create Activity Log Entry? true (checked) Who to Notify no one (leave empty) Start Action 0 minutes From Event Creation Using Elapsed Time Repeat    Never Message Type Command Line Message C:\Dovetail\custom\RuleManagerActions\ChgStatus\ChangeCaseStatus.bat [Object ID] 'Customer Status changed automatically due to action…

SLA Calculations using Dovetail Carrier

August 9, 2016 I was recently working on a project that wanted to track SLAs, but the specific SLA rules were more complex than could be handled just using business rules.  But, the logic would be pretty straightforward to enforce via code. So we came up with a solution that used a combination of business rules and a custom Dovetail Carrier extension.  In this post, I’ll walk through how we accomplished this. There’s a lot of information here, so grab a cup of coffee (or perhaps a glass of scotch), settle in, and lets get to it. Photo by @ederpozo   SLAs Over the past 20+ years of working in the Support/CRM space, I’ve worked with a number of organizations that want to enforce SLAs (service level agreements) in their Support app. Example SLAs All cases must be responded to within 2 business…

Introducing the SDK Toolkit extension in Dovetail Carrier

August 2, 2016 We recently released an updated version of Dovetail Carrier, and this version includes a new SDK Toolkit Extension. I’m super excited about this new extension – so lets get into the details. But first, a quick refresher on Dovetail Carrier.   What is Dovetail Carrier? Carrier is a flexible and customizable message handling framework for your Dovetail or Clarify CRM application. It allows the automation of virtually any internal CRM processes associated with communicating with external systems. Carrier uses messaging, a method of communication between software components or applications that enables distributed communication that is loosely coupled, to enable organizations to establish efficient dataflow between their systems.   Extensions The Carrier framework is designed to support extensions to its baseline capabilities, for implementing solutions to your organization's business needs. Extensions shipped by Dovetail have been designed to be customizable and…

Improving our Slack integration

December 10, 2015 SlackLast year I posted about Integrating Clarify/Dovetail with your group chat app. That post was around the time we started using Slack for our group chat.At that time, I was using Slack’s simple webservice to post messages about cases. OriginalFor example, case dispatch notifications looked like:Simple. But not very detailed. ImprovedRather than just using Slack’s simple web service, I’m now using their Attachments, which allow for more richly formatted messages.Notice there’s now much more information available, including:Top-level message (In this case,  “Case Dispatch Notification”)Case IDContact and Site NameCase title (which links to the case in Dovetail Agent)SeverityQueueLink to the case in Dovetail Mobile And it’s easy to add whatever other relevant information in there that I would like. Business Rule ActionThe business rule that fires on case dispatch now calls the CaseMessage.bat file, like so:C:\Dovetail\RuleManagerActions\slack\casemessage.bat [Object ID] dovetail "Case Dispatch Notification"To that BAT file,…

Notifications in Dovetail Agent

February 2, 2015 When a business rule fires, most of the time the result is a notification to one or more users. There's a few common ways a user can get notified - email, pager, sms/text messages, and the "notifier". Notifier means that the user gets a notification within the application itself. In the Clarify Classic Client, there is a Notifier form (Desktop - Notifier) where messages are displayed. Notify Server On the back end, Clarify uses  a Notifier service/daemon, commonly referred to as the Notify Server. The Clarify Client communicates with the Notifier service using a Windows socket connection. This is notoriously buggy. It wouldn't always connect, the connection would drop, messages would get lost, etc. Often, the Notifier service would think it delivered a message to the client, and then delete the message from the database. If it didn't actually get…