Erstellen Sie einen Power Query-Vorlagenkonnektor
Wichtig
Einige oder alle dieser Funktionen sind als Teil einer Vorschauversion verfügbar. Inhalt und Funktionalität können sich ändern.
Dieser Artikel zeigt Partnern, wie sie einen Power Query-Vorlagenkonnektor für Microsoft Sustainability Manager erstellen. Um einen Power Query Vorlagenkonnektor erfolgreich zu erstellen, müssen Sie einige grundlegende Kenntnisse zur Lösungsentwicklung für Dynamics 365 besitzen und wissen, wie man eine Power Query Vorlage im Sustainability Manager erstellt.
Wenn Sie einen Power Automate-Vorlagenkonnektor erstellen müssen, gehen Sie zu Einen Power Automate-Vorlagenkonnektor erstellen.
Schritt 1: Eine Umgebung erstellen
In diesem Schritt erstellen Sie eine Lösung zur Verteilung an Sustainability Manager-Benutzer, die Daten mit Ihrem Konnektor importieren müssen.
Erstellen Sie eine neue nicht verwaltete Lösung in Power Apps, indem Sie den Anweisungen unter Lösung erstellen folgen.
Installieren Sie Sustainability Manager in dieser Umgebung.
Schritt 2: Power Query-Vorlage erstellen
Um die Power Query Vorlage für Ihren Konnektor zu erstellen, folgen Sie den Anweisungen unter Eine Power Query Vorlage entwerfen.
Schritt 3: Bereiten Sie Ihre Lösung vor
Nachdem Sie nun über eine Umgebung mit installiertem Sustainability Manager verfügen und eine Power Query Vorlage erstellt haben, können Sie die Power Query Vorlage in eine Konnektor-Lösung packen.
Ihre entpackte Lösung sollte mindestens die folgende Ordnerstruktur enthalten:
- Ordner „Assets“
- Datei: msdyn_dataconnectors.xml
- Datei: msdyn_dataflowtemplates.xml
- Ordner: Andere
- Datei: Customizations.xml
- Datei: Solution.xml
- Datei: <solution>.cdsproj
Die Dateien unter Assets enthalten die notwendigen Informationen zum Unterbringen Ihres Power Query Vorlagenkonnektors. Die Datei msdyn_dataconnectors.xml enthält wichtige Metadaten zu Ihrem Connector. Nach der Installation bestimmt es, wie Ihr Konnektor im Sustainability Manager angezeigt wird. Die Datei msdyn_dataflowtemplates.xml enthält Informationen zu Ihrer Power Query Vorlage, einschließlich aller Transformationen, die Ihre Power Query Vorlage enthält. Sie können diese Dateien verwenden, um einen oder mehrere Konnektoren innerhalb einer einzelnen Lösung zu erstellen.
Folgen Sie den Anweisungen in diesem Abschnitt, um jede Datei zu erstellen.
Datei erstellen: msdyn_dataconnectors.xml
Erstellen Sie in Ihrem bevorzugten Texteditor eine neue Datei mit dem Namen msdyn_dataconnectors.xml.
Kopieren und ändern Sie das folgende XML entsprechend Ihren Angaben:
<msdyn_dataconnectors> <msdyn_dataconnector msdyn_dataconnectorid="bc9e9b1e-45fa-4d6e-b799-9dcb49aaf981"> <msdyn_connectorstatus>700610001</msdyn_connectorstatus> <msdyn_connectortype>700610007</msdyn_connectortype> <msdyn_description>Demo Power Query templates connector</msdyn_description> <msdyn_supportlinkurl>https://www.microsoft.com</msdyn_supportlinkurl> <msdyn_logo_text> </msdyn_logo_text> <msdyn_name>Demo Power Query templates connector</msdyn_name> <msdyn_title>Demo Power Query templates connector</msdyn_title> <msdyn_dataflowtemplateid> <msdyn_dataflowtemplateid>fb6ee8dd-b84c-4599-adb6-1812b3878052</msdyn_dataflowtemplateid> </msdyn_dataflowtemplateid> </msdyn_dataconnector> </msdyn_dataconnectors>
Parameter Informationen msdyn_dataKonnektorid Generieren Sie unter Einhaltung des GUID-Formats eine neue GUID zur Identifizierung Ihres Konnektors. In diesem Beispiel verwenden wir GUID = bc9e9b1e-45fa-4d6e-b799-9dcb49aaf981. Ihre GUID ist Ihre Konnektor-Kennung, die Sie in späteren Schritten benötigen. msdyn_connectorstatus Belassen Sie diesen Wert bei 700610001. Dieser Wert stellt einen veröffentlichten Konnektor dar. msdyn_Konnektortype Belassen Sie diesen Wert bei 700610007. Dieser Wert stellt den Typ eines Konnektors dar. In diesem Fall ist es der Wert für einen Power Query-Vorlagenkonnektor. msdyn_description Fügen Sie eine Beschreibung für Ihren Konnektor hinzu. msdyn_supportlinkurl Ersetzen Sie den Text durch die URL, die Ihre Benutzer kontaktieren sollen, wenn die Verbindung fehlschlägt. Informationen zum Testen fehlgeschlagener Verbindungen finden Sie unter Test zur Fehlerbehandlung. Ohne diese URL wird Ihr Konnektor nicht im Sustainability Manager angezeigt. msdyn_logo_text Verwenden Sie einen Encoder Ihrer Wahl, um Ihr Logobild zu kodieren und in Base64 zu speichern. Das Bild sollte 36 x 36 Pixel groß sein. Fügen Sie in diesen Parameter die Base64-Kodierung ein. msdyn_name
msdyn_titleÄndern Sie Power Query-Vorlagenkonnektor Demo in den Namen Ihres Konnektors. msdyn_dataflowtemplateid Ändern Sie diesen Wert in den Wert für Ihre Power Query Vorlage. Dieser Wert ist eine GUID, die Sie auch in der msdyn_dataflowtemplates.xml Datei verwenden.
Datei erstellen: msdyn_dataflowtemplates.xml file
Erstellen Sie in Ihrem bevorzugten Texteditor eine neue Datei mit dem Namen msdyn_dataflowtemplates.xml.
Kopieren und ändern Sie das folgende XML entsprechend Ihren Angaben:
<msdyn_dataflowtemplates> <msdyn_dataflowtemplate msdyn_dataflowtemplateid="fb6ee8dd-b84c-4599-adb6-1812b3878052"> <msdyn_uniquename>msm_sustainabilitySamplePQTemplate</msdyn_uniquename> <msdyn_category>msdyn_sustainability</msdyn_category> <msdyn_configuration>{\"msdyn_sustainability\":{\"dataDefintions\":\"bd182f7f-1b7b-4360-9c02-2d0b7cd75b97, 4b1faadb-0ee4-42c8-a3fc-e3afa3987172, c4f9c6f5-dc68-49ca-8297-acbb29fece79, 6c36ce29-f121-47d6-b146-9eece7e869ec\",\"dataDefintionNames\":\"6. Business travel, Facilities, Organizational units, Business travel types\",\"map\":{\"Business Travel\":\"{\\\"fields\\\":[{\\\"destinationField\\\":\\\"msdyn_businesstraveltypeid\\\",\\\"sourceField\\\":\\\"Business Travel Type\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_consumptionstartdate\\\",\\\"sourceField\\\":\\\"Consumption Start Date\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_consumptionenddate\\\",\\\"sourceField\\\":\\\"Consumption End Date\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_name\\\",\\\"sourceField\\\":\\\"Name\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_description\\\",\\\"sourceField\\\":\\\"Description\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_facilityid\\\",\\\"sourceField\\\":\\\"Facility\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_cost\\\",\\\"sourceField\\\":\\\"Cost\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_costunit\\\",\\\"sourceField\\\":\\\"Cost Unit\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_distance\\\",\\\"sourceField\\\":\\\"Distance\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_distanceunit\\\",\\\"sourceField\\\":\\\"Distance Unit\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_organizationalunitid\\\",\\\"sourceField\\\":\\\"Organizational unt\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_dataqualitytype\\\",\\\"sourceField\\\":\\\"Data Quality\\\",\\\"isCustomDimension\\\":false},{\\\"sourceField\\\":\\\"Production value\\\",\\\"destinationField\\\":\\\"Production Amplifier\\\",\\\"isCustomDimension\\\":true}]}\",\"biz trav types\":\"{\\\"fields\\\":[{\\\"destinationField\\\":\\\"msdyn_name\\\",\\\"sourceField\\\":\\\"Name\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_description\\\",\\\"sourceField\\\":\\\"Description\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_origincorrelationid\\\",\\\"sourceField\\\":\\\"Origin correlation id\\\",\\\"isCustomDimension\\\":false}]}\",\"orgs\":\"{\\\"fields\\\":[{\\\"destinationField\\\":\\\"msdyn_name\\\",\\\"sourceField\\\":\\\"Name\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_organizationalunittype\\\",\\\"sourceField\\\":\\\"Organizational unit type\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_addressstreet1\\\",\\\"sourceField\\\":\\\"Address\\\",\\\"isCustomDimension\\\":false}]}\",\"facilities\":\"{\\\"fields\\\":[{\\\"destinationField\\\":\\\"msdyn_name\\\",\\\"sourceField\\\":\\\"Name\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_addresscity\\\",\\\"sourceField\\\":\\\"City\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_addresscountryisocode\\\",\\\"sourceField\\\":\\\"Country/Region\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_addresszippostalcode\\\",\\\"sourceField\\\":\\\"Zip/Postal\\\",\\\"isCustomDimension\\\":false},{\\\"destinationField\\\":\\\"msdyn_addressstreet1\\\",\\\"sourceField\\\":\\\"Address \\\",\\\"isCustomDimension\\\":false}]}\"},\"mapSdds\":{\"Business Travel\":\"bd182f7f-1b7b-4360-9c02-2d0b7cd75b97\",\"biz trav types\":\"4b1faadb-0ee4-42c8-a3fc-e3afa3987172\",\"orgs\":\"c4f9c6f5-dc68-49ca-8297-acbb29fece79\",\"facilities\":\"6c36ce29-f121-47d6-b146-9eece7e869ec\"}}}</msdyn_configuration> <msdyn_description>Demo Power Query template connector</msdyn_description> <msdyn_mashupdocument>{\"hostContext\":{\"type\":\"SustainabilityCloud\",\"details\":{\"EnvironmentId\":\"b9fd4065-c444-e187-a1b1-5ddeb9c39a1a\"}},\"mashupName\":\"Sustainability--04000419112812547\",\"mashupDocument\":\"section Section1;\\r\\nshared #\\\"Business Travel\\\" = let\\n Source = Excel.Workbook(Web.Contents(\\\"contoso/Documents/Apps/Microsoft Power Query/Uploaded Files/business travel 9.xlsx\\\"), null, true),\\n #\\\"Navigation 1\\\" = Source{[Item = \\\"Business Travel\\\", Kind = \\\"Sheet\\\"]}[Data],\\n #\\\"Promoted headers\\\" = Table.PromoteHeaders(#\\\"Navigation 1\\\", [PromoteAllScalars = true]),\\n #\\\"Changed column type\\\" = Table.TransformColumnTypes(#\\\"Promoted headers\\\", {{\\\"Business Travel Type\\\", type text}, {\\\"Consumption Start Date\\\", type datetime}, {\\\"Consumption End Date\\\", type datetime}, {\\\"Data Quality\\\", type text}, {\\\"Name\\\", type text}, {\\\"Organizational unt\\\", type text}, {\\\"Description\\\", type text}, {\\\"Facility\\\", type text}, {\\\"Cost\\\", Int64.Type}, {\\\"Cost Unit\\\", type text}, {\\\"Distance\\\", Int64.Type}, {\\\"Distance Unit\\\", type text}, {\\\"Traveler\\\", type text}, {\\\"Is Good use of money\\\", type text}, {\\\"Budget\\\", Int64.Type}, {\\\"Had Fun\\\", type text}, {\\\"Personal Note\\\", type text}, {\\\"Production value\\\", Int64.Type}}),\\n #\\\"Filtered rows\\\" = Table.SelectRows(#\\\"Changed column type\\\", each ([Traveler] = FullName))\\nin\\n #\\\"Filtered rows\\\";\\r\\nshared #\\\"biz trav types\\\" = let\\r\\n Source = Excel.Workbook(Web.Contents(\\\"contoso/Documents/Apps/Microsoft Power Query/Uploaded Files/business travel 9.xlsx\\\"), null, true),\\r\\n #\\\"Navigation 1\\\" = Source{[Item = \\\"biz trav types\\\", Kind = \\\"Sheet\\\"]}[Data],\\r\\n #\\\"Changed column type\\\" = Table.TransformColumnTypes(#\\\"Navigation 1\\\", {{\\\"Column1\\\", type text}, {\\\"Column2\\\", type text}, {\\\"Column3\\\", type text}}),\\r\\n #\\\"Promoted headers\\\" = Table.PromoteHeaders(#\\\"Changed column type\\\", [PromoteAllScalars = true])\\r\\nin\\r\\n #\\\"Promoted headers\\\";\\r\\nshared orgs = let\\r\\n Source = Excel.Workbook(Web.Contents(\\\"https://contoso/Documents/Apps/Microsoft Power Query/Uploaded Files/business travel 9.xlsx\\\"), null, true),\\r\\n #\\\"Navigation 1\\\" = Source{[Item = \\\"orgs\\\", Kind = \\\"Sheet\\\"]}[Data],\\r\\n #\\\"Changed column type\\\" = Table.TransformColumnTypes(#\\\"Navigation 1\\\", {{\\\"Column1\\\", type text}, {\\\"Column2\\\", type text}, {\\\"Column3\\\", type text}}),\\r\\n #\\\"Promoted headers\\\" = Table.PromoteHeaders(#\\\"Changed column type\\\", [PromoteAllScalars = true])\\r\\nin\\r\\n #\\\"Promoted headers\\\";\\r\\nshared facilities = let\\r\\n Source = Excel.Workbook(Web.Contents(\\\"https://contoso/Documents/Apps/Microsoft Power Query/Uploaded Files/business travel 9.xlsx\\\"), null, true),\\r\\n #\\\"Navigation 1\\\" = Source{[Item = \\\"facilities\\\", Kind = \\\"Sheet\\\"]}[Data],\\r\\n #\\\"Promoted headers\\\" = Table.PromoteHeaders(#\\\"Navigation 1\\\", [PromoteAllScalars = true]),\\r\\n #\\\"Changed column type\\\" = Table.TransformColumnTypes(#\\\"Promoted headers\\\", {{\\\"Name\\\", type text}, {\\\"Address \\\", type text}, {\\\"City\\\", type text}, {\\\"Country/Region\\\", type text}, {\\\"Zip/Postal\\\", Int64.Type}, {\\\"IsLeased\\\", type text}}),\\r\\n #\\\"Renamed columns\\\" = Table.RenameColumns(#\\\"Changed column type\\\", {{\\\"Address \\\", \\\"Address\\\"}})\\r\\nin\\r\\n #\\\"Renamed columns\\\";\\r\\n[Description = \\\"first name last name of the user doing the business travel\\\"]\\r\\nshared FullName = \\\"Stanko Gutalj\\\" meta [IsParameterQuery = true, IsParameterQueryRequired = true, Type = type any];\\r\\n\",\"queryGroups\":[],\"documentLocale\":\"en-US\",\"gatewayObjectId\":null,\"queriesMetadata\":{\"Business Travel\":{\"queryId\":\"c7b76ec4-8e29-42d1-b63d-7710f85a7d4b\",\"queryName\":\"Business Travel\",\"queryGroupId\":null,\"entityName\":null,\"lastKnownIsCalculatedEntity\":false,\"lastKnownIsLinkedEntity\":false,\"lastKnownIsParameter\":false,\"isHidden\":false,\"lastKnownResultTypeName\":\"table\",\"loadEnabled\":true,\"fieldsMetadata\":{},\"deleteExistingDataOnLoad\":false,\"hostProperties\":{},\"jsonOutputDestinations\":null,\"bindToDefaultOutputDestination\":null,\"jsonIncrementalRefreshSettings\":null,\"stagingDefinition\":null},\"biz trav types\":{\"queryId\":\"0c8434c7-29c6-4f7b-a5f5-b5791604061d\",\"queryName\":\"biz trav types\",\"queryGroupId\":null,\"entityName\":null,\"lastKnownIsCalculatedEntity\":false,\"lastKnownIsLinkedEntity\":false,\"lastKnownIsParameter\":false,\"isHidden\":false,\"lastKnownResultTypeName\":\"table\",\"loadEnabled\":true,\"fieldsMetadata\":{},\"deleteExistingDataOnLoad\":false,\"hostProperties\":{},\"jsonOutputDestinations\":null,\"bindToDefaultOutputDestination\":null,\"jsonIncrementalRefreshSettings\":null,\"stagingDefinition\":null},\"orgs\":{\"queryId\":\"94756842-bfc6-4459-9703-627d2f95594a\",\"queryName\":\"orgs\",\"queryGroupId\":null,\"entityName\":null,\"lastKnownIsCalculatedEntity\":false,\"lastKnownIsLinkedEntity\":false,\"lastKnownIsParameter\":false,\"isHidden\":false,\"lastKnownResultTypeName\":\"table\",\"loadEnabled\":true,\"fieldsMetadata\":{},\"deleteExistingDataOnLoad\":false,\"hostProperties\":{},\"jsonOutputDestinations\":null,\"bindToDefaultOutputDestination\":null,\"jsonIncrementalRefreshSettings\":null,\"stagingDefinition\":null},\"facilities\":{\"queryId\":\"87485e4a-ecdb-4617-9c8c-a7c96a2092f7\",\"queryName\":\"facilities\",\"queryGroupId\":null,\"entityName\":null,\"lastKnownIsCalculatedEntity\":false,\"lastKnownIsLinkedEntity\":false,\"lastKnownIsParameter\":false,\"isHidden\":false,\"lastKnownResultTypeName\":\"table\",\"loadEnabled\":true,\"fieldsMetadata\":{},\"deleteExistingDataOnLoad\":false,\"hostProperties\":{},\"jsonOutputDestinations\":null,\"bindToDefaultOutputDestination\":null,\"jsonIncrementalRefreshSettings\":null,\"stagingDefinition\":null},\"FullName\":{\"queryId\":\"488f10a8-9f01-4674-a004-c8a6493785a6\",\"queryName\":\"FullName\",\"queryGroupId\":null,\"entityName\":null,\"lastKnownIsCalculatedEntity\":false,\"lastKnownIsLinkedEntity\":false,\"lastKnownIsParameter\":true,\"isHidden\":false,\"lastKnownResultTypeName\":\"text\",\"loadEnabled\":false,\"fieldsMetadata\":{},\"deleteExistingDataOnLoad\":false,\"hostProperties\":{},\"jsonOutputDestinations\":null,\"bindToDefaultOutputDestination\":null,\"jsonIncrementalRefreshSettings\":null,\"stagingDefinition\":null}},\"connectionOverrides\":[{\"path\":\"https://contoso/Documents/Apps/Microsoft Power Query/Uploaded Files/business travel 9.xlsx\",\"kind\":\"Web\",\"provider\":\"PowerApps\",\"environmentName\":\"b9fd4065-c444-e187-a1b1-5ddeb9c39a1a\",\"apiName\":\"webcontents\",\"connectionName\":\"926cadb147e044fa9da7cffce4f70e82\",\"credentialDetails\":{},\"connectionParameters\":{}}],\"trustedConnections\":null,\"useHostConnectionProvider\":false,\"fastCombine\":false,\"allowNativeQueries\":false,\"allowedModules\":null,\"skipAutomaticTypeAndHeaderDetection\":false,\"disableAutoAnonymousConnectionUpsert\":false,\"hostProperties\":null,\"defaultOutputDestinationConfiguration\":null,\"stagingDefinition\":null}</msdyn_mashupdocument> <msdyn_templatename>Demo Power Query template connector</msdyn_templatename> <msdyn_templateversion>1.0</msdyn_templateversion> </msdyn_dataflowtemplate> </msdyn_dataflowtemplates>
Parameter Informationen msdyn_dataflowtemplateid Generieren Sie unter Einhaltung des GUID-Formats eine neue GUID zur Identifizierung Ihrer Vorlage. In diesem Beispiel verwenden wir GUID = fb6ee8dd-b84c-4599-adb6-1812b3878052. msdyn_uniquename Einen eindeutigen Namen für den Vorlagendatensatz eingeben. msdyn_category Die Kategorie Ihres Vorlagendatensatzes. Belassen Sie diesen Wert unverändert. msdyn_configuration Ändern Sie dies in das JSON, das die Zuordnungskonfiguration Ihrer Vorlage für die im Sustainability Manager unterstützten Datenkategorien darstellt. Anweisungen zum Abrufen dieses JSON finden Sie nach dieser Tabelle. msdyn_description Geben Sie eine Beschreibung für die Power Query Vorlage ein. msdyn_mashupdocument Dieser Parameter ist eine Textdarstellung aller Transformationen in Ihrem Konnektor. Anweisungen zum Abrufen dieses Textes finden Sie nach dieser Tabelle. msdyn_templatename Geben Sie einen Namen für Ihre Vorlage ein. msdyn_templateversion Geben Sie Versionsnummer der Vorlage ein. Um die Informationen zu extrahieren, die in den msdyn_configuration und msdyn_mashupdocument Parametern verwendet werden, kopieren Sie den folgenden Text und fügen Sie ihn in Ihren Browser ein. Ersetzen Sie <Ihre Organisation> durch den Namen der Umgebung Ihrer Organisation.
https://<your_organization>.crm10.dynamics.com/api/data/v9.0/msdyn_dataflowtemplates
Eine JSON-Anzeige mit allen Ihren msdyn_dataflowtemplates Datensätze, wo Sie die Vorlage finden, die Sie verschieben möchten. Kopieren Sie die Felder und fügen Sie sie in Ihre msdyn_dataflowtemplates.xml Datei.