Rahmenbedienfeld im Jitterbit App Builder
Ein Frame-Panel ermöglicht es einer Seite, einen Bereich auf dem Bildschirm zu reservieren, in den ein ausgewählter Seitenlink geladen wird. Frames sind Paneltypen ohne eigenen Inhalt. Wenn ein Frame auf einem Bildschirm vorhanden ist, wird die Seitennavigation in den Frame-Bereich geleitet, anstatt den gesamten Bildschirm zu ersetzen. Mit dieser Funktion können Sie ein seitliches Navigationsmenü anzeigen. Der Frame-Container rendert dann den zugehörigen Seiteninhalt basierend auf dem ausgewählten Menünavigationslink im seitlichen Navigationsmenü.
Beispielseite mit seitlichem Navigationsmenü links und einem Frame-Panel rechts
So erstellen Sie einen Rahmen
Um einen Frame zu erstellen, können Sie entweder eine neue Seite erstellen oder ihn einer bestehenden Seite in einer App hinzufügen. Wählen Sie als Panel-Typ Frame aus.
Frames werden vom Panel-Layout-Service wie alle anderen Panels behandelt. Das heißt, Sie können Position, übergeordnetes Element und Größe festlegen und den Frame so überall dort platzieren, wo Panels normalerweise platziert werden.
Wenn Sie den Benutzer beim Verlinken auf eine Seite innerhalb der Anwendung aus dem Panel-Frame herausführen möchten, können Sie entweder Link zur Seite (aus den Aktualisierungsmethoden) verwenden oder ein Popup zum Verlassen des Frames nutzen.
Damit ein Frame funktioniert, muss er mit einem anderen Panel gekoppelt sein, das den zu ladenden Inhalt steuert. Beispiel: ein Formular-Panel mit Navigationsmenü-Schaltflächen.
Beispielseite mit Rahmen
Diese Seite besteht aus einem Frame oben und einem Formularbereich darunter. Kategorien sind die ersten definierten Seitenlinks. Der Formularbereich enthält zwei Symbolfelder, die auf die Produkt- und Kategorieseiten verweisen. Verwendete Techniken:
- Verwendung von Tabs mit einer Mindestgröße von 1, damit Frame und Formularbereich immer zusammen angezeigt werden.
- Extra kleines Formularbereich.
- Bedingte Formatierung zur Hervorhebung des aktuell im Frame angezeigten Seitensymbols.
- Benutzerdefiniertes Design zur horizontalen und gleichmäßigen Anordnung nebeneinander angeordneter Symbollinks.
Seite im Verlauf ersetzen
Die Funktion „Link zur Seite“ auf Feldebene kann in einem Frame die Funktion „Seite im Verlauf ersetzen“ verwenden. Bei Verwendung in einer Seitenleiste ersetzt das Klicken auf mehrere Links den Frame-Inhalt. Durch Klicken auf die Zurück-Schaltfläche gelangen Sie jedoch zur vorherigen Seite zurück.
Standardseite
App Builder prüft den im Frame-Panel festgelegten Link zur Seite, um eine Seite darzustellen, bevor der Benutzer etwas angeklickt hat. Beachten Sie, dass nur Links aus einem datengesteuerten Panel Kriterien unterstützen. Sie können den Link zur Seite leer lassen, wenn Sie warten möchten, bis die Schaltfläche des Formular-Panels die Standardseite des Frames bereitstellt.
Mvsql-Laufzeit namens page()
Diese Funktion bietet die mvSQL-Funktion Page(). Ohne Parameter wird die UUID der obersten Seite angegeben. Wenn eine Seite in einem Frame dargestellt wird, können ihre Datenobjekte den Kontext erkennen, in dem sie ausgeführt wird. Dies kann beispielsweise verwendet werden, um den aktiven Link hervorzuheben oder mit dem App_Page
Regel zum Abrufen des Seitennamens für eine benutzerdefinierte Seitenbezeichnung.
Die Funktion akzeptiert auch einen einzelnen String-Parameter. 'frame'
, um festzustellen, welche Seite aktuell im Frame geladen ist.
Hinweis
Dieses Konzept funktioniert nun auf allen Seiten, auch ohne Frames.
Daten neu laden
Wenn ein Link von einem Frame verarbeitet wird, löst der App Builder einen globalen Neuladevorgang auf der Containerseite aus. Dies ist nützlich, wenn die Containerseite der obersten Ebene ein einzeiliges Panel als Menü enthält. Das Datenobjekt kann sich selbst aktualisieren, um beispielsweise den Titel oder das Symbol der gerahmten Seite zu laden oder bedingte Formatierung zu verwenden, um dem aktiven Menülink eine andere Farbe zu verleihen (bei Verwendung der Funktion Page()).
URL
Wenn Sie zum ersten Mal auf eine Seite (z. B. Containerseite) verlinken, lautet die URL: /app/MyApplication/ContainerPage
App Builder aktualisiert die Adressleiste sofort wie folgt: /app/MyApplication/ContainerPage/**PageInFrame**
Eingehende Links können so angepasst werden, dass dieses Format bereits enthalten ist, um zu steuern, welche Seiten in einem Frame geladen werden. Die Filterung nach der Spalte eines Frames erfolgt über &Framed.{{ColumnName}}={{Spaltenwert}}
nach den App- und Seitennamen im ersten Teil der URL:
app/MyApplication/OuterPage/MyApplication/InnerPage?OuterPageCriteria=123&Framed.InnerPageCriteria=456