-
06.12.2017, 19:24 #121
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
eQSLReader 1.01.010 - Release Candidat #5
Кажется, проблема со случившейся "поломкой" на сервере eQSL.cc решена. Нет, от команды сервера ответа до сих пор нет. Да, для решения проблемы пришлось серьёзно "пропахать" весь предоставляемый сервером интерфейс... в коем нашлось место для запросов, подтверждающих сроки действия лицензии и позволяющих проверить валидность пары логин/пароль.
Так что у меня нет больше причин задерживать выпуск этой версии. У себя я проверил во всех режимах, которые только смог придумать. У меня - работает. Желаю всем, чтобы и у них работало. Не будет работать - шлите баг-репорты (двойной клик мышки на аватарке в форме "О программе" автоматически создает шаблон письма автору в вашем любимом почтовом клиенте).
Дополнительные вкусности, что обещал:
1). Для удобства работы с изображениями карточек сделан встроенный просмотрщик. Вызов - [Enter] или двойной клик мышки на строчке загруженной карточки в списке.
2). Есть сортировка по части колонок списка (это было в предыдущих версиях, но - лучше напомнить).
3). Для сложных форм есть подсказки по отдельным полям; включаются через Справка -> Подсказки в формах, отображаются в виде хинтов при наведении мышки.
4). Для тех модуляций, которые описываются не только Mode, но еще и SubMode, в соответствующей строке списка модуляция выводится жирным шрифтом; если надо посмотреть расшифровку - включайте подсказки, читайте хинты.
Программа по-прежнему распространяется неограниченно и бесплатно. Автор по-прежнему не требует вознаграждения за свой труд. Однако ежели у кого-то (вдруг!) возникнет желание поблагодарить автора за программу, которая пригодилась в личном подсобном радиолюбительском хозяйстве - это легко сделать, написав сообщение здесь, на форуме. Для тех, кто стесняется высказываться публично - есть вариант отправки письма автору. Будет приятно открыть для себя, что кому-то мой продукт пригодился.
Эту версию программы брать здесь: eQSLReader1206-RC5.zip Если у кого-то еще остались предыдущие версии - лучше их отложить и попользоваться этой. Всем, принявшим конструктивное участие в разработке, - спасибо!Последний раз редактировалось R2ADF; 07.12.2017 в 11:31.
-
06.12.2017, 19:40 #122
Отлично , все работает !
Спасибо!Николай
-
07.12.2017, 11:14 #123UR5WCAГость
RC4 - работает, а RC5 - нет. Win10/64
-
07.12.2017, 21:34 #124
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
-
08.12.2017, 09:10 #125
- Регистрация
- 18.03.2013
- Адрес
- Москва (TM)
- Возраст
- 57
- Сообщений
- 836
- Поблагодарили
- 194
- Поблагодарил
- 58
Добрый день. Интерфейс стал лучше, тест проходит.
В последнюю версию внесен один крупный баг - независимо от настройки Уникальные позывные карточки с не уникальными позывными при загрузке полностью игнорируются, хотя в отчете пишет, что загрузила. Но для коллекционеров уникальных карточек это не имеет значения.
(Тест: отметить две или более карточки с одинаковым позывным, будет загружена только одна карточка)
Проблема решаема силами пользователя - отметь одну карточку, она и загрузится.
(Есть мелкие баги в GUI: при манипуляциях со списком можно получить Exception. Например, отобразить только отмеченные и загрузить их, но это может быть следствие некорректной обработки не уникальных позывных)
Чтобы проверить это, я набрался смелости и стер все карточки (просто перезапустил программу на другом компьютере под Win7/64.
Загрузил все связи и изображения со сброшенным признаком уникальных позывных. Вот оно:
загрузились не все, но при каждой следующей загрузке изображений общее количество карточек в каталоге eQSL увеличивается.
Если повторять операцию, возможно когда-нибудь загрузятся все.
Надо разбираться с признаком уникальности.
73!Последний раз редактировалось RX3AKF; 08.12.2017 в 10:03.
Василий (RX3AKF)
-
08.12.2017, 14:15 #126
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
Да, есть такое. Только дело тут не в признаке неуникальности. Я специально проверил - на формируемых запросах сервер (если идти медленно, по шагам, в режиме отладки) отдает все. А вот в потоке что-то пропускает. По всей видимости, дело в таймауте. Очень не хочется задирать таймаут до нескольких секунд - хотя при этом все грузит с первого раза. Но будет до-о-о-о-о-о-о-о-олго! Будем изучать поведение сервера...
По этому описанию не смог воспроизвести ошибку, увы. Можно об этом поподробнее?
-
08.12.2017, 20:10 #127
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
eQSLReader 1.01.011 - Release Candidat #6
Итак: примерно со вчерашнего дня, 07.12.2017, на сервере eQSL.cc изменился алгоритм отдачи изображений. Теперь сервер контролирует интервал между двумя последовательными попытками забрать изображение, но не просто контролирует - он еще стал анализировать уровень загрузки процессора. Что, конечно, для команды сервера похвально... Видимо многократные запуски моей скромной приблуды создают серверу такую нагрузку, что он тихонько "сходит с ума". Поскольку сервер этот - вполне коммерческий ресурс, и его команда, мягко говоря, в состоянии своевременно проводить апгрейд "железа" - это их проблемы.
Со своей стороны, я сделал шаг в направлении согласовать поведение своей программы с поведением сервера. Теперь, если сервер вместо формирования нужной мне странички со ссылкой на загружаемую картинку - просто отдает HTML, в котором "плачется" на перегрузку процессора, программа увеличивает тайм-аут и делает еще одну попытку забрать изображение.
Всего количество повторных попыток программно ограничено пятью. После пятой попытки оставляет изображение незагруженным (до следующего раза), и идет по списку дальше. При "затыке" таймаут скачком увеличивается, при последовательных успешных загрузках - плавно уменьшается. В поле после "светофора" сообщается среднее время загрузки одного изображения, в скобках - установленный таймаут.
Проверил на массиве (более 500 карточек). Конечно, работать стало дольше. Зато ничего не пропускает (я при первом прогоне пропусков не заметил). Надеюсь, команду сервера такое решение удовлетворит, и они перестанут применять решения "мексиканского программирования" в тех случаях, когда опять столкнутся с русскими алгоритмами.
Желающим - забирать здесь: eQSLReader1208-RC6.zip. Отдельная благодарность RX3AKF за наблюдательность и настырность в тестировании программы. По-прежнему настоятельно прошу баг-репорты направлять по электрической почте (ее я читаю с гораздо большей оперативностью).Последний раз редактировалось R2ADF; 08.12.2017 в 22:47.
-
08.12.2017, 22:12 #128
- Регистрация
- 18.03.2013
- Адрес
- Москва (TM)
- Возраст
- 57
- Сообщений
- 836
- Поблагодарили
- 194
- Поблагодарил
- 58
Никакой срочности нет, но приятно, что одной нормально работающей программой стало больше. (Exception больше не удается получить).
У меня все работает, с чем поздравляю автора. Ну и всех радиолюбителей тоже.
73!Василий (RX3AKF)
-
17.12.2017, 19:45 #129
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
eQSL Reader R1.01 (Release)
Похоже, за прошедшую неделю новых ошибок не выловилось, а обнаруженные устранены. За это время программа доведена до релиза, кое-где дополирован интерфейс, добавлена возможность показа описания в отдельном окне.
В окончательном варианте выложено на сервер в файловый архив, забирать здесь: eQSLReader R1.01
Всем принявшим конструктивное участие - спасибо. Пусть теперь поживет собственной жизнью...
-
17.12.2017, 20:05 #130
- Регистрация
- 01.07.2011
- Адрес
- Днепропетровск
- Возраст
- 59
- Сообщений
- 3,006
- Поблагодарили
- 2963
- Поблагодарил
- 222
1.При закрытии формы выдаёт
'''' is not a valid date
3. При получении больших обьёмов adif (более 10000), он попросту не загрузится. Проверял на одном аккаунте у друга, записей более 20000. Ни в Вашей программе ни в моей ничего не загрузилось, тайм-аут по-умолчанию мал. Если получать непосредственно из браузера, то страница сформировалась только за 5 мин.73! Олег. http://ur1004swl.ucoz.ru/
-
17.12.2017, 22:06 #131
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
Ох, елы-палы! Сыплю на голову... наведенная ошибка, связана с изменением формата дат в INI-файле (приводил к более "интернациональному" формату YYYYMMDD). Разберусь, поправлю. Соответственно, сообщение будет здесь, обновленный файл - в файловом архиве.
Пока рецепт лечения такой - проставить любую дату в "Загружено до..." и зафиксировать изменения в таблице. После этого будет выходить нормально... а дату поправит "автоматом" при первой же успешной загрузке.
Да, таймауты опять выросли. Но не так фатально, как Вы пишете... Вот сейчас идет загрузка, вроде ничего не пропускает, пиковый таймаут до 12 сек, средний порядка 9 сек...
Закончило, говорит: 113 штук, 00:22:13 (11,80 сек на изображение). Конечно, по сравнению с тем, что было месяц назад - небо и земля. Причем земля - пухом, не иначе. Но - без пропусков. 113 в списке - 113 в папке, получите-распишитесь.
Это уже вопрос из другой серии. Потому как сейчас я работаю без локальной БД, с которой бы программа периодически сверялась. То есть беру с сервера все, что только можно. Соответственно, сверхразумные объемы могут порождать отдельные проблемы.
Решением, наверное, будет организация локальной базы данных и переход от протокола "берем все" к более осмысленному IHSM (I have - send me)... То есть так, как работают почтовые программы по SMTP/POP3. Однако есть проблема - на каком движке БД это сочинять? Если сделать на ADO (MS Access) - найдутся недовольные тем, что я их принудительно привязываю к MS Office. Если делать на BDE - однозначно народ не восхитится инсталляцием им в систему такой "хрени прикольной". Фриварные реализации на основе DBF - кривые все. То есть без использования индексов они медленные, а с индексами - глючные. Есть еще Absolute DB, вещь хорошая, знаю. Но для публичного распространения - кто бы скинулся на лицензию ея для встраивания в программу, распространяемую без ограничений? Делать, плюнув на все, на встроенных TStringList и маскированных TStringGrid - ну да, тоже вариант. Памяти у всех уже хоть попугаем жуй, только сеанс будет начинаться полчаса... Пока все накопленное хозяйство в память не загрузится. И завершаться соответственно, любая сортировка сделает дисковую копию и содержимое памяти несовпадающими.
Короче, я в раздумьях. Пока ответов у меня нет. Могу выслушать советы по поводу высказанного...Последний раз редактировалось R2ADF; 17.12.2017 в 22:17.
-
17.12.2017, 22:36 #132
- Регистрация
- 01.07.2011
- Адрес
- Днепропетровск
- Возраст
- 59
- Сообщений
- 3,006
- Поблагодарили
- 2963
- Поблагодарил
- 222
Ну можно использовать базы sqlite.
По-поводу загрузки adif. Я у себя добавил календарь и дал возможность пользователю скачивать не весь adif-подтверждённых, а с определённой даты, с запоминанием последней загрузки, и в дальнейшем будем скачивать с даты последней закачки.
result := 'http://www.eqsl.cc/qslcard/DownloadInbox.cfm?Username=' + Trim(edUser.Text) + '&Password=' + Trim(edPassword.Text) + '&RcvdSince=' + FormatDateTime('yyyymmdd', DateTimePicker.Date);73! Олег. http://ur1004swl.ucoz.ru/
-
17.12.2017, 23:00 #133
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
Ошибка с неверной датой найдена. Называется - the fool myself, если в трех словах.
Надеюсь, до нынешнего момента никто "нипоцтрадал"...
Направил обновленную версию для публикации, при загрузке (мало ли, не успеют обновить) сверяйтесь, должно быть так (афигенно важны цыфирки после Release):
Проверил сейчас (18.12.2017, 14:54) - на сервере исправленная версия. Пользуйтесь!Последний раз редактировалось R2ADF; 18.12.2017 в 14:54.
-
17.12.2017, 23:11 #134
- Регистрация
- 24.04.2015
- Адрес
- Москва
- Сообщений
- 187
- Поблагодарили
- 88
- Поблагодарил
- 8
-
18.12.2017, 08:26 #135
- Регистрация
- 18.03.2013
- Адрес
- Москва (TM)
- Возраст
- 57
- Сообщений
- 836
- Поблагодарили
- 194
- Поблагодарил
- 58
Не обязательно встраивать базу данных, Вам хватит простого MAP, где ключом является имя карточки. При современных объемах памяти - не проблема. Для особо быстрых Хуанов - можно сериалиазованный список карточек сохранять на диске и по запросу обновлять его, если карточки потерялись или добавились.
73!Василий (RX3AKF)
Социальные закладки