$link_file_name = "$THIS_APP_DIR/d_link/ini/g166Links"; $link_dir_file = "$THIS_APP_DIR/d_link/ini/g166Links.dir"; $link_pag_file = "$THIS_APP_DIR/d_link/ini/g166Links.pag"; # Create new link database files if ( dbmopen(%INI_records,$INI_file_name,0666) && dbmopen(%link_records, $link_file_name, 0666) ) { my @all_files, $loop, $loop2, @loop3; my $i=0; # get list of files from data directory foreach $loop (sort `cd $data_dir; ls -d *`) { chop($loop); foreach $loop2 (sort `cd $data_dir; ls -d $loop/*`) { chop($loop2); foreach $loop3 (sort `cd $data_dir; ls -d $loop2/*`) { chop($loop3); $all_files[$i++]=$loop3; } } } foreach my $data_path (sort @all_files) { print "processing file $data_path\n"; $data_path =~ s/[\n\r]//g; my ($this_table,$blank,$file) = split(/\//,$data_path); my ($key_field_name,$function_name) = split (/::/,$INI_records{$this_table}); my $key_field = &get_key_field ($data_path,$key_field_name,$function_name); my $this_file_id = $this_table . "." . $file; if ( $key_field gt "" ) { if ( ! defined $link_records{$key_field} ) { $link_records{$key_field} = $this_file_id; } else { ???? if (length($link_records{$key_field}) + length($this_file_id) < 998) { $link_records{$key_field} .= "::" . $this_file_id; } } }