gifts2017

C# + 1C. Урок 2. Обращение к 1С из C#

Опубликовал Александр Шуравин (megabax) в раздел Программирование - Практика программирования

В рамках этого урока мы изучим интеграцию 1С языком программирования C# на примере обращения к функционалу 1С из программ на C#

C# + 1C. Урок 2. Обращение к 1С из C#

На прошлом уроке мы из 1С обращались к программе на C#.  Сегодня сделаем наоборот: из C# будем обращаться в программу 1С. Для этого нам нужно подключить к проекту на C# COM-объект 1С (через "Проекты" -> "Добавить ссылку"):

C# + 1C. Урок 2. Обращение к 1С из C#

Соответствующую библиотеку мы добавим с закладки COM:

C# + 1C. Урок 2. Обращение к 1С из C#

Ну и все, теперь мы можем юзать 1С из программы на C#. Вот простейший пример, создание элемента справочника "номенклатура":

        private void button1_Click(object sender, EventArgs e)

        {

            string user = "Админ";

            string pas = "";

            string file = "C:\\1cv82\\Личные базы\\ДБ";

            dynamic result;

            dynamic refer;

            V82.COMConnector com1s = new V82.COMConnector();

 

            com1s.PoolCapacity = 10;

            com1s.PoolTimeout = 60;

            com1s.MaxConnections = 2;

            result = com1s.Connect("File='" + file + "';Usr='" + user + "';pwd='" + pas + "';");

            refer = result.Справочники.Номенклатура.СоздатьЭлемент();

            refer.Наименование = "Создано из C#";

            refer.Записать();

        }

 

После запуска этой программы в 1С у нас добавиться элемент справочника "Номенклатура":

 

C# + 1C. Урок 2. Обращение к 1С из C#

 

 

Источник: http://easyprog.ru/index.php?option=com_content&task=view&id=1453&Itemid=48

См. также

Подписаться Добавить вознаграждение

Комментарии

1. serg__k (serg__k) 12.03.14 00:53
Просьба помочь, на строке с dynamic возникает ошибка:
Не удалось найти имя типа или пространства имен "dynamic" (пропущена директива using или ссылка на сборку?)
Как можно исправить ошибку?
2. Олег (oleg_km) 04.06.14 09:00
dynamic появился вроде в NET 4.0
3. Дан Рассел (evrey96) 01.02.15 18:46
Это скрипт работает на ASP.NET если да то как?
4. Батор Кореев (bator.koreev) 10.07.15 17:58
При обращении к платформе 8.3 необходимо в настройках проекта поставить 32 разрядную систему))
5. Николай Пугачев (nickpugachev) 10.07.15 18:32
(4) bator.koreev, при обращении к 8.3 не надо ломиться в COM :)
да и сам смысл ломиться в COM какой, если есть более приятные и для .Net и для 1С способы - Веб-сервисы/HTTP сервисы. Только если надо ввалить кучу данных. Но и в этом случае (да простит меня 1С :)) проще использовать более родные способы для .Net из пространства имен System.Data или даже SSIS
6. С К (cepera1575) 29.10.15 07:50
(1) serg__k, тип "dynamic" появился в VS 2010. В более ранних версиях его нету.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа