/* 991 K-W заголовки из программы /* 991^- = 1 аналоги не выводить /* 991^T - выделенный фонд /* 991 G S F B A C N O V L T I D Z - отбор по листу опроса /*--------------------------------------------------- /* созд-ю отмечены подполя /* подполя-загол. заголовки РЛ /*--------------------------------------------------- /* A - форма обучен 991^K O /* B - Вид обучения 991^4 V /* C - факультет 991^M A /* D - Кафедра 991^2 B /* E - Направление 991^1 N /* F - специальност 991^P C /* G - цикл 991^R S /* > - рабочая пр. > /* H - дисциплина 991^3 I /* + - спец в дисц 991^+ /* I - гриф 991^W /* J - тип 991^U G /* дата из 907 D /* год издания Z /* - характер 5 /* - только ЭУ 9 /* - нормативный ККО Q /* - аналоги выводить? - /* - отладочный вариант : /* = - для текущего семестра = ДА /* ключ сортировки ^A^B^C^D^E^F^G^H^I^J,,,,^L^M^N^O^P^R^S^U^V,,,,,,,,,,,,,^KBriefkoNew^Ymfn,^Q^-^T /* &uf('+M^Oв/о^M1^P1^31^61'),,,, /* g15 = бриф &uf('+7W8#'), &uf('+7W15#',, &uf('+960.30#', if v920:'NJ' then &uf('Av200^A#1'),,,&uf('Av923^I#1'),,,,else &uf('Av461^X#1'),&uf('Av461^C#1'),,&uf('Av700^a#1'),,,&uf('Av200^a#1'),,,fi ),, ),,,,,,,,,,,,,,,, /*-------------------фильтр - есть ли текущий семестр /*----в G40 текущий семестр, если задана проверка if val(v991^=)=1 then &uf('+7W40#', if &unifor('IPRIVATE,DATFINOS,')<>'' and val(&unifor('3')) > val(&unifor('IPRIVATE,DATFINOS,')) or &unifor('IPRIVATE,DATFINOS,')='' and val(&unifor('34'))<9 then 'V' else if &unifor('IPRIVATE,DATFINOS,')<>'' and val(&unifor('3')) <= val(&unifor('IPRIVATE,DATFINOS,')) or &unifor('IPRIVATE,DATFINOS,')='' and val(&unifor('34'))>8 then 'O' fi fi),,,, &uf('+7W5#'),,,, (if p(v691) then ,,, if &uf('Ag40#1')='O' and s(',0,1,3,5,7,9,11,13,'): s(|,|v691^F|,|) or &uf('Ag40#1')='V' and s(',2,4,6,8,10,12,14,'): s(|,|v691^F|,|) or v691^F='' then &uf('+7W5#1'),break fi,,,,,,,,,,, fi/),, else &uf('+7W5#1'),,,, fi,,,,,,,,, if val(g5)=1 then /*---текущий есть в повторении 691 или ВСЕ семестры /*-------------------фильтр - все или только электронные if val(v991^9)=0 or val(&uf('6KoElectro'))>0 then /* только ЭУ /*------------------- фильтр - не аналоги if a(v991^-) and p(v699) and v699: '^U0' and v991^T='' or val(v991^-)=0 and p(v699) and v699: '^U0' and v991^T='' then /* аналог не выводится, если не задан выделенный фонд else /*------------------- фильтр - по характеру документа if v991^5='' or v991^5: s('!',v900^C,'!') or v991^5: s('!',v900^2,'!') or v991^5: s('!',v900^3,'!') or v991^5: s('!',v900^4,'!') or v991^5: s('!',v900^5,'!') or v991^5: s('!',v900^6,'!') then /* прошел по характеру документа &uf('+7W10#',(| |v910^T| |)),, (if p(v691) then &uf('+7W7#'), /* сначала отбор по меткам РЛ if &uf('Av991^D#1')='' or &uf('Av991^D#1')<>'' and val(&uf('Av907^A#1'))>=val(&uf('Av991^D#1')) then /* проверка по году издания if &uf('Av991^Z#1')='' or &uf('Av991^Z#1')<>'' and val(&uf('Av210^D#1'))>=val(&uf('Av991^Z#1')) then /* проверка по типу if &uf('Av991^G#1')='' or &uf('Av991^G#1')<>'' and s(&uf('Av991^G#1')): v691^G then /* защита от пробела в конце наименования в записи &uf('+7W1001#',if &uf('+961.1#',v691^D)=' ' then &uf('+961*1#',v691^D) else v691^D fi),,, if &uf('Av991^I#1')='' or &uf('Av991^I#1')<>'' and &uf('+97',&uf('Av991^I#1'))=&uf('+97',&uf('Ag1001#1')) then /* отбор по поляи 691, отсутствие считаю &uf('+7W1002#',v691^I),, if &uf('Av991^S#1')='' or v691^S='' or s('!',&uf('Av991^S#1'),'!'): s('!',v691^S,'!') then if &uf('Av991^F#1')='' or v691^F='' or s('!',&uf('Av991^F#1'),'!'): s('!',v691^F,'!') then if &uf('Av991^B#1')='' or v691^B='' or s('!',&uf('Av991^B#1'),'!'): s('!',v691^B,'!') then if &uf('Av991^A#1')='' or v691^A='' or s('!',&uf('Av991^A#1'),'!'): s('!',v691^A,'!') then if &uf('Av991^C#1')='' or v691^C='' or s('!',&uf('Av991^C#1'),'!'): s('!',v691^C,'!') then if &uf('Av991^N#1')='' or v691^N='' or s('!',&uf('Av991^N#1'),'!'): s('!',v691^N,'!') then if &uf('Av991^O#1')='' or v691^O='' or s('!',&uf('Av991^O#1'),'!'): s('!',v691^O,'!') then if &uf('Av991^V#1')='' or v691^V='' or s('!',&uf('Av991^V#1'),'!'): s('!',v691^V,'!') then if &uf('Av991^I#1')='' or v691^D='' or v691^D: &uf('Av991^I#1') then /* филиал if &uf('Av991^L#1')='' or v691^L: s(&uf('Av991^L#1')) then /* рабочая программа if &uf('Av991^>#1')='' or &uf('Av991^>#1')='0' or &uf('Av991^>#1')='1' and v691^5<>'' or &uf('+97',&uf('Av991^>#1'))=&uf('+97',v691^5) then /* в G10 все фонды из поля 910 if &uf('Av991^T#1')='' or &uf('Av991^T#1')<>'' and s(&uf('AG10#1')): s(&uf('Av991^T#1')) then /* формирую ключи сортировки и подполя в заголовках /* A - форма обучения &uf('+7W7#',if &uf('Av991^K#1')<>'' then '^A',if v691^O<>'' then v691^O else ' ' fi fi,), &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* B - вид обучения &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^4#1')<>'' then '^B',if v691^V<>'' then v691^V else ' ' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* C - факультет &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^M#1')<>'' then '^C',if v691^A<>'' then v691^A else ' ' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* D - кафедра &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^2#1')<>'' then '^D',if v691^B<>'' then v691^B else ' ' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* E - направление &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^1#1')<>'' then '^E',if v691^N<>'' then v691^N else ' ' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* F - специальность &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^P#1')<>'' then '^F',if v691^C<>'' then v691^C else ' ' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,, /* G - цикл &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^R#1')<>'' then '^G',if v691^S<>'' then v691^S else ' ' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,,, /* H - дисциплина &uf('+7W7#',&uf('AG7#1'), if &uf('Av991^3#1')<>'' then '^H', if v691^D<>'' then v691^D.10,,'|',v691^I else ' ' fi fi,) &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* + - специальность в дисциплине &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^+#1')<>'' then '^+',v691^C fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* I - гриф &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^W#1')<>'' then '^I',if &uf('Av900#1'): '21' then 'M' else 'K' fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* J - тип &uf('+7W7#',&uf('AG7#1'),if &uf('Av991^U#1')<>'' then '^J',if v691^G='' then '1ОСН' else if s(&uf('+97',v691^G)): 'ОСН' then '1' else '2' fi,,&uf('+97',v691^G) fi fi,),, &uf('+7U8#',&uf('AG7#1')),,,,,,,,,, /* K - ВRIEF &uf('+7U8#',&uf('AG7#1'), /* вместо BriefKoNew - 15 '^K',,&uf('Ag15#1'),,,,, if &uf('Av991^A#1')<>'' then '^L',&uf('Av991^A#1') fi,, if &uf('Av991^N#1')<>'' then '^M',&uf('Av991^N#1') fi,, if &uf('Av991^C#1')<>'' then '^N',&uf('Av991^C#1') fi,, if &uf('Av991^V#1')<>'' then '^O',&uf('Av991^V#1') fi,, if &uf('Av991^O#1')<>'' then '^P',&uf('Av991^O#1') fi,, if &uf('Av991^F#1')<>'' then '^R',&uf('Av991^F#1') fi,, if &uf('Av991^S#1')<>'' then '^S',&uf('Av991^S#1') fi,, if &uf('Av991^B#1')<>'' then '^U',&uf('Av991^B#1') fi,, if &uf('Av991^G#1')<>'' then '^V',&uf('Av991^G#1') fi,, /* по рабочей программе if &uf('Av991^>#1')<>'' then '^>',&uf('Av991^>#1') fi,, /* заголовок дисциплина if &uf('Av991^3#1')<>'' then '^3',&uf('Av991^3#1') fi,, /* был отбор по дисциплине - беру идентификатор if &uf('Av991^I#1')<>'' then '^7',&uf('Ag1002#1'), fi,, '^Y',f(val(mfn),0,0),,,,,, if &uf('Av991^Q#1')<>'' then '^Q',&uf('Av991^Q#1') fi,,, if &uf('Av991^<#1')<>'' then '^<',&uf('Av991^<#1') fi,,, if &uf('Av991^-#1')<>'' then '^-',&uf('Av991^-#1') fi,,, if &uf('Av991^:#1')<>'' then '^:',&uf('Av991^:#1') fi,, if &uf('Av991^T#1')<>'' then '^T',&uf('Av991^T#1') fi,,,,,, '^_',,&uf('+D'),,, ),,,, fi fi fi fi fi fi fi fi fi fi fi fi fi fi fi fi,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, fi/) &uf('+7G8') ,,,&uf('+7W9#'),, /* для первого формального заголовка /* &uf('+7U9#^01'),, /* (if p(g8) then if &uf('B',mhl,g8)<>'' then &uf('+7U9#',mpl,g8) fi fi/),, (G8/),,,,,,,,,,,,,,, fi fi fi fi