Konzept: Zugehörige Geschäftsobjekte in WQL
Sie können auf Felder aus einem zugehörigen Geschäftsobjekt in zugreifen
SELECT
-Klausel mit geschweiften Klammern {}
Vermerk Sie können Abfrageergebnisse auch mithilfe von nach RBO-Feldern filtern
WHERE ON
-Klausel. In WHERE ON
-Klauseln enthalten, lassen Sie die geschweifte Klammer weg {}
-Notation für die RBO-Felder.Die Antworten von diesen Endpunkten geben nun das zugehörige Geschäftsobjekt für jedes Feld zurück:
- GET /dataSources/{ID}/fields
- GET /dataSources/{ID}/dataSourceFilters/{subresourceID}
Syntax
SELECTfield1{relatedBusinessObjectField1, relatedBusinessObjectField2} FROMdataSource
Beispiel:
SELECT dependents{age} FROM allWorkers
Sie können in einem RBO-Feld ein einzelnes Feld oder mehrere durch Kommas getrennte Felder referenzieren.
Sie können einem RBO-Feld auch einen benutzerdefinierten Alias zuweisen. Beispiel:
dependents{age} as DependentsAge
Beispiele
Geben Sie den Mitarbeiter und mehrere Felder aus dem RBO
Angehörige
in einer Gruppe zurück:SELECT worker, dependents{legalName_FirstName, legalName_LastName, age} FROM allWorkers
Geben Sie den Mitarbeiter und mehrere Felder aus dem
Berichtsobjekt
Angehörige als separate Gruppen zurück: SELECT worker, dependents{legalName_FirstName} as FirstName, dependents{legalName_LastName} as LastName, dependents{age} as Age FROM allWorkers
Wenn Sie mehrere Felder separat aus demselben Lookup-Feld aufrufen, verwenden Sie einen eindeutigen Feldalias.
Einschränkungen
Wenn das Lookup-Feld für das RBO-Feld mehrere Instanzen umfasst, unterstützt Workday nur bis zu 500 Werte für das RBO-Feld. Beispiel: Sie geben einen Mitarbeiter als primäres Geschäftsobjekt und abhängige Mitarbeiter als RBO an. Wenn die Abfrage mehr als 500 Angehörige für einen Mitarbeiter zurückgibt, zeigt WQL einen Fehler an. Erwägen Sie die Verwendung einer Datenquelle, die auf einer Datenquelle für Angehörige basiert.
Sie können in folgenden Feldern nicht auf Felder zugreifen: .
- In Abfragen, die aGROUP BY-Klausel.
- Außerhalb vonSELECTundWHERE ON-Klauseln.
Wenn Sie einen API-Client eines Drittanbieters verwenden, müssen Sie die Abfrage möglicherweise zuerst codieren. Einige Drittanbieter-Clients verarbeiten keine geschweiften Klammern
{}
Vermerk Beispielabfrage vor der Codierung:
SELECT worker, dependents{legalName_FirstName} as FirstName FROM allWorkers
Beispielabfrage nach Codierung:
SELECT%20worker%2C%20dependents%7BlegalName_FirstName%7D%20as%20FirstName%20FROM%20allWorkers