Autor Thema: Zeit-Agenten ohne Laufzeitziel  (Gelesen 5392 mal)

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #20 am: 05.01.06 - 11:04:57 »
Ich bin mir nicht sicher ob GetDocumentByKey mit einer @DocNumber - Spalte was anfangen kann. Versuch doch mal in deinem Dokument ein zusätzliches Text-Feld einzufügen und den jeweiligen Dokumenten darin eindeutige Werte einzugeben.

Dieses Feld zeigst du dann in der Ansicht in der ersten Spalte an und suchst mit GetDocumentBy... anhand dieser Werte das entsprechende Dokument.


Axel
 
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #21 am: 05.01.06 - 11:19:49 »
GetDocumentByKey kann mit @DocNumber nichts anfangen - definitiv nicht. @DocNumber gibt einen speziellen Datentyp zurück, die nur dargestellt, aber unter keinen Umständen ausgewertet werden kann.
Mich wundert, dass das mit @dbLookup funktionieren sollte, wie Andreas schrieb.

Bernhard

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #22 am: 05.01.06 - 11:25:00 »
Es passieren merkwürdige Dinge...

Folgendes in einer Testmaske:


_Email := @DbLookup("":"NoCache"; ""; "AnsKonfiguration";"1";"txtCoordinatorErinnerung");

@MailSend(_Email;"";"";_Subject;"Dokumenten-Verknüpfung: ";"";[IncludeDoclink])


sagt mir:
"Eintrag im Index nicht gefunden oder der Index ist für die Ansicht nicht aufgebaut"


Aber es muß funktioniert haben. Über diese Art werden viele Emails verschickt und Werte ausgelesen und verwendet. Wenn das nicht funktioniert dann weiß ich nicht wie das alles überhaupt geht.

Wenn ich mir jetzt die Ansicht in eine Maske einbette dann wird da kein einziges Dokument angezeigt! Vor wenigen Wochen noch gabs eine Zeile und in der einen vorhandenen Spalte war eine "1" eingetragen.

Wie kann das jetzt auf einmal sein?

Meine Notes-Welt kriegt gerade einen Knacks...

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #23 am: 05.01.06 - 11:30:13 »
Zitat
"Eintrag im Index nicht gefunden oder der Index ist für die Ansicht nicht aufgebaut"

Das ist genau das, was ich für @dbLookup erwartet habe: Gesucht wird ein Textwert. In der Ansicht gibt es aber keine Textwerte.

Und das kann auch früher nicht funktioniert haben. Verwende in den ConfigDocs ein Textfeld, welches dann in der 1. sortierten Spalte der Lookup-Ansicht sortiert dargestellt wird.

Bernhard

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #24 am: 05.01.06 - 11:40:30 »
... jetzt muß ich erstmal ein paar Mal tief Luft holen und mich wieder beruhigen...



Hallo Bernhard,

schau dir bitte mal den Formel-Code im dritten Posting auf Seite 1 an. Der hat DEFINITIV funktioniert und da sind einige dieer @dblookup Aufrufe drin. Es war ein Agent zu starten, der mußte ein Doc finden was er getan hat und es wurde entsprechend eine Email versandt.

Wenn ich jetzt den gleichen Formelcode nochmal in meinen Master-Agenten kopiere dann gehts nicht mehr! Ohne Fehlermeldung! Auch wenn ich ihn auf Zeitplan und als Ziel "alle Dokumente der Datenbank" einstelle läuft er durch ohne Fehlermeldung und ohne etwas zu tun! Gestern noch hat er die Meldung gebracht daß @-Formeln unzulässig sind wenn er ein Laufzeitziel hat!


Noch was merkwürdiges:
In einer anderen Maske hab ich im QuerySave Event unter anderem folgendes:


   If Not source.IsNewDoc Then Exit Sub

   Set view = db.getview("AnsKonfiguration")
   Set configdoc = view.getdocumentbyKey("1")
   
   subject = "ERINNERUNG:    Kunde:   " + source.fieldgettext("Customer") + "  / Neuer Entwicklungsauftrag"

.....
                Call maildoc.send(False)


Und die Email kommt bei mir an! Wie kann das sein? Der LS Debugger zeigt mir Schritt für Schritt wie er durch die Zeilen springt, eine nach der andern und es kommt keine Meldung und die Email geht raus. Wo ist denn da der Unterschied zu dem was ich jetzt versuche?

Und nochwas:
wenn ich zu Testzwecken die Betreffzeile in diese abwandle:

   subject = "ERINNERUNG:    Kunde:   " + source.fieldgettext("Customer") + "  / Neuer Entwicklungsauftrag !!!!!!!!!!!!!!!!!!!!!!!!"

Dann zeigt mir der LS Debugger immer noch die alte subject Zeile wie ein paar Zeilen drüber! Und ja, ich habe gespeichert und ja ich hab die db neu aufgemacht.....


Ich versteh die Welt grad nicht mehr. Das gibt doch alles keinen Sinn mehr. Was ist denn da jetzt auf einmal los!?

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #25 am: 05.01.06 - 12:39:39 »
Nur Ruhig

Verwendet das Query Save noch an einer anderen Stell das configdoc?
oder nur beim view.getdocumentbykey?
So wie es aussieht werden keine Daten aus dem ConfigDoc verwendet, daher kann es funktionieren.
Dein Vorgänger scheint da nicht gerade der experte gewesen zu sein.....

Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #26 am: 05.01.06 - 13:41:44 »
Ich komm mir gerade vor wie der Coyote in Roadrunner... solang er es nicht weiß passiert nichts aber kaum sagt man ihm daß er schon lang keinen festen Boden mehr unter den Füßen hat und da gar nicht stehn kann stürzt er ab.

Jetzt geht auch an der anderen von mir beschriebenen Stelle der Zugriff auf das configdoc nicht mehr. Vorm Mittag gings da noch. Es ist fast so als ginge es jetzt nicht mehr weil ihr es gesagt habt.

Okay.. bitte helft mir Schadensbegrenzung zu betreiben..

Ich hab jetzt in dem doc das über AnsKonfiguration gefunden werden soll ein Feld namens "Number" angelegt und den Vorgabewert "1" reingeschrieben. Die eine Spalte in der Ansicht laß ich nun das Feld "Number" anzeigen.

Nun findet die QuerySave Prozedur das Doc wieder und kann den Wert des Textfeldes auslesen und die Mail verschicken.

Seht ihr jetzt noch irgendwelche Probleme?



[Ich bin eigentlich gerade dabei das Projekt abzuschließen und die Dokumentation zu schreiben. Und jetzt ergeben sich diese Probleme die ich davor nicht hatte. Mir läuft auch die Zeit davon wenn das so weiter geht. Nur damit ihr versteht wieso ich grad etwas aufgebracht und beunruhigt reagiere]


Danke für eure Hilfe!

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #27 am: 05.01.06 - 14:12:41 »
Mir läuft auch die Zeit davon wenn das so weiter geht. Nur damit ihr versteht wieso ich grad etwas aufgebracht und beunruhigt reagiere]

Verstehen wir. Uns geht's von Zeit zu Zeit genauso. Aber aufregen bringt nichts. Das ist eben Notes - live und in Farbe.   ;D

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Zeit-Agenten ohne Laufzeitziel
« Antwort #28 am: 05.01.06 - 14:36:05 »
@ Umi:

Du meinst den der das Projekt angefangen hat das ich weiterführe? Nein, er war auch Praktikant der in seinem ganzen Leben noch nie was von Notes gehört hatte und ins kalte Wasser geworfen wurde. Mir gings auch so.


@ Axel:

Ja, ich geb mir wieder Mühe ruhig zu bleiben. Du hast recht, aufregen bringt nichts. Überstunden wahrscheinlich schon eher...  :-\


Das auslesen des Feldes über die getdocumentbyKey Methode scheint jetzt zu funktionieren. Er stösst wenns ist auch die anderen Agenten an.
Muß aber noch ein bischen testen

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz