Using Dovetail SDK Using Visual Basic.Net
A customer recently asked for a code example demonstrating how to use our Dovetail SDK to do data access custom objects using Generics (the Dovetail kind not the C# kind)
Imports FChoice.Foundation.Clarify
Imports System.Collections.Specialized
Imports FChoice.Foundation
Imports NUnit.Framework
Module SDKExample
<TestFixture()> Public Class SDK_test
<Test()> Public Sub update_case_title()
InitializeDovetailSDK()
UseGenericToUpdateExistingCaseTitle("1", "new title")
End Sub
End Class
Sub InitializeDovetailSDK()
Dim config As New NameValueCollection
'These are hard coded database credentials. More typically you'd use application
configuration
config.Add("fchoice.dbtype", "mssql")
config.Add("fchoice.connectionstring", "Data Source=.; Initial Catalog=SDKcl125_2k5;
User Id=sa; Password=sa;")
ClarifyApplication.Initialize(config)
End Sub
Sub UseGenericToUpdateExistingCaseTitle(ByVal caseId As String, ByVal title As String)
Dim session As ClarifySession
session = ClarifyApplication.Instance.CreateSession("sa", "sa", ClarifyLoginType.User)
Dim dataset As New ClarifyDataSet(session)
Dim caseGeneric As ClarifyGeneric
caseGeneric = dataset.CreateGeneric("case")
caseGeneric.AppendFilter("id_number", StringOps.Equals, caseId)
caseGeneric.Query()
If caseGeneric.Rows.Count < 1 Then
Throw New ApplicationException(String.Format("Case {0} was not found.", caseId))
End If
caseGeneric.Rows(0)("title") = title
dataset.Update(caseGeneric)
End Sub
End Module
Here is code that uses Dovetail generics to connect to a database, located and update the title of a case. Here is a gist of this code snippet in case I evolve it in the future.
