Utilizzare proprietà gestite
È possibile stabilire quali dei componenti di soluzione gestita sono personalizzabili tramite le proprietà gestite. Per impostazione predefinita, tutti i componenti di soluzione personalizzata sono personalizzabili. In tutti i componenti di soluzione è presente una proprietà Personalizzabile (IsCustomizable
). Fintanto che il valore di questa proprietà è impostato su true, ulteriori proprietà specifiche del tipo di componente di soluzione possono essere specificate. Se si imposta la proprietà IsCustomizable.Value
su false, una volta installata la soluzione come una soluzione gestita, il componente della soluzione non sarà personalizzabile.
Le proprietà gestite garantiscono che solo una soluzione dello stesso editore sarà in grado di modificare il componente. Le proprietà gestite influiranno solo sui componenti gestiti e non si applicano negli ambienti di sviluppo in cui il componente non è ancora gestito. L'uso della proprietà gestita IsCustomized
ha lo scopo di garantire che nessun altro livello della soluzione da nessun altro editore e nessuna personalizzazione attiva possa essere eseguita sul componente una volta installato come soluzione gestita.
Nella tabella seguente sono elencate alcune proprietà gestite per un sottoinsieme di componenti della soluzione disponibili.
Componente | Nome visualizzato | Proprietà |
---|---|---|
Entità | Personalizzabile | IsCustomizable.Value |
Entity | Il nome visualizzato può essere modificato | IsRenameable.Value |
Entity | Possibilità di utilizzo come entità correlata in una relazione | CanBeRelatedEntityInRelationship.Value (Sola lettura) |
Entity | Possibilità di utilizzo come entità primaria in una relazione | CanBePrimaryEntityInRelationship.Value (Sola lettura) |
Entity | Possibilità di utilizzo in relazione molti-a-molti | CanBeInManyToMany.Value (Sola lettura) |
Entity | Nuovi moduli possono essere creati | CanCreateForms.Value |
Entity | Nuovi grafici possono essere creati | CanCreateCharts.Value |
Entity | Nuove visualizzazioni possono essere create | CanCreateViews.Value |
Entity | Possibilità di modificare altre proprietà dell'entità non rappresentate da una proprietà gestita | CanModifyAdditionalSettings.Value |
Entità | Possibilità di creare attributi | CanCreateAttributes.Value |
Campo (attributo) | Personalizzabile | IsCustomizable.Value |
Campo (attributo) | Il nome visualizzato può essere modificato | IsRenameable.Value |
Campo (attributo) | È possibile modificare il livello di requisiti | RequiredLevel.CanBeChanged Nota: RequiredLevel è l'unica proprietà gestita ad utilizzare la proprietà. CanBeChanged |
Campo (attributo) | Possibilità di modificare altre proprietà dell'attributo non rappresentate da una proprietà gestita. | CanModifyAdditionalSettings.Value |
Relazione di entità | Personalizzabile | IsCustomizable.Value |
Modulo | Personalizzabile | SystemForm.IsCustomizable.Value |
Grafico | Personalizzabile | SavedQueryVisualization.IsCustomizable.Value |
Visualizzazione | Personalizzabile | SavedQuery.IsCustomizable.Value |
Set di opzioni | Personalizzabile | IsCustomizable.Value |
Risorsa Web | Personalizzabile | WebResource.IsCustomizable.Value |
Workflow | Personalizzabile | Workflow.IsCustomizable.Value |
Workflow | La fase di elaborazione personalizzata è consentita per altri editori | Workflow.IsCustomProcessingStepAllowedForOtherPublishers.Value |
Assembly | Personalizzabile | SdkMessageProcessingStep.IsCustomizable.Value |
Registrazione dell'assembly | Personalizzabile | ServiceEndpoint.IsCustomizable.Value |
Modello di messaggio | Personalizzabile | Template.IsCustomizable.Value |
Modello di articolo della Knowledge Base | Personalizzabile | KbArticleTemplate.IsCustomizable.Value |
Modello di contratto | Personalizzabile | ContractTemplate.IsCustomizable.Value |
Modello di stampa unione | Personalizzabile | MailMergeTemplate.IsCustomizable.Value |
Dashboard | Personalizzabile | SystemForm.IsCustomizable.Value |
Ruoli di sicurezza | Personalizzabile | Role.IsCustomizable.Value |
Modulo di sistema | È possibile eliminare | PuòEliminarsi.Value |
Query di sistema | È possibile eliminare | PuòEliminarsi.Value |
Flusso di lavoro La fase di elaborazione personalizzata è consentita per altri editori
Questa proprietà gestita controlla se i passaggi del plug-in registrati da terze parti per i messaggi creati dalle azioni di processo personalizzate verranno eseguiti. Il valore predefinito è false
, significa che i passaggi del plug-in registrati che non utilizzano lo stesso autore di soluzioni non verranno eseguiti. Quando questo valore è true
, l'autore dell'azione del processo personalizzato consente l'esecuzione dei passaggi di registrazione del plug-in registrato.
Aggiornare le proprietà gestite
Dopo aver rilasciato la soluzione gestita, è possibile decidere che si desidera modificare le proprietà gestite. È solo possibile modificare le proprietà gestite per renderle meno restrittive. Ad esempio, dopo il rilascio iniziale è possibile decidere di consentire la personalizzazione di un'entità.
Si aggiornano le proprietà gestite per la soluzione rilasciando un aggiornamento della soluzione con le proprietà gestite modificate. Una soluzione gestita può essere aggiornata solo da un'altra soluzione gestita associata allo stesso record relativo all'autore di una soluzione gestita originale. Se l'aggiornamento include una modifica nelle proprietà gestite per renderle più restrittive, quelle modifiche alle proprietà gestite verranno ignorate, ma le altre modifiche nell'aggiornamento verranno applicate.
Poiché l'autore originale è un requisito per aggiornare le proprietà gestite di una soluzione gestita, una soluzione non gestita non può essere associata a un autore utilizzato per l'installazione di una soluzione gestita.
Nota
Ciò significa che non sarà possibile sviluppare un aggiornamento della soluzione utilizzando un'organizzazione in cui è installata la soluzione gestita.
Controllare le proprietà gestite
Utilizza IsComponentCustomizableRequest per controllare se un componente di soluzione è personalizzabile. In alternativa, è possibile controllare le proprietà dei componenti di soluzione ma è necessario valutare che la determinazione finale del significato dipende dai valori di proprietà diverse. Ogni componente di soluzione include una proprietà IsCustomizable
. Se un componente di soluzione è installato come parte di una soluzione gestita, la proprietà IsManaged
sarà true. Le proprietà gestite sono applicate solo alle soluzioni gestite. Quando si controllano le proprietà gestite per determinare se un singolo componente di soluzione è personalizzabile, è necessario controllare entrambe le proprietà IsCustomizable
e IsManaged
. Un componente di soluzione in cui IsCustomizable
è false e IsManaged
è false, è personalizzabile.
L'entità e l'attributo hanno più proprietà gestite oltre a IsCustomizable
. Queste proprietà gestite non vengono aggiornate se IsCustomizable
è impostato su false. Questo significa che oltre a controllare una singola proprietà gestita, è inoltre necessario controllare la proprietà IsCustomizable
per verificare se la proprietà gestita viene applicata.