| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: Jobserver (1819 mal gelesen)
|
Markus Schrepfer Mitglied CAD Admin
Beiträge: 95 Registriert: 01.02.2001
|
erstellt am: 18. Sep. 2013 15:31 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, wir haben ein Excel-Dokument, das aus einer Datenbank Daten abruft. Für dieses Dokument gibt es ein PDF als Nebendokument. Nun bin ich auf der Suche nach einer Möglichkeit, in einem definierten Rhythmus (ich denke hier an täglich um 12:15 Uhr), das Excel-Dokument automatisch zu aktualisieren und das PDF zu erzeugen. Dabei denke ich an den Jobserver. Er sollte nach der einmaligen manuellen Anlage des Jobs und dessen Abarbeitung, wieder den Job automatisch generieren, der dann zur definierten Zeit abgearbeitet wird. Mir ist unklar: - wie gebe ich den automatisch generierten Job die Info für die Dokumentnummer mit - wie gehe ich mit der Abarbeitung zur definierten Zeit um Hat jemand eine Idee von Euch? ------------------ Markus Schrepfer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
freak-tom Moderator PDM-/CAD-Admin
Beiträge: 347 Registriert: 07.03.2006 Productstream Professional Pro 2011 / Jobserver / Replikator Productstream Professional Office 2011 Productstream Professional Pro 2010 / Jobserver / Replikator Productstream Professional Office 2010 Inventor Suite 2011 Solid Works 2015 ECTR
|
erstellt am: 19. Sep. 2013 07:22 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
Hallo Markus, das geht eigentlich ganz einfach. Du definierst dir einen neuen Job hier musst du für das Interval bei der Bedingung für Ausführung prüfen ob die aktuelle Zeit größer 12:15Uhr ist und der Tag größer Starttag. Wir machen das zum Beispiel um einmal Wöchentlich den Papierkorb zu leeren. Bei uns steht hier in Bedingung für Ausführung: Code: comp("1","#(XDWSFKT:ReturnDayOfWeek( ,#(SYSDATE)))") && lt("#(STARTED_TIME)","#(SYSDATE)")
ReturnDayOfWeek ist eine SQL Funktion die den Tag zurückliefert. Damit der Job dann danach erneut ausgeführt wird kannst du einfach bei Befehl nach Ausführung ein Code: ___JobCreate("Jobname");
einfügen. Die Information welches Dokument behandelt werden soll bekommst du indem du den ersten Job auf diesem Dokument startest. Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noctis79 Mitglied Konstrukteur/ CAD-Administrator
Beiträge: 164 Registriert: 07.10.2009 Inventor Simulation 2011 - 64-Bit-Edition Productstream Professional Pro 2011
|
erstellt am: 19. Sep. 2013 14:59 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
Hallo Markus, täglich um 12:15 Uhr ausführen: Bei "Bedingung für Aktivierung" einfach
Code: comp("12:15","#SYSTIME5");
eingeben. Bei "Befehle bei Erfolg" bzw. "Befehle bei Fehler" dann
Code: ___Jobcreate(DEIN JOBNAME);
eingeben und fertig bist Du. Haben diese Funktion zum Restart des Jobservers am laufen... [Diese Nachricht wurde von noctis79 am 19. Sep. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
freak-tom Moderator PDM-/CAD-Admin
Beiträge: 347 Registriert: 07.03.2006 Productstream Professional Pro 2011 / Jobserver / Replikator Productstream Professional Office 2011 Productstream Professional Pro 2010 / Jobserver / Replikator Productstream Professional Office 2010 Inventor Suite 2011 Solid Works 2015 ECTR
|
erstellt am: 19. Sep. 2013 15:34 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
Hallo Markus, Code: comp("12:15","#SYSTIME5");
Wäre mir persönlich zu unsicher, da der Job dann an manchen Tagen nicht läuft, wenn gerade andere Jobs um diese Uhrzeit laufen bzw. der Jobserver um diese Uhrzeit nicht gestartet ist. Desweiteren wird der Job wahrscheinlich keine Minute in Anspruch nehmen somit wird der Job eventuell mehrmals ausgeführt, je nachdem wie lange der Job für die Ausführung benötigt. Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noctis79 Mitglied Konstrukteur/ CAD-Administrator
Beiträge: 164 Registriert: 07.10.2009 Inventor Simulation 2011 - 64-Bit-Edition Productstream Professional Pro 2011
|
erstellt am: 19. Sep. 2013 16:02 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
Dein erstes comp verste ich net... ReturnDayOfWeek liefert wahrscheinlich den Tag der Woche als Zahl zurück?!? Deswegen vergleichst Du das dann mit "1", oder? Aber beim Aufruf hast Du hinter XDWSFKT:ReturnDayOfWeek die ( und dann gleich ein , Ist das richtig?!? Und wodurch verhinderst Du das der Job erneut ausgeführt wird? Wenn der Job am Montag ab 12:15 ausgeführt werden soll, dann liefert das erste comp am Montag ein true zurück und sobald es nach 12:15 ist, bekommst du auch immer ein true zurück?!? Demnach wird Dein Job bis zum anderen Tag immer wieder ausgeführt, oder? Oder steh ich mal wieder total auf der Leitung?!?
[Diese Nachricht wurde von noctis79 am 19. Sep. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Markus Schrepfer Mitglied CAD Admin
Beiträge: 95 Registriert: 01.02.2001
|
erstellt am: 19. Sep. 2013 16:23 <-- editieren / zitieren --> Unities abgeben:
|
noctis79 Mitglied Konstrukteur/ CAD-Administrator
Beiträge: 164 Registriert: 07.10.2009 Inventor Simulation 2011 - 64-Bit-Edition Productstream Professional Pro 2011
|
erstellt am: 19. Sep. 2013 16:27 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
|
freak-tom Moderator PDM-/CAD-Admin
Beiträge: 347 Registriert: 07.03.2006 Productstream Professional Pro 2011 / Jobserver / Replikator Productstream Professional Office 2011 Productstream Professional Pro 2010 / Jobserver / Replikator Productstream Professional Office 2010 Inventor Suite 2011 Solid Works 2015 ECTR
|
erstellt am: 19. Sep. 2013 17:04 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
Hallo Markus, Zitat: Aber beim Aufruf hast Du hinter XDWSFKT:ReturnDayOfWeek die ( und dann gleich ein , Ist das richtig?!?
Das ist richtig! Ist allerdings abhängig von der SQL Funktion. die wird hier nicht benötigt. Er kann hier bei Bedingung für Ausführung folgendes eintragen: Code: lt("12:15","#SYSTIME5") && lt("#(STARTED_TIME)","#(SYSDATE)")
Hier nochmal die Erklärung dazu. Job wird ausgeführt, wenn "#SYSTIME5" größer ist wie "12:15"
Code: lt("12:15","#SYSTIME5")
Job wird ausgeführt, wenn das aktuelle Datum größer ist als das Startdatum des Jobs
Code: lt("#(STARTED_TIME)","#(SYSDATE)")
Zitat: Bei "Bedingung für Aktivierung" einfach
Bedingung für Aktivierung ist nicht so glücklich, da du dann den Jobserver neu starten müsstest, um den Job zu Aktivieren, deshalb bei "Bedingung für Ausführung" Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
noctis79 Mitglied Konstrukteur/ CAD-Administrator
Beiträge: 164 Registriert: 07.10.2009 Inventor Simulation 2011 - 64-Bit-Edition Productstream Professional Pro 2011
|
erstellt am: 20. Sep. 2013 09:04 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
|
Markus Schrepfer Mitglied CAD Admin
Beiträge: 95 Registriert: 01.02.2001
|
erstellt am: 20. Sep. 2013 09:39 <-- editieren / zitieren --> Unities abgeben:
|
noctis79 Mitglied Konstrukteur/ CAD-Administrator
Beiträge: 164 Registriert: 07.10.2009 Inventor Simulation 2011 - 64-Bit-Edition Productstream Professional Pro 2011
|
erstellt am: 23. Sep. 2013 10:15 <-- editieren / zitieren --> Unities abgeben: Nur für Markus Schrepfer
|