6.8.28 DMcob_LGetValueBuff
Mit Hilfe dieser Funktion können Sie Attribute von DM-Objekten erfragen. Der Unterschied zu DMcob_GetValue ist, dass Sie zu dieser Funktion Indexwerte bis zu 65535 übergeben können.
Die zulässigen Attribute für den jeweiligen Objekttyp entnehmen Sie bitte dem Kapitel „Attribute und Definitionen“.
77 DM-string pic x(800).
77 DM-stringlen pic 9(4) binary value 800.
call "DMcob_LGetValueBuff" using
DM-StdArgs
DM-Value
DM-string
DM-stringlen.
Parameter
-> DM-Object of DM-Value
Dieser Parameter beschreibt das Objekt, dessen Attribute Sie erfragen wollen. Sie haben diesen Identifikator als Rückgabewert von der Funktion DMcob_PathToID erhalten.
-> DM-Attribute of DM-Value
Dieser Parameter beschreibt das Objektattribut, welches Sie erfragen wollen. Alle zulässigen Attribute sind in der Datei IDMcobws.cob definiert.
-> DM-LONG-FIRST of DM-Value
Dieser Parameter wird nur in Vektorattributen von Objekten ausgewertet und beschreibt den Index des gesuchten Unterobjekts (z.B. Text in Listbox).
-> DM-LONG-SECOND of DM-Value
Dieser Parameter wird nur bei zweidimensionalen Attributen ausgewertet.
<- DM-Datatype of DM-Value
In diesem Parameter erhalten Sie den Datentyp des gesuchten Attributes. Dabei müssen Sie den vom DM erhaltenen Datentyp beachten, bevor Sie auf die Daten zugreifen.
<- DM-value-object of DM-Value
<- DM-value-boolean of DM-Value
<- DM-value-classid of DM-Value
<- DM-value-integer of DM-Value
In einem dieser Parameter erhalten Sie den Wert des gefragten Attributs. Der Wert, der gesetzt wird, ist abhängig vom Datentyp des Attributs.
Den Datentyp eines jeden Attributes entnehmen Sie bitte dem Kapitel „Attribute und Definitionen“.
<- DM-string
In diesem Parameter erhalten Sie den String des erfragten Attributs. Sie sollten dies unbedingt beachten, da es nur gültig ist, wenn der zurückgegebene Datentyp DT-string ist.
-> DM-stringlen
In diesem Parameter übergeben Sie die Länge des übergebenen Strings. Diese Länge darf nicht größer als die wirkliche Stringlänge des übergebenen Strings sein.
-> DM-Options of DM-StdArgs
Mit Hilfe dieses Parameters wird gesteuert, in welcher Form Texte vom Dialog Manager aus zurückgeliefert werden, falls das entsprechende Attribut vom Typ Text ist.
-
Wird hier DMF-GetMasterString angegeben, wird der Originalstring zurückgeliefert.
-
Ist hier DMF-GetLocalString angegeben, wird der String in der aktuell eingestellten Sprache zurückgeliefert.
-
Wird hier DMF-GetTextID angegeben, liefert der Dialog Manager nur die ID des Textes. Diese kann dann direkt zum Setzen über die Funktion DMcob_SetValue verwendet werden.
COBOL-Schnittstelle für Micro Focus Visual COBOL
An Stelle von DM-value-string kann auch DM-value-string-u verwendet werden, wenn mit Unicode-Texten (UTF-16) gearbeitet wird.
DM-value-string-getlen und DM-value-string-putlen geben weiterhin die Anzahl der Zeichen und nicht der Bytes an.
Der Parameter DM-string kann auch als National Character (PIC N) übergeben werden, wenn mit Unicode-Texten (UTF-16) gearbeitet wird.
Im Parameter DM-stringlen muss weiterhin die Definitionsgröße angegeben werden, zum Beispiel 33 bei PIC N(33).
Rückgabewert
DM-status of DM-StdArgs
DM-error |
Das Attribut ist für das Objekt nicht zulässig. |
DM-success |
Das Attribut konnte erfolgreich erfragt werden. |
Beispiel
Um auf den Inhalt der Listbox "TestListbox" mit sehr langen Einträgen zugreifen zu können, muss das COBOL-Programm etwa wie folgt aussehen:
move 1 to DM-indexcount.
move 15000 to DM-long-first.
move AT-content to DM-Attribute.
move DMF-GetMasterString to DM-Options.
Call "DMcob_LGetValueBuff" using DM-StdArgs DM-Value
DM-String Dm-Stringlen.
if DM-Datatype is equal to DT-string
display DM-String.