Aktuellen Datensatz aus Container auslesen

Ich habe gerade versucht, aus einem Container einen Feldwert aus dem aktuellen Datensatz auszulesen. Ich habe dafür das Beispielskript aus dem Programmierhandbuch verwendet (1:1 kopiert). Trotzdem habe ich beim Auslesen die Fehlermeldung „Objekt erforderlich“ beim „GetContentsByValue“ erhalten.
oRecord war in der Tat Nothing.

Nach langer Sucherei bin ich auf folgendes gestoßen: In der Tabelle, die die Grundlage für die Ansicht bildet, habe ich historisch eine numerische ID und für den CRM einen UniqueIdentifier. Bei den Ansichtseigenschaften habe ich ungewollt bei beiden Spalten den Haken „Schlüsselfeld“ gesetzt und damit einen zweispaltigen Schlüssel konstruiert.
Für mich war die Lösung nun einfach genug: Haken bei der numerischen ID entfernen.

Ich wollte diese Erkenntnis einfach hier im Forum veröffentlicht haben, falls jemand anderes sich mal mit diesem Problem herumschlägt.

MfG
Wolfgang

Guter Hinweis!

Wir werden für die nächste Hauptversion (unterversionär ist mir das etwas zu heikel) folgendes tun:

[Verbesserung] {SDK} Die Methode Container.CurrentRecord unterstützt nun bei fehlendem oder mehrspaltigem Primärschlüssel die Datensatz-ID Spalte als Alternative. Anderenfalls wird der entsprechende Fehler zumindest auf Debwin ausgegeben. (Benötigt dazu keine cRM_WithDebugLogging.exe.)

D.h. in Ihrem Fall würde es bei Vorhandensein einer Datensatz-ID Spalte dann direkt gehen. In den anderen Fällen würde man auf Debwin wenigstens die Problemursache sehen:

(Letzteres ist generell ein guter Tipp, wenn was nicht so läuft wie es soll. :innocent: )

1 „Gefällt mir“