Autor Thema: @Befehle und andere UI-Funktionen  (Gelesen 2490 mal)

Offline regedit

  • Aktives Mitglied
  • ***
  • Beiträge: 118
  • Geschlecht: Männlich
@Befehle und andere UI-Funktionen
« am: 05.03.07 - 11:53:29 »
Ich habe unten anhängende Formel in einer "Aktion" in einer Maske eingetragen. Wenn ich ein auf dieser Maske basierendes Dokument öffne (nicht im Bearbeitungsmodus), dann sucht die Aktion eine Remote-Nummer im Feld "Problem". Aufgrund dieser Remote-Nummer suche ich in der DB Produkte.nsf bestimmte Felder, welche ich unten mit den setfield-befehlen setze. Dies funktioniert auch prima.

Jetzt wollte ich allerdings einen Agenten schreiben, der diese Aktion für die  ausgewählten Dokumenten eine Ansicht ausführt und bekomme dann die Fehlermeldung: @Befehle und andere UI-Funktionen sind in diesem Suchtyp nicht zulässig...

Was mache ich falsch???

tmp1 := @Right(Problem;"_R0");
tmp2 := @Left(tmp1;6);
Remote := "R0" + tmp2;
Kategorie := @DbLookup( "" : "NoCache" ; "LNDB01/D01/DE":"Produkte.nsf" ; "Navi1_ZF_Remote" ; Remote ; 3; [FailSilent]);
Kategorie2 := @DbLookup( "" : "NoCache" ; "LNDB01/D01/DE":"Produkte.nsf" ; "Navi1_ZF_Remote" ; Remote ; 4; [FailSilent]);
Produkt := @DbLookup( "" : "NoCache" ; "LNDB01/D01/DE":"Produkte.nsf" ; "Navi1_ZF_Remote" ; Remote ; 2; [FailSilent]);
User:= @DbLookup( "" : "NoCache" ; "LNDB01/D01/DE":"Produkte.nsf" ; "Navi1_ZF_Remote" ; Remote ; 8; [FailSilent]);
@Command([EditDocument]);
@SetField("otherusers" ; "");
@SetField("application" ; Kategorie);
@SetField("failuretype" ; Kategorie2);
@SetField("ProduktName" ; Produkt);
@SetField("user" ; User)
!!HELP!! V1.6
Domino Server V6.5.6 FP1 (Windows 2003 Server)
Notes Client V6.5.5 (TS-Client / Win 2003 TS-Server)
Notes Client V6.5.5 (Win XP)

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: @Befehle und andere UI-Funktionen
« Antwort #1 am: 05.03.07 - 13:10:04 »
1) Hardgecodete Server und Datenbanknamen.
Das ist ganz pfui. Das ist aber sowas von Pfui, du kannst Dir gar nicht vorstellen, wie Pfui das eigentlich ist.
Schreib Dir die Parameter in ein Profildokument und lies diese von dort aus. BITTE. Im Namen all jener, die Deinen Code einmal warten müssen (und da schließe ich Dich mit ein ;) ).

2) Falsches "Target" bzw. falscher Befehl
Du musst das Target des Agents auf "None" stellen, wenn Du @Command Befehle verwenden willst.
Aus der Designer-Hilfe zum Thema "Agents":
Zitat
@Commands are only allowed in agents that specify None in the target option.
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 koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: @Befehle und andere UI-Funktionen
« Antwort #2 am: 05.03.07 - 13:13:52 »
Und ein EditDocument ist in diesem Zusammenhang vollkommen unnötig, das kann raus und dann statt @SetField FIELD xxx :=

Bernhard

Offline regedit

  • Aktives Mitglied
  • ***
  • Beiträge: 118
  • Geschlecht: Männlich
Re: @Befehle und andere UI-Funktionen
« Antwort #3 am: 05.03.07 - 14:10:49 »
Es geht  :)

@Bernhard
Habe @Command([EditDocument]) entfernt und die Felder mit FIELD := gesetzt und jetzt funktioniert es.

@m3
Durch die obige Änderung, wie auch Dein Hinweis zu @Command und Agenten funktioniert es nun. Deine Rüge (postitiv aufgenommen  :) ) bezüglich hardcodete Server- und Datenbanknamen werde ich mir zukünftig und in diesem Agenten auch ans Herz legen.

Danke für Eure schnelle Hilfe
!!HELP!! V1.6
Domino Server V6.5.6 FP1 (Windows 2003 Server)
Notes Client V6.5.5 (TS-Client / Win 2003 TS-Server)
Notes Client V6.5.5 (Win XP)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz