|
Добавить записи в регистр сведений | ☑ | ||
---|---|---|---|---|
0
Lolipop
27.01.16
✎
18:26
|
Добрый вечер.
Есть регистр "Лицевые счета контрагентов", который заполняется данными вручную, по кнопке добавить. Встала задача, перенести лицевые счета из справочника контрагенты в этот регистр. К данным обращаюсь, все ок, но через "Создатьнаборзаписей()" не работает. Как добавить в такой регистр записи? |
|||
1
Tatitutu
27.01.16
✎
18:30
|
(0)Независимый ?
|
|||
2
HardBall
27.01.16
✎
18:55
|
(0) Да ладно.
(1) Вручную добавляют |
|||
3
Cyberhawk
27.01.16
✎
19:02
|
"через "Создатьнаборзаписей()" не работает" // Показывай на картинке это твое "не работает"
|
|||
4
Lolipop
28.01.16
✎
09:27
|
(1) Независимый - нет связанных документов
|
|||
5
cw014
28.01.16
✎
09:43
|
(3) Легко:
РегистрСведений.ЛицевыеСчетаКонтрагентов.СоздатьНаборЗаписей() Не работает, пусто )))) |
|||
6
ДенисЧ
28.01.16
✎
09:45
|
(5) А установить отбор и прочитать() не пробовал?
|
|||
7
Timon1405
28.01.16
✎
09:46
|
(0)
РегистрСведенийМенеджер.<Имя регистра сведений> (InformationRegisterManager.<Имя регистра сведений>) СоздатьМенеджерЗаписи (CreateRecordManager) Синтаксис: СоздатьМенеджерЗаписи() Возвращаемое значение: Тип: РегистрСведенийМенеджерЗаписи. Описание: Создает объект для управления записью регистра сведений. Доступность: Сервер, толстый клиент, внешнее соединение. Пример: Курс = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи(); |
|||
8
Lolipop
28.01.16
✎
09:55
|
(6) Не могу понять, что пихать в отбор, чтобы не затерлись все записи.
3 измерения: Организация, банк, Физлицо. 1 ресурс: НомерЛицевогоСчета |
|||
9
ДенисЧ
28.01.16
✎
09:57
|
(8) Добавляй уникальные поля...
|
|||
10
Lolipop
28.01.16
✎
10:20
|
(9) Выборка = Справочники.Контрагенты.Выбрать();
ВыборкаРегистра = РегистрыСведений.ЛицевыеСчетаРаботниковОрганизации.СоздатьНаборЗаписей(); ВыборкаРегистра.Отбор.Организация.Установить(Справочники.Организации.НайтиПоНаименованию("123")); ВыборкаРегистра.Прочитать(); Пока Выборка.Следующий() Цикл Если Выборка.Родитель.Наименование = "Сотрудники" Тогда Если Перемен < 2 Тогда НоваяЗапись = ВыборкаРегистра.Добавить(); НоваяЗапись.ФизЛицо = Справочники.ФизическиеЛица.НайтиПоНаименованию(Выборка.Наименование); НоваяЗапись.Банк = Выборка.ОсновнойБанковскийСчет.Банк; НоваяЗапись.НомерЛицевогоСчета = Выборка.ОсновнойБанковскийСчет.НомерСчета; Прервать; Перемен= Перемен + 1; Иначе Прервать; КонецЕсли; КонецЕсли; КонецЦикла; ВыборкаРегистра.Записать(Истина); {Форма.Форма.Форма(24)}: Ошибка при вызове метода контекста (Записать) ВыборкаРегистра.Записать(Истина); по причине: Запись не верна! Значение поля не соответствует установленному отбору: ЛицевыеСчетаРаботниковОрганизации: , , (Регистр сведений: Лицевые счета сотрудников организации; Номер строки: 1; Поле: Организация) |
|||
11
Alex S D
28.01.16
✎
10:22
|
новаяЗапись.Организация = Организация;
|
|||
12
Lolipop
28.01.16
✎
10:28
|
(11)
Процедура КнопкаВыполнитьНажатие(Кнопка) Перемен = 0; Выборка = Справочники.Контрагенты.Выбрать(); ВыборкаРегистра = РегистрыСведений.ЛицевыеСчетаРаботниковОрганизации.СоздатьНаборЗаписей(); ВыборкаРегистра.Отбор.Организация.Установить(Справочники.Организации.НайтиПоНаименованию("ООО ""ТКС-Холдинг""")); ВыборкаРегистра.Прочитать(); Пока Выборка.Следующий() Цикл Если Выборка.Родитель.Наименование = "Сотрудники" Тогда Если Перемен < 2 Тогда НоваяЗапись = ВыборкаРегистра.Добавить(); НоваяЗапись.ФизЛицо = Справочники.ФизическиеЛица.НайтиПоНаименованию(Выборка.Наименование); НоваяЗапись.Банк = Выборка.ОсновнойБанковскийСчет.Банк; НоваяЗапись.Организация = Справочники.СотрудникиОрганизаций.НайтиПоНаименованию(Выборка.Наименование).Организация; НоваяЗапись.НомерЛицевогоСчета = Выборка.ОсновнойБанковскийСчет.НомерСчета; Перемен= Перемен + 1; Иначе Прервать; КонецЕсли; КонецЕсли; КонецЦикла; ВыборкаРегистра.Записать(Истина); КонецПроцедуры {Форма.Форма.Форма(24)}: Ошибка при вызове метода контекста (Записать) ВыборкаРегистра.Записать(Истина); по причине: Запись не верна! Значение поля не соответствует установленному отбору: ЛицевыеСчетаРаботниковОрганизации: , , (Регистр сведений: Лицевые счета сотрудников организации; Номер строки: 1; Поле: Организация) |
|||
13
Рэйв
28.01.16
✎
10:32
|
(12)Не ту организацию ты пихпешь.Если у тебя там вообще не пустая ссылка...
Нахрена тебе поиск по наименованию? Сделай реквизитом на форме и не мучайся |
|||
14
Рэйв
28.01.16
✎
10:33
|
и вообще в отборе ищешь по одному - в присваивании по другому,а потом удивляешься что у тебя не совпадает...
|
|||
15
Фрэнки
28.01.16
✎
10:56
|
через менеджер записи регистра сведений сделать и не париться. Если есть желание повысить быстродействие, то воткнуть этот кусок внутрь транзакции, т.е. открывать и закрывать транзакцию в коде обработки явным образом.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |