First of all, I'd suggest you lose some of the white space in your message, since it does nothing to make it readable and just stretched the message waaaaaay out. It would also be more useful if you posted the SQL for the crosstab query rather than just describing it.
Second, SSN isn't a number, it's text, and I do NOT recommend using it as a primary key, because it must be entered and can therefore be entered incorrectly. Primary keys are difficult to change, so the idea is to never have to change them.
Finally, there is no way to insert a zero in a cross tab query when there are no records for that grouping. All you can do is define the column headings in your Column Heading field in the query so that the group will always appear, even if it has no values. Then in your report, you can use the Nz() function to substitute a zero for the null value.