1 GROUP.wss Имя файла справочника //12 PUTLOG // 991^B - исходное полугодие // 10.1 учет разницы специальность-направление, учет DefaultModeSpec при добавлении 69 // 9.1 перевод на следующий семестр // корректируются годы в зав=ти от семестра // можно кор-ть группы по файлу // поле 90 повторяющееся // с учетом отчтсления с одного из... DEL 2000 * ADD 2000 v991^A,,&uf('+7W13#',v991^B),,&uf('+7W14#',v991^G) IF if v2000: '.' then '0' else '1' fi REP 2000 1 v2000,'.mnu' FI DEL 991 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 992 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // проверка отсутствия поля 90 (ранее была проверка непустого идентификатора) IF if a(v90) then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX PUTLOG 'Нет данных об учебном профиле студента. MFN=',f(val(mfn),0,0) XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if p(v90) then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // если не задан фак. и если отчислен и не восстановлен то - нет IF if &unifor('Av54^F#1')='' and &unifor('Av54^S#1')='' and &unifor('Av54^*#1')<>'' and &unifor('Av54^C#1')='' then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX PUTLOG 'Отчислен - переводу не подлежит. MFN=',f(val(mfn),0,0) XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // отчислен, но с одного фак-та IF if a(v54) or &unifor('Av54^*#1')<>'' and &unifor('Av54^C#1')<>'' or &unifor('Av54^*#1')<>'' and &unifor('Av54^C#1')='' and &unifor('Av54^F#1')<>'' or &unifor('Av54^*#1')<>'' and &unifor('Av54^C#1')='' and &unifor('Av54^S#1')<>'' then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX //------------------------------------------------ // надстройка - учет повторяемости поля 90 DEL 9002 * ADD 9002 (v90/) DEL 9000 * ADD 9000 (v90/) // в 9001 буду собирать новые поля 90 DEL 9001 * // поея 69 будут формироваться заново DEL 69 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX //.............цикл по повторениям поля 90 REPEAT DEL 90 * ADD 90 &uf('Av9000#1') // проверка не отчислен ли с этого факультета-специальности IF if v90^2<>'' then '1' fi PUTLOG v90^A,'-',v90^C,,,': Отчислен - переводу не подлежит. MFN=',f(val(mfn),0,0) FI IF if v90^2='' then '1' fi // проверка признака НЕ ПЕРЕВЕДЕН IF if a(v90^1) then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // переведен!!!!!!!!! // в 991 старое значение ADD 991 XXXXXXXXXXXXXXXXXXX v90 XXXXXXXXXXXXXXXXXXX // в 992 новое значение ADD 992 XXXXXXXXXXXXXXXXXXX v90 XXXXXXXXXXXXXXXXXXX // может уже переведен? в G13 полугодие DEL 111 * /* дополни тельная проверка по годам обучения ADD 111 XXXXXXXXXXXXXXXXXXX if g14='' or g14=v90^0 then &uf('+7W11#',,f(val(v90^F)/2,0,2) ),,,,&uf('+7W12#',,f(val(v90^F)/2,0,0) ),,,,if val(G11)=val(G12) then 'V' else 'O' fi fi XXXXXXXXXXXXXXXXXXX IF if v111<>G13 then '1' fi PUTLOG if G13='' then 'Не дыло задано исходное полугодие ' else 'На факультете ',v991^A,,' уже переведен' fi FI IF if v111=G13 then '1' fi //------------------------------------- Изменение семестра на 1 REP 992^F 1 f(val(v992^F)+1,0,0) XXXXXXXXXXXXXXXXXXX // изменение номера группы IF if v2000<>'' and &unifor('K',v2000,'|',v992^E)<>'' then '1' fi REP 992^E 1 &unifor('K',v2000,'|',v992^E) XXXXXXXXXXXXXXXXXXX FI // проверка четности семестра и изменение годов обучения DEL 111 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 111 XXXXXXXXXXXXXXXXXXX f(val(v991^F)/2,0,2)/f(val(v991^F)/2,0,0) XXXXXXXXXXXXXXXXXXX IF if val(&unifor('Av111#1')) = val(&unifor('Av111#2')) then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // переход от четного к НЕчетному сЕместру - МЕНЯЮ годы DEL 111 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 111 XXXXXXXXXXXXXXXXXXX &unifor('G0/',v992^0) XXXXXXXXXXXXXXXXXXX REP 111 1 f(val(v111)+1,0,0) XXXXXXXXXXXXXXXXXXX DEL 112 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 112 XXXXXXXXXXXXXXXXXXX &unifor('G1/',v992^0) XXXXXXXXXXXXXXXXXXX REP 112 1 f(val(v112)+1,0,0) XXXXXXXXXXXXXXXXXXX REP 992^0 1 v111,'/',v112 XXXXXXXXXXXXXXXXXXX DEL 112 * FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 111 * // замена поля 90 на новое значение v992 REP 90 1 v992 XXXXXXXXXXXXXXXXXXX IF if p(v991) then '1' else '0' fi,,,,,,&uf('+7W12#') XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // формирование полей 69 // сначала в 112, чтобы не повторять подполя B и D DEL 112 * // точное совпадение специальностей при любом DefaultModeSpec ADD 112 XXXXXXXXXXXXXXXXXXX if p(v90) and a(v90^U) then if val(&uf('IMAIN,LinkGroup,0'))=1 then if v90^E<>'' then &unifor('7VUZ,?VGR=',,v90^E,,,'?,(v69/)') fi else if &unifor('JVUZ,!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,v90^v,,v90^o,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,v90^v,,v90^o,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,,,v90^v,,,v90^o,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,,,v90^v,,,v90^o,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,,v90^o,,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,,v90^o,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,,v90^o,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,,v90^o,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,,,v90^v,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,,,v90^v,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,,v90^v,,,"-S"v90^f)>'0' then &uf('+7U12#',unifor('7VUZ,?!',v90^a,if v90^C<>'' then ,v90^c else v90^n fi,,,v90^v,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v90^a,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v90^a,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v90^v,,,v90^o,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v90^v,,,v90^o,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v90^v,,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v90^v,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v90^o,,,"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v90^o,,,"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,if &unifor('JVUZ,!',"-S"v90^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',"-S"v90^f,'?,@6869')) fi,,,,,,,,,,,,,,fi fi XXXXXXXXXXXXXXXXXXX // если в специальности есть точка, то добавляю специальность до точки IF if &uf('IMAIN,DefaultModeSpec,1')='1' or &uf('IMAIN,DefaultModeSpec,1')='' then '1' fi IF if v90^C<>'' and v90^C:'.' then '1' fi DEL 1090 * ADD 1090 v90 REP 1090^C 1 &uf('G0.',v1090^C) ADD 112 XXXXXXXXXXXXXXXXXXX if p(v1090) and a(v1090^U) then if val(&uf('IMAIN,LinkGroup,0'))=1 then if v1090^E<>'' then &unifor('7VUZ,?VGR=',,v1090^E,,,'?,(v69/)') fi else if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,v1090^v,,v1090^o,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,v1090^v,,v1090^o,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,,,v1090^v,,,v1090^o,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,,,v1090^v,,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,,v1090^o,,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^o,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^o,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,,,v1090^v,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,,,v1090^v,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^v,,,"-S"v1090^f)>'0' then &uf('+7U12#',unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^v,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v1090^v,,,v1090^o,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v1090^v,,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v1090^v,,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v1090^v,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v1090^o,,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,if &unifor('JVUZ,!',"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,fi fi XXXXXXXXXXXXXXXXXXX FI FI IF if &uf('IMAIN,DefaultModeSpec,1')='2' then '1' fi // если специальность кончается не на 00, то расширяю на 00 IF if v90^C<>'' then if v90^C*4.1<>'0' or v90^C*5.1<>'0' then '1' fi fi DEL 1090 * ADD 1090 v90 REP 1090^C 1 v1090^C.4,'00' ADD 112 XXXXXXXXXXXXXXXXXXX if p(v1090) and a(v1090^U) then if val(&uf('IMAIN,LinkGroup,0'))=1 then if v1090^E<>'' then &unifor('7VUZ,?VGR=',,v1090^E,,,'?,(v69/)') fi else if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,v1090^v,,v1090^o,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,v1090^v,,v1090^o,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,,,v1090^v,,,v1090^o,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,,,v1090^v,,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,,v1090^o,,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^o,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^o,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,,,v1090^v,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,,,v1090^v,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^v,,,"-S"v1090^f)>'0' then &uf('+7U12#',unifor('7VUZ,?!',v1090^a,if v1090^C<>'' then ,v1090^c else v1090^n fi,,,v1090^v,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',v1090^a,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',v1090^a,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v1090^v,,,v1090^o,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v1090^v,,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v1090^v,,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v1090^v,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,,,if &unifor('JVUZ,!',,,v1090^o,,,"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',,,v1090^o,,,"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,if &unifor('JVUZ,!',"-S"v1090^f)>'0' then &uf('+7U12#',&unifor('7VUZ,?!',"-S"v1090^f,'?,@6869')) fi,,,,,,,,,,,,,,fi fi XXXXXXXXXXXXXXXXXXX FI FI //--------------10.1 DEL 112 * ADD 112 &uf('+7G12'),,(G12/) REPEAT XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 69 XXXXXXXXXXXXXXXXXXX if a(v69) OR ( &uf('+97',v90^A)= &uf('+97',&unifor('Av112^A#1')) or s(v90^A,&unifor('Av112^A#1'))='' ) and ( &uf('+97',v90^N)= &uf('+97',&unifor('Av112^N#1')) or s(v90^N,&unifor('Av112^N#1'))='' ) and ( &uf('+97',v90^O)= &uf('+97',&unifor('Av112^O#1')) or s(v90^O,&unifor('Av112^O#1'))='' ) and ( &uf('+97',v90^V)= &uf('+97',&unifor('Av112^V#1')) or s(v90^V,&unifor('Av112^V#1'))='' ) and ( val(v90^F)=val(&unifor('Av112^F#1')) or s(v90^F,&unifor('Av112^F#1'))='' ) then if ( &uf('IMAIN,DefaultModeSpec,1')='3' ) and ( &uf('+97',v90^C)= &uf('+97',&unifor('Av112^C#1')) or s(v90^C,&unifor('Av112^C#1'))='' ) OR ( &uf('IMAIN,DefaultModeSpec,1')='2' ) and ( &uf('+97',v90^C.4)= &uf('+97',&unifor('Av112^C.4#1')) or s(v90^C,&unifor('Av112^C#1'))='' ) OR ( s(&unifor('Av112^C#1')): '.' and &uf('+97',v90^C)=&uf('+97',&unifor('Av112^C#1')) or &uf('G0.',&uf('+97',v90^C))=&uf('G0.',&uf('+97',&unifor('Av112^C#1'))) or s(v90^C,&unifor('Av112^C#1'))='' ) then if rsum((if p(v69) then if &uf('+97',v69^B)= &uf('+97',&unifor('Av112^B#1')) and &uf('+97',v69^D)= &uf('+97',&unifor('Av112^D#1')) then '1,' else '0,' fi fi))=0 then if &unifor('Av112^B#1')<>'' then '^B',&unifor('Av112^B#1') fi,,,if &unifor('Av112^D#1')<>'' then '^D',&unifor('Av112^D#1') fi,,,if &unifor('Av112^W#1')<>'' then '^W',&unifor('Av112^W#1') fi fi fi fi XXXXXXXXXXXXXXXXXXX DEL 112 1 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX UNTIL if p(v112) then '1' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 1090 * // Удаление 69 в соответствии с изучаемым языком DEL 69 F if v920:'VUZ' then else (if p(v69) then if v69^d:':' then if &unifor('Av26#1')<>'' then if &unifor('DRDR,@'mfn,',v26|, |'):&unifor('G2:'v69^d) then'0'else'1' fi else '1' fi else '0' fi fi/) fi XXXXXXXXXXXXXXXXXXX DEL 991 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 992 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX //удаление дисциплины из поля 69, если есть признак отчисления IF if v90: '^21' then '1' fi ADD 1090 (v90/) REPEAT IF if &uf('Av1090^2#1')<>'' then '1' fi DEL 69 F (if p(v69) then if s(&uf('DVUZ,?IDV=',v69^D,'?,v68^A,v68^C')): s(&uf('Av1090^A#1'),,&uf('Av1090^C#1'),,,) then '1' else '0' fi fi/) FI DEL 1090 1 UNTIL if p(v1090) then '1' fi // конец v90: ^21 FI // конец есть поле 991 FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // конец блока - уже сформировано подполе 90^0 для текущего семестра FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // конец блока - переведен!!!!!!! FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // конец блока не отчислен с данного фак-та FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 9001 v90 DEL 9000 1 UNTIL if p(v9000) then '1' fi //.....................конец цикла по повторением поля 90 DEL 90 * ADD 90 (v9001/) DEL 9001 * DEL 991 * DEL 992 * // изменилось ли поле 90? IF if v90<>v9002 then '1' fi PUTLOG 'Переведен студент ',if p(v30) then v30 else mfn fi,'. MFN=',f(val(mfn),0,0) FI DEL 9002 * // конец блока - не отчислен FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // конец блока - не пустой идентификатор FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 111 * DEL 2000 *