Добрый день!
Хочу создать подключение к 1С в BPMonline через Com-объекты.
Создала кнопку и БП для нее: старт-скрипт-конец.
Собственно сам скрипт:
ConnectionString = "C:\\Program Files (x86)\\1cv82\\common\\1cestart.exe ENTERPRISE /S 127.0.0.1\\crm";
Type v8Type = Type.GetTypeFromProgID("V82.Application", true);
dynamic v8 = Activator.CreateInstance(v8Type);
dynamic sprNomen;
v8.Initialize(v8.RmTrade, ConnectionString, "");
sprNomen = v8.CreateObject("Справочник.Номенклатура");
sprNomen.SelectItems(0);
while (sprNomen.GetItem() == 1.0)
{
string naim = (string)sprNomen.Наименование;
Console.WriteLine(naim);
}
return true;
При попытке опубликовать процесс, выдает ошибки компиляции (список в прикрепленном файле).
В частности не находит метод GetTypeFromProgID, т.е. и COM-объект не создает.
Подскажите в чем может быть проблема. И как правильно создать COM-объект 1С версии 8.2.
Нравится
Здравствуйте, Александра!
Уточните, пожалуйста, какая у Вас версия ядра?
Александра, создала отдельный процесс, добавила в using System.Reflection и System, код:
string server = "Server1c"; string username = "admin"; string password = "pass"; string database = "buh12"; string connectionString = String.Format("Srvr={0}; Ref={1}; Usr={2}; Pwd={3}", server, database, username, password); object _v80Connector; object v8; Type v8Type; object[] connectargs = new object[1]; connectargs[0] = connectionString; v8Type = Type.GetTypeFromProgID("V82.COMConnector"); _v80Connector = Activator.CreateInstance(v8Type); v8 = v8Type.InvokeMember("Connect", BindingFlags.Public | BindingFlags.Static | System.Reflection.BindingFlags.InvokeMethod, null, _v80Connector, connectargs);
под отладчиком дошла до последней строчки. Сам коннект попробую проверить, как только разверну базу 1С.
Добавила ваш код и подключила System.Reflection и System, но метод GetTypeFromProgID так и не находит.
Ольга, в какой системе у Вас работает сервер? Какая версия dotnet? Какие установки на application pool в IIS?
Версия .NET 4.0. Я пробовала на локальном IISExpress, по application pool что именно интересует?
Сейчас попробуем удаленно к Александре подключиться и посмотреть.