Sw4   >   About   >   Version 2006-12-31
The following is a summary of the major changes include in this release:
See the additional topics in this section for details of all the modifications made in this release.
To update to this new release:
If you have not modified your main library Startup_Task follow these instructions to update your main library Startup_Task for use with this new release.
If you have modified your main library Startup_Task follow these instructions to update your main library Startup_Task for use with this new release.
; Open a working message.
Calculate workingmssg as con(kCr,'Starting up application')
Working message /-1072741743,-1072741739;50;0;0 {[workingmssg]}
; The main libary startup task has two important jobs to complete before doing anything else.
; 1. Open the application's libraries. (Any libraries located inside the 'libraries' folder and subfolders)
; 2. Open the studioworks folder libraries.
; The application can not function without the SW libraries open.
; 1. Open the application's libraries.
Do $cinst.$openAppLibraries() Returns FlagOK
If FlagOK
; 2. Open the SW libraries.
Do $cinst.$openSWLibraries() Returns FlagOK
If FlagOK
; Now that the SW libraries are open we can proceed with the default construct method.
; Forward the call to $constructMethod (so that the $construct method code can be subclassed from swBase)
Do ioStartupTaskDefaultMethods.$constructMethod(bRebuildLists) Returns FlagOK ;; @MOD:2
End If
End If
Close working message
Any StudioWorks framework kObject type task variables in your main library's Startup_Task will be switched to kObjectRef type variables and instantiated by the $constructMethod of oStartupTaskDefaultMethods.
The $destructMethod of oStartupTaskDefaultMethods takes care of deleting the object reference instances when the main library's Startup_Task is closed.
You do not need to make any code change to your web module if you have created one. The oRemoteTaskMethods object is able to make the remote task task variable changes automatically.Follow these instructions to update your existing StudioWorks application to implement the new security features included with this release.
If you have not modified your SysAdmin module:
If you have modified your SysAdmin module:
After you have complete the above:
; Redirect to the startup task default methods object.
Do redirect ioStartupTaskDefaultMethods Returns FlagOK
If FlagOK
Do method checkPasswordExpired Returns FlagOK
If FlagOK
Do method initializestartTimeoutTimer Returns FlagOK
End If
End If
If not(FlagOK)
Do errhndlr.$promptonceLastError()
End If
Quit method FlagOK
SecurityTimeout_Task/$#About (2006-12-05 Doug K.)
Created security timeout task class which can be used by multiple StudioWorks applications.
oAppPrefs/$#About (2006-07-13 Doug K.)
Removed the cached lists from the sAppPrefs_listdef schema class so that they are not held in the pref row. The cached lists are now manually mantained by the oAppPrefs object class property methods. This change has been made for better memory management.
oAppPrefs/$:iconslist (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:iconslist.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$:menulineslist_windows (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:menulineslist_windows.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$:reportslist (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:reportslist.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$:sqllistsforeignkeycolslist (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:sqllistsforeignkeycolslist.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$:sqllistsmasterlist (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:sqllistsmasterlist.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$:stringtables_masterlist (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:stringtables_masterlist.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$:windowslist (2006-07-13 Doug K.)
Fetch the cached list directly from Cachedlist table. Better memory management.
oAppPrefs/$:windowslist.$assign (2006-07-13 Doug K.)
Save cached list directly to the Cachedlist table. Better memory management.
oAppPrefs/$_init_prepareCachedlistTable (2006-07-13 Doug K.)
Added 'Cachedlist' table for storing each cached list in a separate record of the 'Cachedlist' table. Better memory management.
oAppPrefs/$_retCachedList (2006-07-13 Doug K.)
Added method for returning an individual cached list from the 'Cachedlist' table. Better memory management.
oAppPrefs/$_saveCachedList (2006-07-13 Doug K.)
Added method for saving an individual cached list to the 'Cachedlist' table. Better memory management.
oAppPrefs/$initialize (2006-07-13 Doug K.)
Added 'Cachedlist' table for storing each cached list in a separate record of the 'Cachedlist' table. Better memory management.
oConstants/$:AppLibsList (2006-07-12 Doug K.)
Add $cando to test for $:Version method before sending message to oVersion object.
oConstants/$:AppLibsList (2006-11-22 Doug K.)
Added setting the liblabel and libtooltip column values for the AppLibsList.
oConstants/$:WebAppLibName (2006-12-07 Doug K.)
Modified method to default checking for the web library as replace(MainLibName,'Main','Web')
oCreateLibrary/$addVersionsObjectsToAppLibs (2006-07-12 Doug K.)
Added programmer menu line for adding oVersion objects to all of the application's libraries.
oCreateLibrary/$createNewModule (2006-07-24 Doug K per Chuck M.)
Set the library properties a second time. Sometimes they aren't getting set the first time.
oCreateLibrary/_checkcreateParentFolder (2006-08-28 Doug K.)
Created a separate method to support multiple level folders.
oCreateLibrary/_copyClass (2006-08-28 Doug K.)
Moved code for creating parent folders to a separate method 'checkcreateParentFolder' to support multiple level folders.
oDBAdminMethods_SQLSERVER/$copyData (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oDBAdminMethods_SQLSERVER/$copyData (2006-11-15 Doug K.)
Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.
oDBAdminMethods_abstract/$_moveData (2006-07-24 Doug K. per Andy H.)
Define the 'List' variable using $definefromsqlclass rather than sending a $retDefinedList to oSQLLists. This avoids possible problems if oSQLLists hasn't been initialized or the user hasn't logged on yet.
oDBAdminMethods_abstract/$_sortSchemasByForeignKeyScore (2006-11-15 Doug K.)
Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.
oDBAdminMethods_abstract/$copyData (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oDBAdminMethods_abstract/$insertEmptyRecords (2006-07-14 Doug K.)
Sort the schemas list by foreign key score for inserts before doing the inserts.
oDBAdminMethods_abstract/$insertEmptyRecords (2006-07-24 Doug K per Andy H.)
Leave the LoopFlagOK alone if zero is not allowed. This is not an error. It was being set to kFalse.
oDBAdminMethods_abstract/$retDAMTablesAndViewsList (2006-08-15 Doug K per Andy H.)
Added 'tablesownername' to the $tables parameters.
oDBAdminMethods_abstract/$retPrimaryKeysList (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oDBAdminMethods_abstract/$retPrimaryKeysList (2006-07-28 Doug K.)
Remove the 'sRefs' schema class from the schemas list if the Refs table is being used to track and set the primary keys.
oDBAdminMethods_abstract/$retPrimaryKeysList (2006-12-31 Doug K per Andy H.)
Bug fix. Changed 'Calculate as' to 'Do'.
oDBAdminMethods_abstract/$setPrimaryKeyCounterValue (2006-07-28 Doug K.)
If Refs is used to track pkeys then don't attempt to set the pkey for the 'Refs' table as this causes a tailspin.
oDBAdminMethods_abstract/syncDatabaseTablesToSchemas (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oDBAdminMethods_abstract/syncDatabaseTablesToSchemas (2006-11-15 Doug K.)
Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.
oDBAdminSQLText_SQLSERVER/$retSQL_AlterColumn (2006-07-14 Doug K. per Andy H.)
Bug fix. Changed ALTER COLUMN to ALTER TABLE.
oEncryptDecrypt/$decryptList (2006-09-12 Doug K.)
Change pEncryptedString to pfEncryptedBinVar to solve problem with Omnis 4.2 blowfish object.
oEncryptDecrypt/$decryptRow (2006-09-12 Doug K.)
Change pEncryptedString to pfEncryptedBinVar to solve problem with Omnis 4.2 blowfish object.
oEncryptDecrypt/$decryptString (2006-09-12 Doug K.)
Change pEncryptedString to pfEncryptedBinVar to solve problem with Omnis 4.2 blowfish object.
oEncryptDecrypt/$encryptList (2006-09-12 Doug K.)
Changed return value from EncryptedString to EncryptedBinVar to solve problem with Omnis 4.2 blowfish object.
oEncryptDecrypt/$encryptRow (2006-09-12 Doug K.)
Changed return value from EncryptedString to EncryptedBinVar to solve problem with Omnis 4.2 blowfish object.
oEncryptDecrypt/$encryptString (2006-09-12 Doug K.)
Changed return value from EncryptedString to EncryptedBinVar to solve problem with Omnis 4.2 blowfish object.
oFunctions/$isNullBlankZero (2006-09-20 Doug K per Andy H)
Bug fix. The test would return false if a character variable was passed in with zero as the character. Added | OR pick() to solve it. Added |pick(isnull(pfVariable),pfVariable,'0')='0' to catch this situation.
oIcons/$initialize (2006-07-13 Doug K.)
Remove the early exit points. Merge rather than copy the incoming icons list.
oLogon/$commit (2006-07-28 Doug K.)
Added method to commit the session transactions. (for kSessionTranManual).
oLogon/$retDBTablesList (2006-08-15 Doug K per Andy H.)
Added 'tablesownername' to the $tables parameters.
oLogon/$rollback (2006-07-28 Doug K.)
Added method to rollback the session transactions. (for kSessionTranManual).
oLogon/$transactionmode (2006-07-28 Doug K.)
Added methods to get and set the session transaction mode. (kSessionTranAutomatic or kSessionTranManual) If you have a method which sets the session to manual transactions be sure method always returns it to automatic transactions.
oLogon/$transactionmode.$assign (2006-07-28 Doug K.)
Added methods to get and set the session transaction mode. (kSessionTranAutomatic or kSessionTranManual) If you have a method which sets the session to manual transactions be sure method always returns it to automatic transactions.
oLogonMethods/$logon (2006-07-25 Doug K.)
Set the session row username and password to be the actual name and password used to logon rather than the parameters pUser and pPassword. If tablesownerlogon is true it will be the tables owner user name and password.
oMetaDataFindAndReplace/searchColsMetaData (2006-08-03 Doug K per Andy H.)
Added 'lookupwhere,listalign,decoratortype,formatstring,formatmode,inputmask,reportformatstring,reportformatmode' to the columns to be searched.
oMetaDataFindAndReplace/searchColsMetaData (2006-08-30 Doug K per Andy H.)
Added 'lookupsqlclassname' to the columns to be searched.
oPrepareNewDatabase/_addUsersToDBUsers (2006-07-28 Doug K.)
Removed early exits.
oPrepareNewDatabase/_setPkeyCounters (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oRebuildCachedLists/$rebuildSQLLists (2006-07-14 Doug K.)
Removed redundant code which was already being handled by the called methods.
oRebuildCachedLists/$reloadStringTables (2006-09-12 Doug K.)
Update the application preferences object properties after recalc tooltips and text.
oRebuildCachedLists/$reloadStringTables (2006-12-04 Doug K.)
Added recalc of the main menu of the current task so that reload of string tables is immediately reflected in the main menu.
oRebuildCachedLists/$reloadStringTablesMetaDataOnly (2006-07-14 Doug K.)
Added error checking after assigning cached lists values to the app_prefs object.
oRebuildCachedLists/$reloadStringTablesMetaDataOnly (2006-12-04 Doug K.)
Added recalc of the main menu of the current task so that reload of string tables is immediately reflected in the main menu.
oRebuildCachedLists/$saveAppPrefs (2006-07-14 Doug K.)
Modified the method to use the new strategy for saving shared app prefs cached lists. The developerappprefsrow has been removed from the local prefs schema and object.
oRebuildCachedLists/$sortSchemaClassCols_Wn_Mn_Icons (2006-07-12 Doug K.)
Added method which sorts the sMn, sWn, and sIcons schema class columns into alphabetic order. The method can be called from the 'Rebuild Lists' programmer window.
oRebuildCachedLists/moveAdminCols (2006-07-12 Doug K.)
Added method which sorts the sMn, sWn, and sIcons schema class columns into alphabetic order. The method can be called from the 'Rebuild Lists' programmer window.
oRebuildCachedLists/rebuildIcons (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/rebuildMenus (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/rebuildReports (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/rebuildSQLLists_quick (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/rebuildSQLLists_runtime (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/rebuildStringTablesMetaData (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/rebuildWindows (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oRebuildCachedLists/recalcMainMenuText (2006-12-04 Doug K.)
Added private method which loops through the menu instances and sends a $recalcLanguageText message if it $cando and it belongs to the $ctask.
oRebuildCachedLists/reloadStringTables (2006-07-14 Doug K.)
Added error checking for $colcount=0.
oSQLLists/$:ForeignKeyScoresList (2006-11-15 Doug K.)
Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.
oSQLLists/$_setColProperties (2006-09-13 Doug K per Chuck Martin.)
Changed method name from private to $_ protected method to allow developers to override the method in a subclass of oSQLLists.
oSQLLists/$_setColProperties (2006-09-13 Doug K per Chuck Martin.)
Changed method call from _setStringTableText to $_setStringTableText to allow developers to override the $_setColProperties method in a subclass of oSQLLists.
oSQLLists/$_setStringTableText (2006-09-13 Doug K per Chuck Martin.)
Changed method name from private to $_ protected method to allow developers to override the $_setColProperties method in a subclass of oSQLLists.
oSQLLists/$initialize (2006-07-15 Doug K.)
Check to make sure the cached list columns match the current master list columns. If not merge the cached list rather than copy it.
oSQLLists/$recalcLabelsTooltipsAbbrevs (2006-09-13 Doug K per Chuck Martin.)
Changed method call from _setStringTableText to $_setStringTableText to allow developers to override the $_setColProperties method in a subclass of oSQLLists.
oSQLLists/@TEST_retDefinedListForCurrLine (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/_calcClassMetaDataListRow_kQuery (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/_calcClassMetaDataListRow_kSchema (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/_retColsMetaDataList_kQuery (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/_retColsMetaDataList_kQuery (2006-09-13 Doug K per Chuck Martin.)
Changed method call from _setColProperties to $_setColProperties to allow developers to override the method in a subclass of oSQLLists.
oSQLLists/_retColsMetaDataList_kSchema (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/_retColsMetaDataList_kSchema (2006-09-13 Doug K per Chuck Martin.)
Changed method call from _setColProperties to $_setColProperties to allow developers to override the method in a subclass of oSQLLists.
oSQLLists/buildClassInfoForCurrLine (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/buildColsListBaseColsFromQueryCols (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/buildDefinedListForCurrLine (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oSQLLists/retSQLClassesList (2006-07-14 Doug K.)
Removed the $ref column from the $appendlists since the 'sqlclassref' has been removed from the SQL master lists.
oSQLLists/setForeignKeyScores (2006-11-14 Josh L)
New foreign key ranking method which uses a 'treelevel' column to assist in setting the fkey scores.
oSQLLists/setForeignKeyScores (2006-12-31 Doug K per Andy H)
Set views foreignkey score to higher than anything else.
oSQLLists/setSchemaForeignKeyScore (2006-11-14 Josh L)
Recursive part of the new foreign key ranking method which uses 'treelevel' to assist in calculating foreign key scores.
oSecurity/$:SchemasList.$assign (2006-11-23 Doug K.)
Modified for the new version of security.
oSecurity/$:UsersList (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$:WindowsList.$assign (2006-11-29 Doug K.)
Simply copy the pWindowsList to the ivar iWindowsList for use in raw form by other methods of this object.
oSecurity/$_initialize_defineLists (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$_initialize_defineLists (2006-12-12 Doug K.)
Added defining the password info row which is used by wSecurityNewPassword.
oSecurity/$_updateGroupAndRebuildList (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$_updateUserAndRebuildList (2006-11-23 Doug K.)
Refactored method to remove early exits.
oSecurity/$addUserToGroups (2006-11-21 Doug K.)
Added error check for $colcount on SecurityInfoRow.
oSecurity/$canAccessWinInstID (2006-11-21 Doug K.)
Refactored method to remove the early exit points.
oSecurity/$canAccessWinInstID (2006-12-04 Doug K.)
Modified code for new version windows and schema security.
oSecurity/$canDelete (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$canDelete (2006-11-22 Doug K.)
Modified code for new version schema security.
oSecurity/$canEdit (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$canEdit (2006-11-22 Doug K.)
Modified code for new version schema security.
oSecurity/$canInsert (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$canInsert (2006-11-22 Doug K.)
Modified code for new version schema security.
oSecurity/$canMultiUpdate (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$canMultiUpdate (2006-11-22 Doug K.)
Modified code for new version schema security.
oSecurity/$canView (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$canView (2006-11-22 Doug K.)
Modified code for new version schema security.
oSecurity/$checkCurrUserPassword (2006-12-04 Doug K.)
Added method to check to see if a specified text string matches the current user's password. This method is being used by the security timeout window.
oSecurity/$checkPasswordHasExpired (2006-12-14 Doug K.)
Added method $checkPasswordHasExpired for use by 'Security - New Password'.
oSecurity/$filterFieldsList (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$filterFieldsList (2006-11-21 Doug K.)
Added the field reference parameter 'pfbSecurityApplied' to communicate to the sender whether or not security was applied (the fields list was filtered). The only place this method is called from is oFieldHandler.$initializeFields.
oSecurity/$filterFieldsList (2006-11-30 Doug K.)
Disabled the $filterFieldsList method code in oSecurity. Field level security is currently not enabled in the framework so running this method was adding complexity and slowing performance.
oSecurity/$filterWindowsList (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$getUserPassword (2006-12-13 Doug K.)
New method for getting the password from either the 'userpasswordcolumn' or the 'securityinforow.passwordinforow.password' column.
oSecurity/$getUserPrefs (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$initialize (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$initializeTimeoutTimer (2006-12-05 Doug K.)
Added timeout timer methods to oSecurity.
oSecurity/$isMemberOfGroup (2006-11-21 Doug K.)
Added method which checks to see if the current user is a member of a specified group ID.
oSecurity/$removeUsersFromGroup (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$resetTimeoutTimer (2006-12-05 Doug K.)
Added timeout timer methods to oSecurity.
oSecurity/$retGroupSchemasList (2006-09-06 Doug K. per Andy H.)
Calculate the additional can... columns for visual only.
oSecurity/$retGroupSchemasList (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$retGroupSchemasList (2006-11-22 Doug K.)
Added code to convert older version securitylevel value to newer version canedit, caninsert, candelete... schema permissions.
oSecurity/$retGroupWindowsList (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$retGroupWindowsList (2006-11-22 Doug K.)
Modified code for new version schema security.
oSecurity/$retUserPasswordInfoRow (2006-12-12 Doug K.)
Added method for getting the password info row for a specified user.
oSecurity/$retUserSchemasList (2006-11-23 Doug K.)
Rewrote this method for the new version security.
oSecurity/$retUserWindowsList (2006-11-21 Doug K.)
Refactored method to remove early exits. Rewrote this method for the new version security.
oSecurity/$saveCustomInfoRow (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$saveGroupSchemaSecurity (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$saveGroupSchemaSecurity (2006-11-23 Doug K.)
Only store the schemas which the group can view. Saves space and speeds searches.
oSecurity/$saveGroupSchemaSecurity (2006-11-30 Doug K.)
Renamed the method from $setGroup... to $saveGroup... to clearly state what the method does.
oSecurity/$saveGroupWindowSecurity (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$saveGroupWindowSecurity (2006-11-23 Doug K.)
Only store the windows which the group has access to. Saves space and speeds searches.
oSecurity/$saveGroupWindowSecurity (2006-11-30 Doug K.)
Renamed the method from $setGroup... to $saveGroup... to clearly state what the method does.
oSecurity/$saveUserPasswordInfoRow (2006-12-12 Doug K.)
Added method for saving the password info row to the user information in the database.
oSecurity/$saveUserPrefs (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$saveUserSchemaSecurity (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$saveUserSchemaSecurity (2006-11-23 Doug K.)
Only store the schemas which the user can view. Saves space and speeds searches.
oSecurity/$saveUserSchemaSecurity (2006-11-30 Doug K.)
Renamed the method from $setUser... to $saveUser... to clearly state what the method does.
oSecurity/$saveUserWindowSecurity (2006-11-21 Doug K.)
Refactored method to remove early exits.
oSecurity/$saveUserWindowSecurity (2006-11-23 Doug K.)
Only store the windows which user the has access to. Saves space and speeds searches.
oSecurity/$saveUserWindowSecurity (2006-11-30 Doug K.)
Renamed the method from $setUser... to $saveUser... to clearly state what the method does.
oSecurity/$signIn (2006-11-21 Doug K.)
Removed early exit points.
oSecurity/$signIn (2006-11-23 Doug K.)
Added parameter bUseCurrUserSchemaSecurityList to $retUserWindowSecurityDetails message to prevent building the list twice in a row on signin.
oSecurity/$signIn (2006-12-13 Doug K.)
Abstracted getting the password to the $getUserPassword message so that the password can be stored in the 'userpassword' column or in the more secure 'securityinforow.passwordinforow'. The 'passwordinforow' is used by wSecurityNewPassword for storing extra password information.
oSecurity/$startTimeoutTimer (2006-12-05 Doug K.)
Added timeout timer methods to oSecurity.
oSecurity/$stopTimeoutTimer (2006-12-05 Doug K.)
Added timeout timer methods to oSecurity.
oSecurity/convertOldSchemaSecurityLevels (2006-11-22 Doug K.)
Added method to convert older verion securitylevel based schema security to newer version.
oSecurity/setOldSchemaSecurityLevels (2006-11-22 Doug K.)
Added method to convert older verion securitylevel based schema security to newer version.
oStartupTaskDefaultMethods/$constructMethod (2006-12-07 Doug K.)
Add call to $constructTaskVars to the start of this method so that object reference task vars can be set and instantiated.
oStartupTaskDefaultMethods/$destructMethod (2006-12-05 Doug K.)
Send a $destructTaskVars message to delete the startup task object reference objects.
oStartupTaskVarsTool/$_INITIALIZESHAREDAPPPREFS (2006-07-13 Doug K.)
Deprecated $initializeSharedAppPref. Redirect the message to $_initializeAppPrefs_maindatabase.
oStartupTaskVarsTool/$_initializeAppPrefs_maindatabase (2006-07-13 Doug K.)
Only initialize the app_prefs tvar to point to the main database if using shared prefs AND not a developer license. Developer license will always use the app_pref.df1 in the modules folder, and only copy cached lists to the main database for updating runtime cached lists.
oStartupTaskVarsTool/$constructTaskVars (2006-12-06 Doug K.)
Added a method to initialize the object reference task variables. Changes the kObject to kObjectRef if necessary. This method is called by the $constructMethod of oStartupTaskDefaultMethods.
oStartupTaskVarsTool/$constructTaskVars (2006-12-21 Doug K.)
Only construct and initialize the StudioWorks task variables.
oStartupTaskVarsTool/$destructTaskVars (2006-12-05 Doug K.)
Added a method to delete the object reference type object instances of the task variables. This method is called by the $destructMethod of oStartupTaskDefaultMethods.
oStartupTaskVarsTool/$initialize_app_prefs (2006-07-13 Doug K.)
Moved initialize of 'app_prefs' tvar to a new protected method named $_initializeAppPrefs_localdatafile
oTimerObservers/$#About (2006-12-05 Doug K.)
Created a generic timer object which supports observers. Observers are notified when the $timer method is called.
oVersions_abstract/$:ReleaseNumber (2006-07-12 Doug K.)
Added method to return the release number. Normally the current hour of the release.
oVersions_abstract/$:ReleaseType (2006-07-12 Doug K.)
Added method to return the release type (final or beta).
oVersions_abstract/$:Version (2006-07-12 Doug K.)
Modified the $:Version method to return the con($:ReleaseDate / $:ReleaseNumber $:ReleaseType)
oVersions_abstract/$setReleasePropertyMethods (2006-07-12 Doug K.)
Added a new method to set the $:Release... property methods in the subclass for a new release.
tBase/$_initialize_FixNulls (2006-08-15 Doug K. per Andy H.)
Modified the method so that FixNullCols are not also include in the ForceNullCols list.
tBase/$insertEmptyRecord (2006-12-31 Doug K per Andy H.)
Flag was not being set to false for SQL error.
tBase/$selectWhere (2006-07-28 Doug K per Andy H.)
Added setting the statement object to $usercursor. Solves problem with SQL server.
wDBAdminDataMover/setPKeyCounters (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
wDBAdminPrimaryKeys/$setCounterValues (2006-11-10 Doug K. per Will Adkin)
Bug fix. 'schemaclassref' was removed from the pkeys list. Switch to using 'schemalibname' and 'schemaclassname'. and setting rSchema.
wDBAdminPrimaryKeys/resetPrimaryKeyCounterValues (2006-11-10 Doug K. per Will Adkin)
Bug fix. 'schemaclassref' was removed from the pkeys list. Switch to using 'schemalibname' and 'schemaclassname'. and setting rSchema.
wDBAdminSchemas/sortByFKeyScore (2006-11-15 Doug K.)
Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.
wDBAdminSyncDatabaseToSchemas/insertEmptyRecordsForSelectedSchemas (2006-07-14 Doug K.)
Remove the sort by foreign key score code from this method as it is in the oDBAdmin $insertEmptyRecords method.
wDBAdminSyncUsers/$createTablesOwnerLogonFile (2006-09-12 Doug K.)
Change 'EncryptedString' to 'EncryptedBinVar' to solve version Omnis 4.2 blowfish problem.
wRebuildLists/moveAdminColsToEndofSQLClasses (2006-07-14 Doug K.)
Added button and method call for moving the admin columns to the end of the SQL classes in the selected libraries.
wRebuildLists/sortSchemas_Wn_Mn_Icons (2006-07-14 Doug K.)
Added button and method call for sorting the sWn , sMn, sIcons class columns in the selected libraries.
wSQLMetaData/buildChildNodes (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
wSQLMetaDataSchemaColsEditor/buildFKColsList (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
wSecurity/$#About (2006-11-29 Doug K.)
Overhaul wSecurity (shell) window. Only instantiate subwindows as needed.
wSecurity/changeUser (2006-12-13 Doug K.)
Added method to allow the sys admin to signin as a different user, without needing to enter a password. This makes it easy to check a user's actual security after making changes in the security window.
wSecurityNewPassword/$#About (2006-12-13 Doug K.)
Created window for generating new passwords.
wSecurityNewPassword/control_evClick (2006-12-20 Doug K.)
Bug fix. Changed 'Do method quitOmnis' to 'Quit Omnis (Force quit).
@00 String Tables/@65 Adding a Language (2006-08-30 Doug K.)
Added documentation for 'Adding a Language' to StudioWorks.
@50 Field Handler/@00 About (2006-09-21 Doug K.)
Added documentation on the field handler.
@50 Preferences/@40 Module Preferences (2006-12-18 Doug K.)
Added documentation on 'Module Preferences'
@60 Security/@00 About (2006-11-21 Doug K.)
Added documentation on how security works in StudioWorks.
@61 Security Timeout/@00 About (2006-12-12 Doug K.)
Added documentation on timeout security in StudioWorks.
@62 Security New Password/@00 About (2006-12-13 Doug K.)
Added documentation on 'new password' security in StudioWorks.
@62 Security New Password/@11 Enabling New Password Security (2006-12-13 Doug K.)
Added documentation on enabling the 'new password' security in StudioWorks.
mContext/$control (2006-10-04 Doug K.)
Added return FlagOK from observer callback method and break to end of loop if false.
mMainMenu/$#About (2006-07-21 Doug K.)
Added cascading menu line 'Runtime Debug Menu' which is an instance of the mRuntimeDebug menu class. Moved the 'Developer Error Messages' menu item to the runtime debug menu. The runtime debug menu is removed if the runtime user is not a system administrator.
mMainMenu/$construct (2006-07-12 Doug K.)
Added Runtime Debug cascading menu plus code to remove the cascading menu if the user in not a system administrator.
mRuntimeDebug/$#About (2006-07-12 Doug K.)
Added runtime debu menu to help with debugging StudioWorks when opened with runtime version of Omnis Studio.
oConcretizer/$updateDeveloperWinClass (2006-07-24 Doug K per Chuck M.)
Bug fix. Added missing first parameter prWin to the $_retWinType method call and check for pos() of 'edit' in the WinType.
oConcretizer/$updateDeveloperWinClass (2006-07-24 Doug K.)
Add new fields the default 'iFieldSpacing' below the bottom existing field. It was 50 pixels below.
oConcretizer/addField (2006-08-31 Doug K. per Andy H.)
Set $nogray property of checkbox field to kTrue for better appearance when disabled.
oConcretizer/addField (2006-11-09 Doug K per Chuck Martin.)
Added code to set properties for kMaskedEntry fields. ($formatmode, $formatstring, $inputmask)
oConcretizer/calculateObjTypes (2006-11-09 Doug K per Chuck Martin)
Moved test for kMaskedEntry field above the Switch/Case so that any fields with a formatmode, formatstring, or inputstring will be added as kMaskedEntry type object.
oConcretizer/setRuntimeFieldsAndFieldPropertiesList (2006-12-12 Doug K.)
Added kBobj ti the object types that shape fields can be used for labels.
oConcretizer/setTextAndTooltipProperties (2006-12-12 Doug K.)
Added kBobj to the kText, kLabel object types that get treated as labels so that shape fields can be used.
oConcretizer/setTextAndTooltipProperties (2006-12-21 Doug K.)
If a $bobj is in a complex grid header, set the text to the abbreviation, like we would for a headed list.
oConcretizer/setTextAndTooltipProperties (2006-12-21 Doug K.)
Performance enhancement. Cache the current SQL class and ColsList to reduce the calls to oSQLLists.
oFieldHandler/$:EmptyFieldPropertiesList (2006-09-21 Doug K.)
Added a property method to return an empty field properties list. For use by methods which wish to include an extra fields list with the $initializeFields message.
oFieldHandler/$control (2006-12-05 Doug K.)
Reset the timer on evKey and evClick.
oFieldHandler/$initializeFields (2006-07-07 Doug K.)
Clear the window class instance $userinfo after copying it to the iFieldsList. Conserve memory.
oFieldHandler/$initializeFields (2006-09-07 Doug K.)
Removed the 'paranoid' code that wipes out the $dataname of entry field which are unknown to the field properties list.
oFieldHandler/$initializeFields (2006-09-21 Doug K.)
Added an extra parameter, pExtraFieldsList_opt, to allow the sender to add/set the field handler properties for extra fields.
oFieldHandler/$initializeFields (2006-09-22 Josh L.)
Removed an End If that was finishing a loop prematurely
oFieldHandler/$initializeFields (2006-09-22 Josh L.)
Changed the check of the fieldstyle from the "previous" one to the actual one the field really has. This is in response to non-schema fields normally coming up without a fieldstyle after being concretized.
oFieldHandler/$initializeFields (2006-11-30 Doug K.)
Removed the $filterFieldList and security applied code from this method. The code was adding a lot of unnecessary complication to the method.
oFieldHandler/$initializeFields_20061130 (2006-07-07 Doug K.)
Clear the window class instance $userinfo after copying it to the iFieldsList. Conserve memory.
oFieldHandler/$initializeFields_20061130 (2006-09-07 Doug K.)
Removed the 'paranoid' code that wipes out the $dataname of entry field which are unknown to the field properties list.
oFieldHandler/$initializeFields_20061130 (2006-09-21 Doug K.)
Added an extra parameter, pExtraFieldsList_opt, to allow the sender to add/set the field handler properties for extra fields.
oFieldHandler/$initializeFields_20061130 (2006-09-22 Josh L.)
Removed an End If that was finishing a loop prematurely
oFieldHandler/$initializeFields_20061130 (2006-09-22 Josh L.)
Changed the check of the fieldstyle from the "previous" one to the actual one the field really has. This is in response to non-schema fields normally coming up without a fieldstyle after being concretized.
oFieldHandlerGenerateProperties/$buildFieldHandlerProperties (2006-09-21 Doug K.)
Renamed the _edit suffixed column to remove the _edit suffix, so that the same name is used through StudioWorks. The _edit suffixed columns we're being manually removed in this method, making them different from sFieldProperties_listdef.
oFieldHandlerGenerateProperties/buildDecoratorProperties (2006-09-21 Doug K.)
Renamed the _edit suffixed column to remove the _edit suffix, so that the same name is used through StudioWorks.
oFieldHandlerLookupTypeAhead/$control (2006-07-26 Doug K.)
Trap tab and shift+tab key events so that tabbing out of a field doesn't get processed in the evKey code. Shift+tab is difficult to trap because only the shift key is detected. We have to assume that shift+empty pKey value is a shift tab.
oFieldHandlerLookupTypeAhead/$updateLookupList (2006-07-27 Doug K.)
Bug fix. Refs lookups list was not being filtered.
oFieldHandlerLookupTypeAhead/event_evAfter (2006-07-26 Doug K.)
Modified method for better lookup behavior on Refs mandatory and non-mandatory lookup fields.
oFieldHandlerLookupTypeAhead/setMainListValues (2006-08-29 Josh L.)
Removed the process event and continue because it was causing the evAfter event to get passed over.
oMenusList_abstract/addMenuLineToMenusStringTable (2006-12-20 Doug K.)
Check for len(pMenuLineID) before attempting to add the menu line ID to the sMn_stb schema class.
oMenusList_abstract/addReportsMenuObjectsAndMethods (2006-12-20 Doug K.)
Check for len(pMenuLineID) before attempting to add the menu line ID method to the reports menu object class.
oMenusList_abstract/addWindowMenuLine (2006-12-20 Doug K.)
Check for len(pMenuLineID) before attempting to add the menu line ID method to the menu observer object class.
oPrompts/openModalPrompt (2006-08-15 Doug K per Josh L.)
Added this else so that if the window instance is already present the method doesn't try to open another.
oWindows/$buildWindowsList (2006-12-18 Doug K.)
Bug fix. Preset the flag to true before the loop. (was false)
oWindows/$initialize (2006-08-09 Doug K.)
Removed early exist points.
oWindows/$initialize (2006-09-06 Doug K.)
Changed finding 'sWindows_listdef' to using oFunctions $findClass so that developers can use their own listdef in their main library.
oWindows/$openWindow (2006-07-12 Doug K.)
Bug fix. The current line was not being set in the iWindowsList causing the 'If WindowsList.openinshell' to fail.
oWindowsList_abstract/$_addCustomWinInstID (2006-11-24 Doug K.)
Added parameter pbSecurityCheckRequired to allow developer to set to false. (It was always set to true) Note: This could affect security settings on existing applications!!!
oWindowsList_abstract/$_addDefaultWinInstIDsForSchemasInLib (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
wAbout/showLibsList (2006-07-12 Doug K.)
Cleanup text translation so that if translation not found, leave the text alone. Removed the 'master version' code which was never implemented by oVersions.
wBase_ToolbarTitlebar_abstract/$_constructToolbar (2006-07-26 Doug K.)
Refactored method to remove early exits.
wBase_abstract/$_constructDefineVars (2006-07-26 Doug K.)
Removed the code which looked for a cached list stored in an object in the window class. This strategy was never implemented. Removed the code which copies iList to iDefinedList. Reduce memory useage. iDefined list is not necessary.
wBase_abstract/$doCmnd (2006-12-05 Doug K.)
Reset the timeout timer each time this method is called.
wBase_abstract/$save (2006-07-27 Doug K.)
Added $refilter after $doworkBatch to refilter the smartlist if $filter had been used.
wConcretizer_template/$#About (2006-07-24 Doug K per Chuck M.)
Added code to the DateFieldCalendarButton to check that the date entry field is enabled before opening the calendar prompt window.
wContainer_List_ListChildren_abstract/$control (2006-11-20 Doug K per Andy H)
Send an $eventClose message to the child subwindow before calling $_setChildRecordsList in case the child window is editing a record. Also added $promptonceLastError if any errors.
wEditList_abstract/$:ToolbarCmndsCSV (2006-08-15 Doug K. per Andy H.)
Updated the 'Quit method...' comment line to match the actual method line values.
wEditList_abstract/$delete (2006-09-12 Doug K per Andy H)
Include all of the 'includeinprompts' columns in the singe record delete confirmation prompt message.
wEditList_abstract/$eventClose (2006-09-13 Doug K.)
Calculate the 'Save Changes' dialog message text based on the # of modified records. Refactored the method.
wHeadedList_autoconfig/$#About (2006-08-31 Doug K.)
Set the $cursor property to iconid 1000041 which is the context menu hinting cursor. You can unset this property by setting it to zero in a subclass $construct of wList_autoconfig.
wHeadedList_autoconfig/$control (2006-12-05 Doug K.)
Added reset timeout timer to various events.
wList_abstract/$updateList (2006-07-26 Doug K.)
Define the TargetRow variable by sending a $retDefinedList message to oSQLLists rather than copying iDefinedList. iDefinedList has been removed.
wList_abstract/$updateList (2006-07-26 Doug K.)
Removed early exit points.
wList_autoconfig/$delete (2006-08-02 Doug K.)
After deleting the selected lines, set the current line to either the previously current line or line one of the list.
wList_autoconfig/$edit (2006-07-26 Doug K.)
Copy iList and remove non-selected lines rather than merge selected lines into an empty list. (Get rid of using iDefinedList)
wList_autoconfig/$view (2006-07-26 Doug K.)
Copy iList and remove non-selected lines rather than merge selected lines into an empty list. (Get rid of using iDefinedList)
wLookupList/$getFieldTopLeftPosnInWindow (2006-08-28 Josh L.)
Multiplied the vertical scroll factor by 8 because the list was appearing far down the page from the field.
wMainWindow/$construct (2006-09-12 Doug K per Birger R.)
Added FlagOK and $promptonceLastError error handling to the $construct method.
wNav_Treelist/$_event_evOpenContextMenu (2006-08-30 Doug K.)
Added a 'CollapseAllNodes' context menu line to the nav treelist.
wNav_Treelist/$collapseAllNodes (2006-08-30 Doug K.)
Added a 'CollapseAllNodes' method for the nav treelist.
wPromptInput/_addLabel (2006-12-14 Doug K.)
Added translation of string table formated labels. e.g. 'security.NewPassword'
wSearchbar_abstract/$#About (2006-08-15 Doug K.)
Changed the variable cPrevValue to iPrevValue; from a class variable to an instance variable.
wSearchbar_abstract/$find (2006-08-15 Doug K. (per bug report by Chuck M))
Set the iPrevValue regardless of whether or not it has a length.
wSearchbar_abstract/$find (2006-12-05 Doug K.)
Reset timeout timer each time this method is run.
wSearchbar_abstract/$initialize (2006-08-15 Doug K.)
Removed early exits.
wSearchbar_abstract/loadLastCriteria (2006-08-15 Doug K.)
Removed early exits and modify method so that null is returned if there was an error.
wSearchbar_abstract/loadLastCriteria (2006-08-15 Doug K.)
Added recalling the search criteria value from the LastCriteriaRow.
wSearchbar_abstract/saveLastCriteria (2006-08-15 Doug K.)
Removed early exits.
wSearchbar_abstract/saveLastCriteria (2006-08-15 Doug K.)
Added storing the search criteria value to the LastCriteriaRow.
wShell/$doCmnd (2006-12-05 Doug K.)
Reset the timeout timer each time this method is called.
oMenusList/$addNavigationMenuLines (2006-07-26 Doug K.)
Added RefsLookupList to the navigation list.
oRefs/$buildList (2006-07-15 Doug K. per Andy H.)
Change passing in the $:SessionObj to $:SessionRow for the 2nd parameter. Also removed early exits.
oRefs/$retList (2006-07-26 Doug K.)
Refactored method to remove early exits.
oRefs/$retLookupList (2006-07-26 Doug K.)
Fix the code so that the RefsDesc column does get added if any of the RefsDesc are non-blank and don't match the RefsChar column. Sort the lookup list by RefsSortOrder/RefsChar/RefsDesc.
oRefs/$retLookupList (2006-10-05 Doug K per Tom Maher.)
Bug fix for showing RefsDesc column if different than value column.
oRefs/$retPrimaryKeysList (2006-07-28 Doug K.)
Do not include the 'Refs' table in the primary keys list.
oWindowsList/$addCustomWinInstIDs (2006-07-26 Doug K.)
Added RefsLookupList and RefsLookupEdit WinInstIDs. These are windows used specifically for editing Refs lookups.
oReportBuilder/$createReportClass (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oReportProperties/$retColsPropertiesRow (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
oReports/findReportInstIDClass (2006-07-14 Doug K.)
Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.
rReportBuilder_template/$#About (2006-07-03 Doug K.)
Changed the $printif report section properties and all code to use the $: property methods rather than the ivars so that subclasses of this report can successfully override the property methods.
rReport_abstract/$:CompanyLogoHeight (2006-10-05 Josh L)
Added this method to control the logo height for different sized logos.
rReport_abstract/$:CompanyLogoHeight.$assign (2006-10-05 Josh L)
Added this method to control the logo height for different sized logos.
rReport_abstract/$:PrintInfoText.$assign (2006-09-29 Josh L)
I included this method because it was missing. This is a way to control the Print Info in the top left of generated reports.
Startup_Task/$#About (2006-12-06 Doug K.)
Changed the task variables to object reference where applicable.
oHTMLTools/$retSearchBarHTML (2006-07-11 Doug K.)
Get the 'includeinsearches' rather than the non-hidden columns for the search columns list.
oRemoteTaskMethods/$initializeAllTaskVars (2006-12-07 Doug K.)
Modified initialization of remote task vars to change/set to object reference type variables.
oRemoteTaskMethods/$initializePublicSearchTaskVars (2006-12-07 Doug K.)
Modified initialization of remote task vars to change/set to object reference type variables.
oSearchPage/addSQLCLassToPublicSearchSQLClasses (2006-12-07 Doug K.)
Added missing End if. Modified code to work with an empty 'Quit method' in the $:PublicSearchSQLClasses method.
rtDispatcher/$#About (2006-12-06 Doug K.)
Changed the task variables to object reference where applicable.