Кеширование запроса SQLite при старте системы...

Автор MWW_Ruza, 04 марта 2026, 08:41

« назад - далее »

Злоп

Цитата: MWW_Ruza от 07 марта 2026, 11:06а там разветвленное дерево групп, в отличии от продуктов - напимер: "МАЗ, КАМАЗ", а внутри каждой - "Двигатель, Тормоза и т.п....".
.
Блин, у меня сейчас точно такой клиент.
Стоит задачка затяжки прайсов от поставщиков.
Можно скооперироваться.

Злоп

Цитата: MWW_Ruza от 07 марта 2026, 11:06и проще будет понять куда помещать новый элемент.
возможно на StrMatch еще можно повысить предсказательность к какой группе скорее всего относится

Злоп

Цитата: MWW_Ruza от 07 марта 2026, 11:06Надо что-то другое, более сложное придумывать...
Нарисовать свою формочку только с деревом групп типа? на формексе и скулайт должно хорошо получиться.

MWW_Ruza

Да надо подумать... Своя форма только с деревом - интересный вариант... Попробую.

Пока сделал так:

Просто в мтроке списка в представлении наименование группы и ее родителя... В общем-то, для этой задачи сойдет, но дерево было бы интереснее...

PS А привязывать какие-то матчи и прочие "гадалки" по похожести, как-то не планирую... Не та задача, сомневаюсь, что какой-то "полуискуственный интелект" в моем случае нормально отработает... Уж очень специфическая задача...

MWW_Ruza

Цитата: MWW_Ruza от 07 марта 2026, 12:26Своя форма только с деревом - интересный вариант... Попробую.
Интересный то интересный... Но, не все так просто. Дерево групп прорисовывается красиво, мгновенно, и ни какой список не нужен...
Но, как обработать выбор группы из дерева, я не нашел... Нет подходящего события. Оставил пока так, как в предыдущей месаге.

item


MWW_Ruza

Цитата: MWW_Ruza от 07 марта 2026, 15:21Но, как обработать выбор группы из дерева, я не нашел... Нет подходящего события.

Если только кнопку отдельную делать, а группу в дереве ловить с помощью "ПриПереносеЭлементаВДругуюГруппу(<Элемент>,<Группа>)" - подсовывать первый попавшийся элемент справочника, "Группа" при этом будет выбранная в дереве группа... После этого СтатусВозврата(0)...
Но, не нравится мне этот вариант... Кнопка... Лишнее движение.  А поймать событие выбора группы в дереве - похоже просто так не возможно... Можно конечно извратиться, через координаты дерева(как, например, переход по ссылке при клике на картинке) или что-то наподобии, но, похоже, того не стоит...

item

Если вы про справочник, то
ПриВыбореРодителя работает в дереве

MWW_Ruza

Цитата: item от Вчера в 11:09ПриВыбореРодителя работает в дереве

Хм... Да? Сейчас попробую...

MWW_Ruza

Получилось!
Спасибо за наводки!
Процедура ПриВыбореРодителя(Эл)
	Форма.Параметр = Эл;
	СтатусВозврата(0);
	Форма.Закрыть(0);
КонецПроцедуры

Процедура Отм()
	Форма.Параметр = "";
	СтатусВозврата(0);
	Форма.Закрыть(0);	
КонецПроцедуры
Статус возврата нужен... Без него 1С падает, судя по всему, потому, что процедура "до конца не дорабатывает", с ним - нормально.
Вот так это работает: https://cloud.mail.ru/public/iALJ/wxYyxmjHh
Можно из кэширования убрать создание списка групп, оно теперь не нужно...
Но, это особо выигрыша не даст в скорости кэширования, там основное время не это занимало, а кэш всего справочника для поиска... Но, все равно, по крупицам...

Злоп

Цитата: item от Вчера в 11:09Если вы про справочник, то
ПриВыбореРодителя работает в дереве

Логично...
Но мы, погромисты 1С, как реализующие всякие нелогичные хотелки, и сами уже стали нелогичными...

MWW_Ruza

Вот, уж, когда коту делать нечего...
В эту форму для выбора групп, добавил:
Процедура ПриОткрытии()
  Scr  = CreateObject("WScript.Shell");
  Scr.SendKeys("+{TAB}");
  Scr.SendKeys("{RIGHT 1}");
КонецПроцедуры
Теперь открывается с развернутой группой верхнего уровня, корневой - "Номенклатура".
Так:
https://cloud.mail.ru/public/VVgA/EmtGm5NJt