Idag är mobiler långt mer än bara en telefon och har många förinstallerade appar. En underskattad app på din iPhone är Genvägar, som kan hjälpa dig automatisera och förenkla ditt arbete med ganska enkla medel. Också perfekt som tidsfördriv på sommarens badstränder! Vad sägs om att hämta pågående projekt från en FileMaker-databas, välja ett av dem och ladda upp en eller flera bilder till databasen? Bilderna kopplas förstås till projektet.
Det kan vara före/efter-bilder av en reparation, besiktning av lägenheter/hus eller något annat du behöver samla in bilder till. Allt görs med appar som redan finns på din mobil. Du kan ta och överföra bilder efterhand, men också spara dem och föra över dem till databasen när du har tillgång till Wi-Fi eller liknande.
En genväg i appen Genvägen gör du med dra-släpp, antingen endast inbyggda steg eller kombinerat med andra appar som finns installerade på din iPhone. Om du har en Android-mobil ska det gå att använda MacroDroid eller Tasker istället för Genvägar. Det här exemplet förutsätter iPhone och att du är lite insatt i hur Genvägar fungerar.
I min genväg vill jag först välja bland mina aktiva projekt som finns i en FileMaker-databas på en FileMaker Server. I exemplet är det ett projektnummer följt av ett namn.

Sedan vill jag välja en eller flera bilder jag tagit med vanliga Kamera-appen och skapa en post för varje bild i databasen på servern. Självklart gjorde jag genvägen och skrev detta från solstolen på en badstrand :)

Ibland är det både enklare och bättre att använda befintliga appar än t.ex. FileMaker Go som kan göra samma sak. Speciellt på badstranden där du inte har någon dator!
Genvägen avslutas med att jag får en notis att mina bilder är överförda till FileMaker Server.

Det finns dessutom en annan skillnad jämfört med FileMaker Go: tar du foton inifrån FileMaker Go saknas viss bildinformation som t.ex. GPS-koordinater där bilden är tagen som du får när du använder inbyggda Kamera-appen.
För att kommunicera med FileMaker Server använder jag OData. OData gör FileMaker Server till en s.k. REST-server med enkla https-anrop för att söka och skapa poster. OData är en standard.
Alla anrop till FileMaker Server med OData kräver konto/lösenord till databasen med tillräcklig behörighet. Jag har i förväg skapat en sådan användare i min databas (som måste finnas på en server åtkomlig från internet eller via VPN). Användaren måste ha behörigheten "fmodata" och OData måste vara påslaget i FileMaker Server.
Jag startar appen Genvägar och skapar en ny genväg. I första genvägssteget sätter jag in konto/lösenord i en variabel som jag direkt omvandlar till Base64-format i steget efter. Konto och lösenord ska skrivas med ":" (kolon) mellan. Samma konto/lösenord används i alla anrop till databasen som görs i genvägen.

För att inte skriva in detta i klartext i en genväg går det istället att en skapa fil i JSON-format som placeras i en mapp i mitt iCloud-konto. Finessen är att jag kan göra det på min dator och återanvända i flera olika genvägar. Filen kan också innehålla url-er till de båda OData-anropen som behövs i detta exempel, enklare att ändra på ett ställe om databasen flyttas eller dylikt. Också enklare då det ibland är lite struligt att skriva långa url-er och kryptiska lösenord på mobilen i starkt solsken!
I det här exemplet skriver jag in url-en för att hämta mina aktiva projekt i nästa genvägssteg.

Url-en innehåller förutom serverns adress (mellan "https://" och "/fmi/" i bilden ovan), även databasens namn, tabellens namn och vilka fält du vill få tillbaka. Med ett ”filter” görs sökningen i tabellen så att i detta fall endast projekt märkta med mitt namn (Rolf) söks fram och returneras.
I exemplet heter databasen Forms och tabellen Projekt. I parametern $select anges att jag vill få fältet Projektnamn från databasen och parametern $filter anger vilka poster som ska sökas fram. Generellt är syntaxen för OData ”lite krånglig” och det kan bli långa url-er. En fördel med OData är att det behöver inte finnas speciella layouter i databasen, allt hämtas direkt från tabellerna.
Det är viktigt att ange metod (GET i det här fallet) samt flera sidhuvuden (headers), bl.a. Authorization där konto/lösenord ska finnas.
Accept: application/json Authorization: Basic KONTO:LÖSENORD i Base64-format OData-Version: 4.0 OData-MaxVersion: 4.0
Resultatet är i JSON-format. I appen Genvägar är JSON samma som Ordbok. Eftersom det finns 2 nivåer i JSON-resultat från FileMaker/OData behöver jag först använda Hämta ordbok för resultatet, sedan hämta värdet för ”value” och till sist "Hämta ordbok" en gång till.

Med en loop (heter "Upprepa" i appen Genvägar) sätter jag ihop alla projektnamn till en lista som sedan kan presenteras för användaren/mig för att välja ett av projekten som det aktuella.

Till sist är det dags att låta mig välja bilder, en eller flera, som sedan skickas till FileMaker en bild i taget tillsammans med det valda projektnamnet. Det görs med genvägssteget "Välj bilder".
Alla bilder som användaren/jag väljer loopas genom (med "Upprepa") och varje bild konverteras för säkerhets skull först till JPG-format (om du har Live-foton påslaget i Kamera-appen blir foton i formatet HEIC som inte FileMaker kan visa) och sedan till Base64-format (som är textbaserat).

När information skickas till FileMaker Server för att sparas är metoden POST. Sidhuvuden är samma som i förra anropet.
Informationen sparas i 3 fält i en ny post i tabellen Bilder. Fälten är "Bild" (som är ett fält av typen Container), "Datum" (datum när fotot togs) och "Projektnamn". Dessa anges i "Text i begäran". Fältnamnen för respektive fält måste vara identiska med de som finns i tabellen Bilder. Tabellen Bilder är i databasen relaterad till tabellen Projekt med fältet Projektnamn som nyckel.

Sedan är det bara att köra genvägen! Du sparar förstås en symbol för genvägen på din hemskärm så det blir enkelt att starta.

Min symbol blev så här! Mycket katter på väg från badstranden :)