Versions Compared

Key

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

...

SCL-2988 Factory now supports Overloading Factory

Description:

The Consultignwerk Factory Service now supports registering a second Factory as the Overloading Factory in the same way as the ServiceContainer supports an OverloadingServiceContainer.
This is useful in situations where the facrtory needs to provide custom types for a rather short period of time, e.g. during individual unit tests or handling AppServer calls for a tenant that requires special configuration.

SCL-2991 Support for new PACKAGE-PRIVATE and PACKAGE-PROTECTED modifiers in proparse

Description:

We have implemented support for the new PACKAGE-PROTECTED and PACKATE-PRIVATE keywords / access modifiers to proparse.
Proparse.net.dll has been updated to version 4.0.1.1178.

SCL-3024 Inactive data-relations now excluded from JSDO Catalog

Description:

The JSON Catalog now excludes inactive relations of the ProDataset as they may cause infinitive loops on the frontend (JSDO).
The main purpose of inactive relations in the ProDataset is to facilitate alternative path's when populating the ProDataset. Not for consuming data by a frontend.

New Feature

SCL-3004 SmartBusinessEntity Maintenance now supports Interfaces for Business Entities

Description:

Some customers have started referencing Business Entities from the consumer through Interface names instead of class names as the Entity Name. This allows a further abstraction from the actual implementation of a Business Entity. Typically the Service Interface is used to resolve the Entity Name into the actual valid implementation of a Business Entity.
In this context it is required that Business Entities that provide different swappable implementations are developed using the same ProDataset schema. For this purpose we are establiting a method called "EnforceDatasetType" to expose the ProDataset schema as part of the Interface requirements.
The SmartBusinessEntity Maintenance now supports to register interfaces inheriting from IBusinessEntity as SmartBusinessEntities in the SmartBusinessEntity maintenance.
Those interfaces need to provide a method called EnforceDatasetType which exposes the database schema. Example:

Code Block
languageabl

INTERFACE Consultingwerk.SmartComponentsDemo.OERA.Sports2000.ICustomerBusinessEntity 
    INHERITS IBusinessEntity: 

    { Consultingwerk/SmartComponentsDemo/OERA/Sports2000/dsCustomer.i }  

    /** 
     * Purpose: Validates the dataset schema during compile 
     * Notes:   This method is not intended to be called. It's just required to 
     *          enfore type compatibility of the ProDataset schema 
     * @param dsCustomer The Dataset of the abstract business entity type 
     */ 
    METHOD PUBLIC VOID EnforceDatasetType (OUTPUT DATASET dsCustomer) .  

END INTERFACE. 


Based on the EnforeDatasetType method the SmartBusinessEntity maintenance can determine the tables provided by a compatible Business Entity and register those after creating a new SmartBusinessEntity record.

SCL-3005 Maintenance of workflows for Interfaces of BusinessEntities

Description:

Based on the improvements documented in SCL-3004, the SmartWorkflow maintenance now also supports maintaining workflow definitions that are based on temp-tables referenced in Business Entity Interfaces.