Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP)

Публикация № 539011

Разработка - Обмен данными 1С - Загрузка и выгрузка в Excel

Обработка Загрузка Союз-PLM интеграция com

Союз-PLM представляет собой полнофункциональный программный комплекс для решения  широкого спектра задач управления инженерной технической информацией наукоемких изделий и сложных инженерных объектов в области машиностроения, приборостроения, архитектуры, строительства. На практике, это управление конструкторской документацией, интегрированное с САПР, бизнес-процессы, файловый архив. Все это работает в SQL и шевелится с помощью скриптов на C#. Скрипты свободно  отлаживаются в MS Visual Studio. Подробнее смотрите на их сайте: http://www.programsoyuz.ru/products/system-soyuz-plm.html  Редактирование, конструирование и использование бизнес-процессов на порядок лучше систем на базе 1С из тех, что я изучил.

Молочников Олег Spb. 2016.

Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP) (загрузка через EXCEL)

Что такое Союз-PLM. Согласно брошюрке это:

Союз-PLM представляет собой полнофункциональный программный комплекс для решения  широкого спектра задач управления инженерной технической информацией наукоемких изделий и сложных инженерных объектов в области машиностроения, приборостроения, архитектуры, строительства.

На практике, это управление конструкторской документацией, интегрированное с САПР, бизнес-процессы, файловый архив. Все это работает в SQL и шевелится с помощью скриптов на C#. Скрипты свободно  отлаживаются в MS Visual Studio. Подробнее смотрите на их сайте: http://www.programsoyuz.ru/products/system-soyuz-plm.html  Редактирование, конструирование и использование бизнес-процессов на порядок лучше систем на базе 1С из тех, что я изучил.

Пример кода выполняющего на стороне C# запрос в 1С:

 

	public override void Invoke( EntityAttribute attr, IEnumerable<CollectionElement> selectedElements )
	{
	         string connectionString = "srvr='192.168.0.999'; ref='с_copy'; usr='External'; pwd='123456';";
	        Type oType = Type.GetTypeFromProgID("V83.COMConnector");
	        if (oType != null)
	        {
	            //Создаем COMConnector, соединяемся с базой
	            object V8 = Activator.CreateInstance(oType);
	            object connection;
	            try
	            {
	                connection = oType.InvokeMember("Connect", BindingFlags.Public | BindingFlags.InvokeMethod, null, V8, new object[] { connectionString });
	            }
	            catch (Exception e)
	            {
	                Marshal.ReleaseComObject(V8);
	                    Service.UI.ShowMessage(string.Format("Ошибка подключения к 1С \'{0}\'", (e.InnerException.ToString()), e.Message));
	                return;
	            }
 
	            //Создаем и выполняем запрос (получение списка документов в заданном интервале)
	            object query = oType.InvokeMember("NewObject", BindingFlags.Public | BindingFlags.InvokeMethod, null, connection, new object[] { "Query" });
	            oType.InvokeMember("Текст", BindingFlags.Public | BindingFlags.SetProperty, null, query, new object[] { "ВЫБРАТЬ РеализацияТоваровУслуг.Дата, РеализацияТоваровУслуг.Номер, РеализацияТоваровУслуг.СуммаДокумента ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ГДЕ РеализацияТоваровУслуг.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&Дата1, ДЕНЬ) И КОНЕЦПЕРИОДА(&Дата2, ДЕНЬ)" });
	            oType.InvokeMember("УстановитьПараметр", BindingFlags.Public | BindingFlags.InvokeMethod, null, query, new object[] { "Дата1", new DateTime(2016, 3, 1, 0, 0, 0) });
	            oType.InvokeMember("УстановитьПараметр", BindingFlags.Public | BindingFlags.InvokeMethod, null, query, new object[] { "Дата2", new DateTime(2016, 10, 1, 0, 0, 0) });
	            object queryResult = oType.InvokeMember("Выполнить", BindingFlags.Public | BindingFlags.InvokeMethod, null, query, new object[] { });
	            object queryResultSelection = oType.InvokeMember("Выбрать", BindingFlags.Public | BindingFlags.InvokeMethod, null, queryResult, new object[] { });
	            StringBuilder sb = new StringBuilder();
                sb.Length = 0;
                 while ((bool)oType.InvokeMember("Следующий", BindingFlags.Public | BindingFlags.InvokeMethod, null, queryResultSelection, new object[] { }))
	            {
	                object field_date = oType.InvokeMember("Дата", BindingFlags.Public | BindingFlags.GetProperty, null, queryResultSelection, new object[] { });
	                object field_num = oType.InvokeMember("Номер", BindingFlags.Public | BindingFlags.GetProperty, null, queryResultSelection, new object[] { });
	                object field_sum = oType.InvokeMember("СуммаДокумента", BindingFlags.Public | BindingFlags.GetProperty, null, queryResultSelection, new object[] { });
	                sb.Append("Дата:");
	                sb.Append(field_date);
	                sb.Append(",\t№ ");
	                sb.Append(field_num);
	                sb.Append("\t - ");
	                sb.Append(field_sum);
                    sb.Append("\n");
	            }
            Service.UI.ShowMessage(sb.ToString());
 
            //Освобождаем память
            Marshal.ReleaseComObject(queryResultSelection);
	            Marshal.ReleaseComObject(queryResult);
	            Marshal.ReleaseComObject(query);
	            Marshal.ReleaseComObject(connection);
	            Marshal.ReleaseComObject(V8);
	        }
     }
  
}

 

Пример кода создающего на стороне C# номенклатуру в 1С:

   public override void Invoke(EntityAttribute attr, IEnumerable<CollectionElement> selectedElements)
    {
        string connectionString = "srvr='192.168.0.999'; ref='с_copy'; usr='External'; pwd='External';";
        Type oType = Type.GetTypeFromProgID("V83.COMConnector");
        if (oType != null)
        {
            //Создаем COMConnector, соединяемся с базой
            object V8 = Activator.CreateInstance(oType);
            object connection;
            try
            {
                connection = oType.InvokeMember("Connect", BindingFlags.Public | BindingFlags.InvokeMethod, null, V8, new object[] { connectionString });
            }
            catch (Exception e)
            {
                Marshal.ReleaseComObject(V8);
                Service.UI.ShowMessage(string.Format("Ошибка подключения к 1С  \'{0}\'", (e.InnerException.ToString()), e.Message));
                return;
            }
            string NameOfItem1C = "Тест создания номенклатуры из C#3";
 
            object Items1C = oType.InvokeMember("NewObject", BindingFlags.Public | BindingFlags.InvokeMethod, null, connection, new object[] { "СправочникМенеджер.Номенклатура" });
            object FindItem1C = oType.InvokeMember("НайтиПоНаименованию", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Static, null, Items1C, new object[] { NameOfItem1C });
            bool IfItem1CExist = Convert.ToBoolean(oType.InvokeMember("ЗначениеЗаполнено", BindingFlags.Public | BindingFlags.InvokeMethod, null, connection, new object[] { FindItem1C }));
            if (IfItem1CExist==false) {
                object NewItem1C = oType.InvokeMember("СоздатьЭлемент", BindingFlags.Public | BindingFlags.InvokeMethod, null, Items1C, new object[] { });
                object SpeciesOfItems1C = oType.InvokeMember("NewObject", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Static, null, connection, new object[] { "СправочникМенеджер.ВидыНоменклатуры" });
                object Material_SpeciesOfItems1C = oType.InvokeMember("НайтиПоНаименованию", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Static, null, SpeciesOfItems1C, new object[] { "Материал" });
                NewItem1C.GetType().InvokeMember("ВидНоменклатуры", BindingFlags.PutDispProperty | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly, null, NewItem1C, new object[] { Material_SpeciesOfItems1C });
                oType.InvokeMember("ЗаполнитьРеквизитыПоВидуНоменклатуры", BindingFlags.Public | BindingFlags.InvokeMethod, null, Items1C, new object[] { NewItem1C });
                NewItem1C.GetType().InvokeMember("Наименование", BindingFlags.PutDispProperty | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly, null, NewItem1C, new object[] { NameOfItem1C });
                NewItem1C.GetType().InvokeMember("НаименованиеПолное", BindingFlags.PutDispProperty | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly, null, NewItem1C, new object[] { NameOfItem1C });
                try
                {
                    NewItem1C.GetType().InvokeMember("Записать", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Static, null, NewItem1C, new object[] { });
                }
                catch (Exception e)
                {
                    Marshal.ReleaseComObject(Items1C);
                    Marshal.ReleaseComObject(connection);
                    Marshal.ReleaseComObject(V8);
                    Service.UI.ShowMessage(string.Format("Ошибка записи номенклатуры  \'{0}\'", (e.InnerException.ToString()), e.Message));
                    return;
                }
            }
         //Освобождаем память 
            Marshal.ReleaseComObject(Items1C);
            Marshal.ReleaseComObject(connection);
            Marshal.ReleaseComObject(V8);
 } }    }
 

Для работы этого кода вам придется в свойствах конфигурации в окне "Заголовок для скриптов" дописать:

using System.Reflection;
using System.Runtime.InteropServices;

В случае, если у вас возникает ошибка несоответсвия версий , рекомедую поискать comcntr.dll в regedit  и поправить пути.
В случае, если у вас возникает ошибка 800700c1 не является приложением Win32то весьма рекомендую статью //clerk.excel2.ru/public/197627/  ("Ошибка V82.COMConnector на сервере 64. Решение проблемы")

 

По дополнительному запросу Союз-PLM  высылает шаблон документа “Сводная спецификация”.  Мы слегка модифицируем этот документ, добавив в шаблон в табличную часть поле “Покупной / IsPurchased” (Bool). Этот атрибут нам нужен, для того что бы мы знали какие детали мы купим в  виде готового узла, а какие подузлы будем собирать сами из комплектующих, которые, в свою очередь, тоже  надо обеспечить (купить или сделать) для сборки.

В скрипте формирования табличной части в процедуре public void ParseItem( ) меняем одну строку для заполнения нового атрибута.

                    // Однотипно заполняемые атрибуты
                    Line[ "IsPurchased" ] = IsPurchased;  // Эту строку мы добавили
                    Line[ "Order" ] = attr.CollectionElements.Count;

 Больше ничего менять не надо, нам вполне подойдет штатная выгрузка в Excel, прямо в документе, для передачи данных в 1С.

Подключаем обработку в ERP (НСИ и администрирование -> Печатные формы -> Дополнительные отчеты и обработки.) В документе “Заказ на сборку” в меню заполнение появится кнопка “Загрузить заказ на сборку из файла”.

 

Выбираем файл данных, которые будем загружать.  Указываем схему обеспечения и папку по умолчанию  для вновь созданной номенклатуры. Нажимаем кнопку прочитать файл.

К статье прилагается пример excel файла для загрузки, на случай если вы будете формировать его в другой системе.  После нажатия кнопки строится дерево узлов комплектующих. 

Если для узла есть соответствие в ERP, то по сочетанию Обозначение+” ”+Наименование подбирается номенклатура из ERP.  Производится визуальный контроль заполнения колонки “Номенклатура ERP”. Если есть  номенклатура, которая названа по другому чем в PLM, но которую надо привести к стандарту, она выбирается в этой колонке вручную. 

После нажатия кнопки “Создать/обновить номенклатуру в ERP” будет создана недостающая номенклатура, а указанная приведена к стандарту.  В созданной номенклатуре артикул будет заполнен Обозначением.   

Нажатие кнопки “Добавить в документ” выгружает данные в документ. Количество комплектующих умножается на количество изделий, которые надо собрать в заказе на сборку. Если для узла стоит флаг “Покупной”, то он выгружается без подузлов.

К статье прилагается скрипт на C# для выгрузки  всех актуальных чертежей в форматах “tiff” и “pdf” для шаблона “исполнение изделия в версии (ЭСИ ГОСТ 2.053)”.   К теме имеет отношение слабое, но вдруг кому пригодиться.

 

Обработка гарантированно работает на платформе 8.3 (тестировано на релизе 8.3.8.1652) с конфигурациями 1С:ERP Управление предприятием 2 (тестировано на релизе 2.1.3.136)  только на управляемых формах.

 

Акция! Вы можете скачать эту разработку в  составе архива всех моих разработок, которые я предлагаю за StartMone, по Специальной  цене//infostart.ru/public/960899/#archive

 

P.S.: Надеюсь, вам понравится эта и другие мои статьи и разработки на //clerk.excel2.ru/profile/48714/.

 

Очень жду ваших комментариев  и пожеланий.

 

Молочников Олег Spb. 2016.

 

Скачать файлы

Наименование Файл Версия Размер
Пример скрипта выгруки изображений
.txt 11,19Kb
25.07.16
1
.txt 11,19Kb 1 Скачать
Пример экспорта спецификации
.xlsx 8,87Kb
25.07.16
3
.xlsx 8,87Kb 3 Скачать
Обработка загрузки заказа на сборку
.epf 15,42Kb
25.07.16
3
.epf 15,42Kb 3 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. vz1987 15 16.12.17 02:10 Сейчас в теме
Спасибо за статью!
Может кому-нибудь пригодится, опишу свои грабли, на которые наступил: ловил исключение "Error loading type library/DLL. (Exception from HRESULT: 0x80029C4A (TYPE_E_CANTLOADLIBRARY))" на строке кода
 connection = oType.InvokeMember("Connect", BindingFlags.Public | BindingFlags.InvokeMethod, null, V8, new object[] { connectionString });
.
Гугление данного кода ошибки вело меня совсем не в ту степь. А проблема оказалась в том, что Visual Studio была запущена не от Администратора.
2. premierex 07.06.19 09:29 Сейчас в теме
(0) Вот в этом участке кода
try
{
NewItem1C.GetType().InvokeMember("Записать", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Static, null, NewItem1C, new object[] { });
}
catch (Exception e)
{
Marshal.ReleaseComObject(Items1C);
Marshal.ReleaseComObject(connection);
Marshal.ReleaseComObject(V8);
Service.UI.ShowMessage(string.Format("Ошибка записи номенклатуры \'{0}\'", (e.InnerException.ToString()), e.Message));
return;
}
}
//Освобождаем память
Marshal.ReleaseComObject(Items1C);
Marshal.ReleaseComObject(connection);
Marshal.ReleaseComObject(V8);
Показать

высвобождение интерфейсов в констукции catch(...){...} и выход из процедуры, мне кажется, избыточны. Достаточно вывести предупреждение и дать программе завершить процедуру. Ниже по коду как-раз таки высвобождаются интерфейсы и происходит выход.
А в общем целом познавательно.
Оставьте свое сообщение

См. также

Загрузка данных из М-Аптеки+ в 1С:Бухгалтерия 8 (ред. 3.0) Промо

Внешние источники данных Файловые протоколы обмена, FTP v8 v8::БУ БП3.0 Фармацевтика, аптеки БУ Абонемент ($m)

Обработка для загрузки файлов выгрузки из программы для автоматизации аптек и аптечных сетей М-Аптека+ в 1С:Бухгалтерия 8, редакция 3.0.

11.07.2014    31431    26    1C_MApteka    34    

Нейроконструктор

Интеграция Искусственный интеллект (AI) Прочие инструменты разработчика v8 Абонемент ($m)

Изучайте нейронные сети и экспериментируйте вместе с расширением конфигурации "Нейроконструктор". Навыки программирования не требуются.

1 стартмани

20.05.2020    2344    18    user1404129    9    

Разбираемся с web-kit в 1С, на примере интеграции TinyMCE в управляемую форму в УТ 11.4. Допиливаем обмен с сайтом в УТ 11.4

Обмен данными 1С Интеграция Адаптация типовых решений v8 v8::УФ УТ11 Абонемент ($m)

Многие уже знают, что в релизе платформы 8.3.14.1565, браузер Internet Explorer был заменен на Web-Kit, это на самом деле большой шаг вперед, но я уверен, многим, как и мне, пока не совсем понятно, что к чему. Возник опыт использования web-kit в 1С, вызова JS из 1С и вызова 1С из JS. Давайте вместе попробуем понять, чем одно отличается от другого, и заодно сделаем, что-нибудь полезное. Да и наверняка многим придется переписывать свои подобные поделки после обновления на новую платформу, так что надеюсь мой опыт окажется полезным.

2 стартмани

08.12.2019    6638    8    Бэнни    25    

Вебхук. Путь Телеграма

Внешние источники данных Интеграция v8 Абонемент ($m)

Долгое (на самом деле нет) и нелегкое путешествие телеграма к неведомым (из за РКН) конфигурациям 1С. Памятка себе.

1 стартмани

03.10.2019    13191    8    platonov.e    14    

Получение изображения с IP-камеры

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Получение изображения JPG с IP-камеры в виде двоичных данных. В 1С может применяться для фотографирования объектов.

1 стартмани

10.09.2019    8377    26    sivin-alexey    8    

Описание формата внутреннего представления данных 1С в контексте обмена данными

Практика программирования Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Фирма 1С не рекомендует использовать внутреннее представление данных для любых целей, которые отличны от обмена с 1С:Предприятием 7.7. Но сама возможность заглянуть на "внутреннюю кухню" платформы с помощью функций ЗначениеВСтрокуВнутр(), ЗначениеВФайл(), ЗначениеИзСтрокиВнутр() и ЗначениеИзФайла(), дала возможность сообществу программистов 1С разработать новые приемы разработки и анализа. Так, именно на использовании внутреннего представления был построен алгоритм "быстрого массива", который позволяет практически мгновенно создать массив в памяти на основании строки с разделителями. С помощью разбора внутреннего представления можно "на лету" программным кодом выполнить анализ обычной формы и даже сделать редактор графической схемы. Во внутреннем формате сохраняют свои данные между сеансами различные популярные внешние обработки. А еще это возможность сделать быстрый обмен с внешними системами.

1 стартмани

06.09.2019    15226    10    Dementor    29    

Согласование задач из Outlook

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Согласование задач непосредственно из почтовой программы, в моем случае Outlook 2013 без каких-либо дополнительных настроек. Из почты отправляется GET запрос к HTTP-сервису 1С, который в свою очередь выполняет задачу.

1 стартмани

06.09.2019    6393    11    duhh    17    

Менеджер загрузки данных из весов с печатью этикеток Промо

Внешние источники данных Весы Учет ТМЦ Учет ТМЦ v8 УТ10 УПП1 Абонемент ($m)

Программное обеспечение "Менеджер загрузки данных из весов с печатью этикеток" предназначено для автоматического получения данных по сети Ethernet из весов МАССА-К моделей ВПМ и ТВ_Р3 (модификация MF) в режиме On-Line.

1 стартмани

20.12.2011    18505    3    hrip    10    

Обмен большими данными между клиентом и сервером

Внешние источники данных v8 Абонемент ($m)

В статье рассматривается вопрос передачи больших объемов данных, превышающих теоретический лимит сеансовых данных (4Гб за вызов) (они же временное хранилище) как с клиента на сервер, так и в обратном направлении.

1 стартмани

27.08.2019    11579    3    logos    24    

Телеграм 1С – почти коробка

Внешние источники данных v8 Абонемент ($m)

Почему это решение называется «почти коробка»? Потому, что это почти коробочное решение. С его помощью, просто добавив подсистему в конфигурацию, уже можно начинать взаимодействовать с мессенджером Telegram.

10 стартмани

20.08.2019    10254    20    zfilin    63    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    15318    63    MarkoSokolov    47    

Прыг-Скок...или из MS EXCEL в 1С (8.2) (открытый код) Промо

Обработка документов Обработка справочников Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

Универсальная загрузка данных из Microsoft Office Excel. Автоматическая загрузка из любых по форме документов с очень удобным редактором. Почти готовый шаблон для любой конфигурации. Не требует регистрации-бесплатно.

1 стартмани

16.09.2015    57678    347    Tatitutu    48    

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки

Практика программирования Внешние источники данных Обмен через XML WEB Разработка v8 1cv8.cf Абонемент ($m)

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

1 стартмани

22.04.2019    26638    32    riposte    63    

Аутентификация на внешних сервисах посредством OAuth

Информационная безопасность Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Пример подключения к сервисам Google из 1С с помощью протокола OAuth и получения данных с внешнего сервиса.

1 стартмани

03.04.2019    15747    16    binx    11    

Загрузка из Excel (без использования com-объектов, без установленного Excel)

Обработка документов Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

Обработка не использует com-объект для чтения из файла, не нужен установленный Excel.

1 стартмани

22.03.2019    12233    121    Смешной 1С    26    

Выгрузка и загрузка данных из файла Excel с поиском по любым полям (есть поиск по ссылке, всего три итерации поиска. Управляемые формы или "Такси") Промо

Загрузка и выгрузка в Excel Обработка документов v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка позволяет загружать данные с поиском по ссылке как для загружаемого объекта, так и его свойств. Загружает справочники, документы, планы видов характеристик. Будет полезна как замена использования конвертации данных для задач переноса, а также как классическая загрузка из табличного документа (Excel). Поиск объекта при загрузке выполняется до трех раз с разными полями поиска (поля поиска настраиваются). Также реализована выгрузка в Excel по ссылкам. У обработки удобный интерфейс, в котором разберется даже начинающий пользователь. Загрузка накладных из файлов xls реализована с интеллектуальным поиском колонок с данными. В интеллектуальном поиске поддерживаются все основные типовые печатные формы.

5 стартмани

16.10.2015    55751    499    primat    32    

Телеграм + 1С + Вебхуки + Апач + Самоподписанный сертификат

Внешние источники данных v8 Абонемент ($m)

Много строк исписано про интеграцию Телеграма и 1С. Но нигде не увидел полной инструкции по установке и настройке вебхуков. Попробую её написать.

1 стартмани

26.02.2019    12601    11    alexlx    29    

Универсальное расширение 1С для Google Таблиц и Документов

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Эта статья для тех, кто использует G Suite и 1С. Готовое решение для выгрузки отчетов и печатных форм из баз 1С в Google Диск в формате Google Таблиц и Google Документов. Информация по его внедрению. Описание создания и настройки проекта в GCP.

1 стартмани

31.01.2019    13499    24    Maria18    20    

Поздравление с Новым Годом! (Управляемые формы, авто год)

Поздравления v8 v8::УФ ДО ERP2 БП3.0 УТ11 ЗУП3.x Абонемент ($m)

Открытие окна поздравления при старте программы. Можно менять открытку и текст поздравления.

1 стартмани

10.12.2018    10177    71    milkers    23    

Применение средств MS SQL R service для 1С

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Некоторое время назад Microsoft добавила в MS SQL сервер службы машинного обучения, позволяющие выполнять программный код на языках программирования R и Python. В статье будет продемонстрирована общая схема и принцип того, как можно использовать данные службы в контексте разработки на 1С. 

1 стартмани

25.11.2018    13232    0    Robbi    14    

Загрузка чека онлайн-касс (загрузка товаров из чека)

Внешние источники данных WEB Кассовые операции Розничная торговля Кассовые операции Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка-пример, позволяет любому и из любой конфигурации загрузить информацию о товарах из чека(и не только) с сервера ФНС proverkacheka.nalog.ru

2 стартмани

08.10.2018    15516    28    echo77    38    

Мониторинг показателей систем 1С 8.3 с помощью Zabbix

Внешние источники данных Zabbix v8 1cv8.cf Абонемент ($m)

Опишу свой опыт мониторинга наших систем 1С с помощью Zabbix и ту пользу, которую можно извлечить из этого.

1 стартмани

05.10.2018    32748    46    akimych    48    

Универсальное средство чтения файлов Excel Промо

Универсальные обработки Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

Унифицируем чтение файлов Excel, читаем "неудобные" файлы, переносим содержимое таблиц Excel через буфер обмена.

5 стартмани

27.03.2013    28240    35    Infector    4    

Способы оптимизации переносов данных

Перенос данных из 1C8 в 1C8 Интеграция v8 КД Абонемент ($m)

Хочу рассказать вам про способы оптимизации разработки правил обмена в программе «Конвертация данных» второй редакции. Казалось бы, про эту программу и разработку в ней правил конвертации уже сказано все, что можно. Появились уже более современные и быстрые технологии. Почему же все еще она? Дело в том, что «Конвертация данных» второй редакции все еще актуальна для огромного круга задач. Она имеет очень широкую функциональность и позволяет реализовывать сложные алгоритмы. Годы идут, а люди продолжают ей пользоваться и у них возникает много вопросов по этой программе. Возможно, в будущем вы тоже будете заниматься такими проектами и столкнетесь с задачами, похожими на те, про которые я собираюсь рассказать. Мне хочется вам в этом помочь.

1 стартмани

02.08.2018    15464    11    primat    7    

Опыт проведения сложных переносов данных на 1С

Перенос данных из 1C8 в 1C8 Интеграция v8 КД Абонемент ($m)

В статье я расскажу про опыт сложных переносов на платформе 1С:Предприятие. Она будет адресована в первую очередь разработчикам 1С, которые уже имеют опыт использования методики «Конвертация данных» (как второй, так и третьей редакции) – я думаю, это большинство из нас. • Я расскажу про различные методики организации переносов данных. • Мы рассмотрим рекомендуемые способы оптимизации правил конвертации, которые позволят вам быстрее выполнять свои переносы. • Также мы разберем, какие могут возникнуть сложности в ходе переноса данных. • Я покажу сравнительный анализ по ряду параметров инструментов «Конвертация данных» второй редакции и третьей, которая вышла уже более года назад.

1 стартмани

30.07.2018    32938    8    primat    13    

Опыт интеграции мессенджера Telegram c 1C

Внешние источники данных Интеграция v8 Абонемент ($m)

Статья будет полезна всем, кто интересуется возможностями интеграции 1С с мессенджером Telegram. Пустовой Вячеслав в формате короткого мастер-класса рассказывает о создании и настройке бота, позволяющего, к примеру, упростить процессы согласования платежей внутри компании, отгрузки со склада или получение оперативной информации о состоянии дебиторской задолженности.

19.07.2018    18728    0    VachKirp    38    

Что нам стоит Push построить Промо

Внешние источники данных v8 v8::Mobile Абонемент ($m)

Попробовал некоторое время назад, push сообщения, реализованные в платформе. Понравилось, но есть несколько минусов, на примере одной программы сообщений (не буду показывать пальцем), спустя некоторое время, сообщения переставали приходить онлайн, а на компьютере приходили моментально, при этом сами смартфоны звались флагманами. Читал позднее статью, где описывалось, что проблема на стороне смартфонов, что-то вроде технологий энергосбережения, но точно не помню. Также немалый минус доступно только для смартфонов.

1 стартмани

08.09.2016    25349    17    PloAl    8    

RabbitMQ + 1С. Быстрый старт

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Внешняя компонента для отправки сообщения из 1С в кролика. Сервис прослушивания и перенаправления сообщений из кролика в http или web-сервис.

1 стартмани

10.06.2018    24825    79    Goleff74    40    

Интеграция между Atlassian Jira и 1С:Предприятие 8.3 используя Jira REST API (выборка, создание и изменение запросов, чтение, создание и удаление записей о работах, чтение комментариев и другие возможности)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с Atlassian Jira используя Jira REST API. Ключевые функции: выборка запросов с использованием JQL; добавление и изменение запросов; добавление, изменение и удаление записей о работах; чтение комментариев к запросам; сохранение всех ключевых параметров между сеансами работы. Тестирование проводилось на платформе 1С (8.3.11.2954) совместно с JIRA Server platform (7.3.7)

1 стартмани

24.04.2018    26058    151    Ko1t    70    

Чтение и запись из таблиц гугл (google sheets) в табличный документ 1С (8.3, управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка на управляемой форме для 1С версии 8.3 для доступа к сервисам Google Sheets c использованием протокола авторизации OAuth 2.0. Выполняет получение списка листов таблицы гугл, чтение таблицы гугл в табличный документ 1С и запись из табличного документа 1С в таблицу гугл. Тестирование проводилось на платформе 1С:Предприятие 8.3 (8.3.11.2954).

1 стартмани

09.04.2018    32145    204    Ko1t    68    

Практикум по созданию обменов данными через протокол oData «за полдня»

Практика программирования Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Про oData и 1С было довольно много написано, однако же описания работы и с чтением, и с записью данных через JSON я так и не встретил ни на этом ресурсе ни на других. Попробую раскрыть эту тему.

1 стартмани

20.03.2018    24125    13    timm00    64    

Оповещения из ЗУП и ERP в TELEGRAM

Внешние источники данных v8 ERP2 ЗУП3.x Абонемент ($m)

Начитался статей про интеграцию 1С -> Telegram, решил аккумулировать опыт и попробовать сделать какую-нибудь полезную обработку. Как результат - внешняя обработка, уведомляющая ответственных сотрудников по расписанию о необходимости оплаты отпусков, материальной помощи, премий. Данные посылаются в виде PDF файла (Отчет, созданный на основании макета). Можно использовать обработку как обучающую. Тестировалось на ERP 2.4.2.139, на ЗУП 3.X тоже должно работать.

1 стартмани

01.03.2018    12883    52    khabibullin.tu    14    

Вы больше не будете разбирать Excel как раньше Промо

Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

Кому не приходилось разбирать файлы в формате Excel? Все матерятся, плюются, требуют обещаний что "это в последний раз", но таки пишут загрузку из Excel. Потом форматы меняются, строки съезжают, колонки переставляют... Вам это не надоело?

1 стартмани

07.05.2018    25725    61    m-rv    34    

Практика доступа в базу 1С через протокол oData. Изменение данных

Практика программирования Внешние источники данных v8 1cv8.cf Абонемент ($m)

Продолжаем знакомство с протоколом oData и в данной статье мы рассмотрим такие вопросы, как минимально необходимый багаж теоретических знаний, необходимый для работы, способы изменения доступных данных, а также с какими ограничениями можем при этом столкнуться. Осторожно, будет много скриншотов!

1 стартмани

30.12.2017    31004    114    Dementor    27    

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника. ЗУП 3.1

Обработка документов Загрузка и выгрузка в Excel Зарплата Зарплата v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Абонемент ($m)

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника по данным экономического отдела. ЗУП 3.1.

3 стартмани

20.12.2017    40142    31    mvv1975    7    

Приемы эффективной загрузки данных из Excel в 1С

Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

Показаны приемы эффективной работы с Excel для загрузки данных в 1С.

1 стартмани

13.12.2017    42130    83    alexey.kutya    79    

Загрузка УПД в Бухгалтерию 3.0 Промо

Обработка документов Загрузка и выгрузка в Excel Оптовая торговля Оптовая торговля v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Загрузка УПД из Excel в Бухгалтерию предприятия 3.0, с добавлением номенклатуры, ГТД, стран происхождения.

3 стартмани

20.10.2015    18741    16    teyana    12    

Инструкция по настройке загрузки из ФСС электронных листков нетрудоспособности ЭЛН в документ 1С Начисление по больничному листу

Внешние источники данных Зарплата Зарплата v8 КА1 ЗУП2.5 УПП1 Россия БУ ФОМС, ПФ, ФСС Абонемент ($m)

Клиент (страхователь) работает в программе "1С Зарплата и управление персоналом ред.2.5" сдает отчетность через Контур или СБИС и не собирается подключать 1С-Отчетность, при этом хочет загружать электронные больничные в программу 1С Зарплата. Подобная ситуация может быть и для других конфигураций в которых есть документ "Начисление по больничному листу", например Комплексная автоматизация 1.1, Управление производственным предприятием 1.3.

1 стартмани

28.11.2017    135850    197    rusmil    124    

1С и MongoDB: дружба начинается с RESTHeart'а

Внешние источники данных v8 Абонемент ($m)

Краткое описание того, как подружить MongoDB и 1С: Предприятие используя один из предлагаемых на официальном сайте RESTFul сервисов - RESTHeart.

1 стартмани

03.07.2017    41910    6    Silenser    8    

Загрузка дополнительных реквизитов и сведений справочника Номенклатура из Excel и таблиц УТ 11, ERP 2 Промо

Обработка справочников Загрузка и выгрузка в Excel Учет ТМЦ Учет ТМЦ v8 v8::ОУ ERP2 УТ11 Россия УУ Абонемент ($m)

Внешняя обработка "Загрузка дополнительных реквизитов и сведений справочника Номенклатура"

1 стартмани

07.08.2017    34768    230    Windyhead    32