in reply to Hash Within A Hash

$Data_Hash{$Call_Hash{"TST_" . "IDS_Large_1"}}, ...

It seems you have two 1-D hashes rather than one 2-D hash. "TST_" . "IDS_Large_1" is a key to %Call_Hash
$Call_Hash{"TST_" . "IDS_Large_1"} is the value corresponding to that key. You are using that value from %Call_Hash as a key for %Data_Hash. So try something like:
%Call_Hash = ( TST_IDS_Large_1 =>"OPT_VGS_1", TST_IDS_Large_2 =>"OPT_VGS_2", TST_IDS_Small_1 =>"OPT_VGS_3", TST_IDS_Small_2 =>"OPT_VGS_4" ); %Data_Hash = ( OPT_VGS_1 =>0, OPT_VGS_2 =>0.02, OPT_VGS_3 =>0.04, OPT_VGS_4 =>0.08 );
The values of %Call_Hash will need to be keys of %Data_Hash (at least the ones you want to use for keys)