#0
by homa
Делаю обработочку, использую две таблицы на форме. Нужно их связать (нормальным реляционным образом - главная-дочерняя). Для этого нужно отлавливать смену строки таблицы. Ничего лучше не нашел как отлавливать нажатия клавиш внешней компонентой GHOST.DLL. И все бы хорошо, но эта сволочь (я имею ввиду GHOST-а) цепляется в памяти и не дает 1С-у закрыться. Формально окно программы закрывается, а фактически процесс в памяти остается. Приходится ручками его через Task Menedger убивать. Так вот - я перелопатил ЖКК и впервые за столько лет (!) :) :( узнал, что в 1С напрочь отсутствуют средства удаления ненужных переменных. Это действительно так или я плохо искал?
#2
by Любитель XML
а чё мешалет кинуть функцию на форму (будет отрабатывать при любом изменении) и смотреть - поменялась строка таблицы или нет? Если поменялась, то дочерную таблицу перезаполнить, если же ТекущаяСтрока = строке в данный момент, то оставлять без изменения. Я так делал и по 3 таблицы на форме, тормозов не замечалось.
#3
by insider
нафига здесь dll? вешаешь на форму реквизит типа текст с функцией (передавать текущую строку ТЗ), запоминать старую строку в переменной модуля (чтоб не отрабатывалось чаще, чем надо) и все...
#8
by Удивленный
А по поводу убития несчастных переменных конструкция ПеременнаяДляУбийства = ""; разве не работает?
#13
by orefkov
Поосторожнее со словом "сволочь". Объект "Addin.GhostService" должен создаваться ОДИН раз, в ГМ, в ПриНачалеРаботыСистемы, вся дальнейшая работа только ЧЕРЕЗ этот ОДИН объект. Сделаешь еще раз СоздатьОбъект("Addin.GhostService"), получишь то, что имеешь.
#15
by homa
Ща попробую... Этот вариант я в ФАК-ах вычитал, но так и не въехал что за что там цепляется и где собственно инициируется обновление... Действительно - не надо.
#16
by homa
Не понял вопроса... Это ж обработка, не документ - в ней табличной части нет. Сам ТЗ создаешь и сажаешь на форму - хоть десять.
#17
by insider
если хотя бы раз перескочили на вторую строку ТЗ - отрабатывается, так что мы оба частично правы :)
#18
by homa
Вот, оказывается, где собака порылась! Я же не хочу глобальный модуль портить, делаю внешнюю обработочку. Получается, что ее нельзя дважды запускать - обязательно выходить из 1С после каждого юзанья. Увы, меня это не устраивает. А на "сволочь" не обижайся - я же от чистого сердца! :))
#22
by homa
я же говорю - непонятно в какой момент запускается эта функция - кто ее пинает? "любое изменение"? Я всегда считал, что это функция для обработки результата редактирования. Т.е. запустится она после активации реквизита и нажатия в нем Ентера. Буду проверять...
#24
by Любитель XML
ты не прально понял. Вставляешь какой-нить текст на форму, у него в формуле прописываешь функцию, в которой у тебя и будет всё что тебе надо. Посмотри в ТиСе в невидимом слое есть такая штука (в Реализации)
#25
by homa
Млин! Дешево и сердито! Сделал все, что хотел. Тормоза все-таки обнаружились - если в дочерней таблице нет соответствия, то поскольку поиск выполняется простым перебором - перебирается вся таблица. Около 3000 строк - задержка в полсекунды, но раздражает. Автора одинэйсика за яйца бы подвесил - столько лишних телодвижений ради элементарнейших вещей!
#28
by homa
Потому что в 1С нет аналога "seek all for FAMILY=[Иванов] and NAME=[] and ..." Не пробовал, бо по описанию это программный аналог кнопки Del, т.е. удаление документов,, элементов справочников, объектов вобщем...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Циклы в ориентированном графе.
- Сельское хозяйсво....
- Итоги в макете печатной формы отчета 8.0
- Не выполняется ОбработкаВнешнегоСобытия при считывании сканером штрих-кода
- Прошу помощи
- Убытки прошлых лет
- Как программно узнать полное имя файла внешней обработки?
- v7: проводки с учетом ПБУ 18/02 в Бухгалтерии 8.0
- v77(компл) Размер потока не соответствует заявленному
- Как реализовать в 1С7.7 Бухгалтерии и ПУБ(!) внеоборотные активы
- Как правильно прочитать Linux Postgre?
- Сдельные наряды не попадают в начисление зарплаты
- Корректировка долга не формирует проводки. Хелп
- В каком месте в 1с прописывается по двойнму клику мыши открывать папку
- Виснет при сохранение в формате exel Очень надо
- Программное формирование документ Начисления ЗП орагнизаций
- обработка Replval.ert
- Событие при изменении настройки периода
- УПП, документ "Реализация товаров и услуг" - нет проводок
- Как перехватить программно отказ от сохранения документа