A server mapping file (SVM) enables the RPC server to correctly support special COBOL syntax such as
REDEFINE
s, JUSTIFIED
,
SYNCHRONIZE
and OCCURS DEPENDING ON
clauses,
LEVEL-88
fields, etc.
If one of these elements is used, the EntireX Workbench automatically extracts an SVM file in
addition to the IDL (interface definition language), or an SVM file is generated by the
COBOL Wrapper for a server skeleton.
The SVM file is used at runtime to marshal and unmarshal the RPC data stream.
This document covers the following topics:
In the EntireX Workbench, an SVM file has to relate to an appropriate IDL file. Therefore, you always have to keep the IDL file and the SVM file together in the same folder.
If there is an SVM file and a corresponding IDL file,
at least one of the IDL programs in the corresponding IDL file requires server-mapping information to correctly call the target server. For those IDL programs, there is an SVM entry (line) in the Workbench SVM file.
deployment of the SVM file to the RPC server is mandatory, see Server Mapping Deployment.
If there is an IDL file but no corresponding SVM file,
there is no IDL program that requires server mapping information.
For an IMS Connect RPC Server, copy the SVM files of the Workbench manually to a directory (folder) as operating system files.
This directory (folder) is provided to the IMS Connect RPC Server with the property ims.mapping.folder
. See Configuring the IMS Connect Side.
If no server requires an SVM file, you can omit the property ims.mapping.folder
.
If one server requires an SVM file, provide the property ims.mapping.folder
.
See also Deploying a Server Mapping File in the COBOL Wrapper documentation.
Because SVM entries within an SVM file contain text data only, a Workbench SVM file is text-based (although it is not intended for human consumption). Therefore, you can include it in your source control management together with the IDL file and the COBOL source(s) as a triplet that should always be kept in sync.
For a IMS Connect RPC Server, change management of the SVM directory (see SVM Files in the RPC Server) is similar to change management within ordinary operating system directories (folders). All updates to the SVM directory done after a backup must be kept.
All Workbench SVM files added since the last backup should be available.
For SVM files in the EntireX Workbench format, you can use a third party file/text compare tool to check if two files are identical.
The SVM entries (corresponding to lines in a Workbench SVM file) contain a creation timestamp at offset 276 (decimal) in the format YYYYMMDDHHIISST. The precision is 1/10 of a second.
To list the contents of an SVM directory (see SVM Files in the RPC Server), use the Windows Explorer (for Windows) or the
ls
command (for UNIX).
SVM entries (corresponding to lines in Workbench SVM files) contain a creation timestamp at offset 276 (decimal) in the format YYYYMMDDHHIISST. Precision is 1/10 of a second. The creation timestamp can be checked.
The timestamp can be found on the same offset in the SVM files stored as operating system files in SVM directories.
Interface Type | COBOL Syntax | COBOL Mapping Editor | SVM Required |
More Information |
---|---|---|---|---|
CICS with DFHCOMMAREA Calling Convention and IN different to OUT |
all | yes | CICS with DFHCOMMAREA Calling Convention under Introduction to the IDL Extractor for COBOL | CICS DFHCOMMAREA under COBOL Parameter Selection |
|
CICS Channel Container Calling Convention | all | yes | CICS with Channel Container Calling Convention | |
CICS with DFHCOMMAREA Large Buffer Interface | all | yes | CICS with DFHCOMMAREA Large Buffer Interface |
|
IMS MPP Message Interface (IMS Connect) | all | yes | IMS MPP Message Interface (IMS Connect) | |
IMS BMP with Standard Linkage Calling Convention | all | yes | IMS BMP with Standard Linkage Calling Convention | |
Micro Focus with Standard Linkage Calling Convention | BINARY clause
|
yes | Micro Focus with Standard Linkage Calling Convention | |
all | OCCURS DEPENDING ON clause
|
yes | Tables with Variable Size - DEPENDING ON Clause under COBOL to IDL Mapping in the IDL Extractor for COBOL documentation
|
|
all | REDEFINES clause
|
yes | REDEFINE Clause |
|
all | TRAILING [SEPARATE] clause
|
yes | SIGN LEADING and TRAILING SEPARATE Clause |
|
all | LEADING [SEPARATE] clause
|
yes | SIGN LEADING and TRAILING SEPARATE Clause |
|
all | ALIGNED RIGHT attribute
|
yes | ||
all | all | Rename of program | yes | The Software AG IDL Tree Pane under Mapping Editor User Interface in the IDL Extractor for COBOL documentation |
all | all | Map to operation | yes | Context Menu under The COBOL Parameters Pane |
all | all | Map to constant | yes | Context Menu |
all | all | Suppress | yes | Context Menu |
other combinations | no |
This depends on the interface type chosen and the IDL type:
Interface Type | IDL Type | COBOL Wrapper | SVM Required |
More Information |
---|---|---|---|---|
CICS with DFHCOMMAREA Large Buffer Interface | all | yes | CICS with DFHCOMMAREA Large Buffer Interface under COBOL Server Interface Types | |
CICS with Channel Container Calling Convention | all | yes | CICS with Channel Container Calling Convention | |
IMS BMP with Standard Linkage Calling Convention | all | yes | IMS BMP with Standard Linkage Calling Convention | |
Micro Focus | I2 or I4 | yes | Micro Focus with Standard Linkage Calling Convention | IDL Data Types | |
all | IDL unbounded array | yes | array-definition under Software AG IDL Grammar |
|
all | IDL unbounded group | yes | group-parameter-definition under Software AG IDL Grammar |
|
all | all | IDL program name is not a valid COBOL name and is therefore adapted, or the COBOL program name is customized | yes | Customize Automatically Generated Server Names |
other combinations | no |
All EntireX RPC servers can be executed without SVM files. There is no need to install the SVM container (see SVM Files in the RPC Server) as long as you do not use features that require SVM files (see When is an SVM File Required?). You can also call COBOL servers generated or extracted with previous versions of EntireX mixed with a COBOL server that requires SVM files. All EntireX RPC servers are backward compatible.