Предложение по датировке объектов

Обсуждение сайта и форума. Книга жалоб и предложений.
Ответить
Игорь Демин
Сообщения: 1069
Зарегистрирован: 27 ноя 2005, 18:57
Откуда: Москва

Предложение по датировке объектов

Сообщение Игорь Демин »

Уважаемые коллеги! Во-первых, всех с праздником Христова Воскресения. Во-вторых, хотел бы вынести на обсуждение предложение по датировкам храмов. Разговор об этом уже был, решения не найдено, у меня по размышлении возникла новая идея.

Проблема

Проблема всем известна. Типичный случай: церковь построена во второй половине 17 века, а колокольня, скажем, в 1883 году. Сейчас приходится либо вовсе забывать про колокольню, указывая что-то вроде 1650-1700, либо же брать период целиком: 1650-1883. В первом случае колокольня не находится по поиску объектов XIX века, во втором случае объект попадает в поиск по 18 веку, к которому он не имеет ни малейшего отношения. И то и другое печально. Вывод очевиден: начальной и конечной даты для времени постройки недостаточно.

Проект решения

Я предлагаю поступить следующим образом. Для датировки использовать два поля: первое условно называется "Дата постройки". В нем в свободной форме указываются даты. Например, "вторая половина XVII века, колокольня - 1883 г.". Это поле не используется для поиска.

Второе поле условно назову "Шкала постройки". Это действительно одно поле, но оно предстает в виде таблицы, примерно такой:
Изображение

Сразу оговорюсь, что набор столбцов пока приблизительный. Мне кажется, однако, что деление менее чем на четверть века не нужно, так как тогда шкала чересчур усложнится, а смысла в нем мало.

Нижняя строка таблицы - это набор флажков, в которых можно ставить галочки, в нашем случае - вот так:
Изображение

Такая же шкала используется в форме поиска. Например, если нам нужно найти объекты конца XIX - начала XX века, то в поисковом запросе указываем:
Изображение

Объект находится, так как есть совпадение по одному столбцу. А вот в поиск по 18 веку объект не попадает. Чего, собственно, и хотелось.

Техническая сторона (читать необязательно ) )

Предлагаемый способ основан на побитовом сравнении, что обеспечивает очень быстрый поиск. Шкала переводится в биты, в нашем примере шкала объекта имеет форму двоичного числа 110000000100000, то есть десятичное 24608. Так что это, действительно, одно поле, причем довольно компактное. Запрос имеет форму 110000, то есть 48. Используемая в проекте СУБД позволяет производить побитовое сравнение. Побитовая операция "И" выдает положительный результат при совпадении хотя бы одной позиции со значением 1 (то есть совпадение галочек хотя бы в одном столбце шкалы поискового запроса и шкалы объекта).

Преимущества

1. Структура базы данных практически не изменяется. Никаких новых таблиц и связей. Ограниченный объем допрограммирования.

2. Шкалу исключительно быстро заполнять. Достаточно несколько раз щелкнуть мышкой. Это преимущество я считаю исключительно важным.

3. Поиск очень быстрый.

4. На основе существующих сейчас дат постройки можно автоматически заполнить как поле "Шкала", так и свободное поле "Дата постройки", так что никакого тотального ручного переноса не будет.

Недостатки

Недостаток один и вполне очевидный: невозможность поиска по более мелким периодам, чем указаны в шкале. Но я думаю, что достоинства перевешивают.

Жду отзывов.
Олег Щёлоков
Модератор
Сообщения: 7819
Зарегистрирован: 10 май 2004, 10:42
Откуда: г.Владимир
Контактная информация:

Re: Предложение по датировке объектов

Сообщение Олег Щёлоков »

Отзывы положительные, добавить бы галок сразу на весь век одновременно.
Последний раз редактировалось Олег Щёлоков 20 апр 2009, 18:28, всего редактировалось 1 раз.
Аватара пользователя
Василий Шелёмин
Модератор
Сообщения: 4635
Зарегистрирован: 30 июл 2004, 15:53
Откуда: Санкт-Петербург
Контактная информация:

Re: Предложение по датировке объектов

Сообщение Василий Шелёмин »

Игорь - да!, и к пожеланию Олега тоже присоединяюсь.
Аватара пользователя
uchazdneg
Модератор
Сообщения: 2864
Зарегистрирован: 16 мар 2008, 00:38
Откуда: N-37-II
Контактная информация:

Re: Предложение по датировке объектов

Сообщение uchazdneg »

Поддерживаю!!
Аватара пользователя
etienne
Модератор
Сообщения: 1671
Зарегистрирован: 11 янв 2006, 22:51
Откуда: Богородское

Re: Предложение по датировке объектов

Сообщение etienne »

Прекрасный выход из положения. Думаю, надо принимать. А то очень давно у нас косяки с датами и никакого движения вперед.
Игорь, спасибо за классное предложение!
Аватара пользователя
Н. и Е. Андрущенко
Сообщения: 961
Зарегистрирован: 16 окт 2007, 22:52
Откуда: г. Северодвинск
Контактная информация:

Re: Предложение по датировке объектов

Сообщение Н. и Е. Андрущенко »

Так а если годы точно известен? Это ведь не столь редкий случай даже для XVII в. И эта информация в таком случае вообще пропадает.
Аватара пользователя
etienne
Модератор
Сообщения: 1671
Зарегистрирован: 11 янв 2006, 22:51
Откуда: Богородское

Re: Предложение по датировке объектов

Сообщение etienne »

Если год точно известен, то он и указывается.
А поиск идет по четвертям века.
Игорь Демин
Сообщения: 1069
Зарегистрирован: 27 ноя 2005, 18:57
Откуда: Москва

Re: Предложение по датировке объектов

Сообщение Игорь Демин »

Да, год указывается в другом поле, причем в свободной форме. То есть можно указать что-нибудь такое:

1673 (по другим источникам - 1667)

1670-1673 (освящение), 1678 (завершение отделки)

1673 (согласно И.И. Иванову), 1679 (по данным прихода)


и т.п.

Думаю даже, что в случае поиска по дате, в результатах поиска эта информация должна появляться, чтобы облегчить жизнь пользователю.
Starsbest
Сообщения: 3
Зарегистрирован: 29 май 2009, 15:13
Откуда: Россия

Предложение по датировке объектов

Сообщение Starsbest »

да уже перетирался этот вопрос в разделе про сайт.
Давно пора.
Но старшие чего-то ждут.
а народ пока изгаляется как может, 3 страницы тем уже...
ИМХА чем позже разгребать всё это, тем сложнее.
Аватара пользователя
Павел @sobory.ru
Модератор
Сообщения: 4798
Зарегистрирован: 04 апр 2004, 22:00
Контактная информация:

Re: Предложение по датировке объектов

Сообщение Павел @sobory.ru »

Поднимаю тему наверх, вопрос становится приоритетным.
Реализовано будет в кратчайшие сроки так, как предложено в этой теме. Если есть дополнительные соображения, самое время их высказать.
Ответить