Używanie właściwości zarządzanych
Istnieje możliwość sterowania możliwością dostosowywania składników rozwiązania zarządzanego za pomocą właściwości zarządzanych. Domyślnie program umożliwia dostosowywanie wszystkich niestandardowych składników rozwiązania. Każdy składnik rozwiązania ma właściwość, Can be customized (IsCustomizable
). Tak długo, jak ta właściwość ma wartość true, można określić więcej właściwości dla danego typu składnika rozwiązania. Jeśli właściwość IsCustomizable.Value
zostanie ustawiona na wartość false (fałsz), po zainstalowaniu rozwiązania jako rozwiązanie zarządzane nie będzie można w ten sposób dostosować składnika rozwiązania.
Właściwości zarządzane zapewniają, że tylko rozwiązanie z tego samego wydawcy będzie mogły zmieniać składnik. Właściwości zarządzane będą miały wpływ tylko na zarządzane składniki i nie wymuszają tego w środowiskach programistycznych, w których składnik jest nadal niezarządzany. Użycie właściwości zarządzanej IsCustomized
ma na celu zapewnienie, że żadna inna warstwa rozwiązania od żadnego innego wydawcy i żadne aktywne dostosowania nie będą mogły być dokonywane na składniku po zainstalowaniu go jako rozwiązania zarządzanego.
W poniższej tabeli wymieniono niektóre właściwości zarządzane dla podzbioru dostępnych składników rozwiązania.
Składnik | Nazwa wyświetlana | Właściwości |
---|---|---|
Jednostka | Można dostosować | IsCustomizable.Value |
Entity | Można zmodyfikować nazwę wyświetlaną | IsRenameable.Value |
Entity | Może być encją pokrewną w relacji | CanBeRelatedEntityInRelationship.Value (Tylko do odczytu) |
Entity | Może być encją podstawową w relacji | CanBePrimaryEntityInRelationship.Value (Tylko do odczytu) |
Entity | Może wchodzić w relację „wiele do wielu” | CanBeInManyToMany.Value (Tylko do odczytu) |
Entity | Można tworzyć nowe formularze | CanCreateForms.Value |
Entity | Można tworzyć nowe wykresy | CanCreateCharts.Value |
Entity | Można tworzyć nowe widoki | CanCreateViews.Value |
Entity | Może zmienić dowolne inne właściwości encji, które nie są reprezentowane przez właściwość zarządzaną | CanModifyAdditionalSettings.Value |
Jednostka | Może tworzyć atrybuty | CanCreateAttributes.Value |
Pole (atrybut) | Można dostosować | IsCustomizable.Value |
Pole (atrybut) | Można zmodyfikować nazwę wyświetlaną | IsRenameable.Value |
Pole (atrybut) | Można zmienić poziom wymagań | RequiredLevel.CanBeChanged Uwaga: RequiredLevel jest jedyną właściwością zarządzaną, która korzysta z CanBeChanged tej właściwości. |
Pole (atrybut) | Może zmienić dowolne inne atrybuty encji, które nie są reprezentowane przez właściwość zarządzaną | CanModifyAdditionalSettings.Value |
Relacja encji | Można dostosować | IsCustomizable.Value |
Formularz | Można dostosować | SystemForm.IsCustomizable.Value |
Wykres | Można dostosować | SavedQueryVisualization.IsCustomizable.Value |
Wyświetlanie | Można dostosować | SavedQuery.IsCustomizable.Value |
Zestaw opcji | Można dostosować | IsCustomizable.Value |
Zasób w sieci Web | Można dostosować | WebResource.IsCustomizable.Value |
Workflow | Można dostosować | Workflow.IsCustomizable.Value |
Workflow | Czy krok przetwarzania niestandardowego jest dozwolony dla innych wydawców | Workflow.IsCustomProcessingStepAllowedForOtherPublishers.Value |
Zestaw | Można dostosować | SdkMessageProcessingStep.IsCustomizable.Value |
Rejestracja zestawu | Można dostosować | ServiceEndpoint.IsCustomizable.Value |
Szablon wiadomości e-mail | Można dostosować | Template.IsCustomizable.Value |
Szablon artykułu Bazy Wiedzy | Można dostosować | KbArticleTemplate.IsCustomizable.Value |
Szablon kontraktu | Można dostosować | ContractTemplate.IsCustomizable.Value |
Szablon korespondencji seryjnej | Można dostosować | MailMergeTemplate.IsCustomizable.Value |
pulpit nawigacyjny | Można dostosować | SystemForm.IsCustomizable.Value |
Role zabezpieczeń | Można dostosować | Role.IsCustomizable.Value |
Formularz systemowy | Można usunąć | CanBeDeleted.Value |
Zapytanie systemowe | Można usunąć | CanBeDeleted.Value |
Przepływ pracy Czy krok przetwarzania niestandardowego jest dozwolony dla innych wydawców
Ta właściwość zarządzana umożliwia określenie, czy będą uruchamiane kroki dodatku plug-in zarejestrowane przez strony trzecie dla komunikatów utworzonych przez niestandardowe akcje procesu. Domyślna wartość to false
, co oznacza, że zarejestrowane kroki dodatku plug-in, które nie korzystają z tego samego wydawcy rozwiązania, nie zostaną uruchomione. Jeśli wartość to true
, wydawca niestandardowej akcji procesu umożliwia uruchomienie zarejestrowanych kroków rejestracji dodatku plug-in.
Aktualizowanie właściwości zarządzanych
Po swoim wydaniu, rozwiązanie zarządzane może się okazać, że użytkownik chce zmienić właściwości zarządzane. Właściwości zarządzane można zmienić tylko w celu zmniejszenia ich restrykcyjności. Na przykład po przeprowadzeniu pierwszego wydania można zezwolić na dostosowywanie encji.
W celu zaktualizowania właściwości zarządzanego rozwiązania należy wydać aktualizację rozwiązania przy użyciu zmienionych właściwości zarządzanych. Rozwiązanie zarządzane może zostać zaktualizowane tylko przez inne rozwiązanie zarządzane skojarzone z tym samym rekordem wydawcy, co oryginalne rozwiązanie zarządzane. Jeśli aktualizacja zawiera zmiany właściwości zarządzanych w celu uczynienia ich bardziej restrykcyjnymi, zmiany tych właściwości zarządzanych zostaną zignorowane, ale zostaną zastosowane inne zmiany w aktualizacji.
Ponieważ oryginalny wydawca to wymóg aktualizowania właściwości zarządzanych w rozwiązaniu zarządzanym, nie można z nim skojarzyć żadnych rozwiązań niezarządzanych, które zostały użyte do zainstalowania rozwiązania zarządzanego.
Uwaga
Oznacza to, że nie będzie można opracować aktualizacji rozwiązania za pomocą organizacji, w której zainstalowano rozwiązanie zarządzane.
Sprawdzanie właściwości zarządzanych
Użyj funkcji IsComponentCustomizableRequest, aby sprawdzić, czy składnik rozwiązania można dostosowywać. Można również sprawdzić właściwości składnika rozwiązania, ale należy się upewnić, że ostateczne określenie znaczenia zależy od wartości wielu właściwości. Każdy składnik rozwiązania ma właściwość IsCustomizable
. Kiedy składnik rozwiązania jest zainstalowany jako część rozwiązania zarządzanego, właściwość IsManaged
będzie miała wartość true (prawda). Właściwości zarządzane są wymuszane tylko dla rozwiązań zarządzanych. Przy sprawdzaniu właściwości zarządzanych w celu ustalenia, czy dany składnik rozwiązania można dostosowywać, należy sprawdzić obie te właściwości —IsCustomizable
i IsManaged
. Składnik rozwiązania z parametrem IsCustomizable
= false i IsManaged
= false można dostosowywać.
Encja i atrybut zawierają więcej właściwości zarządzanych oprócz IsCustomizable
. Te właściwości zarządzane nie są aktualizowane, jeśli właściwość IsCustomizable
jest ustawiona na false (fałsz). Oznacza to, że oprócz sprawdzania poszczególnych właściwości zarządzanych należy sprawdzić, czy właściwość IsCustomizable
, aby dowiedzieć się, czy zarządzana właściwość jest wymuszana.