Добрый день!
Хочу создать подключение к 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, код:
[csharp]
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);
[/csharp]
под отладчиком дошла до последней строчки. Сам коннект попробую проверить, как только разверну базу 1С.
Добавила ваш код и подключила System.Reflection и System, но метод GetTypeFromProgID так и не находит.
Ольга, в какой системе у Вас работает сервер? Какая версия dotnet? Какие установки на application pool в IIS?
Версия .NET 4.0. Я пробовала на локальном IISExpress, по application pool что именно интересует?
Сейчас попробуем удаленно к Александре подключиться и посмотреть.