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

Программно через OLE создать запись в справочнике номенклатуры

Автор Sergey_ka, 18 июл 2016, 14:51

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

Sergey_ka

Добрый день!
Есть задача в VisualFoxPro программно через OLE создать запись с справочнике номенклатуры 1c 8.3 "Управление торговлей для Украины 2.3

Вот код:
oNesobj = createobject("V83.Application")
strConnect='File="'+ALLTRIM(Spath)+'";Usr="'+ALLTRIM(opername)+'";pwd="'+alltrim(operpass)+'"'
oNesobj.Connect(strConnect)
ЗаписьНоменклатуры=oNesobj.Справочники.Номенклатура.СоздатьЭлемент()
ЗаписьНоменклатуры.УстановитьСсылкуНового(oNesobj.Справочники.Номенклатура.ПолучитьСсылку())
ЗаписьНоменклатуры.Наименование=tmpnomen.name
ЗаписьНоменклатуры.НаименованиеПолное=tmpnomen.name
ЗаписьНоменклатуры.Весовой=.F.
ЗаписьНоменклатуры.Услуга=.F.
ЗаписьНоменклатуры.ВидНоменклатуры=oNesobj.Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Розница")
ЗаписьНоменклатуры.СтавкаНдс=oNesobj.Перечисления.СтавкиНдс.БезНдс
ЗаписьНоменклатуры.Артикул=tmpnomen.nnomer   

***********Добавляю в справочник ед. изм. запись, и устанавливаю владельца
ЗаписьИзм=oNesobj.Справочники.ЕдиницыИзмерения.СоздатьЭлемент()
ЗаписьИзм.Владелец=ЗаписьНоменклатуры.ПолучитьСсылкуНового()
ЗаписьИзм.ОбменДанными.Загрузка = .T.
ЗаписьИзм.ЕдиницаПоКлассификатору=oNesobj.Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт")
ЗаписьИзм.Наименование="шт"
ЗаписьИзм.Коэффициент=1
ЗаписьИзм.Записать()

    ******Назначаю единицы измерения для записи номенклатуры
ЗаписьНоменклатуры.БазоваяЕдиницаИзмерения=ЗаписьИзм.Ссылка
ЗаписьНоменклатуры.ЕдиницаДляОтчетов=ЗаписьИзм.Ссылка
ЗаписьНоменклатуры.ЕдиницаХраненияОстатков=ЗаписьИзм.Ссылка
ЗаписьНоменклатуры.ЕдиницаИзмеренияМест=ЗаписьИзм.Ссылка

ЗаписьНоменклатуры.Записать()

Вы выполнении команды "Записать" вылетает ошибка OLE IDISPATH exception code 1001 ... Не удалось записать запись "Номенклатура"
Подозреваю что есть еще обязательные поля, которые не прописал или в чем проблема?
Заранее спасибо!

vitasw

ЗаписьНоменклатуры.БазоваяЕдиницаИзмерения=ЗаписьИзм.Ссылка тут ошибка
Должно быть:
ЗаписьНоменклатуры.БазоваяЕдиницаИзмерения=oNesobj.Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт")

У вас 2 раза "Записать" на какой из них вылетает ошибка?

Теги:

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

Рейтинг@Mail.ru

Поиск