
PROC qcp$modify_version (
 correction_ident, ci: name = $required
 qcu_ident, qi: string = $required
 system_ident si: string = $required
 status )



crev ignore k=status
crev count
crev work1 k=string
crev work k=string

crev qev$ccu k=boolean s=xref
crev qev$correction_base k=string s=xref
crev ov_path k=string v=qev$correction_base//'.'
     ov_path = ov_path//$string($value(correction_ident))
     ov_path = ov_path//'.LINK_INPUT_FILES.OS_VERSION'
crev temp1 k=string v=$unique

attf $fname(ov_path) op=$asis
accl work i=$fname(ov_path) lc=count


IF qev$ccu THEN
 WHILE $substr(work,7,5) <> 'build' AND count <> 0 DO
   putl work o=$fname(temp1//'.$eoi')
   accl work i=$fname(ov_path) lc=count
 WHILEND
 putl work o=$fname(temp1//'.$eoi')
 bn = $substr(work,27,6)
 accl work i=$fname(ov_path) lc=count
 WHILE $substr(work,7,7) <> 'version'  AND count <> 0 DO
   accl work i=$fname(ov_path) lc=count
 WHILEND
 work1 = $substr(work,1,34)
 work1 = work1//bn//$substr(work,40,2)//''''
  putl work1 o=$fname(temp1//'.$eoi')
  putl '      level_id = '//$value(system_ident) o=$fname(temp1//'.$eoi')
  rewf $fname(temp1) status=ignore
  detf $fname(ov_path) status=ignore
  delf $fname(ov_path) status=ignore
  copf $fname(temp1) $fname(ov_path)
  detf $fname(ov_path) status=ignore
  EXIT_PROC
ELSE
 WHILE $substr(work,7,7) <> 'version'  AND count <> 0 DO
 putl work o=$fname(temp1//'.$eoi')
 accl work i=$fname(ov_path) lc=count
 WHILEND

 work2 = $substr(work,1,21)
 work2 = work2//$substr(work,25,$strlen(work)-24)
 count = $scan_string($value(qcu_ident),work2)

IF count <> 0 THEN
 work1 = $substr(work2,1,count)
 work1 = work1//$string($value(system_ident))
 work1 = work1//$substr(work,count+10,6)
 putl work1 o=$fname(temp1//'.$eoi')


putl '      level_id = '//$value(system_ident) o=$fname(temp1//'.$eoi')
rewf $fname(temp1) status=ignore
delf $fname(ov_path) status=ignore
copf $fname(temp1) $fname(ov_path)
IFEND

detf $fname(ov_path) status=ignore
IFEND

PROCEND qcp$modify_version

