Willkommen
Gast
. Bitte
einloggen
oder
registrieren
.
24.05.12 - 08:55:59
News:
Schnellsuche:
Das Notes Forum
Lotus Notes / Domino 7
ND7: Entwicklung
(Moderatoren:
eknori
,
Glombi
,
koehlerbv
)
Shared Field
« vorheriges
nächstes »
Seiten:
1
[
2
]
Autor
Thema: Shared Field (Gelesen 1188 mal)
koehlerbv
Moderator
Gold Platin u.s.w. member:)
Online
Geschlecht:
Beiträge: 19052
Re: Shared Field
«
Antworten #20 am:
08.01.07 - 23:20:22 »
Chris, ich halte den serverbasierenden Agent sogar für den einzig wirklich gangbaren Weg (back to the centralized roots). Run on server tut aber nicht not. es braucht einen "verantwortlichen Server", und dort sollte das Teil entweder scheduled laufen oder triggered: Wenn Dokumente erstellt oder modifiziert wurden. Echtzeit bekommt man sowieso nicht hin.
Das steht aber alles schon hier im Forum in zahlreichen Postings. Ich sehe aber ein, dass es doch irgendwie immer wieder diskutiert werden muss, da man ja doch nicht alle Beiträge hierzu gleich findet.
Der erste Lösungsansatz muss jedenfalls lauten: Wenn man wirklich (!!!) zwingend fortlaufende Nummern benötigt (!!!): Alles bedenken, Forum durchsuchen, vor allem: Notes / Domino wirklich verstehen (jeder, der das nicht tut, sollte dann eben erstmal bis zur Änderung dieses Zustands die Hände heben). Wenn man dann immer noch auf fortlaufenden Nummern besteht: Eigentlich ist dann die Applikation Notes / Domino falsch ausgewählt.
Bernhard
«
Letzte Änderung: 08.01.07 - 23:28:44 von koehlerbv
»
Gespeichert
LN4ever
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 505
Re: Shared Field
«
Antworten #21 am:
09.01.07 - 11:53:37 »
In vielen Fällen, in denen ein Pflichtenheft "fortlaufende Nummern" ausweist, sind eigentlich nur "eindeutige Nummern" gemeint - und auch die müssen nicht zwangsläufig reine Zahlen sein.
Für ein weltweit auf vielen Servern eingesetztes Reklamationssystem habe ich z.B. die folgende Nummerngenerierung verwendet:
njahr:=@Year(@Now);
nmonat:=@Month(@Now);
ntag:=((@Date(@Now)-@Date(njahr;1;1))/24/3600)+1;
nStunde:=@Hour(@Now);
nMin:=@Minute(@Now);
TextNr:=@Text(@Modulo(nJahr;10))+@Right("000" + @Text(ntag); 3)+"."+@Right("0000"+@Text(100*nStunde+nMin);4);
n1:=@Name([CN];@UserName);
Initialen := @Left(@RightBack(n1; " "); 2) + @Left(n1; 2);
Die Letzte Ziffer des aktuellen Jahres, die Tageszahl im Jahr, die aktuelle Uhrzeit in Stunden und Minuten, die Initialen des Mitarbeiters. Davor wird noch ein P für eine Produkt- und ein S für eine Servicereklamation gesetzt. Heraus kommt etwas wie
P-7009.1137 TaFa
Der Erkennungs- und Merkwert für die Mitarbeiter ist hoch. Der Kunde kann an der Reklamationsnummer nicht die Zahl der Reklamationen indirekt ablesen (das sollte man bei allzu sprechenden Nummern durchaus auch im Hinterkopf behalten). Die Anwender kennen die Initialen ihrer Kollegen und sehen sofort an der Nummer, wer diese Reklamation angelegt hat. Sie sehen auch sofort an der Nummer das ungefähre Alter dieser Reklamation. Im Normalfall muß man sich nur eine dreistellige Zahl merken (die 7 gilt ja für jede Reklamation aus diesem Jahr - und es gibt nur wenige Tage, an denen mehr als eine Reklamation eingestellt wird). Wenn mehrere Dokumente am gleichen Tag erstellt werden, kann man diese genau voneinander unterscheiden.
Für den konkreten Anwendungsfall sollte man nach solchen Lösungen eher suchen als sich immer wieder auf die eigentlich unlösbare Aufgabe der fortlaufenden Nummernvergabe zu stürzen.
In 14 Jahren Echtbetrieb gab es keinen Fall einer doppelten Nummer.
Gruß
Norbert
Gespeichert
Situs vilate in isse tabernit.
SD
Aktives Mitglied
Offline
Beiträge: 102
Re: Shared Field
«
Antworten #22 am:
10.01.07 - 09:03:46 »
Wir haben das in einer Datenbank nach dem Prinzip doppelt hält besser gelöst.
Einmal über ein Dokument (kein Profildokument... Caching hat der Teufel gemacht!), in dem die aktuelle Nummer gespeichert ist. Die wird im Querysave ausgelesen und inkrementiert und wieder reingespeichert. Außerdem haben wir noch eine nach der Nummer sortierte Ansicht von der wir das erste Dokument holen und schauen, ob die neue Nummer auch wirklich größer ist als die größte in der Datenbank.
Damit sind wir seit gut 2 Jahren und bis zu 2000 Dokumenten pro Jahr sehr zufrieden.
Gespeichert
Axel
Moderatoren
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 8484
It's not a bug, it's Notes
Re: Shared Field
«
Antworten #23 am:
10.01.07 - 09:48:27 »
@SD
Ich will die Diskussion über fortlaufende Nummerierung nicht nochmal anstossen, aber nur soviel sei gesagt, auch deine Lösung unterliegt den, schon mehrfach angesprochenen, Risiken.
Axel
Gespeichert
Ohne Computer wären wir noch lange nicht hinterm Mond!
Server: 6.5.x; 7.0.x; 8.5.1 auf Win2000/Win2003 (R2) 32/64bit
Clients: 6.5.x bis 8.5.1 dt. und engl. auf W2K und WinXP
LN4ever
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 505
Re: Shared Field
«
Antworten #24 am:
10.01.07 - 10:54:49 »
Es ist erstaunlich und erschreckend, wie beratungsresistent jemand ist, wenn er sich in den Kopf gesetzt hat, eine fortlaufende Nummer mit Notes zu realisieren.
Die folgenden Punkte sind zwingend erforderlich, wenn es denn tatsächlich gelingen soll:
- alle Anwender vergeben neue Nummern in nur einer Replik (in Repliken auf anderen Servern oder in lokalen Repliken können keine neuen Dokumente mit Nummernvergabe erstellt werden)
- du stellst sicher, daß ein Anwender zur gleichen Zeit nur ein Dokument erstellen kann (z.B. durch Erstellung des Dokuments in einer Dialogbox)
- du stellst sicher, daß für die Ersteller von Nummern keine Leserbeschränkungen auf Dokumente mit fortlaufenden Nummern gibt oder du speicherst die letzte vergebene Nummer in einem separaten leserfeldfreien Dokument und stellst sicher, daß dieses Dokument nie einen Replikationskonflikt hat.
Der Vorschlag, eine vorläufige Nummer zu vergeben und die endgültige Nummer von einem Agenten eintragen zu lassen, der nur auf einem Server läuft, berücksichtigt genau diese Punkte.
Ansonsten bewegst du dich für den Satz "Ich erhalte eine eindeutige fortlaufende Nummer" auf der Skala der Treffsicherheit nur zwischen
"Manchmal", "ziemlich oft" und "meistens".
Die zwei-, drei- oder fünffache "Absicherung" führt bestenfalls zu einer Verschiebung hin zu "Meistens", keinesfalls aber zu einem "Immer".
Wenn dir das reicht, reihst du dich in die lange Schlange derer ein, die das schon vor dir probiert haben - und auch gescheitert sind. Aber dann mußt du dich fragen lassen, wofür du diese Nummer eigentlich brauchst.
Gruß
Norbert
Gespeichert
Situs vilate in isse tabernit.
SD
Aktives Mitglied
Offline
Beiträge: 102
Re: Shared Field
«
Antworten #25 am:
10.01.07 - 12:05:33 »
Naja, in den meisten Fällen ist es ja nicht so, dass jemandem der Herzschrittmacher stehenbleibt, wenn mal eine doppelte Nummer vorkommt.
Gespeichert
Seiten:
1
[
2
]
« vorheriges
nächstes »
Gehe zu:
Bitte wählen Sie ein Ziel:
-----------------------------
ATNOTES TEAM
-----------------------------
=> Neuigkeiten - Wichtiges
===> Archiv
-----------------------------
Lotus Notes / Domino 8
-----------------------------
=> ND8: Administration & Userprobleme
=> ND8: Entwicklung
=> ND8: Entwicklung - XPages
-----------------------------
Lotus Notes / Domino 7
-----------------------------
=> ND7: Administration & Userprobleme
=> ND7: Entwicklung
-----------------------------
Lotus Notes / Domino 6
-----------------------------
=> ND6: Administration & Userprobleme
=> ND6: Entwicklung
-----------------------------
Domino 5 und frühere Versionen
-----------------------------
=> Administration & Userprobleme
=> Entwicklung
-----------------------------
Lotus Notes / Domino Sonstiges
-----------------------------
=> Tipps und Tricks
=> Tools & Downloads
=> Projekt Bereich
===> Help-Desk Applikation !!Help!!
=> Java und .NET mit Notes/Domino
=> Companion Products
=> OLE/COM-Programmierung
=> Aus- und Weiterbildung
-----------------------------
Best Practices
-----------------------------
=> At Notes Best Practices
=> Diskussionen zu Best Practices
-----------------------------
Sonstiges
-----------------------------
=> Offtopic
=> Kritik & Vorschläge
=> Infrastruktur
=> Job Suche/Angebote
1 Stunde
1 Tag
1 Woche
1 Monat
Immer
Einloggen mit Benutzername, Passwort und Sitzungslänge
Powered by SMF 1.1.16
|
SMF © 2006, Simple Machines
Impressum Atnotes.de -
Powered by Syslords Solutions -
Datenschutz
| Partner:
Tinte / Toner günstig