PDF Starten

23. Juli 2013 09:08

Hallo,

Ich habe im Moment ein kleines Problem mit PDF.

Wir importieren Montageberichte in unser NAV über XML und schreiben in den Datensatz den Filenamen eines PDF das dazugehört und auf dem Server liegt.

Ist es möglich über eine Funktion genau dieses PDF zu starten?

Re: PDF Starten

23. Juli 2013 09:12

Die Tabelle/Page Record Link funktioniert genauso: Beim Klick auf den Dokumentenpfad öffnet sich das Dokument - dort kannst du es dir abschauen.

Re: PDF Starten

29. Juli 2013 15:35

Hallo und danke schon mal.

Leider kann ich hinter der Recort Link Tabelle keine Lösung für mein Problem finden und hoffe ihr habt noch weitere Ideen zu dem Thema.

Re: PDF Starten

29. Juli 2013 15:50

NorbertP hat geschrieben:Hallo und danke schon mal.

Leider kann ich hinter der Recort Link Tabelle keine Lösung für mein Problem finden und hoffe ihr habt noch weitere Ideen zu dem Thema.

Ich vergaß; der Standard macht es wahrscheinlich auch nur mit Befehl HYPERLINK.

Re: PDF Starten

29. Juli 2013 15:51

Ich habe das mal vor einiger Zeit für die Record Links wie folgt gelöst:

Codeunit 447 "Record Link Management" erweitert um folgende Funktionen:

Code:
PrintRecordLinks(RecordID : RecordID)
RecordLink.SETFILTER(Company,'%1|%2','',COMPANYNAME);
RecordLink.SETRANGE("Record ID",RecordID);
RecordLink.SETRANGE(Type,RecordLink.Type::Verknüpfung);
RecordLink.SETFILTER(URL1,'<>%1','');
IF RecordLink.FINDSET(FALSE) THEN
  REPEAT
    PrintRecordLink
(RecordLink);
  UNTIL RecordLink.NEXT = 0; 
Code:
PrintRecordLink(RecordLink : Record "Record Link")
WSHMgt.PrintFile(RecordLink.URL1); 
Code:
OpenRecordLinks(RecordID : RecordID)
RecordLink.SETFILTER(Company,'%1|%2','',COMPANYNAME);
RecordLink.SETRANGE("Record ID",RecordID);
RecordLink.SETRANGE(Type,RecordLink.Type::Verknüpfung);
RecordLink.SETFILTER(URL1,'<>%1','');
IF RecordLink.FINDSET(FALSE) THEN
  REPEAT
    OpenRecordLink
(RecordLink);
  UNTIL RecordLink.NEXT = 0; 
Code:
OpenRecordLink(RecordLink : Record "Record Link")
WSHMgt.Run(RecordLink.URL1); 

Zur Info: Die WSHMgt ist eine Variable auf die Codeunit "WindowsScriptHostManagement" aus meinen TL-Tools.
Leider ist die Codeunit hier im Download etwas zu alt, daher hier die beiden Funktionen, die der Codeunit noch hinzugefügt werden müssen:
Code:
Run(Command : Text[1024]) : Integer
Init
;
EXIT(
WshShell.Run(Command)); 
Code:
PrintFile(FileName : Text[260])
IF ISCLEAR(objShell) THEN
  CREATE
(objShell);

objFolder := objShell.NameSpace(FileMgt.ExtractFolder(FileName));
objFolderItems := objFolder.Items;
objFolderItem := objFolderItems.Item(FileMgt.ExtractFilename(FileName));
objFolderItem.InvokeVerb('PRINT');
objVerbs := objFolderItem.Verbs; 

Re: PDF Starten

29. Juli 2013 17:01

:D :D

Irgendwie stehe ich heute voll auf dem Schlauch. Ich kriege es immer noch nicht hin den PDF Reader zu starten und ihm die Datei mitzugeben die geöffnet werden soll.
das könnte doch so einfach sein es gibt ja schon den SAVEASPDF befehl da wünscht man sich doch direkt ein paar mehr solcher Funktionen :(

na ja evtl. kriege ich es ja noch die Tage besser gebacken als heute :D