8.2 Как редактировать записи в списке?

1. wbclub 17.03.10 15:25 Сейчас в теме
В 8.1 для многих объектов (справочники, регистры сведений и т.п.) можно было настроить способ редактирования записей/элементов: в диалоге/в списке/обоими способами
В 8.2 такого уже похоже нет. :o
Может кто знает, как сделать редактирование регистра сведений списком?

Причем табличную часть документа она значит умеет редактировать строки прямо в таблице, а список элементов справочника уже не умеет. Странно как то.

В голову приходит только один вариант:
1) Написать специальную обработку, где сделать табличную часть с такими же реквизитами как у регистра сведений, настраивать заново все связи реквизитов.
2) сделать команду по заполнению табличной части запросом с параметрами.
3) написать команду по обратному преобразованию табличной части в набор записей регистра и запись в регистр осуществлять программно.
4) Далее везде, где надо выдать таблицу регистра для редактирования (например в форме какого нибудь документа) выводить табличную часть обработки. При этом надо также расставить вызовы команд "ПрочитатьВТабЧасть" и "ЗаписатьВТабЧасть"

Может и сработает, но хочется как нибудь попроще.

P.S. Запуск в режиме тонкого клиента.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
15. 1C-Nic 93 02.06.21 15:17 Сейчас в теме
(1)в свойствах регистра есть "способ редактирования",
правая кнопка мыши по регистру - свойства
16. m1_1976 13 14.06.21 20:39 Сейчас в теме
(15)
Блин... Спасибо.
10 минут искал... не нашел.
2. alex_bob 246 22.03.10 11:04 Сейчас в теме
"Не умеет" - неправильное слово. Скорее "не хочет" из соображений оптимизации производительности.

Цитата из книги М.Г.Радченко "1С-Предприятие 8.2 - коротко о главном"
[IS-QUOTE]В версии 8.2 не поддерживается режим редактирования ссылочных данных информационной базы в списке. Данные можно редактировать только в форме.
При работе в режиме управляемого приложения свойство объекта конфигурации Способ редактирования игнорируется, и данные редактируются всегда в отдельной форме.
Это относится ко всем таблицам, источником данных которых является динамический список.
Если же таблица имеет другой источник данных (табличная часть, дерево значений и т.д.), то ее данные редактируются непосредственно в списке. /QUOTE]
mip128; SMazhaev; a-m-gv; acanta; websamson; +5 Ответить
3. wbclub 23.03.10 11:17 Сейчас в теме
Отлично! Гении просто, млин! Интересно еще послушать в чем тут оптимизация, если в лубом динамическом списке тащится столько же данных, как и в любом ТЧ. И даже больше. Сделать возможность редактировать эти данные не такая уж большая нагрузка. А если исходить из того что данные все таки надо редактировать когда то и теперь сравнить между собой трафик и нагрузку двух способов редактирвоания (в списке и через форму), то тогда вопрос: в какую сторону они оптимизировали?
...
Ладно, это лирика.
И все же. Как же тогда лучше реализовать такой механизм (уточним: редактирование записей регистра сведений в списке)? При чем этот механизм планируется вставлять во многие формы по конфе.
4. Душелов 4017 23.03.10 11:45 Сейчас в теме
(3) В (1) все верно написано. Так и надо делать.
5. alex_bob 246 23.03.10 12:18 Сейчас в теме
(3) Проблема в определении момента начала и окончания редактирования. Динамический список отличается от табличной части тем, что его необходимо периодически обновлять с сервера. По идее, входя в режим редактирования ты должен заблокировать запись от возможности изменения другими клиентами. Сервер должен разослать сообщения всем открытым формам.
Но с началом редактирования еще ладно, а как определить, что ты закончил редактирование в списке? Представь, что ты закончил редактирование одного поля и так и остался на этой строке. Оставлять строку заблокированной, пока ты не уйдешь на другую строку или отправлять на сервер сообщение о том, что редактирование закончено и после каждого поля снимать блокировку? И то и другое плохо. С отдельной формой проще. Открыл форму - строка блокирована. Нажал "Записать и закрыть" - записали и сняли блокировку.
А для табличной части все проще - она в одной транзакции закачивается с сервера, редактируется только на стороне клиента и записывается тоже вся целиком.
neo-ti; PLAstic; naumenko_alex; Alexeyich; darkinitr0; gadjik; +6 Ответить
9. Maxus43 21 02.12.13 16:28 Сейчас в теме
(3) wbclub,
>>то тогда вопрос: в какую сторону они оптимизировали?
например когда открывается форма - происходит считывание объекта 1 раз и 1 раз записывается.
А когда в списке - при редактировании каждого поля происходит получение объекта и его запись после окончания редактирования
6. vadimlp77 31 31.07.13 09:43 Сейчас в теме
В 1С 8.3 у меня получилось.
ЭлементыФормы.СписокДоговорыПайщиков.СпособРедактирования = СпособРедактированияСписка.ВСписке;
ybatiaev; SergeiSh; ErrorEd88; Gureev; 1cprogr_nsk; a.kuznetsov; soda; +7 Ответить
7. soda 03.10.13 14:16 Сейчас в теме
(6) У меня тоже в 8.2
a.kuznetsov; +1 Ответить
8. tushich 81 28.11.13 19:56 Сейчас в теме
Речь идет об Управляемых формах!
10. Sabfir 15.04.14 10:41 Сейчас в теме
В 8.2 обычные формы - все работает.
Достаточно прописать следующий код:
ЭлементыФормы.ДанныеФизЛиц.СпособРедактирования = СпособРедактированияСписка.ВСписке;
ybatiaev; Klainor; +2 Ответить
11. Olga12 181 15.04.14 10:47 Сейчас в теме
Для регистра сведений - открыть палитру свойств - закладка - представдение - установить способ редактирования В Списке
Egovigor; pavel_lucenko; mailrum2004; katya-495; korzhishe; chmv; CeHbKA; PrinzOfMunchen; +8 Ответить
12. spenser123 21.09.16 11:36 Сейчас в теме
В версии 8.2 не поддерживается режим редактирования ссылочных данных информационной базы в списке. Данные можно редактировать только в форме.
При работе в режиме управляемого приложения свойство объекта конфигурации Способ редактирования игнорируется, и данные редактируются всегда в отдельной форме.
Это относится ко всем таблицам, источником данных которых является динамический список.
Если же таблица имеет другой источник данных (табличная часть, дерево значений и т.д.), то ее данные редактируются непосредственно в списке.

В управляемой форме это будет игнорироваться и не получится редактировать в списке без "танцев с бубном". Единственное решение - получать объект по ссылке и записывать в нужный момент.
Светлый ум; +1 Ответить
13. JohnGalt 57 13.12.16 10:43 Сейчас в теме
Здесь нашел подсказку, что динамический список нельзя редактировать непосредственно. Но если источник списка заменить на "НаборЗаписей", например, и поместить на форму, работает. Только что проверил.
Дон Кихот; romulanin; akmich; svk; Gendelf; гвость; +6 Ответить
14. user688225_don_s 11.08.20 17:39 Сейчас в теме
Все получилось! Спасибо!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот