2007

Okt

5

Av

De senaste månaderna har det varit mer än fullt upp med alla som vill koppla ihop SQL-databaser med FileMaker Pro 9. Först nu börjar allt flyta på som vanligt igen :) I samband med ett av projekten dök det upp ett behov av att importera flera textfiler på en och samma gång, där var och en hade samma antal kolumner/fält. FileMaker har den goda egenskapen att kunna importera flera filer på en gång, dock behövs det en 2-stegsoperation eftersom FileMaker helt sonika läser in hela textfilens innehåll i ett fält. Oftast vill man ha innehållet uppdelat i flera fält. 

Lösningen består i att göra en temporär tabell med ett fält för filnamn som sedan itereras med separat import för varje textfil. Med kommandot Importera poster->Mapp importeras 3 fält till FileMaker, först är det hela textfilen (alltså all text i filen), sedan filnamn och till sist filnamn inklusive hela sökvägen. Den temporära tabellen behöver innehålla ett fält för hela sökvägen och vi ser till att mapp-importen görs så att hela sökvägen hamnar där (det tredje fältet i importen). När en mapp importeras till den temporära tabellen kommer vi att få en post per fil.

Därefter gör vi en loop som går genom alla posterna i den temporära tabellen och importerar från respektive textfil. Denna import görs till en annan tabell som innehåller de fält som önskas från respektive textfil. Filnamnet lagras i en variabel och används av import-steget. Manuset kan se ut som följer. Den temporära tabellen heter “Textfiler” och den tabell som det ska importeras till heter “Trados”.

Gå till layout["Textfiler" (Textfiler)]
Visa alla
Radera hittade poster[Ingen dialogruta]
Importera poster[Mappnamn; Textfiler; Lägg till]
Gå till post/sökpost/sida[Första]
Loop
   Ange variabel[$filnamn; Värde: Textfiler:sökväg]
   Gå till layout["Trados"(Trados)]
   Importera poster[Ingen dialogruta; $filnamn]
   Gå till layout["Textfiler"(Textfiler)]
   Gå till post/sökpost/post[Nästa; Avbryt efter sista]
End Loop

Enda bristen är att detta bara fungerar med textfiler (och bilder/ljud), jag hade gärna sett att samma möjlighet fanns för t.ex. XML-filer också.

Skriv en kommentar

  • (will not be published)
  • × six = 48

Läs också: