Autor Thema: Anhang wird per Script nicht im angegeben Ordner gefunden.  (Gelesen 3273 mal)

Offline Lancelot

  • Senior Mitglied
  • ****
  • Beiträge: 357
  • Geschlecht: Männlich
  • Tu was Du willst, aber schade keinem!
Hallo Leute,

die Forumsuche hat mir nicht geholfen, jetzt bräuchte ich mal wieder den Rat der Experten.

Ich muss aus einem Dok einer selbst entwickelten DB ein PDF machen.
Alle Anhänge aus dem Dok egal in welchem Feld die sind extrahieren und das PDF als auch die Anhänge
in eine Mail anhängen und verschicken.

Das soll ich so machen, weil dann das Dokument den Black Berry und iPhon User schön lesbar angezeigt werden.

Durchlaufe ich den Agent im Debug Schrittweise funzt der Agent auch super toll.
Lasse ich den Agent ohne Debug laufen kommt bei "Set obj = Body,Embedobject.... die Meldung "File not Found".
Das PDF ist aber im Ordner vorhanden und lässt sich auch manuelle öffnen.

Das Laufwerk hat jeder User verbunden bekommen und auf den Ordner habe alle im Mom Vollzugriff.
Der Agent ist mit einer Developer ID gespeichert, die Überall als Admin hinterlegt ist.

Hat jemand eine Idee woran das liegen kann?

Sriptauszug:

Set memo = New NotesDocument( mailDB )
memo.Form = "MemoProjekt"
   
Set Body = New NotesRichtextItem( memo , "Body" )
Set nkBody = New NotesRichtextItem( memo , "nkBody" )
Set doc = uidoc.Document
pfad_anhang = "U:\Allgemein\TEST_PDF\"
         
REM kopieren der Anhänge in das Email.
Call uidoc.Print( 1, 0, 0, False, "PDF-XChange 3.0" )
   
REM HIer kommt der Fehler "File U:\Allgemein\TEST_PDF\LIEF.PDF" not found
Set obj = Body.Embedobject(EMBED_ATTACHMENT, "", pfad_anhang & "Lief.pdf")
   
REM Prüfung ob Feld "Allgemeines" einen Anhang hat.
REM Wenn ja Anhang in Laufwerk "U:\" extrahieren und im Email neu anhängen.
filecount = 0
Set rtitem = doc.GetFirstItem( "Allgemeines" )
If ( rtitem.Type = RICHTEXT ) Then
   If IsArray (rtitem.EmbeddedObjects) Then
      ForAll o In rtitem.EmbeddedObjects

Gruß Gerry (Lancelot)

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: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #1 am: 17.05.11 - 14:58:12 »
Seufz. Ich glaub, ich werde mal eine FAQ schreiben.

Wenn Der Agent am Server läuft (auch wenn er als "User" läuft) läuft er unter dem SYSTEM Account, der auf Netzlaufwerke (und U: wird ja wohl eins sein), nicht zugreifen kann.

Für die Lösung -> siehe Forumssuche oder ich suchs Dir später raus.
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 Lancelot

  • Senior Mitglied
  • ****
  • Beiträge: 357
  • Geschlecht: Männlich
  • Tu was Du willst, aber schade keinem!
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #2 am: 17.05.11 - 15:04:24 »
Danke Martin für die schnelle Antwort.
Nur ganz verstehe ich Dich mit Systemaccount nicht.

Ich bin auf meiner Kiste sogar als Systemadmin angemeldet.
der Zugriff auf Laufwerk und Ordner steht auf jeder Vollzugriff.

Somit versteh ich das Problem der Berechtigung nicht.

Egal ich suche mal unter diesen Begriffen im Forum

Danke!

Gruß Gerry (Lancelot)

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #3 am: 17.05.11 - 15:05:28 »
Hallo,

Na dann stellen wir doch mal die Frage.

Wie wird der Agent gestartet?


Andreas

Offline Lancelot

  • Senior Mitglied
  • ****
  • Beiträge: 357
  • Geschlecht: Männlich
  • Tu was Du willst, aber schade keinem!
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #4 am: 17.05.11 - 15:14:33 »
Der Agent wird im Momen noch per Mausklick auf einen Butto und dem Commandbefehl auf meinem PC aufgerufen.
Gruß Gerry (Lancelot)

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: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #5 am: 17.05.11 - 15:15:41 »
Ein "RunOnServer" involviert?
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 Lancelot

  • Senior Mitglied
  • ****
  • Beiträge: 357
  • Geschlecht: Männlich
  • Tu was Du willst, aber schade keinem!
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #6 am: 17.05.11 - 15:38:54 »
Bringt auch nichts.
Hab sogar die Sicherheitsstufe auf 3. mti vollen Adminrechten laufen lassen gesetzt.

Gruß Gerry (Lancelot)

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: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #7 am: 17.05.11 - 15:42:32 »
Ok, nochmal langsam.
Der Benutzer hat eine Notes-DB offen (lokal oder am Server?). In dieser drückt er auf einen Button. Was/welcher Code wird dann ausgeführt, um den Agent zu starten?

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 Lancelot

  • Senior Mitglied
  • ****
  • Beiträge: 357
  • Geschlecht: Männlich
  • Tu was Du willst, aber schade keinem!
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #8 am: 17.05.11 - 16:15:31 »
OK der User hat das Doc zum bearbeiten offen.
Klickt auf einen Button und in dem Button starten der @Command([ToolsRunMacro]...) den Scriptagenten.

Dieser Agent soll dann aus dem Dok ein PDF machen, dies läuft über einen PDF Druckertreiber ab und soll danach das PDF + alle Anhänge aus dem Dok als neues Email verschicken.

Ich glaube eine Vermutung zu haben.
Notes wird hier zu schnell sein.
Ich sehe zwar das Dokument aber Notes noch nicht, weil die Datei noch nicht im
Indexe von Windows eingetragen ist oder so.

Ich bau jetzt mal eine kleine Warteschleife ein, mal sehen was passiert.

Gruß Gerry (Lancelot)

Offline Lancelot

  • Senior Mitglied
  • ****
  • Beiträge: 357
  • Geschlecht: Männlich
  • Tu was Du willst, aber schade keinem!
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #9 am: 17.05.11 - 16:58:42 »
Yes, ich habe es gelöst.
Die Warteschleife hat geholfen.
Weis zwar nciht warum Windows 7 die Datei zu der Zeit noch nicht hat,
aber nach dem EInbau der Schleife läuft der Agent fehlerfrei durch udn tut sein Arbeit.

Wen es interresiert oder auch das Problem haben sollte,
hier die Schleife.

Das Script ist getestet und funktioiniert durch einfaches reinkopieren udn setzen der Variabelen.

pfad_dir = "Pfad und Dateiname den man sucht"
'Wartezeit bis der Durchlauf neu startet.
timeout = 2 'Typ Long
   
bWarten=True
'Anzahl wie oft der Ordner durchlaufen wir.
lLauf=3
lLaufZahl=0
Do While bWarten=True
   sDirErg = Dir$(pfad_dir, 0)
   Do While sDirErg <> ""
   'Abfrage ob der eingelesen Wert sDirErg der Vorgaben im pfad_Dir entspricht.   
   If UCase(Trim(pfad_dir))=UCase(Trim(sDirErg)) Then
      bWarten=False
      sDirErg=""
   Else
      sDirErg=Dir$()
   End If
   Loop 
   If lLaufZahl>lLauf Then
      bWarten=False
   End If
   If bWarten=True Then
      lLaufZahl=lLaufZahl+1
      startTime! = Timer()
      Do While Timer()<startTime! + timeout
         Yield
      Loop 
   End If   
Gruß Gerry (Lancelot)

Offline jr

  • Senior Mitglied
  • ****
  • Beiträge: 260
  • Geschlecht: Männlich
  • Bitte keine eierlegenden Wollmilchsäue...
    • Homepage
Re: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #10 am: 18.05.11 - 11:15:18 »
@Martin (m3)

das mit dem Netzwerkzugriff ist meines Erachtens nicht ganz richtig. Ich habe in ein Paar Datenbanken durchaus Hintergrundagenten, die auf Netzwerklaufwerke zugreifen, lesen und schreibend.

Ich glaube, es hängt damit zusammen, wie die Netzwerklaufwerke gemappt sind. Wenn ich zum Beispiel vor dem Zugriff über eine Funktion das Netzwerklaufwerk erst mappe, kann ich danach problemlos darauf zugreifen (sofern die Ausführungsrechte des Agenten stimmen) und es danach auch wieder freigebe.

Beispiel:

x = Shell("cmd /c net use u: \\server\freigabe", 2)
open "u:\file" for output as #1
print #1, "Fritz"
close #1
x = Shell("cmd /c net use u: /d", 2)


Ist jetzt ganz schnellt heruntergeschrieben, aber vom Prinzip her funktioniert das.

Gruß,

Joachim
Wer in den Fußstapfen eines anderen geht, hinterlässt keine Spuren und kommt nie als Erster an.

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: Anhang wird per Script nicht im angegeben Ordner gefunden.
« Antwort #11 am: 18.05.11 - 12:03:02 »
Solange der Agent am Client und nicht im Server-Kontext (etwa aufruf übers Web) ausgeführt wird, stimme ich Dir zu. AFAIK helfen Dir die Buchstaben am Server nicht, weil es die im SYSTEM-User Kontext nicht gibt.
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

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz