Sdílet prostřednictvím


Vytvoření konektoru šablony Power Query

Důležité

Některé nebo všechny tyto funkce jsou k dispozici jako součást vydání verze Preview. Obsah a funkce se mohou změnit.

Tento článek ukazuje partnerům, jak vytvořit konektor šablony Power Query pro Microsoft Sustainability Manager. Chcete-li úspěšně vytvořit konektor šablony Power Query, musíte znát základní vývoj řešení pro Dynamics 365 a vědět, jak vytvořit šablonu Power Query v Sustainability Manager.

Pokud potřebujete vytvořit konektor Power Automate, přejděte na Vytvoření konektoru Power Automate.

Krok 1: Vytvoření prostředí

V tomto kroku vytvoříte řešení pro distribuci uživatelům Sustainability Manager, kteří potřebují importovat data pomocí vašeho konektoru.

  1. Vytvořte nové nespravované řešení v Power Apps podle pokynů v části Vytvoření řešení.

  2. Nainstalujte Sustainability Manager do tohoto prostředí.

Krok 2: Vytvoření šablony Power Query

Chcete-li vytvořit šablonu Power Query pro konektor, postupujte podle pokynů v části Návrh šablony Power Query.

Krok 3: Připravte si řešení

Nyní, když máte nainstalované prostředí se Sustainability Manager a vytvořili jste šablonu Power Query, můžete šablonu Power Query zabalit do řešení konektoru.

Následující struktura složek ve vašem rozbaleném řešení by měla obsahovat minimálně:

  • Složka: Assets
    • Soubor: msdyn_dataconnectors.xml
    • Soubor: msdyn_dataflowtemplates.xml
  • Složka: Other
    • Soubor: Customizations.xml
    • Soubor: Solution.xml
  • Soubor: <solution>.cdsproj

Soubory ve složce Assets obsahují potřebné informace pro umístění konektoru šablony Power Query. Soubor msdyn_dataconnectors.xml obsahuje důležitá metadata o vašem konektoru. Po instalaci určí, jak se váš konektor zobrazí v Sustainability Manager. Soubor msdyn_dataflowtemplates.xml obsahuje informace o vaší šabloně Power Query, včetně všech transformací, které vaše šablona Power Query obsahuje. Tyto soubory můžete použít k vytvoření jednoho nebo více konektorů v rámci jednoho řešení.

Podle pokynů v této části k vytváření jednotlivých souborů.

Vytvoření souboru msdyn_dataconnectors.xml

  1. V preferovaném textovém editoru vytvořte nový soubor s názvem msdyn_dataconnectors.xml.

  2. Zkopírujte a upravte následující XML, aby odpovídal vašim údajům:

    <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></msdyn_dataflowtemplateid>
      </msdyn_dataflowtemplateid>
      </msdyn_dataconnector>
    </msdyn_dataconnectors>
    
    Parametr Detaily
    msdyn_dataconnectorid Vygenerujte nové GUID k identifikaci vašeho konektoru, dodržujte formát GUID. V našem příkladu používáme GUID = bc9e9b1e-45fa-4d6e-b799-9dcb49aaf981. Váš GUID je váš identifikátor konektoru, který budete potřebovat v pozdějších krocích.
    msdyn_connectorstatus Ponechte tuto hodnotu na 700610001. Tato hodnota představuje publikovaný konektor.
    msdyn_connectortype Ponechte tuto hodnotu na 700610007. Tato hodnota představuje typ konektoru. V tomto případě je to hodnota pro konektor šablony Power Query.
    msdyn_description Přidejte krátký popis svého konektoru.
    msdyn_supportlinkurl Nahraďte text adresou URL, kterou mají uživatelé kontaktovat, pokud se připojení nezdaří. Informace o testování neúspěšných připojení naleznete v části Test zpracování chyb. Bez této adresy URL se váš konektor v Sustainability Manager nezobrazí.
    msdyn_logo_text Pomocí kodéru podle svého výběru zakódujte a uložte obrázek loga do Base 64. Obrázek musí mít 36 × 36 px. Do tohoto parametru vložte kódování base 64.
    msdyn_name
    msdyn_title
    Změňte Ukázkový konektor šablon Power Query na název vašeho konektoru.
    msdyn_dataflowtemplateid Změňte tuto hodnotu na hodnotu pro vaši šablonu Power Query. Tato hodnota je GUID, které také používáte v souboru msdyn_dataflowtemplates.xml.

Vytvoření souboru msdyn_dataflowtemplates.xml

  1. V preferovaném textovém editoru vytvořte nový soubor s názvem msdyn_dataflowtemplates.xml.

  2. Zkopírujte a upravte následující XML, aby odpovídal vašim údajům:

    <msdyn_dataflowtemplates>
      <msdyn_dataflowtemplate msdyn_dataflowtemplateid="">
        <msdyn_uniquename>msm_sustainabilitySamplePQTemplate</msdyn_uniquename>
        <msdyn_category>msdyn_sustainability</msdyn_category>
        <msdyn_configuration>{\"msdyn_sustainability\":{\"dataDefinitions\":\", , , \",\"dataDefinitionNames\":\"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\":\"aaaa0000-bb11-2222-33cc-444444dddddd\",\"biz trav types\":\"bbbb1111-cc22-3333-44dd-555555eeeeee\",\"orgs\":\"cccc2222-dd33-4444-55ee-666666ffffff\",\"facilities\":\"dddd3333-ee44-5555-66ff-777777aaaaaa\"}}}</msdyn_configuration>
        <msdyn_description>Demo Power Query template connector</msdyn_description>
        <msdyn_mashupdocument>{\"hostContext\":{\"type\":\"SustainabilityCloud\",\"details\":{\"EnvironmentId\":\"\"}},\"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\":\"\",\"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>
    
    Parametr Detaily
    msdyn_dataflowtemplateid Vygenerujte nové GUID k identifikaci vaší šablony, dodržujte formát GUID.
    msdyn_uniquename Zadejte jedinečný název záznamu šablony.
    msdyn_category Kategorie záznamu vaší šablony. Ponechte tuto hodnotu, jak je.
    msdyn_configuration Změňte toto na JSON, který představuje konfiguraci mapování vaší šablony na datové kategorie podporované v Sustainability Manager. Pokyny pro získání tohoto JSON jsou uvedeny za touto tabulkou.
    msdyn_description Zadejte popis pro vaši šablonu Power Query.
    msdyn_mashupdocument Tento parametr je textovou reprezentací všech transformací ve vašem konektoru. Pokyny pro získání tohoto textu jsou uvedeny za touto tabulkou.
    msdyn_templatename Zadejte název šablony.
    msdyn_templateversion Zadejte číslo verze šablony.

    Chcete-li extrahovat informace k použití v parametrech msdyn_configuration a msdyn_mashupdocument, zkopírujte a vložte následující text do svého prohlížeče. Nahraďte <your_organization> názvem prostředí vaší organizace.

    https://<your_organization>.crm10.dynamics.com/api/data/v9.0/msdyn_dataflowtemplates
    

    Zobrazí se JSON se všemi vašimi záznamy msdyn_dataflowtemplates, kde najdete šablonu, kterou chcete přesunout. Zkopírujte a vložte pole do svého souboru msdyn_dataflowtemplates.xml.

    Snímek obrazovky zobrazující hodnoty pro pole v souboru msdyn_dataflowtemplates.xml.

Další krok