REQUEST A DEMO

Tag: clearbasic

Credit Card Authorization via Clearbasic

May 27, 2011 I was recently asked if we could tie into a credit card authorization service from the Clarify Classic Client.   The particular service in question was Authorize.net, which allows merchants to accept credit card payments.   What’s nice about Authorize is that they expose web APIs that can be called via HTTP. Their developer site is pretty good – with lots of different options, and sample code in a variety of languages.   I’ve blogged in the past about making web requests and consuming result sets, so the approach here is similar – although in this instance it’s even easier. The results from Authorize are just a delimited string, which is much easier to parse in ClearBasic than JSON. Giddy Up   I signed up for a test account, grabbed some sample code from their site, and ported it to ClearBasic.   The API is pretty much what you expect…

Binding JSON Data to a Clarify control using ClearBasic

April 18, 2011 A while back, I posted some information on how to consume JSON data in ClearBasic.   Someone recently asked me if you could bind a set of data from a web service into a Clarify grid. Of course. Similar idea to what I posted earlier, just now we want to take the object that we created from the JSON, and turn it into something that the Clarify UI can consume. For a Clarify grid, a list of records will work.   I created a simple web service that returned a collection of data in JSON format. To be honest, I used the Dovetail SDK to query for a list of the user’s open cases, and return it in JSON format. But the web service could return any data, from any source.   Here’s the basic code:     Transpose a JavaScript Object Into…

Free Product Spotlight: Employee Manager Utility

April 11, 2011 Back before we were Dovetail Software (we used to be First Choice Software), back before web applications were standard, back when Clarify was still its own company – many of our products were add-ons or enhancements to the Clarify Classic Client. And we had a boatload of them. But as mush as usage of the Clarify Client has declined over the years, there are still many organizations still using it. So we came up with the bright idea to open up some of these add-ons applications, and offer ‘em up for free. We’ve already released a bunch of them for free (and we’ll be offering up more soon). So I’m starting up a little blog series (can I call it a series when this is the first?) where I’ll cover a brief overview of some of these products. And of…

Calling SOAP web services from cbbatch on UNIX using an Oracle procedure

October 4, 2010 Yes, you read that right - calling SOAP web services from cbbatch on UNIX using an Oracle stored procedure. Even reading that kind of makes my head hurt. But, when you're between a rock and a hard place, sometimes you gotta do what you gotta do. I've been working with a customer recently who has created some web services using .NET and our Dovetail SDK. He needs to able to call these web services synchronously from ClearBasic code, both from the Clarify Classic Client (running on Windows) and from cbbatch (running on UNIX). Calling web services from the Clarify Classic Client Calling web services from the Clarify Classic Client is pretty straightforward. Since we're on Windows, we can use COM and ActiveX objects to do so. A few examples of this: Using the microsoft.XmlHttp object Using the Microsoft SOAP toolkit…

HTTP request from cbbatch on UNIX

April 15, 2010 While answering some questions about integrating Clarify with web apps, I got a follow-up question (off the list) asking about how to make an HTTP request from cbbatch on UNIX. He didn’t care about the response – the page actually is just a php script that triggers a process on the web server; nothing visual is shown. Here’s my reply: I would use curl to make the HTTP request. curl is a command line tool for transferring data with URL syntax. It's available for Windows, Mac, and a boatload of flavors of UNIX. The curl website: http://curl.haxx.se/ I’ve used curl in a couple of previous posts. From cbbatch, just shell out and use curl to make the HTTP request. Like this: Sub test() Dim shellCommand as String Dim processId as Integer Dim url as String Dim curl as String curl…

More fun with Powershell

September 11, 2009 I was recently working on porting some existing ClearBasic batch (cbbatch) scripts to PowerShell. I’ve blogged in the past about using our SDK with Powershell. For this particular project, I had multiple scripts to port, and I was looking to extract some common functions and utilities, so that they could be used between multiple scripts. Configuration When using the Dovetail SDK, one of the first tasks is to load up the configuration information and connect to the database. That would normally look something like: $connectionString = “Data Source=localhost;Initial Catalog=dovetail;uid=user;pwd=pass" $databaseType = “MSSQL”;     [system.reflection.assembly]::LoadWithPartialName("fcsdk") > $null; [system.reflection.assembly]::LoadWithPartialName("FChoice.Toolkits.Clarify") > $null; $config = new-object -typename System.Collections.Specialized.NameValueCollection; $config.Add("fchoice.connectionstring",$connectionString); $config.Add("fchoice.dbtype",$databaseType); $config.Add("fchoice.disableloginfromfcapp", "false"); $config.Add("fchoice.nocachefile", "true"); #Create and initialize the clarifyApplication object $ClarifyApplication = [Fchoice.Foundation.Clarify.ClarifyApplication]; if ($ClarifyApplication::IsInitialized -eq $false ){    $ClarifyApplication::initialize($config) > $null; } Code for re-use I didn’t want to repeat that in multiple scripts,…

Displaying text using a fixed width font in the Clarify Client

September 2, 2009   We received a request recently about how to deal with some text in the system that was formatted using a fixed width font.   For example, a customer might send in an email that contained some text that was laid out in a nicely formatted table structure. Such as this:   5.17637 |-----+-----+--------------+----------+--+-------+----------+-----+-----| | | JD00| firma ip | gumpendor| 1| Wien | Empfänger| fa. | 05.0| | | 0010| österreich | ferstr. | 0| | verzogen | nich| 8.20| | 5239| 4300| gmbh - | 19-21 | 6| | | t | 09| | 1478| 0140| | | 0| | | mehr| | | | 6959| | | | | | da!!| | | | 22 | | | | | | | | | | | | | | | | | | |-----+-----+--------------+----------+--+-------+----------+-----+-----|     But,…

Improving case history

January 12, 2009 The case history within Clarify has always been a bit of a sore spot with users for a long time. It was good - in that it made it easy to quickly review the details of the case. But, it did have its issues: Its just one giant text blob. You have no control over the formatting. Its in chronological order. Sometimes this is OK, but typically you scroll to the bottom to read the most recent activity. You don't have control over the timestamp format (DD/MM/YY vs. MM/DD/YY, as an example). The timezone of the timestamp isn't clear. It isn't easy to hide/remove certain entries. Its limited to 32K. If the case history his its 32K limit, users would see this message: THIS FIELD HAS EXCEEDED THE MAXIMUM LIMIT. THE ABOVE ENTRY MAY HAVE BEEN TRUNCATED. PLEASE REFER TO…

Rich Text in the Clarify Classic Client

December 18, 2008 Someone recently asked me if the Clarify Classic Client could handle rich text in multi-line text controls - i.e. can text be made bold, italics, use different fonts/colors, etc. Out of the box - no. Clarify handles plain text only. But, we can customize Clarify. One approach to this problem is to use an ActiveX control that supports rich text. As a proof-of-concept, I downloaded the SpellEditor RichTextBox RTF Control, and slapped it onto the Solution form. (There's a bunch of available controls out there. I'm not saying this is the best one, but it was sufficient to prove my concept.) I then added a bit of ClearBasic code: During form_load, take the description field contents from the solution's contextual object, and stuff it into the RTF text property of the control. During form_save, take the RTF text from the…