New COM APIs |
A summary of the new and changed APIs in 7.0
SOApplication
HWnd - Return window handle for window
- Windowname = blank, DocumentDlg, AppointmentDlg, PersonDlg, BookingDlg (appointment sub-dialog)
CurrentSoProtocol - Get/set GUI context via soprotocol
SetSoProtocol - Same as set protocol
GetArchiveInterface( provider, guiName) - access the archive grids shown in the GUI. Returns an ApplicationArchive.
SOContext
Get / Set - Set the SoProtocol - same as the CurrentSoProtocol name.
CurrentPanelName - return part of the SoProtocol
CurrentSubModeName - return part of the SoProtocol
CurrentMiniCardName - return part of the SoProtocol
CurrentArchiveName - return part of the SoProtocol
PersonArchive
IsLoading - is the archive loading?
ApplicationArchive - Generic archive wrapper
ProviderName - name of the NetServer class that is providing the data
GuiName - name to show on the archive tab
SoProtocol - name to use in the soprotocol
Restrictions - query constraints to limit which rows are shown
OptionalEntities - what types of data the provider contains
DesiredEntities - checkboxes in archive footer
Reload - force a reload of the archive
Cancel - stop loading
Show()
AllRows - get the list of rows
SelectedRows - the highlighted rows in the archive
ExportToExcel( mode, open, pathToFile ) - save archive as excel file
RowEntity - Exposes the rows in the archive
Database
Password - Obsolete, use SafeCredentials instead.
GetLocationList - Return resources that are locations
GetStagesForSaleType - For filtering the stages list correctly.
SafeCredentials - Ticket from NetServer
Contact, Person, Project, Sale, Appointment, Document
ExternalFieldChanged - Signal SOCRM that something has happened outside its world – will force a save on model object when AutoSave is triggered. Forces the main record to be updated when object is saved, even if no internal values have changed.
ValidationMessage - Signal SOCRM that Save should be blocked on the model object because of some reason.
AutoSaveOnFlush - Save changes when Flush is triggered
AutoSaveOnChangeIdentity - Save changes when identity is changed.
Contact
MergeTo - Merge this contact with another
Copy - Make a copy of this contact
Person
MergeTo - Merge two persons
MoveTo - Move a person to another contact
ChatAddresses - e-mail addresses of type 1
VoIPAddresses - e-mail addresses of type 2
Urls - homepage links and the like. Urls with person_id set
Associate
Groups - List all groups user is member of
Appointment
Sale - The sale this appointment is linked to
SuggestedAppointmentId - This appointment came from a sales guide.
Document
Sale - The sale this document is linked to
SuggestedDocumentId - This document came from a sales guide
ArchiveProviderName - string version of ArchiveProvider
Project
MergeTo
ActiveLinks – links to other projects, urls, documents etc
ProjectMember
Selection
[Enumerations.ESelectionType_EN] enum changed! Static, Dynamic, Combination
TargetTable - what this is a selection of
Completed - is the selection marked as done?
Sale
CanBeCompleted() – is the completed checkbox enabled? Requires status = lost or sold.
ReasonStalled - mdo list item
ReasonSold - mdo list item
ReasonLost - mdo list item
SaleType - mdo list item
Stage - mdo list item - valid stages vary according to SaleType - same as old Probability
GetSuggestedAppointments()
GetSuggestedDocuments()
Settings
HasLicense( licenseName ) – does user have access to license?
GetNumLicense( licenseName ) – total number of licenses
NetServerOverrides - return the NetServer config file settings needed to log in to the database.
SuperofConfigPath - return the path to the superoffice.config file
ActivityLinks
AddProject
RemoveProject
Projects
User
CredentialTypes - Returns a list of installed authentication providers. Default = CRM5/PASSWORD + ActiveDirectory
Credentials - List of authentications for user. Currently will only have one item in it.
AddCredential - adds new credential provider to list. Will automatically remove existing credentials. Currently we have only one credential per user, but in the future we hope to support multiple credentials per user.
RemoveCredential - removes a credential type from the user, leaving the user with no means of logging in.
Setting the password to "blah" is the same as saying
soUser.AddCredential "CRM5/PASSWORD", "blah", ""
Admin
AddSystemUser( name )
AddAnonymousUser( name )
You will need the appropriate admin license to create the user.
set sys1 = db.Admin.AddSystemUser("Sys01") sys1.Password = "foobar" sys1.save
Database
IStringResources.FromId( id )
1234 -> "bla bla"
StringResources.FromName( name )
"[SR_BLA]" -> "bla bla"
StringResources.FromString( string )
"[SR_XYZ][SR_BLA]:" -> "abc bla bla:"
set db = CreateObject("SuperOfficeDB.Database") msg = msg & db.StringResources.FromId(30979) & vbcrlf msg = msg & db.StringResources.FromName("[TIU_YEAR]") & vbcrlf msg = msg & db.StringResources.FromString("This is TIU_YEAR '[TIU_YEAR]'") & vbcrlf msgbox msg,,"Strings"
Contact Events
ContactBeforeMerge(SourceContactId, DestinationContactId ) ContactAfterMerge(ContactId) ContactBeforeCopy(ContactId) ContactAfterCopy(SourceContactId, DestinationContactId)
Person Events
PersonBeforeMove(PersonId, NewContactId) PersonAfterMove(PersonId) PersonBeforeMerge(SourcePersonId, DestinationPersonId) PersonAfterMerge(PersonId)
Sale Events
CurrentSaleStageChanged(oldStage, newStage) CurrentSaleTypeChanged(oldType, newType)
Project Events
ProjectBeforeMerge(SourceProjectId, DestinationProjectId) ProjectAfterMerge(ProjectId)
Up: What's new in 7.0 Prev: Move and merge Next: Sale management Edit