Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Wiesel am 20.11.06 - 10:51:20

Titel: Formatänderungen in Script
Beitrag von: Wiesel am 20.11.06 - 10:51:20
Hallo!

Ich habe in einem Querysave einer Maske eine Formel, die bei einem neuen Dokument einen Wert aus einem Profildokument holt und in ein Feld packen soll.
Das funktioniert auch.
Aber das Feld ist im Profildok und in der Maske eine Zahl und das Script packt es mir als Text in das Maskenfeld.
Hier erstmal mein Script:

Sub Querysave(Source As Notesuidocument, Continue As Variant)
   Dim uiWs As NotesUIWorkspace
   Dim S As New NotesSession
   Dim pdoc As NotesDocument
   Dim dblBeschluss As String
   
   If Source.IsNewDoc Then
      
      Set pdoc = S.CurrentDatabase.GetProfileDocument( "(DBProfil)" )
      
      dblBeschluss= pdoc.numBeschluss(0) + 1
      Call Source.FieldSetText( "numBeschluss", dblBeschluss )
      
      pdoc.numBeschluss = dblBeschluss
      
      Call pdoc.Save(True, False)
      
   End If
End Sub

Wenn ich die Zeile
Call Source.FieldSetText( "numBeschluss", dblBeschluss )
so umschreibe:
Call Source.FieldSetText( "numBeschluss", Cdbl(dblBeschluss) )
dann bekomme ich die Fehlermeldung: ....String exepted...

Wie kriege ich meinen Wert aus dem Profildok als Zahl in das berechnete Feld in der Maske?

Gruß,
Wiesel
Titel: Re: Formatänderungen in Script
Beitrag von: Thomas Schulte am 20.11.06 - 10:54:34
Indem du das nicht mit FieldSetText machst.
Titel: Re: Formatänderungen in Script
Beitrag von: Thomas Schulte am 20.11.06 - 10:55:22
oder etwas genauer. indem du ein Notesitem verwendest und das sauber deklarierst.
Titel: Re: Formatänderungen in Script
Beitrag von: koehlerbv am 20.11.06 - 11:01:07
Ergänzend zu Thomas' Anmerkung: Im ProfileDoc bekommst Du auch einen String ...

Irgendwie sieht das ganze nach einer fortlaufenden Nummer aus, was Du da machst. Dann noch über ein ProfileDocument ... Wenn da mehr als eine Person mit der Datenbank arbeitet, sind Dir doppelte Nummern ganz gewiss.

Bernhard
Titel: Re: Formatänderungen in Script
Beitrag von: Wiesel am 20.11.06 - 11:04:25
In dem Teil der Datenbank arbeitet nur eine Person. Daher sollte das mit der Nummerierung klappen.

Aber ich habe probleme dabei, das Ganze jetzt mit dem NotesItem zu lösen....
Titel: Re: Formatänderungen in Script
Beitrag von: koehlerbv am 20.11.06 - 11:08:03
Item ist nicht erforderlich.

Dim uiWs As NotesUIWorkspace
   Dim S As New NotesSession
   Dim pdoc As NotesDocument
   Dim dblBeschluss As Long
   
   If Source.IsNewDoc Then
     
      Set pdoc = S.CurrentDatabase.GetProfileDocument( "(DBProfil)" )
     
      dblBeschluss= pdoc.numBeschluss(0) + 1
      Source.Document.numBeschluss = dblBeschluss
     
      pdoc.numBeschluss = dblBeschluss
     
      Call pdoc.Save(True, False)
     
   End If

Bernhard
Titel: Re: Formatänderungen in Script
Beitrag von: Wiesel am 20.11.06 - 11:11:43
Immer noch Text.





Gibt es eine Erklärung wann man

Source.Document.numBeschluss = dblBeschluss

und wann man

Call Source.FieldGetText...

gebraucht?
Titel: Re: Formatänderungen in Script
Beitrag von: koehlerbv am 20.11.06 - 11:15:22
Dann steckt der Fehler an anderer Stelle. Wenn dblBeschluss eine Zahl ist, dann wird das auch im Item wieder eine Zahl - egal, was "vorne" in der Maske steht.

Bernhard
Titel: Re: Formatänderungen in Script
Beitrag von: Wiesel am 20.11.06 - 11:46:56
Funktioniert doch.

Viele lieben Dank für Deine Hilfe!