Имя: Пароль:
1C
1С v8
Передача массива и получение обратно через COMОбъект и COMSafeArray
0 mishkerdon
 
06.03.18
07:24
Написал библиотеку на C#, которая сортирует массив, состоящий из смешанных (буквы и числа) данных в текстовом поле.
Код типа такого:
public object sortArrayAlphanum(object arr)
{
blablabla...
return arr;
}

В 1С вызываю так:
мойМассив=Новый COMSafeArray(Массив,"VT_VARIANT",Массив.Количество(),2); //массив двумерный
сортировщик=Новый COMОбъект("For1C.Sortir");
новыйМассив=сортировщик.sortArrayAlphanum(мойМассив);

Но после обработки выясняется что массив в таком же виде, в каком я получал его из запроса (т.е. неотсортирован).
Как можно правильно передавать массивы туда и обратно в/из COMОбъект?

P.S.: при использовании этой библиотеки из приложения, написанного на C#, данные сортируются.
1 Скиурус
 
06.03.18
07:42
А если из функции в процедуру переделать?
2 asady
 
06.03.18
07:49
(0) нормально передаются только одномерные массивы