Tips en trucs over FileMaker met code, afbeeldingen of te downloaden bestanden. Als u zelf in FileMaker programmeert dan kunnen deze u wellicht helpen. Volg ons om nieuwe tips & trucs te ontvangen. Als u hulp nodig heeft bij het toepassen neem dan gerust contact op.

De bestanden openen automatisch met volledige toegang zodat u alle tabellen, velden, scripts, enzovoort kunt bestuderen, aanpassen en overnemen.

Actueel

Eenvoudig openen van externe bestanden

Geplaatst op: 16 augustus 2017 | Niveau: FileMaker Gevorderden Training

Vanuit een FileMaker database kunt u ook eenvoudig bestanden en mappen openen. Of die net vanuit de database zijn geëxporteerd, door een ander programma gemaakt zijn of bij het besturingssysteem horen.

Het bijgesloten voorbeeldbestand laat zien dat als het bestandspad bekend is, met de scriptstap URL Openen[] een bestand geopend kan worden met het standaard programma. Mappen, waarvan het bestandspad geen bestandsnaam bevat en eindigt op /, worden geopend met de Finder/File Explorer.

De bestandspaden kunnen van afbeeldingen zijn, waarvan alleen het pad en de thumbnail daadwerkelijk geïmporteerd zijn, die buiten de database zijn opgeslagen.
Het kan ook gaan om een berekend pad naar een gedeelde map met een verzameling documenten die bij een relatie of project horen. Met een knop in een lay-out kan deze map eenvoudig vanuit de database geopend worden.

Als extra toevoeging bevat het script een voorbeeld om bestanden met .html en .php niet met een standaard programma te laten openen maar met een code-editor zoals BBEdit of Adobe Dreamwaver. De werking hangt sterk af van het gekozen programma en is niet gegarandeerd.

We hopen dat dit voorbeeld kan helpen om eenvoudig de database te koppelen met een foto-beeldbank, projectmappen of gewoon een eerder geëxporteerd PDF of ander document te openen.

Zoeken in Relaties schema

Geplaatst op: 18 juli 2017 | Niveau: FileMaker Gevorderden Training

Een relatie-schema

Wordt het Relaties schema wat vol en onoverzichtelijk? Of het nu netjes is of een rommeltje, door te zoeken vindt u altijd een tabelvermelding terug. Er blijkt een soort snel zoeken verborgen te zijn...

In het Bestand menu, dan het Beheren vervolgmenu vindt u Database... om het 'Database beheren' venster te openen. De derde knop/tab in dat venster is Relaties waarin alle tabelvermeldingen met hun onderlinge relaties worden getoond. Helaas zit er rechtsboven in het venster geen 'Snel zoeken' mogelijkheid maar die is er wel...

Zoekt u een specifieke tabelvermelding? Type dan vrij snel achter elkaar de naam van die tabelvermelding. Afhankelijk van de naam kunnen drie letters genoeg zijn en soms meer.
De eerst gevonden tabelvermelding waarvan de naam begint met de letters die u typte, wordt geselecteerd en verschijnt in beeld.
Is het toch niet de goede? Gebruik dan de toetscombinaties control-g (Win) of command-g (Mac) om een 'opnieuw zoeken' te doen en de volgende tabelvermelding met de beginletters te selecteren. Dit kan uiteraard herhaald worden om verder te zoeken.

Hiermee vindt u snel de tabelvermelding die u moet hebben!

Script starten op een locatie met regiobewaking

Geplaatst op: 13 juni 2017 | Niveau: FileMaker Kenniswerkers Training

Beacon

De onlangs verschenen FileMaker Go 16 bevat een nieuwe scriptstap om bij locaties en beacons een script te laten uitvoeren. Na een praktijktest gedaan te hebben willen we in dit artikel de nieuwe Regiobewaking-scriptstap uitgebreid uitleggen.

Het was al langer mogelijk om een script naar een locatie of beacon te laten kijken, bijvoorbeeld elke 60 seconden, en een taak uit te voeren. Nu is het mogelijk om locaties en beacons op te geven en een script uit te voeren zodra het apparaat een locatie of beacon bereikt of verlaat.

Met de scriptstap Regiobewakingsscript-configureren kunnen per venster maximaal 20 locaties (geofences) en beacons (iBeacons) met een unieke naam ingesteld worden. Ook wordt het script opgegeven dat uitgevoerd moet gaan worden als de geofence of iBeacon gesignaleerd wordt. De scriptparameter is van geen nut omdat deze geëvalueerd wordt bij het daadwerkelijk aanroepen van het script en dat kan op elk punt in de database zijn.

Geofences zijn minder nauwkeurig en binnen slecht bruikbaar, maar er is geen extra hardware nodig. iBeacons zijn nauwkeuriger en er moet wel extra hardware aangeschaft worden met prijzen vanaf 30 euro per stuk en vervangende batterijen. Bovendien kunnen beacons binnen gebruikt worden, bijvoorbeeld voor locatiebepaling in een magazijn of tentoonstelling.

Voor een geofence moet een locatie met lengte- en breedtegraad en de radius in meters opgegeven worden. Die radius bepaalt de afstand rond de locatie die gebruikt wordt als grens van de locatie.
Bij een iBeacon moeten de UUID, primaire en secundaire getallen opgegeven worden van de beacons die verwacht worden. Al uw iBeacons hebben bijvoorbeeld dezelfde UUID maar per locatie een eigen primair getal en de ruimten een eigen secundair getal. Deze drie waarden kunnen met andere software in de beacons ingesteld worden.

Zodra een gebruiker met zijn iPhone of iPad met FileMaker Go het bereik van de locatie of een beacon verlaat of nadert, dan wordt het opgegeven script uitgevoerd. Per locatie en beacon kunnen dat verschillende scripts zijn.
In het script kan de functie Get ( GebeurtenissenRegiobewaking ) gebruikt worden om te bepalen welke locatie of beacon het betreft en het tijdstip (als tekst!). Ook wordt met een getal aangegeven of de locatie of beacon werd bereikt (1, Waar) of verlaten (0, Niet Waar). Als u meer informatie van de beacon wilt weten, zoals de afstand, dan moet de RangeBeacons functie gebruikt worden.

Het uitvoeren van een script gebeurd echter alleen als FM Go de actieve app is en niet als het in de achtergrond zit. Zodra FM Go weer de actieve app wordt dan wordt alsnog het script gestart maar kan het resultaat van Get (GebeurtenissenRegiobewaking) meerdere regels bevatten van meerdere tijdstippen dat de locatie of beacon werd bereikt en verlaten.
Voor een waarschuwing dat u iets moet ophalen als u langs een winkel rijdt, is het dus niet geschikt.
Als bij het instellen met de Regiobewakingsscript-configureren-scriptstap blijkt dat de gebruiker die al eerder opgegeven locatie of beacon bereikte of verliet, dan wordt het opgegeven script al meteen uitgevoerd.

Heel mooi, maar wat kan je er mee? Een paar voorbeelden:
- record met informatie tonen over een met een beacon uitgeruste vrachtwagen, heftruck, draaibank, elektrische installatie e.d. als de gebruiker ernaast gaat staan,
- een webpagina of film vertonen als de gebruiker een deel van een magazijn, showroom of tentoonstelling bezoekt waar een specifieke beacon hangt,
- als een magazijn of werkplek betreedt wordt, zorgen dat dit de standaard locatie wordt als iemand nieuwe records maakt voor ontvangst van goederen e.d.,
- afhankelijk van de huidige locatie andere printers, mail servers e.d. gebruiken in scripts,
- bij het binnenrijden van een tankstation uw database een nieuw record voor een tankbeurt met kosten e.d. laten maken.

Veel succes met het toepassen in uw database! Heeft u daar hulp bij nodig, neem dan gerust contact met ons op.

Tekstbestand importeren in tekstveld

Geplaatst op: 16 mei 2017 | Niveau: FileMaker Gevorderden Training

Importeren van meerdere tekstbestanden in records was al langer mogelijk maar wist u dat het mogelijk is om één tekstbestand in één record te krijgen? Zonder plug-in!

FileMaker 12 introduceerde de scriptstap 'Invoegen vanuit URL' en die is niet alleen geschikt voor http of ftp URLs. Een URL met het file protocol is ook mogelijk en kan ook gebruikt worden om tekstbestanden zoals .txt, .log, .xml, .svg en .rtf in een tekstveld te importeren.

Het voorbeeldbestand is wat uitgebreider door de tekstbestanden in een containerveld te bewaren en de inhoud ervan te importeren in een tekstveld. Het script bevat commentaar als toelichting op de scriptstappen en berekening.

Een andere toepassing is om een lokaal XML-bestand te importeren, te bewerken en weer te exporteren. Iets soortgelijks kan met de grafische SVG bestanden van bijvoorbeeld een landkaart waarin je een tekst opneemt of een provincie een kleur geeft.
En zo zijn er meer mogelijkheden.

Opletten bij loops met records

Geplaatst op: 18 april 2017 | Niveau: FileMaker Gevorderden Training

Voorbeeldscript met loop

Als een loop wordt gebruikt om in een script meerdere records te bewerken of een actie uit te voeren, dan moet de programmeur er rekening mee houden dat handelingen van andere gebruikers daar effect op hebben.

Door record-locking is het geen probleem als een gebruiker een record bewerkt dat niet tegelijk door het script wordt bewerkt. Voor het geval dat gebruiker en script hetzelfde record willen bewerken is het belangrijk dat de scriptstap 'Record openen' wordt gebruikt en bijvoorbeeld wacht totdat dat lukt.

Wanneer de loop door alle records van de tabel gaat, dan kan er een probleem ontstaan als andere gebruikers nieuwe records maken. Door voorafgaand aan de loop tweemaal de scriptstap 'Alleen weggelaten records tonen' te gebruiken voorkomt u dat.

Als een van de records tijdens het uitvoeren van het script wordt verwijderd is dat meestal geen probleem als de scriptstappen worden gebruikt die ervoor zijn: Loop, Ga naar record [ Volgende ; Afsluiten na laatste: Aan ] en End Loop. Met een eigen teller en tussendoor naar andere records gaan kan het mis gaan.
Het script moet er ook rekening mee houden dat het met minder records kan eindigen dan waarmee het begint.

Hoe meer gebruikers er in de database werken en hoe meer records de loop bewerkt, des te groter is het gevaar.