Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Change 18857: Pre-processor Switch for enabling OpenEdge BPM Integration or slibooxml  

  • Change 18854: InvokeTask API simplification of the Dataset parameters in the invoked Task method.  

  • Change 18850: WidgetHelper:SetFrameBackgroundColor: Additional parameter plColorLiterals to force setting the BG color of LITERAL and FILL-IN VIEW-AS TEXT widets to the Frame's BG color  

  • Change 18845: UltraToolbarsHelper:CreateTextBoxToolFromFillIn  

  • Change 18844: WidgetHelper:FindChildWidgetByScreenValueAndType  

  • Change 18840: Subscribe/Unsubscribe to ActiveMdiChildChanged and TextChanged events with NO-ERROR  

  • Change 18781: UltraToolbarsHelper: 


    • &IF DEFINED (WinKit) NE 0 AND DEFINED (DotNetAccessible) NE 0 &THEN  when accessing Consultingwerk.WindowIntegrationKit.IToolImageProvider  

  • Change 18771: New method BindingSourceHelper:GetTableSchema  

  • Change 18770: New Method BufferHelper:TotalNumberOfFields  

  • Change 18763: ListISmartTableIOTarget  
  • Change 18754: SmartWindowForm ActiveSmartControlChanged Event and ActiveSmartControl property: Simplified way to activate and deactivate TableIO and Navigation links in a Form in cases when a SmartToolbarController is linked to more than a single Navigation and TableIO Target. In these cases the SmartWindowForm will just have to override the OnActiveSmartControlChanged method and execute THIS-OBJECT:ActivateLinks (THIS-OBJECT:ActiveSmartControl) .  

  • Change 18750: Consultingwerk.Const: Global static framework constants  
  • Change 18748: New property PromptForSaveValuesOnRowDeactivate on the SmartUpdatableBrowser: 


    • Allows to turn of the save changes prompt when the user leaves  
  • Change 18745: get-service.i now has an optional second parameter, that can be used to specify a default service instance like in  
    • oBPMAdapter = { Consultingwerk/get-service.i Consultingwerk.BPM.IBPMAdapterProxy 
      • "NEW Consultingwerk.BPM.BPMAdapterProxy ()"} .  

    • The NEW BPMAdapterProxy () will only be executed when there is no IBPMAdapterProxy instance in the ServiceContainer yet.  

  • Change 18743: IServiceContainer:AddService now returns the service object back (for fluent style coding)  

  • Change 18739: Windows 7 Taskbar Icon for Business Entity Designer, Tester and CustomerExplorer Demo  

  • Change 18729: DataAccess: BeforeSavingRowChanges and AfterSavingRowChanges events as additional validation hooks in the DataAccess class  

  • Change 18725: Ability to invoke Debugger from the NotifyIcon  

  • Change 18718: SmartBusinessEntityAdapter:InvokeMerthode activates WAIT-STATE (hour glass and notify icon) during server call  

  • Change 18713: Tool type validation in UltraToolbarsHelper:GetStateButtonToolChecked / SetStateButtonToolChecked  

  • Change 18712: SmartToolbarController: AddNavigationTools, fix creation of ButtonTools that don't have a large image in design time  

  • Change 18709: GenericList:ToArray()  

  • Change 18707: Consultingwerk.ListNameValuePair  

  • Change 18696: Added UltraCalcManager to Assemblies  

  • Change 18694: Context menu in NotifyIconWaitStateManager (when DebugMode is turned on). Ability to display information about the current process.  

  • Change 18692: SmartViewerControl: DeactivateEventHandler now checks for the validity for the containing Form before unsubscribing from events.  

  • Change 18688: Fixed sorting on SmartDataBrowser ColumnClick in SmartTempTableAdapter  

  • Change 18687: Reference ISmartDataSource Interface in ExternalDataSource property by USING Statement  

  • Change 18677: InvokeTask API in ServiceAdapter/ServiceInterface  

  • Change 18673:


    • Type-check for Controls out of the ControlsCollection and also  casting a Control to System.Windows.Forms.Control is not nessesary 


    • IF NOT RecurseCheckIsOkToClose (poControls:Item[i]:Controls,  

  • Change 18672: UltraToolbarsHelper: BeginUpdate and EndUpdate around RefreshTools  

  • Change 18671: Fixed DatasetControllerTemplate  

  • Change 18662: AETF 1.0.6 - OpenEdge SDK integrated from PSDN  

  • Change 18661: Info text file about the Crainiate assemblies  
  • Change 18658: SmartBusinessEntityAdapter: New AutoCommit property and ISmartCommitSource/ISmartCommitTaret Interface, allow multiple updates on the client to be passed in a single request to the backend. The current implementation is kind of a preview, currently lacking the following detail functionality:  


    • - Prompting for commit/undo/cancel when the Form is getting closed 

      - Prompting for commit/undo/cancel when the SmartBusinessEntityAdapter is about to retrieve new data (due to a call to RetrieveData or when it's data parent has new data available) ? with the ability to block the parent data adapter from moving to that other record  - Showing error messages from the backend in the context of the records that raised the errors (e.g. reposition and indicate multiple errors vs. using just a single error message dialog)  - From the toolbars point of view the ability to work with more than a single SmartBusinessEntityAdapter as the ISmartCommitTarget and the ability to change the currently active one runtime  

  • Change 18652: New method: Consultingwerk.Util.DatasetHelper:HasChanges  

  • Change 18651: Fixed ErrorHelper for formatting structured (ADM2 style) error messages with more than a single message  

  • Change 18645: New NotifyIcons in CustomerExplorer Sample  

  • Change 18644: Interface IDatasetController optional thru conditional compilation, only when SmartComponent Library is available  

  • Change 18643: Our GUI for .NET products (Dynamics4.NET, SmartComponent Library and WinKit) do typically run on Windows only. Whit this change to products.i we do activate the conditional condition only when compiling on windows. This is achieved by setting the GLOBAL-DEFINES Dynamics4NET, SmartComponentLibrary and WinKit when WINDOW-SYSTEM BEINGS MS-WIN  

  • Change 18642: SmartUpdatableBrowser: Begin Edit mode when beginning to change the first cell in a row, not when leaving it.  

  • Change 18635: Collection for GroupAssignTargets in SmartViewerControl  

  • Change 18634: Ability to Query the list of the SmartDataTarget's  

  • Change 18596: WidgetTypeEnum  

  • Change 18573: Integrated UserControl that combines an UltraTree with search capability from Dynamics4.NET  

  • Change 18571: New method FindAllWidgetsOfType in WidgetHelper  

  • Change 18568: Consultingwerk/foreach.i CAST the collection {4} to IEnumerable before accessing the GetEnumerator method to allow for use with Collections that implement that method explicitly for that interface.  

  • Change 18567: IToolImageProvider Interface to allow custom implementation of services that return the Image for the ButtonTool in WinKit  

  • Change 18550: UltraToolbarsHelper: New standarized Routine for loading images and BuildRibbonGroupFromList, method to create a RibbonGroup basde on a list of WidgetHandles (rather than the whole frame)  

  • Change 18549: UltraToolbarsManager:BuildRibbonGroupFromFrame now returns the reference to the RibbonGroup  

  • Change 18548: UltraToolbarsHelper, RefreshTools: Change label only when it's not just the case that is changing, for the Ribbon we should actually never be changing the Caption of a tool  

  • Change 18544: Alternative method to make images Transparent  
  • Change 18542: Implemented Sorting in the SmartBusinessEntityLookup class. Added two new properties to the SmartBusinessEntityLookup class: LookupQuerySort and LookupDialogQuerySort. The LookupDialogQuerySort property has also been added to the ISmartBusinessEntityLookupDialog interface. Custom Lookup Dialog implementations will need to add this property, otherwise they won't be able to compile.  

  • Change 18522: Simplification of PASS-THROGH data links.  
    • The SmartWindowForm class now has two new properties: ExternalDataSource and PrimaryDataTarget.  

      The PrimaryDataTarget points to a SmartViewerControl, SmartDataBrowser or SmartDataAdapter (or derived types) inside the Form, the ExternalDataSource property can get assigned by the Form (or what so ever) has started the a new Form instance before the Form is shown. During the Load of the Form the SmartWindowForm will assign the ExternalDataSource to the SmartDataSource property of the PrimaryDataTarget:  

      DEFINE VARIABLE oForm AS SalesrepDetailForm NO-UNDO .  oForm = NEW SalesrepDetailForm () .  oForm:ExternalDataSource = smartBusinessEntityAdapter1 .  WAIT-FOR oForm:ShowDialog () .  

  • Change 18519: SmartDataTarget Design Time Interface (.NET) added  

  • Change 18506: SmartUpdatableBrowser: When a save operation is completed, the Viewer will remain no longer in Add mode (property AddingRecord). Prior to this fix, the first record in a query would disappear when it has been edited directly after the creation and the edit is cancelled. This was because the CancelUpdate would invoke the CancelCreateRecord in the DataSource  


    • This is the same fix as @18492 for the SmartViewerControl.  

  • Change 18496: Centralized routine to convert Progress DATA-TYPE into Progress.Data.DataType Enum member in DataTypeHelper class.  

  • Change 18495: Fixed typo's on the Progress Data-Types in the DatasetRelationParser  

  • Change 18494: When the position was 0 before the delete and is 0 after the delete we have to invoke the ParentPositionChanged event in the linked SmartDataAdapter classes by using the InvokeParentPositionChanged method  

  • Change 18492: SmartViewerControl: When a save operation is completed, the Viewer will remain no longer in Add mode (property AddingRecord). 


    • Prior to this fix, the first record in a query would disappear when it has been edited directly after the creation and the edit is cancelled. 

      This was because the CancelUpdate would invoke the CancelCreateRecord in the DataSource  

  • Change 18487: The WinKit core runtime (everything exclusing the sample application and the WinKit Design tools) are now integrated into the SmartComponent Library. This is required for some of the tools in the Consultingwerk.Studio pacakge (like embedding the Progress Procedure Editor into .NET Forms).  

  • Change 18466: ColorTableConverter  

  • Change 18455: New method Consultinwerk.Util.QueryHelper:OpenNonMatchingQuery to open a query that returns no records (query is open but returns no matchess)  

  • Change 18436: RaiseComponentChanged implementation (in Consultingwerk.Util.DesignerHelper). Allows to dirty (mark as save is required) a Visual Design in the OpenEdge Architect Visual Designer when a Property of a SmartComponent has changed by executing a DesignerVerb  

  • Change 18435: Generator routine for creating customization classes for the SmartComponent Library and OERA classes 


  • Change 18434: SmartDataBrowser and SmartLookup Dialogs to use ISettingsService instead of direct access to the Windows Registry  

  • Change 18432: Consultingwerk.Framework.ISettingsService Interface for abstracting storing user settings from the actual storage. Consultingwerk.Windows.RegistrySettingsService as a default implementation reading and writing to the Registry, modified Consultingwerk.Forms.BaseForm to store the Form position and size using the ISettingsService Interface to allow alternative implementations of saving user settings without having to override the BaseForm implementation.  

  • Change 18424: General usage of System.EventArgs:Empty instead of NEW System.EventArgs ()  

  • Change 18422: OERA ServiceManager: When a # is used in the service name, we pass use entry (2,...., "#") as the parameter to the Constructor of the service class (e.g. BusinessEntity). When no # is used the whole service name is used for locating the class name  

  • Change 18419: New Event AfterBatchAvailable on SmartBusinessEntityAdapter that is raised together with AfterRetrieveData as well as after fetching a new batch of records (forward or backwards)  

  • Change 18414: Win32:PostMessage: Check for hWnd > 0 in PostMessage(A)  

  • Change 18397: New method in ProcedureHelper: ShortDotPName: Returns the file-name of the current procedure handle without the pathname and without the extension  

  • Change 18394: get-service.i: Simplify the access of services form the default service container  
  • Change 18386: Ignore System.InvalidReferenceException from SUPER:OnFormClosed in the Consultingwerk.Forms.BaseForm override  


    • When a Control subscribing to the FormClosed event of the containing Form (or grand-parent Form) is already disposed it looks like in 10.2B04 the AVM is causing a NullReferenceException when the .NET side of the bridge is trying to invoke the ABL event handler. It is considered save to ignore those errors during OnFormClosed in the Form base class (Progress.Windows.Form) as there is little we can do from the ABL to avoid these errors.  

  • Change 18354: Log Index Information on a per Table basis when outputting Query statistics  
  • Change 18332: SmartDatasetChildAdapter does no longer subscribe to the DatasetControllerChanged event when running in the Visual Designer  

  • Change 18325: Support larger Design Canvas in BE Designer  
  • Change 18322: Remove line break in property definition (before the type) as this does currently impact the documentation generator  
  • Change 18317: SmartViewerControl now also disables Controls with SetControlEnabled (..., ControlEnabledEnum:UpdateOnly).  

  • Change 18315: SmartViewerControl: Do not initialize the event handler in the Visual Designer. This would just have an negative impact on the loading time.  

  • Change 18310: Comment on FormClosedHandler usage  

  • Change 18300: BindingSourceHelper:AssignFromBindingSource 


    • A generic routine to assign fields from a BindingSource to a buffer.  

  • Change 18299: BindingSourceHelper:AssignFromBindingSource  

  • Change 18297: Fixed Exception when a Form was closed.  
    • System.NullReferenceException: Attempt to use an object that has been deleted. 


      • bei Progress.ClrBridge.ProMarshal.ToGCHandle(Object , Boolean )  bei Progress.ClrBridge.BrgClrToPro.HandleUIEvent(Object , Object , Int32 , String , Int32 , Int32 )  bei ConsultingwerkBusinessEntityDesignerUIBusinessEntityDesignerFormDeactivateReceiver.OnDeactivate(Object , EventArgs )  bei System.EventHandler.Invoke(Object sender, EventArgs e)  bei System.Windows.Forms.Form.OnDeactivate(EventArgs e)  bei System.Windows.Forms.Form.set_Active(Boolean value)  bei System.Windows.Forms.Form.WmActivate(Message& m)  bei System.Windows.Forms.Form.WndProc(Message& m)  bei Progress.Windows.Form.WndProc(Message& m)  bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)  bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)  bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)  

  • Change 18295: New DesignerVerb to Shut down and Reload the running Business Entities  

  • Change 18293: SmartBusinessEntityAdapter:FetchLastOnServer is now a PUBLIC method, so that it can actually be used as an alternative to RetrieveData, if a Form should be positioned on the LAST record, instead of on the first record.  

  • Change 18291: Progress.Util.BindingSourceHelper:BindingFieldName  

  • Change 18283: Increased max. size of Temp-Table Shape to be able to draw very large temp-tables in the Diagram  
  • Change 18246: Removed sports2000 demo business entities (procedural from customer branch)