<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>StudioWorks - Version 2006-12-31</title> <meta name="keywords" content="omnis studio, raining data, studioworks documentation" /> <link rel="stylesheet" type="text/css" href="http://www.studiotips.net/css/codedoc.css" /> <link rel="stylesheet" type="text/css" href="http://www.studioworks-dev.net/css/codedoc.css" /> </head> <body> <div id="container"> <p><a href = ../index.html > Sw4 </a> &nbsp &gt; &nbsp <a href = index.html > About </a> &nbsp &gt; &nbsp Version 2006-12-31</p> <a name="version20061231" /> <h2>Version 2006-12-31</h2> <p>The following is a summary of the major changes include in this release:</p> <ol> <li><strong>Security Module Overhaul</strong> Major overhaul of the security module code and GUI. Moved from using an integer value to indicate view, edit, insert, delete schema class permissions to individual <span class="code">canview, canedit, caninsert, candelelete</span> columns thereby providing greater flexibility for setting permissions. Now a user can be given insert permission, but denied edit permission. Enhancements have been made to the <span class="nav">Security</span> window GUI and all of the text is now string table based thereby supporting multiple langauges.</li> <li><strong>Security Timeout Feature</strong> This new security feature opens a timeout window after a period of user inactivity. The number of minutes of inactivity is set by the system administrator. The user must enter their password in the timeout window to continue using the StudioWorks application. The number of minutes is a default value which can be overridden for specific users. Implementation of the security timeout feature is optional. See <span class="nav">Misc > Security Timeout</span> for more details.</li> <li><strong>Security Sign-off Feature</strong> This new security feature opens the timeout window at a specified time of day (e.g. 5:00 pm) if there is no activity and then begins a 5 minute countdown to quitting Omnis Studio. The user can cancel the countdown and enter their password to continue using the StudioWorks application. Implementation of the security sign-off feature is optional. See <span class="nav">Misc > Security Timeout</span> for more details.</li> <li><strong>Security New Password Feature</strong> This new security feature keeps track of the last time the user's password was changed. After signing in, if the specified number of days since the password was last changed is exceeded (e.g. 180 days); the user is prompted through a series of pages which generates a new password based on a password sentence. The password sentence is designed to make it easier for the user to remember their password. See <span class="nav">Misc > Security New Password</span> for more details.</li> <li><strong>Object Reference Task Variables</strong> The security timeout feature required the use of the newer object reference type variables in the main library startup task. The use of object reference task variables also works better for remote tasks in the web app module.<br /> <br /> The code was modified in <span class="code">oStartupTaskVarsTool</span>, <span class="code">oStartupTaskDefaultMethods</span>, and <span class="code">oRemoteTaskMethods</span> classes to automate conversion of the <span class="code">kObject</span> type task variables to <span class="code">kObjectRef</span> type variables. However, there is a little bit of code in your main library <span class="code">Startup_Task</span> which you will need to modify manually. See the topic <span class="nav">Switching to Object Reference Task Variables</span> in this section for instructions on the code changes you will need to make.</li> <li><strong>Foreign Key Scores</strong> The code for calculating foreign key scores was looping indefinitely for certain complex foreign key relationships. The foreign key scoring code was rewritten by Josh and appears to be working correctly and quicker.</li> <li><strong>Change Language Cleanup</strong> Work has been done on the code that runs when you switch languages so that the main menu immediately reflects the newly selected language.</li> </ol> <p>See the additional topics in this section for details of all the modifications made in this release.</p> <p>To update to this new release:<br /> <ol> <li>Backup your application.</li> <li>Replace your old <span class="file">studioworks</span> folder and contents with the new <span class="file">studioworks</span> folder included with this release.</li> <li>Modify your main library <span class="code">Startup_Task</span> as per the instructions given in this section under <span class="nav">Switching to Object Reference Task Variables</span>.</li> <li>If you wish to implement the <em>Security Timeout</em> &amp; <em>New Password</em> features follow the instructions given in this section under <span class="nav">Enabling Security Timeout, Sign-off, New Password</span>.</li> </ol></p> Each library and the modifications in the release are listed below. The modifications are compiled from the <span class="code">@MOD</span> tag comments found in the methods of the classes in the library. <a name="switchingtoobjectreferencetaskvaria" /> <h3>Switching to Object Reference Task Variables</h3> <p>If you have not modified your main library <span class="code">Startup_Task</span> follow these instructions to update your main library <span class="code">Startup_Task</span> for use with this new release.</p> <ol> <li>Rename your main library <span class="code">Startup_Task</span> to <span class="code">X_Startup_Task</span>.</li> <li>Copy the <span class="code">Startup_Task</span> from the <span class="code">myAppMain</span> library of the <span class="code">StartNewApp</span> demo to your main library.</li> </ol> <p>If you have modified your main library <span class="code">Startup_Task</span> follow these instructions to update your main library <span class="code">Startup_Task</span> for use with this new release.</p> <ol> <li>Delete the <span class="code">$initializeErrorHandler</span> method if it exists.</li> <li>Delete the <span class="code">$openModuleLibraries</span> method if it exists.</li> <li>Select the <span class="code">$openSWLibraries</span> method from the <span class="code">Startup_Task</span> class of the <span class="code">myAppMain</span> library of the <span class="code">StartNewApp</span> demo and copy it to the clipboard. Select the <span class="code">$openSWLibraries</span> method in your main library's <span class="code">Startup_Task</span> and paste the method from the clipboard to replace it with the new one.</li> <li>Select the <span class="code">$openAppLibraries</span> method from the <span class="code">Startup_Task</span> class of the <span class="code">myAppMain</span> library of the <span class="code">StartNewApp</span> demo and copy it to the clipboard. Paste this as a new method into your main library's <span class="code">Startup_Task</span>.</li> <li>Modify the <span class="code">$construct</span> method from the <span class="code">Working message</span> command to the <span class="code">Close working message</span> command to read as follows:<br /> <br /> <p class="code"><span class="omcomment">; Open a working message.</span><br /> Calculate workingmssg as con(kCr,'Starting up application')<br /> Working message /-1072741743,-1072741739;50;0;0 {[workingmssg]}<br /> <br /> <span class="omcomment">; The main libary startup task has two important jobs to complete before doing anything else.</span><br /> <span class="omcomment">; 1. Open the application's libraries. (Any libraries located inside the 'libraries' folder and subfolders)</span><br /> <span class="omcomment">; 2. Open the studioworks folder libraries.</span><br /> <span class="omcomment">; The application can not function without the SW libraries open.</span><br /> <br /> <span class="omcomment">; 1. Open the application's libraries.</span><br /> Do $cinst.$openAppLibraries() Returns FlagOK<br /> If FlagOK<br /> &nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;<span class="omcomment">; 2. Open the SW libraries.</span><br /> &nbsp;&nbsp;&nbsp;Do $cinst.$openSWLibraries() Returns FlagOK<br /> &nbsp;&nbsp;&nbsp;If FlagOK<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="omcomment">; Now that the SW libraries are open we can proceed with the default construct method.</span><br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="omcomment">; Forward the call to $constructMethod (so that the $construct method code can be subclassed from swBase)</span><br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do ioStartupTaskDefaultMethods.$constructMethod(bRebuildLists) Returns FlagOK <span class="omcomment">;; @MOD:2</span><br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;End If<br /> End If<br /> <br /> Close working message</p> <br /> <br /> Initializing the error handler will be handled by the <span class="code">oStartupTaskDefaultMethods.$constructMethod</span> rather than the main library <span class="code">Startup_Task</span>.</li> </ol> <p>Any StudioWorks framework <span class="code">kObject</span> type task variables in your main library's <span class="code">Startup_Task</span> will be switched to <span class="code">kObjectRef</span> type variables and instantiated by the <span class="code">$constructMethod</span> of <span class="code">oStartupTaskDefaultMethods</span>.</p> <p>The <span class="code">$destructMethod</span> of <span class="code">oStartupTaskDefaultMethods</span> takes care of deleting the object reference instances when the main library's <span class="code">Startup_Task</span> is closed.</p> You do not need to make any code change to your web module if you have created one. The <span class="code">oRemoteTaskMethods</span> object is able to make the remote task task variable changes automatically. <a name="enablingsecuritytimeoutsignoffnewpa" /> <h3>Enabling Security Timeout, Sign-off, New Password</h3> <p>Follow these instructions to update your existing StudioWorks application to implement the new security features included with this release.</p> <p>If you have not modified your <em>SysAdmin</em> module:</p> <ol> <li>Replace your old SysAdmin library with a copy of the <span class="code">mySysAdmin</span> library from the <span class="code">StartNewApp</span> demo app. </li> <li>Rename the file to the name of your old SysAdmin file. </li> <li>Open the library and set the <span class="code">$defaultname</span> and <span class="code">$name</span> properties of the library to your old SysAdmin library name.</li> <li>In the <span class="code">sMn_stb</span> schema class change <span class="code">mySysAdmin</span> to your old SysAdmin library name.</li> </ol> <p>If you have modified your <em>SysAdmin</em> module:</p> <p> <li> If you have not modified the <span class="code">wUsrEdit</span> window in your StudioWorks application's <em>SysAdmin</em> library, then simply copy the <span class="code">wUsrEdit</span> window from the <span class="code">mySysAdmin</span> demo library to your <em>SysAdmin</em> library. If you have runtimized your windows you will need to delete your existing runtimized window and runtimize again.</p> <p> <li> If you have modified the <span class="code">wUsrEdit</span> window in your StudioWorks application's <em>SysAdmin</em> library you will need to either add your fields and code modifications to a copy of <span class="code">wUsrEdit</span> window from the <span class="code">mySysAdmin</span> demo library, or copy the added fields and changes from the <span class="code">wUsrEdit</span> window in the <span class="code">mySysAdmin</span> demo library, to your <span class="code">wUsrEdit</span> window. The changes to <span class="code">wUsrEdit</span> are as follows:</p> <ol> <li>Password entry field and <span class="nav">Set Password</span> button deleted.</li> <li><span class="nav">Change Password</span> button, <span class="code">promptretNewPassword</span>method, and <span class="code">changePassword</span> method added.</li> <li>Modified methods: <span class="code">$construct, $save, $_constructDefineVars, $_setMode</span>.</li> </ol> <p> <li> Copy the <span class="code">oSysPrefs</span>, <span class="code">sSysPrefs_listdef</span>, <span class="code">wSysPrefs</span> classes from the <span class="code">mySysAdmin</span> demo library to your <em>SysAdmin</em> library.<br /> </ol></p> <p>After you have complete the above:</p> <ol> <li>Rebuild string tables.</li> <li>Modify the <span class="code">$signinOKContinue</span> method of your main library <span class="code">Startup_Task</span> to read as follows:<br /> <br /> <p class="code"><span class="omcomment">; Redirect to the startup task default methods object.</span><br /> Do redirect ioStartupTaskDefaultMethods Returns FlagOK<br /> If FlagOK<br /> &nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;Do method checkPasswordExpired Returns FlagOK<br /> &nbsp;&nbsp;&nbsp;If FlagOK<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do method initializestartTimeoutTimer Returns FlagOK<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;End If<br /> End If<br /> <br /> If not(FlagOK)<br /> &nbsp;&nbsp;&nbsp;Do errhndlr.$promptonceLastError()<br /> End If<br /> Quit method FlagOK</p> </li> <li>Copy the <span class="code">checkPasswordExpired</span> method from the <span class="code">myAppMain</span> library of the <span class="code">StartNewApp</span> demo to your main library <span class="code">Startup_Task</span>.</li> <li>Copy the <span class="code">initializestartTimeoutTimer</span> method from the <span class="code">myAppMain</span> library of the <span class="code">StartNewApp</span> demo to your main library <span class="code">Startup_Task</span>.</li> </ol> <a name="swbase4" /> <h3>swBase4</h3> <p><span class="code">SecurityTimeout_Task/$#About</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Created security timeout task class which can be used by multiple StudioWorks applications.</p> <p><span class="code">oAppPrefs/$#About</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> 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.</p> <p><span class="code">oAppPrefs/$:iconslist</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:iconslist.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:menulineslist_windows</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:menulineslist_windows.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:reportslist</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:reportslist.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:sqllistsforeignkeycolslist</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:sqllistsforeignkeycolslist.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:sqllistsmasterlist</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:sqllistsmasterlist.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:stringtables_masterlist</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:stringtables_masterlist.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:windowslist</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Fetch the cached list directly from Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$:windowslist.$assign</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Save cached list directly to the Cachedlist table. Better memory management.</p> <p><span class="code">oAppPrefs/$_init_prepareCachedlistTable</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Added 'Cachedlist' table for storing each cached list in a separate record of the 'Cachedlist' table. Better memory management.</p> <p><span class="code">oAppPrefs/$_retCachedList</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Added method for returning an individual cached list from the 'Cachedlist' table. Better memory management.</p> <p><span class="code">oAppPrefs/$_saveCachedList</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Added method for saving an individual cached list to the 'Cachedlist' table. Better memory management.</p> <p><span class="code">oAppPrefs/$initialize</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Added 'Cachedlist' table for storing each cached list in a separate record of the 'Cachedlist' table. Better memory management.</p> <p><span class="code">oConstants/$:AppLibsList</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Add $cando to test for $:Version method before sending message to oVersion object.</p> <p><span class="code">oConstants/$:AppLibsList</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Added setting the liblabel and libtooltip column values for the AppLibsList.</p> <p><span class="code">oConstants/$:WebAppLibName</span> <span class="moddateby">(2006-12-07 Doug K.)</span><br /> Modified method to default checking for the web library as replace(MainLibName,'Main','Web')</p> <p><span class="code">oCreateLibrary/$addVersionsObjectsToAppLibs</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Added programmer menu line for adding oVersion objects to all of the application's libraries.</p> <p><span class="code">oCreateLibrary/$createNewModule</span> <span class="moddateby">(2006-07-24 Doug K per Chuck M.)</span><br /> Set the library properties a second time. Sometimes they aren't getting set the first time.</p> <p><span class="code">oCreateLibrary/_checkcreateParentFolder</span> <span class="moddateby">(2006-08-28 Doug K.)</span><br /> Created a separate method to support multiple level folders.</p> <p><span class="code">oCreateLibrary/_copyClass</span> <span class="moddateby">(2006-08-28 Doug K.)</span><br /> Moved code for creating parent folders to a separate method 'checkcreateParentFolder' to support multiple level folders.</p> <p><span class="code">oDBAdminMethods_SQLSERVER/$copyData</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oDBAdminMethods_SQLSERVER/$copyData</span> <span class="moddateby">(2006-11-15 Doug K.)</span><br /> Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.</p> <p><span class="code">oDBAdminMethods_abstract/$_moveData</span> <span class="moddateby">(2006-07-24 Doug K. per Andy H.)</span><br /> 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.</p> <p><span class="code">oDBAdminMethods_abstract/$_sortSchemasByForeignKeyScore</span> <span class="moddateby">(2006-11-15 Doug K.)</span><br /> Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.</p> <p><span class="code">oDBAdminMethods_abstract/$copyData</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oDBAdminMethods_abstract/$insertEmptyRecords</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Sort the schemas list by foreign key score for inserts before doing the inserts.</p> <p><span class="code">oDBAdminMethods_abstract/$insertEmptyRecords</span> <span class="moddateby">(2006-07-24 Doug K per Andy H.)</span><br /> Leave the LoopFlagOK alone if zero is not allowed. This is not an error. It was being set to kFalse.</p> <p><span class="code">oDBAdminMethods_abstract/$retDAMTablesAndViewsList</span> <span class="moddateby">(2006-08-15 Doug K per Andy H.)</span><br /> Added 'tablesownername' to the $tables parameters.</p> <p><span class="code">oDBAdminMethods_abstract/$retPrimaryKeysList</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oDBAdminMethods_abstract/$retPrimaryKeysList</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> Remove the 'sRefs' schema class from the schemas list if the Refs table is being used to track and set the primary keys.</p> <p><span class="code">oDBAdminMethods_abstract/$retPrimaryKeysList</span> <span class="moddateby">(2006-12-31 Doug K per Andy H.)</span><br /> Bug fix. Changed 'Calculate as' to 'Do'.</p> <p><span class="code">oDBAdminMethods_abstract/$setPrimaryKeyCounterValue</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> If Refs is used to track pkeys then don't attempt to set the pkey for the 'Refs' table as this causes a tailspin.</p> <p><span class="code">oDBAdminMethods_abstract/syncDatabaseTablesToSchemas</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oDBAdminMethods_abstract/syncDatabaseTablesToSchemas</span> <span class="moddateby">(2006-11-15 Doug K.)</span><br /> Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.</p> <p><span class="code">oDBAdminSQLText_SQLSERVER/$retSQL_AlterColumn</span> <span class="moddateby">(2006-07-14 Doug K. per Andy H.)</span><br /> Bug fix. Changed ALTER COLUMN to ALTER TABLE.</p> <p><span class="code">oEncryptDecrypt/$decryptList</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Change pEncryptedString to pfEncryptedBinVar to solve problem with Omnis 4.2 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$decryptRow</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Change pEncryptedString to pfEncryptedBinVar to solve problem with Omnis 4.2 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$decryptString</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Change pEncryptedString to pfEncryptedBinVar to solve problem with Omnis 4.2 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$encryptList</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Changed return value from EncryptedString to EncryptedBinVar to solve problem with Omnis 4.2 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$encryptRow</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Changed return value from EncryptedString to EncryptedBinVar to solve problem with Omnis 4.2 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$encryptString</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Changed return value from EncryptedString to EncryptedBinVar to solve problem with Omnis 4.2 blowfish object.</p> <p><span class="code">oFunctions/$isNullBlankZero</span> <span class="moddateby">(2006-09-20 Doug K per Andy H)</span><br /> 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.</p> <p><span class="code">oIcons/$initialize</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Remove the early exit points. Merge rather than copy the incoming icons list.</p> <p><span class="code">oLogon/$commit</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> Added method to commit the session transactions. (for kSessionTranManual).</p> <p><span class="code">oLogon/$retDBTablesList</span> <span class="moddateby">(2006-08-15 Doug K per Andy H.)</span><br /> Added 'tablesownername' to the $tables parameters.</p> <p><span class="code">oLogon/$rollback</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> Added method to rollback the session transactions. (for kSessionTranManual).</p> <p><span class="code">oLogon/$transactionmode</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> 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.</p> <p><span class="code">oLogon/$transactionmode.$assign</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> 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.</p> <p><span class="code">oLogonMethods/$logon</span> <span class="moddateby">(2006-07-25 Doug K.)</span><br /> 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.</p> <p><span class="code">oMetaDataFindAndReplace/searchColsMetaData</span> <span class="moddateby">(2006-08-03 Doug K per Andy H.)</span><br /> Added 'lookupwhere,listalign,decoratortype,formatstring,formatmode,inputmask,reportformatstring,reportformatmode' to the columns to be searched.</p> <p><span class="code">oMetaDataFindAndReplace/searchColsMetaData</span> <span class="moddateby">(2006-08-30 Doug K per Andy H.)</span><br /> Added 'lookupsqlclassname' to the columns to be searched.</p> <p><span class="code">oPrepareNewDatabase/_addUsersToDBUsers</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> Removed early exits.</p> <p><span class="code">oPrepareNewDatabase/_setPkeyCounters</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oRebuildCachedLists/$rebuildSQLLists</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Removed redundant code which was already being handled by the called methods.</p> <p><span class="code">oRebuildCachedLists/$reloadStringTables</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Update the application preferences object properties after recalc tooltips and text.</p> <p><span class="code">oRebuildCachedLists/$reloadStringTables</span> <span class="moddateby">(2006-12-04 Doug K.)</span><br /> Added recalc of the main menu of the current task so that reload of string tables is immediately reflected in the main menu.</p> <p><span class="code">oRebuildCachedLists/$reloadStringTablesMetaDataOnly</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking after assigning cached lists values to the app_prefs object.</p> <p><span class="code">oRebuildCachedLists/$reloadStringTablesMetaDataOnly</span> <span class="moddateby">(2006-12-04 Doug K.)</span><br /> Added recalc of the main menu of the current task so that reload of string tables is immediately reflected in the main menu.</p> <p><span class="code">oRebuildCachedLists/$saveAppPrefs</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> 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.</p> <p><span class="code">oRebuildCachedLists/$sortSchemaClassCols_Wn_Mn_Icons</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> 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.</p> <p><span class="code">oRebuildCachedLists/moveAdminCols</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> 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.</p> <p><span class="code">oRebuildCachedLists/rebuildIcons</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/rebuildMenus</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/rebuildReports</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/rebuildSQLLists_quick</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/rebuildSQLLists_runtime</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/rebuildStringTablesMetaData</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/rebuildWindows</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oRebuildCachedLists/recalcMainMenuText</span> <span class="moddateby">(2006-12-04 Doug K.)</span><br /> Added private method which loops through the menu instances and sends a $recalcLanguageText message if it $cando and it belongs to the $ctask.</p> <p><span class="code">oRebuildCachedLists/reloadStringTables</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added error checking for $colcount=0.</p> <p><span class="code">oSQLLists/$:ForeignKeyScoresList</span> <span class="moddateby">(2006-11-15 Doug K.)</span><br /> Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.</p> <p><span class="code">oSQLLists/$_setColProperties</span> <span class="moddateby">(2006-09-13 Doug K per Chuck Martin.)</span><br /> Changed method name from private to $_ protected method to allow developers to override the method in a subclass of oSQLLists.</p> <p><span class="code">oSQLLists/$_setColProperties</span> <span class="moddateby">(2006-09-13 Doug K per Chuck Martin.)</span><br /> Changed method call from _setStringTableText to $_setStringTableText to allow developers to override the $_setColProperties method in a subclass of oSQLLists.</p> <p><span class="code">oSQLLists/$_setStringTableText</span> <span class="moddateby">(2006-09-13 Doug K per Chuck Martin.)</span><br /> Changed method name from private to $_ protected method to allow developers to override the $_setColProperties method in a subclass of oSQLLists.</p> <p><span class="code">oSQLLists/$initialize</span> <span class="moddateby">(2006-07-15 Doug K.)</span><br /> Check to make sure the cached list columns match the current master list columns. If not merge the cached list rather than copy it.</p> <p><span class="code">oSQLLists/$recalcLabelsTooltipsAbbrevs</span> <span class="moddateby">(2006-09-13 Doug K per Chuck Martin.)</span><br /> Changed method call from _setStringTableText to $_setStringTableText to allow developers to override the $_setColProperties method in a subclass of oSQLLists.</p> <p><span class="code">oSQLLists/@TEST_retDefinedListForCurrLine</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/_calcClassMetaDataListRow_kQuery</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/_calcClassMetaDataListRow_kSchema</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/_retColsMetaDataList_kQuery</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/_retColsMetaDataList_kQuery</span> <span class="moddateby">(2006-09-13 Doug K per Chuck Martin.)</span><br /> Changed method call from _setColProperties to $_setColProperties to allow developers to override the method in a subclass of oSQLLists.</p> <p><span class="code">oSQLLists/_retColsMetaDataList_kSchema</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/_retColsMetaDataList_kSchema</span> <span class="moddateby">(2006-09-13 Doug K per Chuck Martin.)</span><br /> Changed method call from _setColProperties to $_setColProperties to allow developers to override the method in a subclass of oSQLLists.</p> <p><span class="code">oSQLLists/buildClassInfoForCurrLine</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/buildColsListBaseColsFromQueryCols</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/buildDefinedListForCurrLine</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oSQLLists/retSQLClassesList</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Removed the $ref column from the $appendlists since the 'sqlclassref' has been removed from the SQL master lists.</p> <p><span class="code">oSQLLists/setForeignKeyScores</span> <span class="moddateby">(2006-11-14 Josh L)</span><br /> New foreign key ranking method which uses a 'treelevel' column to assist in setting the fkey scores.</p> <p><span class="code">oSQLLists/setForeignKeyScores</span> <span class="moddateby">(2006-12-31 Doug K per Andy H)</span><br /> Set views foreignkey score to higher than anything else.</p> <p><span class="code">oSQLLists/setSchemaForeignKeyScore</span> <span class="moddateby">(2006-11-14 Josh L)</span><br /> Recursive part of the new foreign key ranking method which uses 'treelevel' to assist in calculating foreign key scores.</p> <p><span class="code">oSecurity/$:SchemasList.$assign</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Modified for the new version of security.</p> <p><span class="code">oSecurity/$:UsersList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$:WindowsList.$assign</span> <span class="moddateby">(2006-11-29 Doug K.)</span><br /> Simply copy the pWindowsList to the ivar iWindowsList for use in raw form by other methods of this object.</p> <p><span class="code">oSecurity/$_initialize_defineLists</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$_initialize_defineLists</span> <span class="moddateby">(2006-12-12 Doug K.)</span><br /> Added defining the password info row which is used by wSecurityNewPassword.</p> <p><span class="code">oSecurity/$_updateGroupAndRebuildList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$_updateUserAndRebuildList</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$addUserToGroups</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Added error check for $colcount on SecurityInfoRow.</p> <p><span class="code">oSecurity/$canAccessWinInstID</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove the early exit points.</p> <p><span class="code">oSecurity/$canAccessWinInstID</span> <span class="moddateby">(2006-12-04 Doug K.)</span><br /> Modified code for new version windows and schema security.</p> <p><span class="code">oSecurity/$canDelete</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$canDelete</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Modified code for new version schema security.</p> <p><span class="code">oSecurity/$canEdit</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$canEdit</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Modified code for new version schema security.</p> <p><span class="code">oSecurity/$canInsert</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$canInsert</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Modified code for new version schema security.</p> <p><span class="code">oSecurity/$canMultiUpdate</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$canMultiUpdate</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Modified code for new version schema security.</p> <p><span class="code">oSecurity/$canView</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$canView</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Modified code for new version schema security.</p> <p><span class="code">oSecurity/$checkCurrUserPassword</span> <span class="moddateby">(2006-12-04 Doug K.)</span><br /> 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.</p> <p><span class="code">oSecurity/$checkPasswordHasExpired</span> <span class="moddateby">(2006-12-14 Doug K.)</span><br /> Added method $checkPasswordHasExpired for use by 'Security - New Password'.</p> <p><span class="code">oSecurity/$filterFieldsList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$filterFieldsList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> 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.</p> <p><span class="code">oSecurity/$filterFieldsList</span> <span class="moddateby">(2006-11-30 Doug K.)</span><br /> 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.</p> <p><span class="code">oSecurity/$filterWindowsList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$getUserPassword</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> New method for getting the password from either the 'userpasswordcolumn' or the 'securityinforow.passwordinforow.password' column.</p> <p><span class="code">oSecurity/$getUserPrefs</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$initialize</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$initializeTimeoutTimer</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Added timeout timer methods to oSecurity.</p> <p><span class="code">oSecurity/$isMemberOfGroup</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Added method which checks to see if the current user is a member of a specified group ID.</p> <p><span class="code">oSecurity/$removeUsersFromGroup</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$resetTimeoutTimer</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Added timeout timer methods to oSecurity.</p> <p><span class="code">oSecurity/$retGroupSchemasList</span> <span class="moddateby">(2006-09-06 Doug K. per Andy H.)</span><br /> Calculate the additional can... columns for visual only.</p> <p><span class="code">oSecurity/$retGroupSchemasList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$retGroupSchemasList</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Added code to convert older version securitylevel value to newer version canedit, caninsert, candelete... schema permissions.</p> <p><span class="code">oSecurity/$retGroupWindowsList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$retGroupWindowsList</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Modified code for new version schema security.</p> <p><span class="code">oSecurity/$retUserPasswordInfoRow</span> <span class="moddateby">(2006-12-12 Doug K.)</span><br /> Added method for getting the password info row for a specified user.</p> <p><span class="code">oSecurity/$retUserSchemasList</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Rewrote this method for the new version security.</p> <p><span class="code">oSecurity/$retUserWindowsList</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits. Rewrote this method for the new version security.</p> <p><span class="code">oSecurity/$saveCustomInfoRow</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$saveGroupSchemaSecurity</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$saveGroupSchemaSecurity</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Only store the schemas which the group can view. Saves space and speeds searches.</p> <p><span class="code">oSecurity/$saveGroupSchemaSecurity</span> <span class="moddateby">(2006-11-30 Doug K.)</span><br /> Renamed the method from $setGroup... to $saveGroup... to clearly state what the method does.</p> <p><span class="code">oSecurity/$saveGroupWindowSecurity</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$saveGroupWindowSecurity</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Only store the windows which the group has access to. Saves space and speeds searches.</p> <p><span class="code">oSecurity/$saveGroupWindowSecurity</span> <span class="moddateby">(2006-11-30 Doug K.)</span><br /> Renamed the method from $setGroup... to $saveGroup... to clearly state what the method does.</p> <p><span class="code">oSecurity/$saveUserPasswordInfoRow</span> <span class="moddateby">(2006-12-12 Doug K.)</span><br /> Added method for saving the password info row to the user information in the database.</p> <p><span class="code">oSecurity/$saveUserPrefs</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$saveUserSchemaSecurity</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$saveUserSchemaSecurity</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Only store the schemas which the user can view. Saves space and speeds searches.</p> <p><span class="code">oSecurity/$saveUserSchemaSecurity</span> <span class="moddateby">(2006-11-30 Doug K.)</span><br /> Renamed the method from $setUser... to $saveUser... to clearly state what the method does.</p> <p><span class="code">oSecurity/$saveUserWindowSecurity</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oSecurity/$saveUserWindowSecurity</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Only store the windows which user the has access to. Saves space and speeds searches.</p> <p><span class="code">oSecurity/$saveUserWindowSecurity</span> <span class="moddateby">(2006-11-30 Doug K.)</span><br /> Renamed the method from $setUser... to $saveUser... to clearly state what the method does.</p> <p><span class="code">oSecurity/$signIn</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">oSecurity/$signIn</span> <span class="moddateby">(2006-11-23 Doug K.)</span><br /> Added parameter bUseCurrUserSchemaSecurityList to $retUserWindowSecurityDetails message to prevent building the list twice in a row on signin.</p> <p><span class="code">oSecurity/$signIn</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> 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.</p> <p><span class="code">oSecurity/$startTimeoutTimer</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Added timeout timer methods to oSecurity.</p> <p><span class="code">oSecurity/$stopTimeoutTimer</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Added timeout timer methods to oSecurity.</p> <p><span class="code">oSecurity/convertOldSchemaSecurityLevels</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Added method to convert older verion securitylevel based schema security to newer version.</p> <p><span class="code">oSecurity/setOldSchemaSecurityLevels</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Added method to convert older verion securitylevel based schema security to newer version.</p> <p><span class="code">oStartupTaskDefaultMethods/$constructMethod</span> <span class="moddateby">(2006-12-07 Doug K.)</span><br /> Add call to $constructTaskVars to the start of this method so that object reference task vars can be set and instantiated.</p> <p><span class="code">oStartupTaskDefaultMethods/$destructMethod</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Send a $destructTaskVars message to delete the startup task object reference objects.</p> <p><span class="code">oStartupTaskVarsTool/$_INITIALIZESHAREDAPPPREFS</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Deprecated $initializeSharedAppPref. Redirect the message to $_initializeAppPrefs_maindatabase.</p> <p><span class="code">oStartupTaskVarsTool/$_initializeAppPrefs_maindatabase</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> 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.</p> <p><span class="code">oStartupTaskVarsTool/$constructTaskVars</span> <span class="moddateby">(2006-12-06 Doug K.)</span><br /> 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.</p> <p><span class="code">oStartupTaskVarsTool/$constructTaskVars</span> <span class="moddateby">(2006-12-21 Doug K.)</span><br /> Only construct and initialize the StudioWorks task variables.</p> <p><span class="code">oStartupTaskVarsTool/$destructTaskVars</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Added a method to delete the object reference type object instances of the task variables. This method is called by the $destructMethod of oStartupTaskDefaultMethods.</p> <p><span class="code">oStartupTaskVarsTool/$initialize_app_prefs</span> <span class="moddateby">(2006-07-13 Doug K.)</span><br /> Moved initialize of 'app_prefs' tvar to a new protected method named $_initializeAppPrefs_localdatafile</p> <p><span class="code">oTimerObservers/$#About</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Created a generic timer object which supports observers. Observers are notified when the $timer method is called.</p> <p><span class="code">oVersions_abstract/$:ReleaseNumber</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Added method to return the release number. Normally the current hour of the release.</p> <p><span class="code">oVersions_abstract/$:ReleaseType</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Added method to return the release type (final or beta).</p> <p><span class="code">oVersions_abstract/$:Version</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Modified the $:Version method to return the con($:ReleaseDate / $:ReleaseNumber $:ReleaseType)</p> <p><span class="code">oVersions_abstract/$setReleasePropertyMethods</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Added a new method to set the $:Release... property methods in the subclass for a new release.</p> <p><span class="code">tBase/$_initialize_FixNulls</span> <span class="moddateby">(2006-08-15 Doug K. per Andy H.)</span><br /> Modified the method so that FixNullCols are not also include in the ForceNullCols list.</p> <p><span class="code">tBase/$insertEmptyRecord</span> <span class="moddateby">(2006-12-31 Doug K per Andy H.)</span><br /> Flag was not being set to false for SQL error.</p> <p><span class="code">tBase/$selectWhere</span> <span class="moddateby">(2006-07-28 Doug K per Andy H.)</span><br /> Added setting the statement object to $usercursor. Solves problem with SQL server.</p> <p><span class="code">wDBAdminDataMover/setPKeyCounters</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">wDBAdminPrimaryKeys/$setCounterValues</span> <span class="moddateby">(2006-11-10 Doug K. per Will Adkin)</span><br /> Bug fix. 'schemaclassref' was removed from the pkeys list. Switch to using 'schemalibname' and 'schemaclassname'. and setting rSchema.</p> <p><span class="code">wDBAdminPrimaryKeys/resetPrimaryKeyCounterValues</span> <span class="moddateby">(2006-11-10 Doug K. per Will Adkin)</span><br /> Bug fix. 'schemaclassref' was removed from the pkeys list. Switch to using 'schemalibname' and 'schemaclassname'. and setting rSchema.</p> <p><span class="code">wDBAdminSchemas/sortByFKeyScore</span> <span class="moddateby">(2006-11-15 Doug K.)</span><br /> Changed foreignkeyscore sort to match reverse order of Josh's new scoring methods.</p> <p><span class="code">wDBAdminSyncDatabaseToSchemas/insertEmptyRecordsForSelectedSchemas</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Remove the sort by foreign key score code from this method as it is in the oDBAdmin $insertEmptyRecords method.</p> <p><span class="code">wDBAdminSyncUsers/$createTablesOwnerLogonFile</span> <span class="moddateby">(2006-09-12 Doug K.)</span><br /> Change 'EncryptedString' to 'EncryptedBinVar' to solve version Omnis 4.2 blowfish problem.</p> <p><span class="code">wRebuildLists/moveAdminColsToEndofSQLClasses</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added button and method call for moving the admin columns to the end of the SQL classes in the selected libraries.</p> <p><span class="code">wRebuildLists/sortSchemas_Wn_Mn_Icons</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Added button and method call for sorting the sWn , sMn, sIcons class columns in the selected libraries.</p> <p><span class="code">wSQLMetaData/buildChildNodes</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">wSQLMetaDataSchemaColsEditor/buildFKColsList</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">wSecurity/$#About</span> <span class="moddateby">(2006-11-29 Doug K.)</span><br /> Overhaul wSecurity (shell) window. Only instantiate subwindows as needed.</p> <p><span class="code">wSecurity/changeUser</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> 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.</p> <p><span class="code">wSecurityNewPassword/$#About</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> Created window for generating new passwords.</p> <p><span class="code">wSecurityNewPassword/control_evClick</span> <span class="moddateby">(2006-12-20 Doug K.)</span><br /> Bug fix. Changed 'Do method quitOmnis' to 'Quit Omnis (Force quit).</p> <span class="code">wSecurity_GroupSchemas/$#About</span> <span class="moddateby">(2006-11-22 Doug K.)</span><br /> Complete overhaul of the Security windows user interface and methods. <a name="swdocs4" /> <h3>swDocs4</h3> <p><span class="code">@00 String Tables/@65 Adding a Language</span> <span class="moddateby">(2006-08-30 Doug K.)</span><br /> Added documentation for 'Adding a Language' to StudioWorks.</p> <p><span class="code">@50 Field Handler/@00 About</span> <span class="moddateby">(2006-09-21 Doug K.)</span><br /> Added documentation on the field handler.</p> <p><span class="code">@50 Preferences/@40 Module Preferences</span> <span class="moddateby">(2006-12-18 Doug K.)</span><br /> Added documentation on 'Module Preferences'</p> <p><span class="code">@60 Security/@00 About</span> <span class="moddateby">(2006-11-21 Doug K.)</span><br /> Added documentation on how security works in StudioWorks.</p> <p><span class="code">@61 Security Timeout/@00 About</span> <span class="moddateby">(2006-12-12 Doug K.)</span><br /> Added documentation on timeout security in StudioWorks.</p> <p><span class="code">@62 Security New Password/@00 About</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> Added documentation on 'new password' security in StudioWorks.</p> <p><span class="code">@62 Security New Password/@11 Enabling New Password Security</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> Added documentation on enabling the 'new password' security in StudioWorks.</p> <span class="code">@62 Security New Password/@15 Temporary Password</span> <span class="moddateby">(2006-12-13 Doug K.)</span><br /> Added documentation on setting a temporary password for the 'new password' security in StudioWorks. <a name="swgui4" /> <h3>swGui4</h3> <p><span class="code">mContext/$control</span> <span class="moddateby">(2006-10-04 Doug K.)</span><br /> Added return FlagOK from observer callback method and break to end of loop if false.</p> <p><span class="code">mMainMenu/$#About</span> <span class="moddateby">(2006-07-21 Doug K.)</span><br /> 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.</p> <p><span class="code">mMainMenu/$construct</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Added Runtime Debug cascading menu plus code to remove the cascading menu if the user in not a system administrator.</p> <p><span class="code">mRuntimeDebug/$#About</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Added runtime debu menu to help with debugging StudioWorks when opened with runtime version of Omnis Studio.</p> <p><span class="code">oConcretizer/$updateDeveloperWinClass</span> <span class="moddateby">(2006-07-24 Doug K per Chuck M.)</span><br /> Bug fix. Added missing first parameter prWin to the $_retWinType method call and check for pos() of 'edit' in the WinType.</p> <p><span class="code">oConcretizer/$updateDeveloperWinClass</span> <span class="moddateby">(2006-07-24 Doug K.)</span><br /> Add new fields the default 'iFieldSpacing' below the bottom existing field. It was 50 pixels below.</p> <p><span class="code">oConcretizer/addField</span> <span class="moddateby">(2006-08-31 Doug K. per Andy H.)</span><br /> Set $nogray property of checkbox field to kTrue for better appearance when disabled.</p> <p><span class="code">oConcretizer/addField</span> <span class="moddateby">(2006-11-09 Doug K per Chuck Martin.)</span><br /> Added code to set properties for kMaskedEntry fields. ($formatmode, $formatstring, $inputmask)</p> <p><span class="code">oConcretizer/calculateObjTypes</span> <span class="moddateby">(2006-11-09 Doug K per Chuck Martin)</span><br /> 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.</p> <p><span class="code">oConcretizer/setRuntimeFieldsAndFieldPropertiesList</span> <span class="moddateby">(2006-12-12 Doug K.)</span><br /> Added kBobj ti the object types that shape fields can be used for labels.</p> <p><span class="code">oConcretizer/setTextAndTooltipProperties</span> <span class="moddateby">(2006-12-12 Doug K.)</span><br /> Added kBobj to the kText, kLabel object types that get treated as labels so that shape fields can be used.</p> <p><span class="code">oConcretizer/setTextAndTooltipProperties</span> <span class="moddateby">(2006-12-21 Doug K.)</span><br /> If a $bobj is in a complex grid header, set the text to the abbreviation, like we would for a headed list.</p> <p><span class="code">oConcretizer/setTextAndTooltipProperties</span> <span class="moddateby">(2006-12-21 Doug K.)</span><br /> Performance enhancement. Cache the current SQL class and ColsList to reduce the calls to oSQLLists.</p> <p><span class="code">oFieldHandler/$:EmptyFieldPropertiesList</span> <span class="moddateby">(2006-09-21 Doug K.)</span><br /> 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.</p> <p><span class="code">oFieldHandler/$control</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Reset the timer on evKey and evClick.</p> <p><span class="code">oFieldHandler/$initializeFields</span> <span class="moddateby">(2006-07-07 Doug K.)</span><br /> Clear the window class instance $userinfo after copying it to the iFieldsList. Conserve memory.</p> <p><span class="code">oFieldHandler/$initializeFields</span> <span class="moddateby">(2006-09-07 Doug K.)</span><br /> Removed the 'paranoid' code that wipes out the $dataname of entry field which are unknown to the field properties list.</p> <p><span class="code">oFieldHandler/$initializeFields</span> <span class="moddateby">(2006-09-21 Doug K.)</span><br /> Added an extra parameter, pExtraFieldsList_opt, to allow the sender to add/set the field handler properties for extra fields.</p> <p><span class="code">oFieldHandler/$initializeFields</span> <span class="moddateby">(2006-09-22 Josh L.)</span><br /> Removed an End If that was finishing a loop prematurely</p> <p><span class="code">oFieldHandler/$initializeFields</span> <span class="moddateby">(2006-09-22 Josh L.)</span><br /> 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.</p> <p><span class="code">oFieldHandler/$initializeFields</span> <span class="moddateby">(2006-11-30 Doug K.)</span><br /> Removed the $filterFieldList and security applied code from this method. The code was adding a lot of unnecessary complication to the method.</p> <p><span class="code">oFieldHandler/$initializeFields_20061130</span> <span class="moddateby">(2006-07-07 Doug K.)</span><br /> Clear the window class instance $userinfo after copying it to the iFieldsList. Conserve memory.</p> <p><span class="code">oFieldHandler/$initializeFields_20061130</span> <span class="moddateby">(2006-09-07 Doug K.)</span><br /> Removed the 'paranoid' code that wipes out the $dataname of entry field which are unknown to the field properties list.</p> <p><span class="code">oFieldHandler/$initializeFields_20061130</span> <span class="moddateby">(2006-09-21 Doug K.)</span><br /> Added an extra parameter, pExtraFieldsList_opt, to allow the sender to add/set the field handler properties for extra fields.</p> <p><span class="code">oFieldHandler/$initializeFields_20061130</span> <span class="moddateby">(2006-09-22 Josh L.)</span><br /> Removed an End If that was finishing a loop prematurely</p> <p><span class="code">oFieldHandler/$initializeFields_20061130</span> <span class="moddateby">(2006-09-22 Josh L.)</span><br /> 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.</p> <p><span class="code">oFieldHandlerGenerateProperties/$buildFieldHandlerProperties</span> <span class="moddateby">(2006-09-21 Doug K.)</span><br /> 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.</p> <p><span class="code">oFieldHandlerGenerateProperties/buildDecoratorProperties</span> <span class="moddateby">(2006-09-21 Doug K.)</span><br /> Renamed the _edit suffixed column to remove the _edit suffix, so that the same name is used through StudioWorks.</p> <p><span class="code">oFieldHandlerLookupTypeAhead/$control</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> 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.</p> <p><span class="code">oFieldHandlerLookupTypeAhead/$updateLookupList</span> <span class="moddateby">(2006-07-27 Doug K.)</span><br /> Bug fix. Refs lookups list was not being filtered.</p> <p><span class="code">oFieldHandlerLookupTypeAhead/event_evAfter</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Modified method for better lookup behavior on Refs mandatory and non-mandatory lookup fields.</p> <p><span class="code">oFieldHandlerLookupTypeAhead/setMainListValues</span> <span class="moddateby">(2006-08-29 Josh L.)</span><br /> Removed the process event and continue because it was causing the evAfter event to get passed over.</p> <p><span class="code">oMenusList_abstract/addMenuLineToMenusStringTable</span> <span class="moddateby">(2006-12-20 Doug K.)</span><br /> Check for len(pMenuLineID) before attempting to add the menu line ID to the sMn_stb schema class.</p> <p><span class="code">oMenusList_abstract/addReportsMenuObjectsAndMethods</span> <span class="moddateby">(2006-12-20 Doug K.)</span><br /> Check for len(pMenuLineID) before attempting to add the menu line ID method to the reports menu object class.</p> <p><span class="code">oMenusList_abstract/addWindowMenuLine</span> <span class="moddateby">(2006-12-20 Doug K.)</span><br /> Check for len(pMenuLineID) before attempting to add the menu line ID method to the menu observer object class.</p> <p><span class="code">oPrompts/openModalPrompt</span> <span class="moddateby">(2006-08-15 Doug K per Josh L.)</span><br /> Added this else so that if the window instance is already present the method doesn't try to open another.</p> <p><span class="code">oWindows/$buildWindowsList</span> <span class="moddateby">(2006-12-18 Doug K.)</span><br /> Bug fix. Preset the flag to true before the loop. (was false)</p> <p><span class="code">oWindows/$initialize</span> <span class="moddateby">(2006-08-09 Doug K.)</span><br /> Removed early exist points.</p> <p><span class="code">oWindows/$initialize</span> <span class="moddateby">(2006-09-06 Doug K.)</span><br /> Changed finding 'sWindows_listdef' to using oFunctions $findClass so that developers can use their own listdef in their main library.</p> <p><span class="code">oWindows/$openWindow</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Bug fix. The current line was not being set in the iWindowsList causing the 'If WindowsList.openinshell' to fail.</p> <p><span class="code">oWindowsList_abstract/$_addCustomWinInstID</span> <span class="moddateby">(2006-11-24 Doug K.)</span><br /> 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!!!</p> <p><span class="code">oWindowsList_abstract/$_addDefaultWinInstIDsForSchemasInLib</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">wAbout/showLibsList</span> <span class="moddateby">(2006-07-12 Doug K.)</span><br /> Cleanup text translation so that if translation not found, leave the text alone. Removed the 'master version' code which was never implemented by oVersions.</p> <p><span class="code">wBase_ToolbarTitlebar_abstract/$_constructToolbar</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">wBase_abstract/$_constructDefineVars</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> 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.</p> <p><span class="code">wBase_abstract/$doCmnd</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Reset the timeout timer each time this method is called.</p> <p><span class="code">wBase_abstract/$save</span> <span class="moddateby">(2006-07-27 Doug K.)</span><br /> Added $refilter after $doworkBatch to refilter the smartlist if $filter had been used.</p> <p><span class="code">wConcretizer_template/$#About</span> <span class="moddateby">(2006-07-24 Doug K per Chuck M.)</span><br /> Added code to the DateFieldCalendarButton to check that the date entry field is enabled before opening the calendar prompt window.</p> <p><span class="code">wContainer_List_ListChildren_abstract/$control</span> <span class="moddateby">(2006-11-20 Doug K per Andy H)</span><br /> 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.</p> <p><span class="code">wEditList_abstract/$:ToolbarCmndsCSV</span> <span class="moddateby">(2006-08-15 Doug K. per Andy H.)</span><br /> Updated the 'Quit method...' comment line to match the actual method line values.</p> <p><span class="code">wEditList_abstract/$delete</span> <span class="moddateby">(2006-09-12 Doug K per Andy H)</span><br /> Include all of the 'includeinprompts' columns in the singe record delete confirmation prompt message.</p> <p><span class="code">wEditList_abstract/$eventClose</span> <span class="moddateby">(2006-09-13 Doug K.)</span><br /> Calculate the 'Save Changes' dialog message text based on the # of modified records. Refactored the method.</p> <p><span class="code">wHeadedList_autoconfig/$#About</span> <span class="moddateby">(2006-08-31 Doug K.)</span><br /> 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.</p> <p><span class="code">wHeadedList_autoconfig/$control</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Added reset timeout timer to various events.</p> <p><span class="code">wList_abstract/$updateList</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Define the TargetRow variable by sending a $retDefinedList message to oSQLLists rather than copying iDefinedList. iDefinedList has been removed.</p> <p><span class="code">wList_abstract/$updateList</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Removed early exit points.</p> <p><span class="code">wList_autoconfig/$delete</span> <span class="moddateby">(2006-08-02 Doug K.)</span><br /> After deleting the selected lines, set the current line to either the previously current line or line one of the list.</p> <p><span class="code">wList_autoconfig/$edit</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Copy iList and remove non-selected lines rather than merge selected lines into an empty list. (Get rid of using iDefinedList)</p> <p><span class="code">wList_autoconfig/$view</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Copy iList and remove non-selected lines rather than merge selected lines into an empty list. (Get rid of using iDefinedList)</p> <p><span class="code">wLookupList/$getFieldTopLeftPosnInWindow</span> <span class="moddateby">(2006-08-28 Josh L.)</span><br /> Multiplied the vertical scroll factor by 8 because the list was appearing far down the page from the field.</p> <p><span class="code">wMainWindow/$construct</span> <span class="moddateby">(2006-09-12 Doug K per Birger R.)</span><br /> Added FlagOK and $promptonceLastError error handling to the $construct method.</p> <p><span class="code">wNav_Treelist/$_event_evOpenContextMenu</span> <span class="moddateby">(2006-08-30 Doug K.)</span><br /> Added a 'CollapseAllNodes' context menu line to the nav treelist.</p> <p><span class="code">wNav_Treelist/$collapseAllNodes</span> <span class="moddateby">(2006-08-30 Doug K.)</span><br /> Added a 'CollapseAllNodes' method for the nav treelist.</p> <p><span class="code">wPromptInput/_addLabel</span> <span class="moddateby">(2006-12-14 Doug K.)</span><br /> Added translation of string table formated labels. e.g. 'security.NewPassword'</p> <p><span class="code">wSearchbar_abstract/$#About</span> <span class="moddateby">(2006-08-15 Doug K.)</span><br /> Changed the variable cPrevValue to iPrevValue; from a class variable to an instance variable.</p> <p><span class="code">wSearchbar_abstract/$find</span> <span class="moddateby">(2006-08-15 Doug K. (per bug report by Chuck M))</span><br /> Set the iPrevValue regardless of whether or not it has a length.</p> <p><span class="code">wSearchbar_abstract/$find</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Reset timeout timer each time this method is run.</p> <p><span class="code">wSearchbar_abstract/$initialize</span> <span class="moddateby">(2006-08-15 Doug K.)</span><br /> Removed early exits.</p> <p><span class="code">wSearchbar_abstract/loadLastCriteria</span> <span class="moddateby">(2006-08-15 Doug K.)</span><br /> Removed early exits and modify method so that null is returned if there was an error.</p> <p><span class="code">wSearchbar_abstract/loadLastCriteria</span> <span class="moddateby">(2006-08-15 Doug K.)</span><br /> Added recalling the search criteria value from the LastCriteriaRow.</p> <p><span class="code">wSearchbar_abstract/saveLastCriteria</span> <span class="moddateby">(2006-08-15 Doug K.)</span><br /> Removed early exits.</p> <p><span class="code">wSearchbar_abstract/saveLastCriteria</span> <span class="moddateby">(2006-08-15 Doug K.)</span><br /> Added storing the search criteria value to the LastCriteriaRow.</p> <p><span class="code">wShell/$doCmnd</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Reset the timeout timer each time this method is called.</p> <span class="code">wShell/$showSubWin</span> <span class="moddateby">(2006-12-05 Doug K.)</span><br /> Reset the timeout timer each time this method is called. <a name="swrefs4" /> <h3>swRefs4</h3> <p><span class="code">oMenusList/$addNavigationMenuLines</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Added RefsLookupList to the navigation list.</p> <p><span class="code">oRefs/$buildList</span> <span class="moddateby">(2006-07-15 Doug K. per Andy H.)</span><br /> Change passing in the $:SessionObj to $:SessionRow for the 2nd parameter. Also removed early exits.</p> <p><span class="code">oRefs/$retList</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Refactored method to remove early exits.</p> <p><span class="code">oRefs/$retLookupList</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> 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.</p> <p><span class="code">oRefs/$retLookupList</span> <span class="moddateby">(2006-10-05 Doug K per Tom Maher.)</span><br /> Bug fix for showing RefsDesc column if different than value column.</p> <p><span class="code">oRefs/$retPrimaryKeysList</span> <span class="moddateby">(2006-07-28 Doug K.)</span><br /> Do not include the 'Refs' table in the primary keys list.</p> <p><span class="code">oWindowsList/$addCustomWinInstIDs</span> <span class="moddateby">(2006-07-26 Doug K.)</span><br /> Added RefsLookupList and RefsLookupEdit WinInstIDs. These are windows used specifically for editing Refs lookups.</p> <span class="code">tRefs/$updateRow</span> <span class="moddateby">(2006-09-20 Josh L.)</span><br /> Changed this from do inherited to do $cinst.$inherited ... so that the parameters would get passed on. They didn't seem to be reaching the next step. <a name="swreports4" /> <h3>swReports4</h3> <p><span class="code">oReportBuilder/$createReportClass</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oReportProperties/$retColsPropertiesRow</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">oReports/findReportInstIDClass</span> <span class="moddateby">(2006-07-14 Doug K.)</span><br /> Replaced 'sqlclassref' with 'sqlclasslibname.sqlclassname'.</p> <p><span class="code">rReportBuilder_template/$#About</span> <span class="moddateby">(2006-07-03 Doug K.)</span><br /> 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.</p> <p><span class="code">rReport_abstract/$:CompanyLogoHeight</span> <span class="moddateby">(2006-10-05 Josh L)</span><br /> Added this method to control the logo height for different sized logos.</p> <p><span class="code">rReport_abstract/$:CompanyLogoHeight.$assign</span> <span class="moddateby">(2006-10-05 Josh L)</span><br /> Added this method to control the logo height for different sized logos.</p> <p><span class="code">rReport_abstract/$:PrintInfoText.$assign</span> <span class="moddateby">(2006-09-29 Josh L)</span><br /> I included this method because it was missing. This is a way to control the Print Info in the top left of generated reports.</p> <span class="code">rReport_abstract/$setLogo</span> <span class="moddateby">(2006-10-05 Josh L)</span><br /> Added this method to size and position the company logo. <a name="swweb4" /> <h3>swWeb4</h3> <p><span class="code">Startup_Task/$#About</span> <span class="moddateby">(2006-12-06 Doug K.)</span><br /> Changed the task variables to object reference where applicable.</p> <p><span class="code">oHTMLTools/$retSearchBarHTML</span> <span class="moddateby">(2006-07-11 Doug K.)</span><br /> Get the 'includeinsearches' rather than the non-hidden columns for the search columns list.</p> <p><span class="code">oRemoteTaskMethods/$initializeAllTaskVars</span> <span class="moddateby">(2006-12-07 Doug K.)</span><br /> Modified initialization of remote task vars to change/set to object reference type variables.</p> <p><span class="code">oRemoteTaskMethods/$initializePublicSearchTaskVars</span> <span class="moddateby">(2006-12-07 Doug K.)</span><br /> Modified initialization of remote task vars to change/set to object reference type variables.</p> <p><span class="code">oSearchPage/addSQLCLassToPublicSearchSQLClasses</span> <span class="moddateby">(2006-12-07 Doug K.)</span><br /> Added missing End if. Modified code to work with an empty 'Quit method' in the $:PublicSearchSQLClasses method.</p> <p><span class="code">rtDispatcher/$#About</span> <span class="moddateby">(2006-12-06 Doug K.)</span><br /> Changed the task variables to object reference where applicable.</p> <span class="code">rtPublicSearch/$#About</span> <span class="moddateby">(2006-12-06 Doug K.)</span><br /> Changed the task variables to object reference where applicable. <p class="footer">StudioWorks Documentation - Copyright 2005 Vencor Software </p></div> </body> </html>