[wlx] odbc-wlx - просмотр Access, Excel, CSV файлов
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next  :| |:
Total Commander -> Плагины Total Commander

#91:  Author: little-brother PostPosted: Fri Feb 25, 2022 12:41
    —
Quote:
Таких файлов много

Покопал немного. При построении списка таблиц, выкидываются те, которые имеют тип не SYSTEM TABLE, чтобы не попадали различные вложенные таблицы. Однако, если в имени листа есть пробелы, то его тип внезапно меняется на TABLE, и потому предположение оказалось неверным. В результате список таблиц был пустым.

Видимо надо по наличию хвоста после $ выкидывать.
Видимо надо действовать более хитро...

P.S. Изменил логику добавления листа в список таблиц: помимо проверки на SYSTEM_TABLE в список попадут и те, которые заканчиваются строго на $'.

Просьба потестировать, в том числе и на таблицах имеющих именнованные диапазоны и фильтры разные. Все ли данные в наличии или может есть что-то лишнее? В Excel не силен, многих его особенностей не знаю.
https://disk.yandex.ru/d/iWOiXPcfwuIDUg

#92:  Author: Destiny PostPosted: Fri Feb 25, 2022 14:06
    —
little-brother wrote:
Просьба потестировать

кажется проблем больше нет.
разве что шероховатости. В названии листов остался знак $ в конце. Если уж по ему идет обрезание, то и его самого логично обрезать))

но если это упрощает использование листов во внутренних процедурах вызовов Select From - то конечно можно не убирать его.

И порядок листов странный. Не тот, что в открытой книге экселя.
У меня: "Export Worksheet", "Лист1", "Sheet2", "Лист 3"
в плагине: 'Sheet2$', 'Лист1$', 'Export Worksheet$', 'Лист 3$'

#93:  Author: little-brother PostPosted: Fri Feb 25, 2022 15:46
    —
Quote:
В названии листов остался знак $ в конце

Кавычки то же, если в имени есть пробелы Wink Да, при запросе данных Excel требует этот знак вопроса и кавычки. По хорошему их надо убрать конечно, т.е. отображать одно имя, а запрашивать по другому. Подумаю, можно ли это сделать как то малой кровью.

Quote:
порядок листов странный

Это уже издержки ODBC. Он рассматривает книгу как СУБД, где таблицы не имеют порядка - в список они добавляются в том порядке, в каком ODBC их возвращает. Можно конечно его отсортировать по имени, но вот исходный порядок книги не думаю, что можно восстановить.

#94:  Author: Destiny PostPosted: Sat Feb 26, 2022 14:18
    —
little-brother wrote:
Кавычки то же, если в имени есть пробелы Да, при запросе данных Excel требует этот знак вопроса и кавычки. По хорошему их надо убрать конечно, т.е. отображать одно имя, а запрашивать по другому. Подумаю, можно ли это сделать как то малой кровью.


Если они имеют реальный вес при формировании запросов, то фиг с ними. Пусть малая кровь будет значить, что мы будем видеть эти символы в именах листов. Главное, теперь нет проблем с просмотром ранее непросматриваемых файлов)))

Оформляться в релиз будет сборка скоро?

#95:  Author: little-brother PostPosted: Sat Feb 26, 2022 15:22
    —
Готово! Razz

#96:  Author: Destiny PostPosted: Mon Mar 07, 2022 23:07
    —
w w w . upload.ee/files/13944193/static.xls.html
там странная ошибка опять с именем листа...

#97:  Author: little-brother PostPosted: Tue Mar 08, 2022 00:47
    —
Проблема в именах с подчеркиванием: символ _ не требует, чтобы имя таблицы было в кавычках, а я этот аспект забыл учесть и в результате получалось двойное окавычевание.

Фикс - https://disk.yandex.ru/d/xAqXaXgAOuqbuA

#98:  Author: Destiny PostPosted: Tue Mar 08, 2022 11:54
    —
Ок, работает!

#99:  Author: Destiny PostPosted: Mon Mar 21, 2022 23:35
    —
В тексте ячейки экселя порой есть вставленный принудительно перенос на новую строку. Т.е. текст в обычном виде будучи вписанным - занимал бы всю длину ячейки - если бы мы ее визуально взяли и растянули на много нужных см. для прочтения ее текста. А после нажатия ALT+ENTER в тексте вставляется перенос строки и в ячейке появляется многострочный текст. И так можно уменьшать требуемый размер длины ячейки для прочтения ее содержимого. Так вот плаг такие тексты отображает просто слитно Crying or Very sad
Нет, я понимаю, что многострочность он не обязан и не умеет поддерживать в рамках одной ячейки виндового table-контрола. НО! может такой символ просто стоит заменить чистым пробелом?

А то в экселе это так:
Пример
много-много
строк

А в плагине это так:
Примермного-многострок

Не фига не читается((((

#100:  Author: little-brother PostPosted: Tue Mar 22, 2022 00:39
    —
Отсутствие многострочности - это ограничение WIndows-контрола.
С заменой переноса строк на пробелы может быть проблема с производительностью. Сейчас когда ячейке отрисовывается, она запрашивает данные из кеша и выдает как есть. Сделать замену в кеше - неправильно, т.к. при копировании строк нужно отдавать оригинальный текст. Поэтому надо либо добавлять еще один кеш, где выполнена замена, либо отдавать текст с заменой на лету. Первый вариант делает код странным. Со вторым - надо либо с памятью колдовать (текст с заменой надо удалять) или будет ограничение в 255 символов, что не очень. Тупик.

По аналогичной причине я остановил разработку ссылок.

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

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

#101:  Author: Destiny PostPosted: Thu Mar 24, 2022 12:09
    —
Всё понятно))) вопросов больше не имеем!

ЗюЫю
хотя...
little-brother wrote:
Есть вариант добавить всплывающую подсказку, если курсор стоит над ячейкой с переносами.

Это хоть как-то бы спасло положение дел, имхо.
Но все на усмотрение автора оставим, конечно же.

#102:  Author: Destiny PostPosted: Tue Mar 29, 2022 22:32
    —
Хелп! СОС!
Очень занятная ситуация.
Есть два компа. Разных. Капитально. НО тотал со своими плагинами - один и тот же. Своя сборка.
И вот на последнем 0.9.7 сабже один и тот же экселевский файл - ПУСТОЙ!!! Созданный с нуля - пустой файл - на одном компе открывается в плагине, а вот на другом - ооочень молчаливо и наглухо грохает весь тотал. Дамп сохраняет лишь инфу, что в odbc-wlx.wlx!cbNewMain() + 0x4c5c bytes падение зафиксировано. Был бы дебаг вариант плагина - наверное с точностью до строки кода сказал бы что и где... НО чего нет - того нет. Ну и понятно дело - что пересылать вам: тоже не понятно что(((. Сборка же реально одинаковая везде и в полтора гига в архиве.... А на одной копии падает - на другой нет. Падение же воспроизводится даже на пустом файле - т.е. тут ничего особенного.
Как будем лечиться?
Есть визуал студия 2010 на всяк случай. Хоть и сборку делаете под MinGW..

Добавлено спустя 22 минуты:

Проверка 0.9.6 и 0.9.5 показало, что в 6 версии так же есть падение, а вот в 5 никаких проблем. Это все на то самом компе, где и увидел вообще падание. На другом - никакая версия не падает...
ОС на обоих компах - одна и та же: Win10 LTSC build 17763...

#103:  Author: little-brother PostPosted: Wed Mar 30, 2022 03:48
    —
Попробуйте - https://disk.yandex.ru/d/P3nsAdJOAf-f7g
Добавил вывод сообщений после каждого этапа и отладочную информацию (убрал флаги -Os и -s и добавил -g). Интересует, что выводит последним.

Студия у меня то же есть, просто как то к Code::Blocks привык, который mingw по умолчанию использует и не такой жирный как Студия.

Quote:
и в полтора гига в архиве

Хотя кому это я про занимаемое место рассказываю Very Happy

#104:  Author: Destiny PostPosted: Wed Mar 30, 2022 11:43
    —
Инициализация ОК
Соединение установлено
Параметры прочитаны
Компоненты созданы
Список таблиц получен
Найдена таблица
Найдена таблица
Список таблиц построен
Тема и шрифт заданы
Выбран первая строка в списке (шо за акцент? выбран мух? Laughing )

WMU_UPDATE_GRID - заголовок окна
Инициализация-ОК
Удалены предыдущие фильтры
Удалены предыдущие колонки
Добавлены кавычки для имени таблицы
ODBC запрос сформирован
ODBC запрос выполнен
ODBC обработка завершена
Обновление кеша выполнено

ДАМП........

И вот еще момент. Хоть сборка и одинаковая, но там, где падает, оказывается, я запускал с ярлыка 32битный тотал.
А вот в 64 битном тотале - плаг уже не падает! Т.е. собака порылась где-то в этой области!
Там идет уже после "Ширина колонок изменена", "Данные обновлены" и показывается окно плагина с требуемой таблицей.

#105:  Author: little-brother PostPosted: Wed Mar 30, 2022 13:31
    —
https://disk.yandex.ru/d/a_F0wf_kT8u8tw
Удалил вывод всех сообщений до этого и добавил подробное описание для операций по изменению ширины колонок. Достаточно последнее сообщение, т.к. они все равно по порядку идут.

Я думал, что где то ранее падает, а это похоже все-таки какая особенность Windows (в духе упасть, если окна нет и для него выставляется какой то стиль).



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next  :| |:
Page 7 of 10

Powered by phpBB © 2001, 2005 phpBB Group