Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
Web Ирбис и Z-Ирбис :  ИРБИС Irbis
 
Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 19, September, 2012 12:58

Уважаемые коллеги! Пожалуйста, подскажите, что можно сделать. У нас (WEB-64 9.1) помимо стандартных баз данных (книги, статьи, периодика и т.п.) есть 2 нестандартные базы данных с совершенно другими метками. Поле 903 исторически задействовано под другие цели. И вообще, никакого шифра документа в этих базах нет. А очень хочется печатать и тут отмеченные записи. Нельзя ли как-то поле 1085 для этих баз данных сформировать иначе?

Re: Печать отмеченных записей
Пользователь: Gena (IP-адрес скрыт)
Дата: 19, September, 2012 13:28

Могу и ошибаться, но мне казалось, что там идет привязка к словарю, а не к полю. Попробуйте создать словарь шифров по вашим базам и вашему полю. Только префикс словаря возьмите стандартный 'I='. Если это не поможет, то надо будет детально разбираться

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 19, September, 2012 14:04

То есть обязателен префикс I= ? Там в одном формате есть проверка - сравниваются поля 1085 и 903. Могу попробовать для этих баз указать другое поле. Хотя очень не хочется добавлять новое поле шифра. Это тогда надо менять autoin, fst - всё очень хлопотно. А никак нельзя это обойти?

Re: Печать отмеченных записей
Пользователь: Gena (IP-адрес скрыт)
Дата: 19, September, 2012 14:11

Тогда давайте по порядку - какая у вас версия Ирбиса? Можете выложить вашу базу, или дать пример записей и полей, которые вы используете в ней?

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 19, September, 2012 14:26

Спасибо большое за внимание! Версия web-Ирбис 64 - 9.1
Мы работаем в обычном 64-м, а в web - представляем каталоги в Интранет. Заказ через него не осуществляем.
Базы данных официальных документов.
Поля, хоть чем-то похожие на шифр - Номер документа, дата принятия, и т.п.

Поле шифра документа по технологии работы этих баз не нужно. Можно было бы формировать префикс I из имеющихся полей - номер документа, год и т.д., но беда в том, что и префикс I= у нас тоже задействован под другие нужды. :-(
Очень не хочется глобальных перемен. Базы библиографические и не слишком спрашиваемые. Все пользуются полнотекстовыми. Знать бы, где задано, что поле 1085 - это префикс I? Тогда бы его можно было хоть поменять на какой-то другой.

Re: Печать отмеченных записей
Пользователь: Gena (IP-адрес скрыт)
Дата: 19, September, 2012 17:45

Вот что-то подсказывает, что без серьезной переработки тут врядли обойдется. Дело в том, что Принципы доступа и управления базой со стороны Веб-Ирбиса плюс-минус одинаковы для всех баз. И далеко не так просто перенастроить Веб-Ирбис, что бы он понимал, что в этой базе искать что-то по этим принципам, а вдругой - по другим. Если уж вы хотите подтянуть к вашей нестрандартной базе стандартные сервисы, то лучше доводить саму базу до стандартных правил. Это как бы лирическое отступление. Чуть позже посмотрю Веб-Ирбис по части печати и смогу более детально отписаться.

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 20, September, 2012 14:01

Большое спасибо!
Здесь не в самой печати дело, а в сохранении информации о выделенных (помеченных голочками) записях.

В формате briefwebr.pft

&uf('+1W973#', if v3600='img' then ,&uf('Av952^b#1'),else v903, fi),
.......

'<br><input type="checkbox"', if v1085:g973 and p(v1085) then ' checked="true" ' fi ,' name="MFN" value="', g973
------------------

Я уже начинаю склоняться к тому, что придётся менять наше поле 903 на что-то другое и т.п.
Я, конечно, раньше задала глупый вопрос насчет префикса i=
Это есть в ini, в main, для всех баз одинаково. Номер поля 903 и префикс. Вот если бы можно было для какой-то базы сделать свщй ini. А в нём указать другое поле и другой префикс. Это было бы замечательно!

Re: Печать отмеченных записей
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 21, September, 2012 15:39

beliangpntb написал(а):
-------------------------------------------------------
> Поле шифра документа по технологии работы этих баз
> не нужно. Можно было бы формировать префикс I из
> имеющихся полей - номер документа, год и т.д., но
> беда в том, что и префикс I= у нас тоже
> задействован под другие нужды. :-(

Вы можете использовать любой уникальный идентификатор записи. Оптимальный идентификатор -- MFN. Создайте словарь

3556 0 'MFN=',f(mfn,0,0)

и замените фреймах и JS(функция print_bo и др.) все упоминания I= на MFN=

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 25, September, 2012 14:52

Огромное спасибо! Это то, что нужно. Про js не всё поняла. Как их изменить? Какими средствами? Но буду разбираться. А про mfn я как раз и мечтала!

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 27, September, 2012 12:52

Прошу прощения, но прошу помощи дополнительно. Ничего не понимаю в js. Пыталась просмотреть эти файлы в блокноте, в надежде хоть что-то понять, но так и осталось загадкой - что там относится к печати? i= есть, много, но как счетчик цикла.
print_bo - это фрейм. Там хоть относительно понятно. Но где в js его функция?
И не совсем поняла, почему словарь нужен с меткой 3556? В fst стандартных баз такой метки тоже нет!



Редактировано 1 раз. Последний раз 08.11.2012 14:27 пользователем beliangpntb.

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 31, October, 2012 18:43

Уважаемые коллеги, спасибо, у меня всё получилось. Довольно просто. Правда, всё же пришлось поменять "старое" поле 903 на другое, а 903-е сделать идентификатором. Взяла значение mfn.
Добавила в fst 903 0 |I=|v903
Везде проставила значение mfn в поле 903. Добавила на всякий случай в аutoin.gbl две строки - если v903 и mfn не совпадают, то v903 удаляется, а затем снова присваивается значение mfn (это на случай изменений mfn - копирования в эту базу откуда-то, импорт-экспорт и т.п.) Всё работает. В js и формах ничего менять не пришлось.

Re: Печать отмеченных записей
Пользователь: Pavel Andjan (IP-адрес скрыт)
Дата: 08, November, 2012 07:03

Здравствуйте! У нас вот какая проблема, после того как я отмеченную карточку вывожу на печать (в файл) открываю её для просмотра и вижу что там совсем другая запись(корован историй), пробую отмечаю другую, опять открывается караван историй в место нужной! Из за чего так стало?
В Заранее спасибо!

Re: Печать отмеченных записей
Пользователь: Gena (IP-адрес скрыт)
Дата: 08, November, 2012 09:17

проверьте у этой записи (Караван историй) правильность заполнения поля 903.

Re: Печать отмеченных записей
Пользователь: beliangpntb (IP-адрес скрыт)
Дата: 08, November, 2012 10:40

Pavel Andjan написал(а):
-------------------------------------------------------
> Здравствуйте! У нас вот какая проблема, после того
> как я отмеченную карточку вывожу на печать (в
> файл) открываю её для просмотра и вижу что там
> совсем другая запись(корован историй), пробую
> отмечаю другую, опять открывается караван историй
> в место нужной! Из за чего так стало?
> В Заранее спасибо!

Я, увы, небольшой знаток, но если раньше все работало, а потом перестало, то, думаю, у вас "запортился" словарь. Стоит попробовать создать словарь базы данных заново через Администратор.



Редактировано 1 раз. Последний раз 08.11.2012 10:43 пользователем beliangpntb.

Re: Печать отмеченных записей
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 31, August, 2015 20:49

Цитата:
Вы можете использовать любой уникальный идентификатор записи. Оптимальный идентификатор -- MFN. Создайте словарь
3556 0 'MFN=',f(mfn,0,0)

и замените фреймах и JS(функция print_bo и др.) все упоминания I= на MFN=
Попробовал применить такой совет, но не помогло. Дело в том, что в скриптах используется SAME_SEARCH. Это параметр, который содержит шифр документа (модальное поле v4111) из поля 903. Он описывается в форме поиска. Как его принудительно изменить?
+
Оказывется, недостаточно изменить префикс словаря в скриптах. Необходимо также подправить формат print_checkbox.pft. Именно в этом месте в переменную 973 заносится значение поля 903 из записи (шифр документа в БД), а также это значение присваивается параметру под именем MFN. Это удалось обнаружить опытным путем. По прежнему непонятным является механизм использования параметров WI: SEL_MFN и MFN в принципе.
Кирилл, вы бы не могли более подробно рассказать про это?



Редактировано 1 раз. Последний раз 31.08.2015 23:43 пользователем woodyfon.

Re: Печать отмеченных записей
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 05, September, 2015 21:03

woodyfon написал(а):
-------------------------------------------------------
> Кирилл, вы бы не могли более подробно рассказать
> про это?

В последней версии для сохранения отмеченных записей используются куки.
Обработчик события выбора чекбокса выполняется в script.js ( $(".code_checkbox").change) При выборе чекбокса в кук selected_codes2 записываются значения ID документа (в большинстве случаев -- 903), разделённые "*". При печати строка с ID и * превращается в массив и формирует запрос.



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