V C / m
3.1 beta
The Force of Change
Release Notes
1. Web Browser User Interface
The underlying architecture of the web-browser user interface has been extended to provide more modularity and scalability. Common features have been re-factored and can be made available generically across the whole UI.
The following specific architectural changes have been made:
- User definable folders in left hand panel. Includes user based access control, ability to embed user defined custom forms and methods.
- Menu controls are now context sensitive and are automatically enabled/disabled based on the current context.
- The Transfer menu is now configurable using the normal menu maintenance tools. It is no longer necessary to manually set entries in ^%vctr(function).
- Column headings are now synchronized when the main window is scrolled horizontally.
- The contents of the main panel and the audit trail panel can now be printed or print-previewed at any time.
- The left hand folder window can now be scrolled when using drag'n'drop.
- Increased accessibility with keyboard shortcuts for many operations that were previously only possible using the mouse.
- The ability to resize and/or hide the navigation panel and audit trail panel.
The following specific functional changes have been made:
- Color coded filter buttons on the select toolbar to provide a more intuitive way of selecting items by status. An additional filter allows selection by highest version.
- Location folders are now color coded to indicate whether they are a library (dark-blue) or a regular location (yellow). Single and multi-version locations are also differentiated by the use of multi-tabbed folder icon for multi-version locations.
- Improvements to the web-based security features to restrict the ability for authenticated users to connect using another user's credentials. Session logging also records all successful and failed log in attempts.
- The selection filters for each location and component type are now persisted allowing views of specific locations to be retained from session to session.
- Cancel. You are now able to cancel a checked-out object and reinstate its predecessors using the web-browser UI. The Cancel function also includes the ability to cancel all the objects in a change request as a single operation.
- Merge. Concurrent versions can be merged via the web-browser UI. A graphical ancestry tree and improved validation makes this process more intuitive for the user.
- Setup folder. A setup folder allows all configuration tables to be configured using the web-browser UI. The following tables can be configured:
- Setup Properties
- Users
- Change Request Types
- Systems
- Locations
- Location Classes
- Transfer Routes
- Physical Addresses
- Menu Functions
- Menus
- Printers
- Devices
- JavaScript Files
Object Folder. A new folder provides a view of all object versions registered to VC/m. Within this folder each object contains sub-folders listing its change requests, its audit trail and its components at each active location. Change Request Folder. A new folder provides a global view of all change requests. Each change request contains sub-folders listing the object versions belonging to that change request in the same format as the object folder. Location Class Folder. A new folder lists locations within a location class. These locations are valid drop targets for transfer operations. Locations in these folders are listed in a user specified sort order that is defined in the Location Class setup. Components Folder. The components sub-folder within Locations has been brought up a level to reduce the number of key clicks required to access it, especially when there is only one component mask for a location. Sub-folders in the Object view provide access to each version's audit trail and easy browsing of the same version in other locations. JavaScript Files. It is now possible to specify, in the JavaScript File table, one or more JavaScript files that should be included as part of the main VC/m application window. This enables user written functionality to be incorporated within VC/m, providing further scope for extensibility of the product. System menu. A new top level menu contains a number of new system management functions. These include license view/edit, connect as a different user, purge session logs and a number of other functions. It is recommended that access to the options in this menu be restricted. User locales. A locale setting may now be specified for each user. In this release this specifically affects the format of date/time entry, either DD/MM/YY or MM/DD/YY. In future releases it may be extended to have addition effects. Menus Customization. Web menus may now be overridden at any level, it is no longer necessary to override mnuMain in order to have it call a custom sub-menu. A sub-menu can be overridden and all calls to that menu in any context will use the specified custom menu. Menus can be overridden on a system-wide basis or for a specific user. The specific user override is generally intended to enable custom menus to be developed and tested without impacting other users of the system. Location Deltas. A new report allows the difference between two locations to be viewed in terms of versions or change requests. 2. Support for Beyond Compare
Objects and Components accessible through VC/m can be compared graphically using Beyond Compare 2. Beyond Compare is a low priced, market leading, visual compare tool.
VC/m provides an FTP based service for integration with Beyond Compare. Other tools that use FTP services may be able to use this service, however Beyond Compare is the only service that is officially supported with this version of VC/m.
George James Software is an approved reseller of Beyond Compare. Orders can be placed by sending details of your requirements to admin@georgejames.com.
3. XML Based Configuration
VC/m configurations can be defined completely using XML formatted configuration files. Infrastructure has also been implemented to allow elements of a configuration to be abstracted using XSL, making it easy to define templates that represent sandbox configurations etc.
The following configuration tables can be maintained using the XML configuration file:
- User
- Physical location
- Logical location
- Location
- Location Class
- Transfer Route
- System
4. XML File Interchange
A new location storage format (FX) allows Cache 5 format XML import/export files to be used instead of routine save, global save and CDL file format for sequential transfers.
5. Web-Browser User Interface Keyboard Shortcuts
The following keyboard shortcuts can be used to navigate within the web-browser UI:
F1 Help F3 Toggle debug window F5 Refresh the selection using the current filter settings F6 Toggle focus between the main panel and the folder panel <Tab> Move from one selected item to the next within the main panel and folder panel + Open/Close a folder <Space> Open a selected folder <Enter> Refresh the selection using the current filter settings <Del> Delete (or un-register) the selected item Alt+1 Toggle display of the folder panel Alt+2 Toggle display of the audit trail panel Ctrl+C Copy selected item to the work list Ctrl+V Paste the work list contents to the selected item Ctrl+N Create a new instance of the selected item type Ctrl+O Open the selected item 6. De-supported Platforms
With effect from this version of VC/m support for the following platforms will no longer be maintained:
- ISM
- DTM
7. Upgrade steps
Follow the normal installation procedure. Be sure to run ^%vcins as this performs two file conversion operations:
- Locations within a Location Class are assigned a display order sequence number
- A new audit trail by date index resolves a sorting issue
The names of all of the server side methods for the web interface have changed in this release. This will affect access security settings for menu and function access, it may also affect custom menus. These settings should be reviewed on completion of installation. The following table lists the old method names and the corresponding new name. Note that in some cases there may not be a direct one-to-one equivalence.
VC/m 2.4 VC/m 3.0 fnAbout() VCm.fnAbout fnChangeRequestDelete() ChangeRequest.fnDelete fnChangeRequestNew() ChangeRequest.fnNew fnChangeRequestOpen() ChangeRequest.fnOpen fnComponentDelete() Component.fnUnregister Component.fnDelete fnConnect() Connect.fnConnect Connect.fnConnectAs fnDisabled() n/a fnDisconnect() Connect.fnDisconnect fnExit() fnExit fnHelp() VCm.fnHelp fnMainRun('','') fnRunWindow fnMenuRun("%vc361") fnRunWindow fnMenuRun("%vc561") fnRunWindow fnMenuRun("%vc681") fnRunWindow fnMenuRun("%vc821") fnRunWindow fnMenuRun("<page>") fnRunWindow fnObjectRemove() Object.fnRemoveFromChangeRequest fnRefresh() fnRefresh fnTransfer("<function>","<toLocation>") Transfer.fnTransfer fnTransfer("IN","") Transfer.fnTransfer fnTransfer("OUT","") Transfer.fnTransfer fnTransfer("XFER","") Transfer.fnTransfer fnWorkListClear() fnWorkListClear fnWorkListCopy() fnWorkListCopy fnWorkListPaste() fnWorkListPaste mnuChangeRequest mnuChangeRequest mnuDisconnected mnuDisconnected mnuEdit mnuEdit mnuHelp mnuHelp mnuMain mnuMain mnuServer mnuFile mnuServerDisconnected mnuServerDisconnected mnuTransfer mnuTransfer (see note below) mnuView mnuView Note that mnuTransfer is now a conventional menu and is no longer driven by the contents of ^%vctr(function). Custom transfer functions can be added to the Transfer menu by creating a custom menu called, say, MNUTRANSFER, containing the transfer functions you require. You can then override the standard mnuTransfer menu with your custom menu.
8. Bug Fixes
The following list is a summary of all bug fixes included in this release. Many of these bug fixes will have been back-ported and been available as patches for the previous release of VC/m.
L2152 Allow @psa as first piece of remote:// address L2364 Change request has wrong usernames L2365 Fix bad link to manual L2367 Fix browser error in component view where object name contains " L2422 Task server fixes L2426 Detect inaccessible ECP-connected namespaces on Cache 5 L2441 PgUp and PgDn take you out of the component list L2444 Fix diff crash if one object has no components L2449 Xfer between locations mapped to same physical was pre-deleting object L2450 Some Caché 5 checks are triggered on Caché 4.1 L2454 Fix report bug L2459 Fix display bugs L2463 New editor interface for Cache L2494 Del-key shortcut doesn't respect access code on menu options L2501 Del key in Select textbox gives error L2503 More intelligent defaults for system and variant L2504 Allow selection by icon as well as by text L2520 Lock not always released L2522 Don't hang if nonexistent CR entered at object prompt L2523 Release control sheet works incorrectly L2539 Change to change request validation L2556 Remove uppercase conversion in %vc9md18 so it works on Unix L2572 getDtMod missing from %vc9fi17 L2585 Object list in web interface always shows obj desc, even if var desc exists L2613 Expansion of CR with more than max number of obvs failed to display L2622 <SUBSCRIPT>fetch+1^%vc574 in Menu Add/modify if eXit without choice after lookup L2633 Speed up termination of ABC.X* selector L2660 Cancel via Web UI L2670 Swap back to home namespace afterwards L2681 New report comparing contents of 2 locations L2683 Component drivers need to use task server L2691 exists^%vc9md must use task server L2691a Allow VC/m to work on a Cache system with UIC security enabled L2692 Handle object, component names containing symbols (e.g. #) L2702 Handle apostrophe in CR title on web i/f L2708 Prevent Cancel from deleting components L2715 Transfers very slow when DCP-accessed location is down L2715a When checking dependencies, defer test for offline as late as possible L2717 Install objects in correct order L2723 INT is not synonymous with R in some respects L2727 To avoid STORE error, do not use local array to gather term compile errors L2733 Handle task server addresses for CDL and CLS components L2736 Permit component types to be disabled L2740 Supply %usr to tasks, and set %msg=0 L2744 Cancel loops with <undef>k85+4^vc1xld if reinstating empty object L2746 $$find function missing from %vc1seq1, breaking MINT driver L2754 Absolute active location list detaches all components from object in destination L2758 Block use of class as to-loc if route increments version L2764 <UNDEFINED>home+1^%vc9md when using WLD component driver L2768 Put space between diff command and any argument L2771 Cache 5 templates don't load when vcm sub-directory doesn't already exist L2777 Handle Cache systems where no <ENDOFFILE> error is signalled L2779 Component view of library shows all unregistered L2781 $$order^%vc9fi missing for Cache on UNIX L2789 <UNDEFINED>delM+15 L2793 CLS components not loading from F-type location L2797 auto entry point is not defaulting release date to today L2802 Merge Versions in Web UI L2802.3 Change Request Lookup Screen L2802.3a Supplemental changes for chref select screen L2802/1 Change requests containing period cannot be searched in WebUI L2804 Web transfer must lock before creating new version L2814 Protect our %msg variable from the bad behaviour of $system.CSP.LoadPage L2823 Changes to user authentication L2827.1 Error if press work list button without selecting a change request L2832 Bugs with location upgrade L2840 status^%vc1edt should return 0, not -1, for no-master obv L2873 Handle apostrophe in CR description L2911 Enable text and bin drivers to work via local scratch file L2929 Temp file not accessed via task server L2971 Fix mkdir^%vc9fi on VMS L2979 Protect obv during term processing L2983 Require dates on CR Summary Report request L2993 Location Copy was carrying over system codes between runs L2994 Get from F-type location errors when component is exact multiple of 200 bytes L3009 Delete from CRs even if not active anywhere L3012 Encode data using UTF8 for XML forms L3015 Web transfer must refine addr1() in the same way as addr2() L3016 Cache 5.0.4 broke our Studio integration L3019 Add task server locking to make it reliable on ECP L3051 Refuse to run VC/m if in a transaction L3074 Transmit messages back to task-server caller L3083 Make CR transfer a single operation L3109 Make "Access Denied" message more informative L3114 Handle get from Ftype location of a 0-byte BIN component L3119 By-date audit log records are not sequenced within the second L3120 When web-registering component, don't offer existing object L3126 Add a NewObject dependency function L3140 When looking for default function, skip ones not web-enabled L3146 Make component reads more failsafe L3147 Number allocation is before validation L3162 Avoid <UNDEFINED>k85+4^%vc1xld when no-component object transferred L3195 Web xfer must check access on route sooner L3195a API xfer must check access on route L3198 Merge needs to maintain both lines of ancestry L3215 Also include in the checked-out report objects not associated with any CR L3231 Per-Transfer Termination hook called prematurely by AUTOT L3235 Let $$exists^%vc9md on Cache work with minimal delay when network is down L3237 Release lock if ^%vcvc("changeRequestDelete") returns false L3238 Make Studio 5 interface operate in a degraded mode when VC/m server unreachable L3242 status^%vc1edt should report 2 for "unregistered here" rather than "anywhere" L3271 Show all system codes L3299 <PARAMETER>noBackslash^%vc335 L3300 Search for specific CR does not find it L3303 Cant resize the change request screen L3315 When an eligible AUTOT fails, report it L3325 Rename the inc-page so it works on OpenVMS L3326 Increase obv length from 40 to 60 L3340 Allow / in CR description and comments L3346 Ignore attempt to filter on unknown component type L3418 Input object description at registration d0002 Load from Cache on Unix d0003 VC/m configuration using xml d0004 Add G to %vc413 d0005 FTP server for Beyond Compare d0006 Further corrections to %vc413 d0007 Extensible Change Request Screen d0008 Add and edit names of VC/m globals d0009 New utility for adding system code d0010 Text changes to web set-up screens d0011 Add access codes to location classes d0012 Max fields limits, esp change request d0013 Make prompts on transfer dialog consistent d0014 Add a way to set the title d0017 VC/m 3.0 manual (version 0) d0018 More tiding up of prompts t48677 VC/m Version 3.0 Development t48692 FX location driver t48719 Avoid syntax error on GT.M t48720 Upgrade Modifications t48721 Disable auto-selection for bulk transfer t48722 Insulate ISM and Cache 2.x from $ZU(140 calls, and eliminate $ZCVT() t48723 Revise menu-component call that no longer worked in 2.x t48724 Use md18 for Cache on VMS, not md14 t48725 Various installation bugs t48726 More installation changes t48728 Link to documentation has gone off t48729 Remove restriction on brackets t48730 <subscript>a720+4^%vc390 t48731 Fix typo causing UNDEF at exists7+14^%vc9md t48732 Add example site-specific dependencies t48733 Amending the setup and properties screens t48734 Use $P before trying to send forced error info to screen t48735 Insert missing ^%vcmnu subtree t48736 Allow editing of own option after viewing of built-in one t48737 Pass the CR list correctly t48738 Cope with ' and " in object, CR, loc names t48739 Manage worklist paste when attempted from new subtrees t48740 Use correct case when installing Cache 5 stuff on Unix t48741 Fixed for d0007 changes to CR editing t48742 New revision-based locking scheme needs to handle old records t48743 Prevent bulk load of uninstalled component type t48744 Support Utility to Ping Physical Locations t48745 User default and update change info t48746 More intelligent defaulting of variant for new objects t48747 Suppress display of deleted change requests t48748 Extend chref_validate to work with Web UI t48749 Exclusion of certain tables at take-on t48750 Cannot take-on INTs if R type not installed t48751 Capitalize menu options consistently t48752 Some telnet clients require // after telnet: t48753 Add new %AncestorVersion keyword t48754 Display versions' tree-lines in the correct sequence t48755 Studio "Status of Project" add-in description is incorrect t48756 Put focus onto first field of login dialog t48757 Allow more space for component masks on web tree t48758 Show display-only web form fields more conventionally t48759 Typo meant that vxfrom^%vc1xva may call $$validr on a location more than once t48760 Typo - "Dependant" -> "Dependent" t48761 If $-file at from-location, read it t48762 Can't add component to object in web interface t48763 <undef>getDtMod+2^%vc1xINT t48764 <noline>chrefDelete+18^%vc335 t48765 Add ^%vcjs("JavaScript.js" component t48766 Init meobv to fix crash at fileo+23^%vc202 t48767 Make Edit/Register option seek any to-location t48768 Fix "it's" in cancel confirm t48769 Give more info about non-existent route t48770 <textarea> value attribute is superfluous t48771 Web i/f loses first blank line of CR description, comments t48772 Apply limit to length of new object name t48773 Setup locking must be lower than ^%vcvc t48774 Re-sequence the Properties menu for web t48775 Keyfile path is maintained on License dialog t48776 Remove redundant code t48777 Don't file null CHUI menu overrides from web setup dialog t48778 Allow for descenders on text in main-pane title t48779 Make case of Object subnodes consistent t48780 Sort out mnemonic chars on transfer dialog t48781 Allow folder-specific folder images t48782 Align prompts vertically t48783 Sunken borders for web filter buttons, and Select vs Refresh caption t48784 Vary location folder images t48785 Hide h/* selector for single-version locations t48786 Don't keep focus on filter buttons t48787 When listing CRs at top level, don't offer Master filter t48788 Make Studio 5 templates/add-ins work on VC/m 3.0 t48789 ToolbarSelect.xsl case sensitivity t4901 Registering new components to dropdown menu
Copyright 1999,2004 George
James Software
http://www.georgejames.com