2015

Apr

17

Av Rolf

Ibland finns behov av att upprepa ett och samma tecken flera gånger. Det kan vara för att lägga till mellanslag/blanka till ett filformat med fasta fältlängder, fylla ut med inledande nollor i tal med fast antal tecken eller göra en rad med bindestreck på kvittoskrivare.

Det finns ingen sådan funktion inbyggd i FileMaker, men det är ganska enkelt att göra en beräkningsformel. Har du FileMaker Pro Advanced kan du också lägga in den som en egen funktion.

Om du t.ex. vill skapa en text med 80 st bindestreck gör du ett beräkningsfält med formeln:

Substitute(10 ^ 80 - 1;"9";"-")

Formeln använder den numeriska beräkningen 10^80, dvs. 10 upphöjt till 80, som ger resultatet 1 följt av 80 st nollor. Gör du den i FileMaker kommer du dock att få resultatet 1,0e+80, vilket inte blir något bra.

Subtrahera 1 från värdet (10^80 -1) och du får istället ett tal som är 1 mindre, ett tal med 80 st 9:or. Ersätt dessa nior med hjälp av funktionen Substitute till det tecken du önskar. I exempelformeln ersätter jag med ”-”, dvs. jag får en text med 80 st bindestreck som resultat.

Den egna funktionen kan du definiera så här:

mvUpprepa (antal; tecken) = Substitute(10 ^ antal - 1;"9";tecken)

Formeln klarar dock max 400 upprepningar, det är maxprecisionen för matematiska beräkningar i FileMaker.

Skriv en kommentar

Din epost-adress stannar hos oss.