РС- МенеджерЗаписи, НомерПоПорядку

1. INZ 26.03.24 13:35 Сейчас в теме
Переношу программно записи регистра сведений. Измерения: ФизЛицо, НомерПоПорядку. В базе-источнике по Иванову две записи, у одной НомерПоПорядку-1, у другой-2.

Записываю в базу-приемник через менеджер записи. Номер по порядку копирую из приемника. (для второй записи -2). На первую строчку не ругается а 2+ пишет Что не соответствует отбору. В менеджере справочника обработку данного поля не нашел.
Найденные решения
9. spacecraft 26.03.24 20:36 Сейчас в теме
(8) срабатывает подписка на событие: ПроверитьЗаписиДанныхФизическихЛиц
Процедура ПроверитьЗаписиДанныхФизическихЛицПередЗаписью(Источник, Отказ, Замещение) Экспорт
	
	Если ЗарплатаКадры.ОтключитьБизнесЛогикуПриЗаписи(Источник) Тогда
		Возврат;
	КонецЕсли;
	
	Если Источник.ДополнительныеСвойства.Свойство("НеПроверятьЗаписиДанныхФизическихЛиц") Тогда
		Возврат;
	КонецЕсли;
	
	НомерПоПорядку = 1;
	Для каждого Запись Из Источник Цикл
		
		Запись.НомерПоПорядку = НомерПоПорядку;
		НомерПоПорядку = НомерПоПорядку + 1;
		
	КонецЦикла;
	
КонецПроцедуры
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 34 26.03.24 13:49 Сейчас в теме
(1)
На первую строчку не ругается а 2+ пишет Что не соответствует отбору.

Создавай новый менеджер записи.
3. INZ 26.03.24 13:55 Сейчас в теме
Создал новый менеджер, в нём пишу номер по порядку 2, ругается. Хочет 1
4. INZ 26.03.24 13:56 Сейчас в теме
Ошибка " Не соответствует отбору". Отбор установил только по физлицу
5. nomad_irk 76 26.03.24 14:02 Сейчас в теме
(4)значит нужно еще и по номеру отбор.
6. INZ 26.03.24 14:19 Сейчас в теме
(4)
Отбор установил только по физлицу
. ОПС. Значение отбора устанавливаю для выборки из базы источника. Для Менеджера записи отборы не ставлю:
7. INZ 26.03.24 19:02 Сейчас в теме
Что может быть за условие на данные записи. Это РС ТрудоваяДеятельностьФизическихЛиц из ЗУП. Регистр независимый и непереодический. Почему не дает записать. Пробовал передавать номер по порядку =1. Ожидаемо перезаписывает и остается одна запись. Пробовал РежимЗагрузки = Истина.
8. INZ 26.03.24 19:29 Сейчас в теме
Смоделировал ситуацию обработкой

&НаСервере
Процедура ДобавитьОднуЗаписьНаСервере(НомерЗаписи)
	МенеджерЗаписи = РегистрыСведений.ТрудоваяДеятельностьФизическихЛиц.СоздатьМенеджерЗаписи();
	ВыборкаФизЛиц = Справочники.ФизическиеЛица.Выбрать();
	ВыборкаФизЛиц.Следующий();
	МенеджерЗаписи.ФизическоеЛицо = ВыборкаФизЛиц.Ссылка;
	МенеджерЗаписи.НомерПоПорядку =НомерЗаписи;
	Попытка
	МенеджерЗаписи.Записать(истина);
	Сообщить("ОК");
Исключение
	Сообщить(ОписаниеОшибки());
КонецПопытки;
	
КонецПроцедуры

&НаКлиенте
Процедура ДобавитьОднуЗапись(Команда)
	ДобавитьОднуЗаписьНаСервере(1);
КонецПроцедуры

&НаКлиенте
Процедура ДобавитьДвезаписи(Команда)
	ДобавитьОднуЗаписьНаСервере(1); 
	ДобавитьОднуЗаписьНаСервере(2);

КонецПроцедуры
Показать



Понятно что отбор накладывается при записи в регистр. При записи МенеджераЗаписи отладчиком попадаю в модуль НабораЗаписей (ПриЗаписи) но там никаких отборов нет. В модуле менеджера есть функция подсчета записей. Но на каком этапе она запускается не понятно. Точка отладки не срабатывает
Прикрепленные файлы:
ТестРС.epf
9. spacecraft 26.03.24 20:36 Сейчас в теме
(8) срабатывает подписка на событие: ПроверитьЗаписиДанныхФизическихЛиц
Процедура ПроверитьЗаписиДанныхФизическихЛицПередЗаписью(Источник, Отказ, Замещение) Экспорт
	
	Если ЗарплатаКадры.ОтключитьБизнесЛогикуПриЗаписи(Источник) Тогда
		Возврат;
	КонецЕсли;
	
	Если Источник.ДополнительныеСвойства.Свойство("НеПроверятьЗаписиДанныхФизическихЛиц") Тогда
		Возврат;
	КонецЕсли;
	
	НомерПоПорядку = 1;
	Для каждого Запись Из Источник Цикл
		
		Запись.НомерПоПорядку = НомерПоПорядку;
		НомерПоПорядку = НомерПоПорядку + 1;
		
	КонецЦикла;
	
КонецПроцедуры
Показать
10. INZ 26.03.24 20:52 Сейчас в теме
ЕПС, подпискии!!!!!!!!!!!!!!!!!!!!!! Огромное спасибо!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11. INZ 26.03.24 22:25 Сейчас в теме
Хм...
А можно управлять Источник.ДополнительныеСвойства.Свойство("НеПроверятьЗаписиДанныхФизическихЛиц") из менеджера записи?

ЗА управление ОтключитьБизнесЛогикуПриЗаписи(Источник) вроде как отвечает ОбменДанными = Истина
ОбменДанными = Истина у меня стоит перед записью , но подписка отрабатывает.
12. INZ 26.03.24 22:47 Сейчас в теме
(11)Переписываю через набор
13. INZ 26.03.24 23:30 Сейчас в теме
Получается что в данный регистр невозможно добавлять записи менеджером. Так что особенно весело этот костыль проявит себя при переносе правилами КД.
Оставьте свое сообщение

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