2017

Okt

30

Av

En av de största nyheterna i FileMaker 16 var möjligheten att skapa PDF-dokument med FileMaker Server. I och med det behövs inte längre någon “FileMaker-robot” som producerar PDF-dokument på en klient och, inte minst, även WebDirect kan nu skapa PDF-dokument. Eftersom PDF-dokument kan ta en stund att skapa kan det vara praktiskt att låta servern göra jobbet!

Ett sätt är att starta manus (script) på servern med en knapptryckning i klienten och importera PDF-dokumentet i ett container-fält i en post. Om du låter klienten vänta på server-manuset kan du som nästa steg exportera container-innehållet och öppna PDF-dokumentet i Adobe Reader, Förhandsgranskning eller motsvarande. Allt med en knapptryckning!

När du använder manussteget “Utför script på server” är det som om du öppnar databasen från början så tänk på att först söka fram det urval som du vill använda för PDF-dokumentet.

Om du t.ex. vill skapa en PDF med information från aktuell post skickar du med postens id (löpnummer eller annat unikt värde) som parameter till manuset som körs på servern. Manuset på servern går till rätt layout och söker fram avsedd post innan du skapar PDF-dokumentet. Bäst är att skapa PDF-dokumentet i en temporär mapp på servern och använda manussteget Infoga från URL för att importera dokumentet till en post i databasen.

Ett manus som gör detta kan se ut så här:

Server_PDF2

På rad 2 i manuset anger jag PDF-dokumentens namn i variabeln $filnamn. Jag väljer att spara PDF-dokumentet i en temporär mapp som jag får med funktionen Get (Temporärsökväg) och namnger det med en tidsstämpel som enbart består av siffror följt av filtypen “.pdf”.

På rad 5-7 söker jag fram posten som ska sparas som PDF.

På rad 10 importerar jag PDF-dokumentet i fältet “Data::PDF” med hjälp av Infoga från URL. För att det ska bli en giltig URL lägger jag till protokollet “file://” före filnamnet.

Manuset följer för övrigt den manusmall jag tidigare skrivit om.

Observera att alla server-manus som körs först kör databasens startmanus om du har ställt in ett sådant. Ofta behöver du inte köra startmanuset för att skapa PDF-dokument, kontrollera överst i startmanuset om det körs på servern och avsluta det i så fall direkt. Det kan du t.ex. göra så här:

Server_Startmanus

 

Skriv en kommentar

  • (will not be published)
  • − five = 3

Läs också: