4

Быстрое подключение .Net-компонентов сторонних разработчиков в 1С:Предприятие 7.7/8.0/8.1/8.2 на примере диаграмм DotNetCharting

by Elisy 21. November 2009 00:06

В статье описывается, каким образом можно подключать к 1С популярные .Net-компоненты мировых компаний-производителей программного обеспечения. За основу взят компонент DotNetCharting, позволяющий создавать более 700 видов диаграмм. К статье в качестве примера прилагаются две 1С-обработки для версий 7.7 и 8.1. Связующим звеном между 1С и .Net framework выступает внешний компонент Elisy .Net Bridge.

Во всем мире в последнее время все больше компаний-производителей программного обеспечения под Windows переводят свои продукты на .Net-интерфейсы, оставляя без внимания популярные ранее COM/OLE/ActiveX технологии. Связано это с одной стороны с тем, что компания Microsoft вкладывает в .Net-технологии большие ресурсы. С другой стороны .Net позволяет писать более качественные, отлаженные приложения, сокращая время разработки до 80 процентов по сравнению с традиционными подходами в программировании. "Дот нет" позволяет разработчикам выбирать между популярными языками программирования, в которые уже внедрена поддержка этой технологии. К таким языкам относятся: C++, Visual Basic, C#, Delphi, Perl, Python. Популярные продукты, например, MS Office и DirectX обзаводятся .Net-интерфейсами.

Удивительно, что огромная армия разработчиков под 1С в течение 6 лет была лишена возможности использовать .Net framework в полном объеме до выхода Elisy .Net Bridge. Были единичные попытки написания внешних компонентов на C#, но, оказалось, такой подход уступает технологии .Net Bridge. Для внешних компонентов C# это выражается в ограниченности типов передаваемых значений, невозможности передавать родные 1С-объекты. Устраняя эти недостатки .Net bridge позволил из кода 1С задействовать многопоточность, современный, богатый интерфейс пользователя с 3d-графикой, анимацией, градиентами и плавными линиями, а также задействовать глубоко системные функции Windows. Это далеко не весь перечень преимуществ предоставляемый .Net framework.

Оба примера для 1С 7.7 и 8.1, приготовленных специально для этой статьи, средствами 1С и .Net framework формирует красочные диаграммы. Формы, на которых они отображаются, создаются в рамках технологии WPF и не являются формами 1С. При этом 1С указывается владельцем этих форм. Приводится код в каждом примере, позволяющий записать диаграмму в файл рисунка, чтобы в дальнейшем его можно было использовать, например, в родных отчетах 1С. Примеры для 8ки показывают альтернативный путь получения диаграмм, не уступающих родным 1С и даже превосходящих их. Для 1С версии 7.7, где нет родных диаграмм, добавляют возможность их получения.

Вот результат построения диаграммы для 1С:Предприятия 7.7:

Результат построения диаграммы для 1С:Предприятие 7.7

Ниже тот же результат, полученный для 1С 8.1:

Результат построения диаграммы для 1С:Предприятие 8.1

В детали кода не буду углубляться, так как код полностью дублирует примеры из DotNetCharting SDK. Используемая технология Xaml описана была мной ранее в статье "Эксперименты с XAML в 1С 7.7/8.0/8.1/8.2". Хочется сказать, что для работы примеров необходимо скачать и установить компонент DotNetCharting, который для ознакомления можно скачать бесплатно. Ознакомиться с примерами всех диаграмм можно непосредственно на сайте разработчика в галерее.

Описанный в статье пример получения диаграмм является одним из многих примеров полезного применения .Net framework на практике. В Интернет вы сможете найти .Net-компоненты на все случаи жизни, например, компоненты работы с почтой, отправки SMS-сообщений, реализации интерфейса Office нового поколения, 3d-моделирования и тысячи других. Практически любой из них может быть подключен в 1С прямо сейчас. И если 1С 8 немного покрывают функционал .Net, то для версии 7.7 .Net и компоненты дают огромные конкурентные преимущества.

Пример для 1С 7.7 DotNetCharting.ert (9,00 kb)

Пример для 1С 8.1 DotNetCharting.epf (6,61 kb)

Exception: Stack empty.

Tags: , , , ,

1C.Net | Windows

Comments

Pashuta
Pashuta Russia
11/23/2009 10:14:12 AM #

С удовольствием прочитала вашу статью и даже скопировала для изучения

Imos
Imos Russia
11/25/2009 2:30:02 AM #

Ох, зачем ещё какие-то компоненты?( Программа итак слишком сложная(

Сергей
Сергей Russia
11/27/2009 11:55:20 AM #

Хотел бы сказать, что вопрос применения DotNetCharting в 1С стоял передо мной давно и только благодаря компоненте ElisyNetBridge удалось решить его наиболее гибко.
Собственно говоря по моей просьбе - исходя из реальной проблемы, автор компоненты буквально менее чем за день показал, как можно подключить диаграммы в 1С. Полагаю что в скором времени предложенные автором методы будут запущены в нашем коммерческом продукте.
Еще раз спасибо за идеи и неоценимую помощь!

Elisy
Elisy
11/30/2009 4:07:40 AM #

Какие еще есть популярные компоненты Нет зарубежом:
E-Business - интеграция с системами: E-Payment, PayPal, Vital/TSYS, Paymentech, FDMS, USPS, FedEx, E-Banking, Amazon;
Связь с другими ERP и бухгалтерскими системами: SAP/R3, MS Dynamics, QuickBooks;
Работа с медицинскими изображения;
Генерация Word, Excel, PDF;
Диаграммы от разных производителей;
Работа с 3d-графикой;
OLAP-компоненты;
Работа со сканером изображений;
Интерфейс для Active Directory;
Компоненты доступа к БД  через ADO.Net (MySQL, Oracle, DB2, Sybase, PostgreSQL и др.);
Работа со штрих-кодами (Чтение/запись);
Отчеты от разных производителей

Comments are closed


1.5.0.7