Продолжаем работу
|
|
1_абрам | Дата: Четверг, 28.05.2009, 16:27 | Сообщение # 46 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) Если есть идеи - делитесь, будем думать... Можно сделать так: если книжка находится в какой-то группе, то на нее режим "Показывать удаленные" не действует. Тогда реализуется вариант б), правда без "соответствующей пометки". Пометка имхо и не нужна, - если книжка выбрана, то пускай и остается в списке, а автоматическое отслеживание ее редакций хотя и возможно (название, и перечень авторов, как правило, не изменяются), но не очень в этом случае нужно.
Сообщение отредактировал 1_абрам - Четверг, 28.05.2009, 16:29 |
|
| |
Shams | Дата: Четверг, 28.05.2009, 18:48 | Сообщение # 47 |
Генерал-майор
Группа: Проверенные
Сообщений: 274
Статус: Offline
| Quote (drserj) Зачастую меняется и название, и перечень авторов и содержимое. Ну, если меняется название книги или перечень/написание авторов, тут уж ничего не поделаешь. Я имел в виду только случай полного совпадения. Если дальше напишу чушь, не судите строго, я в программировании, вообще, и в базах данных, в частности, - ноль. Нельзя ли книгу, занесенную в группу, как бы "полуоткрепить" от базы, скажем прописав ее дополнительно в какой-нибудь ini-файл. Так, чтобы с одной стороны она по прежнему вызывалась из базы, а с другой - при удалении ее из базы, из списка группы не пропадала. После обновления базы автоматически запускается сверка списка групп с ней. При обнаружении "беспризорной" книги, производится поиск идентичной по автору-названию вверх по ID. Если поиск удачен - старая книга заменяется новой, если нет - выставляется маркер удаления. Ну или хотя бы просто сразу выставить такой маркер при отсутствии книги из списка в базе. Только сейчас увидел пост 1_абрам. И такой вариант бы удовлетворил. А пометка при этом будет автоматически - красным цветом.
Сообщение отредактировал Shams - Четверг, 28.05.2009, 19:01 |
|
| |
drserj | Дата: Четверг, 28.05.2009, 19:32 | Сообщение # 48 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Значит, я понял 3 варианта: 1.Данные по отмеченным книгам загоняем в отдельную таблицу базы 2.Тупо не фильтруем по удалённым те записи, которые в группах (во всех гридах?) 3.Ищем на полную совместимость с удалённой и заменяем на найденный букид. 1 и 2 пункты не дают гарантии что книга есть в наличии 3 не дает гарантии, что останется полное соответствие. Еще варианты, или давайте уточнять, на чем останавливаемся.
drSerj
|
|
| |
1_абрам | Дата: Четверг, 28.05.2009, 22:22 | Сообщение # 49 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| В любом случае надо сделать так, чтобы отмеченные книги не пропадали. У меня обычно, если книжка отмечена (находится в группе), то она она скачана. Следовательно, и нет проблемы с наличием книжек. М.б. сделать так: пункт 2 (во всех гридах). А если книжка отсутствует, то при попытке ее открыть выполняется пункт 3 (вместо этого можно сообщить, что книжки нет и пусть пользователь сам ищет новую редакцию книжки).
Сообщение отредактировал 1_абрам - Четверг, 28.05.2009, 22:22 |
|
| |
drserj | Дата: Четверг, 28.05.2009, 23:20 | Сообщение # 50 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| ых.. 2 пункт... опять нагружать sql-запрос... тихо тянемся к тормозам... ну и ладно...
drSerj
|
|
| |
1_абрам | Дата: Пятница, 29.05.2009, 04:49 | Сообщение # 51 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) ых.. 2 пункт... опять нагружать sql-запрос... тихо тянемся к тормозам. Ну тогда пункт 1 + пункт 3 , если книжки нет. Это сложнее в реализации. М.б. стоит сделать все это во второй ветке программы вместе с реализацией мультибиблиотечности.
|
|
| |
drserj | Дата: Пятница, 29.05.2009, 16:15 | Сообщение # 52 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Ладно, подумаем... 2 ветку еще продумать надо. Просто создать на базе первой вторую - не логично.
drSerj
|
|
| |
1_абрам | Дата: Суббота, 30.05.2009, 10:05 | Сообщение # 53 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) Ладно, подумаем... 2 ветку еще продумать надо. Просто создать на базе первой вторую - не логично. Тебе виднее, лишь бы программа не стала медленной и монстрообразной. Пока все (за исключением нескольких мелочей) исключительно удобно.
|
|
| |
drserj | Дата: Суббота, 30.05.2009, 13:04 | Сообщение # 54 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (1_абрам) лишь бы программа не стала медленной и монстрообразной вот этого и не хочется
drSerj
|
|
| |
Shams | Дата: Воскресенье, 31.05.2009, 07:52 | Сообщение # 55 |
Генерал-майор
Группа: Проверенные
Сообщений: 274
Статус: Offline
| Пользую для fb2-файлов AlReader. Но, иногда, возникает необходимость открыть книгу в HaaliReader или CoolReader. Естественно, первое, что приходит в голову - Пакетные операции. Книга открывается в нужной читалке, но... пока читалку не закроешь, Библиотекарь блокируется окошком выгрузки файла. Подстановка в качестве исполнимого файла не самой читалки, а батника из одной строки, ее вызывающего, чуть улучшает ситуацию - Библиотекарь можно разблокировать, принудительно закрыв окно Командной строки. Но все равно это как-то некузяво. Что можно предпринять в этой ситуации? Может есть какие-то команды, позволяющие завершить bat-файл до завершения вызванной из него программы? Или, может быть, уважаемый drserj введет в программу какие-нибудь настройки, позволяющие разрулить такую ситуацию?
|
|
| |
drserj | Дата: Воскресенье, 31.05.2009, 12:53 | Сообщение # 56 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| вариант автозакрытия в бат-файлах есть.... start /b F:\work\librusec\HaaliReader.exe %1 но, есть нюанс - файл удаляется после отработки скрипта и соответственно - если книга не успела открыться - файл автоматом удалится. как вариант - можно создать в скрипте копию, но тогда прийдется удалять ее вручную. Как вариант - копировать в темп, который автоматом можно чистить. Вобщем, варианты есть, хоть и через ж.... Вообще-то по-хорошему хотелось создать развернутую работу со скриптами, но всё руки не доходят... а... еще, как вариант, попробуй поиграйся не с батниками а с vb-скриптами, там, ессесно, возможностей куда больше.
drSerj
|
|
| |
drserj | Дата: Воскресенье, 31.05.2009, 15:39 | Сообщение # 57 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Вот, как вариант, решение при помощи cmd-файла. Пути поправить под свои. Файл копируется в темп-каталог с расширением tmp (при желании - можно и не переименовывать) hr.cmd Code set p="F:\work\librusec\temp\%~n1.tmp" copy %1 %p% start /b F:\work\librusec\HaaliReader.exe %p%
drSerj
|
|
| |
Shams | Дата: Воскресенье, 31.05.2009, 21:30 | Сообщение # 58 |
Генерал-майор
Группа: Проверенные
Сообщений: 274
Статус: Offline
| Большое спасибо! То что надо. Правда помучился с HaaliReader, пока не разобрался с лишними пробелами в конце строк, которые образовались при копировании. Почему-то он очень болезненно на них реагирует, в отличии от CoolReader. А самостоятельно реализовать советы из предыдущего поста - не хватило знаний.
|
|
| |
drserj | Дата: Воскресенье, 31.05.2009, 22:00 | Сообщение # 59 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Да незачто... Всего час брожений в гугле и рамблере Ну забыл я уже коммандный язык
drSerj
|
|
| |
1_абрам | Дата: Понедельник, 08.06.2009, 11:33 | Сообщение # 60 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Что-то у меня не получается конвертация в lrf. Cначала все заработало, а потом почему-то перестало. Появляется и быстро исчезает досовское окошко, а lrf файлы не появляются. Настройки, вроде бы не менял: -i %F -o %f.lrf -s default_styles.sini Программа fb2lrf_c.exe работает.
|
|
| |