v8: Как программно менять записи регистра сведений? #651332


#0 by oslokot
Прошу простить за глупые вопросы, я пока что клюшечник :) Нужно пробежаться по регистру сведений и при определенных уловиях сделать в нем некоторые изменения. Вот такой у меня получился быдло-код: 1 вопрос. Правильно ли я использую операторы сравнения или можно как-то по другому? 2 вопрос. Правильно ли я обращаюсь к перечислениям? 3 вопрос. Собственно, как осуществить запись в регистр сведений? :)
#1 by Галахад
Для новичков есть книжка. Простые примеры.
#2 by zak555
наборзаписей с отбором по определенным условиям
#3 by cw014
1 и 3 неправильно. Делай запросом, выбирай только то, что нужно. Потом создавай менеджер записи и по ключевым полям меняй данные
#4 by Cube
Выбрать и сравнить надо в запросе.
#5 by 2S
Семеречный подход. Чувствуется. Набор записей юзай.
#6 by zak555
> при определенных уловиях сделать в нем некоторые изменения что за условия ? РС подчинён регистратору ?
#7 by oslokot
да, но запрос пока для меня сложен. Хорошо, попробую. ага условия - это простые сравнения дат. Регистратора нет.
#8 by GANR
Перечисления.СтатусыДокументовДоп1.Действующий - это запрос к жесткому диску в цикле (по замеру в этом месте увидишь тормоза) - рекомендую один раз за рамками цикла    ...
#9 by Cube
"запрос пока для меня сложен" В v8 конструктор запросов просто сказка. Ты открой и посмотри, там всё просто.
#10 by zak555
хоть бы структуру регистра описал + какие данные условия
#11 by GANR
Вот 1 из способов записи в РС ВНИМАНИЕ!!! Если сделать запись в РС без отбора - можно грохнуть ВСЕ записи РС, какие там есть, кроме тех, которые есть в таком наборе. Осторожнее с этим !
#12 by oslokot
Принято, спасибо. да, я видел. Просто решил пока выборкой пройтись простейший регистр, без регистратора Измерения: Номенклатура (спр.ссылка) и Документ (спр.ссылка) Ресурсы: Статус (перечисление) Просто тупо пробежаться по нему и вместо Статуса записать другой Статус
#13 by zak555
у записать есть параметр
#14 by GANR
Ну, подробнее - в синтаксис-помощник.
#15 by oslokot
хорошо, пробую..
#16 by oslokot
непойму все-равно как писать в ресурс. Вот, например сделал отбор по измерениям А как теперь в ресурс с именем "Статус1" записать новый статус?
#17 by GANR
НаборЗаписей[0].ТвойРесурс
#18 by GANR
Это, кстати, опять запрос в цикле
#19 by oslokot
Так, стоп. Давайте по другому. Вот сделал запрос. Работает мгновенно, не ожидал! Процедура Кнопка1Нажатие(Элемент) Выводит в табло статусы Теперь мне нужно в этом цикле выборки юзать наборзаписей?
#20 by hhhh
чтобы быстро надо так ВЫБРАТЬ
#21 by hhhh
всё надо выбирать в запросе, а не писать офигенные тормоза типа
#22 by GANR
Набор записей нужно править примерно так (курсы Чистова, Гилева и Насипова):
#23 by oslokot
спасибо за подсказки!
#24 by oslokot
Вот так получилось в итоге: Работает правильно. Что скажете?
#25 by GANR
Замер производительности в помощь. Можно ещё модифицировать алгоритм, то есть НаборЗаписей.Прочитать - убрать, в цикле Выборка.Следующий Запись = НаборЗаписей.Добавить, а в конце НаборЗаписей.Записать(Ложь), но при этом надо заполнять измерения. Существующая версия кода записывает весь имеющийся набор, зато не требует по новой заполнять измерения и реквизиты, а новая перезапишет только то, что добавлено в набор.
#26 by GANR
Смысл понятен?
#27 by oslokot
ага, понял! спасибо
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям