0 // изменение в отмеченных запсиях DISC из задания RepMark // 991^A - старое значение, 991^B - новое значени // третье подполе ^C задает что менять // при изменении факультета или кафедры проверка на добаваление // и удаление из записи FAK // в подполях 991^X и 991^Y заданы дополнительные условия, если отмечена не одна дисциплина, т.е. отбор // поле 992 для передачи условия отбора // отбор=кафедра - частный случай ^X: B // при отборе по дисциплинам - частный случай идентиф.дисц. в поле 993 DEFFLD 3000 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 4000 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 992 * // условие корректировки по подполю I отбрасываю - оно для записей каталога // в 992^X - идент.подполя, в котором надо менять // в 992^y - значение = условие замены IF if v991: '^XI' then '0' else '1' fi ADD 992 if v991^X<>'' then '^',v991^X,v991^Y fi FI IF if v920: 'DISC' then '0' else '1' fi PUTFLD 'Отмеченные записи должны быть типа DISC!' FI IF if v920:'DISC' then '1' else '0' fi XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CC' then '1' fi //--------------------------------специальность DEL 1083 * ADD 1083 (v83^C/) REP 83^C F (if p(v83) then if v83^C<>'' then if &uf('Av992#1')='' or &uf('Av992#1'): '^B' or &uf('Av992#1')<>'' and v83: &uf('Av992#1') or &uf('Av992#1')<>'' and &uf('Av992#1'): '^F' and v83^F: &uf('Av992^F#1') then if v83^C=&uf('Av991^A#1') then if &uf('Av991^B#1')<>'' then &uf('Av991^B#1') else # fi else v83^C fi else v83^C fi else # fi fi/) IF if &uf('+97',v1083)<>&uf('+97',v83^C) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 1083 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"SPEC=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"SPEC=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"SPEC=',v991^A,'"'/v991 FI // проход в случае неполного переноса IF if val(&uf('IMAIN,MOVECATFULL,1'))=0 then '1' fi IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"SPEC=',v991^A,'"'/v991 FI FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CN' then '1' fi //-------------------------------направление DEL 1083 * ADD 1083 (v83^N/) REP 83^N F (if p(v83) then if v83^N<>'' then if &uf('Av992#1')='' or &uf('Av992#1'): '^B' or &uf('Av992#1')<>'' and v83: &uf('Av992#1') or &uf('Av992#1')<>'' and &uf('Av992#1'): '^F' and v83^F: &uf('Av992^F#1') then if v83^N=&uf('Av991^A#1') then if &uf('Av991^B#1')<>'' then &uf('Av991^B#1') else # fi else v83^N fi else v83^N fi else # fi fi/) IF if &uf('+97',v1083)<>&uf('+97',v83^N) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 1083 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"NAPR=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"NAPR=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"NAPR=',v991^A,'"'/v991 FI // проход в случае неполного переноса IF if val(&uf('IMAIN,MOVECATFULL,1'))=0 then '1' fi IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"NAPR=',v991^A,'"'/v991 FI FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CA' then '1' fi //-------------------------------ФАКУЛЬТЕТ DEL 1083 * ADD 1083 (v83^A/) REP 83^A F (if p(v83) then if v83^A<>'' then if &uf('Av992#1')='' or &uf('Av992#1'): '^B' or &uf('Av992#1')<>'' and v83: &uf('Av992#1') or &uf('Av992#1')<>'' and &uf('Av992#1'): '^F' and v83^F: &uf('Av992^F#1') then if &uf('+97',v83^A)=&uf('+97',&uf('Av991^A#1')) then if &uf('Av991^B#1')<>'' then &uf('Av991^B#1') else # fi else v83^A fi else v83^A fi else # fi fi/) IF if &uf('+97',v1083)<>&uf('+97',v83^A) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 1083 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"FAK=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"FAK=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"FAK=',v991^A,'"'/v991 FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX IF if v991: '^CO' then '1' fi //-------------------------------Форма обучения DEL 1083 * ADD 1083 (v83^O/) REP 83^O F (if p(v83) then if v83^O<>'' then if &uf('Av992#1')='' or &uf('Av992#1'): '^B' or &uf('Av992#1')<>'' and v83: &uf('Av992#1') or &uf('Av992#1')<>'' and &uf('Av992#1'): '^F' and v83^F: &uf('Av992^F#1') then if &uf('+97',v83^O)=&uf('+97',&uf('Av991^A#1')) then if &uf('Av991^B#1')<>'' then &uf('Av991^B#1') else # fi else v83^O fi else v83^O fi else # fi fi/) IF if &uf('+97',v1083)<>&uf('+97',v83^O) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 1083 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"FO=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"FO=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"FO=',v991^A,'"'/v991 FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CV' then '1' fi //-------------------------------Вид обучения DEL 1083 * ADD 1083 (v83^V/) REP 83^V F (if p(v83) then if v83^V<>'' then if &uf('Av992#1')='' or &uf('Av992#1'): '^B' or &uf('Av992#1')<>'' and v83: &uf('Av992#1') or &uf('Av992#1')<>'' and &uf('Av992#1'): '^F' and v83^F: &uf('Av992^F#1') then if &uf('+97',v83^V)=&uf('+97',&uf('Av991^A#1')) then if &uf('Av991^B#1')<>'' then &uf('Av991^B#1') else # fi else v83^V fi else v83^V fi else # fi fi/) IF if &uf('+97',v1083)<>&uf('+97',v83^V) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 1083 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"VO=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"VO=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"VO=',v991^A,'"'/v991 FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CF' then '1' fi //-------------------------------Семестр DEL 1084 * ADD 1084 (v83^F/) CHA 83^F * '10' 'A' CHA 83^F * '11' 'B' CHA 83^F * '12' 'C' CHA 83^F * '13' 'D' CHA 83^F * '14' 'E' REP 991^A 1 if v991^A='10' then 'A' else if v991^A='11' then 'B' else if v991^A='12' then 'C' else if v991^A='13' then 'D' else if v991^A='14' then 'E' else v991^A fi fi fi fi fi REP 991^B 1 if v991^B='10' then 'A' else if v991^B='11' then 'B' else if v991^B='12' then 'C' else if v991^B='13' then 'D' else if v991^B='14' then 'E' else v991^B fi fi fi fi fi DEL 1083 * ADD 1083 (v83/) DEL 83 * REPEAT DEL 111 * ADD 111 &uf('Av1083#1') CHA 111^F 1 v991^A if v992='' or &uf('Av992#1'): '^B' or v992<>'' and v111: v992 then v991^B else v991^A fi ADD 83 v111 DEL 1083 1 UNTIL if p(v1083) then '1' fi DEL 111 * CHA 83^F * 'A' '10' CHA 83^F * 'B' '11' CHA 83^F * 'C' '12' CHA 83^F * 'D' '13' CHA 83^F * 'E' '14' REP 991^A 1 if v991^A='A' then '10' else if v991^A='B' then '11' else if v991^A='C' then '12' else if v991^A='D' then '13' else if v991^A='E' then '14' else v991^A fi fi fi fi fi REP 991^B 1 if v991^B='A' then '10' else if v991^B='B' then '11' else if v991^B='C' then '12' else if v991^B='D' then '13' else if v991^B='E' then '14' else v991^B fi fi fi fi fi IF if v1084<>v83^F then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 1084 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"SEM=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"SEM=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"SEM=',v991^A,'"'/v991 FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CH' then '1' fi //------------------------------------кафедра ЧИТАЮЩАЯ DEL 111 * ADD 111 v5 REP 5 1 if p(v5) and &uf('+97',v5)=&uf('+97',v991^A) then v991^B else v5 fi IF if &uf('+97',v111)<>&uf('+97',v5) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 111 * //................ для записей VUZ PUTFLD 'LINKCORRREPCNA_M'/'VUZ'/'"IDV=',v3^0,'"'/v991 IF if val(&unifor('IMAIN,ACCESSRDR,1'))=1 then '1' else '0' fi IF if p(v992) then '1' fi // если задано условие отбора //................ для записей RDR PUTFLD 'LINKCORRREPCNA'/'RDR'/'"KCH=',v991^A,'"'/v991 PUTFLD 'LINKCORRREPCNA'/'RDR'/'"KCH=',v991^B,'"'/v991 FI IF if a(v992) then '1' fi // если изменения на отдельных дисциплинах PUTFLD 'LINKCORRREPCNA'/'RDR'/'"IDD=',v3^0,'"'/v991 FI FI //................ для записей IBIS IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPCNA_M'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"KAFCH=',v991^A,'"'/v991 FI // проход в случае неполного переноса IF if val(&uf('IMAIN,MOVECATFULL,1'))=0 then '1' fi IF if a(v992) then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI IF if p(v992) then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"KAFCH=',v991^A,'"'/v991 FI FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX IF if v991: '^CD' then '1' fi //--------------------------------имя дисциплины DEL 111 * ADD 111 v3^A REP 3^A 1 if p(v3^A) and &uf('+97',v3^A)=&uf('+97',v991^A) then v991^B else v3^A fi IF if &uf('+97',v111)<>&uf('+97',v3^A) then '1' fi PUTFLD 'Заменено в записи DISC - ',v3^A,'. MFN=',f(val(mfn),0,0) FI DEL 111 * //................ для записей IBIS PUTFLD 'LINKCORRREPDISC'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 // проход в случае неполного переноса IF if val(&uf('IMAIN,MOVECATFULL,1'))=0 then '1' fi PUTFLD 'LINKCORRREPSECND'/if &unifor('IPRIVATE,DBN,')<>'' then &unifor('IPRIVATE,DBN,') else 'IBIS' fi/'"IDD=',v3^0,'"'/v991 FI FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX FI XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX DEL 991 * DEL 992 * GETFLD 4000 XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX