rickel Posted January 21, 2022 Share Posted January 21, 2022 Ik ben op zoek naar een functie in FMP waar ik uit een herhalend veld (aantal 30) de 5 hoogste getallen kan genereren. Het functie MAX() kan ik helaas alleen de hoogste tonen maar het lukt niet de 2e, 3e, 4e en de 5e hoogste getal te krijgen. Quote Link to comment
1 Infomatics Posted January 21, 2022 Share Posted January 21, 2022 Als je een lijst maakt van de waardes, die sorteert en je pakt de 5 hoogste dan ben je er. hoogste.fmp12 Quote Link to comment
1 Marsau Posted January 23, 2022 Share Posted January 23, 2022 Wat ook kan: Evaluate ( "Average ( " & Substitute ( hoogste::hoogste 5; ¶; "; " ) & " ) " ) Evaluate ( "Sum ( " & Substitute ( hoogste::hoogste 5; ¶; "; " ) & " ) " ) Sum en average werken niet met lijst input (wat hoogste feitelijk is). Die evaluate passeert die beperking. lean & mean! Quote Link to comment
0 rickel Posted January 22, 2022 Author Share Posted January 22, 2022 Hallo Informatics, Dank je voor deze fraaie oplossing. Gelijk heb ik daarnaast met twee velden nodig. 1. Telling van deze 5 waarden. (Het lukt niet om veld 'hoogste' op te tellen) 2. Gemiddelde van deze 5 waarden (afgerond op gehele getallen) (als ik 1 heb dat moet 2 niet moeilijk meer zijn) Quote Link to comment
0 Infomatics Posted January 22, 2022 Share Posted January 22, 2022 Hoogste is een tekstveld met de 5 bedragen, je kunt de 5 bedragen optellen met: getvalue(hoogste;1) + getvalue(hoogste;2) + getvalue(hoogste;3) + getvalue(hoogste;4) + getvalue(hoogste;5) gemiddelde is dan: Round(average(getvalue(hoogste;1) ; getvalue(hoogste;2) ; getvalue(hoogste;3) ; getvalue(hoogste;4) ; getvalue(hoogste;5);0)) Quote Link to comment
0 menno Posted January 23, 2022 Share Posted January 23, 2022 De methodes van Infomatics en Marsau een klein beetje getweaked naar één formule: Let ( [ values = SortValues ( List ( <RepeatingField> ) ; -2 ) ; top5 = LeftValues ( values ; 5 ) ; top5som = Evaluate ( "Sum(" & Substitute ( Left ( top5 ; Length ( top5 ) - 1 ) ; [ ¶ ; ";" ] ) & ")" ) ; top5gem = Round ( top5som / 5 ; 0 ) ] ; List ( "Top5:" ; top5 ; "Som van top5: "; top5som ; "¶Gemiddelde van top5:" ; top5gem ) ) Quote Link to comment
0 rickel Posted February 11, 2022 Author Share Posted February 11, 2022 Ik wil jullie allen bedanken voor jullie hulp! Mijn issue is hiermee opgelost! Quote Link to comment
Question
rickel
Ik ben op zoek naar een functie in FMP waar ik uit een herhalend veld (aantal 30) de 5 hoogste getallen kan genereren.
Het functie MAX() kan ik helaas alleen de hoogste tonen maar het lukt niet de 2e, 3e, 4e en de 5e hoogste getal te krijgen.
Link to comment
6 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.