Domino 9 und frühere Versionen > ND7: Entwicklung

Counter

(1/4) > >>

Jörg:
Hallo,

ich möchte gerne aus einen Dokument "Archive" ein Feld "ID_DOC"
beim erstellen eines neuen Dokument hochzählen und dann das Ergebnis speichern sowie im
neuen Dokument im Feld "ID_MainDOC" hinterlegen.


Hierzu habe ich versucht folgenden Code zu schreiben komme aber nicht so richtig weiter, da ich
immer einen Fehler Missmatch erhalte.


--- Code: ---Sub Initialize

Dim workspace As New NotesUIWorkspace
Dim session As New NotesSession

Dim db As NotesDatabase
Dim doc_ID As NotesDocument
Dim doc As NotesDocument

Dim IDcounter As Integer
Dim ID_Doc As Integer

Set db = session.CurrentDatabase
Set db_doc = db.AllDocuments
Set doc_ID = db_doc.GetDocument (archive)
Set IDcounter =doc_ID.Items(ID_Doc)

IDcounter = IDcounter +1
doc_ID.ID_DOC = IDcounter
Call doc_ID.Save(True,False)



End Sub
--- Ende Code ---

Wo muss ich den Code am besten hinterlegen (z.B. Postopen  oder unter Vorgabewert des Feldes) , damit
es im neuen Dokument im Feld ID_MainDOC abgelegt wird?

Gruß Jörg
 

rar:
Servus,

1.) die die Variable "archive" in der Zeile
Set doc_ID = db_doc.GetDocument (archive)
wird nicht befüllt.
2.) um den Inhalt deines Count-Item auszulesen, musst du
IDcounter = doc_ID.DeinCountItem(0)
verwenden.
3.) Fortlaufende Nummern sind in Notes eher suboptimal. Hier ist eine Kleine Auflistung mit Threads, die dieses Thema behandeln: C L I C K
4.) Siehe 3.)

lG
-d

Jörg:
Hi,

danke dir.
ich habe mich nun für ein PofileDokument entschieden was ich dann
entsprechend verarbeite.

Gruß Jörg

Thomas Schulte:
Das wäre dann so ziemlich die schlechteste aller möglichen Lösungen.

koehlerbv:
Wenn schon fortlaufende Nummern, dann ist eine "Lösung" mit einem ProfileDocument die denkbar dümmste - das ProfilDocument wird im Client gecached. Ändern andere Personen den Counter, bekommt man davon nichts mit und erzeugt fröhlich doppelte Nummern.

Bernhard

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln