|
Многострадальная процедура ПриПолученииДанных | ☑ | ||
---|---|---|---|---|
0
CyberDream
24.09.13
✎
15:55
|
Есть задача. Нужно чтобы, при определнных условиях раскрашивались поля в форме списка справочника.
Справочник - ФизическиеЛица. Если, СотрудникОрганмзации, к которому привязано данное физическое лицо уволен, то поле с физическим лдицом должно быть закрашено. Поскольку физических лиц дофига, процедура ПриВыводе строки - не тру, поскольку есть обращение к БД и вся эта фигня будет жестко тормозить. Идем в сторону "ПриПолученииДанных". Вот тут вопрос. Форма списка ФизическиеЛица простейшая, никаких отборов там не используется. Ставим в процедуре "ПриПолученииДанных" точку останова и открываем форму списка... Тут... происходит какая-то нездоровая фигня. Процедура вызывается для каждой строчки табличного поля отдельно, более того, ситуация повторяется, если прокрутить список вниз или вверх.... Пока туплю.... объяснения сему нет.... Помагайте.... |
|||
1
Euguln
24.09.13
✎
15:57
|
(0) Принудительное обновление формы?
|
|||
2
CyberDream
24.09.13
✎
15:58
|
(0) Перекопал все - ничего похожего не нашел
|
|||
3
Жан Пердежон
24.09.13
✎
15:58
|
переходите на управляемые формы, там это реализовано)
|
|||
4
ДемонМаксвелла
24.09.13
✎
15:58
|
ИМХО при получении данных ты заставляешь платформу получать данные заново
|
|||
5
CyberDream
24.09.13
✎
15:59
|
(3) УФ это круто, но, к сожалению, Бухгалтерии для Украины на УФ еще не придумали
|
|||
6
CyberDream
24.09.13
✎
16:00
|
(4) Догда какая разница между ПриВыводеСтроки и ПриПолученииДанных. Сами 1С в ИТС для обработки данных из БД рекомендуют использовать ПриПолученииДанных вместо ПриВыводеСтроки
|
|||
7
МойКодУныл
24.09.13
✎
16:00
|
(24) при прокрутке оно и будет вызываться, т.к. появляются новые "видимые данные". А вот при выводе - и правда нездоровая фигня))).
|
|||
8
Поросенок Петр
24.09.13
✎
16:03
|
(5) Напили одну упр форму для справочника и включи галку юзать УФ в обычном режиме.
|
|||
9
CyberDream
24.09.13
✎
16:22
|
Короче... заманался я искать.... время поджимает. Ща сделал через ПривыводеСтроки. Как-нить на досуге поковыряю. Пока пусть клиент хавает так. Вроде глазами тормозов не заметно, а там подумаем.
|
|||
10
Старик Юзергад
24.09.13
✎
16:23
|
Читай СП
|
|||
11
CyberDream
24.09.13
✎
16:33
|
(10)
у тебя такое в СП написано? ---------- ТабличноеПоле (TableBox) ПриПолученииДанных (OnDataGet) Синтаксис: ПриПолученииДанных(<ОформленияСтрок>) Параметры: <ОформленияСтрок> Тип: ОформленияСтрок. Коллекция оформления строк табличного поля. Данную коллекцию нельзя использовать вне обработчика, т.к в момент вызова обработчика события она напрямую связана с коллекцией видимых строк табличного поля, а после окончания обработки события ее содержимое может не соответствовать коллекции видимых строк. Описание: Возникает при получении данных табличным полем, после обработки событий ПриВыводеСтроки. ---------- Думаешь я не читал??? |
|||
12
Kreont
24.09.13
✎
16:47
|
(0) да ниче там не скажется на скорости, все нормально ,аналогично доделывал такое
|
|||
13
y22-k
24.09.13
✎
16:55
|
(0) так и должно по идее быть в чем проблема то? первый раз он обрабатывает одну строку потом все что на экране
|
|||
14
Bober
24.09.13
✎
17:33
|
(0) около 9 лет 1с пишет, что при выводе строки оставлено для совместимости, пользуйтесь ПриПолученииДанных.
Если меняются данные при получении данных, то процесс обновления запускается снова и так до бесконечности. |
|||
15
Bober
24.09.13
✎
17:33
|
(0) ПриПолученииДанных
|
|||
16
Михаил Козлов
24.09.13
✎
18:03
|
Можно еще хранить свой кэш, в котором запоминать (для физ. лица) нужное значение (например, соответствие с ключом = ссылке на физ. лицо); при прокрутке туда-сюда не нужно будет формировать данные.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |