Chan,You cannot use nullable Foreign keys in ACS, I have tested it just now and It is creating NOT NULL fields every time. I think you can use 0 as default value when it is created instead of null. Thanks!
Also You can validate by querying the results from the resource using a workflow, if you see the data then it should be resource screen definition issue or could be something like what John said above. Thanks!