IF(LEFT([Report A ContractID],1)="0",STR(Val([Report A ContractID])),[Report A ContractID])
I have not checked this but something like the above will probably work.
Note that the 0 is from a CHARACTER field and so the first char check needs the value to be in quotes.
If you VAL the text string and STR it again is should drop the leading zeros.
Of any of the genuine character values in the Contract ID field happen to start with a zero things may need to be made a little more complicated.
Try the suggestion ans see what happens - it fits with the how close you got if it works.
Thank you! I used it in a Calculated Field instead of a Filter as it would not accept it as a filter for whatever reason, and then also added in the InTrim Function to clean up the leading spaces that were there from the initial formula:
IF(LEFT([Report A Contract],1)="0",InTrim(STR(Val([Report A Contract]))),[Report A Contract])
Sorry, it didn't register with me that you were using a filter. I sort of skipped that bit I think.
As you found a calculated field and then use the new field rather than the old one is the way to go.
Was your new field left justified? If so I'm slightly surprised that you needed any TRIM function but that said it's not such a bad idea to make use of TRIMMING functions to ensure the most complete control over the data.
If you deal with a lot of data sources that are similar you now have knowledge of a powerful tool to speed your work. There are a few other Functions that do similar things with text based requirements (and numbers but the text may be more challenging) that are worth discovering and filing away for future use.
Good to know you got where you needed to be.