Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 03:59

Процедура создания записей в регистре сведений

Автор Pavel779, 29 авг 2012, 10:58

0 Пользователей и 1 гость просматривают эту тему.

Pavel779

Подскажите в конфигурации "Зарплата и Управление Персоналом, редакция 2.5". При записи справочника физлица, делается движение  в "регистр сведений"ФИОФизЛиц"
Подскажите как найти или как называется эта процедура??????

Klyacksa

Вы уверены, что движения делаются при записи справочника, а не какого-либо документа?

В документе стоит смотреть ОбработкуПрведения, а в справочнике - ну если уверены, что при записи, то и смотрите процедуру ПриЗаписи, ПередЗаписью и ПослеЗаписи.
Как вариант, можно поиском поискать РегистрыСведений.ФИОФизЛиц
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Pavel779

Пишу обработку для выгрузки из XML файла информацию по физлицам. И загрузки её в ЗУП 8
В Форме справочника физЛица, есть строка ИМЯ где указывается ФИО а потом это ФИО делится на Фамилия, Имя, Отчество и при записи этого справочника. Делается запись в регистр сведений "ФИОФизЛиц".
Так вот при загрузки того XML фала в зуп, у меня заполняется строка ИМЯ а ниже это строка нет разбивается. И при записи справочника, не делается запись в регистр сведений "ФИОФизЛиц".

Подскажите как это сделать а еще лучше поделитесь кодом!!!

Klyacksa

Посмотрите, в какой именно момент идет разбивка на Фамилию, Имя и Отчество. ПриЗаписи? Или в момент редактирования ФИО?

Чтобы отработало ПриЗаписи формы также, как и при обычном создании элемента, воспользуйтесь функцией ЗаписатьВФорме() вместо Записать():
Новая = Справочники.Физлица.СоздатьЭлемент();
Новая.Наименование             = Наименование;
....
Форма = Новая.ПолучитьФорму();
Если Форма.ЗаписатьВФорме() Тогда
  Сообщить("Записано");
Иначе
  Сообщить("Не записано!");
КонецЕсли;
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Pavel779

Вот кусок кода где идет создание справочника

Процедура СоздатьЭлементСправочника(СписокЗначений)

ФИО = "";

Для Счетчик = 1 По СписокЗначений.Количество()-1 Цикл

ФИО = СокрЛП(ФИО + " " + СписокЗначений.Получить(Счетчик));

КонецЦикла;

НовыйЭлемент = Справочники.ФизическиеЛица.СоздатьЭлемент();

НовыйЭлемент.СтраховойНомерПФР = СписокЗначений[0].Значение;

НовыйЭлемент.Наименование = ФИО;

НовыйЭлемент.Записать();

КонецПроцедуры


Как мне сделать эту запись в регистр сведений!!!

Klyacksa

Я же Вам написала схему записи элемента. Проведите аналогию.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Pavel779

Да вот, что то не получается как вы написали.
Возможно я делаю что то не так. Может напишите полный код!

Klyacksa

Что именно не работает?
Покажите, что у Вас получилось и какие возникают ошибки.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Pavel779

Решил по своему вот так:

Процедура ЗаписатьДанныеФИО(СписокЗначений,НовыйЭлемент)

МенеджерЗаписи = РегистрыСведений.ФИОФизЛиц.СоздатьМенеджерЗаписи();

Дата = "01.01.1980 12:59:59";


МенеджерЗаписи.ФизЛицо = НовыйЭлемент.Ссылка;
МенеджерЗаписи.Фамилия = СписокЗначений[1].Значение;
МенеджерЗаписи.Имя = СписокЗначений[2].Значение;
МенеджерЗаписи.Отчество = СписокЗначений[3].Значение;
МенеджерЗаписи.Период = Дата;
МенеджерЗаписи.Записать(Истина);

КонецПроцедуры

Klyacksa

Да, можно и так.
Разница в том, что в Вашем случае вы делаете только запись в регистр, и если изменится запись справочника, то Ваша обработка все-равно будет делать запись в регистр. А в моем варианте, будет выполняться точно то же самое, что и при обычном создании элемента.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск