Home › Forum › Nuclos Konfiguration › Maskenlayouts › Stammdaten per Button aufrufen ?
- Dieses Thema hat 8 Antworten und 4 Teilnehmer, und wurde zuletzt aktualisiert vor 11 Jahre, 6 Monaten von
Ramin Goettlich.
-
AutorBeiträge
-
28 Oktober 2011 um 04:58 Uhr #4287
Frank Pavlic
TeilnehmerHallo,
erst einmal ein riesen Kompliment an alle nuclos-Entwickler und Helfer, ein fantastisches Projekt !
Ich arbeite mich seit ein paar Tagen intensiv in nuclos ein. Die diversen APIs sind mir leider noch nicht so geläufig , aber ich arbeite dran :unsure:
Nun zu meinem Problem, klingt trivial aber irgendwie bekomme ich es nicht hin.
Ich möchte direkt aus einem Lieferanten heraus per Button-Klick einen oder mehrere Ansprechpartner anlegen können, d.h. Ansprechpartner-Fenster geht auf mit vorbelegten Lieferantendaten und Eingabemöglichkeit für die Ansprechpartnerdaten.
Lieferant und Ansprechpartner sind Entitäten ohne Statusmodell und „Dummy“-Statusmodell auf Stammdaten-Entitäten möchte ich eigentlich vermeiden.
Warum das Ganze, wenn ich es auch als SubForm einfügen könnte ? Die Adressdaten werden in einer separaten Entität „Adressen“ gesichert, für Lieferanten, Kunden und Ansprechpartner. Daher will ich Ansprechpartner in einem separaten Fenster editieren können, ohne SubForm aber mit dem Luxus, das Lieferanten-Daten mitübergeben werden.Oder generisch betrachtet: Ist es möglich aus einer Maske heraus eine weitere Maske mit Parameter (intid) aufzurufen, beide Entitäten ohne Statusmodell und in einer 1:n Beziehung ?
Ich nutze nuclos in der Version 3.0.12 .
Vielen Dank im Voraus.
Frank
28 Oktober 2011 um 09:59 Uhr #4290Matthias Haake
TeilnehmerHallo Frank,
per Knopfdruck ist mir keine Methode bekannt. Aber schau Dir mal die Arbeitsschritte an (manchmal im Wiki auch „Objektgenerierung“ genannt) – die können das, was Du brauchst: Ein neues Objekt anlegen und Daten aus dem aktuellen Objekt mit übergeben.
http://wiki.nuclos.de/Entit%C3%A4ten_Objektgenerierung
Viel Erfolg und Grüße,
MatthiasAnmerkung: Ich bin mir nicht sicher, glaube aber, dass Du dann ein Statusmodell benötigen wirst.
28 Oktober 2011 um 11:08 Uhr #4292Frank Pavlic
TeilnehmerHallo Matthias,
vielen Dank für deine Antwort, die Wiki-Seite habe ich bereits studiert und in einem Testsystem nachempfunden. Und ja hierfür benötigt man ein Statusmodell, denn nur dann erscheint die Entität in den Dropdown-Menüs, daher auch meine Idee mit dem „Dummy“-Statusmodell.Ein weiterer Gedanke ist folgender:
Kann ich aus einer Geschäftsregel oder Layout-Regel per API eine andere Maske aufrufen? Dann könnte ich per Geschäftsregel den Datensatz vorher anlegen, speichern und anschließend die entsprechende Maske aufrufen. Das wäre fast noch eleganter.Nächster Gedanke:
Es ist ja so, dass ich bei SubForms, die mit einer dynamischen Entität verknüpft sind, auf den Datensatz klicken kann und nuclos und dann zur Entität springt bzw. die zugehörige Maske mit dem Datensatz öffnet. Der Mechanismus, denn ich suche, ist ja im Prinzip vorhanden, müsste man also nur noch auf einen Button „legen“ können. Hast Du mir vielleicht hier eine Richtung in Form von API-Klassen, implementierte Regeln oder nuclos-Konfigurationsmasken?find und fgrep sind zwar super, was das Finden betrifft, allerdings fehlen mir noch die entscheidenden Suchbegriffe.
Vielen Dank im Voraus.
Frank
28 Oktober 2011 um 12:57 Uhr #4293Ramin Goettlich
TeilnehmerHallo,
eine Anmerkung: Ab 3.2 kann man Arbeitsschritte auch für Entitäten ohne Statusmodell konfigurieren.
Masken lassen sich nicht über Geschäftsregeln öffnen (da diese serverseitig ausgeführt werden), eine Layoutregel zum Öffnen einer Maske gibt es aktuell nicht.
Ich habe noch nicht verstanden, warum kein Subform zur Lösung der Anforderung. Auch wenn es sich um eine generische Entität „Adressen“ mit Fremdschlüsseln zu mehreren übergeordneten Entitäten (so interpretiere ich das) handelt, liesse sich diese Entität ja als Subform einbinden. Die jeweils anderen Referenzfelder (also z.B. Kunde und Ansprechpartner) könnte man im Layout ja ausblenden (dazu die Subformspalte im Layouteditor anklicken und im Propertiespanel „Sichtbar“ auf nein setzen.
Grüsse,
nuclosian28 Oktober 2011 um 13:14 Uhr #4295Frank Pavlic
TeilnehmerHallo nuclosian,
danke für die Infos bzgl. nuclos 3.2 . Adressen zum Lieferanten sind bereits als SubForm im Layout vorhanden und Fremdschlüssel ausgeblendet. Wenn ich Ansprechpartner als SubForm beim Lieferanten einbaue, kann ich natürlich den Ansprechpartner anlegen, allerdings kann ich dann nicht direkt Adressdaten zum Ansprechpartner eingeben. Im Prinzip wäre die Lösung eine editierbare Subform, welche eine dynamische Entität referenziert.
Oder aber man folgt einfach mal der Philosophie von nuclos. Ein SubPanel „Ansprechpartner“ anlegen, zwei Subforms „Ansprechpartner“ und „Adresse“ rein und schon kann es losgehen mit dem Anlegen, alles aus einer Maske. Hatte während des Schreibens eine Eingebung 😉 . Manchmal sieht man den Wald vor lauter Bäumen nicht.Eine Frage: wann soll 3.2 kommen ?
Danke nochmal für deine Antwort.
Grüsse
Frank
28 Oktober 2011 um 13:44 Uhr #4296Frank Pavlic
TeilnehmerDie Eingebung war doch keine, war wohl nichts, denn so wie ich das nun sehe, kann ich jede Entität jeweils nur einmal pro Layout in Subforms nutzen.
Grüsse
Frank
27 November 2011 um 03:22 Uhr #4548Ramin Goettlich
TeilnehmerHallo Frank,
mit zweimal demselben Subform in einer Maske wüsste Nuclos nichts anzufangen: Es würde ja in beiden der gleiche Inhalt dargestellt werden.
Grüsse,
nuclosian27 November 2011 um 14:05 Uhr #4554Markus Glitzner
Teilnehmer[quote=“nuclosian“ post=3700]Es würde ja in beiden der gleiche Inhalt dargestellt werden.[/quote]nur bedingt …
Ich würde auch öfters ein und dieselbe Entität in mehreren Subforms benötigen (Beispiele siehe weiter unten), hab das bist jetzt halt immer mit dynamischen Entitäten gelöst was allerdings zwei gravierende Nachteile hat: Man muss erst einmal eine dynamische Entität erzeugen und wenn sich die Hauptentität ändert, müssen sämtliche Dynamischen Entitäten auch geändert werden. Problematisch wird es vor allem dann, wenn Felder umbenannt oder gelöscht werden, dann gibt es beim Öffnen der Maske natürlich einen Fehler. Außerdem können dynamische Entitäten nicht bearbeitet werden. Praktisch ist jedoch, dass Einträge in einer dynamischen Entität mittels Doppelklick geöffnet werden können, das wäre auch bei normalen Entitäten in einem Subform praktisch.
Hier nun meine aktuellen Beispiele wo ich eine Entität in mehreren Subforms benötige:
• Bei Entitäten die über eine ParentID auf sich selbst referenzieren, wir haben z.B. Setartikel so realisiert.
• Wenn in einem Subform viele Felder vorhanden sind, können in unterschiedlichen Subforms unterschiedliche Felder angezeigt werden, die jeweils logisch zusammen gehören was bei unseren Auftragspositionen der Fall ist. So ist einmal die Position aus Sicht der Eingabe relevant und in späterer Folge aus Sicht der Bestellung beim Lieferanten und dann wieder aus Sicht der Auslieferung beim Kunden.
• Ähnlich dem vorigen Punkt, könnten bei einem Subform mit vielen Einträgen Filter vordefiniert werden. Bei uns sind das wieder die Auftragspositionen, wo neben den Artikel auch Text- und Kostenpositionen vorkommen, die aber für die Übersicht bei Lieferantenbestellungen nicht relevant sind und so der Überblick verloren geht. Hier ist anzumerken, dass wir rein Auftragsbezogen arbeiten und sich Aufträge bzw. Bestellungen über mehrere Wochen bis Monate hinausziehen können. Und bei mehr als 100 parallelen Aufträgen ist ein guter Überblick sehr wichtig.
• Zuletzt hab ich noch Kundentermine, die einer bestimmten Kategorie zugewiesen werden. Die Kategorie steht aber bei der Terminvergabe noch nicht fest und wird erst nachträglich eingetragen. Die Kategorie ist ebenfalls einem Kunden zugewiesen und wird samt den dazugehörigen Terminen im Kundenformular angezeigt. Jetzt muss ich mich aber entscheiden, will ich Termine bearbeiten, die dem Kunden zugeordnet sind oder die, die der Kategorie zugeordnet sind weil beides geht ja nicht.Mir ist aber auch klar, dass eine Entität in zwei Subforms beim Speichern einen undefinierten Zustand haben kann und zwar dann, wenn in beiden Subforms derselbe Datensatz geändert wurde. Dennoch wäre es schon sehr praktisch, wenn einen Entität zumindest lesend ein zweites Mal eingefügt werden könnte.
Gruß
Hugo27 November 2011 um 16:19 Uhr #4555Ramin Goettlich
TeilnehmerHallo Hugo,
solange nur lesend, liesse sich das mit Dynamischen Entitäten als Workaround ermöglichen.
Wenn man annimmt, dass für Auftragserfassung, Lieferantenbestellung und für Auslieferung unterschiedliche Benutzer (bzw. Benutzergruppen) zuständig sind, liessen sich Punkt 2 und 3 mit den neuen Nuclos Workspaces (s.a. https://www.nuclos.de/index.php/forum/maskenlayouts/3558-breite-und-reihenfolge-der-spalten-imunterformular?lang=de#3689) erschlagen, in dem man einfach für jede Benutzergruppe / für jeden Workspace eine eigene Spaltenauswahl und -reihenfolge der betroffenen Unterformulare festlegt.
Wenn das in Personalunion getan wird, könnte man natürlich trotzdem mit Workspaces arbeiten, je nachdem, welche Aufgabe er gerade wahrnimmt, müsste der User dann eben zwischen den Workspaces hin- und herschalten.
Der aktuelle Entwicklungsstand (fertig, aber noch nicht vollständig durchgetestet) der Workspaces steht in 1-2 Wochen im Beta-Downloadbereich zur Verfügung.
Grüsse,
nuclosian -
AutorBeiträge