UNIFOR — различия между версиями

Материал из Wikipedia
Перейти к: навигация, поиск
Строка 72: Строка 72:
 
|exampleSeeAlsoTitle=Выдать заданное повторение поля
 
|exampleSeeAlsoTitle=Выдать заданное повторение поля
 
}}
 
}}
 +
 +
{{Описание функции UNIFOR
 +
|name=B
 +
|title=Выдать библиографическую свертку документа
 +
}}
 +
 +
B
 +
 +
'''Примеры:'''
 +
&unifor('B')
 +
 +
{{Описание функции UNIFOR
 +
|name=C
 +
|title=Контроль ISSN/ISBN
 +
|description=Контроль ISSN/ISBN. Возвращаемое значение: 0 - при положительном результате, 1 - при отрицательном
 +
}}
 +
 +
С<ISSN/ISBN>
 +
 +
'''Примеры:'''
 +
&unifor("C"v10^a)
 +
 +
{{Описание функции UNIFOR
 +
|name=E
 +
|title=Вернуть заданное количество слов с начала строки
 +
}}
 +
 +
EN<строка>
 +
где <tt>N</tt> - количество слов (одна цифра).
 +
 +
 +
'''Примеры:'''
 +
&unifor("E3"v200^a)
 +
 +
{{Описание функции UNIFOR
 +
|name=F
 +
|title=Вернуть часть строки, начиная со следующего слова после указанного и до конца строки
 +
}}
 +
 +
FN<строка>
 +
где <tt>N</tt> - количество слов (одна цифра).
 +
 +
'''Примеры:'''
 +
&unifor("F3"v200^a)
 +
 +
{{Описание функции UNIFOR
 +
|name=G
 +
|title=Вернуть часть строки до или начиная с заданного символа
 +
}}
 +
 +
GNA<строка>
 +
где:
 +
* N=0 если ДО заданного символа (не включая его); N=1 если начиная С заданного символа (включая его).
 +
* А - заданный символ (# - обозначает цифру; $ - обозначает букву).
 +
 +
'''Примеры:'''
 +
&unifor("G0#"v700)
 +
&unifor("G1-"v700^a)
 +
 +
{{Описание функции UNIFOR
 +
|name=S
 +
|title=Универсальный счетчик
 +
}}
 +
 +
SN
 +
где:
 +
* N=0 - обнулить счетчик.
 +
* N=1..9 - увеличить значение счетчика на со-отв. значение.
 +
* N=A - вернуть значение счетчика - арабскими цифрами.
 +
* N=X - вернуть значение счетчика - римскими цифрами.
 +
 +
'''Примеры:'''
 +
&unifor('S0')
 +
&unifor('S1')
 +
&unifor('SA')
 +
 +
{{Описание функции UNIFOR
 +
|name=L
 +
|title=Вернуть окончание термина
 +
}}
 +
 +
L<начало_термина>
 +
 +
'''Примеры:'''
 +
&unifor("L"v101)
 +
 +
{{Описание функции UNIFOR
 +
|name=U
 +
|title=Кумуляция номеров журналов
 +
}}
 +
 +
U<strbase>,<stradd>
 +
где:
 +
* <strbase> - исходная кумулированная строка.
 +
* <stradd> - кумулируемые номера.
 +
 +
'''Примеры:'''
 +
&unifor("U"v909^h",12")
 +
 +
{{Описание функции UNIFOR
 +
|name=V
 +
|title=Декумуляция номеров журналов
 +
}}
 +
 +
V<strbase>
 +
где:
 +
<strbase> - исходная строка для декумуляции.
 +
 +
'''Примеры:'''
 +
&unifor("V"v909^h")
 +
 +
{{Описание функции UNIFOR
 +
|name=W
 +
|title=Контроль кумуляции
 +
}}
 +
 +
W<strbadd>,<strbase>
 +
где:
 +
* <strbase> - исходная кумулированная строка.
 +
* <stradd> - кумулируемый номер.
 +
'''Возвращаемые значения:'''
 +
* 0 - если <stradd> не присутствует в <strbase>.
 +
* 1 - если <stradd> присутствует в <strbase>.
 +
 +
'''Примеры:'''
 +
&unifor("W12,"v909^h)
 +
 +
{{Описание функции UNIFOR
 +
|name=Z
 +
|title=Размножение экземпляров
 +
|description=Размножение экземпляров. Функция ничего не возвращает. Можно применять только в глобальной корректировке
 +
}}
 +
 +
Z
 +
 +
'''Примеры:'''
 +
&unifor('Z')
 +
 +
{{Описание функции UNIFOR
 +
|name=R
 +
|title=Генерация случайного числа
 +
}}
 +
 +
RNN
 +
где NN - кол-во знаков в случайном числе (по умолчанию - 6).
 +
 +
'''Примеры:'''
 +
&unifor('R10')
 +
 +
 +
{{Описание функции UNIFOR
 +
|name=K
 +
|title=Раскодировка через справочник (меню)
 +
}}
 +
 +
K<имя_меню>\<исх_значение>
 +
 +
'''Примеры:'''
 +
&unifor("Kjz.mnu\"v101)
 +
 +
{{Описание функции UNIFOR
 +
|name=I
 +
|title=Вернуть параметр из INI-файла
 +
}}
 +
 +
I<SECTION>,<PAR_NAME>,<DE-FAULT_VALUE>
 +
 +
'''Примеры:'''
 +
&unifor('IPRIVATE,NAME,NONAME')
 +
 +
{{Описание функции UNIFOR
 +
|name=1
 +
|title=Вернуть заданный подэлемент
 +
}}
 +
 +
1NCXY?V<tag>^<delim>*<offset>.<length>#<occur>
 +
где:
 +
* N - номер повторения подэлемента; если указана * - номер подэлемента совпадает со счетчиком повторяющейся группы.
 +
* ХY - разделители между подэлементами.
 +
* С - принимает значения: R - разделители справа от каждого подэлемента, кроме последнего; L - разделители слева от каждого подэлемента; D - каждый подэлемент заключен слева разделителем Х и справа - Y.
 +
* ? - символ-разделитель.
 +
* Остальные параметры аналогичны параметрам для функции А (см. выше).
 +
 +
'''Примеры:'''
 +
(/&unifor('1*R; ?v910^h#1'))
 +
 +
 +
  
  
 
[[Категория:Язык форматирования системы ИРБИС]]
 
[[Категория:Язык форматирования системы ИРБИС]]

Версия 17:09, 7 апреля 2010

Содержание

Перечень функций формат-программы UNIFOR с примерами их применения

Выдать содержимое документа полностью – &uf('0…

Вид функции: 0.

Назначение: Выдать содержимое документа полностью (формат ALLl).

Формат (передаваемая строка):

0

Примеры:

&unifor('0')

Выдача данных, связанных с датой и временем – &uf('3…

Вид функции: 3.

Назначение: Выдача данных, связанных с датой и временем.

Формат (передаваемая строка):

Имеются следующие подфункции:

  • 3 - выдать текущую дату в виде ГГГГММДД.
  • 30 - выдать текущий год в виде ГГГГ.
  • 31 - выдать текущий месяц в виде ММ (с лидирующим нулем).
  • 32 - выдать текущий день в виде ДД (с лидирующим нулем).
  • 33 - выдать текущий год в виде ГГ.
  • 34 - выдать текущий месяц в виде М (без лидирующего нуля).
  • 35 - выдать текущий день в виде Д (без лидирующего нуля).
  • 36MM - выдать по заданному номеру месяца его название на русском языке в именительном падеже.
  • 37MM - выдать по заданному номеру месяца его название на русском языке в родительном падеже.
  • 38MM - выдать по заданному номеру месяца его название на английском языке.
  • 39 - выдать текущее время.
  • - выдать номер текущего дня от начала года.
  • 3BГГГГММДД/ддд - прибавить/вычесть из заданной даты в виде ГГГГММДД заданное количество дней (ддд – м.б. с минусом) и вернуть полученную дату в виде ГГГГММДД.
  • 3СГГГГММДД/ГГГГММДД - вычесть из одной даты в виде ГГГГММДД другую дату в виде ГГГГММДД и вернуть разницу в виде количества дней.

Примеры:

&unifor('36',&unifor('34'))

Удалить двойные кавычки из заданной строки – &uf('9…

Вид функции: 9.

Назначение: Удалить двойные кавычки из заданной строки.

Формат (передаваемая строка):

9<исх.строка>

Примеры:

&unifor("9"v200^a)

Выдать заданное повторение поля – &uf('A…

Вид функции: A.

Назначение: Выдать заданное повторение поля.

Формат (передаваемая строка):

AV<tag>^<delim>*<offset>.<length>#<occur>

где:

  • <tag> – метка поля;
  • <delim> – разделитель подполя;
  • <offset> – смещение;
  • <length> – длина;
  • <occur> – номер повторения.

Примеры:

&unifor('Av200#2')
&unifor('Av910^a#5')
&unifor('Av10^b*2.10#2')

Выдать заданное оригинальное повторение поля – &uf('P…

Вид функции: P.

Назначение: Выдать заданное оригинальное повторение поля.

Формат (передаваемая строка): см. формат для функции Выдать заданное повторение поля – &uf('A….

Примеры: см. примеры для функции Выдать заданное повторение поля – &uf('A….

Выдать библиографическую свертку документа – &uf('B…

Вид функции: B.

Назначение: Выдать библиографическую свертку документа.

Формат (передаваемая строка):

B

Примеры:

&unifor('B')

Контроль ISSN/ISBN – &uf('C…

Вид функции: C.

Назначение: Контроль ISSN/ISBN. Возвращаемое значение: 0 - при положительном результате, 1 - при отрицательном.

Формат (передаваемая строка):

С<ISSN/ISBN>

Примеры:

&unifor("C"v10^a)

Вернуть заданное количество слов с начала строки – &uf('E…

Вид функции: E.

Назначение: Вернуть заданное количество слов с начала строки.

Формат (передаваемая строка):

EN<строка>

где N - количество слов (одна цифра).


Примеры:

&unifor("E3"v200^a)

Вернуть часть строки, начиная со следующего слова после указанного и до конца строки – &uf('F…

Вид функции: F.

Назначение: Вернуть часть строки, начиная со следующего слова после указанного и до конца строки.

Формат (передаваемая строка):

FN<строка>

где N - количество слов (одна цифра).

Примеры:

&unifor("F3"v200^a)

Вернуть часть строки до или начиная с заданного символа – &uf('G…

Вид функции: G.

Назначение: Вернуть часть строки до или начиная с заданного символа.

Формат (передаваемая строка):

GNA<строка>

где:

  • N=0 если ДО заданного символа (не включая его); N=1 если начиная С заданного символа (включая его).
  • А - заданный символ (# - обозначает цифру; $ - обозначает букву).

Примеры:

&unifor("G0#"v700)
&unifor("G1-"v700^a)

Универсальный счетчик – &uf('S…

Вид функции: S.

Назначение: Универсальный счетчик.

Формат (передаваемая строка):

SN

где:

  • N=0 - обнулить счетчик.
  • N=1..9 - увеличить значение счетчика на со-отв. значение.
  • N=A - вернуть значение счетчика - арабскими цифрами.
  • N=X - вернуть значение счетчика - римскими цифрами.

Примеры:

&unifor('S0')
&unifor('S1')
&unifor('SA')

Вернуть окончание термина – &uf('L…

Вид функции: L.

Назначение: Вернуть окончание термина.

Формат (передаваемая строка):

L<начало_термина>

Примеры:

&unifor("L"v101)

Кумуляция номеров журналов – &uf('U…

Вид функции: U.

Назначение: Кумуляция номеров журналов.

Формат (передаваемая строка):

U<strbase>,<stradd>

где:

  • <strbase> - исходная кумулированная строка.
  • <stradd> - кумулируемые номера.

Примеры:

&unifor("U"v909^h",12")

Декумуляция номеров журналов – &uf('V…

Вид функции: V.

Назначение: Декумуляция номеров журналов.

Формат (передаваемая строка):

V<strbase>

где: <strbase> - исходная строка для декумуляции.

Примеры:

&unifor("V"v909^h")

Контроль кумуляции – &uf('W…

Вид функции: W.

Назначение: Контроль кумуляции.

Формат (передаваемая строка):

W<strbadd>,<strbase>

где:

  • <strbase> - исходная кумулированная строка.
  • <stradd> - кумулируемый номер.

Возвращаемые значения:

  • 0 - если <stradd> не присутствует в <strbase>.
  • 1 - если <stradd> присутствует в <strbase>.

Примеры:

&unifor("W12,"v909^h)

Размножение экземпляров – &uf('Z…

Вид функции: Z.

Назначение: Размножение экземпляров. Функция ничего не возвращает. Можно применять только в глобальной корректировке.

Формат (передаваемая строка):

Z

Примеры:

&unifor('Z')

Генерация случайного числа – &uf('R…

Вид функции: R.

Назначение: Генерация случайного числа.

Формат (передаваемая строка):

RNN

где NN - кол-во знаков в случайном числе (по умолчанию - 6).

Примеры:

&unifor('R10')


Раскодировка через справочник (меню) – &uf('K…

Вид функции: K.

Назначение: Раскодировка через справочник (меню).

Формат (передаваемая строка):

K<имя_меню>\<исх_значение>

Примеры:

&unifor("Kjz.mnu\"v101)

Вернуть параметр из INI-файла – &uf('I…

Вид функции: I.

Назначение: Вернуть параметр из INI-файла.

Формат (передаваемая строка):

I<SECTION>,<PAR_NAME>,<DE-FAULT_VALUE>

Примеры:

&unifor('IPRIVATE,NAME,NONAME')

Вернуть заданный подэлемент – &uf('1…

Вид функции: 1.

Назначение: Вернуть заданный подэлемент.

Формат (передаваемая строка):

1NCXY?V<tag>^<delim>*<offset>.<length>#<occur>

где:

  • N - номер повторения подэлемента; если указана * - номер подэлемента совпадает со счетчиком повторяющейся группы.
  • ХY - разделители между подэлементами.
  • С - принимает значения: R - разделители справа от каждого подэлемента, кроме последнего; L - разделители слева от каждого подэлемента; D - каждый подэлемент заключен слева разделителем Х и справа - Y.
  •  ? - символ-разделитель.
  • Остальные параметры аналогичны параметрам для функции А (см. выше).

Примеры:

(/&unifor('1*R; ?v910^h#1'))