|
КД. Обмен РегистрСведений.
| ☑ |
0
dj_serega
07.03.14
✎
12:40
|
Здравствуйте. Не могу понять почему следующий код
|
|
1
dj_serega
07.03.14
✎
12:43
|
+(0) блин :)
Есть два документа, которые есть регистраторами регистра сведений.
Первый документ делает одну запись.
Второй документ делает две записи.
Следующий код выполняется только при обмене первого документа, и не работает при выгрузке второго.
Не скажу что не знаю КД, но почему так выполняется обмен не могу понять.
Для Каждого СтрокаНабора Из Объект Цикл
Если НЕ СтрокаНабора.Сотрудник.Статус = Перечисления.Статусы.Работает Тогда
ТекСотрудник = СтрокаНабора.Сотрудник.ПолучитьОбъект();
ТекСотрудник.Результат = Перечисления.Статусы.Работает;
ТекСотрудник.Записать();
КонецЕсли;
КонецЦикла;
|
|
2
kosts
07.03.14
✎
12:46
|
(0) ничего не понял...
|
|
3
dj_serega
07.03.14
✎
12:51
|
(2) Выполняется обмен регистра сведений.
ТипЗнч(Объект) = Тип("РегистрСведенийНаборЗаписей.СтатусыСотрудников")
Док1 делает в регистре одну запись. Обмен проходит успешно. Изменения в справочнике сотрудники проходят.
Док2 делает в регистре две записи. Обмен выполняется без ошибок. Но и изменения в справочнике Сотрудники не делает.
Для Каждого СтрокаНабора Из Объект Цикл
Если НЕ СтрокаНабора.Сотрудник.Статус = Перечисления.Статусы.Работает Тогда
ТекСотрудник = СтрокаНабора.Сотрудник.ПолучитьОбъект();
ТекСотрудник.Результат = Перечисления.Статусы.Работает;
ТекСотрудник.Записать();
КонецЕсли;
КонецЦикла;
|
|
4
dj_serega
07.03.14
✎
12:54
|
Получается что во втором случае (док2) СтрокаНабора не есть типом РегистрСведенийЗапись. И через "." обратиться к измерению не получается.
|
|
5
kosts
07.03.14
✎
12:59
|
Регистр переносишь специально (и документ сам не делает движений) ИЛИ документ сам делает движения в новой базе самостоятельно (а регистр не переносишь специально?)?
|
|