Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: fiuman007 am 28.06.04 - 15:47:06
-
Hallo,
ich habe eine Maske die für die Auftragserfassung dient.
Da sind mehrere Felder und Abfragen drin.
Ich würde gerne, dass sich das Feld "ProjectNo" automatisch setzt.
Sprich: Wenn ich die Maske starte (aufrufe) dass in dem Feld ProjectNummer gleich eine Zahl steht. z.B. 12001.
Es soll dabei überprüft werden was die kleinste ProjektNummer in der DB ist und dann um Eins hochzählen. Also wenn 12000 schon vorhanden, 12001 vergeben.
Geht so was in in Notes überhaupt ?
Dankeschön
-
Das ist eines unserer Lieblingsthemen hier im Forum. Suche mal ein bisschen...
Andreas
-
Mal so ein erster Hinweis - im Thread gibt es weitere Verweise. Und eigentlich wird dort alles gesagt:
http://www.atnotes.de/index.php?board=7;action=display;threadid=11089;start=0 (http://www.atnotes.de/index.php?board=7;action=display;threadid=11089;start=0)
Bernhard
-
Oh je, oh je. Also ich kanns vergessen ! ?
-
Das kommt auf Deine Rahmenbedingungen drauf an:
- Zeitversetzte Erstellung der Nummern möglich: Ja.
- Neue Dokumente dürfen nur auf einem einzigen Server erstellt werden: Ja.
- Sonst: Nein.
Such mal hier im Forum nach "sequentiell", "fortlaufend", "Serien" usw. Es gibt schon soviel Material dazu, dass Du bestimmt schnell verstehen wirst, das wir zu diesem Thema nicht den 187sten Beitrag in Wiederholung schreiben wollen ;)
Bernhard
-
Hehe. Ja klar. Ich suche mal bisschen rum.
Eigentlich müsste es gehen. Die DB liegt auf einen einzigen Server.
Und es werden auch max 3-4 user gleichzeitig drauf zugreifen.
Also es kommen am Tag max. 4-5 Projekte rein. Deswegen denke ich dass es irgendwie funktionieren müsste.
Vielen Dank für die Antworten :)
-
Unter diesen Umständen - und wenn sich diese nicht ändern werden (was Euch ja zu wünschen wäre ;D) - sollte es kein Problem geben.
Du musst sicherstellen, dass ein neues Projekt nur auf dem einen zugewiesenen Server erstellt werden darf. Und Du kannst das nicht bei der Erstellung des Dokumentes, sondern erst beim Speichern machen, weil:
1) User A erstellt ein neues Dokument (und das dauert ein wenig ...)
User B macht kurz darauf ein neues Projekt auf - da das von User A noch nicht gespeichert ist, bekommt er die selbe Nummer.
2) Das Projekt könnte ja vor dem Speichern auch wieder verworfen werden - dann ist eine Nummer unbesetzt.
An alle, die später mal auf diesen Thread stossen: Es ist unbedingt erforderlich, sich vorab die Rahmenbedingungen, die fiuman007 nennt, genau anzuschauen !
Bernhard
-
Vorsicht mit Notes-Power-Usern, die sich eine lokale Replik auf ihren Desktop ziehen...
-
Ja genau. Also muss ich jetzt nur noch einen Algorithmus suchen der mir die Nummer generiert (berechnet)
-
Ja genau. Also muss ich jetzt nur noch einen Algorithmus suchen der mir die Nummer generiert (berechnet)
Oh das weiss ich:
neueNummer = bisherigeHoechsteNummer + 1
Für Programmiertricks zur Ermittlung der bisherigen höchsten Nummer findest du über die Suche dieses Forums umfangreiches und kompetentes Studienmaterial.
Schwieriger ist es, die Nummernvergabe zu synchronisieren.
Ich verstehe darunter: Sicherzustellen, dass sich bei der Vergabe einer neuen Nummer tatsächlich alle vergebenen Projektnummern in der Datenbank befinden, in der die neue Nummer erzeugt wird.
-
Jo, Axel. Und wenn wir jetzt noch wüssten, welches KnowHow fiuman zur Verfügung steht (LS; @functions) ... Und wie er nun wirklich absichert, dass neue Projekte nur auf dem einen Server erstellt werden können ... Und was er zur Problematik "Nummer bei Dokument-Erstellung oder -speicherung" sagt oder ob die Nummern nicht doch durch einen periodischen Agenten vergeben werden können ... Dann könnte man wieder aktiv werden ;)
Bernhard
-
??? ::)
Also ich bin da überhaupt nicht so fit. Paar so vorgegebene Sachen kann ich machen. Und paar kurze Formeln. Ich meine die DB ist auch schon weitgehend fertig. Es fehlen da noch die paar "Feinheiten" ;)
-
Ja genau. Also muss ich jetzt nur noch einen Algorithmus suchen der mir die Nummer generiert (berechnet)
Oh das weiss ich:
neueNummer = bisherigeHoechsteNummer + 1
wo du nur immer diese Algorithmen her hast :o
-
??? ::)
Also ich bin da überhaupt nicht so fit. Paar so vorgegebene Sachen kann ich machen. Und paar kurze Formeln. Ich meine die DB ist auch schon weitgehend fertig. Es fehlen da noch die paar "Feinheiten" ;)
Das riecht jetzt nach Praktikant. Dann solltest Du die Verweise hier im Forum nutzen und darlegen, warum LN und sequentielle Nummern ein "No-no" sind. Das bringt mehr Punkte. Oder frag' Deinen Betreuer.
Wenn meine Vermutung falsch ist, dann solltet Ihr dringend einen fachmann ins Haus holen - zumindest für ein Training on the job. Dann bist Du in wenigen Tagen sicherer auf dem richtigen Weg als alleine oder über Foren als in etlichen Monaten.
Bernhard
-
Richtig geraten Bernhard. ;)
Tja leider hab ich keinen Betreuer mehr. Outsourcing oder so was :(
Also stehe ich jetzt mit meiner DB da und muss sie bis Mitte August fertig bekommen.
Sonst :-X
;D
-
Jo, dann würde ich für die Praktikumsarbeit doch lieber dediziert nachweisen, warum fortlaufende Nummern in Notes à priori verheerend sind und dem Notes-Konzept widersprechen. Da bist Du auf der ganz, ganz sicheren Seite, und Deine Praktikumsfirma kann dann entgegen Deinen Warnungen die Aufgabe immer noch outsourcen. Lass' sie mal machen ... Deine Ausbildungsstätte sollte Deinen Ausführungen bestimmt folgen. Der Praktikumsbetrieb kann Diur unter diesen Umständen wurscht sein - die wollen es ja nicht anders (als erst billig und dann richtig teuer).
Bei der Argumentesammlung helfen Dir hier bestimmt noch mehr Profs. Ich biete mich aber auch gerne an :) (muss ja nur mal zusammen sammeln, was hier dazu schon geschrieben habe ;D)
Bernhard
-
Ich überlege mir (fast) ernsthaft, einen Servertask zu entwickeln, der Domänenweit eine laufende Nummer vergibt.
Vielleicht biete ich das ja als Dienst im Web an - pro Nummer ne Mark, äh Euro ;D
Andreas
-
;D Ich mach' mit ! Du schreibst die erste, ich die zweite Zeile ;D
Firmen, die solche Stunts betreiben wie mit fiuman, zahlen vermutlichen (unter heftigen Fluchen auf Lotus Notes) auch solchen Schwachfug ...
Bernhard
PS: Ich werde ab August einen Praktikanten bei einer Firma betreuen, die auch "outgesourced" hat. Aber den Praktikanten lassen sie halt nicht im Regen stehen !
-
http://www-10.lotus.com/ldd/sandbox.nsf/ecc552f1ab6e46e4852568a90055c4cd/7d425c5fa551055685256b560058219d?OpenDocument&Highlight=0,sequential (http://www-10.lotus.com/ldd/sandbox.nsf/ecc552f1ab6e46e4852568a90055c4cd/7d425c5fa551055685256b560058219d?OpenDocument&Highlight=0,sequential) :-X
-
Ja das wäre schon eine Sache Glombi. Kannst dann auch zu uns vorbei schauen Bernhard. Ich kann jede Hilfe brauchen ;)
-
http://www-10.lotus.com/ldd/sandbox.nsf/ecc552f1ab6e46e4852568a90055c4cd/7d425c5fa551055685256b560058219d?OpenDocument&Highlight=0,sequential (http://www-10.lotus.com/ldd/sandbox.nsf/ecc552f1ab6e46e4852568a90055c4cd/7d425c5fa551055685256b560058219d?OpenDocument&Highlight=0,sequential) :-X
I tested it in R6 but it is not running for the web application
Das können wir aber bestimmt besser ;D
Andreas
-
Ulrichs Link verweist auf einen Artikel, den fiuman wunderbar hernehmen kann, um das "no-no" aufzuzeigen - oder den Aufwand, den man betreiben müsste. Selbst die Ausrichtung im Artikel auf's Web greift ja nicht wirklich - wenn dann jemanden einfällt, load balancing zu betreiben ;D
Aber jetzt sind wir ja wieder in der uralten Diskussion ...
Bernhard
PS @fiuman: Klar käme ich auch bei Euch vorbei - wenn Dein Praktikumsbetrieb das bezahlt ;)
-
PS @fiuman: Klar käme ich auch bei Euch vorbei - wenn Dein Praktikumsbetrieb das bezahlt ;)
Ich komme mit, dann gibt's Mengenrabatt ;D
Wo müssen wir hin ;)
-
Hahah. Alles klar. Nach Landshut. Niederbayern :)