dev:020tol:0290sysupd

Handling Updates of Data

Transaction SYSUPD

This transaction is used to create and handle transport files that are required to transport database changes and any changes in INI files. It is used in the course of a release change or when installing a patch, for example when transferring versions from a test system to a live system. The transaction compares different DOKA installations with each other and subsequently updates them.

The actual patches or updates are generated using “Generate Patch” (GENMKP) and packed in a ZIP file. The update directory can be delivered to the customer using this transaction with the production environment. The production environment then retrieves and extracts the ZIP file using 'Handle Patch Installation' (SYSPIP). Afterwards, the transaction imports the update.

Definition of Terms

Term Description
XMD An XMD file is an external part of a database table in the form of a 'flat' file, where the INR references have been removed. All column contents of an XMD file table are output for each database entry. Whole records can easily be transported via XMD files. However, deletion information cannot be transported.
XMU An XMU file is an update file in the form of a flat file that only contains the differences between two files as update commands. The following update commands are available in XMU files:
* Insert - inserting a new data record
* Update - updating a data record
* Delete - deleting a data record
N.B.::
Update lines (updating a data record) only contain the fields that have been changed. Accordingly, no database records are created in the target system via update lines.
Database A database is made up of the contents of database tables (Access, Oracle, or the like) together with the contents of flat files in the relevant data partition and the INI files that also contain data such as the calendar and decimal place details for currencies required in the client.
MyModelBank This is the base database that is delivered together with the product. It also contains data that fulfill tasks which could otherwise be processed by the software, including SWM mapping, TAGSUP, technical codetables, menus, INI files.

Reference Data

The following reference data can be updated. Details can be viewed on the 'Export Groups' panel. All reference data are stored as XMD files (database tables) or as INI files.

- MyModelbank as provided by Surecomp DOS, stored in “<Installation folder>\data\export\demobank”.
e.g. S:\dok5\data\export\demobank.
- Production inventory in database for sending, then created in “<Installation folder>\”“data\export\<name>”.
e.g.: /usr/dok5/data/export/sv123456 would be a suitable export directory to export the data for the sv123456 server if the installation is installed there in /usr/dok5.
- Master data currently in development, stored in “<Installation directory>\data\export\<name>”.
e.g.: F:\doka503\data\export\sv123456 would be a suitable directory in which the data exported under 2. above can be retrieved in a development environment.
- Databases in Work-/Overlay environments stored in “<Environment directory>\data\export\current”.
e.g.: Q:\ab503s4\data\export\current would be a directory in which the necessary export files can be stored for a work environment Q:\AB503S4.
—-

File Format of Update Files

All update files listed below are in text format and can easily be displayed/edited using the viewer and/or editor defined on the 'Configuration' panel.

XMD Files - Flat Files for Export

To be able to transport update data from a source system to a target system, both the contents and the table structure are exported to the “data\export” directory of a given environment. From there, these so-called 'flat' files can be packed into a single ZIP archive and transported to another system. As a result, contents can be compared during normal system operations without having to gain direct access to the original working environment.

The contents of database tables are exported as flat files with a filename extension XMD. These files contain a header with comment lines that describe the source work environment and the structure of the key and fields. The data is listed here with columns separated by tabs. Numerical data is output in a standardized form to facilitate comparisons between various database systems.

If several tables or various selection criteria are gathered in a single file, several table exports can be compiled in a single file using data sets. Each data set comprises a complete definition of the exported table, including header and the appropriate data.

XMD Files (Database Table Data)

Text Line (Example)Description
# Dataset: 'CTE.2'Optional line to identify a dataset in case multiple tables are part of a single data file.
# Table: 'STB'Table ID of the used database table
# System: 'PCYX2;D:\dok5\data\DOK5DOS.MDB'Identification of the source environment where this data was taken from.
# Selection: where TBL = 'ATPTXT' and ( not TXT like '<%' or UIL = 'EN' )If only parts of the whole table are used, the selection criteria used to describe the selection are available here.
# Encoding: 'ISO-8859-1'Used character encoding
# Created: 24.10.2006 16:43:16 by YXCreating user and date of the data file
# Key: TBL, COD, UILFields which uniquely identify an entry within the table
# Columns: TBL<tab>COD<tab>UIL<tab>TXTcolumns used in the data file
ATPTXT<tab>BETTEN<tab>EN<tab>Change TenorData line(s), holding the contents of all fields (as per '# Columns:') in tab-delimited format.
# EndOfDatasetTag to mark the end of a dataset.

XMU Files - Update Files of XMD Files

An XMU file is the result of a comparison between an old and a new XMD file. If the result of the comparison is imported into the work environment of the old data, this would create the status of the new file.

Both files are identifed by their header in the update file. The timestamp of the update file is also stored in the header.

The data itself is added as an update command such as 'Insert', 'Update' or 'Delete'.

XMU Files (Database Table Update)

Text Line (Example)Description
# Table Update FileTag to identify this file as an update file for a table
# Created: 31.10.2006 08:57:26 by MSDate when INI file was created, and by whom
# Entries: 3Number of entries
# Old:Header line to flag the following lines as header of the 'old' file used for the comparison.
# Dataset: 'CTE.2'
# Table: 'STB'
# System: 'PCYX2;D:\dok5\data\DOK5DOS.MDB'
# Selection: where TBL = 'ATPTXT' and ( not TXT like '<%' or UIL = 'EN' )
# Encoding: 'ISO-8859-1'
# Created: 24.10.2006 16:43:16 by YX
# Key: TBL, COD, UIL
# Columns: TBL<tab>COD<tab>UIL<tab>TXT
Header of the data file used as old file for the comparison
# New:Header line to flag the following lines as header of the 'new' file used for the comparison.
# Old<tab>ATPTXT<tab>BRTTRF<tab>EN<tab>Replacing an ApplicantTab delimited contents of the data fields of a record existing in old file. Sequence as in '# Columns:'.
# New<tab>ATPTXT<tab>BRTTRF<tab>EN<tab>Change ApplicantTab delimited contents of the data fields of a record existing in new file. Sequence as in '# Columns:'.
Update<tab>ATPTXT<tab>BRTTRF<tab>EN<tab>TXT<tab>Change ApplicantUpdate command holding the contents of the key fields (as in '# Key:' ) tab delimited followed by pairs of field name and field content where the content has changed in tab-delimited format.
Insert<tab>ATPTXT<tab>SYSUPI<tab>DE<tab>Import von UpdatedateienInsert command holding the contents of all fields as tab-delimited list of contents (without listing the field names).
Delete<tab>ATPTXT<tab>BOTACC<tab>DEDelete command holding the contents of the key fields (as per '# Key:') in tab-delimited format.
# EndOfDatasetTag to mark the end of a dataset.

INI Files (Menus and INI Files)

As well as the actual INI files themselves (those with the .ini extension), INI files also include the menus, with file name extensions DOB, DOF, DOM, TDP. The differences between the versions of INI files can be seen clearly by clicking [INI Diff] on the 'Directory Handling' panel. Deleted lines are shown in red, while added or amended lines are in yellow.

DIF Files (INI Update Files)

DIF files are update files for INI files. The .dif extension is appended to each INI update file (e.g. when comparing an older and a new version of the bctsel.dof menu file, the update file renames this to bctsel.dof.dif).

Prior to the actual comparison, INI files are aligned, thereby increasing the consistency of the files and ensuring that only real differences are recognized as different. The alignment consists in converting section/entry names to block capitals and sorting lines in ascending order.

DIF Files (INI File Update)

Text Line (Example)Description
# INI Update FileTag to identify this file as an update file for an INI-Style file
# Created: 19.01.2007 13:51:03 by XY
# Entries: 3
# Old Path: s:\dok5\data\export\demobank\sysixu.iniHeader line identifying the file used as old for the comparison
# Filedate: <File not found>File date of the used file in case the file was not available
# New Path: q:\yxdo5\data\export\current\sysixu.iniHeader line identifying the file used as new for the comparison
# Filedate: 19.02.2007 09:52:48File date of the used file
# Inifile: 'sysixu.ini'
# System: 'PCYX2;DOK5DEV;q:\yxdo5\ini.tst'
# Encoding: 'ISO-8859-1'
# Created: 19.02.2007 09:52:44 by YX
Header of the used file
+<tab>[SYSFIL1-DIRLIST] DIR1=S:\DOK5\DATA.TST,ServerInsert line with section name enclosed in '[' and ']', tag, and content.
-<tab>[SYSFIL1-DIRLIST] DIR3=S:\DOK5OVLY\MODETY\TTOLIB,ServerDelete line with section name enclosed in '[' and ']', tag, and content.

Header for INI Files

Files with an INI style notation are exported as a simple copy with an additional header. This header contains comments describing the source of the file.

Text Line (Example)Description
# Ini file: 'do5adm.dom'File name of the original INI file (relative to the used INI directory)
# System: 'PCYX2;DOK5DEV;q:\yxdo5\ini.tst'The source environment from where data has been taken
# Encoding: 'ISO-8859-1'Used character encoding
# Created: 11.01.2007 10:42:26 by YXDate when INI file was created, and by whom

Description of Panels

The individual transaction panels are described below.

'Selection'

The upper part of the 'Selection' panel displays the paths of the current environment.

The 'Mode of Operation' combobox is used to determine if an update is to be prepared or displayed, or if an update is to be imported.

Modes of Operation

  • Prepare updates for external environment: This mode makes particular sense when (external) reference data and local data (e.g. the freshly installed MyModelbank or the revised version of certain tables) are to be compared and an update for the external reference data prepared. This reference data can be drawn from a client-server system.
    The resulting update files can be transported to the customer's work environment, for example, from where they can be imported. An example can be found under 'Handling Single Files' .
  • Generating updates based on new version: This mode is used when a new external version has been delivered (usually the MyModelbank of a new release) and the local version is to be updated. Unlike Preparing updates for external environment, here the update is prepared for the local installation and, in the other case, for the external environment.
    Via this processing mode, for instance, an administrator can carry out the update based on another DOKA version on the customer's premises. An example can be found under 'Creating Updates based on a New Version'.
  • Importing updates into current environment: This mode is used when updates are to be imported into an environment. An example can be found under 'Running a Data Update'.
    Below the combobox, the update path is displayed in red, above the box the data path is displayed in green. Below the update paths the directories of the master/product environment are displayed, with the external reference path in blue.
    === Colored Paths ===
  • red - location of the update files. These files can be created, amended or deleted in this SYSUPD session.
  • green - location of the flat export files for the current (local) environment. These export files can be created using the export functions from the current database and the current accessible INI files.
  • blue - location of export files prepared for the external environment. These directories are only read by SYSUPD. The contents of the files cannot be prepared in a SYSUPD session.

'Single File Handling' needs to be checked only if single files have been changed and these individual files need to be exported. Depending on the data type selected (option 'Selected Type'), subsequent options will change accordingly.

The relevant file can be exported from the database/INI directory by clicking [Export].

The existing file with the previous content is marked blue. The file with new, changed content is marked green. The 'diff' date set ('Diff' for 'differences') is marked red.

If an INI file is selected (file from the INI directory) its differences can be viewed by clicking [INI-Diff]. Other file differences can be displayed by clicking [File Diff].

The 'diff' file can be modified by clicking [Edit]. This starts the editor selected on the 'Configuration' panel.

'Export Groups'

List of groups for possible export. Clicking [Export] exports the selected group(s). The data groups required can be highlighted in the list (multiple choices are possible by pressing CTRL at the same time).

Exporting a Whole Set of Data

When exporting a complete set of data in a work environment, all entries in the list need to be selected on this panel. Next, click on the [Export] button. The files generated are added to a ZIP archive (gathered in a ZIP file) outside of DOKA and, where necessary, sent by Email to a member of the support team.

'Directory Handling'

This panel lists the three directories Master 'MyModelbank (demobank)', Local' 'current and Generated Update Files next to each other. The directories correspond to the file locations on the 'Selection' panel, explained under 'Colored Paths'. The display of files can be changed using the combobox at the top of the panel.

After selecting an entry from the list, a generated update file can be added from the current work environment to the files to be imported by clicking [Check In]. Clicking [Check In] opens a separate subpanel that displays the check in path (i.e. the target location of the check in). Clicking [Check In] once again on the subpanel, checks the entry into the target directory. From here, the file - where necessary after being transported to the target system - can be imported into the appropriate system.

'Configuration'

This panel is used to specify the editor (e.g. a text editor), a viewer (e.g. TDView), and a diffing tool (e.g. Windiff).

'Import'

This contains a list of files to be imported and only becomes visible if 'Import Updates into Current Environment' is selected in the 'Mode of Operation' field on the 'Selection' panel. Further information on importing update files can be found under 'Data Update Procedure (using Import updates into current environment)').


Processing a Data Update

The nature of the update can be selected from the 'Mode of Operation' field on the 'Selection' panel.
'Prepare updates for external environment' and 'Create updates from new version' create update files required to update the system.

'Import updates into current environment' is used for the actual updating and serves to import the update files into an environment.

NOTE: The processing modes
'Prepare updates for external environment
and
'Generate updates based on new version'
actually are identical internally in technical terms. They are distinguished only by whether the updates generated should override the external or work environment:

Prepare updates for external environment: The update files are prepared by the support team in their work environment, for example, and sent by Email to the administrator of a production environment. There, the files can be imported using the 'Import updates into current environment' mode.

Create updates from new version: This process can be carried out by an installation's system administrator or developer, for example. Here, the update files can be created on a test system and then imported using 'Import updates into current environment'.

In both of these modes, single or multiple files can be processed at the same time.

These are described in more detail below.

Handling single files

(using the 'Prepare updates for external environment' mode as an example)

Below is a description of how single update files are created from a work environment, using a database table as an example. To do this, 'Single file handling' on the 'Selection' panel needs to be checked.
'Prepare updates for external environment' first needs to be selected. The directory of the target work environment is automatically selected as the external reference path. After checking 'Single file handling', both the data set type - here, database table - and the corresponding table needs to be selected. The table is exported by clicking [Export].

The file containing the 'old' data in the target environment is displayed in blue. After running the export process, the table is exported from the current work environment and is displayed in green. Clicking [Cr. Upd.] creates the update file that shows the differences between the two data sets. If only the changes are to be transported, only these should be contained in the diff file. This file can be edited using a text editor defined for the [Edit] button. Amendments not to be transported can be deleted. However,

  • the header lines are not changed,
  • #Old, #New, #Delete or #Update lines belonging together can also be edited (or deleted) together,
  • the <Tab> expressions in the lines must not be editied or deleted

The complete file can then be imorted into another target system at a later time using 'Import updates in current environment'.

Handling multiple files

(using the 'Create updates from new version' mode for example)

This function is used to update a production environment on the customer side using a test environment also available on the customer side. The location of the (new) data to be transfered is entered in 'External Reference Path'.

The transaction can also be used to update the total supply of data. To do this, make sure that 'Handling single files' is not checked. The data groups to be updated can be selected on he 'Export Groups' panel (see 'Export Groups'). Subsequently, the update files are created by clicking [Export].

It is also possible to handle single files using this procedure (for details see 'Handling single files' above).

The export process to base path is launched by clicking [Export].

Workflow of a Data Update

('Import Updates into Current Environment') mode

To import an update file previously created in another work environment, select the 'Import Updates into Current Environment' option from the 'Mode of Operation' field on the 'Selection' panel. The location of the current update path is displayed in red. The source for the INI files can be selected with the help of a combobox lower down on the 'Selection' panel.
A list of available files (XMU and DIF files) is displayed on the 'Import' panel. These files need to be located in the update directory indicated because this is the source path for the import. These can be displayed in the Viewer by selecting the files and clicking the [View] button. By default, 'Insert New', 'Insert Overwrites Existing', 'Update Existing' and 'Delete Existing' are checked. This enables new entries to be insert when imported and for existing data to be updated/deleted. These settings can be changed as required.

Clicking [Import] runs the respective data import process for the file selected.

Flow of Data when Using SYSUPD

Transaction Panels

Selection



Datafields

Datafield Description
Display log Displays the processing log for the transaction.


Export Groups



Datafields

Datafield Description
List of Accessible Export Groups This list shows all currently available export groups. The list might be modified
within the export configuration to have more and / or other dataset available
for transport and comparision.


Directory Handling




Import




Configuration





dev/020tol/0290sysupd.txt · Last modified: 2024/04/05 10:10 (external edit)