VPME 9.1.12 What's New
visual foxpro
foxpro
visual foxpro
  visual foxpro
foxpro
visual foxpro
Contact Us
...the professional framework for FoxPro

  Home | News | Products | Services | Support | Newsgroups | Training | Downloads | Purchase

 
  Information
 
 
  Free Trials
 
Visual ProMatrix
Sample Apps
VisualRep
   
  ProMatrix Store
 
 

VPME 9.1.12 Changes & Enhancements


The following table lists changes in functionality and new features included in the VPME 9.1.12 upgrade. The UG column contains the page number in the VPME 9.1.12 User’s Guide that contains new documentation for an item.
Type Code: An “E” in the Type column denotes an enhancement. A “C” in the Type column denotes a change in functionality. A “B” in the Type column denotes a fix.

Type

Topic

Description

UG

E

“Show this form” Checkbox

There is now special “Show this form” functionality built into the Form_ and Checkbox_ classes. By setting the lShowThisForm property value to .T. of a checkbox and the form that contains the checkbox, the form becomes a “Show this form” form. What that means is that when the form is run and the checkbox is unchecked, the form will not be displayed the next time it is attempted to be run. This creates the same functionality as the “Show this form at startup” checkbox on the Welcome form. Just as with the Welcome form, an entry is made in the user’s INI file that specifies whether or not the form should be displayed. This functionality could be used on a form like the Access form, where the user would be able to determine if they want the form to come up at startup. For more information see the comments in the ShowThisForm method of the Form_ class.

408

E

Application Window Caption

The user that is logged into an application can now be identified through the display of the user’s name and/or ID in the caption of the application window. If the application object property lIdentifyUserInTitle is .T. (the default) the method IdentifyUserInTitle is run. In that method, if the property lIdentifyUserInTitle_Name is .T. (the default), the current user’s name is added to the caption of the application window right after the application name and version. Also, if the property lIdentifyUserInTitle_ID is .T. (the default), the current user’s ID is added to the caption of the application window.

478

E

Coverage Profiler

A menu option has been added to the Tools submenu in VPME that runs VFP’s Coverage Profiler application.

 

E

Customize Toolbar Controls

The Customize Toolbar Controls functionality now allows for the setting of the Visible property of controls. This allows a developer to add controls to the toolbar that are only used during development and then easily remove them (actually just make them invisible) when it is time to deploy the application.

77

E

Exiting to Windows

When an application that has been run from within VPME is closed, a message is now displayed that includes an option to exit to Windows. Previously, the only option was to return to VPME. The new option is the same as returning to VPME and then exiting VPME.

 

E

Form Security

Menu security permission settings and menu option Skip For expressions can now be applied to forms regardless of how they are called. Now, when a form is run there is code in the Load event that checks the menu security permission setting and Skip For expression of the menu option associated with the form. If the menu permission is denied or the Skip For expression evaluates to .T. the Load event returns .F., causing the form to be closed, after a message is displayed, before it becomes visible. This functionality is enabled through an additional field (cFormName) that is stored in the SVPMMenuOptions table. This field contains the contents of the Name property of the forms that are explicitly called from menu commands and procedures and is used to link forms to menu options. This functionality can be controlled by several new form properties:

  1. FormAccess_lPerformCheck (default: .T.) – Turns this functionality on (.T.) or off (.F.).
  2. FormAccess_lApplySkipFor (default: .T.) – Turns on (.T.) or off (.F.) the evaluation of the Skip For expression.
  3. FormAccess_nMenuID (default: 0) and FormAccess_nMenuOption (default: 0) – If the form is not called explicitly in a menu option command or procedure, these properties can be used to link the form to its menu option. In that case these properties should contain the Menu ID and Menu Option Number that are specified in the menu option’s Comment field on the Prompt Options dialog. For example, in the Comment *:IF _SCREEN.oApp.RunAdminTool('SEC_MENU','M','86','1') the Menu ID is (1) and the Menu Option Number is (86).

485

E

Persistent Indexes

The name of the last index tag used with the ISA of a form can now be saved in an INI file so that same tag can be automatically used the next time the form is run. The “persistent tag” functionality can be enabled/disabled through the lPersistentTag property of the form. In addition, you can give users the ability to enable/disable this functionality through the lPersistentTag_OrderEnabled property of the form. If .T., a “Persistent” checkbox is made visible on the Order form that the user can check if they want the tag they select to be the tag that is used the next time they run the form.

387

E

Alternative Menu Systems

The code run by menu options is now saved in the SVPMMenuOptions table so that an alternative menu system (like a treeview, for example) can be implemented. The additional MNX fields that are now brought into the table SVPMMenuOptions are:

  1. Command (mCommand in SVPMMenuOptions)
  2. Comment (mComment)
  3. KeyLabel (mKeyLabel)
  4. KeyName (mKeyName)
  5. Message (mMessage)
  6. Procedure (mProcedure)
  7. SkipFor (mSkipFor)

97

E

OTM Forms – Parent Grid

The OTM form builder now allows a grid to be placed on the first parent page.

336

E

Required Fields

Required fields are now visually identified by changing the BackColor property setting of the control through which the field is edited. Also, if the control is in a grid, the BackColor of the column header is also changed. Notes:

  1. The lSetControlProperties_Required form property determines whether or not this functionality is enabled (default: .T.).
  2. The cSetControlProperties_RequiredBackColor form property specifies the color setting to be placed in the BackColor property of the control/header (default: 255,255,128 - yellow).
  3. The SetControlProperties_RequiredIndication form method performs the changing of the BackColor property setting of the control/header. Therefore, this functionality can easily be modified or overridden at the form or class level.

409

E

Varchar Support

Additional Varchar field validation support has been added for Range and Set Integrity types.

 

C

Auto List and Field-Level Code

When a selection is made on a Picklist form that was brought up by the Auto List functionality, the validation check is now re-run so that the field-level code (PreValidation and PostValidation) will be run for the new field value.

 

C

Row Identification in List/Picklist

The grid on the List and Picklist forms highlight the current row and column with an identifying backcolor. However, when there is only one column in the grid it can be difficult to identify the current row since all cells in the grid will then have the same backcolor. Now, the current cell will have a colored border to help identify the current row.

239

B

Add/Copy Aborted

If an add or copy was aborted in a non-buffered table, the new record was not properly removed (deleted).

 

B

Copying Parent and Child Records on OTM Form

An error occurred when copying the child records along with the parent record on a one-to-many form.

 

B

Data Builder

In the Data Builder, all field records were deleted for a table, view, or cursoradapter when the last field was removed. [Fix from promatrix.public.pmxlibrary]

 

B

Field Validation

The first new record in a cursor could not be cancelled if the control that had focus was bound to a field that had Referential Integrity set up and the Option setting was “On”. In this case the field value failed the validation check and the record could not be cancelled (removed).

 

B

IsNew Method

The IsNew method of the data handler object was not always correctly identifying when a record in a buffered table was both new and unmodified.

 

B

List Grid

When adding the first record to a cursor and the record was clicked on in the List Grid the toolbar buttons were erroneously disabled.

 

B

OTM Form Duplicate PK

On a OTM form with an on-form toolbar a duplicate parent cursor PK value could be saved.

 

B

OTM Form Reactivation

When a change was made on a OTM form with an on-form toolbar and the form was deactivated and then reactivated, saving or canceling the change did not cause the disabled toolbar buttons to be enabled again.

 

B

Related Pages Form

On a Related Pages form an error could occur when a page was activated for a view cursor that has a compound FK.

 

B

View Field Width

The width of the cPK, cFK_DDF, and cFK_DDTV fields in the DDFP_V view in SVPM_V.DBC were defined in the DBC as C(16) instead of C(48).

 

B

View Field Width

The width of the cData field in the SecurityData_V view in SVPM_V.DBC was defined in the DBC as C(40) instead of C(57).

 

B

View/CursorAdapter Tags

When using a form’s cInitialTag property in combination with the creation of view or cursoradapter tags through the “Create in Form” functionality, the record pointer could initially be placed on a record that is not the first record according to the tag specified in the cInitialTag property.

 

 

ProMatrix Corporation  Email: customerservice@promatrix.com  Fax: 206-666-2341
Copyright © 2002 - 2008. All rights reserved. ProMatrix, Visual ProMatrix and VPM are trademarks of ProMatrix Corporation. All other trademarks acknowledged.