AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
17.07.18 - 08:08:54
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Lotus Notes / Domino 8
| |-+  ND8: Entwicklung (Moderatoren: Axel, Thomas Schulte, koehlerbv)
| | |-+  Scriptbibliotheken & Teilmasken
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Scriptbibliotheken & Teilmasken  (Gelesen 1451 mal)
Michstar
Frischling
*
Offline Offline

Beiträge: 8


« am: 01.02.17 - 09:18:53 »

Hallo liebe Entwicklungskollegen,

ich habe mal eine Frage zu Scriptbibliotheken in Teilmasken, oder um genau zu sein die Verwendung von Funktionen aus Scriptbibliotheken in Teilmasken.

Konnte zu dem Thema grade nichts finden im Forum (ev. bin ich blind).

Ich schreibe mir grundsätzlich so ziemlich alle Funktionen in Scriptbibliotheken zusammen, zumindest eine pro Datenbank mit den wichtigsten Funktionen - aber auch für spezielle Funktionen für einzelnen Masken. Diese werden logischerweise in die Maske gehängt/eingebunden, da aber die Masken meist Teilmasken enthalten, welche sich bestimmten Themen widmen, werden auch dort diverse Funktionen aufgerufen (z.B. in Buttons zum Auswählen und/oder Autobefüllen von Datensätzen, Linkfunktionen in Headern etc.).

Es funktioniert soweit auch alles - nur bekomme ich logischer einen Fehler in der Teilmasken, da die Funktionen nicht definiert sind (ich kann die Scriptbibliothek ja nicht zwei- oder mehrfach (über die Teilmaske) in eine Maske einbinden). Gibt es hier irgendeine Lösung dazu? Ich denke hier an soetwas wie in der Java Entwicklung mit Schnittstellen die ich irgendwie in der Teilmaske definieren kann, sodass der Fehler weg is - die Funktionalität selbst wird dann über die Maske selbst zur Verfügung gestellt.

Ich hoffe es ist verständlich was ich meine - ist grundsätzlich rein kosmetisch, aber ich hab ungern unnötige Fehler in den produktiven Masken bei der Entwicklung.

Danke für eure Unterstützung!

Grüße
Michael
Gespeichert
eknori
@Notes Preisträger
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 10955


« Antworten #1 am: 01.02.17 - 09:46:10 »

Also

Maske A hat in den Globals ein

Code:
Use "de.eknori.ls.tools"

Maske A enthält eine SubA

Und SubA kann sehr wohl in den Globals ein

Code:
Use "de.eknori.ls.tools"

enthalten.

Der Preprocessor / Compiler kümmert sich um den Rest

In Java ist es doch auch nicht anders; auch da kannst du den gleichen Import mehrfach in unterschiedlichen Klassen haben und die Klassen in einer weiteren Klasse verwenden
« Letzte Änderung: 01.02.17 - 09:47:47 von eknori » Gespeichert
Michstar
Frischling
*
Offline Offline

Beiträge: 8


« Antworten #2 am: 01.02.17 - 09:58:49 »

Danke für die schnelle Antwort. Muss ehrlich sagen, dass ich grad komplett verwirrt bin, bin mir sicher das gefühlte 100 mal probiert zu haben mit dem Resultat eines Compilerfehlers... (doppelte Deklaration von Variablen, Funktionen etc.).

Hmpf, habs grad probiert und jetzt gehts...

Naja, danke!! Kann ich zumindest sichergehen, dass es beim nächsten mal sicher nicht an dem liegt.

*peinlich peinlich* ;-)

LG
Gespeichert
Tobi2283
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 31


« Antworten #3 am: 17.04.18 - 16:56:48 »

Hallo zusammen,

sorry, dass ich dieses etwas ältere Thema nochmal aufgreife.
Aber es spiegelt in etwa mein Problem wider.

Und zwar wollte ich ganz schlau sein, hab einige Teilmasken gebaut, welche wiederum in eine "finale" Teilmaske eingefügt werden.
Diese "finalen" Teilmasken beginnen mit einem besonderen Kürzel und werden beim Anlegen eines Dokumentes dynamisch geladen und über eine Benutzerabfrage anschließend ausgewählt.

Jetzt hab ich in jede Teilmaske (die mit den einzelnen Bausteinen und in den "finalen" Teilmasken) unter Global eine eigene ScriptLib eingefügt (hier: Use "Beschlussvorlagen").
Darin werden einige Funktion ausgelagert, sowie eine unter Declaration eingefügte String-Variable, welche beim springen in ein Feld den aktuellen Feldnamen aufnimmt soll und beim rausspringen aus dem Feld eine Berechnung durchführt oder einen Wert ergänzt.

Sowas hab ich schon bei anderen Formularen gemacht, und es hat auch immer geklappt, einziger Unterschied dabei war, dass ich nie in eine Teilmaske weitere Teilmasken eingefügt hab.

Kann Notes bzw. der Compiler wohl nicht mit Teilmasken in Teilmasken umgehen?
Und kann bzw. mag mir einer von Euch einen Deckanstoß geben, wie ich hier am besten vorgehen könnte?

liebe Grüße aus dem schönen Bayern

Tobi
Gespeichert
umi
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 2006


one notes to rule'em all, one notes to find'em....


WWW
« Antworten #4 am: 17.04.18 - 18:01:48 »

Moin
Die globalen "String Variablen" die sind aber schon eineindeutig oder ?
Gespeichert

Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>
Tobi2283
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 31


« Antworten #5 am: 18.04.18 - 08:07:52 »

Guten Morgen,

ja, die sind immer gleich.

In der ScriptLib hab ich unter "Declaration" eingefügt:

'Dim aktuellesFeld as string'

Somit sollte es - und fast überall klappt es auch - in den Globals erscheinen.

Nur bei den Teilmasken nicht, wo ich in eine Teilmaske eine oder weitere andere Teilmasken einfüge.
Da erscheint zwar die Variable 'aktuellesFeld', allerdings nicht in den Globals.
Wenn ich den Debugger einschalte, dann sieht man, dass beim springen in ein Feld die Variable versorgt wird, beim rausspringen allerdings der Wert wieder leer ist.

Ich hänge mal zwei Bilder aus dem Debugger an...
Gespeichert
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: