You could make a validation calcluation (probably in the Student table) instead that prohibits going over the limit and a script trigger that would replace it with the maximum amount available to withdraw. Script trigger would be on validate.
Actually, thinking this more through... the validation would be in the Lineitem table but based on total for all items for a given person. Actually I would probably make the validation by a SQL Sum or something like:
Amount student can withdraw (is this an amount in the Sudent table???)
ExecuteSQL ( "SELECT SUM ( Amount ) FROM \"Transaction Lineitem\" WHERE StudentID = ?" ; ¶ ; ¶ ; Transaction Lineitem::StudentID )
If this is positive, then the Amount field is valid, otherwise it is not.
That worked great! Thanks for the help!