6.8.63 DMcob_ValueIndex
Mit dieser Funktion kann der zu einer Position zugehörige Index einer Sammlung ermittelt werden. Dies ist vor allem wichtig für Werte vom Typ DT-hash und DT-matrix um so auf einfachste Weise auf alle zugehörigen Indizes zugreifen zu können. Die Funktion erlaubt nur den Zugriff auf Indizes die nicht zu Standardwerten gehören.
Der zurückgelieferte Index kann in einem gemanagten DM-Value-Parameterwert abgelegt werden oder in einem ungemanagten. Bei letzterem wird wenn nötig eine Allokierung des String-Wertes im temporären Puffer ausgeführt.
77 AnyValue pointer value null. 77 IndexPos pic 9(9) binary value 0. call “DMcob_ValueIndex” using DM-StdArgs AnyValue IndexPos DM-Value.
Parameter
<-> DM-options of DM-StdArgs
Hier sind folgende Optionen möglich:
Option |
Bedeutung |
---|---|
Diese Option bedeutet, dass bei textuellen Werten (IDs vom Typ DT-text) diese als String in der aktuell eingestellten Sprache zurückgegeben werden sollen. |
|
Diese Option bedeutet, dass bei textuellen Werten (IDs vom Typ DT-text) diese als String in der Entwicklungssprache zurückgegeben werden sollen, unabhängig davon, mit welcher Sprache der Benutzer gerade arbeitet. |
|
Normalerweise werden Strings in einem temporären Puffer an die Anwendung übergeben, der bis zum nächsten Aufruf an den IDM erhalten bleibt. Sollen Strings länger in der Anwendung gültig sein, muss diese Option DMF-DontFreeLastStrings gesetzt werden. Der Speicher wird erst dann wieder freigegeben, wenn ein Aufruf an eine IDM-Funktion ohne diese Option erfolgt und dabei ein String vom IDM an die Anwendung zurückgegeben wird. |
-> AnyValue
Handle des verwalteten Wertes, von welcher der Index an der Position geholt wird.
-> IndexPos
Dieser Parameter definiert die Position des Index und sollte zwischen 0 < IndexPos <= DMcob_ValueCount() liegen.
<- DM-Value
Hier wird der entsprechende Index abgelegt. Es kann sich dabei um eine gemanagte oder auch um eine ungemanagte Wertereferenz handeln.
Rückgabewert
DM-status of DM-StdArgs
DM-error |
Der Index konnte nicht ermittelt werden. Das kann auf einen fehlerhaften Aufruf, eine nicht gemanagte oder ungültige Wertereferenz oder eine fehlerhafte Position hinweisen. |
DM-success |
Der Wert hat einen Index an dieser Position, der geholte Index steht danach in DM-Value falls DM-Value != NULL ist. |
Verfügbarkeit
Nur COBOL-Schnittstelle für Micro Focus Visual COBOL.
Siehe auch
Method