Commit Types

<< Click to Display Table of Contents >>

Navigation:  EDP > Professional EDP >

Commit Types

The Commit step is the process where EDD records are inserted into an EQuIS database. After an EDD package is created in EDP, click the Commit button (located in the Package group on the Professional tab of EDP). Clicking either the icon or the drop-down arrow will display a drop-down menu with the various commit types. Select the desire commit type to commit the EDD package.

EDP_Commit_Options

 

Commit Types

 

Insert Only

 

Does NOT replace existing records.

 

This option inserts new records, but does not replace existing records. If a record with matching primary keys already exists in the database, the new record remains in the package in EDP. An error is reported, because the new record cannot be inserted, and the existing record is not modified.

 

Merge Only

 

DOES replace existing null records, does NOT insert new records.

 

This option merges data if it already exists in the database, but prevents new records from inserting. Only null values in the existing record will be replaced by the incoming non-null values. If the primary key does not match what is already been loaded, the data will not be committed.

 

Update Only

 

DOES replace existing records, but not if new data is null, does NOT insert new records.

 

This option merges data if it already exists in the database, but prevents new records from inserting. All values in an existing record will be replaced by new incoming values, unless the incoming value is null. Any null values will not replace non-null data. If the primary key does not match what has already been loaded, the data will not be committed.

 

Replace Only

 

DOES replace existing records, does NOT insert new records.

 

This option replaces data if it already exists in the database, but prevents new records from inserting. If a record with matching primary keys already exists in the database, it will be completely overwritten by the new incoming record. If the primary key does not match what has already been loaded, the data will not be committed.

 

Insert and Merge

 

Does NOT replace existing records (except if existing data is null, then DOES replace).

 

This option inserts new records and replaces existing null values with incoming values. This type of commit will only replace values in an existing record if the existing value is null.

 

Insert and Update

 

DOES replace existing records;(except if new data is null, then does NOT replace).

 

This option inserts new records and updates both null and non-null values in existing records. All values in an existing record will be replaced by new incoming values, unless the incoming value is null. Any null values in the incoming data will not replace non-null data in the existing records.

 

Insert and Replace

 

DOES replace existing records.

 

This option inserts new records and replaces existing records. If a record with matching primary keys already exists in the database, it will be completely overwritten by the new incoming record. These commit types are also available under the EDP section in the EQuIS Enterprise Administration Setup tab. This will determine the default commit type for EDDs being processed by EQuIS Enterprise. During the EDP Commit process, there is an option to cancel during the transaction. Learn more here.

 

Note: The Insert and Replace commit type will replace existing records with NULL values with the exception of the refvals format. This is due to the fact that when the format is opened, it loads lookup values from the database. Then, during the Create step, those values are combined with the EDD values. Values that appear null in the EDD will not appear as nulls in the database after the Commit step.

 

Format Specific

 

Commits data using the commit types set for each table in the format's custom handler. For example, a format may be designed to commit data to DT_SAMPLE and DT_FIELD_SAMPLE tables through Insert and Merge, but all other tables would use Insert and Update.

 

 

Errors When Committing Data

 

In the event that an error occurs at the Create or Commit step in EDP Professional, the process should be canceled and the errors resolved before completing the data load.

 

In the event that an error occurs at the Create or Commit step in Enterprise EDP, only the Administrator for that Workflow Agent (also referred to as the FileProcess in EDP) is notified.

 

The administrator is determined by looking in ST_SERVICE_RESERVATION.USER_ID for the FileProcess agent. That USER_ID value is then joined to the ST_USER table to find the user account (i.e. the administrator for that workflow agent).

 

The data submitter (and others subscribed) will only see the "accept" or "reject" notice if the data either passes, or if there are errors with the data in the EDD itself. The data submitter (and others subscribed) are not notified of create or commit errors, because they are related to either the format or the database, and technically are not the submitters responsibility.
 

Tip: Format Controls Which Commit Types are Available: Users with write access to the ST_CONFIG table can now limit which "Commit" types are available for a given EDP format. For example, the following records in ST_CONFIG will only allow "Insert and Replace" to be shown:
 

CONFIG_SECTION    CONFIG_KEY    OBJECT_TYPE    OBJECT_VALUE    STRING_VALUE

EarthSoft.EDP.EddCustomHandler.ShowUpdateMode    EFWEDD    commitmode    Merge    false

EarthSoft.EDP.EddCustomHandler.ShowUpdateMode    EFWEDD    commitmode    None      false

EarthSoft.EDP.EddCustomHandler.ShowUpdateMode    EFWEDD    commitmode    Update   false

 

Control of Commit types for a specified format as well as the name of the Commit type, can now be implemented via a format's custom handler (i.e., *.vb file).