Condividi tramite


Un pulsante sulla barra dei comandi non funziona correttamente in Power Apps

Si applica a: Power Apps
Numero KB originale: 4552163

Determinare perché un pulsante non funziona correttamente

Diversi fattori possono causare l'esito negativo di un'azione del pulsante. Queste includono personalizzazioni della barra multifunzione non valide in cui la definizione di comando associata del pulsante viene dichiarata in modo non corretto.

Avviso

Non rimuovere la Mscrm.HideOnModern regola di visualizzazione da un comando per forzare la visualizzazione di un pulsante nell'interfaccia unificata. I comandi con la Mscrm.HideOnModern regola di visualizzazione sono destinati all'interfaccia client Web legacy e non sono supportati nell'interfaccia unificata. Pertanto, potrebbero non funzionare correttamente.

Se un comando non è dichiarato correttamente, la selezione di un pulsante potrebbe non eseguire alcuna operazione o visualizzare un messaggio di errore.

Selezionare una delle opzioni seguenti che meglio corrispondano alla propria situazione per offrire la migliore risoluzione. La prima scheda è selezionata per impostazione predefinita.

Correzione di un pulsante che non esegue alcuna operazione quando è selezionata

Quando un pulsante è selezionato e non si verifica nulla, questo è in genere causato da una configurazione errata del comando associato al pulsante.

Di seguito sono riportati i tipici errori di configurazione dei comandi che vengono eseguiti durante la dichiarazione del JavaScriptFunction valore per l'azione. Questi errori possono causare un malfunzionamento di un pulsante e sembrano come se non fa nulla quando selezionato.

  • FunctionName non valido: il nome della funzione JavaScript non corrisponde a un nome di funzione valido nella risorsa Web JavaScript assegnata alla proprietà Library.
  • Libreria non valida: questo percorso non fa riferimento a una risorsa Web JavaScript valida o non è preceduto da $webresource:.
  • Parametri mancanti: la funzione JavaScript prevede parametri specifici e la definizione del comando non li dichiara.
  • Tipo di parametro o ordine non corretto: i parametri vengono dichiarati usando un tipo non corretto o sono in un ordine diverso da quello in cui sono elencati nella dichiarazione della funzione JavaScript.

Per altre informazioni sulla configurazione, vedere Definire le azioni della barra multifunzione.

Se queste configurazioni sono corrette, potrebbe verificarsi un errore di codice JavaScript. Se la funzione JavaScript personalizzata viene codificata in modo non corretto e non richiama il comportamento previsto, il pulsante non funzionerà come previsto. Se si rileva uno degli errori di configurazione elencati, correggere la definizione del comando per risolvere il problema. In caso contrario, potrebbe essere necessario eseguire il debug e correggere il codice della funzione JavaScript per fare in modo che il pulsante funzioni correttamente.

Identificare qual è il comando del pulsante e quale soluzione ha installato la definizione non valida.

  1. Abilitare Controllo comandi e selezionare il pulsante di comando da esaminare.

  2. Selezionare la scheda Proprietà comando per visualizzare i dettagli del comando per questo pulsante.

    Screenshot della scheda Proprietà comando di un pulsante.

  3. Nella scheda Proprietà comando vengono visualizzate le azioni e la configurazione corrispondente JavaScriptFunction . Selezionare il collegamento Visualizza livelli soluzione definizione comando sotto il nome del comando per visualizzare le soluzioni che hanno installato una definizione del comando.

    Screenshot del collegamento Visualizza livelli della soluzione di definizione dei comandi sotto un nome di comando.

  4. Nel riquadro Livelli soluzione viene visualizzato il livello di ogni definizione di componente della barra multifunzione installata da una particolare soluzione. Il livello nella parte superiore dell'elenco è la definizione corrente usata dall'applicazione. Gli altri livelli sono inattivi e non vengono usati dall'applicazione al momento. Se la soluzione principale viene disinstallata o viene installata una versione aggiornata che rimuove la definizione, il livello successivo diventerà la definizione attiva corrente usata dall'applicazione. Se è presente un livello di soluzione Attivo non gestito, sarà sempre la definizione usata dall'applicazione. Se non è elencata alcuna soluzione attiva, la soluzione elencata nella parte superiore dell'elenco sarà la definizione usata dall'applicazione. Anche le soluzioni gestite personalizzate non pubblicate da Microsoft avranno la precedenza sui livelli di soluzione pubblicati da Microsoft.

    Il contesto Entità indica l'oggetto su cui è attiva la personalizzazione della barra multifunzione. Se è elencato "Tutte le entità", il livello proviene dalle estensioni client della barra multifunzione dell'applicazione e non da specifiche dell'entità. In caso contrario, verrà elencato il nome logico dell'entità.

    Quando sono presenti due o più livelli, è possibile selezionare due righe e selezionare Confronta per visualizzare un confronto delle definizioni fornite da ogni soluzione.

    Se si seleziona Indietro , si torna alla finestra precedente di Controllo comandi.

    Se è presente un solo livello di soluzione, andare al passaggio 8. In caso contrario, selezionare i primi due livelli della soluzione. Se si ha un livello nella soluzione Attiva, ma non è elencato nella parte superiore, selezionare il livello Soluzione attiva e quindi la riga superiore. Selezionare quindi Confronta.

    Screenshot per selezionare i primi due livelli della soluzione e selezionare l'opzione Confronta.

  5. Viene visualizzato il confronto tra la definizione attiva corrente e la definizione inattiva precedente e verranno visualizzate le differenze, se presenti. L'esempio seguente mostra che la definizione active non gestita è stata personalizzata specificando il FunctionName valore in modo non corretto, rispetto all'altra definizione inattiva nel livello della soluzione di sistema pubblicata da Microsoft. Il FunctionName valore deve essere XrmCore.Commands.Delete.deletePrimaryRecord, ma la definizione personalizzata ha dichiarato FunctionName="deletePrimaryRecord". In questo caso, non si verificherà nulla quando viene selezionato il pulsante perché non è possibile trovare la funzione.

    Screenshot che mostra il confronto tra la definizione attiva corrente e la definizione inattiva precedente.

  6. L'approccio necessario per correggere la funzionalità di azione di un pulsante dipenderà dalle varie personalizzazioni nello scenario specifico. Considerando l'esempio, il comando è stato personalizzato specificando un valore non corretto FunctionName . È possibile modificare la versione personalizzata del comando e correggere il FunctionName valore. Poiché si tratta di un override personalizzato di una definizione pubblicata da Microsoft e non sono presenti altre modifiche intenzionali, è consigliabile eliminare questa versione personalizzata del comando per ripristinare la funzionalità predefinita.

Selezionare una delle opzioni di ripristino seguenti.

Opzione 1: Eliminare il comando con la dichiarazione JavaScriptFunction non corretta
Il comando si trova nella soluzione Active non gestita.

Per eliminare un comando nel livello soluzione non gestita attiva , si esportare una soluzione non gestita contenente l'entità o la barra multifunzione dell'applicazione e modificare il <RibbonDiffXml> nodo nel file customizations.xml e quindi importare una nuova versione di questa soluzione in cui questo comando è stato rimosso per eliminare il componente. Vedere Esportare, preparare la modifica e importare la barra multifunzione.

Il comando è specifico dell'entità

In base allo scenario di esempio, è stato determinato che l'entità è account, il comando che deve essere eliminato è Mscrm.DeletePrimaryRecorde viene dichiarato nel livello della soluzione non gestita attivo da un server di pubblicazione denominato DefaultPublisherCITTest.

  1. Aprire Impostazioni avanzate.

  2. Passare a Impostazioni>Soluzioni.

  3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nei livelli della soluzione di Controllo comandi che elencano il comando e il livello soluzione Attivo. (Nell'esempio questo è DefaultPublisherCITTest.

  4. Selezionare Entità>Aggiungi esistente.

  5. Selezionare l'entità su cui è definito il comando (nell'esempio questo è "account") e quindi selezionare OK.

  6. Assicurarsi di deselezionare le opzioni Includi metadati entità e Aggiungi tutti gli asset prima di selezionare Fine.

  7. Selezionare Salva.

  8. Selezionare Esporta soluzione ed esportare la soluzione non gestita.

  9. Estrai il file .zip.

  10. Aprire il file customizations.xml .

  11. Individuare l'elemento <Entity> figlio del nodo dell'entità che si vuole modificare e individuare il relativo nodo figlio <RibbonDiffXml> .

  12. Individuare il <CommandDefinition> nodo. Nell'esempio l'ID del <CommandDefinition> nodo è Mscrm.DeletePrimaryRecord. Di conseguenza, è necessario individuare il nodo seguente.

    Screenshot che mostra il percorso del nodo CommandDefinition.

  13. Modificare il <RibbonDiffXml> nodo per rimuovere il nodo specifico <CommandDefinition> con l'ID del comando da eliminare. Assicurarsi di non eliminare involontariamente altri <CommandDefinition> nodi che potrebbero essere presenti. In base all'esempio, si elimina il <CommandDefinition> nodo in cui l'ID è Mscrm.DeletePrimaryRecord.)

    Screenshot per eliminare il nodo CommandDefinition.

  14. Salvare il file customizations.xml .

  15. Ripristinare il file di customizations.xml modificato nel file di .zip della soluzione.

  16. Importare il file della soluzione.

  17. Seleziona Pubblica tutte le personalizzazioni.

Il comando si trova nella barra multifunzione dell'applicazione (si applica a "Tutte le entità")

Se il comando non è specifico dell'entità, ma è applicabile a "Tutte le entità" dichiarate nella barra multifunzione dell'applicazione, i passaggi saranno leggermente diversi, come indicato di seguito:

  1. Aprire Impostazioni avanzate.
  2. Passare a Impostazioni>Soluzioni.
  3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nei livelli della soluzione di Controllo comandi che elencano il comando e il livello soluzione Attivo.
  4. Selezionare Estensioni>client Aggiungi barre multifunzione dell'applicazione esistenti>.
  5. Selezionare Salva.
  6. Selezionare Esporta soluzione ed esportare la soluzione non gestita.
  7. Estrai il file .zip.
  8. Aprire il file customizations.xml .
  9. Individuare il nodo radice <RibbonDiffXml> .
  10. Individuare il <CommandDefinition> nodo.
  11. <RibbonDiffXml>Modificare e rimuovere il <CommandDefinition> nodo con l'ID del comando da eliminare. Assicurarsi di non eliminare involontariamente altri <CommandDefinition> nodi che potrebbero essere presenti.
  12. Salvare il file customizations.xml .
  13. Ripristinare il file customizations.xml modificato nella soluzione compressa .zip file.
  14. Importare il file della soluzione.
  15. Seleziona Pubblica tutte le personalizzazioni.
Il comando proviene da una soluzione gestita personalizzata creata dall'azienda.

Per eliminare un comando installato da una soluzione gestita personalizzata creata, seguire questa procedura:

  1. Nell'organizzazione di sviluppo separata con la versione di origine non gestita della soluzione personalizzata, completare i passaggi elencati in precedenza per Il comando si trova nell'opzione soluzione Attiva non gestita.
  2. Incrementare la versione della soluzione personalizzata.
  3. Esportare la soluzione come gestita.
  4. Nell'organizzazione interessata separata importare questa nuova versione della soluzione gestita personalizzata.
Il comando proviene da una soluzione gestita personalizzata che l'azienda non ha creato (da terze parti o ISV).

Per eliminare un comando installato da una soluzione gestita personalizzata creata da terze parti o ISV, è necessario contattare l'autore della soluzione per richiedere una nuova versione della soluzione con la definizione di comando specifica rimossa e quindi installare questa nuova soluzione nell'organizzazione interessata.

Opzione 2: Correggere la dichiarazione JavaScriptFunction del comando
Il comando si trova nella soluzione Active non gestita.

Per correggere un comando nel livello della soluzione non gestita attiva , si esporta una soluzione non gestita che contiene l'entità o la barra multifunzione Applicazione, modificare il <RibbonDiffXml> nodo nel file customizations.xml e quindi importare una nuova versione di questa soluzione che contiene la definizione di comando fissa. Vedere Esportare, preparare la modifica e importare la barra multifunzione.

Avviso

Non rimuovere Mscrm.HideOnModern la regola di visualizzazione da un comando per forzare la visualizzazione di un pulsante nell'interfaccia unificata. I comandi con la Mscrm.HideOnModern regola di visualizzazione sono destinati all'interfaccia client Web legacy e non sono supportati nell'interfaccia unificata e potrebbero non funzionare correttamente.

Il comando è specifico dell'entità

In base allo scenario di esempio, è stato determinato che l'entità è account, il comando che deve essere corretto è Mscrm.DeletePrimaryRecorde viene dichiarato nel livello della soluzione non gestita attivo da un server di pubblicazione denominato DefaultPublisherCITTest.

  1. Aprire Impostazioni avanzate.

  2. Passare a Impostazioni>Soluzioni.

  3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nell'elenco dei livelli della soluzione di Controllo comandi per il comando e il livello della soluzione Attiva. (Nell'esempio questo è DefaultPublisherCITTest.

  4. Selezionare Entità>Aggiungi esistente.

  5. Selezionare l'entità in cui è definito il comando (nell'esempio questo è account) e quindi selezionare OK.

  6. Assicurarsi di deselezionare le opzioni Includi metadati entità e Aggiungi tutti gli asset prima di selezionare Fine.

  7. Selezionare Salva.

  8. Selezionare Esporta soluzione ed esportare la soluzione non gestita.

  9. Estrai il file .zip.

  10. Aprire il file customizations.xml .

  11. Individuare l'elemento <Entity> figlio del nodo dell'entità che si vuole modificare e individuare il relativo nodo figlio <RibbonDiffXml> .

  12. Individuare il <CommandDefinition> nodo. Nell'esempio l'ID del <CommandDefinition> nodo è Mscrm.DeletePrimaryRecord. Di conseguenza, è necessario individuare il nodo seguente.

    Screenshot che mostra il percorso del nodo CommandDefinition di esempio.

  13. Modificare il <RibbonDiffXml> nodo e apportare le modifiche necessarie al <CommandDefinition> nodo che consentirà al comando di funzionare correttamente nelle circostanze corrette per correggere il comando. Per altre informazioni su come dichiarare i comandi, vedere Definire i comandi della barra multifunzione e Definire le azioni della barra multifunzione. In base all'esempio, è possibile modificare il <CommandDefinition> nodo JavaScriptFunction impostando il FunctionName valore su XrmCore.Commands.Delete.deletePrimaryRecord.

    Screenshot per modificare javaScriptFunction del nodo CommandDefinition impostando il valore FunctionName.

  14. Ripristinare il file di customizations.xml modificato nel file di .zip della soluzione.

  15. Importare il file della soluzione.

  16. Seleziona Pubblica tutte le personalizzazioni.

Il comando si trova nella barra multifunzione dell'applicazione (si applica a "Tutte le entità")

Se il comando non è specifico dell'entità, ma è applicabile a "Tutte le entità" dichiarate nella barra multifunzione dell'applicazione, i passaggi saranno leggermente diversi, come indicato di seguito:

  1. Aprire Impostazioni avanzate.
  2. Passare a Impostazioni>Soluzioni.
  3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nei livelli della soluzione di Controllo comandi che elencano il comando e il livello soluzione Attivo.
  4. Selezionare Estensioni>client Aggiungi barre multifunzione dell'applicazione esistenti>.
  5. Selezionare Salva.
  6. Selezionare Esporta soluzione ed esportare la soluzione non gestita.
  7. Estrai il file .zip.
  8. Aprire il file customizations.xml .
  9. Individuare il nodo radice <RibbonDiffXml> .
  10. Individuare .<CommandDefinition>
  11. Modificare il <RibbonDiffXml> nodo per apportare le modifiche necessarie al <CommandDefinition> nodo che consentirà al comando di funzionare correttamente nelle circostanze corrette per correggere il comando. Per altre informazioni su come dichiarare i comandi, vedere Definire i comandi della barra multifunzione e Definire le azioni della barra multifunzione.
  12. Salvare il file customizations.xml .
  13. Ripristinare il file customizations.xml modificato nella soluzione compressa .zip file.
  14. Importare il file della soluzione.
  15. Seleziona Pubblica tutte le personalizzazioni.
Il comando proviene da una soluzione gestita personalizzata creata.

Per correggere un comando installato da una soluzione gestita personalizzata creata, seguire questa procedura:

  1. Nell'organizzazione di sviluppo separata con la versione di origine non gestita della soluzione personalizzata, completare i passaggi elencati in precedenza per Il comando si trova nell'opzione soluzione Attiva non gestita.
  2. Incrementare la versione della soluzione personalizzata.
  3. Esportare la soluzione come gestita.
  4. Nell'organizzazione interessata separata importare questa nuova versione della soluzione gestita personalizzata.
Il comando proviene da una soluzione gestita personalizzata che non è stata creata o che l'organizzazione non è proprietaria (da terze parti/ISV).

Per correggere un comando installato da una soluzione gestita personalizzata creata da terze parti o ISV, è necessario contattare l'autore della soluzione per richiedere una nuova versione della soluzione contenente la definizione del comando fissa e installare questa nuova soluzione nell'organizzazione interessata.

Viene visualizzato il messaggio di errore dello script: "Libreria di azioni JavaScript non valida"](#tab/error)

Correzione di un pulsante che visualizza un errore quando selezionato

Se è selezionato un pulsante della barra dei comandi della barra multifunzione e si verifica un errore, l'errore è in genere causato da personalizzazioni non corrette dei comandi della barra multifunzione.

Correzione dell'errore di script "Libreria di azioni JavaScript non valida"

È possibile che venga visualizzato un messaggio di errore dello script simile al seguente:

Libreria di azioni JavaScript non valida: [nome script] non è una risorsa Web e non è supportata.

Screenshot che mostra un esempio del messaggio di errore dello script.

Ciò è causato da una personalizzazione non valida del comando della barra multifunzione che ha dichiarato una libreria non corretta nel comando .JavaScriptFunction

  1. Abilitare Controllo comandi e selezionare il pulsante di comando da esaminare.

  2. L'esempio seguente mostra il pulsante Nuovo nella pagina del modulo dell'entità account è visibile ed è rappresentato da un elemento con etichetta New.

    Screenshot che mostra il pulsante Nuovo nella pagina del modulo dell'entità account.

  3. Selezionare la scheda Proprietà comando per visualizzare i dettagli del comando per questo pulsante. Verranno visualizzate le azioni e la dichiarazione JavaScriptFunction e tutte le regole abilitano o visualizzano le regole insieme al risultato (True, False, Ignorato) di ogni valutazione della regola.

    Espandere JavaScriptFunction selezionando l'icona "freccia di espansione" per visualizzare i dettagli della dichiarazione di funzione. La proprietà Library deve essere una risorsa Web JavaScript e avere il prefisso $webresource:. L'esempio seguente mostra che la proprietà Library è _/_static/common/scripts/RibbonActions.js. Non si tratta di un percorso di una risorsa Web JavaScript valida. Esaminare quindi i livelli della soluzione del comando per provare a identificare il valore corretto per risolvere il problema.

    Screenshot che mostra un esempio della proprietà Library.

  4. Selezionare il collegamento Visualizza livelli soluzione definizione comando sotto il nome del comando per visualizzare le soluzioni che hanno installato una definizione del comando.

    Screenshot del collegamento Visualizza livelli soluzione definizione comando sotto il nome del comando.

  5. Il riquadro Livelli soluzione visualizzerà la sovrapposizione di ogni definizione di componente della barra multifunzione installata da una particolare soluzione. Il livello nella parte superiore dell'elenco è la definizione corrente usata dall'applicazione, gli altri livelli sono inattivi e non vengono usati dall'applicazione al momento. Se la soluzione principale viene disinstallata o viene installata una versione aggiornata che rimuove la definizione, il livello successivo diventerà la definizione attiva corrente usata dall'applicazione. Quando è presente un livello di soluzione Attivo non gestito, sarà sempre la definizione usata dall'applicazione. Se non è elencata alcuna soluzione attiva, la soluzione elencata nella parte superiore dell'elenco sarà la definizione usata dall'applicazione. Anche le soluzioni gestite personalizzate non pubblicate da Microsoft avranno la precedenza sui livelli di soluzione pubblicati da Microsoft.

    Il contesto Entità indica che l'oggetto su cui si trova la personalizzazione della barra multifunzione, se è elencato "Tutte le entità", il livello proviene dalle estensioni client della barra multifunzione dell'applicazione e non dall'entità specifica, altrimenti verrà elencato il nome logico dell'entità.

    Quando sono presenti due o più livelli, è possibile selezionare due righe e selezionare Confronta per visualizzare un confronto delle definizioni fornite da ogni soluzione.

    Se si seleziona Indietro , si tornerà alla finestra precedente di Controllo comandi.

    L'immagine seguente mostra i livelli della soluzione per il comando nell'esempio e indica che sono presenti due livelli di soluzione e uno è una personalizzazione non gestita indicata dalla soluzione denominata Active e l'altra proviene dalla soluzione System pubblicata da Microsoft. Lo scenario effettivo potrebbe essere diverso, potrebbe non essere presente un livello soluzione attiva, potrebbe essere disponibile una soluzione gestita e il nome della soluzione verrà elencato qui.

    Selezionare le prime due righe e selezionare Confronta per visualizzare un confronto delle definizioni fornite da ogni soluzione. Se si ha un solo livello di soluzione, ignorare questo passaggio.

    Screenshot per selezionare le prime due righe e selezionare l'opzione Confronta per visualizzare un confronto delle definizioni.

  6. Il confronto tra le definizioni dei comandi mostrerà eventuali differenze tra i due livelli. L'esempio seguente mostra chiaramente che il valore della libreria è diverso. La voce non gestita della soluzione Attiva è impostata su un percorso non corretto _/_static/common/scripts/RibbonActions.js (il percorso specifico potrebbe essere leggermente diverso) e la definizione predefinita di Microsoft ha impostato la libreria su $webresoure:Main_system_library.js. Si tratta di un percorso supportato per questo particolare comando (questo valore potrebbe essere diverso, a seconda del comando specifico). L'unico percorso supportato è quello che inizia con $webresource: e termina con il nome di una risorsa Web JavaScript valida.

    Screenshot che mostra un esempio in cui il valore della libreria è diverso.

  7. Dopo aver esaminato i livelli della soluzione e determinato la soluzione che ha installato la personalizzazione, è necessario correggere la definizione nella soluzione appropriata.

Selezionare una delle opzioni seguenti che corrispondono allo scenario specifico:

Il comando si trova nella soluzione Active non gestita.

L'approccio per correggere il comando varia a seconda che la definizione sia l'unica o se sono presenti altre definizioni inattive e se le modifiche sono intenzionali.

Selezionare l'opzione che riflette lo scenario:

  • Il comando non ha modifiche intenzionali e si vuole rimuovere questo livello personalizzato.

    Per eliminare un comando nel livello soluzione non gestita attiva , si esporta una soluzione non gestita che contiene l'entità o la barra multifunzione dell'applicazione, modificare il <RibbonDiffXml> nodo nel file customizations.xml e quindi importare una nuova versione di questa soluzione in cui questo comando è stato rimosso per eliminare il componente. Vedere Esportare, preparare la modifica e importare la barra multifunzione.

    Il comando è specifico dell'entità

    In base allo scenario di esempio, è stato determinato che l'entità è account, il comando che deve essere eliminato è Mscrm.NewRecordFromForme viene dichiarato nel livello della soluzione non gestita attivo da un server di pubblicazione denominato DefaultPublisherCITTest.

    1. Aprire Impostazioni avanzate.

    2. Passare a Impostazioni>Soluzioni.

    3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nei livelli della soluzione di Controllo comandi che elencano il comando e il livello soluzione Attivo. (Nell'esempio questo è DefaultPublisherCITTest.

    4. Selezionare Entità>Aggiungi esistente.

    5. Selezionare l'entità su cui è definito il comando. Nell'esempio questo è account e quindi selezionare OK.

    6. Assicurarsi di deselezionare le opzioni Includi metadati entità e Aggiungi tutti gli asset prima di selezionare Fine.

    7. Selezionare Salva.

    8. Selezionare Esporta soluzione ed esportare la soluzione non gestita.

    9. Estrai il file .zip.

    10. Aprire il file customizations.xml .

    11. Individuare l'elemento <Entity> figlio del nodo dell'entità che si vuole modificare e individuare il relativo nodo figlio <RibbonDiffXml> .

    12. Individuare il <CommandDefinition> nodo (nell'esempio l'ID di <CommandDefinition> è Mscrm.NewRecordFromForm. Di conseguenza, è necessario individuare il nodo seguente.

      Screenshot della posizione del nodo CommandDefinition.

    13. Modificare il <RibbonDiffXml> nodo per rimuovere il nodo specifico <CommandDefinition> . Assicurarsi di non eliminare involontariamente altri <CommandDefinition> nodi che potrebbero essere presenti. In base all'esempio, si elimina il <CommandDefinition> nodo in cui l'ID è Mscrm.NewRecordFromForm.)

      Screenshot che mostra un esempio per eliminare il nodo CommandDefinition.

    14. Salvare il file customizations.xml .

    15. Ripristinare il file di customizations.xml modificato nel file di .zip della soluzione.

    16. Importare il file della soluzione.

    17. Seleziona Pubblica tutte le personalizzazioni.

    Il comando si trova nella barra multifunzione dell'applicazione (si applica a "Tutte le entità")

    Se il comando non è specifico dell'entità, ma è applicabile a "Tutte le entità" dichiarate nella barra multifunzione dell'applicazione, i passaggi saranno leggermente diversi, come indicato di seguito:

    1. Aprire Impostazioni avanzate.
    2. Passare a Impostazioni>Soluzioni.
    3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nei livelli della soluzione di Controllo comandi che elencano il comando e il livello soluzione Attivo.
    4. Selezionare Estensioni>client Aggiungi barre multifunzione dell'applicazione esistenti>.
    5. Selezionare Salva.
    6. Selezionare Esporta soluzione ed esportare la soluzione non gestita.
    7. Estrai il file .zip.
    8. Aprire il file customizations.xml .
    9. Individuare il nodo radice <RibbonDiffXml> .
    10. Individuare il <CommandDefinition> nodo.
    11. Modificare <RibbonDiffXml> per rimuovere il <CommandDefinition> nodo con l'ID corrispondente del comando da eliminare. Assicurarsi di non eliminare involontariamente altri <CommandDefinition> nodi che potrebbero essere presenti.
    12. Salvare il file customizations.xml .
    13. Ripristinare il file customizations.xml modificato nella soluzione compressa .zip file.
    14. Importare il file della soluzione.
    15. Seleziona Pubblica tutte le personalizzazioni.
  • Il comando include modifiche aggiuntive che si desidera mantenere e si vuole correggere questo livello di soluzione.

    Per correggere un comando nel livello della soluzione non gestita attiva , si esportare una soluzione non gestita contenente l'entità o la barra multifunzione dell'applicazione e modificare il <RibbonDiffXml> nodo nel file customizations.xml e quindi importare una nuova versione di questa soluzione contenente la definizione del comando fissa. Vedere Esportare, preparare la modifica e importare la barra multifunzione.

    Avviso

    Non rimuovere Mscrm.HideOnModern la regola di visualizzazione da un comando per forzare la visualizzazione di un pulsante nell'interfaccia unificata. I comandi con la Mscrm.HideOnModern regola di visualizzazione sono destinati all'interfaccia client Web legacy e non sono supportati nell'interfaccia unificata e potrebbero non funzionare correttamente.

    Il comando è specifico dell'entità

    In base allo scenario di esempio, è stato determinato che l'entità è account, il comando che deve essere corretto è Mscrm.NewRecordFromForme viene dichiarato nel livello della soluzione non gestita attivo da un server di pubblicazione denominato DefaultPublisherCITTest.

    1. Aprire Impostazioni avanzate.

    2. Passare a Impostazioni>Soluzioni.

    3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nell'elenco dei livelli della soluzione di Controllo comandi per il comando e il livello della soluzione Attiva. (Nell'esempio questo è DefaultPublisherCITTest.

    4. Selezionare Entità>Aggiungi esistente.

    5. Selezionare l'entità in cui è definito il comando (nell'esempio questo è account) e quindi selezionare OK.

    6. Assicurarsi di deselezionare le opzioni Includi metadati entità e Aggiungi tutti gli asset prima di selezionare Fine.

    7. Selezionare Salva.

    8. Selezionare Esporta soluzione ed esportare la soluzione non gestita.

    9. Estrai il file .zip.

    10. Aprire il file customizations.xml

    11. Individuare il <Entity> nodo figlio del nodo di entità che si vuole modificare e individuare il nodo figlio <RibbonDiffXml> .

    12. Individuare il <CommandDefinition> nodo. Nell'esempio l'ID del <CommandDefinition> nodo è Mscrm.NewRecordFromForm. Di conseguenza, è necessario individuare il nodo seguente.

      Screenshot che mostra il percorso del nodo CommandDefinition il cui ID è Mscrm.NewRecordFromForm.

    13. Modificare <RibbonDiffXml> per apportare le modifiche necessarie al <CommandDefinition> nodo che consentirà al comando di funzionare correttamente nelle circostanze corrette per correggere il comando. Per altre informazioni su come dichiarare i comandi, vedere Definire i comandi della barra multifunzione e Definire le azioni della barra multifunzione. In base all'esempio, è necessario modificare il <CommandDefinition> nodo impostando Library="$webresoure:Main_system_library.js"e quindi assicurarsi che il FunctionName valore corrisponda. Nell'esempio, sarebbe FunctionName="XrmCore.Commands.Open.openNewRecord".)

      Screenshot per modificare il nodo CommandDefinition e quindi assicurarsi che il valore FunctionName corrisponda.

    14. Salvare il file customizations.xml .

    15. Ripristinare il file di customizations.xml modificato nel file di .zip della soluzione.

    16. Importare il file della soluzione.

    17. Seleziona Pubblica tutte le personalizzazioni.

    Il comando si trova nella barra multifunzione dell'applicazione (si applica a "Tutte le entità")

    Se il comando non è specifico dell'entità, ma è applicabile a "Tutte le entità" dichiarate nella barra multifunzione dell'applicazione, i passaggi saranno leggermente diversi come indicato di seguito:

    1. Aprire Impostazioni avanzate.
    2. Passare a Impostazioni>Soluzioni.
    3. Selezionare Nuovo per creare una nuova soluzione e impostare Publisher sul valore visualizzato nei livelli della soluzione di Controllo comandi che elencano il comando e il livello soluzione Attivo.
    4. Selezionare Estensioni>client Aggiungi barre multifunzione dell'applicazione esistenti>.
    5. Selezionare Salva.
    6. Selezionare Esporta soluzione ed esportare la soluzione non gestita.
    7. Estrai il file .zip.
    8. Aprire il file customizations.xml .
    9. Individuare il nodo radice <RibbonDiffXml> .
    10. Individuare il <CommandDefinition> nodo.
    11. Modificare il <RibbonDiffXml> nodo per apportare le modifiche necessarie al <CommandDefinition> nodo che consentirà al comando di funzionare correttamente nelle circostanze corrette per correggere il comando. Per altre informazioni su come dichiarare i comandi, vedere Definire i comandi della barra multifunzione e Definire le azioni della barra multifunzione.
    12. Salvare il file customizations.xml .
    13. Ripristinare il file customizations.xml modificato nella soluzione compressa .zip file.
    14. Importare il file della soluzione.
    15. Seleziona Pubblica tutte le personalizzazioni.
Il comando proviene da una soluzione gestita personalizzata creata.

Per correggere un comando installato da una soluzione gestita personalizzata creata, seguire questa procedura:

  1. Nell'organizzazione di sviluppo separata con la versione di origine non gestita della soluzione personalizzata, completare i passaggi elencati in precedenza per Il comando si trova nell'opzione soluzione Attiva non gestita.
  2. Incrementare la versione della soluzione personalizzata.
  3. Esportare la soluzione come gestita.
  4. Nell'organizzazione interessata separata importare questa nuova versione della soluzione gestita personalizzata.
Il comando proviene da una soluzione gestita personalizzata che non è stata creata o che l'organizzazione non è proprietaria (da terze parti o ISV).

Per correggere un comando installato da una soluzione gestita personalizzata creata da terze parti o ISV, è necessario contattare l'autore della soluzione per richiedere una nuova versione della soluzione contenente la definizione del comando fissa e quindi installare questa nuova soluzione nell'organizzazione interessata.

Il comando si trova in una soluzione gestita pubblicata da Microsoft.

Per correggere un comando installato da una soluzione gestita pubblicata da Microsoft, potrebbe essere necessario installare una versione più recente della soluzione. Questa operazione viene in genere eseguita durante un aggiornamento della versione. È possibile che sia stato identificato un bug che deve ancora essere corretto. Per assistenza, contattare il supporto tecnico.