Changes

Jump to: navigation, search

API Sample Code

10,322 bytes added, 14:31, 15 July 2009
no edit summary
#REDIRECT The following are excerpts of API code written in Microsoft Visual Basic: <pre>Option Explicit Dim SmartSimple As New SmartComClient.ToolkitDim Session As SmartComClient.SessionDim Session2 As SmartComClient.SessionDim Userid As Long  Private Sub AccessCompanytable_Click() Dim CompanyFields As FieldInfos Dim Fields() As FieldInfo Set CompanyFields = SmartSimple.getFieldsInfo(Session, "companies", 0) Fields = CompanyFields.getFieldInfos MsgBox "There are " & UBound(Fields) + 1 & " associated with this table" End Sub Private Sub AccessContactsTable_Click() Dim ContactFields As FieldInfos Dim Fields() As FieldInfo Set ContactFields = SmartSimple.getFieldsInfo(Session, "contacts", 0) Fields = ContactFields.getFieldInfos MsgBox "There are " & UBound(Fields) + 1 & " associated with this table" End Sub Private Sub AccessUTAlevel1Data_Click()  Dim SupportRecords As ADODB.recordset 'check if user login already If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End If   Set SupportRecords = SmartSimple.GetRecordSet(Session, "levelone", "100073", "name,description", "") MsgBox SupportRecords.RecordCount & " Support Tickets in Recordset" SupportRecords.MoveLast SupportRecords.MovePrevious MsgBox SupportRecords.Fields(0).Value & ": " & SupportRecords("name") & " is the last name in the list" SupportRecords.MoveFirst MsgBox SupportRecords.Fields(0).Value & ": " & SupportRecords("Name") & " is the first name in the list" End Sub Private Sub AddNewContactRecord_Click() Dim para As New SmartComClient.Parameters 'check if user login already If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End If para.addField "userid", 0'If value is 0, anew record will be added para.addField "firstname", "Walter" para.addField "lastname", "Zimmerman" para.addField "phone", "416.555.1212" MsgBox SmartSimple.updateTable(Session, "contacts", para) End Sub Private Sub AddNewlevel1_Click()Dim readOnlyRs As ADODB.recordsetDim writeableRs As ADODB.recordsetDim rtn As LongSet Session = SmartSimple.LoginUser("alias", "SmartSimple.xxx", "userID/e-mail address", "password")Set readOnlyRs = SmartSimple.GetRecordSet(Session, "levelone", "100073", "name,description", "")Set writeableRs = SmartSimple.CloneUpdateRecordset(readOnlyRs)  writeableRs.AddNew writeableRs("name").Value = "Test level 1" writeableRs("description").Value = "Test Level 1 Description" writeableRs("opportunityid").Value = 0 writeableRs.Update  rtn = SmartSimple.updateTableByRecordSet(Session, "leveline", writeableRs, False)'False will loop thru whole recordset, tru will process current record only. End Sub Private Sub CheckSettings_Click() Dim LastLogin As String LastLogin = "Alias:" & SmartSimple.getLastLoginToken(Alias) & _ " URL:" & SmartSimple.getLastLoginToken(URL) & _ " User Name:" & SmartSimple.getLastLoginToken(UserName) MsgBox (LastLogin)End Sub   Private Sub CreateFieldsInTable_Click() Dim CompanyFields As FieldInfos Dim Fields() As FieldInfo Dim FieldName As String Dim I As Integer 'MS-Word Objects Dim FieldTable As Table Dim TableColumn As Column Dim NoRows As Integer Dim Row As Integer 'Extract fields Set CompanyFields = SmartSimple.getFieldsInfo(Session, "contacts", 0) Fields = CompanyFields.getFieldInfos 'Create MS-Word table based on number of fieldsNoRows = UBound(Fields)Set FieldTable = ActiveDocument.Tables.Add(Range:=Selection.Range, NumRows:=NoRows, NumColumns:=5) For I = 0 To UBound(Fields) - 1 FieldTable.Cell(I, 1).Select Selection.TypeText I FieldTable.Cell(I, 2).Select Selection.TypeText Fields(I).Name FieldTable.Cell(I, 3).Select Selection.TypeText Fields(I).FieldType FieldTable.Cell(I, 4).Select Selection.TypeText Fields(I).ID FieldTable.Cell(I, 5).Select Selection.TypeText Fields(I).FieldOptions Next IEnd Sub Private Sub DisplayError_Click() If SmartSimple.getLastErr <> "" Then MsgBox SmartSimple.getLastErr Else MsgBox "No Error Found" End IfEnd Sub Private Sub DisplayLevel2_Click() Dim SupportRecords As ADODB.recordset Dim SupportActivities As ADODB.recordset Dim TicketName As String Dim TicketID As Long Set Session = SmartSimple.LoginUser("alias", "SmartSimple.xxx", "userID/e-mail address", "password") Set SupportRecords = SmartSimple.GetRecordSet(Session, "levelone", "100073", "name,description", "") TicketID = SupportRecords.Fields(0).Value Set SupportActivities = SmartSimple.GetRecordSet(Session, "leveltwo", "100073", "subject,description", "objectid = " & TicketID) MsgBox "Number of Actions on the First Ticket: " & SupportActivities.RecordCount End Sub Private Sub DisplayUserDetails_Click() Dim para As SmartComClient.Parameters  If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End If Set para = SmartSimple.getData(Session, "contacts", 0, "userid,firstname,lastname,phone,rolelist", " email='" & "sampleuser@address.com" & "'") If para Is Nothing Then MsgBox SmartSimple.getLastErr ' Error return null object, normally invalid password or wrong url Else ' Storing primary key to a global variable used later for update Userid = Val(para.getValue("userid")) MsgBox "First Name: " & para.getValue("firstname") & vbCrLf _ & "Last Name: " & para.getValue("lastname") & vbCrLf _ & "Phone: " & para.getValue("phone") End If End Sub Private Sub DownLoadRecords_Click()Dim Records As String  'Records = SmartSimple.getDataFile(Session, "contacts", "firstname,lastname,title,phone", "isexternal=0")  End Sub  Private Sub GetCollection_Click() 'check if user login already If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End If  End Sub Private Sub GetNotes_Click()Dim Roles As SmartComClient.Roles Dim assoicate As New SmartComClient.associate  If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit SubEnd If  End Sub Private Sub GetRecordSet_Click() Dim ContactRecords As ADODB.recordset 'check if user login already If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End If  Set ContactRecords = SmartSimple.GetRecordSet(Session, "contacts", 0, "firstname,lastname,email", "email like '" & "*sampleaddress.com" & "'") MsgBox ContactRecords.RecordCount & " Records in Recordset" ContactRecords.MoveLast MsgBox ContactRecords("lastname") & " is the last name in the list" ContactRecords.MoveFirst MsgBox ContactRecords("lastname") & " is the first name in the list"End Sub Private Sub Logout_Click() If Session Is Nothing Then MsgBox "You are not logged into SmartSimple" Else SmartSimple.LogoutOut (Session) MsgBox "Logged out" End IfEnd Sub Private Sub NoPrompt_Click() Dim Alias As String, _ ServerURL As String, _ User As String, _ Password As String 'All values set in code Alias = "alias" ServerURL = "alias.smartsimple.xxx" User = "userID/e-mail address" Password = "password" Set Session = SmartSimple.LoginUser(Alias, ServerURL, User, Password)End SubPrivate Sub PasswordOnly_Click() Dim Password As String Password = InputBox("Enter Your Password") Set Session = SmartSimple.LoginUserWithLastSetting(Password)End SubPrivate Sub Prompt_Click() Dim Parameters As SmartComClient.Parameters If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End IfEnd Sub Private Sub SessionProperties_Click() If Session Is Nothing Then MsgBox "Session not Valid - Please Log in" Else MsgBox "Session Alias: " & Session.Alias & vbCrLf _ & "Server URL: " & Session.ServerURL & vbCrLf _ & "User Full Name: " & Session.ss_FullName & vbCrLf _ & "User Name: " & Session.User & vbCrLf _ & "UserID: " & Session.ss_UserID & vbCrLf _ & "Password: " & Session.Password & vbCrLf _ & "Organisation: " & Session.ss_CompanyName & vbCrLf _ & "OrganisationID: " & Session.ss_Companyid & vbCrLf _ & "Root Organisation: " & Session.ss_RootCompanyid, vbOKOnly, "Session Settings" End If End Sub Private Sub SSLEnable_Click()  SmartSimple.setSSL (True) End Sub Private Sub TwoSessions_Click()Set Session = SmartSimple.LoginUser("alias1", "SmartSimple.xxx", "e-mail address1", "password1")Set Session2 = SmartSimple.LoginUser("alias2", "SmartSimple.xxx", "e-mail address2", "password2")  End Sub Private Sub UpdateUserDetails_Click() Dim para As New SmartComClient.Parameters  If Session Is Nothing Then Set Session = SmartSimple.PromptLogin() End If If Session Is Nothing Then MsgBox SmartSimple.getLastErr Exit Sub End If  'Update Table para.addField "userid", Userid & "" para.addField "firstname", "New First Name" para.addField "lastname", "New Last Name" para.addField "phone", "555-1212" If SmartSimple.updateTable(Session, "contacts", para) = -1 Then MsgBox "Record Not Updated" Else MsgBox "Record Updated" End IfEnd Sub</pre> ==See Also==* [[API Code: Upload File to Custom Field]] [[Category:Integration]]
0
edits

Navigation menu