Имя: Пароль:
1C
1C 7.7
v7: Определить выбранную в дереве справочника группу?
,
0 MWWRuza
 
гуру
07.01.23
20:20
Добрый день!
А есть какой-то способ определить выбранную в дереве справочника группу?
Можно ФормЕксом, или еще как-то.
В смысле, не текущую, открытую группу, элементы которой в списке, а именно выбранную в дереве, как целевую для интерактивного переноса из группы в группу?
Если не понятно спросил - вот скриншот: https://content.foto.my.mail.ru/mail/m_w_w/_mypagephoto/i-464.jpg
Предопределенная процедура "ПриВыбореРодителя(Элемент)" возвращает группу, нужную. Но, как только в списке элементов меняешь выбранный элемент на элемент другой группы, то и эта процедура отрабатывет, и возвращает уже новую группу.
Хотя, в дереве, старая группа остается подсвечена "сереньким"... Можно ее(выбранную ранее) как-то узнать?
1 MWWRuza
 
гуру
07.01.23
20:57
Ну, в принципе, ПриПереносеЭлементаВДругуюГруппу(Эл, ЦелГр)
отрабатывает. А ЦелГруппа то, что нужно. Если потом ее обрубить СтатусВозврата(0), то можно потом извращаться со своей процедурой.
Кривовато конечно, но работает :-)
2 MWWRuza
 
гуру
07.01.23
21:43
(1) Кривовато
Нет, работает нормально, только месага вопроса раздражает - "Перенести <Элемент> в группу <ЦелеваяГруппа>?"...
Как бы ее подменить на "Перенести список выбранных элементов в группу<ЦелеваяГруппа>?" - ???
Если кто не понял, делаю от скуки в праздники, "красивость" для работы с множественным выделением строк списка и обработки их, "А-ЛЯ снеговик" :-)))
ФормЕкс - великая сила :-)  Получилось почти хорошо, немного "подшлифую" и выложу ссылку на видео с экрана, как это работает.
3 MWWRuza
 
гуру
07.01.23
22:46
Вот, обещанное видео.
Немного корявенько, но, понять, как работает можно: https://cloud.mail.ru/public/5tgM/ie4z9Ug1W
4 Arbuz
 
09.01.23
15:55
(2) >Как бы ее подменить
Вот вроде бы формексовская ПриПолученииКомандыГлавнымОкном(wParam, lParam) должна была бы тут помочь. И у меня 175 версия перехватывает меню Действия-Перенести_В_Другую_Группу (wParam = 32890) и горячую клавишу Ctrl+F5 (wParam = 98426), но не перехватываются действия (никакие) непосредственно с панели инструментов окна справочника. Облом, если только не отключить (или заменить на свою) эту панель совсем...
5 MWWRuza
 
гуру
09.01.23
16:25
Ну, да... Тут весь цимус в том, что использую штатное меню панели инструментов справочника, я сначала хотел свое меню сделать, но, посмотрел что штатное отрабатывает, и убрал свое. Так юзверам привычнее. А рисовать свое, копию системного, что-то лень. Да и не стоит оно того, просто текст месаги не совсем корректный, но работает хорошо.
6 MWWRuza
 
гуру
09.01.23
16:36
А для операции групповой установки реквизитов, сделаю отдельную кнопку - "выделил" нужный диапазон элементов, нажал кнопку, например "Установить признак маркировки", выбрал например"Молочка"(из-за чего собственно это и затевалось), и порядок. Задействование системного меню панели инструментов справочника, пришло позже, как побочка :-)  Но, получилось неплохо, пусть будет :-)
7 Arbuz
 
09.01.23
16:45
Вообще, досадно конечно, что всё перехватывается, даже контекстное меню, а вот самое популярное - панель инструментов текущего окна - нет. Проверил, нигде не работает, ни в справочниках, ни в журналах, ни в документах. А меню Действие, контекстное меню, горячие клавиши, глобальные панели - работают везде.
8 MWWRuza
 
гуру
09.01.23
16:48
Тема сабжа, кстати потому и появилась, что я пытался свое меню делать. Но, тут возник вопрос - "как определить группу, куда переносить - ?" Способа определить в штатном дереве выделенную группу, я так и не нашел, но, выяснилось, что предопределенная "ПриПереносеЭлементаВДругуюГруппу(Эл, ЦелГр)" прекрасно отрабатывает, если из нее вызвать процедуру свою, для нескольких элементов по списку, указав полученное в этой процедуре значение "ЦелГр" в качестве нового родителя.
(7) Ага...
9 MWWRuza
 
гуру
09.01.23
17:05
Кстати, не понятно почему, но перенос нескольких значений(просто элементы добавлены в СЗ, и потом в цикле им устанавливается новый родитель) не работает без удерживаемой клавиши "Шифт". Переносится(или метится на удаление / снимается пометка) только один элемент, на котором физически курсор стоит, и плевать ему на цикл по списку. С нажатым "Шифт" - нормально. Без цикла по списку, тоже не отрабатывает -  но, это то как раз понятно - физически то выделен только один элемент, остальные просто "подкрашены" ФормЕксом под цвет выделения...
Сделал просто предупреждение о необходимости нажатой клавиши "Шифт", если она не нажата, и отмену действия, работает :-)
10 Злопчинский
 
09.01.23
20:05
(9) ...на котором физически курсор стоит
- ну так скорее всего код кривой
11 MWWRuza
 
гуру
09.01.23
21:23
(10) Возможно не спорю...
Но, отладить очень тяжело, просто ФормЕксовские предопределенные процедуры, такие как "ПриНажатииКнопкиКлавиатуры", "ПриОтжатииКнопкиКлавиатуры", "ПриОтжатииЛевойКнопки", ведут себя весьма агрессивно - перехватывают все что можно, и с нажатой клавишей "Шифт" отлаживать практически не возможно - отладчик на комбинацию "F8" плюс нажата "Шифт", получается = "Шифт+F8" не реагирует, просто не шагает, а через меню мышкой, шагает, но срабатывает "ПриОтжатииЛевойКнопки", что тоже уводит отладку "не туда"... Приходится почти все отлаживать "в слепую", без отладчика, методом "проб и ошибок" :-(

PS А вообще, появилась идея, как это обойти, подумаю.
12 MWWRuza
 
гуру
09.01.23
22:33
Вот, видеоролик окончательного варианта: https://cloud.mail.ru/public/3dZd/zya9VpWun
Сейчас оформлю публикацию и выложу на ИС, за символическую 1см. А то, чего-то заканчиваются, нужно пополнить(не покупать же их за живые деньги?!!)...

PS Нажатие шифта при работе с выделенными строками обошел, работает и без шифта.
13 Злопчинский
 
09.01.23
22:41
(11) сообщений трассировки навставляй для отладки. Ну и перебор элементов из СЗ делаешь, надеюсь, отдельным обьектом, а не прыгает по списку формы...
14 MWWRuza
 
гуру
09.01.23
23:27
(13) Ну и перебор элементов из СЗ делаешь, надеюсь, отдельным обьектом

Естественно. Даже пришлось второй СЗ сделать, в который выгружается основной, для обработки выделенных, так, как при отжатии левой клавиши мышки, основной список очищается - на это завязано снятие выделения, а обработка выделенных строк подразумевает, что мышкой будешь по любому щелкать, и при этом он очищается до того, как обработается. В этом и бвла причина, почему без шифта не обрабатывалось. Со вторым списком, вроде работает. Особых глюков не наблюдается.
15 AAA
 
10.01.23
06:59
C SHIFЕ конечно на вскидку выглядит странно. Ты попробуй перенести в другую группу не выделенные элементы, а их же, но из заранее подготовленного тестового списка
элементов. Тогда исключатся интерфейсные заморочки и будет чистое поведение формы списка справочника
16 MWWRuza
 
гуру
10.01.23
13:25
(15) Да не, все работает нормально, поправил.
Там заморочка была с тем, что шифт используется для выделения - с зажатой клавишей Шифт при двойном щелчке мышью на строке, элемент справочника добавляется в СЗ. Но, мы так можем "нащелкать" много, а потом передумать. Щелчек мышью без зажатого Шифта, снимает выделение(соответственно очищает СЗ в выделенными элементами). А что-бы произвести действие с выделенными строками списка справочника, нужно по любому мышькой клацнуть на кнопке панели инструментов или пункте контекстного меню. Вот выделение и снималось до выполнения действия. А с зажатым Шифт этого не происходило. Исправил, теперь работает и без Шифта, вроде все ОК.

PS Выложил на ИС: https://infostart.ru/public/1787209/
17 MWWRuza
 
гуру
10.01.23
20:03
Блин, "гладко было на бумаге, да забыли про овраги :-))) "
Встроил в рабочую конфу, вроде пернес 1 в 1 из демки, а выделяет при выделении "подряд" как-то странно, "вразнобой"...
Стал разбираться - оказывается интерактивно порядок сортировки поменян с "По наименованию" на "По коду" :-)
Пришлось добавить перед выборкой элементов для добавления в список такую конструкцию:
                    ТекСорт = Сортировка();
                    Если ТекСорт = "Код" Тогда
                        Спр.ПорядокКодов();    
                    ИначеЕсли ТекСорт = "Наименование" Тогда
                        Спр.ПорядокНаименований();
                    Иначе
                        Спр.ПорядокРеквизита(ТекСорт);
                    КонецЕсли;
Так стало работать правильно :-)
18 MWWRuza
 
гуру
10.01.23
21:41
Хм... Только сейчас обнаружил...
Даже не знаю в 7.7 баг, фича, или я чего-то не понимаю? Просто раньше видимо не обращал внимания.
Справочник номенклатура, имеет кучу подчиненных справочников.
Программно мечу на удаление в цикле несколько элементов, так:
Спр.Удалить(0);
Подциненные тоже метятся автоматом. Прекрасно.
Так-же, снимаю пометку удаления, в цикле:
Спр.СнятьПометкуУдаления();
Подчиненные остаются помеченные...
Если делать это интерактивно, такого не происходит - метишь на удаление элемент метятся в том числе и все подчиненные, снимаешь пометку - снимается и у подчиненных...
Я конечно обошел эу ситуацию, через выборку подчинееых по каждому элементу и принудительному их удалению, но, как-то это не комильфо...
19 Volodja
 
11.01.23
07:41
(0) Запомню себе, ожет когда и пригодится.Спасибо.
20 Злопчинский
 
11.01.23
09:31
(17) я хотел про этио упомянуть ранее, но поленился. Подумал что ты скорее всего учел это...
21 MWWRuza
 
гуру
11.01.23
23:35
Ну, думал, все, "отшлифовал", куда уж лучше...
Ан нет, придумал, чего не хватало :-)
Сделал выбор "подряд" в любом направлении, хоть вниз по списку относительно первого выбранного, хоть вверх.
Видео как работает: https://cloud.mail.ru/public/EfwB/ab7QipzHp

PS ОбЫдно только, что никому это не нужно похоже.
Хотя, одна клиентка сегодня была очень довольна - ей это сильно облегчает работу на начальной стадии внедрения маркировки...
Да и перенос из группы в группу, не по одному, как штатно, а списком ей тоже понравился.
22 Volodja
 
12.01.23
08:16
(21) А если будет установлен отбор, допустим по списку элементов, лишние тогда не попадут?
Я так, предполагаю, что вы выделяете все элементы между крайними по сортировке?
23 MWWRuza
 
гуру
12.01.23
12:26
(22) Отбор по списку?

А зачем тогда все это? Я делал для просто "ФормыСписка", открываемой интерактивно, без всяких отборов...

(22) вы выделяете все элементы между крайними по сортировке?

Ну, да. Сначала, по первому выбранному элементу определяю родителя. Потом определяю текущий способ сортировки. Выбираю элементы по этим двум условиям и выгружаю в СЗ. Определяю позицию первого выбранного в этом СЗ. При выборе второго, получаю его позицию в том-же СЗ, и сравниваю с позицией первого - получаю направление выборки. Потом уже, формирую рабочий список выборкой по этим трем параметрам - родитель, сортировка, направление. Между первым выбранным и вторым. И дальше, подкрашиваю Формексом строки согласно этого списка, и можно с ним-же производить любые действия.
24 Злопчинский
 
12.01.23
13:01
(23) ну тогда надо еще определять и наложенный отбор и выборку фильтровать по отбору.
иначе бяка получится.
25 MWWRuza
 
гуру
12.01.23
13:23
(24) Не понял, про какой отбор вообще речь идет?

Кстати, добавил еще определение включена/выключена иерархия интерактивно:

                    Если ПустоеЗначение(ТекРод) = 0 Тогда
                        ТекИерарх = ИерархическийСписок(,);
                        Если ТекИерарх = 1 Тогда
                            Спр.ИспользоватьРодителя(ТекРод);
                            Групп = 1;
                        Иначе
                               Групп = 0;
                        КонецЕсли;
                    Иначе
                        Групп = 0;
                    КонецЕсли;
                    Спр.ВыбратьЭлементы(Групп);
Иначе, без этого тоже бяка получалась, если иерархия выключена была.
26 Злопчинский
 
12.01.23
13:25
(25) Отбор в форме списка, устанавливаемый либо интерактивно пользователем, либо программно при открытии формы
27 MWWRuza
 
гуру
12.01.23
13:44
(26) Ну, программно понятно, если форма открывается программно и передан в параметр список элементов, как у меня например, в "быстром полнотекстовом поиске". Это можно отловить в процедуре "ПриОткрытии" или в моем "поиске", и запретить множественный выбор.
А интерактивно, это как? Похоже я чего-то не понимаю(если есть такая системная опция), или если это что-то в конфигурации дописано, то просто не используется в моей конфе...
28 MWWRuza
 
гуру
12.01.23
14:42
Аааа.... Все, понял, про какой отбор идет речь.
Вот это: https://content.foto.my.mail.ru/mail/m_w_w/_mypagephoto/h-465.jpg
В рабочей конфе, на основе типовой ТиС, действительно есть такие кнопки.
В демку я их не вставлял, да как-то никогда ими и не пользовался в рабочей.
Надо будет посмотреть, как они работают и как будут влиять на множественный выбор.
Спасибо, что заметили :-)
29 MWWRuza
 
гуру
12.01.23
14:52
Да, действительно "бяка", по другому и не скажешь.
Установлен отбор "Алкоголь", визуально выбраны 4 элемента, а в список выбранных попали 494...
Вот: https://content.foto.my.mail.ru/mail/m_w_w/_mypagephoto/h-466.jpg
Надо будет подумать, как обойти это. Или, если не получится корректно обойти, то заблокировать множественный выбор при активированном отборе.
30 Волшебник
 
модератор
12.01.23
14:53
(29) Семёрка ещё сырая...
31 trad
 
12.01.23
15:30
(30) а как же "торговцы алкоголем должны страдать" ?
32 MWWRuza
 
гуру
12.01.23
15:45
(31) А чего им страдать???
Все работает, и не хуже, чем в "снеговике" :-)
Ладно у меня, в основном только бэки под 7.7, фронты сторонняя программаа(УКМWIN), а тут случайно увидел, что в известной крупной сетке К&Б даже фронты на клюшках, и ничего, работают и не жужжат :-)
33 MWWRuza
 
гуру
12.01.23
16:10
(24) Ну, вот так:

                    // Получаем отбор
                    ИмОтб            = "";
                    ЗначОтб         = "";
                    Отб = ПолучитьОтбор(ИмОтб,ЗначОтб);
                    
                    // Заполняем список для определения направления с учетом возможного отбора
                    Если Отб = 0 Тогда
                        Спр.ВыбратьЭлементы(Групп);
                    Иначе
                        Спр.ВыбратьЭлементыПоРеквизиту(ИмОтб, ЗначОтб, Групп, 0);    
                    КонецЕсли;    
                    СзНапр = СоздатьОбъект("СписокЗначений");
                    Пока Спр.ПолучитьЭлемент() = 1 Цикл
                        СзНапр.ДобавитьЗначение(Спр.ТекущийЭлемент());        
                    КонецЦикла;
                    
                    НомСтрПервого = СзНапр.НайтиЗначение(СзВыб.ПолучитьЗначение(1));
                    НомТек = СзНапр.НайтиЗначение(ТекущийЭлемент());
                    Если НомТек < НомСтрПервого Тогда
                        Спр.ОбратныйПорядок(1);    
                    КонецЕсли;
                    
                    // Получаем основной список выбранных элементов с учетом возможного отбора
                    Если Отб = 0 Тогда
                        Спр.ВыбратьЭлементы(Групп);
                    Иначе
                        Спр.ВыбратьЭлементыПоРеквизиту(ИмОтб, ЗначОтб, Групп, 0);    
                    КонецЕсли;

Вроде работает, по крайней мере в демке. Сейчас в рабочую перенесу, проверю более предметно...
34 Злопчинский
 
12.01.23
16:19
(29) считай в коде установленный отбор и выборку фильтруй
35 MWWRuza
 
гуру
12.01.23
16:37
(34) Сделал, в (33) фрагмент кода.
36 trad
 
12.01.23
16:55
(32) я не против
про "страдать" - это позиция ВР, к нему был вопрос
37 Волшебник
 
модератор
12.01.23
16:56
(31)(36) Подтверждаю.
38 MWWRuza
 
гуру
12.01.23
17:04
(33) Сейчас в рабочую перенесу, проверю более предметно...

Проверил. Все ОК. Там где было 494 :-) - теперь четко сколько на экране выделено, столько и в списке, не зависимо от включеного/выключенного отбора :-)
39 MWWRuza
 
гуру
03.02.23
20:07
Нашел старенькую ВК от trdm - KeyState.
Она, а отличии от Formex, не событие нажатия/клавиши ловит, а выводит ее текущее состояние.
Так, стало проще определять, нажата клавиша Шифт или нет. Раньше, приходилось считать нажатия/отжатия.
Код немного упростился, стал более понятным.
И придумал, как "ловить" событие позиционировании на строке формы списка справочника. Теперь, выбираются строки просто одинарным щелчком мыши на нужной строке с нажатым Шифт. Не нужно двойной щелчек делать. Как-то более понятно, как во всех виндовых списках :-)
Через ложное закрытие формы, вот так:

Перем ЛожнЗакр;

Процедура ПриНажатииЛевойКнопки(Сост, Гор, Верт, ФСО)
    Шифт = "";
    рез = глНажатаКлавишаШифтКонтролАльт(, Шифт); // в глобальном модуле функция от trdm, из текстовика к ВК, как есть, без изменений.
    Если Шифт = 1 Тогда
        ЛожнЗакр = 1;
        Форма.Закрыть();
    КонецЕсли;    
КонецПроцедуры

Процедура ОбработатьВыборСтроки()
    ВыбЭлемент    = ТекущийЭлемент();
        // Здесь, можем дальше делать что хотим с ВыбЭлемент - он будет тем, который выделен последним в списке справочника, без двойного щелчка.
КонецПроцедуры

Процедура ПриЗакрытии()
    Шифт = "";
    рез = глНажатаКлавишаШифтКонтролАльт(, Шифт);
    Если Шифт = 1 Тогда    
         ОбработатьВыборСтроки();
         Если ЛожнЗакр = 1 Тогда
             ЛожнЗакр = 0;
             СтатусВозврата(0);
             Возврат;
         КонецЕсли;
     КонецЕсли;    
КонецПроцедуры
40 Злопчинский
 
03.02.23
23:10
(39) выложи вместе где-то пакет со всем нужным
41 MWWRuza
 
гуру
04.02.23
12:32
(40) Обновил на инфостарте. ВК "KeyState" от trdm - внутри. Требует регистрации в системе с помощью regsvr32.
Так-же там обновленный видеоролик с экрана, как это работает.

PS Ну, нужен еще Formex, но его выкладывать в составе публикации... Как-то ИМХО ни к чему. Кому это хоть чуть интересно, у них формекс и так есть, а если у кого-то и нет, то скачают с официального ресурса... Больше там ничего не нужно, остальное все штатными методами, демо-конфигурация самодостаточна, работает под любой компонентой 7.7.
42 MWWRuza
 
гуру
04.02.23
14:47
Так подумал, чего еще типа не хватает...
Будет время и настроение, нужно будет поднапрячься и сделать вариант этого всего "безобразия" для "трактористов"* :-)

* Один мой приятель, коллега, говорил - все пользователи делятся на "трактористов" и "моусоидов", т. е первые работают преимущественно клавиатурой, используют все возможные "горячие клавиши", комбинации клавиш и т.п., мышкой пользуются по минимуму... Вторые - наоборот, предпочитают мышь, и клавой работать не умеют/не хотят.

Сейчас у меня заточено под мышь, а надо будет добавить и работу клавишами - обрабатывать выделение строки ентером с зажатым Шифт, и выделение строк подряд курсорными клавишами с зажатым Шифт...
В принципе, не вижу особых проблем это сделать, только вопрос стандартный - а надо ли это кому-то, или только время терять? :-(
43 MWWRuza
 
гуру
04.02.23
15:14
Ну, ентер обработать вообще нет проблем - просто добавить в конец модудя формы одну единственную процедуру:

Процедура ПриНажатииКнопкиКлавиатуры(КодКл, Альт, Шифт, Сонтр, ТекСимв, ФСО)
    Если (Шифт = 1) И (КодКл = 13) Тогда
        ФСО = 0;
        ЛожнЗакр = 1;
        Форма.Закрыть();
    ИначеЕсли (Шифт = 0) И (КодКл = 13) Тогда
        ОчиститьВыделение();    
    КонецЕсли;    
КонецПроцедуры

Со "стрелками чуть сложнее", может позже сделаю...
44 MWWRuza
 
гуру
04.02.23
15:47
Хотя, как оказалось, и стрелки не проблема.

Только эту доп. процедуру немного изменить, и все работает:

Процедура ПриНажатииКнопкиКлавиатуры(КодКл, Альт, Шифт, Сонтр, ТекСимв, ФСО)
    КолНажСтрелок    = 0;
    Если (Шифт = 1) И (КодКл = 13) Тогда
        ФСО             = 0;
        ЛожнЗакр         = 1;
        Форма.Закрыть();
        КолНажСтрелок    = 0;
    ИначеЕсли (Шифт = 0) И (КодКл = 13) Тогда
        ОчиститьВыделение();
        КолНажСтрелок    = 0;
    ИначеЕсли (Шифт = 1) И ((КодКл = 38) Или (КодКл = 40)) Тогда
        КолНажСтрелок     = КолНажСтрелок + 1;
        Если КолНажСтрелок = 1 Тогда
            СзВыб.ДобавитьЗначение(ТекущийЭлемент());
        КонецЕсли;
        ЛожнЗакр         = 1;
        Форма.Закрыть();        
    КонецЕсли;    
КонецПроцедуры

Единственное, немного подтормаживает на больших базах при первом выборе нескольких строк подряд стрелками... Где-то на пару секунд задумывается на базе, в которой около 100 000 товаров... И то, только при первом нажатии на стрелку с зажатой Шифт. Потом, этого эффекта нет, все выделяется мгновенно, видимо выборка где-то кешируется.
45 Злопчинский
 
04.02.23
19:53
(41) ссылку прямую на ИС дать вот совсем как тяжело?
46 MWWRuza
 
гуру
04.02.23
21:15
Вообще не проблема - https://infostart.ru/public/1787209/

Просто я думал, тут это не приветствуется...
47 Злопчинский
 
04.02.23
23:42
(46) не, норм, если не наглеть в тему рекламы.
.
спсб
48 MWWRuza
 
гуру
05.02.23
16:08
Еще одна "доработка", это уже из серии - "когда коту делать нечего, он... сами знаете, что делает" :-)
Приблизил еще поведение окна ФормыСписка справочника 7.7 к стандартному поведению окна списка чего-либо Windows.
Теперь, если относительно первой выбранной позиции нажимаешь стрелку вниз, с зажатым Шифт, позиции ниже выделяются. Если нажав несколько раз вниз, потом начать нажимать вверх, выделение снимается вслед за текущей строкой. При переходе через первую позицию, начинают строки выделяться вслед за текущей выше первой. Соответственно, если опять начать нажимать вниз, то выделение вслед за текущей строкой снимается. В общем, все как в стандартных списках винды. В остальном(работа мышью, работа с выделенными строками) ничего не поменялось.
Если не понятно - вот демонстрация(видеоролик с экрана): https://cloud.mail.ru/public/HSar/QpAuSEViH

На Инфостарте сейчас обновлю публикацию, ссылка остается та-же.
49 Arbuz
 
06.02.23
17:36
Без срартмане́й никак не посмотреть?
50 MWWRuza
 
гуру
07.02.23
11:34
(49) Почему? Для хорошего человека ничего не жалко. Нас, тех кому клюшки еще интересны, и так "кот наплакал" осталось... Вымирающее поколение :-(  В моем профиле контакты есть, и телефон, и скайп...
Свяжитесь со мной, пришлю просто так, под честное слово, что пока публиковать не будете.
Извините, но просто выкладывать в общий доступ на халяву пока не буду. Пусть хоть что-то капнет на счет инфостарта, а то баланс последнее время что-то сильно похудел, а понадобится что-то, не покупать же эти самые "сратмане" за кровные живые рубли...
51 MWWRuza
 
гуру
07.02.23
14:11
+(50) не покупать же эти самые "сратмане" за кровные живые рубли...

На самом деле, там даже не проблема купить пакет стартманей, не жалко...
А проблема в том, что они там подразделяются на два "вида" - "честно заработанные", за счет публикаций, и "купленные пакетами"...
Первые - безсрочные, вторые "сгорают" по истечении срока действия пакета... Поэтому, покупать большого смысла нет, все равно "протухнут" :-(  Если только планируете сразу использовать. Или покупать каждый месяц, тогда срок продляется по последней покупке для всех купленных ранее. Но, это имеет смысл только если активно пользоваться платным контентом... У меня просто нет таких задачь, я очень редко что-то скачиваю.
52 Злопчинский
 
07.02.23
14:26
(50) а то!
вчера бодался 1sci.dll не грузилась .. и так, и этак .... размер 260 Кб. нашел какую-то помладше 170 Кб - она нормально грузится... мистика... чето заехало консоль запросов для 1sqlite попробовать
53 АгентБезопасной Нацио
 
07.02.23
17:40
(52) Это кто ж тебя укусил? не прошло и 8 лет, как я предлагал тебе это сделать и даже свою помощь...
54 Злопчинский
 
07.02.23
19:41
(53) ну, лично мне оно (ввиду масштабов компаний) и 8 лет назад не надо было, а теперь - тем более уж.. ностальгирую...
соберу клуб ветеранов дом-пансионат "Золотая осень"...
55 MWWRuza
 
гуру
08.02.23
17:25
Нет пределов совершенству :-)
При внедрении у реальных клиентов, выяснился один "ньюанс" - при открытии формы списка справочника, активным элементом формы может быть все, что угодно - не обязательно многострочная чсть формы.
Соответственно, если работать мышкой - то пофик, все равно активизируется та строка, куда стрелкой ткнешь...
А вот если курсорными клавишами, то может и не срабатывать, если фокус в это время не на таблице стоит, а например на какой-нибудь кнопке формы, например "Закрыть", или любом другом элементе формы.
В процедуру "ОбработкаВыбораСтроки()", после добавления первого выбранного элемента в список(а это, если не ткнуть мышкой на нужном, будет первый элемент в списке, или последний с которым работали "в текущем сеансе" открытой формы) добавил одну строчку кода: "Активизировать("Наименование", 0);".
Так работает сразу стрелками после открытия формы списка, без активации нужной строки мышкой.
В общем-то, при открытии формы списка функция бесполезная, вряд-ли кто-то будет стрелками выбирать элементы с первого, но в других случаях, например когда фокус "увели" с таблицы вручную на какую-то кнопку, например на ту-же пресловутую "М", очень даже помогает - последняя строка в списке с которой ранее работали, остается подсвеченная, но не активная, так, как фокус в это время на кнопке, а так, при первом нажатии на стрелки клавиатуры, она выделяется и становится активной, а дальше все работает как и раньше.
56 MWWRuza
 
гуру
08.02.23
17:29
+(55) Этот эффект хорошо виден на 16 секунде моего последнего видеоролика, там была "запинка", именно по этой причине(фокус не там был, пришлось мышкой ткнуть на строку таблицы).
Сейчас такого нет.
57 Злопчинский
 
08.02.23
21:19
ну ты всехний побеждатель!
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой