8 Antworten Neueste Antwort am May 10, 2017 11:35 PM von jkoester

    Wie macht ihr das mit Menüs?

    yamu

      Ich habe eine Anwendung entwickelt, die in der Desktop-Version so ca. 30-40 Layouts hat. Die iPad Version davon dient nur der Datensammlung von Extern, dort habe ich nur ganz wenige Layouts und somit nicht das Problem. Mein Problem ist, dass ich ganz oben eine Menüleiste habe (und diese dort auch so will), und jedesmal wenn ein neues Layout dazukommt, welches auch ins Menü muss (oder eine Änderung, oder eines kommt weg), dann muss ich diese Leiste in alle 30-40 anderen Layouts kopieren, damit dieses Menü überall vorhanden ist. Ich habe leider bis jetzt keinen Weg gefunden, das irgendwie dynamisch zu machen, also z.B. so etwas wie "include" oder eine "Masterseite" oder ein Script, welches die Buttons und Popovers dynamisch generiert, oder dergl. Geht so etwas in FM 15? Oder wie macht ihr das?

       

      Danke für Euren Rat. Hans

        • 1. Re: Wie macht ihr das mit Menüs?
          Tanner

          Nur aus Interesse,

           

          Du schreibst, Du hast 30-40 Layouts und es werden mehr.

          Solltest Du nicht so langsam an die Usability denken?

          Vlt. stimmt generell deine Struktur nicht so 100%-ig?!

           

          Also 30-40 Layout bedeutet völliges Chaos.

           

          Tanner

          • 2. Re: Wie macht ihr das mit Menüs?
            Markus Schneider

            in einem Ein-Dateien-System hast du aber gaaanz schnell weit mehr layouts...

             

            - Nicht saemtliche Layouts werden in der Regel in einer Auswahl enthalten sein (zB Admin-Layouts, Archive, etc.)

            - Eine Tabelle, deren Datensaetze die Layoutnamen enthalten (oder Namen mit ID's), per script aktualisiert

            - Eine Funktion, die ein Layout auswaehlt aufgrund eines Feldinhaltes

             

            - es braucht dann in jedem Layout ein Feld, das als Werteliste diese Layout-Tabelle als Basis hat mit der Funktion (script, script-trigger)

             

            -> kann auch mit einer Tastenleiste gemacht werden, aber die muss ebenfalls kopiert werden

            -> alternativ kann eine Popover-Taste mit den Eintraegen zur Anwendung kommen

             

            in jedem Fall muss bei einem neuen Layout irgendwas kopiert werden..

            • 3. Re: Wie macht ihr das mit Menüs?
              Tanner

              nichts für ungut, aber nenne mir bitte mal ein Anwendungsfall als Beispiel, wofür ich 40 und mehr Layouts brauche?

               

              >Eine Funktion, die ein Layout auswaehlt aufgrund eines Feldinhaltes

              was soll das für ein Vorteil bringen? Wenn meine Datenstruktur gut durchdacht ist, intelligente Relationen erstellt sind, dann kann ich doch mit einem Layout arbeiten und dem Layout entsprechend des ausgewählten Datensatztes ein Label im Header verpassen, Farbe anpassen usw.

              • 4. Re: Wie macht ihr das mit Menüs?
                yamu

                Hier der Anwendungsfall: Es ist eine sehr große Anwendung im Bereich von Kontrollüberprüfungen im Einzelhandel, Metzgereien, etc. Da gibt es die Software in der Zentrale und eine Erfassungs-App auf iPads, wo die Leute, die draussen die Kontrollen durchführen die Daten erfassen und dann per MirrorSync mit der Zentrale ein paar mal am Tag synchronisieren. Danach werden die Daten dort weiterbearbeitet, und sollen dann ein paar mal im Monat per Webservice an eine staatliche Stelle weitergeleitet. Ich arbeite da schon über 1 Jahr daran. Die Desktop-Anwendung besteht sozusagen aus Master-Daten (früher sagte man mal Stammdaten dazu), damit alle das gleiche eingeben, weil die Daten nach vielen statistischen Richtlinien zum Schluss auswertbar sein müssen, und Bewegungsdaten, wie Klienten, durchfgeführte Kontrollen, komplette dynamische Fragenkataloge, die am iPad abzuarbeiten sind, pro Frage kann es Abweichungen geben, pro Abweichung können beliebig viele Photos hinterlegt werden, die mit dem iPad Pro geschossen werden, usw. Daneben gibt es noch jede Menge Reports im PDF-Format, ...

                 

                Da ergeben sich zwangsweise so viele Layouts ;-)

                • 5. Re: Wie macht ihr das mit Menüs?
                  HLandschulz

                  Hallo,

                   

                  ich habe eine Jobverwaltung für kreative Firmen mit derzeit 102 Layout. Die sind ordentlich benannt und sauber in Ordner einsortiert und ich finde mich damit super zurecht.

                  Ich habe eine Tastenleiste, wo die dazu gehörigen Scripte robust programmiert sind.

                  Also: Die Layouts heißen z.B. ADR_Liste und ADR_Eingabe oder JOB_Liste und JOB_Eingabe.

                  Für  meine Tastenleiste gibt es z.B. ein Script "Neu":

                   

                  Variable setzen [ $Layout ; Wert: ZeichenLinks ( Hole ( LayoutName ); 3) ]

                  Gehe zu Layout [ $Layout & "_Eingabe" ]

                  Neuer Datensatz/Abfrage

                   

                  (und noch ein paar Befehle mehr).

                  Somit kann ich die Tastenleiste von Layout zu Layout kopieren (bzw. Layouts duplizieren und für andere Module verwenden), ohne die Tasten oder Scripts anfassen zu müssen.

                   

                  Heike

                  • 6. Re: Wie macht ihr das mit Menüs?
                    yamu

                    Hallo Heike,

                     

                    Danke für die Infos. Genau so habe ich es eigentlich auch gemacht. Ich habe auch saubere Ordner, und dort jeweils die Layouts einsortiert. Ich generiere mir da auch ein paar Funktionen aus dem Layoutnamen heraus. Das, was ich mir sparen wollte, ist die Tastenleiste in jedes Layout zu kopieren. Beim Erstellen eines neuen Layouts ist das eh kein Problem, da kopiere ich die Tastenleiste einfach in den Kopfbereich und das wars. Anpassen brauch ich da auch nichts mehr, ausser das neue Layout als Button-Aufruf in eines der Popover Menüs in der Tastenleiste einzuhängen. Die Arbeit ist nur, dass ich dann in jedes der anderen Layouts gehen muss, die ebenfalls diese Tastenleiste im Kopfbereich drinnen haben, und die alte Tastenleiste löschen, die neue hineinkopieren und das Layout dann speichern.

                     

                    Aber ich mache jetzt einfach immer eine Challenge gegen mich selber, wie schnell ich bin: und ich werde immer besser ;-)

                     

                    Hans

                    • 7. Re: Wie macht ihr das mit Menüs?
                      trogisch@archifile.de

                      Hatte mal (noch in FM6) die Navigation mit einem Portal gemacht, das die Layoutnamen (und noch weitere Befehle) als Bezugsdatensätze aus einer entsprechenden Tabelle gezeigt hat. Muß zwar in jedem Layout enthalten sein, ist dann aber wunderbar dynamisch (eben auch rückwirkend). Bestimmung der aufzurufenden Scripte per Parameter aus den Bezugsdatensätzen etc. pp.

                      • 8. Re: Wie macht ihr das mit Menüs?
                        jkoester

                        Hallo Hans,

                         

                        nur zur Anregung.

                        Ich habe eine dynamische Navigation, auf Basis einer Tastenleiste, gebaut.

                        Eine Tastenleiste mit (max) 50 Tastenelementen. Jeder Taste ist ein globales Feld (enthält die Beschriftung) zugeordnet.

                        Jedem Tastenelement wird die Ausblendbedingung "IstLeer ( Selbst )" zugeordnet.

                        Wenn nun ein Modul hinzukommt, fülle ich das entsprechende globale Feld mit der Beschriftung und in allen Layouts wird dieses Tastenelement automatisch eingeblendet.

                        Wie Heike, habe ich zuvor allen Tasten ein Script zugeordnet, mit den erforderlichen Parametern.

                         

                        Dieses Konstrukt kann beliebig weitergestrickt werden. Auch hinsichtlich der Rechteverwaltung. Wenn ein Anwender keine Rechte für ein Modul hat. Wird per Script einfach das Label aus dem globalen Feld entfernt und schon wird auch das Tastenelement ausgeblendet.

                         

                        Grüße Jörg