Udostępnij za pośrednictwem


Przycisk na pasku poleceń jest widoczny, gdy powinien być ukryty

Dotyczy: Power Apps
Oryginalny numer KB: 4552163

Określanie, dlaczego przycisk jest widoczny

Przycisk zostanie wyświetlony, jeśli wszystkie reguły włączania i reguły wyświetlania w poleceniu skojarzonym z przyciskiem będą mieć wartość true. Jeśli jest to nieoczekiwane, możliwe, że definicja polecenia została zastąpiona i brakuje reguł włączania lub reguł wyświetlania albo same definicje reguł są zastępowane i powodują, że przycisk jest widoczny, gdy oczekujesz, że będzie ukryty.

Uwaga

Niektóre przyciski nie można dostosowywać. Aby uzyskać więcej informacji, zobacz Przyciski niezobowiągalne na wstążce.

Ostrzeżenie

Nie usuwaj reguły Mscrm.HideOnModern wyświetlania z polecenia, aby wymusić wyświetlenie przycisku w interfejsie Unified. Polecenia, które mają regułę Mscrm.HideOnModern wyświetlania, są przeznaczone dla starszego interfejsu klienta sieci Web i nie są obsługiwane w interfejsie Unified Interface i mogą nie działać poprawnie.

  1. Włącz sprawdzanie poleceń i wybierz przycisk polecenia do sprawdzenia.

  2. W poniższym przykładzie przedstawiono dwa przyciski Terminu na stronie siatki działań, a jeden powinien być ukryty.

    Zrzut ekranu przedstawia dwa przyciski Termin na stronie siatki działań.

  3. Wybierz kartę Właściwości polecenia , aby wyświetlić szczegóły polecenia dla tego przycisku. Spowoduje to wyświetlenie akcji, włączenie reguł i wyświetlenie reguł wraz z wynikiem (True, False, Skipped) każdej oceny reguły. Przejrzyj reguły włączania i reguły wyświetlania, jeśli spodziewasz się, że określona reguła powinna oceniać wartość false, możliwe, że reguła jest niepoprawnie dostosowana lub nie są spełnione okoliczności niezbędne do zwrócenia fałszywego wyniku. Jeśli tak, przejdź do kroku 9, w przeciwnym razie jest możliwe, że w poleceniu brakuje reguły lub reguł, a my wyświetlimy warstwy rozwiązania poleceń do dalszej analizy.

    Zrzut ekranu przedstawiający wybieranie karty Właściwości polecenia w celu wyświetlenia szczegółów polecenia dla tego przycisku.

  4. Wybierz link Wyświetl warstwy rozwiązania definicji poleceń poniżej nazwy polecenia, aby wyświetlić rozwiązania, które zainstalowały definicję polecenia.

    Zrzut ekranu przedstawiający link Wyświetl warstwy rozwiązania definicji polecenia poniżej nazwy polecenia.

  5. W okienku Warstwy rozwiązania zostaną wyświetlone warstwy każdej definicji składnika wstążki zainstalowanego przez określone rozwiązanie. Warstwa w górnej części listy to bieżąca definicja używana przez aplikację, pozostałe warstwy są nieaktywne i nie są obecnie używane przez aplikację. Jeśli odinstalowano najlepsze rozwiązanie lub zainstalowano zaktualizowaną wersję, która usuwa definicję, następna warstwa stanie się bieżącą aktywną definicją używaną przez aplikację. Gdy istnieje niezarządzana warstwa rozwiązania Active , zawsze będzie to definicja używana przez aplikację. Jeśli na liście nie ma aktywnego rozwiązania, rozwiązanie wymienione w górnej części listy będzie definicją używaną przez aplikację. Wszystkie rozwiązania zarządzane niestandardowo, które nie są publikowane przez firmę Microsoft, będą również mieć pierwszeństwo przed warstwami rozwiązań opublikowanych przez firmę Microsoft.

    Kontekst jednostki wskazuje obiekt dostosowywania wstążki jest włączona, jeśli "Wszystkie jednostki" jest na liście, a następnie warstwa pochodzi z rozszerzeń klienta wstążki aplikacji, a nie specyficzne dla jednostki, w przeciwnym razie nazwa logiczna jednostki zostanie wyświetlona.

    Jeśli istnieją co najmniej dwie warstwy, możesz wybrać dwa wiersze i wybrać pozycję Porównaj , aby wyświetlić porównanie definicji wprowadzonych przez każde rozwiązanie.

    Wybranie pozycji Wstecz spowoduje powrót do poprzedniego okna sprawdzania poleceń.

    Jeśli istnieje tylko jedna warstwa rozwiązania, przejdź do kroku 9. W przeciwnym razie wybierz dwie pierwsze warstwy rozwiązania (jeśli masz warstwę w rozwiązaniu Active, ale nie ma jej na liście u góry, wybierz warstwę Aktywne rozwiązanie, a następnie górny wiersz) i wybierz pozycję Porównaj.

    Zrzut ekranu przedstawiający wybieranie dwóch pierwszych warstw rozwiązania i wybieranie opcji Porównaj.

  6. Porównanie bieżącej aktywnej definicji i poprzedniej nieaktywnej definicji będzie wyświetlane z różnicami, jeśli istnieje. W poniższym przykładzie pokazano, że niezarządzana definicja active została dostosowana wraz z usunięciem reguły Mscrm.HideOnModern wyświetlania dołączonej do nieaktywnej msdynce_ActivitiesPatch warstwy rozwiązania opublikowanego przez firmę Microsoft.

    Zrzut ekranu przedstawia porównanie bieżącej aktywnej definicji i poprzedniej nieaktywnej definicji.

  7. Podejście potrzebne do naprawienia widoczności przycisku będzie zależeć od różnych dostosowań w konkretnym scenariuszu. Jeśli ustalisz, że reguła niepoprawnie ocenia wartość false, a definicja reguły jest niepoprawnie zdefiniowana, należy zmodyfikować definicję reguły i wprowadzić zmiany, które umożliwią regule ocenę wartości false w odpowiednich okolicznościach. Jeśli definicja reguły jest poprawna, możliwe, że wymagania, które sprawią, że reguła zwróci wartość false, nie zostaną spełnione, na przykład wartość pola lub uprawnienie zabezpieczeń nie zostaną poprawnie przypisane. W zależności od definicji reguły wymagania mogą się znacznie różnić, zobacz Definiowanie reguł włączania wstążki i Definiowanie reguł wyświetlania wstążki. Biorąc pod uwagę nasz przykład, polecenie zostało dostosowane przy usuwaniu reguły wyświetlania Mscrm.HideOnModern . Ta reguła wyświetlania ma na celu ukrycie tego konkretnego przycisku przed wyświetlaniem w aplikacjach ujednoliconego interfejsu i jest widoczna tylko w starszym interfejsie klienta sieci Web. Możemy zmodyfikować niestandardową wersję polecenia i dodać brakującą regułę Mscrm.HideOnModern wyświetlania do definicji polecenia. Ponieważ jest to niestandardowe zastąpienie opublikowanej definicji firmy Microsoft i nie ma żadnych innych zamierzonych modyfikacji, zaleca się usunięcie tej niestandardowej wersji polecenia w celu przywrócenia domyślnej funkcjonalności.

Opcje naprawy

Wybierz opcję naprawy na jednej z poniższych kart. Pierwsza karta jest zaznaczona domyślnie.

Jak usunąć polecenie

Jeśli istnieje inna warstwa rozwiązania zawierająca działającą definicję tego polecenia, możesz usunąć tę definicję, aby przywrócić następną nieaktywną definicję roboczą.

Jeśli jest to jedyna warstwa i nie potrzebujesz już polecenia, możesz usunąć ją z rozwiązania, jeśli żaden inny przycisk nie odwołuje się do polecenia.

Wybierz jedną z następujących opcji odpowiadających konkretnemu scenariuszowi:

Polecenie znajduje się w niezarządzaniu rozwiązaniem Active

Aby usunąć polecenie w warstwie rozwiązania active niezarządzanego, wyeksportujemy niezarządzane rozwiązanie zawierające jednostkę lub wstążkę aplikacji i zmodyfikujemy <RibbonDiffXml> węzeł w pliku customizations.xml , a następnie zaimportujemy nową wersję tego rozwiązania, gdzie to polecenie zostało usunięte w celu usunięcia składnika. Zobacz Eksportowanie, przygotowywanie do edycji i importowanie wstążki.

Polecenie jest specyficzne dla jednostki

Na podstawie naszego przykładowego scenariusza ustaliliśmy, że jednostka to activitypointer , a polecenie, które należy usunąć, jest Mscrm.CreateAppointment zadeklarowane w warstwie rozwiązania active niezarządzanego od wydawcy o nazwie DefaultPublisherCITTest.

  1. Otwórz pozycję Ustawienia zaawansowane.

  2. Przejdź do pozycji Ustawienia —>rozwiązania.

  3. Wybierz pozycję Nowy , aby utworzyć nowe rozwiązanie, ustaw dla programu Publisher wartość wyświetlaną na liście warstw rozwiązania narzędzia sprawdzania poleceń dla polecenia i warstwy rozwiązania Active. (W naszym przykładzie jest to DefaultPublisherCITTest).

  4. Wybierz pozycję Jednostki>Dodaj istniejące.

  5. Wybierz jednostkę zdefiniowaną w poleceniu (W naszym przykładzie jest to activitypointer) i wybierz przycisk OK.

  6. Przed wybraniem pozycji Zakończ usuń zaznaczenie pola Wyboru Dodaj metadane jednostki i usuń zaznaczenie pola wyboru Dodaj wszystkie elementy zawartości.

  7. Wybierz Zapisz.

  8. Wybierz pozycję Eksportuj rozwiązanie i wyeksportuj rozwiązanie niezarządzane.

  9. Wyodrębnij plik .zip.

  10. Otwórz plik customizations.xml .

  11. <Entity> Znajdź węzeł podrzędny węzła jednostki, który chcesz edytować, i znajdź jego węzeł podrzędny<RibbonDiffXml>.

  12. <CommandDefinition> Znajdź węzeł (w naszym przykładzie identyfikator <CommandDefinition> węzła to Mscrm.CreateAppointment, więc zlokalizujemy następujący węzeł).

    Zrzut ekranu przedstawia lokalizację węzła CommandDefinition.

  13. Edytuj <RibbonDiffXml> węzeł i usuń określony <CommandDefinition> węzeł z identyfikatorem polecenia, które chcesz usunąć. Upewnij się, że nie usuwasz przypadkowo innych <CommandDefinition> węzłów, które mogą być obecne. (Na podstawie naszego przykładu usuniemy <CommandDefinition> węzeł, w którym identyfikator to Mscrm.CreateAppointment.)

    Zrzut ekranu przedstawia przykład usuwania węzła CommandDefinition.

  14. Zapisz plik customizations.xml .

  15. Dodaj zmodyfikowany plik customizations.xml z powrotem do pliku .zip rozwiązania.

  16. Zaimportuj plik rozwiązania.

  17. Wybierz pozycję Publikuj wszystkie dostosowania.

Polecenie znajduje się na wstążce aplikacji (dotyczy "Wszystkich jednostek")

Jeśli polecenie nie jest specyficzne dla jednostki, raczej ma zastosowanie do "Wszystkich jednostek" zadeklarowanych na wstążce aplikacji, kroki będą nieco inne w następujący sposób:

  1. Otwórz pozycję Ustawienia zaawansowane.
  2. Przejdź dopozycji Rozwiązania ustawień>
  3. Wybierz pozycję Nowy , aby utworzyć nowe rozwiązanie, ustaw dla programu Publisher wartość wyświetlaną na liście warstw rozwiązania narzędzia sprawdzania poleceń dla polecenia i warstwy rozwiązania Active.
  4. Wybierz pozycję Rozszerzenia> klientaDodaj istniejące>wstążki aplikacji.
  5. Wybierz Zapisz.
  6. Wybierz pozycję Eksportuj rozwiązanie i wyeksportuj rozwiązanie niezarządzane.
  7. Wyodrębnij plik .zip.
  8. Otwórz plik customizations.xml .
  9. Znajdź węzeł główny <RibbonDiffXml> .
  10. Znajdź element <CommandDefinition>.
  11. Edytuj <RibbonDiffXml> węzeł i usuń <CommandDefinition> węzeł z identyfikatorem polecenia, które chcesz usunąć. Upewnij się, że nie usuwasz przypadkowo innych <CommandDefinition> węzłów, które mogą być obecne.
  12. Zapisz plik customizations.xml .
  13. Dodaj zmodyfikowany plik customizations.xml z powrotem do skompresowanego rozwiązania .zip pliku.
  14. Zaimportuj plik rozwiązania.
  15. Wybierz pozycję Publikuj wszystkie dostosowania.
Polecenie pochodzi z rozwiązania zarządzanego niestandardowo, które jest utworzone przez moją firmę

Aby usunąć polecenie zainstalowane przez utworzone rozwiązanie zarządzane niestandardowo, wykonaj następujące kroki:

  1. W osobnej organizacji deweloperów, która ma niezarządzaną wersję źródłową rozwiązania niestandardowego, wykonaj kroki wymienione powyżej dla polecenia The w niezarządzanym rozwiązaniu Active .
  2. Zwiększanie wersji rozwiązania niestandardowego.
  3. Eksportowanie rozwiązania jako zarządzanego.
  4. W osobnej organizacji, która ma problem, zaimportuj nową wersję rozwiązania zarządzanego niestandardowo.
Polecenie pochodzi z rozwiązania zarządzanego niestandardowo, które nie zostało utworzone przez moją firmę (od innej firmy/niezależnego dostawcy oprogramowania)

Aby usunąć polecenie zainstalowane przez rozwiązanie zarządzane niestandardowo, które zostało utworzone przez inną firmę/niezależnego dostawcy oprogramowania, należy skontaktować się z autorem rozwiązania i zażądać nowej wersji rozwiązania, które usunęło określoną definicję polecenia, a następnie zainstalować to nowe rozwiązanie w organizacji, której dotyczy problem.