Autor Thema: Felder mit FieldClear leeren funktioniert nicht  (Gelesen 2269 mal)

Offline Leddl

  • Junior Mitglied
  • **
  • Beiträge: 54
Felder mit FieldClear leeren funktioniert nicht
« am: 27.04.07 - 10:20:25 »
Hallo,

ich beobachte bei mir hier ein seltsames Verhalten von Notes...

Bei Klick auf einen Button sollen diverse Sachen passiern und zusätzlich die Felder der Maske wieder geleert werden. Schön und gut, das hab ich auch schon in anderen Masken, sogar schon auf der gleichen bei einem anderen Event, sollte also klappen. Ja denkste...
Ich lösche also den Inhalt jeden Feldes durch folgenden Code
Code
Call uidoc.FieldClear("Feldname")
Da passiert aber nichts. Weder Fehlermeldung, noch wird das Feld gelöscht. Selbst wenn ich versuche, mit
Code
Call uidoc.FieldSetText("Feldname","")
den Text zu löschen passiert nichts ???

OK, natürlich also sofort mein Gedanke: Irgendwas stimmt mit der If-Bedingung drüber nicht. Aber auch hier Fehlanzeige... Zwischen die einzelnen Befehle eingefügte Prints werden mir ausgegeben. Der Codeteil wird also definitiv durchlaufen. Nur passiert hier einfach nichts.

Dann hab ich einfach mal was neues probiert:
Code
eval = Evaluate(|@SETFIELD("Feldname";"")|,doc)
Und ZACK, es funktioniert. Nur finde ich das eher unschön gelöst, schließlich sollte es doch möglich sein, das direkt in LS zu machen (und ist es ja auch, ich hab es ja schon an anderer Stelle geschafft).

Hat jemand anderes auch schonmal dieses Problem gehabt oder kann mir jemand sagen, woran das liegen könnte?

(Vielleicht sollte noch erwähnt werden, dass der angesprochene Code nicht direkt im ButtonClick, sondern in einer Script-Bibliothek steckt, aber das sollte ja eigentlich keinerlei Auswirkungen haben.)

Danke,
Axel

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: Felder mit FieldClear leeren funktioniert nicht
« Antwort #1 am: 27.04.07 - 10:34:23 »
Ist das Dokument beim Aufruf von FieldClear auch WIRKLICH im Edit-Mode? Sonst klappts nicht.
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 Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #2 am: 27.04.07 - 10:37:05 »
Das wäre auch das erste was mir einfällt ....

Außerdem würde ich einfach mal den Debugger anwerfen und mich nicht auf Print Anweisungen verlassen.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Leddl

  • Junior Mitglied
  • **
  • Beiträge: 54
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #3 am: 27.04.07 - 11:10:13 »
Ist das Dokument beim Aufruf von FieldClear auch WIRKLICH im Edit-Mode? Sonst klappts nicht.
Ich hatte in der Zeile vorher auch sicherheitshalber ein
Code
uidoc.editmode = true
gesetzt. Ohne Effekt...  ???

Außerdem würde ich einfach mal den Debugger anwerfen und mich nicht auf Print Anweisungen verlassen.
Nunja, der Debugger verrät mir auch nicht mehr, als dass er durch die Befehlszeile läuft ;) Einen Effekt kann ich aber wie gesagt nicht feststellen, die Felder bleiben nach wie vor gefüllt :(

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #4 am: 27.04.07 - 11:25:59 »
Sind die betreffenden Felder auch bearbeitbar und nicht berechnet?

Bernhard

Offline Leddl

  • Junior Mitglied
  • **
  • Beiträge: 54
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #5 am: 27.04.07 - 11:40:52 »
Jupp, sind alles Felder, in die vor dem Klick auf den Button noch etwas eingegeben wurde...

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #6 am: 27.04.07 - 11:44:13 »
Zeig doch bitte mal den Aufruf deiner Funktion. Könnte es sein das du das UIDocument nicht sauber aufrufst. Beim Aufruf von uidoc Funktionen in externen Script Bibliotheken muss der Kontext stimmen.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Leddl

  • Junior Mitglied
  • **
  • Beiträge: 54
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #7 am: 27.04.07 - 11:54:49 »
Der relevante Codeteil:
Code
Sub Add
  Dim ws As New NotesUIWorkspace
  Dim uidoc As NotesUIDocument
  Set uidoc = ws.CurrentDocument
	
[...Verarbeitung der Felder...]			

  Call uidoc.FieldClear("PGR")
  Call uidoc.FieldClear("Geschlecht")
  Call uidoc.FieldClear("Formen")
  Call uidoc.FieldClear("Artikel")
  Call uidoc.FieldClear("Farbe")
  Call uidoc.FieldClear("Pflicht")
End Sub

Im Button wird dann einfach nur die Sub aufgerufen.

Offline Leddl

  • Junior Mitglied
  • **
  • Beiträge: 54
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #8 am: 04.05.07 - 11:16:37 »
Keiner ne Idee? ??? Ich hab das Problem leider immer noch nicht beheben können.

Wie gesagt, es funktioniert über Evaluate, aber besonders schön ist das einfach nicht, zumal es doch schließlich anders auch funktionieren müsste :(

Offline iukhdh

  • Senior Mitglied
  • ****
  • Beiträge: 498
  • Geschlecht: Männlich
  • To be or notes to be, this is the question
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #9 am: 04.05.07 - 11:21:23 »
Aus meiner (leidigen) Erfahrung der letzten Tage:

Du testest schon auf der gleichen DB wie wo du programmierst?

 ;)

Da bin ich  nämlich Held drin  ;D
Thomas von der IuK

Driri

  • Gast
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #10 am: 04.05.07 - 11:27:50 »
Ich hab das mal gerade in nem Client 6.5.4 getestet und das funktioniert ohne Probleme. Sowohl wenn ich das direkt im Click-Event des Buttons mache, als auch wenn ich das in eine Sub auslagere.

Welche Clientversion benutzt Du ?

Edit : Wo genau hast Du denn die "Sub Add" stehen ? In der Maske selber oder in einer Scriptbibliothek ?

Hast Du denn laut Debugger das uidoc sauber instantiiert ?
« Letzte Änderung: 04.05.07 - 11:30:46 von Driri »

Offline Leddl

  • Junior Mitglied
  • **
  • Beiträge: 54
Re: Felder mit FieldClear leeren funktioniert nicht
« Antwort #11 am: 04.05.07 - 12:01:38 »
Du testest schon auf der gleichen DB wie wo du programmierst?
Wenns nur so einfach wäre... :(

Ich hab das mal gerade in nem Client 6.5.4 getestet und das funktioniert ohne Probleme. Sowohl wenn ich das direkt im Click-Event des Buttons mache, als auch wenn ich das in eine Sub auslagere.
Funktioniert bei mir an anderer Stelle auch einwandfrei. Nur in 2 Methoden in der Bibliothek zickt das rum ???
Welche Clientversion benutzt Du ?
6.5.2
Edit : Wo genau hast Du denn die "Sub Add" stehen ? In der Maske selber oder in einer Scriptbibliothek ?
Die Sub steht in einer Scriptbibliothek und wird aus einer Maske heraus aufgerufen.
Hast Du denn laut Debugger das uidoc sauber instantiiert ?
Ich schaffs zwar gerade seltsamerweise nicht, den Debugger in das Script hereinzubewegen, aber bei Ausgabe der UnID per MessageBox kommt das korrekte Ergebnis...

//Edit:
Aber OK, dann leg ich das Problem mal beiseite. So wichtig ist schöner Code ja dann auch wieder nicht ;D
Die Hauptsache ist ja, dass es funktioniert, und das tut es. Sollte dem einen oder anderen aber dennoch noch ein Grund einfallen, woran das liegen könnte: Immer her damit ;)
« Letzte Änderung: 04.05.07 - 12:10:16 von Leddl »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz