Steuern Sie, wann das System eine Ansicht anzeigt

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 2 Minuten Lesedauer
  • Administratoren können Regeln erstellen, die die Bedingungen dafür festlegen, wann das System ein Formular oder eine Liste in einer bestimmten Ansicht anzeigen soll. Administratoren können Ansichten auch nach Benutzerrolle einschränken.

    Vorbereitungen

    Erforderliche Rolle: admin

    Prozedur

    1. Navigieren zu Alle > System-UI > Regeln anzeigen.
    2. Klicken Sie auf Neu.
    3. Füllen Sie das Formular aus.
      Tabelle : 1. Formular „Anzeigeregel“
      Feld Eingabewert
      Name Geben Sie einen identifizierenden Namen für die Regel an. In diesem Feld wird zwischen Groß- und Kleinschreibung unterschieden. Es muss genau mit dem Namen der Ansicht übereinstimmen.
      Aktiv Wählen Sie diese Option aus, um die Ansichtsregel gemäß den von Ihnen angegebenen Bedingungen anzuwenden. Wenn diese Option deaktiviert ist, wird die Ansichtsregel nicht angewendet.
      Erweitert Wählen Sie diese Option aus, um eine codebasierte Bedingung anzugeben, anstatt den Bedingungsgenerator zu verwenden. Wenn Sie diese Option auswählen, wird das Feld Skriptangezeigt und die Felder Abgleichsbedingungen, Bedingungenund Ansicht werden ausgeblendet.
      Bedingungen anpassen Wählen Sie aus, ob Beliebige oder Alle Bedingungen erfüllt sein müssen. Das System blendet dieses Feld aus, wenn Sie eine erweiterte Ansichtsregel erstellen.
      Bedingungen Verwenden Sie den Bedingungsgenerator, um zu bestimmen, wann die Ansicht angewendet wird. Das System blendet dieses Feld aus, wenn Sie eine erweiterte Ansichtsregel erstellen.
      Anwendung Zeigt die Anwendung an, zu der der Ansichtsregel-Datensatz gehört.
      Tabelle Wählen Sie die Tabelle aus, auf die diese Ansichtsregel angewendet wird. Die Liste zeigt nur Tabellen und Datenbankansichten an, die sich im selben Bereich wie die Ansichtsregel befinden
      Gerätetyp Wählen Sie aus, für welche Schnittstelle diese Ansichtsregel gilt.
      Ansicht Geben Sie den Namen der Ansicht ein, für die Sie eine Regel erstellen. Das System blendet dieses Feld aus, wenn Sie eine erweiterte Ansichtsregel erstellen.
      Skript Geben Sie ein Skript ein, um festzulegen, wann eine bestimmte Ansicht angezeigt werden soll. Das System zeigt dieses Feld nur an, wenn Sie eine erweiterte Ansichtsregel erstellen.
    4. Klicken Sie auf Absenden.

    Beschränken Sie die Ansicht nach Rolle

    Sie können ein Skript verwenden, um die Formularansicht zu steuern, die von verschiedenen Rollen verwendet wird.

    Warnung:
    Die hier beschriebene Anpassung wurde für die Verwendung in bestimmten Fällen entwickelt und wird von Now Support nicht unterstützt. Diese Methode wird wie sie ist zur Verfügung gestellt und sollte vor der Implementierung gründlich getestet werden. Veröffentlichen Sie alle Fragen und Kommentare zu dieser Anpassung in unserem Community-Forum.

    Name: Ansicht nach Rolle beschränken

    Typ: System-UI > Regeln anzeigen

    Tabelle: Beliebig

    Beschreibung: Im Allgemeinen wird die in einem Formular verwendete Ansicht gesteuert, indem entweder der Parameter sysparm_view in den URL- oder Moduleigenschaften angegeben wird oder die Ansicht vom vorherigen Formular oder der vorherigen Liste geerbt wird. Manchmal gilt dies nicht, z. B. beim Öffnen eines referenzierten Feldformulars aus einem Datensatzersteller. In diesem Fall möchten Sie die Ansicht des Formulars möglicherweise basierend auf Rollen steuern. Dieses Skript geht davon aus, dass für die aktuelle Tabelle eine Ansicht mit dem Namen ess verfügbar ist.

    Parameter:
    • view Eine Zeichenfolge, die den Namen der aktuellen Ansicht enthält.
    • is_list Ein boolescher Wert, der angibt, ob es sich um eine Listenansicht handelt.

    Skript:

    (function overrideView(view, is_list) {
    //Force non-itil users to use the ess view
    if (gs.hasRole("itil"))
    {return;}
    if (view.startsWith("ess"))
    {return;}
    // do not change view if it starts with sys_ (e.g. sys_ref_list)
    if (view.startsWith("sys_"))
    {return;}
    answer = "ess"; // set the new view to answer
    })(view, is_list);