Domino 9 und frühere Versionen > ND6: Entwicklung

Maske übernehmen

(1/7) > >>

TripleH:
Hallo!
Tut mir Leid das ich so viel Frage aber wer nicht fragt bleibt dumm:)
Und zwar hab ich eine Maske "Kunden erfassen"in der ich Daten speichern kann die in der Ansicht Kunden gespeichert werden und nach Nachnamen geordnet sind. Allerdings wie kann ich verhindern das Namen Doppelt angelegt werden?
Nachnamen können ja identisch sein aber beim Vornamen muss ja dann unterschieden werden.
Meine 2, Frage ist folgende: Von der Maske Kunden erfassen werden die Daten gespecihert und dann spring ich rüber zu der Make Kalkulationen wo Berechnungen zu dem Kunden gemacht werden. Wie kann ich erreichen das die Daten aus der Maske Kunden erfassen dann automatisch im Kopf von der Maske Kalkulationen steht?
Vielen Dank

Axel:
Hi,

eine Lösung für die Prüfung auf doppelte Einträge, wäre eine Prüfung im QuerySave - Event der Maske. Dazu legt du dir eine Ansicht an, die in der ersten Spalte den Nach- und den Vornamen anzeigt und aufsteigend sortiert ist. Im QuerySave-Event prüfst du mit der GetDocumentByKey-Methode aus der NotesView - Klasse, ob es schon Einträge gibt.

Zur zweiten Frage:
Es gibt in den Maskeneigenschaften die Option "Formel übernehmen Werte aus gewähltem Dokument". Diese markierst du in der Maske Kalkulationen. In die Felder, die Daten aus der Kunden-Maske anzeigen sollen, trägst du als Vorgabewert-Formel oder als Werte-Formel (je nachdem ob es berechnete oder bearbeitbare Felder sein sollen) die entsprechenden Feldnamen aus der Kunden-Maske ein. Die Feldnamen selbst müssen nicht unbedingt identisch sein.

Axel
 

TripleH:
Hallo!
Danke zur 2. Frage hat supi geklappt leider bei der 1. noch nicht so ganz und zawr hab ich jetzt noch eine Ansicht "doppelt" erstellt in der die 1. Spalte der Nachname ist und die 2. Spalte der Vorname. Beides in einer Spalte ist doch garnicht möglich oder?
Doch wie ist das mit der GetDocumentByKey-Methode aus der NotesView?Müßte ich in die Kalkulationsmaske wo der speichern Button ist?irgendwie ist mir das noch nicht ganz klar?
Ich hoffe du kannst mir nochmal helfen:)

koehlerbv:
Beides in einer Spalte ist ohne weiteres möglich. Beispiel:

--- Code: ---LastName + ", " + FirstName
--- Ende Code ---
Der Key für NotesView.GetDocumentByKey muss dann natürlich identisch aufgebaut werden.

Für das Verfahren ist dann aber noch gaaanz wichtig:
- Prüfen musst Du in dem Moment, wo Kundendaten gespeichert werden (ich vermute mal, dass das NICHT Deine Kalkulationsmaske ist)
- Ist das zu prüfende Dokument neu, darf es mit NotesView.GetDocumentByKey NICHT gefunden werden.
- Wird ein bereits bestehendes Dokument geprüft (falls erforderlich, also, wenn die bereits gemachten Kundenangaben geändert werden dürfen), muss dies über NotesView.GetAllDocumentsByKey erfolgen, und dann darf die resultierende NotesDocumentCollection nur ein Document enthalten mit der selben UNID wie das gerade in der Mache befindliche.

HTH,
Bernhard

TripleH:
Hallo!
 Leider hab ich noch nicht ganz hinbekommen. Die Daten werden in meiner Kundenerfassen Maske gespeichert.
Dort hab ich mir jetzt Querysave rausgesucht wo dann eine Prozedur erscheint die ich dann so ergänzt hab:

Sub Querysave(source As Notesdocument, Continue As Variant)
Notesview.Getdocumentykey(name +","+vorname,optional byval exactmatch as integer)as notesdocument
End Sub


Leider kommt immer die Fehlermeldung:

Kundenerfassung: Querysave:2 Unexpected; name;Excepted: Expression

Ich Ihr könnt mir nochmal helfen.
Gruß

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln