4.1 Abbildung der Dialog-Datentypen auf COBOL-Datentypen
4.1.1 Grunddatentypen
Die im Dialog verwendeten Grunddatentypen werden in COBOL wie folgt abgebildet:
|
DM-Datentyp |
COBOL-Datentyp |
|---|---|
|
boolean |
pic 9(4) binary |
|
cardinal |
pic 9(4) binary |
|
enum |
pic 9(4) binary |
|
datatype |
pic 9(4) binary |
|
index |
keine Entsprechung |
|
object |
pic 9(9) binary |
|
string [?] |
pic X(?) COBOL-Schnittstelle für Micro Focus Visual COBOL: pic N(?) national |
|
integer |
pic 9(9) binary |
|
attribute |
pic 9(9) binary |
|
method |
pic 9(9) binary |
|
class |
pic XX |
|
anyvalue |
keine Entsprechung COBOL-Schnittstelle für Micro Focus Visual COBOL: pointer |
4.1.2 Records
Neben den Grunddatentypen werden auch Records zu COBOL-Datentypen konvertiert. Die Konvertierung erfolgt hierbei einzeln nach dem obigen Schema für jedes einzelne Element.
Die für das COBOL-Programm notwendigen Definitionen werden durch eine generierte COBOL Copy-Datei bereitgestellt. Diese Generierung erfolgt mit Hilfe des Simulationsprogramms und der Startoption +/-writetrampolin.
idm +writetrampolin <BasisName> <Name der Dialogdatei>
Beispiel
In einem Record sind ein String und eine Zahl enthalten.
record Test1
{
string[25] Value1;
integer Value3;
}
Die entsprechende generierte COBOL-Definition sieht dann wie folgt aus:
01 Test1
05 Value1 pic X(25).
05 Value3 pic 9(9) binary.
Hinweis
Um mit Micro Focus Visual COBOL den Datentyp National Character zu unterstützen, muss zusätzlich die Option -mfviscob-u angegeben werden. Die COBOL-Definition sieht dann so aus:
01 RecTest1.
05 Value1-S.
06 Value1 pic X(25).
06 filler pic X(25).
05 filler redfines Value1-S.
06 Value1-u pic N(25) national.
05 Value3 pic S9(9) binary.
4.1.3 Datentypen für Sammlungen
Die Sammlungsdatentypen des IDM und die damit zusammenhängenden Funktionen für gemanagte (verwaltete) IDM-Werte (Managed DM-Values) werden über den Zeiger-Datentyp (POINTER) von Micro Focus Visual COBOL unterstützt.
|
DM-Datentyp |
Visual-COBOL-Datentyp |
|---|---|
|
POINTER |
|
|
POINTER |
|
|
POINTER |
|
|
POINTER |
|
|
POINTER |
Ein Managed DM-Value wird als Zeiger an Micro Focus Visual COBOL übergeben:
01 ManagedValue pointer. ENTRY "GetAnyValue" using DM-COMMON-DATA ManagedValue.
Um einen solchen Wert innerhalb der DM-Value-Struktur zu verwenden, wird der Wert nach DM-value-pointer kopiert und DM-datatype auf DT-anyvalue gesetzt.
MOVE DT-anyvalue TO DM-datatype. MOVE ManagedValue To DM-value-pointer.
Verfügbarkeit
Nur COBOL-Schnittstelle für Micro Focus Visual COBOL.