2009

Jun

4

Av

En nyhet i FileMaker Server 10 var att kunna importera och exportera information direkt från servern. Det kan t.ex. vara att exportera rapporter och sammanställningar varje natt, importera försäljningssiffror från affärssystem en gång om dagen osv. Det har gått tidigare också, med XML, PHP eller liknande, men i version 10 är det busenkelt. 

Ett av de mest lästa blogginläggen just nu handlar om att importera valutakurser från europeiska centralbanken, jag tänkte låta aktuella siffror importeras till en FileMaker-databas dagligen för att sedan använda dem i mina andra tillämpningar.

Det kan ju egentligen göras på en klient också, t.ex. i samband med att en FileMaker-tillämpning startas för dagen (placera importstegen i ett startmanus) men för att vara helt säker på att importen görs varje dag gör jag den på en server.

Du behöver ett manus i FileMaker-databasen som finns öppnad på en FileMaker Server 10. Manuset, som jag kallar förImportera valutakurser, består av två manussteg:

Ange variabel [$filnamn; Värde: "file:" & Get (Dokumentsökväg) & "valutakurser.xslt"]
Importera poster [Ingen dialogruta; 
     http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml; $filnamn]

Manussteget Importera poster ska importera från en XML-källa som omvandlas med en XSLT. (Se beskrivning av XSLThär där du också kan ladda ner den.)

XSLT-filen som behövs för konverteringen placeras i mappen Documents som finns i programmappen för FileMaker Server på servern. Beräkningsfunktionen Get (Dokumentsökväg) hämtar rätt sökväg till mappen. Sökvägen ska inledas med “file:” och jag anger innehållet i en variabel som jag kallar för $filnamn som sedan används i importera-steget.

valutaxml

 

På FileMaker Server skapar du sedan ett nytt schema som körs varje dag. Schemat ska utföra FileMaker-manuset Importera valutakurser som du precis gjort och skapas i FileMaker Server Admin Console.

Varje dag skapas det en ny post i databasen med aktuella valutakurser.

Ladda ner exempeldatabas här:
MV_Valutakurser.zip (21,58 kb)

December 2009: Artikeln är översatt till tyska och publicerad i tyska FileMaker Magazin nr 5/2009. Du kan läsa hela artikeln här: FMM_200905_32-34.pdf (1,31 mb)

4 kommentarer till ”Importera valutakurser på servern”

  1. FF

    Jag är rätt sen på den här lösningen, men den var grymt smidig och tydligt förklarad – tack! :)

    Reply
  2. FF

    Där var jag lite snabb med att ropa hej. Det funkar finfint så länge jag kör scriptet från FMP – även på samma maskin som servern, men när jag låter FMS utföra scriptet (på samma maskin, med samma inlogg och med fullständig behörighet) så får jag inte samma resultat.

    Där FMP ger växelkurs som “8,7110″ så ger FMS “8 7110″. Jag låter också scriptet räkna om till SEK/EUR och det funkar fint på FMP, men när FMS kör scriptet verkar det avsluta direkt efter att ha importerat kurserna. Vad kan det bero på?

    Reply
  3. Rolf

    Det kan vara olika språkinställningar? Prova att importera till numeriskt fält (det gör vi).

    Använd funktionen Get (SenasteFel) för att ta reda på eventuella fel efter manussteget Import.

    Reply
  4. FF

    Tänkte också på språkinställningar, men då i tolkningen av xml-mallen. Jag importerar till numeriska fält. Om jag kör scriptet på FMP på servern så funkar det utan problem, men när jag låter FMS schemalägga det så uppstår felet. Kan det ligga i någon inställning på servern, eller finns det något i xml-mallen jag kan justera? Tänkte först att något hänt med dokumentkodningen när jag kopierade över till servern, men som sagt FMP funkar lika fint på servern som när jag kör det lokalt, det är bara FMS som inte sätter kommatecknet utan ett blanksteg istället.

    Reply

Skriv en kommentar

  • (will not be published)
  • five × 5 =

Läs också: