Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: DaemoN am 31.01.13 - 16:59:38

Titel: Teilmaske in Teilmaske & "Maske in Dokument speichern"
Beitrag von: DaemoN am 31.01.13 - 16:59:38
hi leute! wir benutzen bei briefvorlagen "maske in dokument speichern" damit falls sich das formular mal ändert, die alte version bestehen bleibt. diese maske beinhaltet eine teilmaske und diese wiederum nochmal eine teilmaske. mit der option "maske in dokument speichern" lässt sich das dokument nach dem speichern aber leider nicht mehr öffnen. es kommt die fehlermeldung "Error, this subform already exists on this form".

gibt es einen workaround wie das trotzdem funktionieren könnte? da wir über 300 briefvorlagen haben, möchte ich die neue teilmaske ungern händisch in alle masken eintragen. daher hab ich sie in die eine teilmaske hineingenommen da diese ohnehin schon in allen briefenvorlagen ist.

Titel: Re: Teilmaske in Teilmaske & "Maske in Dokument speichern"
Beitrag von: Peter Klett am 31.01.13 - 17:18:48
Zwar beantworte ich nicht konkret Deine Frage, möchte aber gerne etwas zum Thema "Masken im Dokument speichern" beitragen.

Diese Option würde ich niemals verwenden. Die wichtigsten Gründe dazu:

- keine nachträgliche Fehlerkorrektur in bestehenden Dokumenten möglich
- gleiches gilt für Funktionserweiterungen oder Layoutänderungen
- Mails mit gespeicherten Masken würde ich im System generell verbieten (technisch ausschließen), da die ideale Träger für Trojaner sind
- höherer Speicherbedarf je Dokument

Wie würde ich nun das von Dir geschilderte Grundproblem lösen (also die Erhaltung alter Versionen):

Die variablen Teile der Masken würde ich in Teilmasken auslagern und diese als berechnete Teilmaske in die Maske aufnehmen. Der Name der Teilmaske steht in einem Feld der Maske, das berechnet beim Anlegen ist.
Ändert sich nun der Inhalt eines Formulars, erstelle ich eine Kopie der Teilmaske und gebe im Namen eine Versionsnummer mit. In der zugehörigen Maske ändere ich die Formel im Teilmaskenfeld auf den neuen Namen.

Alle Dokumente, die mit der alten (Teil-)Maske erstellt wurden, haben das alte Aussehen, die danach erstellten das neue.

Einziger Nachteil ist eine höhere Anzahl von Teilmasken, da alle Versionen der Teilmasken vorgehalten werden müssen. Um das Problem, dass zu jeder Teilmaskenart (bei Dir wohl die 300) noch eine Maske exisitieren müsste, ließe sich so umgehen, indem man eine einzige Trägermaske baut und beim Erstellen von Dokumenten die Art des zu erstellenden Dokuments auswählen lässt, die dann das Feld mit der Teilmaske steuert. In dieser einen Maske sind dann die Basisfunktionen eines Dokuments der Datenbank, so dass die nicht von Maske zu Maske kopiert werden müssen (was man natürlich auch mittels einer (System-)Teilmaske realisieren könnte).
Titel: Re: Teilmaske in Teilmaske & "Maske in Dokument speichern"
Beitrag von: Tode am 31.01.13 - 17:20:35
genau wie Peter geschrieben hat, würde ich es auch machen...

"Maske im Dokument speichern" ist eine sehr schlechte Idee... Was Du erreichen willst, lässt sich mit anderen Mitteln viel Besser erreichen, ohne die Dokumente aufzublähen und ohne diesen Bug.

Ich vermute, mit der Option "Maske in Dokument speichern" kann Dir hier kaum einer weiterhelfen, weil bei allen "anständigen" ;-) Entwicklern, die ich kenne,
werden gespeicherte Masken gemieden wie das Weihwasser vom Teufel...
Titel: Re: Teilmaske in Teilmaske & "Maske in Dokument speichern"
Beitrag von: DaemoN am 01.02.13 - 08:35:05
danke für euer feedback! Peter, dein lösungsansatz klingt interessant, bedeutet aber dass wir unser system komplett umstellen müssten. ich werde das bei den kollegen mal ansprechen und schauen was der chef dazu meint :D

super sache dass man hier immer kompetente hilfe bekommt 8)