Willkommen
Gast
. Bitte
einloggen
oder
registrieren
.
22.05.12 - 12:10:44
News:
Schnellsuche:
Das Notes Forum
Domino 5 und frühere Versionen
Entwicklung
(Moderatoren:
Axel
,
Don Pasquale
,
eknori
,
Hoshee
,
ata
,
Thomas Schulte
,
koehlerbv
)
Erstellen von Kundennummern
« vorheriges
nächstes »
Seiten:
[
1
]
Autor
Thema: Erstellen von Kundennummern (Gelesen 2357 mal)
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Erstellen von Kundennummern
«
am:
30.12.03 - 17:22:22 »
Diese Frage wurde bestimmt schon häufig gestellt ich möchte aber trotzdem dieses Thema nochmal ansprechen.
Was meine ich mit Kundennummern ? In einer Maske soll es ein Feld ( berechnet ) geben welches sich immer die größte Zahl aus einer bestimmten Spalte einer liste holt und diese um eins erhöht. mit dem abspeichern der Maske ist dieser Datensatz in der Liste und enthaelt wieder die Max Kundennummer.
Jetzt meine Frage wie bekomme ich die größte Zahl einer Spalte zurückgegeben.
Kann man das so realisieren ??
Gespeichert
jeder sollte so eine signatuer haben.
Glombi
Global Moderator
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 8401
Re:Erstellen von Kundennummern
«
Antworten #1 am:
30.12.03 - 17:25:15 »
Du sortierst die Spalte absteigend, so dass die höchste Nummer ganz oben steht. Dann machst Du ein
_Nummer := @DbColumn("Notes":"NoCache";"";"Ansicht";1);
und mit
@Subset(_Nummer;1)
erhälst Du die Zahl.
Andreas
Gespeichert
IBM Certified Application Developer - Lotus Notes and Domino 8
Glombitza Informations-Systeme ist nun Teamstudio Bronze Partner!
Ihr interessiert Euch für Teamstudio Produkte, Spam-Lösungen, Antiviren-Lösungen oder Lotus Notes Lizenzen? Dann einfach Mail oder PM an mich!
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Re:Erstellen von Kundennummern
«
Antworten #2 am:
30.12.03 - 18:03:27 »
also ich habe s mal so ausprobiert
ich habe die Kundennr absteigend sortiert (in der namen liste) also kleinste zahl ganz oben.
ich habe nun ein datensatz erstellt der als kundennummer die eins hat damit ein vorgabe wert da ist.
dann gehe ich in die eingabe maske auf das NR Feld und setzte es auf berechnet um dann diesen code dort einzufügen
Nummer := @DbColumn("Notes":"NoCache";"";"Namen";1);
@Set( "Nummer";@TextToNumber(@Subset(Nummer;1))+1)
mit deinem code incremtierst du nicht.
wenn ich jetzt einen weiteren Datensatz einfügen möchte funktioniert das auch, er zeigt mir die 2 in der Maske und Speichert diese auch. Wenn ich einen weiteren Datensatz speichern möchte kommt ein Fehler
Die Datentypen der beiden Vergleichsergebnisse sind nicht kompatibel
woran kann das liegen
Gespeichert
jeder sollte so eine signatuer haben.
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Re:Erstellen von Kundennummern
«
Antworten #3 am:
30.12.03 - 18:10:41 »
hmmm ich hab grad nochmal die Hilfe durchgeschaut, nach der es so gar nicht funktionieren kann. Dbcolumn sucht alle Werte einer Spalte raus. Sobald 2 Werte in einer Spalte stehen wird keine Zahl mehr zurückgegeben, ich nehme an eine Liste.
Wie bekomme ich denn nun die unterste bzw die oberste Zahl (je nachdem wie man sortiert) heraus.
Gespeichert
jeder sollte so eine signatuer haben.
TMC
Freund des Hauses!
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 3660
meden agan
Re:Erstellen von Kundennummern
«
Antworten #4 am:
30.12.03 - 20:40:24 »
Wie wärs mit einem kleinen Script:
Code:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
If Source.IsNewDoc Then
Set db = session.CurrentDatabase
Set view = db.GetView("DEINE VIEW")
Set doc = view.GetLastdocument
If doc Is Nothing Then
Source.Document.KUNDENNUMMER = 1
Else
Source.Document.KUNDENNUMMER = doc.KUNDENNUMMER(0) + 1
End If
End If
Dazu hat Deine View 1 Spalte mit der Kundennummer, aufsteigend sortiert (wegen dem GetLastdocument). Kannst natürlich auch absteigend sortieren, dann schreibste halt GetFirstdocument
Du weißt ja hoffentlich über die Problematik der fortlaufenden Nr. Bescheid, siehe auch z.B. auch hier:
http://www.atnotes.de/index.php?board=7;action=display;threadid=12905
TMC
«
Letzte Änderung: 30.12.03 - 20:42:02 von TMC
»
Gespeichert
Matthias
—
A good programmer is someone who looks both ways before crossing a one-way street.
Axel_Janssen
Gold Platin u.s.w. member:)
Offline
Beiträge: 769
Re:Erstellen von Kundennummern
«
Antworten #5 am:
30.12.03 - 21:07:31 »
ich würde immer view refresh da einfügen:
Code:
Set view = db.GetView("DEINE VIEW")
view.refresh
Set doc = view.GetLastdocument
Was machst du, wenn Dokumente gelöscht werden. Dann sind Stellen frei.
Ich empfehle dringend, dies als nicht so wichtig anzusehen und nicht mit diesen beliebten Experimenten anzufangen, dass diese Lücken gefüllt werden. Das kompliziert nur den code (mit den bekannten negativen Folgen für Lesbarkeit und Performance) und bringt meistens nix!
Gespeichert
... design patterns are abstract designs that help identify the structure and elements involved in a specific design solution. From this, a concrete implementation can be produced.
Kyle Brown
Semeaphoros
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 8152
ho semeaphoros - agr.: der Notesträger
Re:Erstellen von Kundennummern
«
Antworten #6 am:
30.12.03 - 21:23:56 »
Im Gegenteil, diese Lücken in der Nummer sind eigentlich wichtige Hinweise dafür, dass da mal was war.
Gespeichert
Jens-B. Augustiny
Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen
Homepage:
http://www.ligonet.ch
IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Re:Erstellen von Kundennummern
«
Antworten #7 am:
30.12.03 - 21:28:59 »
Wir behandeln notes im Rahmen eins Studienfaches wir sollen einige geschaeftsprozesse mit notes umsetzten in meinem fall rechnungen erstellen. es ist nicht so wichtig das alles bis ins letzte Detail funktioniert. wichtig ist nur das es grundlegend funktioniert.
Ich habe diesen thread gelesen und in meinem Fall ist es nicht so wichtig all die aufgeführten Sachen zu beachten.
Gespeichert
jeder sollte so eine signatuer haben.
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Re:Erstellen von Kundennummern
«
Antworten #8 am:
30.12.03 - 21:34:14 »
aehm ich bin wirklich nicht sehr firm in Notes wo kommt das Script jetzt genau hin ??
wenn ich es in den Vorgabe wert kopiere tut sich da nix es kommt nur ein fehler.
Gespeichert
jeder sollte so eine signatuer haben.
TMC
Freund des Hauses!
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 3660
meden agan
Re:Erstellen von Kundennummern
«
Antworten #9 am:
30.12.03 - 21:40:40 »
Sollte z.B. in einen Maskenevent, Querysave z.B.
TMC
Gespeichert
Matthias
—
A good programmer is someone who looks both ways before crossing a one-way street.
TMC
Freund des Hauses!
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 3660
meden agan
Re:Erstellen von Kundennummern
«
Antworten #10 am:
30.12.03 - 21:45:27 »
Kommt natürlich auf den Hintergrund an.
Soll die Lfd. Nummer z.B. beim Klick auf einen Button "Speichern" erzeugt werden musst Du da noch ein paar Dims und Sets machen.
Dim session As New NotesSession
Dim uiws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim db As NotesDatabase
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set uidoc = uiws.CurrentDocument
Set doc = uidoc.Document
Die Bezeichnungen (Source etc.) musst Du entsprechend anpassen.
TMC
Gespeichert
Matthias
—
A good programmer is someone who looks both ways before crossing a one-way street.
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Re:Erstellen von Kundennummern
«
Antworten #11 am:
30.12.03 - 21:56:43 »
ok ich habe es jetzt so gemacht wie du sagtest
Sub Querysave(Source As Notesuidocument, Continue As Variant)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
If Source.IsNewDoc Then
Set db = session.CurrentDatabase
Set view = db.GetView("Namen")
Set doc = view.GetLastdocument
If doc Is Nothing Then
Source.Document.nummernfeld = 1
Else
Source.Document.nummernfeld = doc.nummernfeld(0) + 1
End If
End If
End Sub
ich bekomme eine Fehlermeldung Type missmatch nach dem ich auf speichern gedrückt habe. Also er speichert den datensatz allerdings vergiebt er keine numme :/
Gespeichert
jeder sollte so eine signatuer haben.
TMC
Freund des Hauses!
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 3660
meden agan
Re:Erstellen von Kundennummern
«
Antworten #12 am:
30.12.03 - 22:12:31 »
Bei mir klappt es.
Ist Dein "nummernfeld" vom Typ Zahl ?
Sollte es sein.
Lösche auch nochmal alle bisherigen Dokumente und lege dann mal ein paar neue an.
Ansonsten starte mal den Debugger und poste, in welcher Zeile er hängt.
Aber Type Mismatch kommt mir irgendwie so vor, dass Du da ein Textfeld verwendest (bzw. der Wert des letzten Doks vom Typ Text ist).
Ach ja, und füge auch den ViewRefresh ein wie von Axel gepostet, der Tipp ist gut! (hat aber jetzt nix mit der Fehlermeldung zu tun)
TMC
«
Letzte Änderung: 30.12.03 - 22:15:06 von TMC
»
Gespeichert
Matthias
—
A good programmer is someone who looks both ways before crossing a one-way street.
TeeJay
Junior Mitglied
Offline
Geschlecht:
Beiträge: 80
Sagen wir ich mag das Forum :)
Re:Erstellen von Kundennummern
«
Antworten #13 am:
30.12.03 - 22:33:40 »
ok so funzt es jetzt habt vielen dank ich werde morgen bestimmt noch ein paar Fragen loswerden.
MFG TeeJay
Gespeichert
jeder sollte so eine signatuer haben.
TMC
Freund des Hauses!
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 3660
meden agan
Re:Erstellen von Kundennummern
«
Antworten #14 am:
30.12.03 - 22:44:06 »
schön dass es klappt.
Setzt Du bitte den Thread noch auf Erledigt?
Geht mit diesem Button:
TMC
Gespeichert
Matthias
—
A good programmer is someone who looks both ways before crossing a one-way street.
koehlerbv
Moderator
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 19044
Re: Erstellen von Kundennummern
«
Antworten #15 am:
05.07.08 - 16:35:56 »
Auch, wenn dies ein uralter Thread ist (aber ein Anfänger ist heute bereits darüber gestolpert und hat das Dokument gefunden): Dieses Verfahren wird nicht sicher funktionieren, und die mehrfache Vergabe von Nummern ist mehr als wahrscheinlich:
- User A speichert ein Dokument auf Server X
- User B speichert ein Dokument auf Server Y
- User C speichert ein Dokument lokal.
Dann wird repliziert (Server X mit Server Y, User C mit Server X). Alles klar?
Also: Finger weg von solch einem Quatsch.
Bernhard
Gespeichert
Seiten:
[
1
]
« 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