|
Sociogram
is not just an
interactive program for
entering data and
plotting sociograms. It
also has a callable
interface capable of
plotting data from
external programs.
Sociogram exposes a
straightforward
interface that allows
programs developed in
almost any Windows based
language to control the
whole process.
The
program is compiled as
an ActiveX exe. This
makes it as simple to
run remotely from your
own developed code as it
is to run it
interactively. The
process of controlling
Sociogram through the
ActiveX exe interface is
straightforward.
First
create a Sociogram
object
Set MyLink = CreateObject("Sociogram.SocioLink")
Give the dataset a name
MyLink.SocioName = "Testing Only"
And identify the source
(just use the name of your application or database)
MyLink.SocioSource = "Mickey"
Identify the question that was used in your ‘survey’
MyLink.SocioQuestion = "Who do you want to dance with?"
The number of choices allowed (How many people can be chosen by the
person answering.
MyLink.SocioChoices = 2
Set the criterion (Identify positive only, negative only, or both)
MyLink.SocioCriterion = 1 (SocioPositive = 1, SocioNegative = 2,
SocioBoth = 3)
Set the size of the group (members)
MyLink.SocioGroupSize = 10
Create the sociogram
WorkFlag = MyLink.CreateSocioGram()
Now for some data. In this example the data is "hard coded"
but your data would come from a table or data entry form
For RowLoop = 1 To MyLink.SocioGroupSize
For ColLoop = 1 To MyLink.SocioChoices
' Some code here that reads your results and sets Svalue
(From grid, recordset, form, etc)
WorkFlag = MyLink.AddSocioData(RowLoop, 1, ColLoop, Svalue)
' Add each bit of data (GroupMember, Criteria, Choice, ChosenMember)
Next ColLoop
Next RowLoop
Now we have done all the work, let’s display it.
WorkFlag = MyLink.ShowSociogram(0, True)
' ShowType As SocioType, ShowKey As Long (
SocioCircle = 0, SocioRandom = 1, SocicioSquare = 2,
SocioTarget = 3, Key = True/False)
Example Source Code
The code examples can be downloaded by clicking on the relevant link
below. The Visual Basic (version 6) example is probably the best
"generic" code sample for those working in other languages.
The second example shows how to use Visual Basic for Applications (VBA) and
should be easily adaptable for use from an Excel spreadsheet as well as
from the example Access database.
Visual Basic Source Code Sample
MS Access VBA Sample
Technical Documentation
Types of display
Enum SocioType
SocioCircle = 0
SocioRandom = 1
SocioSquare = 2
SocioTarget = 3
End Enum
Types of Criteria
Enum SocioCriterionType
SocioPositive = 1
SocioNegative = 2
SocioBoth = 3
End Enum
The class members
Public SocioError As Variant
Public SocioGroupSize As Variant
Public SocioChoices As Variant
Public SocioCriterion As SocioCriterionType
Public SocioName As Variant
Public SocioQuestion As Variant
Public SocioSource as Variant
The class methods
Public Function CreateSocioGram() As Long
Public Function AddSocioData(ByVal GroupMember As Long,
ByVal Criteria As SocioCriterionType, ByVal Choice As Long,
ByVal ChosenMember As Long) As Long
Public Function ShowSocioGram(ByVal ShowType As SocioType,
Optional ByVal ShowKey As Long) As Long
Public Function CopySocioGram() As Long
(warning, timing issue on this method:currently only
works when display is visible)
Public Function LocateSocioMember(ByVal GroupMember As Long, X
As Long, Y As Long) As Long
Public Sub CloseSocioGram()
|