Update: Bold for Delphi Architect

By: John Kaster

Abstract: An update to Bold for Delphi 7 Architect is now available for download

Registered users of purchased versions of Delphi 7 Architect can download Bold for Delphi Architect R4.0-D7 right now by going to http://www.borland.com/products/downloads/download_delphi.html and clicking on the "Updates" link in the Registered Users section.

Note! In the readme file below, I have modified the links for Quality Central reports to be indicated as (QC#<report number>). The original format was (Quality Central <report number>). Therefore, something that appeared as "(Quality Central 3396)" in the original readme now appears as (QC#3396) and has a clickable link to the browser interface to Quality Central, which is now in public beta testing.

               Bold for Delphi Architect R4.0-D7
                             Release Notes
                                   
                           
=======================================================
Installation Notes:

It is important to ensure that the Delphi IDE has been launched
at least once prior to installing Bold for Delphi. Failing to do
so will prevent Delphi from completing its installation correctly.
This update is a complete install of Bold for Delphi Architect R4.0-D7. 
It is recommended that existing installations of Bold for
Delphi be uninstalled before installing this update. To run
this install the original CD must be available.
=======================================================

=======================================================
The following is a partial list of changes in this release:

Bugfixes:

* BoldPMappersDefault: Default BlobMapper now uses the 
  SQLDatabaseConfig.FieldTypeForBlob when creating parameters to 
  store a blob. This fixes a problem with the error 
  "Parameter object is improperly defined. Inconsistent or incomplete   
  information was provided" 
  when storing memo-blobs in a SQLServer database 
  using ADO (and possibly similar cases).
  
* BoldExceptionHandlersCom, BoldExceptionHandlers: Improved 
  searching for matching exception handler. While optimization 
  could have been somewhat harder, we're facing an exception, 
  which will be more expensive at any rate.
  
* BoldComboBox: Combobox now behaves better when navigated 
  via keyboard speed keys.

* BoldComboBox, BoldEdit, BoldLabel, BoldMemo (QC#3396): Fixed 
  problem with lost ParentColor-property.

* BoldControlPackCom, BoldControlPack: Components with bapChange 
  will continue to apply their values when changed even if 
  an exception occured during a previous apply.
  
* BoldSystem: If a derived attribute causes an exception during 
  calculation of its value, it will be recalculated at next access 
  (hoping the calculation will succeed) instead of going 
  permanently dead.
  
* BoldSystemPersistenceHandler: Calling FetchLinksWithObjects 
  with an empty list does not cause an indexoutofbounds anymore.
  
* BoldUMLSupport: Fixed a bug that would cause an AV when 
  unboldifying a model with implicitly transient associations.
  
* BoldDeriver: Derived attributes that causes an exception 
  during their derivation will not become permanently dead but 
  try to rederive themselves on next access instead.
  
* BoldOLLEDistributableObjectHandlers (QC#3074): Fixed access 
  violation in OLLE.

* BoldSystem (QC#3012):  Fixed bug in TBoldSystem.RollbackTransaction 
  that would cause rollback of a nested transaction to have 
  no effect (especially it would not cause the outermost 
  transaction to fail).
  
* BoldSystemPersistenceHandler: When updating a list with 
  embedded relations to unsaved objects that are not in the list, 
  the related objects would be saved (created in the db), 
  but their state would not be correctly updated so if they 
  were subsequently updated, the persistence mapper would again 
  try to insert the objects thus causing a primary key violation.
  
* UMLEditor: Fixed AV with CTRL-ALT-S when an attribute is selected.

* BoldFormSaver: Plugged minor memoryleak in TBoldFormSaver.

* BoldUMLXMIImporter: Fixes to prevent tagged values to be created 
  multiple times when importing.
  
* BoldUMLModel: Bugfix: Missing tagged value for "Persistence" is 
  now treated as "persistent" and not "transient". This fixes the 
  erroneous changes of persistence-flag when boldifying 
  transient classes.
  
* BoldPersistenceHandleFile: Bugfix: Transient attributes and 
  roles are now ignored when data is handled by the XML-file mapper.
  
* BoldADOInterfaces.pas: BugFix: Parameters that are assigned 
  before the SQL-statement is assigned to an ADO query are now 
  restored again after the SQL-statement is assigned. 
  This would cause a "'Parameter object is improperly defined [...]" 
  error when loading data.
  
* BoldUMLModelMOFAdapters.pas: fix: export multiplcity "*".

* BoldTreeView.pas: Fixed problem in TBoldCustomTreeView._CustomDrawItem 
  that would cause an AV if the node-follower was not assigned.
  
* BoldPMappersDefault.pas: Fixed bug in handling of 
  SQLDataBaseConfig.MaxParamsInIdList. Setting this value to 0 
  now prevents the usage of params for ID lists.
  
* BoldEdit.pas: fixed problem with AV when accessing the popupmenu.

* BoldEditCom.pas: fixed problem with AV when accessing the popupmenu.

* BoldSystem.pas: Fix: ObjectReferences that are not a part of 
  bidirectional links (such as derived relations) will now send 
  beValueChanged when they change.
  
* BoldDataSet.pas: Fixed a bug with removing the BoldHandle 
  when dataset is active.

* BoldGrid.pas: (QC#3229) Fixed problem with TypeMayHaveChanged not checking 
  if BoldHandle assigned before accessing props. Caused AV when 
  deleting a listhandle pointed to by the grid.
  
* BoldSqlNodes.pas: Fix for joining tables correctly when 
  OCL expression is rooted in list.

* BoldModelOCLValidatorPlugIn.pas: OCL-plugin will now automatically 
  boldify the model before validation (would normally cause an AV 
  if model was not boldified).
  
* BoldUMLRose98Link.pas: Bugfix: Rose-export now handles broken 
  generalizations (that could be a result of manually modifying 
  a boldified model and then unboldifying it).
  
* BoldDatabaseAdapterDBIsam.pas: fixed initialization of 
  database engine to dbeDBISAM.

* BoldEnvironment.pas: Fixed problem with occasional AV 
  when terminating the pplication before the queue was finalized.
  
* BoldMD5.pas: Fixed problem with calculating checksum 
  for 63 byte long messages (would cause range-error if 
  compiled with rangechecks).

=======================================================

=======================================================
Other Changes:

* BoldSystem: Added a parameter to BoldSystem.FetchLinksWithObjects 
  to retrieve the list of objects that were fetched as a result of the call.
  
* BoldAbstractModel (QC#3281): AbstractModel now has ComponentStyle 
  set to not include csInheritable. It is thus no longer possible 
  to inherit it using form inheritance.
  
* BoldUMLModelEditForm (QC#2811): The treeview has a min width constraint = 200 
  to avoid resizing issues.
  
* BoldUMLModelEditForm (QC#2812): The checkboxes get hint = caption at form create.

* BoldGeneratorTemplatesDelphi: Improved instructions regarding generating .tlb-files.

* BoldSystem: Added errormessage when calling Memberfactory with a 
  type that does not have an installed delphi type.
  
* BoldPersistenceHandleFile: Added detection of trying to fetch an object that 
  does not exist in the file (would cause StackOverflow before).
  
* BoldIBInterfaces: Improved errormessage when login dialog 
  is required but missing in application.
  
* BoldBase: Moved IFDEFs in TBoldMemoryManagedObject to allow 
  non SCALA users to define BOLD_DISABLEMEMORYMANAGER.
  
* BoldGen: Moved private virtual method InitializeTemplateForComponent 
  to protected section.
  
* BoldUMLMMLink: Added rudimentary export support in the sense 
  that the BLD-file is pushed over to MM. There is, however, no one 
  there to handle it!
  
* BoldUMLXMIImporter: Now supporting visibility scope package to be 
  interpreted as public.

* BoldUMLModelSupport: When Boldifying a model, any association that 
  has a transient end or a transient association class will be marked as transient.
  
* BoldValueSpaceInterfaces: BoldApplyPartialValueSpace now takes a parameter 
  to ignore specified persistence states (default is bvpsInvalid, same as before)
  
* BoldSQLDatabaseConfig.pas: Added "Description" as a reserved word for DBISAM.

* BoldOclSymbolImplementations.pas: Operations toUpper and toLower now uses 
  AnsiUpperCase/AnsiLowerCase.
  
* BoldMetaSupport.pas: Improved support for more parameter types when 
  generating COM-adapters for business classes methods.
  
* BoldGeneratorTemplatesDelphi.pas: Added support for out-parameters 
  in COM-deaders.

* BoldDefaultTaggedValues.pas: upped pty version to 6.4.

* Bfd.pty: added missing enum value defaultregionmode independent cascade.

* BoldBld.pas: added initalization of visibility for bld-files < version 16.

* BoldUMLModelEdit.pas: method FindFormForBoldModel made public.

=======================================================
Copyright © 2003 Borland Software Corporation.
All rights reserved.

Server Response from: ETNASC03