# calculate a mark reduction by percent

This topic is 1817 days old. Please don't post here. Open a new topic instead.

## Recommended Posts

I have a simple solution where teachers can enter an overall mark for a task. One teacher now wants to be able to deduct a percentage of that mark for poor grammar, spelling etc. This is not a commercial situation, so three fields would be acceptable. I'm not sure where to start, except for three number fields: mark; penalty; final_mark. Any tips much appreciated.

##### Share on other sites

10 hours ago, troutstudio said:

I'm not sure where to start, except for three number fields: mark; penalty; final_mark.

Obviously, you need two number fields (Mark and Penalty) and one calculation field to calculate the final mark - most likely as =

`Mark * ( 1 - Penalty )`

This is assuming your users are smart enough to enter the Penalty as a decimal fraction (i.e. 0.05 to deduct 5%). Unfortunately, FileMaker does not recognize the percent sign when parsing user input.

• 1
##### Share on other sites

Hi troutstudio,

You can apply an auto-enter ( Replace) to Penalty if it is always a percent to cover however a User enters the percent - whether they enter 5, 5% or .05 with something like:

```If ( Int ( Self ) ; Self  / 100 ;  Self  )

or to also protect from negative ...

Let ( n = Abs ( Self ) ; If ( Int ( n ) ; n  / 100 ;  n  ) )```

This will convert Penalty to .05 for proper evaluation in your final_mark calculation as outlined by Comment.  You could also apply this logic directly in the final_mark calculation although applying to Penalty might be preferable so User is aware of their entry being corrected after typing it.  The User can type the % or minus since it will be stripped in the auto-enter (replace).

Please update your profile to show your self-determined skill level which helps us know how much explanation is required to be sure you understand our suggestion.  Since I don't know your level, I'll add ... Auto-Enter (replace) simply means to uncheck right below the auto-enter calculation value 'do not replace existing value if any.'

• 1
##### Share on other sites

Hi troutstudio,

In regards to what LaRetta stated,

9 hours ago, LaRetta said:

Auto-Enter (replace) simply means to uncheck right below the auto-enter

If you are unfamiliar with Defining automatic data entry, this video may help.

• 1
##### Share on other sites

On 1 August 2016 at 9:54 PM, comment said:

Obviously, you need two number fields (Mark and Penalty) and one calculation field to calculate the final mark - most likely as =

```
Mark * ( 1 - Penalty )```

This is assuming your users are smart enough to enter the Penalty as a decimal fraction (i.e. 0.05 to deduct 5%). Unfortunately, FileMaker does not recognize the percent sign when parsing user input.

Very helpful indeed. I was able to get this working right away. And I am sure the users could deal with entering decimal figures.

Thanks very much indeed for all these replies. I have been helping students with a video assessment, thus the delay.

I couldn't get the Auto Enter calculation to convert the entered data to a percentage. I am not really experienced with Auto Enter calculations so I will be using the links supplied to research. I have attached screen shots - not sure what is wrong here.

Once again, thanks so much for sharing your knowledge - much appreciated.

##### Share on other sites

On 8/1/2016 at 5:49 PM, LaRetta said:

Since I don't know your level, I'll add ... Auto-Enter (replace) simply means to uncheck right below the auto-enter calculation value 'do not replace existing value if any.'

Look at your second screen shot.  You have it checked and it should be unchecked.  :-)

• 1
##### Share on other sites

2 minutes ago, LaRetta said:

Look at your second screen shot.  You have it checked and it should be unchecked.  :-)

As Pooh Bear once famously said "I can't read" Thanks very much. Works a treat.

##### Share on other sites

This topic is 1817 days old. Please don't post here. Open a new topic instead.

## Create an account

Register a new account