Имя: Пароль:
1C
1С v8
Ошибка при загрузке данных из 7.7 в БП 2.0
0 Aleksey1989
 
17.08.12
12:39
Добрый день. Возник такой вопрос - при загрузки данных из "Торговля и склад" (платформа 7.7) в конфигурацию в "Бухгалтерия предприятия 2.0" возникает вот такая ошибка:


Начало загрузки:   17.08.2012 12:12:01

Ошибка в обработчике события ПослеЗагрузкиОбъекта
   ИмяПКО                 =  СчетФактураВыданный
   ТипОбъекта             =  Счет-фактура выданный
   Объект                 =  Счет-фактура выданный А000001835 от 02.07.2012 9:16:57
   Обработчик             =  ПослеЗагрузкиОбъекта
   ОписаниеОшибки         =  Слишком много фактических параметров
   ПозицияМодуля          =  (40)
   КодСообщения           =  21

Ошибка при загрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1620)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта
   ИмяПКО                 =  СчетФактураВыданный
   ТипОбъекта             =  Счет-фактура выданный
   Объект                 =  Счет-фактура выданный А000001835 от 02.07.2012 9:16:57
   Обработчик             =  ПослеЗагрузкиОбъекта
   ОписаниеОшибки         =  Слишком много фактических параметров
   ПозицияМодуля          =  (40)
   КодСообщения           =  21

Окончание загрузки: 17.08.2012 12:17:15

Загружено объектов: 4 278

Я пробовал удалить из правил конвертации код, который написан в обработчике "ПослеЗагрузки" для ПКО - ошибка не исчезла. Почему? М.б. я удалил код не из того обработчика?

Вот скриншот:
https://dl.dropbox.com/u/61550218/error.png
1 AlexNew
 
17.08.12
12:50
Что написано в строке 40?
2 Aleksey1989
 
17.08.12
13:02
(1) Какая разница: я удалил вообще весь код, а появляется та же самая ошибка. Правила конвертации я пересохранил. Выгрузку данных делал из 7.7. с помощью новых правил.
3 Aleksey1989
 
17.08.12
13:11
(1)(2) Вот код, который я удалил из обработчика "ПослеЗагрузки", самая последняя строка и есть строка под номером 40:

Если Объект.Ответственный.Пустая() Тогда
   Объект.Ответственный = глЗначениеПеременной("глТекущийПользователь");
КонецЕсли;

Если ЗначениеЗаполнено(Объект.ДокументОснование) Тогда
   НеНашлиДокументОснование = Истина;
   Для каждого ДокументОснование из Объект.ДокументыОснования Цикл
       Если ДокументОснование.ДокументОснование = Объект.ДокументОснование Тогда
           НеНашлиДокументОснование = Ложь;
           Прервать;
       КонецЕсли;
   КонецЦикла;

   Если НеНашлиДокументОснование Тогда
       НовыйДокументОснование = Объект.ДокументыОснования.Добавить();
       НовыйДокументОснование.ДокументОснование = Объект.ДокументОснование;
   КонецЕсли;
   
   Если ТипЗнч(Объект.ДокументОснование) = Тип("ДокументСсылка.КорректировкаДолга") Тогда
       Объект.Контрагент = Неопределено;
       Объект.ДоговорКонтрагента = Неопределено;
       Объект.ВидСчетаФактуры = Перечисления.НДСВидСчетаФактуры.НаАванс;
   КонецЕсли;

   Если Объект.ДатаНомерДокументовОплаты.Количество() = 0 Тогда
       Объект.ДатаНомерДокументовОплаты.Добавить();
   КонецЕсли;

КонецЕсли;

Если (Объект.ВидСчетаФактуры = Перечисления.НДСВидСчетаФактуры.НаАванс) И (Объект.Авансы.Количество() = 0) Тогда
       Объект.Авансы.Добавить();
       Объект.Авансы[0].СтавкаНДС = Объект.СтавкаНДС;
       Объект.Авансы[0].СуммаНДС = Объект.СуммаНДС;
       Объект.Авансы[0].Сумма = Объект.Сумма;
       Объект.СуммаДокумента = Объект.Сумма;
       
КонецЕсли;

Объект.ОпределениеПараметровСчетаФактуры(Объект);
4 К_Дач
 
17.08.12
13:16
Сделай остановку по ошибке отладчиком
5 Aleksey1989
 
17.08.12
13:34
(4) А как это сделать? Разве в УниверсальномОбменеДанными есть такая возможность?
6 hhhh
 
17.08.12
14:01
(5) а разве нет?