Имя: Пароль:
1C
 
Обновление бух на 30
0 MiniMuk
 
20.11.14
11:48
Обновляю Бухгалтерия предприятия, редакция 2.0 (2.0.61.4) на
Бухгалтерия предприятия, редакция 3.0 (3.0.36.11)
при обновлении в режиме предприятия прерывается со следюущей ошибкой

{ОбщийМодуль.РегламентированнаяОтчетность.Модуль(3518)}: Ошибка при вызове метода контекста (ПолучитьОбъект)
             Док = Элемент.Ссылка.ПолучитьОбъект();
по причине:
В данной транзакции уже происходили ошибки!

иду в модуль смотрю код

// При обновлении конфигурации с редакции 2.0 на редакцию 3.0 необходимо заполнить значениями реквизиты "ПредставлениеВида",
// "ПредставлениеПериода" документа "РегламентированныйОтчет" и реквизит "ПредставлениеПериода" документа
// "ВыгрузкаРегламентированныхОтчетов".
//    
Процедура ЗаполнитьПредставлениеПериодаИВидаРеглОтчета() Экспорт
Запрос = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ
|    РегламентированныйОтчет.Ссылка
|ИЗ
|    Документ.РегламентированныйОтчет КАК РегламентированныйОтчет
|ГДЕ
|    (РегламентированныйОтчет.ПредставлениеВида = """"
|            ИЛИ РегламентированныйОтчет.ПредставлениеПериода = """")");
     ТаблицаРеглОтч = Запрос.Выполнить().Выгрузить();
Если ТаблицаРеглОтч.Количество() > 0 Тогда
     НачатьТранзакцию();
     Для Каждого Элемент Из ТаблицаРеглОтч Цикл
         Док = Элемент.Ссылка.ПолучитьОбъект();
             Док.Заблокировать();
         Док.ПредставлениеВида    = ПредставлениеВидаДокумента(Док.Вид);
         Док.ПредставлениеПериода = ПредставлениеПериода(Док.ДатаНачала, КонецДня(Док.ДатаОкончания));
         Док.Записать();
         Док.Разблокировать();
     КонецЦикла;
     ЗафиксироватьТранзакцию();
КонецЕсли;

забиваю этот код в обработку, в момент ошибки 1с предлает открыть обработку. Открываю обработку с этим кодом запускаю
получаю ту же самую ошибку на получении второго элемента из списка полученного запросом.
без транзакции цикл пробегает по всем элементам чтото записывает, но второй раз запрос все равно отрабатывает
1 MiniMuk
 
20.11.14
13:07
ап
2 vtolga
 
20.11.14
13:35
поставь в попытку- исключение.
3 MiniMuk
 
20.11.14
13:48
Как я понимаю если поставлю в попутку ото будет анологично что я код закомментировал, попытка словит исключения и пропустит выполнение куска кода.
Я вот не могу понят, почему если я выполняю этот цикл, у меня запрос по новой выбирает данные
4 Pooh
 
20.11.14
13:51
конфы типовые ?

и кстати - официальная инфа от 1с есть про обязательный переход? поддержку прикрывают или нет?
5 MiniMuk
 
20.11.14
14:03
(4) совсем типовые переходят вроде. В это сильно много изменений. В этой части код вообще типовой и документ типовой, что не срабатывает не могу понять. По сути два реквизита заполнить в документе....

Отчетность вроде поддерживают. Я пока у меня затишье решил посмотреть баранов по дороге.
Ах, да еще забыл совсем платформа 1С:Предприятие 8.3 (8.3.5.1231)
6 MiniMuk
 
21.11.14
07:45
up
7 MiniMuk
 
21.11.14
10:11
вынес код в отельную обработку

Док = Элемент.Ссылка.ПолучитьОбъект();
Док.Заблокировать();
Док.ПредставлениеВида =РегламентированнаяОтчетность.ПредставлениеВидаДокумента(Док.Вид);
Док.ПредставлениеПериода=ПредставлениеПериода(Док.ДатаНачала, КонецДня(Док.ДатаОкончания));
Док.Записать();
Док.Разблокировать();

Сообщить("ПредставлениеВида=" + Док.ПредставлениеВида);
Сообщить("ПредставлениеПериода=" + Док.ПредставлениеПериода);
            Сообщить("ПредставлениеВидаССылка=" + Док.ССылка.ПредставлениеВида);
Сообщить("ПредставлениеПериодаССылка=" + Док.ССылка.ПредставлениеПериода);

И по ходу у меня просто объект не записывается. Права есть, ограничений нет.
8 MiniMuk
 
21.11.14
10:12
Док.ПредставлениеВида заполнент, а Док.ССылка.ПредставлениеВида нет
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.