Autor Thema: Modified Field - Agent  (Gelesen 1738 mal)

Offline fiuman007

  • Aktives Mitglied
  • ***
  • Beiträge: 134
  • Geschlecht: Männlich
  • flumensis hypatia
Modified Field - Agent
« am: 25.08.04 - 09:47:33 »
Tach,

ich habe in einer Maske einen "Save" Button, der eine Mail an den Koordinator verschickt um ihn über ein neues Projekt zu informieren.
Das Problem ist aber dass der Koordinator nicht immer gleich am Anfang eingetragen wird, sondern erst nach dem alle Infos und Dokumente vorhanden sind. Dabei wird mehrmal was in die DB eingetragen und dieser "Save" Button betätigt.
Was ich jetzt brauche ist eine Abfrage ob im Feld "Coordinator" überhaupt was ist, und ob es verändert wurde (falls im Laufe des Projekts der Koordinator ausgetauscht wird).

Mein Code schaut so aus:  

@If(Coordinator != "");
_Subject :="Projekt  " + ProjectNo + "  / Kunde:   " + Customer + "  / Neuer Entwicklungsauftrag";
@MailSend(Coordinator;"";"";_Subject;"Document Link: ";"";[IncludeDoclink])


Was jetzt noch fehlt ist dann noch ein "ODER"  und dahinter dann die Abfrage ob sich das Feld geändert hat. Mit @Modified geht so was nicht oder ?  
GIbts da so was wie ein FieldModified oder so ...

Vielen Dank

fiuman007


fluminensis hypatia

Driri

  • Gast
Re:Modified Field - Agent
« Antwort #1 am: 25.08.04 - 10:13:36 »
Über Formelsprache wüßte ich da keinen Befehl für. Unter Script könntest Du dir über das Item das LastModified Datum holen.

Ansonsten müßtest Du ein zusätzliches, verstecktes Feld einbauen, in dem der Koordinator ein zweites Mal gespeichert wird.  Das Setzen des Feldes machst Du dann am Ende des Save-Buttons, dann kannst Du vorher immer noch die beiden Feldwerte vergleichen.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Modified Field - Agent
« Antwort #2 am: 26.08.04 - 00:50:13 »
No way mit @functions. Im PostOpen muss der Inhalt des bewussten Feldes eruiert werden, im QuerySave dann geprüft werden, ob sich da etwas geändert hat. Dann ist es ein leichtes ...

HTH,
Bernhard

Offline fiuman007

  • Aktives Mitglied
  • ***
  • Beiträge: 134
  • Geschlecht: Männlich
  • flumensis hypatia
Re:Modified Field - Agent
« Antwort #3 am: 26.08.04 - 11:51:01 »
Also ich habe es jetzt über ein 2. verstecktes Feld gemacht.

Das versteckte Feld heisst modCoordinator und das normale Coordinator.

Ich habe im QueryOpen (formel):
FIELD modCoordinator := Coordinator;
""

und in meiner Bedingung dann.

_Subject :="Projekt " + ProjectNo + " / Kunde: " + Customer + " / Neuer Entwicklungsauftrag";
@If(modCoordinator != Coordinator;
@MailSend(Coordinator;"";"";_Subject;"Document Link: ";"";[IncludeDoclink]); "")


Aber irgendwie haut es nicht hin. Die Mail immer verschickt wenn "Speichern" geklickt wird. Obwohl sich der Koordinator nicht geändert hat.

Jemand irgendeine Idee ?

Danke



fluminensis hypatia

Driri

  • Gast
Re:Modified Field - Agent
« Antwort #4 am: 26.08.04 - 13:24:56 »
Was steht denn in den Feldern drin ?

Sonst bau vorsichtshalber mal ein @Command([FileSave]) vor die @If-Abfrage.

Offline fiuman007

  • Aktives Mitglied
  • ***
  • Beiträge: 134
  • Geschlecht: Männlich
  • flumensis hypatia
Re:Modified Field - Agent
« Antwort #5 am: 26.08.04 - 13:29:49 »
Die Felder sind von Typ Names. Also sind Personen aus dem Adressbuch drin.
Bekomme jetzt auch ne Fehlemeldung wenn ich es beim 2. oder 3. mal abspeichere.

Another copy of this document was saved while you were editing it. Save your changes also as a Save Conflict document?


 ???  :-[
fluminensis hypatia

Driri

  • Gast
Re:Modified Field - Agent
« Antwort #6 am: 26.08.04 - 13:41:51 »
Setz das mal nicht ins QueryOpen, sondern ins PostOpen, wie Bernhard schon geschrieben hatte.
Und dann würde ich die Abprüfung aus dem Button nehmen und lieber ins QuerySave packen, oder hast Du das Speichern über den Button erzwungen ?

Offline fiuman007

  • Aktives Mitglied
  • ***
  • Beiträge: 134
  • Geschlecht: Männlich
  • flumensis hypatia
Re:Modified Field - Agent
« Antwort #7 am: 26.08.04 - 13:50:44 »
Habs jetzt so ausprobiert wie du es geschrieben hast.
Hab dann das Dokument nicht über den Button sondern über dieses Standard- Datei --> Speichern gespeichert.

Bekomme die Fehlermeldung:
Special database object cannot be located
fluminensis hypatia

Driri

  • Gast
Re:Modified Field - Agent
« Antwort #8 am: 26.08.04 - 15:02:04 »
Hi,

ich hab das jetzt mal auf die Schnelle nachgestellt.

Also :

Feld modCoordinator, Typ Namen, Vorgabewert "", Bearbeitbar, Hidden

Im PostOpen folgende Formel rein :

@Command([EditDocument]);
@SetField("modCoordinator"; Coordinator)

Im QuerySave folgende Formel rein :

_Subject :="Projekt " + ProjectNo + " / Kunde: " + Customer + " / Neuer Entwicklungsauftrag";
@If(@IsNewDoc; ""; modCoordinator != Coordinator;
@MailSend(Coordinator;"";"";_Subject;"Document Link: ";"";[IncludeDoclink]); "");
@Command([FileCloseWindow])


Einzige Problem ist dann, daß das Dokument im EditMode ist und daß Personen, die keine Änderungsrechte haben, eine Fehlermeldung bekommen dürften, da diese das EditDocument nicht ausführen können.


Eine Alternative wäre ein Button mit folgender Formel :

_Subject :="Projekt " + ProjectNo + " / Kunde: " + Customer + " / Neuer Entwicklungsauftrag";
@If(@IsNewDoc; ""; modCoordinator != Coordinator;
@MailSend(Coordinator;"";"";_Subject;"Document Link: ";"";[IncludeDoclink]); "");
@SetField("modCoordinator"; Coordinator)
@Command([FileSave]);
@Command([FileCloseWindow])

Offline fiuman007

  • Aktives Mitglied
  • ***
  • Beiträge: 134
  • Geschlecht: Männlich
  • flumensis hypatia
Re:Modified Field - Agent
« Antwort #9 am: 26.08.04 - 15:27:27 »
Es funktioniert. Vielen Dank Driri.

Jetzt hab ich aber noch einiger solcher Felde rmit MailSend Funktionen. Und die müssen da alle rein. Hehe

Danke nochmals

Gruß

fiuman007



fluminensis hypatia

Driri

  • Gast
Re:Modified Field - Agent
« Antwort #10 am: 26.08.04 - 15:33:21 »
Gerne, der Button hat übrigens noch ein Problem : Wenn der User per ESC das Dokument verläßt, ziehen ja die Formeln nicht.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz