Autor Thema: Replace oder Replay ?  (Gelesen 2503 mal)

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Replace oder Replay ?
« am: 17.02.04 - 15:35:51 »
Habe eben mit einem Kollegen telefoniert. Er sollte mal auf einem 5er Server ein Script für mich testen.
1. das Script lief sauber durch ( *uff* )
2. der Kollege fragte, ob er irgendwo noch das feld Form setzen könnte. Klar kann er das; er ist kein Designer, daher habe ich ihm das am telefon mal so durchgegeben.

"Vor das call doc.save fügst du eine Zeile ein

         Call item.EmbedObject ( EMBED_ATTACHMENT, "", OVL_FILE )
         Set item1= doc.replaceitemvalue("Form","Empty")
         Call doc.save ( True, True )

er hat das dann auch gleich gemacht und abgespeichert. Dann rief er zurück und sagte mir, daß das Feld Form immer noch den alten Wert hat. Bins dann nochmal durchgegangen. Er immer schön "Ja,ja, genau so steht das hier". "Schick mir mal den Kram!"

und was musste ich sehen ?

Set item1= doc.replayeitemvalue("Form","Empty")

und trotzdem lässt sich der Code einwandfrei abspeichern.
Das der Agent dann auch sauber durchgelaufen ist ist kein wunder; steht doch am Anfang des Codes "On error resume next".

 ;D
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re:Replace oder Replay ?
« Antwort #1 am: 17.02.04 - 15:40:32 »
ach ja, man kann da übrigens reinschreiben, was man will

Set item1= doc.DeppenAllerWeltVereinigtEuch("Form","Empty")

Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re:Replace oder Replay ?
« Antwort #2 am: 17.02.04 - 17:47:02 »
@All

jetzt mal im Ernst, habe ich da was nicht mitbekommen ??

Sitze jetzt hier zuhause am Laptop und kann das fehlerhafte Verhalten reproduzieren



ich bin mir ziemlich sicher, daß "EatMyAss" nie member der NotesDocument Clas war.

bei obj.extrackt mosert der Designer dann wie erwartet
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Replace oder Replay ?
« Antwort #3 am: 17.02.04 - 17:51:42 »
Das ist der gravierende Nachteil der sog. Short-Notation für

var = doc.GetItemValue("AFieldName")

schreibt man

var = doc.AFieldName (0)


Damit ist aber nach doc-Dot jeder beliebige (fast) Bezeichner möglich: ist das kein Member der Klasse, dann ists möglicherweise ein Feldname ........ grausam aber wahr.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re:Replace oder Replay ?
« Antwort #4 am: 17.02.04 - 17:53:54 »
ich bin mir auch sicher, das EatMyAss nicht ein Feldname in meiner Appl ist. Ich meine nur, war das schon immer so ?? Wenn ja, ist es mir nie aufgefallen ...
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Replace oder Replay ?
« Antwort #5 am: 17.02.04 - 18:18:54 »
Das war immer so. Und der Feldname braucht nicht zu existieren, das kann ja bei einem Notes-Dokument eh erst zu Runtime festgestellt werden, welche Felder existieren, da wir ja keine fixe Struktur vor uns haben.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re:Replace oder Replay ?
« Antwort #6 am: 17.02.04 - 18:23:55 »
HMM. OK, *seufz*
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Glombi

  • Gast
Re:Replace oder Replay ?
« Antwort #7 am: 17.02.04 - 18:29:46 »
Eigentlich müsste der dusslige Scriptinterpreter doch kapieren, dass
doc.replayeitemvalue("Form","Empty")
keine Extended Class Syntax ist, oder?!

Ein String - genauer gesagt zwei - als Parameter ist doch wohl nicht korrekt.

Andreas

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Replace oder Replay ?
« Antwort #8 am: 17.02.04 - 18:37:35 »
Eigentlich schon, aber ich hab auch schon gemerkt, dass das Ding an der Stelle ziemlich duselig ist. Macht hier nicht wirklich viel aus, da diese extended Syntax ja eh fast alles zulässt, die Chance, dass der dort einen Fehler entdecken kann, ist gering -- was bei mir seit eh und je zwiespältige Gefühle hinterlassen hat. Einerseits ist es sehr parktisch, andererseits erkauft man sich diesen Komfort zum Preis eines teilweisen "Option NoDeclare" ......... Ulrich, ich schliesse mich Deinem *seufz* durchaus an.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz