Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
АРМ Комплектатор :  ИРБИС Irbis
 
Поле 49 (ББК)
Пользователь: Alex_ck_ua (IP-адрес скрыт)
Дата: 08, October, 2007 13:39

Добрый день!
Подскажите пожалуйста, мож но ли в 49 подполе добавлять подполя и разделить существующие, повлияет ли на целостность программы?
Спасибо

Re: Поле 49 (ББК)
Пользователь: Gena (IP-адрес скрыт)
Дата: 09, October, 2007 13:10

Можно, если вам нужно выделить подсчет по каким-то еще конкретным рубрикам, вам следует определит точно те коды ББК, которые входят в рубрику, а потом добавить в файл rksu.fst формат на добавление новых строк, указать новые строки с новыми разделителями.
Я себе углублял 45 и 44 поля. Хотите, можно списать и пообщаться ближе на эту тему.

Re: Поле 49 (ББК)
Пользователь: Alex_ck_ua (IP-адрес скрыт)
Дата: 11, October, 2007 12:10

Подскажите пожалйста, что нужно дописать в файле rksu.fst
что бы мои изменения в подполях 49-го поля
функционировали правильно

СПАСИБО

Вот файл моих изменений

Вложения: Untitled-3.jpg (118.7KB)  
Re: Поле 49 (ББК)
Пользователь: Alex_ck_ua (IP-адрес скрыт)
Дата: 19, October, 2007 17:04

Что нужно добавить в rksu.fst, что бы добавленые строки функционировали правильно, или ничего не нужно изменять в файле rksu.fst ?
Напиши хоть кто нибудь.

Re: Поле 49 (ББК)
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 19, October, 2007 18:08

Alex_ck_ua написал(а):
-------------------------------------------------------
> Добрый день!
> Подскажите пожалуйста, мож но ли в 49 подполе
> добавлять подполя и разделить существующие,
> повлияет ли на целостность программы?

Конечно, придется менять rksu.fst.
Для каждого подполя в поле 49 должна быть прописана строка, определяющая алгоритм его формирования.
Замечу, что в дистрибутивном варианте заложено условие, по которому поле 49 формируется при отсутствии в записи полей 60 и 675.


> Спасибо

Re: Поле 49 (ББК)
Пользователь: Alex_ck_ua (IP-адрес скрыт)
Дата: 23, October, 2007 12:59

Вот пример кода с файла, выбрал одну строку 49, я так понял что
нужно в этом коде проставить разделы ББК на которые я заменил существовавшие, вместо 60 ставлю 2 и так дальше?
Больше ничего не надо менять?

49^1 21 if a(v60) and a(v675) and p(v621)then if &unifor('Av621.2#1')='60' or &unifor('Av621.2#1')='63' or &unifor('Av621.2#1')='66' then f(rsum((if p(v910)then if v910^u='v991'then if'2 6 7':v910^a then else v910^1|;|,|1;|n910^1 fi fi fi)),0,0)fi fi/

Re: Поле 49 (ББК)
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 23, October, 2007 14:02

С учетом того, что &unifor('Av621.2#1')='60' означает, что первые 2 позиции первого повторения поля 621 равны 60

Re: Поле 49 (ББК)
Пользователь: Alex_ck_ua (IP-адрес скрыт)
Дата: 30, October, 2007 10:51

Добрый день !!!
Подскажите пожалуйста зачем в файле rksu.fst(кусок кода ниже) условие еще для 66 ББК, если "Общественно-политическая литература [60, 63]"
только 60, 63.

Это условие обязательно or &unifor('Av621.2#1')='66' ?

49^1 21 if a(v60) and a(v675) and p(v621)then if &unifor('Av621.2#1')='60' or &unifor('Av621.2#1')='63' or &unifor('Av621.2#1')='66'
then f(rsum((if p(v910)then if v910^u='v991'then if'2 6 7':v910^a then else v910^1|;|,|1;|n910^1 fi fi fi)),0,0)fi fi/

Спасибо

Re: Поле 49 (ББК)
Пользователь: Alex_ck_ua (IP-адрес скрыт)
Дата: 02, November, 2007 12:08

В программе ИРБИС 2006.1, в АРМЕ Комплектатор в поле 49, 1-е подполе
"Общественно-политическая литература [60,63]", за это подполе отвечает следующий код в файле RKSU.FST

49^1 21 if a(v60) and a(v675) and p(v621)then if &unifor('Av621.2#1')='60' or &unifor('Av621.2#1')='63' or &unifor('Av621.2#1')='66' then f(rsum((if p(v910)then if v910^u='v991'then if'2 6 7':v910^a then else v910^1|;|,|1;|n910^1 fi fi fi)),0,0)fi fi/

--------------------------------------------------------------------
Как изменить этот код для более правильного значения ББК
"Общественно-политическая литература [60-68]

нужно дописать в коде дополнительно номера 61,62,63,64,65,66,67,68 ?

и это будет выглядеть вот так ?

49^1 21 if a(v60) and a(v675) and p(v621)then if &unifor('Av621.2#1')='60' or &unifor('Av621.2#1')='61' or &unifor('Av621.2#1')='62' or &unifor('Av621.2#1')='63' or &unifor('Av621.2#1')='64' or &unifor('Av621.2#1')='65' or &unifor('Av621.2#1')='66' or &unifor('Av621.2#1')='67' or &unifor('Av621.2#1')='68' then f(rsum((if p(v910)then if v910^u='v991'then if'2 6 7':v910^a then else v910^1|;|,|1;|n910^1 fi fi fi)),0,0)fi fi/

Или же нужно еще что-то дополнительно вписывать ?
Спасибо

Re: Поле 49 (ББК)
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 02, November, 2007 12:39

Это правильно.
P.S. Поскольку эти данные не гостированы, в исходном варианте реализован алгоритм, предложенный первыми пользователями



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.