get_user_data_names()
Listet die Namen aller benutzerbezogenen Datensätze eines bestimmten Typs
für den aktuell angemeldeten Benutzer über dms.GetUserDataNames.
1. Signatur
-
Sync
-
Async
ecm.system.get_user_data_names(
data_type: ECMUserDataType | int,
) -> list[str]
await ecm.system.get_user_data_names(
data_type: ECMUserDataType | int,
) -> list[str]
2. Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
|
|
— |
Typkennung. |
3. Rückgabewert
list[str] — die Namen der Datensätze in der Reihenfolge, in der der
Server sie geliefert hat (Name1, Name2, …). Eine leere Liste, wenn der
Benutzer keinen Datensatz dieses Typs besitzt.
4. Wichtig: der Server liefert die Namen in Grossbuchstaben
Die Namen kommen in Grossbuchstaben zurück, unabhängig davon, mit
welcher Schreibweise sie gespeichert wurden. Ein als my_app_config
geschriebener Datensatz wird als MY_APP_CONFIG aufgeführt:
from ecmind_blue_client.ecm import ECMUserDataType
SLOT = ECMUserDataType.ADDITIONAL_APP_CONFIG_80
ecm.system.set_user_data("My_App_Config", SLOT, b"x")
assert ecm.system.get_user_data_names(SLOT) == ["MY_APP_CONFIG"]
Beim Abgleich mit einem bekannten Namen ohne Rücksicht auf die Schreibweise vergleichen:
if "my_app_config".upper() in ecm.system.get_user_data_names(SLOT):
...
Lesen und Löschen unterscheiden keine Gross- und Kleinschreibung, ein zurückgelieferter Name kann also direkt wieder an get_user_data() oder delete_user_data() übergeben werden.
5. Wichtig: Datensätze mit leerem Wert werden mit aufgeführt
Ein mit leerem Wert gespeicherter Datensatz ist ein Datensatz wie jeder andere und erscheint in der Liste. Nur delete_user_data() entfernt einen Namen daraus.
6. Beispiele
6.1. Alle Datensätze eines Typs auflisten und lesen
-
Sync
-
Async
from ecmind_blue_client.ecm import ECMUserDataType
SLOT = ECMUserDataType.ADDITIONAL_APP_CONFIG_80
for name in ecm.system.get_user_data_names(SLOT):
print(name, ecm.system.get_user_data(name, SLOT))
from ecmind_blue_client.ecm import ECMUserDataType
SLOT = ECMUserDataType.ADDITIONAL_APP_CONFIG_80
for name in await ecm.system.get_user_data_names(SLOT):
print(name, await ecm.system.get_user_data(name, SLOT))
7. Siehe auch
-
get_user_data() — Wert lesen
-
set_user_data() — Wert speichern oder überschreiben
-
delete_user_data() — Datensatz löschen