Имя: Пароль:
1C
1С v8
Связь баз 1C 7.7 8.2 через COM или OLE
0 mailutrish
 
15.11.12
11:30
Спецы Помогите!!!
Задача: из 7.7 надо в базе 8.2 создать документ.
Код выполняется, ошибок не дает, сообщает реквизиты "созданного" документа, но в базе не записывает!!!

Перем ФлагУжеОткрыто, СтрПодключения, База, V8;

Функция СтатусБазы()
Если ФлагУжеОткрыто=1 Тогда
Возврат "База открыта. Версия "+База.Метаданные.Версия;
Иначе
Возврат "Надо открытьБазу. "+СтрПодключения;
КонецЕсли;
КонецФункции

Процедура ПодключитьБазу() //полключить
Если ФлагУжеОткрыто=1 Тогда
Возврат;
КонецЕсли;
V8=СоздатьОбъект("V82.COMConnector");
//   V8=СоздатьОбъект("V82.Application");
Попытка
База=V8.Connect(СтрПодключения);
ФлагУжеОткрыто=1;
Исключение
сообщить(ОписаниеОшибки());
Предупреждение("Ошибка при подключении!");
ФлагУжеОткрыто=0;
КонецПопытки;
КонецПроцедуры

//*******************************************
Процедура Сформировать()
ПодключитьБазу();

СтрДатыКон=СтрЗаменить(Формат(КонДата,"ДГГГГММДД"),".","")+"235959";
ПостРС = База.Документы.ПоступлениеНаРасчетныйСчет;
НовПостРС =   ПостРС.СоздатьДокумент();

НовПостРС.Дата=СтрДатыКон;
НовПостРС.Номер="111";
НовПостРС.Записать();
Сообщить(""+СтрДатыКон);
КонецПроцедуры

ФлагУжеОткрыто=0;
//СтрПодключения="Srvr=""localhost"";Ref=""base1c"";Usr=""Немчилова"";Pwd=""""";
СтрПодключения="File=""C:\Base8\База Воронеж (демо демо)"";Usr=""Немчилова"";Pwd=""""";
1 Ork
 
15.11.12
11:34
(0) Извращаться с датой не нужно. Она и так передается по ОЛЕ нормально. Типа такого :

НовПостРС.Дата = База.КонецДня(КонДата);
2 Spieluhr
 
15.11.12
12:15
(0)    
НовПостРС = База.Документы.ПоступлениеНаРасчетныйСчет.СоздатьДокумент(); //Заполняем необходимые реквизиты
НовПостРС.Дата = ДокДата;
..................................
Попытка
       Счет.Записать();
   Сообщить("Записан документ № " + НовПостРС.Номер + " от " + НовПостРС.Дата);
Исключение
   Предупреждение("Ошибка при записи документа: " + ОписаниеОшибки());
КонецПопытки;
3 Spieluhr
 
15.11.12
12:16
в (2) в названии переменной ошибка, вот:

НовПостРС = База.Документы.ПоступлениеНаРасчетныйСчет.СоздатьДокумент(); //Заполняем необходимые реквизиты

НовПостРС.Дата = ДокДата;
..................................
Попытка
   НовПостРС.Записать();
   Сообщить("Записан документ № " + НовПостРС.Номер + " от " + НовПостРС.Дата);
Исключение
   Предупреждение("Ошибка при записи документа: " + ОписаниеОшибки());
КонецПопытки;
4 dk
 
15.11.12
12:18
что в журнале регистрации базы 8?
AdBlock убивает бесплатный контент. 1Сергей