Autor Thema: Fehlermeldung: Falscher Datentyp  (Gelesen 5370 mal)

Offline wittmann_franz

  • Aktives Mitglied
  • ***
  • Beiträge: 241
  • Geschlecht: Männlich
Fehlermeldung: Falscher Datentyp
« am: 30.09.11 - 10:05:42 »
Hallo zusammen,

Folgende Fehlermeldung erhalte ich bei der Ausführung eines Agenten:

Falscher Datentyp in Methode RunStkCoerceVal: STIRNG wurde gefunden, NULL wurde erwartet.

Ich möchte aus Dokumenten aus einer Collection einen Feldwert auslesen und diesen in ein anderes Dokument einlesen.
Das Script existiert bislang nur bis zu der Stelle des Auslesens, und dort kommt es bereits zu der Fehlermeldung:
Im Debugger kommt es in der 4. letzten Zeile sAbt = dcdoc.FieldGetText ("Anw_Abteilung") zum Fehler.

Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim newDoc As NotesDocument
   Dim doc As NotesDocument
   Dim dcdoc As NotesDocument
   Dim ws As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim iApp_ID As Integer
   Dim iAnw_ID As Integer
   Dim sAbt As String
   Dim coll As NotesDocumentCollection
   Dim searchFormula As String
   
   Set db = session.CurrentDatabase
   Set view = db.GetView ("Anwendungen")
   Set uidoc = ws.CurrentDocument
   
   'Ermitteln der zu bearbeitenden Dokumente   
   iApp_ID = uidoc.FieldGetText("App_ID")
   
   searchFormula = {Form = "Anwendung" & Anw_ID=} & CStr(iApp_ID)
   Set coll = db.Search(searchFormula, Nothing, 0)
   Set dcdoc = coll.GetFirstDocument()
   
   While Not dcdoc Is Nothing
      
      Set uidoc=ws.EditDocument(True, dcdoc)
      sAbt = dcdoc.FieldGetText ("Anw_Abteilung")
      Set dcdoc = coll.GetNextDocument(dcdoc)
      
   Wend
   
   Call uidoc.FieldSetText("App_Abteilung", CStr(sAbt))





Vielen Dank schon mal für Euere Hilfe
Gruß
Volker

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Fehlermeldung: Falscher Datentyp
« Antwort #1 am: 30.09.11 - 10:15:14 »
FielGetText ist eine Methode der Klasse NotesUIDocument, dcdoc ist aber ein NotesDocument. So wird das nix.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Driri

  • Gast
Re: Fehlermeldung: Falscher Datentyp
« Antwort #2 am: 30.09.11 - 10:16:05 »
FieldGetText ist keine gültige Methode für ein Objekt NotesDocument.

Schau Dir in der Designer Hilfe mal das Objekt NotesDocument und die zugehörigen Methoden an, für den Fall insbesondere GetItemValue.

Offline wittmann_franz

  • Aktives Mitglied
  • ***
  • Beiträge: 241
  • Geschlecht: Männlich
Re: Fehlermeldung: Falscher Datentyp
« Antwort #3 am: 30.09.11 - 12:44:28 »
Supi, vielen Dank,
das hat bis dahin erstmal funktioniert.

Jetzt stehe ich jedoch vor der nächsten Hürde.
Ich möchte das die verschiedenen Werte aus der collection zu einem String zusammengefasst werden und dann in das Feld App_Abteilung geschrieben werden.
Schreiben tut er wunderbar, allerdings nicht mit meiner Berechnung für vAbt
Dort kommt dann der Fehler:
Falscher Datentyp in Methode CoerceString: Unknown wurde gefunden, Unknown wurde erwartet ??

While Not dcdoc Is Nothing
      
      vAbt = vAbt & "," & dcdoc.GetItemValue ("Anw_Abteilung")
      Set dcdoc = coll.GetNextDocument(dcdoc)
      
   Wend
   
   Set uidoc=ws.EditDocument(True)
   Call uidoc.document.ReplaceItemValue("App_Abteilung", vAbt)

Könnt Ihr mir hier evt. auch noch weiterhelfen.

Vielen Dank schonmal
Gruß
Volker

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Fehlermeldung: Falscher Datentyp
« Antwort #4 am: 30.09.11 - 13:02:54 »
Ja





































Falls Du auch nach dem "wie" fragen wolltest:
GetItemValue liefert ein Array zurück und NICHT einen String (wie auch in der Hilfe beschrieben).
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline ata

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Fehlermeldung: Falscher Datentyp
« Antwort #5 am: 30.09.11 - 15:23:59 »
Zitat
dcdoc.GetItemValue ("Anw_Abteilung")

... das liefert ein Array zurück, daß kannst du dann aber nicht mit einem String verbinden

dcdoc.GetItemValue ("Anw_Abteilung")(0)

... sollte helfen, solange nur ein Wert in dem Feld ist...
Grüßle Toni :)

Offline wittmann_franz

  • Aktives Mitglied
  • ***
  • Beiträge: 241
  • Geschlecht: Männlich
Re: Fehlermeldung: Falscher Datentyp
« Antwort #6 am: 05.10.11 - 12:48:48 »
Das hat jetzt sehr gut geklappt
und ich bin wieder ein großes Stück schlauer geworden  :)

Vielen Dank für Eure Hilfe.



Gruß
Volker

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Fehlermeldung: Falscher Datentyp
« Antwort #7 am: 06.10.11 - 10:50:33 »
mit option declare wärst Du da aber auch ganz alleine drauf gekommen...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz