JavaScript - Arbeiten mit Lookups
Verfasst: 5. November 2009 18:17
Ein Lookup ist immer vom Datentyp Array. Der Wert, der im Lookup angezeigt wird, ist immer der erste Datensatz in diesem Array. Es gibt nur sehr wenige Entitäten, in denen das Feld tatsächlich mehrere Datensätze enthält, z.B. kann das Feld Empfänger einer E-Mail mehrere Datensätze beinhalten.
Auf die Daten in einem Lookup zugreifen
Den Wert in einem Lookup löschen
Den Default Lookuptyp ändern
Wenn ein Lookup mehre Entitätstypen enthalten kann, kann mit diesem Code der Default-Wert festegelegt werden, der beim öffnen des Lookups ausgewählt ist.
Das Beispiel setzt den Typ auf Kontakt.
Mehrere Einträge zu einem Multi Select Lookup hinzufügen (z.B. An-Feld in einer eMail)
Alle Datensätze in einem Lookup anzeigen
Bei einem Lookup das Suchfeld ausblenden
crmForm.all.<Name des Feldes>.style.display = "none";
Verweis auf weitere Beiträge zum Them Lookups
Der Artikel ist unter diesem Link in meinem Blog erschienen.
Auf die Daten in einem Lookup zugreifen
- Auf folgende Felder eines Lookups kann direkt zugegriffen werden
- Code:
crmForm.all.regardingobjectid.DataValue[0].id; // Die GUID des Datensatzes im Lookup
crmForm.all.regardingobjectid.DataValue[0].name; // Der Text, der im Lookup angezeigt wird
crmForm.all.regardingobjectid.DataValue[0].typename; // Der Typ des Datensatzes, der im Lookup angezeigt wird
- Version 1
- Code:
var lookupitem = new Array();
lookupitem[0] = new LookupControlItem('58e9ce6d-021d-de11-a316-005056a11444', 10008, 'Test1');
crmForm.all.sulz_testid.DataValue = lookupitem;
Die ID des Datensatzes, die zugewiesen werden soll
Der Typecode der Entität, die zugeordnet werden soll
Der Name des Datensatzes, der im Lookup angezeigt wird - Version 2
- Code:
var lookupitem = new Array();
var lookupitemobject = new Object();
lookupitemobject .id = '{6F7329E4-45C5-4393-A08E-6AE3AC070902}';
lookupitemobject .typename = 'uom';
lookupitemobject .name = 'Primary Unit';
lookupitem [0] = lookupitemobject;
crmForm.all.primaryUnit.DataValue = lookupitem;
Den Wert in einem Lookup löschen
- Code:
crmForm.all.<lookupField>.DataValue = null;
Den Default Lookuptyp ändern
Wenn ein Lookup mehre Entitätstypen enthalten kann, kann mit diesem Code der Default-Wert festegelegt werden, der beim öffnen des Lookups ausgewählt ist.
Das Beispiel setzt den Typ auf Kontakt.
- Code:
if (crmForm.all.regardingobjectid != null) {
crmForm.all.regardingobjectid.setAttribute("defaulttype", "2");
Mehrere Einträge zu einem Multi Select Lookup hinzufügen (z.B. An-Feld in einer eMail)
- Code:
var lookup = new Array();
var item0 = new Object();
item0.typename = 'account';
item0.id = '';
item0.name = 'Name1';
lookup[0] = item0;
var item1 = new Object();
item1.typename = 'account';
item1.id = '';
item1.name = 'Name2';
lookup[1] = item1;
crmForm.all.to.DataValue = lookup;
Alle Datensätze in einem Lookup anzeigen
- Code:
crmForm.all.<Name des Lookup Feldes>.lookupclass = "alllookups";
Bei einem Lookup das Suchfeld ausblenden
crmForm.all.<Name des Feldes>.style.display = "none";
Verweis auf weitere Beiträge zum Them Lookups
Der Artikel ist unter diesem Link in meinem Blog erschienen.