Hinzufügen komplexer Zielkriterien

Verwenden Sie eine Rollupabfragenentität (GoalRollupQuery), um komplexe Zielkriterien für ein Ziel hinzuzufügen. Sie können beispielsweise den Umsatz für eine bestimmte Produktlinie angeben, oder den Umsatz, der in einem bestimmten Vertriebsgebiet generiert wurde.

Unterschiedliche Ziele können dieselbe Rollupabfrage verwenden. Eine Rollupabfrage, die einem bestimmten Ziel zugeordnet ist, gilt jedoch nur für dieses Ziel. Eine Rollupabfrage, die für ein übergeordnetes Ziel angegeben wurde, wird nicht auf das untergeordnete Ziel ausgedehnt. Ein untergeordnetes Ziel kann dieselbe Abfrage verwenden oder eine andere Abfrage. Eine Rollupabfrage sollte die gleichen Entitätstypen verwenden, die in den Rollupfelddatensätzen angegeben sind, die dem Ziel zugeordnet sind. Wenn das Ziel die Umsätze aus Verkaufsaufträgen nachverfolgt, die zugeordnete Abfrage jedoch die Entität Verkaufschance verwendet, wird beim Erstellen oder Aktualisieren des Zieldatensatzes eine Ausnahme ausgelöst.

Notiz

Die maximale Anzahl von Datensätzen, die in einer Ziel-Rollupabfrage zurückgegeben werden können, beträgt 5000.

Um Abfragekriterien zu definieren, verwenden Sie das GoalRollupQuery.FetchXml-Attribut. Um den Entitätstyp für die Abfrage zu definieren, verwenden Sie das GoalRollupQuery.QueryEntityType-Attribut.

Notiz

Bei den Tabellen, die im Attribut GoalRollupQuery.QueryEntityType angegeben werden können, müssen die folgenden Attribute EntityMetadata auf true festgelegt sein: IsValidForAdvancedFind, IsUserOwned, IsCustomizable und CanCreateAttributes. Die folgenden Tabellen können nicht in diesem Attribut angegeben werden: SharePointDocumentLocation, SharePointSite und MailMergeTemplate.

Je nach Zielmetriktyp können Sie die Abfragen verwenden, um aktuelle, in Bearbeitung befindliche und benutzerdefinierte Betrags- und Anzahldaten zu filtern. Die folgende Tabelle enthält die Zielmetriktypen und Zielentitätsattribute, die Sie verwenden können, um Abfragen für jeden Typ anzugeben.

Zielmetriktyp Attribute der Rollup-Abfrage
Betrag (Geld) Goal.RollUpQueryActualMoneyId

Goal.RollUpQueryCustomMoneyId

Goal.RollUpQueryInprogressMoneyId
Betrag (ganze Zahl) oder Anzahl Goal.RollupQueryActualIntegerId

Goal.RollUpQueryCustomIntegerId

Goal.RollUpQueryInprogressIntegerId
Betrag (dezimal) Goal.RollUpQueryActualDecimalId

Goal.RollUpQueryCustomDecimalId

Goal.RollUpQueryInprogressDecimalId

Die Abfrage zu den am Ziel beteiligten Datensätzen für ein bestimmtes Rollupattribut sollte die folgenden Klauseln umfassen:

  • Ein Goal.ConsiderOnlyGoalOwnersRecords-Wert.

  • Einen FetchXML-Ausdruck, der in GoalRollupQuery.FetchXml angegeben ist.

  • Datumsbereich (RollupField.DateAttribute), Zustand und Status, die im jeweiligen Rollupfeld für die referenzierte Zielmetrik angegeben sind.

Verhindern von doppelten Zählungen und anderen fehlerhaften Ergebnissen

Mit Abfragen lassen sich die Ergebnisse eines Rollups effizient filtern. Wenn Sie sie jedoch nicht sorgfältig verwenden, können sie doppelte Zählungen oder andere fehlerhafte Ergebnisse einführen. Die folgenden Beispiele veranschaulichen, wie Abfragen zu unerwünschten Ergebnissen beitragen können:

  • Sie verfolgen die Vertriebsaufträge für einen bestimmten Vertriebsmitarbeitenden nach. Das Rollup gibt jedoch keine Verkaufsbestellungen zurück. Dieses Szenario kann auftreten, wenn die Abfrage, die Sie verwendet haben, die Gebiete herausfiltert, in denen der Vertriebsmitarbeiter Kunden hat.

  • Sie können zwei Ziele für einen Vertriebsmitarbeiter festlegen. Ein Ziel verfolgt die Verkaufschancen für ein bestimmtes Produkt nach, und ein anderes Ziel verfolgt die Verkaufschancen in einem bestimmten Vertriebsgebiet nach. Wenn die Verkaufschance den Verkauf des angegebenen Produkts im angegebenen Gebiet umfasst, ist der Umsatz aus dieser Verkaufschance in beiden Zielen enthalten. Wenn die Ziele dasselbe übergeordnete Ziel haben, werden ihre Summen zu dem übergeordneten Ziel addiert, mit dem Ergebnis einer Doppelzählung.

    Sie können Doppelzählung und andere falsche Ergebnisse vermeiden, indem Sie diesen Richtlinien folgen:

  • Legen Sie das Goal.ConsiderOnlyGoalOwnersRecords-Attribut auf true fest, damit nur Datensätze verwendet werden, die dem Besitzer des Ziels gehören.

  • Weisen Sie einem Vertriebsmitarbeitenden nicht mehrere Ziele für den gleichen Zeitraum zu.

  • Verwenden Sie keine Abfrage, wenn Sie nicht sicher sind, dass sie die erwarteten Ergebnisse bereitstellt.

Zielverwaltungstabellen
Beispiel: Verwendung von Rollupabfragen zur Nachverfolgung von Zielen
Zielsummen aufsummieren