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 wyświetlania reguł na poleceniu skojarzonym z przyciskiem mają 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 będzie widoczny, gdy oczekujesz, że będzie ukryty.

Uwaga 16.

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

Ostrzeżenie

Nie usuwaj reguły wyświetlania Mscrm.HideOnModern z polecenia, aby wymusić wyświetlanie przycisku w ujednoliconym interfejsie. Polecenia z regułą wyświetlania Mscrm.HideOnModern są przeznaczone dla starszego interfejsu klienta sieci Web i nie są obsługiwane w ujednoliconym interfejsie i mogą nie działać poprawnie.

  1. Włącz moduł sprawdzania poleceń i wybierz przycisk polecenia, aby sprawdzić.

  2. W poniższym przykładzie przedstawiono dwa przyciski Termin 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łączenia reguł i wyświetlania reguł wraz z wynikiem (True, False, Skipped) każdej oceny reguły. Przejrzyj reguły włączania i reguły wyświetlania, jeśli oczekujesz, że określona reguła powinna być oceniana jako fałsz, to możliwe, że reguła jest niepoprawnie dostosowywana lub konieczne okoliczności, aby zwrócić fałszywy wynik, nie zostaną spełnione. Jeśli tak, przejdź do kroku 9, w przeciwnym razie możliwe jest, że w poleceniu brakuje reguły lub reguł i wyświetlimy warstwy rozwiązania poleceń do dalszej analizy.

    Zrzut ekranu przedstawiający wybranie 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 poleceń poniżej nazwy polecenia.

  5. W okienku Warstwy rozwiązania zostanie wyświetlona warstwa każdej definicji składnika wstążki, która została zainstalowana. 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 najlepsze rozwiązanie zostanie odinstalowane lub zainstalowano zaktualizowaną wersję, która usunie definicję, następna warstwa stanie się bieżącą aktywną definicją używaną przez aplikację. Gdy jest obecna niezarządzana warstwa aktywnego rozwiązania, zawsze będzie to definicja używana przez aplikację. Jeśli na liście nie ma aktywnego rozwiązania, rozwiązanie wymienione na początku listy będzie definicją używaną przez aplikację. Wszelkie rozwiązania zarządzane niestandardowe, które nie są publikowane przez firmę Microsoft, będą miały również pierwszeństwo przed warstwami rozwiązań opublikowanych przez firmę Microsoft.

    Kontekst jednostki wskazuje obiekt, na który jest włączona wstążka, jeśli zostanie wyświetlona pozycja "Wszystkie jednostki", warstwa pochodzi z rozszerzeń klienta wstążki aplikacji, a nie specyficznych dla jednostki. W przeciwnym razie zostanie wyświetlona nazwa logiczna jednostki.

    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 narzędzia do 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 Aktywne, ale nie znajduje się na liście u góry, wybierz warstwę rozwiązania Aktywne, a następnie górny wiersz) i wybierz pozycję Porównaj.

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

  6. Porównanie bieżącej aktywnej definicji i poprzedniej nieaktywnej definicji będzie wyświetlane z widocznymi różnicami, jeśli istnieją. W poniższym przykładzie pokazano, że niezarządzana aktywna definicja została dostosowana wraz z usunięciem reguły Mscrm.HideOnModern wyświetlania uwzględnionej w nieaktywnej warstwie rozwiązania opublikowanego przez firmę msdynce_ActivitiesPatch 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 określonym scenariuszu. Jeśli ustalisz, że reguła jest niepoprawnie oceniana jako fałsz, a jeśli definicja reguły jest niepoprawnie zdefiniowana, należy zmodyfikować definicję reguły i wprowadzić zmiany, które pozwolą regule ocenić wartość false w odpowiednich okolicznościach. Jeśli definicja reguły jest poprawna, możliwe jest, że wymagania, które sprawią, że reguła zwróci wartość false, nie zostaną spełnione, takie jak wartość pola lub uprawnienia zabezpieczeń, nie są 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 użyciu usuwania reguły wyświetlania Mscrm.HideOnModern . Ta reguła wyświetlania ma na celu ukrycie tego konkretnego przycisku w aplikacjach ujednoliconego interfejsu i będzie widoczna tylko w starszym interfejsie klienta sieci Web. Możemy zmodyfikować niestandardową wersję polecenia i dodać brakującą Mscrm.HideOnModern regułę 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 z jednej z poniższych kart. Pierwsza karta jest domyślnie zaznaczona.

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, które pasują do konkretnego scenariusza:

Polecenie znajduje się w niezarządzanych aktywnych rozwiązaniach

Aby usunąć polecenie w warstwie rozwiązania Aktywne niezarządzane, wyeksportujemy rozwiązanie niezarządzane 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, w której to polecenie zostało usunięte, aby usunąć składnik. Zobacz Eksportowanie, przygotowywanie do edycji i importowanie wstążki.

Polecenie jest specyficzne dla jednostki

Na podstawie naszego przykładowego scenariusza ustaliliśmy, że jednostka jest elementem activitypointer i poleceniem, które należy usunąć, jest Mscrm.CreateAppointment i jest zadeklarowane w warstwie rozwiązania Niezarządzane aktywne z 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 program Publisher na wartość wyświetlaną w warstwach rozwiązania narzędzia do sprawdzania poleceń na liście poleceń i warstwy rozwiązania Aktywne. (W naszym przykładzie jest toDefaultPublisherCITTest).

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

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

  6. Przed wybraniem pozycji Zakończ usuń zaznaczenie pola wyboru Uwzględnij metadane jednostki i usuń zaznaczenie pola wyboru Dodaj wszystkie zasoby.

  7. Wybierz pozycję Zapisz.

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

  9. Wyodrębnij pliki z archiwum 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. Znajdź węzeł (w naszym przykładzie <CommandDefinition> identyfikator węzła <CommandDefinition> to Mscrm.CreateAppointment, więc zlokalizuj następujący węzeł).

    Zrzut ekranu przedstawiający lokalizację węzła CommandDefinition.

  13. Zmodyfikuj <RibbonDiffXml> węzeł i usuń określony <CommandDefinition> węzeł, który ma identyfikator 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 <CommandDefinition> usuniemy węzeł, w którym znajduje się Mscrm.CreateAppointmentidentyfikator ).

    Zrzut ekranu przedstawiający przykład usunięcia 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 Publikuj wszystkie dostosowania.

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

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

  1. Otwórz pozycję Ustawienia zaawansowane.
  2. Przejdź do Ustawienia>Rozwiązania
  3. Wybierz pozycję Nowy , aby utworzyć nowe rozwiązanie, ustaw program Publisher na wartość wyświetlaną w warstwach rozwiązania narzędzia do sprawdzania poleceń na liście poleceń i warstwy rozwiązania Aktywne.
  4. Wybierz pozycję Rozszerzenia>klienta Dodaj istniejące>wstążki aplikacji.
  5. Wybierz pozycję Zapisz.
  6. Wybierz pozycję Eksportuj rozwiązanie i wyeksportuj rozwiązanie niezarządzane.
  7. Wyodrębnij pliki z archiwum zip.
  8. Otwórz plik customizations.xml.
  9. Znajdź węzeł główny <RibbonDiffXml> .
  10. Znajdź plik <CommandDefinition>.
  11. Zmodyfikuj <RibbonDiffXml> węzeł i usuń <CommandDefinition> węzeł, który ma identyfikator 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 Publikuj wszystkie dostosowania.
Polecenie pochodzi z niestandardowego rozwiązania zarządzanego przez moją firmę

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

  1. W oddzielnej organizacji programistycznej, która ma niezarządzaną wersję źródłową rozwiązania niestandardowego, wykonaj kroki wymienione powyżej dla polecenia Polecenie znajduje się w niezarządzanej opcji Aktywnego rozwiązania .
  2. Zwiększ wersję rozwiązania niestandardowego.
  3. Eksportowanie rozwiązania jako zarządzanego.
  4. W oddzielnej organizacji, której dotyczy problem, zaimportuj tę nową wersję rozwiązania zarządzanego niestandardowego.
Polecenie pochodzi z niestandardowego rozwiązania zarządzanego przez moją firmę, które nie zostało utworzone (od innej firmy/niezależnego dostawcy oprogramowania)

Aby usunąć polecenie zainstalowane przez niestandardowe rozwiązanie zarządzane przez inną firmę/niezależnego dostawcę oprogramowania, należy skontaktować się z autorem rozwiązania i zażądać nowej wersji rozwiązania, która usunęła konkretną definicję poleceń, a następnie zainstalować to nowe rozwiązanie w organizacji, której dotyczy problem.