PROC dfm$recit, recit (served_family, sf:  name= testing
 pf_number, pn: integer 0 .. 1000000 = 2
 establish_condition_handler, ech: boolean = true
 save_print, sp: boolean = false
 status)

 " This is just like the confidence test but uses record by record
 " copy - so that verificationof eoi may be performed
 " Each copy_file between record types must do record by record get/put

  family = $string($value(served_family))
  handler = $strrep($value(establish_condition_handler))
  save_output = $strrep($value(save_print))
  FOR i = 1 to $value(pf_number) DO
    JOB jn =$name('RECTEST'//$strrep(i))   sm ='?'
       IF ?handler? THEN
         WHEN any_fault do
           reqoa ' RECTEST?$strrep(i)? failed  '//$condition_name(osv$status.condition)
           display_value osv$status
           logout
         WHENEND
       IFEND

      " Clean up - just in case
      " Enter system_operator_utility to get system privilege
      system_operator_utility
      crev ignore status
      delete_file  $fname(':?family?.$system.urec?$strrep(i)?') status=ignore
      delete_file  $fname(':?family?.$system.vrec?$strrep(i)?') status=ignore

      " test allocate
      " $system.scu.bound_product starts out as u record
      set_file_attributes $fname(':?family?.$system.vrec?$strrep(i)?') rt=v
      copy_file $system.scu.bound_product ..
         $fname(':?family?.$system.vrec?$strrep(i)?')
      " test write
      copy_file $system.scu.bound_product ..
         $fname(':?family?.$system.vrec?$strrep(i)?')
      " test permanent files
      crefp $fname(':?family?.$system.vrec?$strrep(i)?') g=public
      disce $fname(':?family?.$system.vrec?$strrep(i)?') do=c
      " test read - write
      set_file_attributes $fname(':?family?.$system.urec?$strrep(i)?') rt=u
      copy_file $fname(':?family?.$system.vrec?$strrep(i)?')  ..
           $fname(':?family?.$system.urec?$strrep(i)?')
      disce $fname(':?family?.$system.urec?$strrep(i)?') do=c
      compare_file $system.scu.bound_product ..
           $fname(':?family?.$system.urec?$strrep(i)?')
      delete_file  $fname(':?family?.$system.vrec?$strrep(i)?')
      delete_file  $fname(':?family?.$system.urec?$strrep(i)?')
      quit " system_operator_utility "
       IF NOT ?save_output? THEN
         terp output
      IFEND
    JOBEND
  FOREND

PROCEND dfm$recit

