Satellite Forms 4.0 HotSync Tips

 

The Problem

Satellite Forms has changed its format significantly with version 4.0, causing some difficulty with the HotSync events.  In general this falls into one of two categories, the Active X events and SDK/RDK issues.  If you notice errors or have additions, please contact me.. 

 

Jon Blackman, M.D., M.S.

jab@teleport.com

 

ActiveX Events

GetTableFromPalmPilot and CopyTableToPalmPilot now take six parameters, with the following syntax:

 

GetTableFromPalmPilot(Filename As String, CreatorID as String, SDDI_Plugin_Name as String, CreateFlag as Integer, VersionMajor as Integer, VersionMinor As Integer)

 

CopyTableToPalmPilot(Filename As String, CreatorID as String, SDDI_Plugin_Name as String, CreateFlag as Integer, VersionMajor as Integer, VersionMinor As Integer)

 

Comments regarding the parameters:

 

Filename As String:  This is the full path to your file.  Example: c\program files\my app\TABLE1.mdb (or dbf).  Note that TABLE1 must be capitalized, as this portion of the string is case sensitive, and Satellite Forms creates all transfer tables in capitals. 

            Dim strPATH  As String

            Dim strTABLE1 as String

            strPATH = “c\program files\my app\”

            strTABLE1 = strPATH & “TABLE1”

 

CreatorID:  This is the Creator ID specified in SF App Designer Project Properties.  Use “SMSF” when using the SDK and your application specific ID when using the RDK.

            Dim strCreatorID As String

            strCreatorID = “SMSF”           ‘for SDK

            strCreatorID = “MYAP”          ‘for RDK

 

SDDI_Plugin_Name:  This is the name of the SDDI dll.  This is not case sensitive. 

            Dim strSDDI As String

            strSDDI = “Sddi_PalmDB.dll.

 

CreateFlag:  This is reserved for future use.  Use 0 (zero). Do not leave this blank. 

 

VersionMajor and VersionMinor:  This must match the parameters specified in SF App Designer Project Properties.

 

Another change is that the event is now preceded by the Call operator.  Your final code may look like the following:

 

Call GetTableFromPalmPilot(strTABLE1, strCreatorID, strSDDI,  0, 1, 0)

Call CopyTableToPalmPilot(strTABLE1, strCreatorID, strSDDI, 0, 1, 0)

SDK/RDK Issues

When you develop with the SDK, you will use a Creator ID of “SMSF” and you will not create an icon.

 

When you distribute your application with the RDK, you will have a unique CreatorID “MYAP” and you will create an icon within the App Designer.  This Creator ID must match the Creator ID that you specify in the RDKINST.EXE command line. 

 

You must have a mechanism in your application for determining the path on your user’s system and transmitting it to the ActiveX event.

 

You will distribute the SDDI file, among others, and your app needs to know where this is located.  This is taken care of for you if you use the SF two disk distribution method.  If you use your own install program, you will need to add three additional registry entries as specified in the documentation.  (Note that installing these on your development computer will temporarily disable SF App Designer.  You will need to go into the registry and change the HKEY_LOCAL_MACHINE\SOFTWARE\Puma Technology\Satellite Forms Enterprise\4.0\Path so it points to the BIN\SDDI\Sddi_PalmDB.dll for Satellite Forms EE. )

 

If your version changes, you must update this in your HotSync code.

 

Note that your transfer files have a prefix that includes the Creator ID and the version number.  If you develop with SMSF and distribute with MYAP, you will need to make sure that the correct files are saved and distibuted.