:: Вопросы по 1С
1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
Добрый день ! Прошу совета по вставке новой записи в 1с из Vfox 9. Вот код:

obj1c = CreateObject("V82.COMConnector")
id1c = obj1c.Connect('File="название...";Usr="User";Pwd="111"')
d1=id1c.СоздатьОбъект("Справочник.Контрагенты")
d1.Новый()
d1.Комментарий = 'FFF'
.....
d1.Записать()

Матерится, что "Ole error code ... Unknown name" на строке № 3. Где рыть ? (Темой 1с начал интересоваться недавно)
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
Стандартные грабли

Вместо первых двух строк вставь это:

ТекCOMПодключение = Новый COMОбъект(V82.COMConnector);
id1c = ТекCOMПодключение.Connect('File="название...";Usr="User";Pwd="111"');

Твой код был бы рабочим если бы в нём заменить COMConnector на Application, но это влечет свои проблемы.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
Уважаемый ssa! Если б я ети строки вызывал в 1с - то соглашусь, но я вызываю Из VFP, где на строку ТекCOMПодключение = Новый COMОбъект(V82.COMConnector) сразу же ошибка "Syntax error"...
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
yurecl
Уважаемый ssa! Если б я ети строки вызывал в 1с - то соглашусь, но я вызываю Из VFP, где на строку ТекCOMПодключение = Новый COMОбъект(V82.COMConnector) сразу же ошибка "Syntax error"...
Ну так переделайте под фокс Или ждете только готовый рабочий код?

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
obj1c = NewObject("V82.COMConnector")
id1c = obj1c.Connect('File="название...";Usr="User";Pwd="111"')
d1=id1c.СоздатьОбъект("Справочник.Контрагенты")

Аналогично : "Ole error code ... Unknown name"
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
А с буржуйскими именами методов (вместо "СоздатьОбъект") - не покатит?
Вообще если из IDE фокса первые 2 строки исполнить, то IntelliSense не показывает какие есть методы/свойства у этого самого id1c ?


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
А с буржуйскими именами методов (вместо "СоздатьОбъект") - не покатит? Не Катит. Одинаково.
Вообще если из IDE фокса первые 2 строки исполнить, то IntelliSense не показывает какие есть методы/свойства у этого самого id1c ? Не показывает.

Вообще кто работал с V82.COMConnector от 1с 8.2 ? А то я так вижу тут не густо со спецами по етому вопросу. COMConnector от 1с7 не предлогать.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
yurecl
id1c = obj1c.Connect('File="название...";Usr="User";Pwd="111"')
Убери все двойные кавычки кроме тех, что обрамляют длинные пути или пути с пробелами.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
ssa, проблем с коннектом не было никаких. Но тем не менее благодарю за уделенное мне внимание. Я уже ешел дальше. Проблема была в логике обращения к коннектору.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
А не "Справочники.Контрагенты" в 8.2?
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
Все верно Паша - Справочники. А вот как из фокса поменять свойство "ЄтоГруппа" ? ставлю = Истинна = 1 = .t. - не работает. Неужели удалать Елемент а потом создавать группу ? (По началу експортнул группы как простые елементы).
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
yurecl
Все верно Паша - Справочники. А вот как из фокса поменять свойство "ЄтоГруппа" ? ставлю = Истинна = 1 = .t. - не работает.
Это такое сообщение об ошибке? "Истинна" и "Истина" - два разных слова. Свойства "ЄтоГруппа" в 1С нет.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
Про ошибку ни какого сообщения.

О1с=lfnd.ПолучитьОбъект()
О1с.Наименование = ALLTRIM(c_cntgg.name)
О1с.ЭтоГруппа=1 (.t., Истинна) - не меняет значения, хотя Наименование меняет
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
yurecl
Все верно Паша - Справочники. А вот как из фокса поменять свойство "ЄтоГруппа" ? ставлю = Истинна = 1 = .t. - не работает. Неужели удалать Елемент а потом создавать группу ? (По началу експортнул группы как простые елементы).
Свойство "ЭтоГруппа" всегда доступен как "только чтение". Его нельзя поменять. Для типа иерархии "иерархия групп и элементов" существует два разных метода: "СоздатьЭлемент()" и "СоздатьГруппу()". Для иерархии только "элементов" этот признак выставляется автоматически, если существуют ссылки типа "Родитель" на данный элемент.

Короче, удаляйте и пересоздавайте.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
ssa
yurecl
Все верно Паша - Справочники. А вот как из фокса поменять свойство "ЄтоГруппа" ? ставлю = Истинна = 1 = .t. - не работает.
Это такое сообщение об ошибке? "Истинна" и "Истина" - два разных слова. Свойства "ЄтоГруппа" в 1С нет.
Если я правильно помню, то в 1С попытка записать в ReadOnly Property не вызывает ошибки. Надо доку читать для таких случаев.



Исправлено 1 раз(а). Последнее : pasha_usue, 24.12.13 08:27
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
спасибо Паша ! Так и подозревал. А вот
доки там чуток многовасто. Все сразу не осилишь...
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
yurecl
спасибо Паша ! Так и подозревал. А вот
доки там чуток многовасто. Все сразу не осилишь...
Синтакс-помощник рулит. Ctrl+F1 и поиском ЭтоГруппа()
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
yurecl
Автор

Сообщений: 18
Дата регистрации: 27.02.2009
Вот еще уперся. Не создается договор контрагента.

ДоговорСсылка = id1c.Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию('Договор купли-продажи',,,lfnd.Ссылка)
IF ДоговорСсылка.Пустая()=.t.
Договор = id1c.Справочники.ДоговорыКонтрагентов.СоздатьЭлемент()
Договор.ВидДоговора=id1c.Справочники.ВидыДоговоровПоГК.НайтиПоНаименованию("Договор купли-продажи")
Договор.Наименование="Договор купли-продажи"
Договор.Организация=id1c.УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(id1c.Справочники.Пользователи.НайтиПоНаименованию(id1c.ПользователиИнформационнойБазы.ТекущийПользователь().ПолноеИмя), "ОсновнаяОрганизация")
Договор.ВалютаВзаиморасчетов=id1c.Справочники.Валюты.НайтиПоКоду("980")
Договор.Владелец=lfnd.Ссылка
Договор.Записать()
endif

Ошибка на предпоследней строке - "Не удалось записать "Договоры контрагентов"". Где покопать ?
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
pasha_usue

Сообщений: 3649
Откуда: Е-бург
Дата регистрации: 06.10.2006
AERROR, возможно есть развернутое сообщение об ошибке. Или отладить код в 1Ске, потом перевести на COM.
Ratings: 0 negative/0 positive
Re: 1с 8.2 и Fox9.0
Foxtrot

Сообщений: 3408
Откуда: Куда:
Дата регистрации: 25.04.2003
причин мобыть стопицот навскидку:
заполнены не все обязательные поля или как вариант заполняешь пустыми значениями
не хватает прав для текущег пользователя/роли
нуна глянуть в сторону rls


------------------
Мойте ноги, моя ноги вы моете и руки
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 4 (Гостей: 4)

© 2000-2024 Fox Club 
Яндекс.Метрика