hi niphlod, thank you for your detail explaination and examples, niphlod, yes, you are right, actually, i've test it on the web form not via console with SQLite as the database.
1. notnull=True is not work without requires=IS_NOT_EMPTY() during my testing is on field note, i define notnull=True on field note, but i forgot to define the requires, yet the data still can be insert without note=null 2. length is not work without requires=IS_LENGTH() during my testing is on field uuid because i don't know the actually length of date+uuid string that will generated, at first i think 32 length is enough, after i disable length and generate it, it take 47 length, so that i post it in here 3. uuid is not work in unique=True the result for invoice no when i submit from web form which is uuid can't be insert when i set unique=True. when i remove unique=True and tried to refresh and resubmit my data again, it can be inserted. for grand_total, my mistake, i paste the previous version of my testing environment, because i focus to make something simple first (remove the unneccessary field and function), and paste in here that still have grand_total field (models) in there. -- --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.