in reply to Populating the array, what am I doing wrong.

You say

while (<>) { my %thisrecord = (); # 11 lines of code to populate %thisrecord } print "$thisrecord{'jrUserFriendlyID'}";

but the print statement is outside the scope of %thisrecord, so there's nothing to print.

Enable warnings if you'd like to be informed of this state of affairs.

Try writing a small program with output that shows you've successfully populated your hash with the data you're expecting to read. Change while (<>) to while (<DATA>) and put test data at the bottom of the program below a __DATA__ marker.