Вход | Регистрация

1С:Предприятие ::

Метки:внешние компоненты

вызов методов 1с из внешней компоненты.

Я
   kill9
14.01.05 - 11:55
Кто может подсказать почему при вызове метода 1с с параметрами из внешней компоненты у меня ничего не получается. вызываю какой-либо метод без параметров - проходит. а если вызываю метод с параметрами пишет либо Неправильный тип данных, либо неверно указан реквизит и т.д.
для любопытствующих - код:

_variant_t args[4];
args[3] = L"Реквизит";
args[2] = L"Нужный реквизит";
V_VT(&args[1]) = VT_ERROR;
V_VT(&args[0]) = VT_ERROR;

DISPPARAMS dispparams = {args,NULL,4,0};
                                    
LPOLESTR meth = L"НайтиПоРеквизиту";
hr = app->GetIDsOfNames(IID_NULL,&meth,1,LOCALE_USER_DEFAULT,&dispid);

hr = app->Invoke(dispid, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &dispparams, &dk, &pExcepInfo, &argserr);
 
  Рекламное место пустует
   Vint Kras
 
1 - 14.01.05 - 12:26
При исполнении метода первому параметру будет передан args[3] ?
и сколько аргументов у "НайтиПоРеквизиту" ? я про 7.7....
   kill9
2 - 14.01.05 - 12:55
Да я так и так пробовал переставлять параметры.
под 7.7 все работает без проблемм, а вот под 8 - грабли.
в методе НайтиПоРеквизиту 4 параметра
   Vint Kras
 
3 - 14.01.05 - 13:22
Строки с кавычками попробуй передать
   kill9
4 - 14.01.05 - 13:32
С кавычками он исключение вывливает "Неверно указан реквизит". Без кавычек - неверный тип....


Список тем форума
Рекламное место пустует  
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки - вот настоящая работа.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует