|
Как заполнить регистр сведений программно? | ☑ | ||
---|---|---|---|---|
0
Бюро пиявок
22.06.14
✎
01:08
|
Имею регистр сведений "ЧерныйСписок" с одним ресурсом "Контрагент" (тип - строка).
Юзеру показана форма, где он галочками отметил тех, кто в черном списке. В цикле Для каждого я создал массив и наполнил его наименованиями контрагентов. Теперь хочу перезаполнить регистр полностью. Очистил регистр. Затем: НаборЗаписейЧерный = РегистрыСведений.ЧерныйСписок.СоздатьНаборЗаписей(); НаборЗаписейЧерный.ЗагрузитьКолонку(ЧерныйСписок, "Контрагент"); Вот тут начинаются проблемы. Ставлю точку останова, смотрю НаборЗаписейЧерный. Набор наполнен записями, да только НомерСтроки у всех 0. Поэтом делаю НаборЗаписейЧерный.Записать(); И получаю: Ошибка при вызове метода контекста (Записать) НаборЗаписейЧерный.Записать(); по причине: Запись с такими ключевыми полями существует! : ЧерныйСписок (Регистр сведений: Черный список) Как мне победить этот номер строки? |
|||
1
Armando
22.06.14
✎
01:11
|
>>одним ресурсом "Контрагент"
и без измрений да? |
|||
2
Бюро пиявок
22.06.14
✎
01:13
|
(1) Без. Это просто список. Так нельзя?
|
|||
3
mdocs
22.06.14
✎
01:18
|
Какой то ночной кошмар.
|
|||
4
Бюро пиявок
22.06.14
✎
01:20
|
Разобрался. Ресурс перевел в измерение.
|
|||
5
mistеr
22.06.14
✎
02:37
|
>и наполнил его *наименованиями* контрагентов.
Надеюсь это тоже была шутка. |
|||
6
КонецЦикла
22.06.14
✎
02:40
|
Да вообще жпо с этими регистрами
Сцуко каменный век с деревянными дубинами при наличии SQL Server 2008, 2012 |
|||
7
Лефмихалыч
22.06.14
✎
02:44
|
(6) почему жпо и каменный век?
|
|||
8
КонецЦикла
22.06.14
✎
02:53
|
(7) Ну как-то калечно...
Можно было бы включать режим "да, я осознаю всю опасность" и давать вставлять, апдейтить, удалять записи запросами в штатном режиме. Ну это как минимум для серьезных систем. 1С по-прежнему остается системой для ларьков... |
|||
9
Лефмихалыч
22.06.14
✎
03:13
|
(8) как человек, ежедневно смотрящий в код весьма серьезных систем и в глаза авторов этого кода, ответственно заявляю: NNNOOOOOOOO!!!!!!.....
|
|||
10
Armando
22.06.14
✎
03:38
|
Ну хотя бы не прямо в sql писать, а сделали бы объект типа регистра сведений, только тупо табличка с реквизитами. Без всяких контролей уникальности, лишних индексов, чтоб набор записей записать можно было.
|
|||
11
Мимохожий Однако
22.06.14
✎
08:06
|
Достаточно сделать форму для справочника с использованием дополнительного реквизита типа Булево...Да и форма не обязательна.
|
|||
12
Defender aka LINN
22.06.14
✎
10:55
|
(8) Подключайся через АДО и куярь что угодно в базе, в чем проблема-то?
|
|||
13
APXi
22.06.14
✎
11:15
|
И будут запросы на изменения данных как в ЗУПе на выборку.
|
|||
14
User_Agronom
22.06.14
✎
11:35
|
(0) Регистр сведений можно рассматривать как функцию, которая набору аргументов (измерений) ставит в соответствие значение функции (набор ресурсов). Ну так вот: функция может возвращать пустое или неопределённое значение, а иметь набор неопределённых аргументов не может.
Кстати, если бы регистр сведений был бы периодическим или подчинённым регистратору, то измерения у него были бы. Но это явно не тот случай. (10) А чем просто РС не устраивает? Или, например, Справочник? Разреши наименованиям повторяться, а уникальный код один хрен сам генерится. |
|||
15
mistеr
22.06.14
✎
11:51
|
(8) Ага, сертификат "1С:Специалист по прямым запросам". И ключики отдельные, именные, включающие этот режим.
|
|||
16
КонецЦикла
22.06.14
✎
15:47
|
(12) Почему штатно нельзя? И уж как-то можно было отойти от "построчной записи" у себя в кишках... 21-й век как-никак.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |