0 // 10.1 уточнение направление-специальность // 9.1 проверка записи VUZ // если записей больше 1, то в первую запись пишу все поля 69, // а другие записи удаляю //10.1 обновление кафедры в поле 69 по записи DISC DEFFLD 3000 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 4000 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v920: 'VUZ' then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ----------------------проверка на дублетные записи VUZ ADD 111 XXXXXXXXXXXXXXXXXXX &uf('+7W6#') XXXXXXXXXXXXXXXXXXX IF if val(&uf('IMAIN,LinkGroup,0'))=1 then if v68^E<>'' and val(&uf('JVUZ,VGR=',v68^E))>1 then '1' fi,else if val(&unifor('JVUZ,!',v68^A,if v68^C<>'' then v68^C else v68^N fi,,v68^v,,,v68^o,"-S"v68^F))>1 then '1' fi fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX больше одной записи VUZ // XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX сначала из все записей беру в G6 поля 69 CORREC '*' '' if val(&uf('IMAIN,LinkGroup,0'))=1 then "VGR="v68^E else '!',v68^A,if v68^C<>'' then v68^C else v68^N fi,,v68^v,,,v68^o,"-S"v68^F fi XXXXXXXXXXXXXXXXXXX ADD 1001 XXXXXXXXXXXXXXXXXXX &uf('+7U6#',(v69/)) XXXXXXXXXXXXXXXXXXX DEL 1001 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX END XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX накопленные G6 вношу в первую запись с проверкой IF if val(&uf('DVUZ,?',if val(&uf('IMAIN,LinkGroup,0'))=1 then "VGR="v68^E else '!',v68^A,if v68^C<>'' then v68^C else v68^N fi,,,,,,v68^V,,,v68^o,,"-S"v68^F fi,'?,mfn'))=val(mfn) then '1' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 1006 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 1006 XXXXXXXXXXXXXXXXXXX mpu,(G6/) XXXXXXXXXXXXXXXXXXX REPEAT XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ---------------------------------------- проверка необходимости нового повторения IF if p(v69) then if rsum((if p(v69) then if &uf('+97',v69)=&unifor('Av1006#1') then'1;'else'0;' fi fi))>0 then '0' else '1' fi fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX ADD 69 XXXXXXXXXXXXXXXXXXX if p(v69) then if rsum((if p(v69) then if &uf('+97',v69)=&unifor('Av1006#1') then'1;'else'0;' fi fi))>0 then else &unifor('Av1006#1') fi else &unifor('Av1006#1') fi XXXXXXXXXXXXXXXXXXX PUTFLD 'Дописана запись VUZ. MFN=',f(val(mfn),0,0) XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 1006 1 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX UNTIL if p(v1006) then '1' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX конец - первая запись на кор-ке FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if val(&uf('DVUZ,?',if val(&uf('IMAIN,LinkGroup,0'))=1 then "VGR="v68^E else '!',v68^A,if v68^C<>'' then v68^C else v68^N fi,,v68^V,,,v68^o,"-S"v68^F fi,'?,mfn'))'0' then v69^D fi fi/) XXXXXXXXXXXXXXXXXXX // удаление DEL 69 F (v2069/) XXXXXXXXXXXXXXXXXXX IF if &uf('+97',v69)<>&uf('+97',v3069) then '1' fi PUTFLD mdl,'Удалена данные о дисциплинах ',,v1069+|, |,' в записи ',v68,' MFN=',f(val(mfn),0,0) FI DEL 111 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 112 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 113 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 1069 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 2069 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 3069 * XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX // ----------------------------------обновление кафедры в поле 69 по записи DISC ADD 3069 (v69^B/),&uf('+7W10#') REP 69^B F (if p(v69) then if p(v69^B) then if &uf('DVUZ,?IDD=',v69^D,'?,v5')<>'' then &uf('DVUZ,?IDD=',v69^D,'?,v5'),,,,if &uf('+97',&uf('DVUZ,?IDD=',v69^D,'?,v5'))<>&uf('+97',v69^B) then &uf('+7U10#',v69^B,,'->',,&uf('DVUZ,?IDD=',v69^D,'?,v5')) fi,,,, else v69^B fi else # fi fi/) IF if v3069<>'' and &uf('+97',v3069)<>&uf('+97',v69^B) then '1' fi PUTFLD 'MFN=',f(val(mfn),0,0),,' - исправлены кафедры чит. в поле 69 (',(if p(G10) then G10,',' fi),,,')' FI DEL 3069 * //-------------------------------------------- есть ли запись FAK для ФАК-ФО IF if v68^A<>'' then '1' fi IF if val(&uf('JVUZ,FFO=',v68^A,if v68^O<>'' then '-',v68^O fi))<=0 then '1' fi // записи нет - запоминаю для второго задания PUTFLD 'LINKCORRCREATEFAK'/'VUZ'/mpu,'"!',v68^a,if v68^c<>'' then v68^c else v68^n fi,,v68^v,v68^o,'-S'v68^F,'"'/v68^A,if v68^O<>'' then '-',v68^O fi FI FI // конец записи VUZ FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX GETFLD 4000 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX