REQUEST A DEMO

Tag: fcClient

Using modern JavaScript libraries to create a better user experience in fcClient

September 26, 2007 Over the last couple of years, a number of very useful JavaScript libraries and frameworks have been introduced that make it tremendously easier to build rich web applications. A few of the more popular ones: PrototypeScript.aculo.usMooTools These frameworks allow developers to easily write very rich, cross-browser web applications. I've heard about these libraries for some time, and have experienced many great web apps that use these libraries. So I asked myself whether I could use these modern libraries with fcClient. The answer is a resounding Yes! A simple example: Modify the Save/Discard/Cancel page in order to improve the user experience. How it used to work If a page was "dirty", meaning that data on that page had changed, and the user attempts to dismiss the page (such as by clicking the Done button), then a Save/Discard/Cancel window is posted, which is a new…

SLA Monitoring

August 31, 2007 One of the common tasks for a support/call center manager is making sure the team is living up to its service level agreements (SLAs). Pretty much every customer I've ever dealt with has different SLAs. As you can imagine, there's a zillion ways for companies to setup and track their SLAs.   Example SLAs:   All cases must be responded to within 2 business hours All Urgent priority cases must be responded to within 1 hour regardless of business hours All cases must be responded to within the phone response time as stated on the contract All cases must be closed within 5 days. All subcases of type "Hardware Upgrade" must have a technician onsite within 36 hours. All new cases for a Gold level customer must get a call back from a senior tech within 1 hour. An initial response…

fcSDK Cache files: sometimes more trouble then they're worth

July 30, 2007 One of the features of the fcSDK is its ability to cache frequently-used, rarely-changed data, such as the schema meta-data (ADP tables),  lists (Application Lists, Status codes, User-defined lists), geography data (states, countries, time_zones, currencies), configuration items, and strings. When the fcSDK starts up, it reads all of this data from the database and saves it into memory. In addition, it writes out the data to cache files. The next time the fcSDK starts up, if there are cache files present, it loads the data from the cache files, as opposed to having to go to the database. This improves the performance of the loading of the cache data, as reading from a local file is quicker than loading from a remote database. However, these cache files can often cause trouble. If a piece of cache data is changed in…

Modifying a case you don't own

July 13, 2007 Clarify employs a strict ownership paradigm with its application, meaning that only the owner of a workflow object can make a critical change to it. This ownership paradigm was baked into the product, and difficult to modify. For example, anyone can add notes to a case, but only the owner can change the status. What's a critical change? Let's take case as the object in question, and see what Clarify considers critical. Critical changes: Change any attributes of the case (title, priority, severity, etc.) Change the status Perform a workflow action (Assign, Dispatch) Close the Case Change the contact, product, or contract for the case Relate the case to a solution Non-Critical changes: Log Notes Log Email Log Phone Call Log Research However, organizations don't always want to follow these imposed rules. For example, it's not that uncommon to have a…

Upcoming product release: Dovetail RuleManager 1.1

July 5, 2007 We're currently working on version 1.1 of RuleManager. This version was fueled by customer requests, and should be available very soon.   Here's what's coming in version 1.1: RuleManager can now include attachments for emails initiated via a LogEmail action, which are typically made from within fcClient or the Clarify Client. The application taking that action, such as fcClient or the Clarify Client, is responsible for relating the LogEmail (table_email_log) to the attachment(s) (table_doc_inst). Because RuleManager will only attach files that it has access to, we recommend that the path to the attachment is a UNC path such as "\serverpathfile.ext". If RuleManager cannot access an attachment, the email will still be sent without the attachment. RuleManager will log an error when this situation occurs.The working directory of RuleManager is now the directory where RuleManager is installed. This is relevant when…

Should log_notes update the last modified timestamp on the case?

June 13, 2007 On most workflow objects in Clarify, such as case, subcase, etc. there is a column which indicates the last modified date.  For example, on table_case, there is a modify_stmp column. In older versions of Clarify (including up to version 11.5), if you perform a log action (such as log notes), that timestamp is not updated. In later versions (such as 12.5), that timestamp is updated. The high level APIs in our fcSDK (such as log_case_note, log_case_phone, log_subcase_note, etc.) mimic the Clarify functionality. But, because they've been around so long, they mimic "older" versions of Clarify. So, our log* APIs do not update the last modified timestamp on a case. So, the question is: should our log APIs update the last modified timestamp? I could, but I would prefer not to, add version conditional logic, such as this: if (CLARIFY_SCHEMA_VER >= 59){…

Using the Tab control in Dovetail web applications (such as fcClient and fcAdmin)

June 12, 2007 We use a client-side JavaScript object for creating tabs in our web applications. Unlike in the Clarify Classic Client, tabs in our web apps are the same page as the parent. When you click on a tab, you are actually displaying the HTML elements on that tab, and hiding the HTML elements on the other unselected tabs. It's all a bunch of Dynamic HTML (DHTML) goodness.  It's trivial to make tabs visible/invisible, reorder tabs, resize, etc. The case page in fcClient is a good example of the use of tabs:   Here we will walk through the steps needed for creating and using tabs within a page. In your ASP page, Include the javascript code for building a tab <script language="javascript" src="../code/tab_builder.js"></script> In your ASP page, Include the stylesheet <link rel="stylesheet" href="../stylesheets/webagent.css" type="text/css"> Create an array of tabs var ArrayOfTabs= new Array(); Add…

Using the Tab control in Dovetail web applications (such as fcClient and fcAdmin)

We use a client-side JavaScript object for creating tabs in our web applications. Unlike in the Clarify Classic Client, tabs in our web apps are the same page as the parent. When you click on a tab, you are actually displaying the HTML elements on that tab, and hiding the HTML elements on the other unselected tabs. It's all a bunch of Dynamic HTML (DHTML) goodness.  It's trivial to make tabs visible/invisible, reorder tabs, resize, etc.   The case page in fcClient is a good example of the use of tabs:       Here we will walk through the steps needed for creating and using tabs within a page. In your ASP page, Include the javascript code for building a tab <script language="javascript" src="../code/tab_builder.js"></script>   In your ASP page, Include the stylesheet <link rel="stylesheet" href="../stylesheets/webagent.css" type="text/css">   Create an array of tabs…

Using the fcSDK in PowerShell

April 25, 2007 Years ago, if I wanted to "script" Clarify [formerly linked to www.myclarify.com which no longer exists], I would use UNIX shell scripts, including UNIX mini languages such as sed and awk, that would create dat files that could be imported with dataex. When ClearBasic was introduced, we also got cbbatch, which was a command line interpreter for ClearBasic, so we could script Clarify using CB. When we (First Choice Software) introduced FCFL (First Choice Foundation Library), which was a set of COM objects, we could script using VBScript or JavaScript making COM calls. Same story for the fcSDK. Although the fcSDK is all native .NET, it also exposed a COM interface, so we could still do scripting as we did with FCFL, but we didn't have all of the .NET capabilities of fcSDK. But now, with the availability of PowerShell, we…

Using Microsoft Full-Text Search within Dovetail applications

March 13, 2007 For years, Clarify has used the full-text search engine from Fulcrum (now Hummingbird OpenText) to allow full text searches in its applications. This was important back in the day, since the database vendors didn't offer good solutions to this problem. Now they do. A couple years ago, as we started expanding our knowledgebase, we had the need to perform full-text searches. However, we preferred to stay away from the Fulcrum/Hummingbird product, mostly because of how Clarify integrated with it. Corrupted indexes, huge amounts of time to create/re-create indexes, and having to setup cron jobs to schedule index runs, were just a few of the problems I ran into on previous implementations. As we used Microsoft SQL Server as our database platform, we decided to use the FTS engine that is bundled with SQL Server, and we've been happy with the result.…