Class SY_Installation

Inherits

SY_Constant, SY_Password

Properties

LOCAL cSageDevCode$  
LOCAL cDeveloperCode$  
LOCAL extSOLUTIONS$  
LOCAL cDemoDataPrefixes$  
LOCAL cPayrollAppName$  
LOCAL cSystemModuleMergeCodes$="SY, CM, CU, PL, VI, "  

List of system wide module merge codes that require their conversion driver records to be merged before the module is installed. Used in MergeSystemConversionRecords().

LOCAL migPVX2PVX=1  

PVX to PVX Migration Type

LOCAL migPVX2SQL=2  

PVX to SQL Migration Type

LOCAL migSQL2SQL=3  

SQL to SQL Migration Type

LOCAL cUpdateTempFolder$  

Location in which to temporarily place the update files to be potentially installed. Files will be copied from here to the actuall installation location later. This folder is erased at the end of an update.

LOCAL cUpdateManifest$=cUpdateTempFolder$+DLM+"UpdateManifest.XML"  

Full path and name of manifest for Product Updates.

LOCAL cDD2TablesToSkip$=", PR1, PR3, PR8, PRD, PRE, PRH, PRK, PRT, PR_02, PR_25, PR_40, PR_41, JC1, JC8, JCD, JCG, JCI, JC_93, JC_H1, JC_H3, "  

Comma delimited list of DD2 table names to skip during RecompileALE()

PROPERTY MDInstallation  
PROPERTY StartingVersion   * Read Only *

[numeric] System version being upgraded from. Zero during new installs.

PROPERTY OldLMLevel   * Read Only *

[numeric] System version being upgraded from. Set to version being installed during new installs.

PROPERTY OldLMSubLevel   * Read Only *
PROPERTY OldVersion$   * Read Only *

[string] System version being upgraded from. Set to version being installed during new installs.

PROPERTY NewLMLevel   * Read Only *
PROPERTY NewLMSublevel   * Read Only *
PROPERTY NewVersion$   * Read Only *
PROPERTY SessionHandle   * Read Only *

Methods

FUNCTION CheckForClientServer()  
FUNCTION CheckForEnhancements()  
FUNCTION CompareUpdateManifest(logFileName$)  
FUNCTION CompareUpdateManifest(logFileName$, isReinstall)  
FUNCTION CompileDictionary(module$)  
FUNCTION ConfigureMAS200(installDirectory$)  
FUNCTION ConfigureMASTaskLauncher(installDirectory$)  
FUNCTION Finalize()  

Merges files and sets up default records for various files that are required in order to launch Sage 100 after installation.

ValueDescription
retSUCCESS(1) - Always returns success
FUNCTION FinalizePayroll()  
FUNCTION GetCompanyList(modCode$, companyList$)  
FUNCTION GetCurrentVersion$()  
FUNCTION GetCurrentVersion$(type$)  

Function to get the current system or payroll 2.0 version

ParameterDescription
type$ [input, string] Optional version type - system or payroll.
Returns [String]
ValueDescription
The current system or payroll 2.0 version.
FUNCTION GetEnhancedModuleList(moduleList$)  
FUNCTION GetEnhancedModuleList(moduleList$, path$)  
FUNCTION GetEnhancedModuleList(moduleList$, path$, includeVerticals)  
FUNCTION GetModuleLevels(modCode$, modLevel100, convLevel100, sublevel, svcPack)  
FUNCTION GetModuleLevels(modCode$, modLevel100, convLevel100, sublevel, svcPack, svcUpd)  
FUNCTION GetModuleLevels(modCode$, modLevel100, convLevel100, sublevel, svcPack, svcUpd, buildNo)  
FUNCTION GetNewLMLevels(newLevel, newSublevel)  
FUNCTION GetNewLMLevels(newLevel, newSublevel, buildNumber)  
FUNCTION GetNewVersion$()  
FUNCTION GetOldLMLevels(oldLevel, oldSublevel)  
FUNCTION GetOldLMLevels(oldLevel, oldSublevel, buildNumber)  
FUNCTION GetOldVersion$()  
FUNCTION GetPDFConverterInfo(name$, driver$, printer$, version$)  

Function to return values needed to make use of the Amyuni PDF Converter

ParameterDescription
name$ [output, string] Returned value of Name
driver$ [output, string] Returned value of Driver
printer$ [output, string] Returned value of Printer
version$ [output, string] Returned value of Version
ValueDescription
retTRUE (1) - method returns success
FUNCTION GetProductVersion(productVersion$)  

Function called by the 5.0 update installer to get the current product version.

ParameterDescription
productVersion$ [output, string] Returned value of SY_System.Version$ in the format #.##.#.#
Returns [Boolean]
ValueDescription
retFALSE (0) - if SY_System.Version$ could not be retrieved
retTRUE (1) - if the version was retrieved normally
FUNCTION GetRegistration(company$, reseller$, serial$, custID$, userKey$, prodKey$)  
FUNCTION GetSessionExisted()  

Returns the value of the cSessionExisted flag

FUNCTION GetStartingVersion()  
FUNCTION GetStartingVersion(type$)  

Function to get the system version being upgraded from

ParameterDescription
type$ [input, string] Optional version type - system or payroll.
Returns [Numeric]
ValueDescription
The System Version being upgraded from. Zero during new installs.
FUNCTION Install(modCode$)  
FUNCTION Install(modCode$, skipActivityLog)  
FUNCTION Install(modCode$, skipActivityLog, onlineInstall)  

Function called by the installer to install a module

ParameterDescription
modCode$ [input, string] Module Code for Module being installed.
skipActivityLog [input, numeric] {optional} Flag indicating if the activity log will be written to for Module installation
onlineInstall [input, numeric] {optional} Flag indicating this is an online installation
Returns [Boolean]
ValueDescription
retSuccess (1) - Always returns success
FUNCTION InstallAuxiliaryManifest(auxiliaryManifest$)  

Updates the InstallationX.XX.xml manifest with all the file nodes contained in the provided auxiliary manifest. This method is used to combine the contents of the Payroll 2.0 manifest with the InstallationX.XX manifest, which is necessary when Payroll is installed from the Sage 100 DVD, which does not employ the "update" logic which the stand-alone Payroll 2.0 installation does.

ParameterDescription
auxiliaryManifest$ [input, string] Full path and file name of the auxiliary manifest.

$returns [bool]

ValueDescription
retSUCCESS If the manifest was installed successfully, otherwise retFAILURE.
FUNCTION InstallUpdateFiles()  
FUNCTION InstallUpdateFiles(isReinstall)  
FUNCTION IsInstalled(modCode$)  
FUNCTION OverrideSessionExisted(sessionExisted)  

Function called to ensure the session object gets dropped when SetPreserveSession() was used to override cSessionExisted.

ParameterDescription
sessionExisted [input, bool] Session existed true/false.
Returns [nothing]
FUNCTION ParseInstallShieldString$(string$)  
FUNCTION Prepare()  
FUNCTION Prepare(forceActivation)  
FUNCTION Prepare(forceActivation, oldLevel$)  
FUNCTION PrepareForPayroll()  
FUNCTION ProductUpdatePreScan(company$, preScanLogFile$)  
FUNCTION ProductUpdatePreScanCloseLog()  
FUNCTION RegisterProvideX()  
FUNCTION ResetCompanyLevels()  

Function called by the 5.0 update installer to reset the SY_Company.CompanyLevel to zero for all companies. Resetting the company levels is normally performed by the Finalize() method. If a hotfix (and even a PU) does not require the full install/merge logic, this method may be used instead of calling Finalize().

ParameterDescription
productVersion$ [input, string] Hotfix or PU version which will be written to SY_System.Version$. Use the format #.##.#.#
Returns [Boolean]
ValueDescription
retFALSE (0) - if SY_System.Version$ could not be updated
retTRUE (1) - if the version was updated normally
FUNCTION ResetPayrollEULADisplayState()  

Called by installer to reset the Payroll EULA Display state and force display of EULA after install/update

ValueDescription
retSUCCESS(1) - Always returns success
FUNCTION SetDeveloperCode(devCode$)  
FUNCTION SetMigrateSystemFiles(setting)  
FUNCTION SetMigrationObject(oMigration)  

Called by the ON_CREATE of the migration object to set a handle to itself in the installation object.

ParameterDescription
oMigration [input, object] The handle to the creating migration object.
Returns [nothing]
FUNCTION SetMigrationType(migType)  

Called by the migration object to set the migration type being performed. This setting will govern how tables are created, opened, etc, during various operations of the migration.

ParameterDescription
migType [input, numeric] 1 = Pvx to Pvx, 2 = Pvx to Sql, 3 = Sql to Sql
Returns [nothing]
FUNCTION SetPrePayroll2ConversionToIgnore()  
FUNCTION SetPreserveSession(preserveSession)  

Function used to set the internal cPreserveSession flag which will control whether the current session is preserved when an instance of this class is dropped.

ParameterDescription
preserveSession [input, bool] Preserve session true/false.
Returns [nothing]
FUNCTION SetProductVersion(productVersion$)  

Function called by the 5.0 update installer to update the product version to the version for the hotfix or PU being installed.

ParameterDescription
productVersion$ [input, string] Hotfix or PU version which will be written to SY_System.Version$. Use the format #.##.#.#
Returns [Boolean]
ValueDescription
retFALSE (0) - if SY_System.Version$ could not be updated
retTRUE (1) - if the version was updated normally
FUNCTION SetSecurity()  
FUNCTION SetSecurity(password$)  
FUNCTION SetSQLSettings(sqlServerName$, isTrustedConnection, sqlLogin$, sqlPassword$)  
FUNCTION SetSQLSettings(sqlServerName$, isTrustedConnection, sqlLogin$, sqlPassword$, sqlDriver$)  

Function called by the Sage 100 Server installer to

ParameterDescription
sqlServerName$ [input, string] SQL Server\Instance name specified during installation
isTrustedConnection [input, bool] True if Windows (trusted) connection was specified during installation
sqlLogin$ [input, string] SQL logon specified if Windows (trusted) connection was not selected
sqlPassword$ [input, string] Password for SQL logon if Windows (trusted) connection was not selected
sqlDriver$ {optional} [input, string] Specify which ProvideX SQL driver will be used to run the product.

Either [ado] for SQLOLEDB provider, or [sql] for SQL Native driver. Default is SQL native driver.

Returns [Boolean]
ValueDescription
retFALSE (0) - if massql.settings could not be created
retTRUE (1) - if massql.settings was created normally
FUNCTION Uninstall(moduleCode$)  
FUNCTION Uninstall(moduleCode$, ignoreModuleData)  
FUNCTION UninstallNotifications()  

Fuction called by InstallShield's uninstall to notify the system that the application is being uninstalled so email and other notifications can be turned off.

FUNCTION UpdateInstallationManifest(fileName$, filePath$)  

Function called by the 5.x update installer to update the installation manifest for files that are "pre-installed" or not part of the normal update installation.

ParameterDescription
fileName$ [input, string] Name of the file to update the manifest for.
filePath$ [input, string] Full/absolute path of the file to update the manifest for.
Returns [Boolean]
ValueDescription
retFAILURE (0) - if the installation manifest could not be updated
retSUCCESS (1) - if the installation manifest was updated normally
FUNCTION UpdateServicePack(moduleCode$, svcPack)  
FUNCTION WriteLog(text$)  
FUNCTION WriteRegistration()  
FUNCTION WriteRegistration(prodKey$)  
FUNCTION WriteRegistration(company$, reseller$, serial$, custID$, userKey$, prodKey$)  

Function called by Install Shield to create or update the registration information in the system record and then call SY_Registration'RegisterModules which among other things, updates the subscription expiration dates and payroll tier record.

ParameterDescription
company$ [input, string] Sage customer's company name
reseller$ [input, string] Sage customer's reseller name
serial$ [input, string] Customer's serial number
custID$ [input, string] Customer's Id
userKey$ [input, string] User key
prodKey$ [input, string] And product key
ValueDescription
retFAILURE (0) - if an error occurred or the registration was not saved.
retSUCCESS (1) - if the registration information was saved

Properties inherited from: SY_Constant

retFAILURE, retSUCCESS, retNEW, retWARNING, retCANCEL, retYES, retNO, msgYES$, msgNO$, msgCANCEL$, msgOK$, msgRETRY$, msgABORT$, msgIGNORE$, msgNOTONFILE$, msgTIMEOUT$, msgDISABLE, msgACTIVE, msgLinkHELP$, msgLinkMSG$, isFALSE, isTRUE, isYES$, isNO$, isBUSY$, edtNONE, edtEXISTS, edtNEW, ctlDISABLE, ctlENABLE, ctlSHOW, ctlHIDE, ctlLOCK, ctlUNLOCK, ctlLOCKORDISABLE, ctlUNLOCKORENABLE, popHIDE, popDISABLE, popSHOW, popSHOWCHECKED, grdMODEVIEW, grdMODEMAINT, grdMODEADD, filCREATE, filLOCK, filCREATELOCK, filGLOBAL, filCREATEGLOBAL, filLOCKGLOBAL, filCREATELOCKGLOBAL, filCHANNEL, filRAW, filPURGE, filLOAD, filINPUT, filNOOBJECT, filPVX, filREFRESH, filPVX4$, filPVX5$, pthCOMPANY$, pthOTHERCOMPANY$, pthPRCOMPANY$, pthOTHERPRCOMPANY$, pthSYSTEM$, pthUSER$, pthSOA$, pthHOME$, pthROOT$, pthDICTIONARY$, pthTEXTOUT$, pthLOCK$, pthLOCKSYS$, pthPREFIX$, pthARCHIVE$, pthLOGFILES$, folderCOMMONPROGRAMFILES, folderCOMMONAPPLICATIONDATA, errOBJECT, errSYSTEMLOCK, errCONTINUE, errEMBEDDEDIO, errSYSLOCK, extSQLCREATETABLE$, extSQLALLOWNULLDATES$, dbALL$, dbNONE$, dateTOSTRINGFORMAT$, dateLONGMASK$, dateSHORTFMT, dateLONGFMT, dateYEARFIRST, dateMONTHFIRST, dateDAYFIRST, timeMINUTESMASK$, timeMINUTES24MASK$, timeSECONDSMASK$, timeSECONDS24MASK$, idxPRIMARY$, idxBATCH$, idxDISPLAY$, dirFIRST, dirLAST, dirNEXT, dirPREVIOUS, typALPHANUM, typZEROFILL, typCHARNUM, typMASTERNUM, typALPHANUMNF, typMASTERNUMC, typALPHA$, typNUMBERS$, typALPHANUM$, typALPHANUMNF$, typCHARNUM$, typMASTERNUM$, typMASTERNUMCLEN, modTASKOTFDISALLOW$, logALLACTIVITY$, logACTIVITY$, logERROR$, logACTNEWCUSTOMER$, logACTDATASYNC$, logACTDATAIMPORT$, logACTOPTIONCHANGED$, logACTPROGRAMLAUNCH$, logDFDM$, logSECURITY$, logTASKSCHEDULER$, logWEBERROR$, logVISUALINTEGRATOR$, logEntryIDLength, chkOFF$, chkON$, chkGRAYED$, secVIEWONLY, secCREATEONLY, secMODIFYONLY, secCREATEMODIFY, secDELETEONLY, secCREATEDELETE, secMODIFYDELETE, secFULLACCESS, secDEFAULTUSER$, secDEFAULTROLE$, regHKEY_CLASSES_ROOT, regHKEY_CURRENT_USER, regHKEY_LOCAL_MACHINE, regHKEY_USERS, regHKEY_CURRENT_CONFIG, regODBC_PATH$, regMAS_PATH$, E3_MYHANDLE, E3_TASK, E3_QUIT, E3_COCHANGE, E3_DATECHANGE, E3_USERCHANGE, E3_SRVRPATH, E3_HELPFILE, E3_TECHSUPPORT, E3_QUERYTOQUIT, E3_SUPERVISOR, E3_CUSTOMIZE, E3_SWITCHMODULE, E3_DISABLEWIN, E3_CURSOR, E3_USERID, E3_PRIVATETASK, E3_CHAT, E3_BROADCAST, E3_RELOAD, E3_PASSTHROUGH, E3_EXECUTE, E3_EXPCOCHANGE, E3_EXPTASK, E3_EXPLAUNCH, E3_SILENT, E3_DIRECT, E3_NODELIST, E3_OCXITEM, E3_MODULEID, E3_CUSTFAV, E3_HOMEPAGE, E3_MINIMIZE, E3_UNDOCKED, E3_DOCKED, E3_PUBLICTASK, E3_LAUNCHURL, E3_BTNCHANGE, E3_STDBTNRELOAD, E3_MYBUSINESS, E3_REGLOADED, E3_LOADED, E3_V4TASK, E3_PUBMODIFY, E3_TASKRELOAD, E3_SETAUTOHIDE, E3_COCHANGE2, E3_TASK_NC, E3_V4TASK_NC, E3_TASK_ALTC, E3_V4TASK_ALTC, E3_PASSWORD, E3_LAUNCHVIEW, E3_LAUNCHBIETASK, E3_CLEANUPBIE, E3_STARTVIEW, E3_BIE_ADMIN, E3_HELPPATH, E3_CUSTOMERID, E3_MASVERSION, E3_LAUNCHEMBEDDED, E3_LAUNCHERMENU, E3_APP_POINTSIZE, E3_LAUNCHERVERSION, E3_DISABLE, E3_ENABLE, E3_SHOW, E3_HIDE, E3_REFRESH, E3_LIBMASTER, WM_COPY, wtsINITIALPROGRAM, wtsAPPLICATIONNAME, wtsWORKINGDIRECTORY, wtsOEMID, wtsSESSIONID, wtsUSERNAME, wtsWINSTATIONNAME, wtsDOMAINNAME, wtsCONNECTSTATE, wtsCLIENTBUILDNUMBER, wtsCLIENTNAME, wtsCLIENTDIRECTORY, wtsCLIENTPRODUCTID, wtsCLIENTHARDWAREID, wtsCLIENTADDRESS, wtsCLIENTDISPLAY, wtsCLIENTPROTOCOLTYPE, thmNORMAL, thmMETAL, thmOLIVE, rptREPORTTYPESTD, rptREPORTTYPELABEL, rptREPORTTYPEMULTCOL, rptISTRUE, rptISFALSE, rptISDEFAULT, rptPORTRAIT, rptLANDSCAPE, rptASCENDING, rptDESCENDING, rptRIGHTALIGN, rptLEFTALIGN, rptHORCENTERALIGN, rptLSSINGLELINE, rptSTSUM, rptSTAVERAGE, rptSTCOUNT, rptDFLTHSPACING, rptDFLTVSPACING, rptDFLTFONTSIZE, rptDFLTLEFT, rptDFLTTOP, rptTWIPSPERCHARW, rptTWIPSPERCHARH, rptSVTREPORTTITLE, rptEDTDISKFILE, rptGCANYVALUE, rptGCDAILY, rptCRDATEFIELD, rptCRDATETIMEFIELD, crEFTCrystalReport, crEFTRichText, crEFTWordForWindows, crEFTExcel, crEFTPortableDocFormat, crEFTHTML32, crEFTHTML40, crEFTExcelRecord, crEFTText, crEFTCharacterSeparatedValues, crEFTTabSeparatedText, crEFTEditableRTF, crEFTXml, crEFTRPTR, crEFTExcelWorkbook, cContextKeyLen1, cContextKeyLen2, cContextKeyLen3, adCmdText, adCmdStoredProc, adClipString, adExecuteNoRecords, adVarChar, adInteger, adParamInput, adParamOutput, adParamInputOutput, adParamReturnValue, adTextNoRecords, adOpenForwardOnly, adOpenStatic, adLockReadOnly, adUseServer, adUseClient, dbTMP$, dbTEMPDB$, dbSYSDB$, dbPVXDDF, dbPVXDB, dbMYSQL, dbADO, dbSQL, LastErrorMsg$, LastErrorNum$, SageCloudAppDesc$, IolNomads$

Methods inherited from: SY_Constant

GetNOMADSIolist$(), MaskString(), RawString(), ClassValidateEMailAddress(), dateTODAY$(), Element$(), fmtMODCODE$(), fmtMODPREFIX$(), PERFORM FunctionBreak(), GetExceptionMsg$(), GetFileName(), GetJobTitles(), GetPrinterProps(), GetRecordCount(), isALPHA(), isDATE(), isNUMERIC(), MsgPath$(), ParseString(), ParseTagField(), Position(), QUO$(), ValidateFormatType(), ZeroFill$()