Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Informazioni su come scaricare l'esempio e le risorse disponibili per creare azioni personalizzate o informazioni sull'estensione della scheda di azione dell'assistente.
Creare una scheda azione personalizzata
Il processo seguente illustra come creare una scheda personalizzata:
- Passaggio 1: Scarica l'esempio di soluzione per estendere il tipo di scheda assistente.
- Passaggio 2: Compilare la soluzione (ExtPkgDeployer.sln).
- Passaggio 3: Importare il pacchetto usando lo strumento di distribuzione del pacchetto.
- Passaggio 4: Verificare il nuovo tipo di scheda.
- Passaggio 5: Creare una scheda azione per il nuovo tipo di scheda usando l'API Web.
- Passaggio 6: Verificare la nuova scheda personalizzata.
Prerequisiti
Rivedi i prerequisiti prima di creare le schede personalizzate nell'organizzazione:
Devi disporre dello strumento Package Deployer (packagedeployer.exe) per la distribuzione di pacchetti. Per scaricare il pacchetto deployer, vedere Scaricare gli strumenti da NuGet.
Per utilizzare questa funzionalità, devi acquistare una licenza Dynamics 365 Remote Assist Insights o avviare una versione di valutazione per utilizzare le funzionalità di Sales Insights.
Passaggio 1: scaricare la soluzione di esempio per estendere il tipo di scheda Assistente
Scaricare la soluzione scheda personalizzata di esempio.
Gli esempi mostrano come creare una scheda personalizzata in Assistente a livello di programmazione.
Vai al percorso ExtPkgDeployer\PkgFolder\extensibility_example_sol\WebResources. Nella cartella WebResources, sono visibili tre file per cui è necessario creare una scheda personalizzata.
Definizione dello schema (new_cardtype_schemaxml9dd7e039-33a1-4778-9972-66536dc5e829)
Comando (new_commands8db43275-0291-401d-923a-90a6c373cc18)
Icona (new_msicon6aa7c568-4830-4da6-89f9-18a8fd9c2285)
Definizione dello schema (new_cardtype_schemaxml9dd7e039-33a1-4778-9972-66536dc5e829)
Definizione dello schema per il nuovo tipo di scheda.
Nota
Verifica che l'ID tipo di scheda sia maggiore di 10000.
<?xml version="1.0" encoding="utf-8" ?>
<entity name="cardtype" displayname="Action Card Type">
<cardname>Extensibility Example</cardname>
<cardtypeid>aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb</cardtypeid>
<cardtype>11000</cardtype>
<cardtypeicon>webresources/new_msicon</cardtypeicon>
<softtitle>Extensibility Example</softtitle>
<summarytext>RA Card Extensibility Example</summarytext>
<actions>{"WebClient":{"Actions":{"Open":"Mscrm.HomepageGrid.actioncard.CardCommand"},"Default":{"Open":"Mscrm.HomepageGrid.actioncard.CardCommand"}}, "Mobile":{"Actions":{"Open":"Mscrm.HomepageGrid.actioncard.CardCommand"}}}</actions>
</entity>
Comando (new_commands8db43275-0291-401d-923a-90a6c373cc18)
Il file contiene il comando per la scheda azione.
function CardCommand() {
window.open("https://aka.ms/salesai-raext");
}
Quando si esegue il comando , l'oggetto RibbonDiff definito nella customization.xml dell'entità ActionCard richiama il comando .
<ImportExportXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Entities>
<Entity>
<Name LocalizedName="ActionCard" OriginalName="ActionCard">ActionCard</Name>
<ObjectTypeCode>9962</ObjectTypeCode>
<RibbonDiffXml>
<CustomActions>
<CustomAction Id="Mscrm.HomepageGrid.actioncard.CardCommand.CustomAction" Location="Mscrm.HomepageGrid.actioncard.MainTab.Actions.Controls._children" Sequence="12">
<CommandUIDefinition>
<Button Id="Mscrm.HomepageGrid.actioncard.CardCommand" ToolTipTitle="Open" ToolTipDescription="Open" Command="Mscrm.HomepageGrid.actioncard.CardCommand" Sequence="12" LabelText="Open" Alt="Open" Image16by16="/WebResources/new_msicon" Image32by32="/WebResources/new_msicon" TemplateAlias="o1" ModernImage="new_msicon" />
</CommandUIDefinition>
</CustomAction>
<CustomAction Id="Mscrm.SubGrid.actioncard.CardCommand.CustomAction" Location="Mscrm.SubGrid.actioncard.MainTab.Actions.Controls._children" Sequence="57">
<CommandUIDefinition>
<Button Id="Mscrm.HomepageGrid.actioncard.CardCommand" ToolTipTitle="Open" ToolTipDescription="Open" Command="Mscrm.HomepageGrid.actioncard.CardCommand" Sequence="29" LabelText="Open" Alt="Open" Image16by16="/WebResources/new_msicon" Image32by32="/WebResources/new_msicon" TemplateAlias="o1" ModernImage="new_msicon" />
</CommandUIDefinition>
</CustomAction>
</CustomActions>
<CommandDefinitions>
<CommandDefinition Id="Mscrm.HomepageGrid.actioncard.CardCommand">
<EnableRules >
<EnableRule Id="Mscrm.SelectionCountExactlyOne" />
<EnableRule Id="Mscrm.NotOffline" />
</EnableRules>
<DisplayRules>
</DisplayRules>
<Actions>
<JavaScriptFunction FunctionName="CardCommand" Library="$webresource:new_commands">
<CrmParameter Value="SelectedControl" />
<CrmParameter Value="SelectedControlSelectedItemReferences" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules>
</DisplayRules>
<EnableRules/>
</RuleDefinitions>
</RibbonDiffXml>
</Entity>
</Entities>
<Roles></Roles>
<Workflows></Workflows>
<FieldSecurityProfiles></FieldSecurityProfiles>
<Templates />
<EntityMaps />
<EntityRelationships />
<OrganizationSettings />
<optionsets />
<WebResources>
<WebResource>
<WebResourceId>{6aa7c568-4830-4da6-89f9-18a8fd9c2285}</WebResourceId>
<Name>new_msicon</Name>
<DisplayName>new_msicon</DisplayName>
<WebResourceType>5</WebResourceType>
<IntroducedVersion>1.0</IntroducedVersion>
<IsEnabledForMobileClient>0</IsEnabledForMobileClient>
<IsAvailableForMobileOffline>0</IsAvailableForMobileOffline>
<DependencyXml><Dependencies><Dependency componentType="WebResource"/></Dependencies></DependencyXml>
<IsCustomizable>1</IsCustomizable>
<CanBeDeleted>1</CanBeDeleted>
<IsHidden>0</IsHidden>
<FileName>/WebResources/new_msicon6aa7c568-4830-4da6-89f9-18a8fd9c2285</FileName>
</WebResource>
<WebResource>
<WebResourceId>{8db43275-0291-401d-923a-90a6c373cc18}</WebResourceId>
<Name>new_commands</Name>
<DisplayName>new_commands</DisplayName>
<WebResourceType>3</WebResourceType>
<IntroducedVersion>1.0</IntroducedVersion>
<IsEnabledForMobileClient>0</IsEnabledForMobileClient>
<IsAvailableForMobileOffline>0</IsAvailableForMobileOffline>
<DependencyXml><Dependencies><Dependency componentType="WebResource"/></Dependencies></DependencyXml>
<IsCustomizable>1</IsCustomizable>
<CanBeDeleted>1</CanBeDeleted>
<IsHidden>0</IsHidden>
<FileName>/WebResources/new_commands8db43275-0291-401d-923a-90a6c373cc18</FileName>
</WebResource>
<WebResource>
<WebResourceId>{9dd7e039-33a1-4778-9972-66536dc5e829}</WebResourceId>
<Name>new_cardtype_schema</Name>
<DisplayName>cardtype_schema</DisplayName>
<WebResourceType>4</WebResourceType>
<IntroducedVersion>1.0</IntroducedVersion>
<IsEnabledForMobileClient>0</IsEnabledForMobileClient>
<IsAvailableForMobileOffline>0</IsAvailableForMobileOffline>
<DependencyXml><Dependencies><Dependency componentType="WebResource"/></Dependencies></DependencyXml>
<IsCustomizable>1</IsCustomizable>
<CanBeDeleted>1</CanBeDeleted>
<IsHidden>0</IsHidden>
<FileName>/WebResources/new_cardtype_schemaxml9dd7e039-33a1-4778-9972-66536dc5e829</FileName>
</WebResource>
</WebResources>
<Languages>
<Language>1033</Language>
</Languages>
</ImportExportXml>
Icona (new_msicon6aa7c568-4830-4da6-89f9-18a8fd9c2285)
Il file contiene l'icona usata dalla scheda.
Passaggio 2: creare la soluzione (ExtPkgDeployer.sln)
Aprire il prompt dei comandi (cmd).
Vai alla cartella principale.
C:\<directory>\RACards Extensibility Example\RACards Extensibility Example\ExtPkgDeployer\PkgFolderEseguire il comando per compilare la soluzione.
msbuild ExtPkgDeployer.sln
La compilazione ha esito positivo. Vedi che sotto il <folder>\ExtPkgDeployer\bin\Debug, il PkgFolder e il ExtPkgDeployer.dll vengono generati.
Passaggio 3: importare il pacchetto mediante lo strumento Package Deployer
Copia
PkgFoldereExtPkgDeployer.dlldalla cartella<folder>\ExtPkgDeployer\bin\Debuge incolla nella destinazione<PackageDeployerToolLocation>\tools.Esegui lo strumento facendo doppio clic su
PackageDeployer.exedalla cartella in cui hai salvato lo strumento Package Deployer.Nella schermata introduttiva dello strumento Package Deployer scegli Continua.
Nella schermata di autenticazione immetti i dettagli di autenticazione per connetterti all'istanza di Dynamics 365 Remote Assist in cui desideri distribuire il pacchetto. Se disponi di più organizzazioni e desideri selezionare l'organizzazione in cui si vuoi distribuire il pacchetto Unified Service Desk, seleziona la casella di controllo Visualizza l'elenco delle organizzazioni disponibili. Scegliere Accedi.
Nella schermata successiva vengono visualizzate informazioni dettagliate sul pacchetto selezionato e sulle funzionalità che verranno installate nell'istanza di Dynamics 365 Remote Assist. Esamina le informazioni e scegli Avanti.
Nella schermata Inizio installazione vengono visualizzati il pacchetto selezionato per la distribuzione e il nome dell'organizzazione Dynamics 365 Remote Assist nella quale sarà distribuito il pacchetto. Esamina le informazioni e scegli Avanti.
Nella schermata successiva viene visualizzato lo stato di convalida del pacchetto selezionato per la distribuzione. Una volta completata la convalida con esito positivo, scegliere Avanti.
Nella pagina successiva viene visualizzato lo stato di distribuzione del pacchetto. Fare clic su Avanti.
Nella schermata successiva vengono visualizzati il nome e le informazioni sul pacchetto appena distribuito. Esamina le informazioni e scegli Fine per uscire dallo strumento Package Deployer.
Dopo la configurazione del pacchetto, un nuovo tipo di scheda verrà creato con un ID - 00aa00aa-bb11-cc22-dd33-44ee44ee44ee, definito nello schema (new_cardtype_schemaxml9dd7e039-33a1-4778-9972-66536dc5e829).
Passaggio 4: verificare il nuovo tipo scheda
Verifica il tipo di scheda con un ID ''00aa00aa-bb11-cc22-dd33-44ee44ee44ee". Invia una richiesta di metodo GET.
Richiesta
GET [Organization URI]/api/data/v9.0/cardtype(00aa00aa-bb11-cc22-dd33-44ee44ee44ee) HTTP/1.1
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
Risposta
{
"@odata.context":"https://[Organization URI]/api/data/v9.0/$metadata#cardtype/$entity",
"@odata.etag":"W/"662120\"",
"boolcardoption":false,
"clientavailability":3,
"ispreviewcard":true,
"cardname":"ExtExample",
"cardtypeid":"2183dfc0-3c1c-45b7-a331-943880c25c6",
"cardtypeicon":"webresources/new_msicon",
"intcardoption":0,
"isenabled":true,
"hassnoozedismiss":true,
"softtitle":"Extensibility Example",
"cardtype":11000,
"isliveonly":false,
"_modifiedby_value":"50673658-c5d6-e811-a98c-000d3a1df431",
"versionnumber":662120,
"isbasecard":false,
"actions":"{\"WebClient\":{\"Actions\":{\"Open\":\"Mscrm.HomepageGrid.actioncard.CardCommand\"},\"Default\":{\"Open\":\"Mscrm.HomepageGrid.actioncard.CardCommand\"}}, \"Mobile\":{\"Actions\":{\"Open\":\"Mscrm.HomepageGrid.actioncard.CardCommand\"}}}",
"publishername":"adminsocial",
"modifiedon":"2018-10-26T12:26:14Z",
"summarytext":"RA Card Extensibility Example",
"_transactioncurrencyid_value":null,
"importsequencenumber":null,
"createdon":null,
"overriddencreatedon":null,
"_modifiedonbehalfby_value":null,
"_createdonbehalfby_value":null,
"_createdby_value":null,
"scheduletime":null,
"exchangerate":null,
"grouptype":null,
"stringcardoption":null,
"lastsynctime":null
}
Passaggio 5: creare la scheda azione per il nuovo tipo di scheda mediante l'API Web.
Creare una scheda azione per il nuovo tipo di scheda creato tramite Package Deployer. Invia una richiesta di metodo POST.
Richiesta
POST http://[Organization URI]/api/data/v9.0/actioncards HTTP/1.1
Content-Type: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
{
"cardtypeid@odata.bind": "/cardtype(2183dfc0-3c1c-45
b7-a331-1943880c25c6)",
"startdate": "2018-10-20T01:01:01Z",
"expirydate": "2018-10-25T01:01:01Z",
"visibility": true,
"priority": 2000,
"description": "This card should be visible between
start and end date mentioned above",
"title" : "Extensibility Example",
"cardtype": 11000,
"ownerid@odata.bind" : "/systemusers({USER_ID})"
}
Risposta
HTTP/1.1 204 No Content
OData-Version: 4.0
OData-EntityId: http://[Organization URI]/api/data/v9.0/actioncard(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)
Nota
Apri la console del browser ed esegui il comando, sessionStorage.clear(); per eliminare la cache della sessione.
Passaggio 6: verificare la nuova scheda personalizzata
Puoi verificare le schede personalizzate create nell'organizzazione come utente finale e come amministratore.
Come utente finale
Accedi a Dynamics 365 Remote Assist.
Nella sezione Assistente, puoi visualizzare la scheda azione che hai creato.
Come amministratore
Accedi a Dynamics 365 Remote Assist e seleziona l'app Hub delle vendite.
Vai a Modifica area e seleziona Impostazioni di Sales Insights.
Nella mappa del sito seleziona Schede di informazioni dettagliate in Assistente per andare alla pagina Gestisci schede di informazioni dettagliate.
Nella scheda Gestisci schede di informazioni dettagliate, viene visualizzata un'opzione per abilitare le schede azioni personalizzate create nell'organizzazione.
Per ulteriori informazioni su come abilitare le schede, vedi Attivare o disattivare le schede di informazioni dettagliate.
Non riesci a trovare la funzionalità nella tua app?
Esistono alcune possibilità:
- Non disponi della licenza necessaria per utilizzare questa funzionalità. Consulta la tabella di confronto e la guida alle licenze per vedere quali funzionalità sono disponibili con la tua licenza.
- Non disponi del ruolo di sicurezza necessario per utilizzare questa funzionalità.
- Per configurare o impostare una funzionalità, devi disporre dei ruoli Amministrazione e Personalizzazione
- Per utilizzare le funzionalità relative alle vendite, devi disporre dei ruoli di vendita principali
- Alcune attività richiedono specifici ruoli funzionali.
- L'amministratore non ha attivato la funzionalità.
- L'organizzazione utilizza un'app personalizzata. Rivolgiti all'amministratore per verificare i passaggi esatti. I passaggi descritti in questo articolo sono specifici per le app Sales Hub e Sales Professional fornite di serie.