Com1C v1.6 - работа с 1С:Предприятие 8.x через COM-интерфейс

08.01.11

Интеграция - Обмен между базами 1C

Выкладывается с исходниками (Delphi 6). Работайте, учитесь, совершенствуйте:)

Внешнее приложение для Windows, позволяет динамически сформировать строку подключения COM к 1С 8.x (на 1С 8.2 строку подключения в исходниках необходимо изменить: поменять V81 на V82 - говорим спасибо SirYozha) для файлового и клиент-серверного варианта.

Показан пример работы с 1С 8.x через COM в Delphi 6 с использованием русского (!) языка.
1. Выборка метаданных
2. Выполнение простых запросов к данным
3. Вывод данных справочника "Сотрудники организации" для 1С:ЗиУП 2.5

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

Когда-нибудь попробую использовать Firebird Embedded для хранения некоторого заранее полученного набора данных из 1С для дальнейшего формирования отчетов - получится нечто вроде локальной базы 1С:Firebird:)

При разработке используется компонента для Delphi "nextgrid_d6" (дистрибутив находится в директории с исходными кодами Delphi) и PivotCubeVCL (тоже внутри, уже распакован).

Планы:
1. Планируется доработка для работы с 1С:Предприятие 7.7 через OLE
2. Решение проблемы (для меня) - ускорение обращения к ссылочным объектам 1С:Предприятия 8.1.

Внимание! Выложено две версии: с использованием ActiveX OLAP и без него.

PS: если Вы реализовали интересное решение в рамках данной публикации - не пожалейте кода для товарищей. Присылайте мне Ваши варианты решений, я их включу в основную ветку разработки. Разумеется, с указанием автора

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

Наименование Файл Версия Размер
Com1C v1.6 - source (D6) - 2011-01-09 - 01-00.zip
.zip 3,19Mb
149
.zip 3,19Mb 149 Скачать
Com1C v1.5 - source (D6).zip
.zip 3,44Mb
130
.zip 3,44Mb 130 Скачать
Com1C_v1_5 - source (D6) without OLAP.zip
.zip 3,44Mb
27
.zip 3,44Mb 27 Скачать
Com1C v1.5.1 - source (D6) - 2010-09-09 - 22-20.zip
.zip 3,18Mb
40
.zip 3,18Mb 40 Скачать


КОМУ ЭТО НУЖНО:

1. Программистам - для обучения в большей степени, для автоматизации обмена между ИБ, ну и т.д. Лишним в копилке не будет

2. Компаниям, которые имеют желание использовать отчетность отдельно от приложения 1С (соответственно, без затрат на лицензии 1С)


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

См. также

SALE! 20%

Перенос данных из УПП 1.3 в ERP 2 / УТ 11 / КА 2. Переносятся документы, справочная информация и остатки

Обмен между базами 1C Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) в продаже с 2015 года, постоянно работаем над их развитием | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

45650 36520 руб.

04.08.2015    159670    363    267    

345

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 22572 руб.

12.06.2017    134927    722    291    

388

SALE! 20%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | В продаже с 2019г. | Воспользовались более 176 предприятий! | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой, обращайтесь!

34650 27720 руб.

15.04.2019    68414    178    138    

111

SALE! 20%

Перенос данных из ERP 2 / КА 2 в ЗУП 3. Переносятся остатки, документы и справочники

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Воспользовались более 79 предприятий! | Предлагаем приобрести готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | В продаже с 2020г. | Оперативно обновляем правила до актуальных релизов 1С | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

43450 34760 руб.

03.12.2020    34168    80    58    

78

SALE! 10%

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.87.x) и УТ 11.5 (11.5.16.x).

28000 25200 руб.

23.07.2020    46287    196    64    

158

SALE! 10%

Перенос данных из БП 3.0 в УТ 11 / КА 2 / ERP 2. Переносятся начальные остатки, документы и справочники

Обмен между базами 1C Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

В продаже с 2014г. | Воспользовались более 122 предприятий! | Перенос данных из БП 3.0 в УТ 11 | из БП 3.0 в КА 2 | из БП 3.0 в ERP | Сэкономьте свое время - используйте готовое решение для перехода! | Постоянно работаем над развитием переноса данных | Обновляем на новые релизы 1С | Есть фильтр выгрузки по организациям | Переносятся начальные остатки на выбранную дату, документы за период времени и вся возможная справочная информация | Перенос сделан на технологии КД 2 (правила конвертации данных)

50722 45650 руб.

31.10.2014    231390    124    327    

295

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9207    9    8    

10

SALE! 10%

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.223.x) и БП 3.0 (3.0.149.x). Правила подходят для версии ПРОФ и КОРП.

28000 25200 руб.

15.12.2021    20235    132    38    

90
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. mirco 74 07.08.10 21:00 Сейчас в теме
"Компаниям с ограниченным количеством лицензий 1С" - 1С обидится :D
2. cleaner_it 220 07.08.10 21:08 Сейчас в теме
(1) Да пусть обижается:) От нее не убудет:)
6. Stety 152 08.08.10 16:54 Сейчас в теме
(1) Если бы их эта уязвимость действительно заботила, уже давно была бы заглушка и лицензии продавались бы двух видов: нормальная - подороже и "рид-онли" - подешевле.
3. _LEV_ 07.08.10 21:59 Сейчас в теме
По-моему извращение какое-то 8-)
4. cleaner_it 220 07.08.10 22:18 Сейчас в теме
(3) А по делу? Идея в целом неплохая, если развить.
5. Abadonna 3958 08.08.10 02:32 Сейчас в теме
За Дельфи - плюс не глядя ;)
7. markers 274 09.08.10 07:19 Сейчас в теме
Эх, мож кто ткнёт пальцем где можно взять пример (желательно готовый), как писать COM Объекты? Чтоб из 1С можно было подключатся... Честно гуглил, чё-то пытался сделать но не получалось... Буду весьма благодарен! Пишу на Delphi 7.
По теме: У меня при подключении ругнулось на несоответствие версий.
8. cleaner_it 220 09.08.10 07:31 Сейчас в теме
(7) Несоответствие версий COM-объектов? Какая платформа 1С установлена?
ActiveX - это продолжение COM. Пример небольшой могу накидать на D6 или D2010
11. markers 274 09.08.10 07:50 Сейчас в теме
(8) насчёт платформы понял, у меня видимо на компе просто старая стоит :) Ссорь!
Пример? Было бы здорово, самый простецкий, а то просто не могу малость понять.... Спасибо!
14. cleaner_it 220 09.08.10 08:30 Сейчас в теме
(11) Лучше проверь наличие COM-объекта, иногда бывают глюки с его установкой
15. cleaner_it 220 09.08.10 09:36 Сейчас в теме
(11) Пожалуй, лучше статью сделаю, оно так быстрее усвоится
10. Арчибальд 2706 09.08.10 07:47 Сейчас в теме
12. qwertor 09.08.10 07:56 Сейчас в теме
" Без желания тратить лицензии 1С... " - каким образом ?
13. cleaner_it 220 09.08.10 08:17 Сейчас в теме
(12) Таким, что лицензия занимается COM-объектом только на момент обращения к данным. При окончании выборки разрушаем экземпляр объекта (соединение), и имеем на руках данные для отчета и одну незанятую лицензию 1С
16. cleaner_it 220 09.08.10 09:44 Сейчас в теме
17. Serg7Z 09.08.10 11:55 Сейчас в теме
выдает ошибку, "Класс не зарегистрирован" как его зарегить?
18. Abadonna 3958 09.08.10 13:25 Сейчас в теме
OLE создает нормально, вроде коннектится.
Однако Меню - Основная форма: см.рис.
Чаво хочет?
Может nextgrid_d6 в СИСТЕМЕ не хватает?
Прикрепленные файлы:
19. cleaner_it 220 09.08.10 15:07 Сейчас в теме
(18) nextgrid_d6 нужен только для Delphi. Про ошибку - может OLAP не установлен http://infostart.ru/public/64385/ ? Он у меня находится на следующей закладке формы "Основная форма"
20. Abadonna 3958 09.08.10 15:10 Сейчас в теме
(19)
Про ошибку - может OLAP не установлен

Дык ясен арафат не установлен ;) Ты б хоть в описалове это как-то указал
22. cleaner_it 220 09.08.10 15:12 Сейчас в теме
(20) Виновен :oops:
Abadonna; Арчибальд; +2 Ответить
21. cleaner_it 220 09.08.10 15:11 Сейчас в теме
Посмотрите у себя закладку "OLAP-отчет" (картинка "Встроенный ActiveX-объект: OLAP-отчет") - есть там что? Если вам не нужен OLAP, удалите в Delphi компонент
25. Abadonna 3958 09.08.10 15:21 Сейчас в теме
(21) Тут видишь в чем штука: чтобы перекомпилить, мне надо nextgrid_d6 на Дельфи поставить, а неохота - у меня и так там компонент море. Ты бы положил еще вариант экзюка без OLAP, и было бы счастье;)
Да и D7 у меня, может и не скушать компонент
23. Abadonna 3958 09.08.10 15:14 Сейчас в теме
По опыту: описалова лишнего не бывает. Потом меньше вопросами терроризируют ;)
24. cleaner_it 220 09.08.10 15:19 Сейчас в теме
27. Арчибальд 2706 09.08.10 15:50 Сейчас в теме
(24) Поздно. Ты уже под катком :D
26. Abadonna 3958 09.08.10 15:46 Сейчас в теме
Если возникает ошибка "Класс не зарегистрирован" - это ничего страшного, просто не будет работать OLAP-отчет

К сожалению, не просто OLAP не работает. При нажатии ОК на мессадж-боске с ошибкой дальше просто ничего не происходит - форма таки не открывается
28. cleaner_it 220 09.08.10 16:20 Сейчас в теме
(26) Ок, перекомпилю экзешник без OLAP:) А вот без nextgrid_d6 сложнее, не хочется на стандартные компоненты переползать

(27) Каток - это неприятно:(
29. Abadonna 3958 09.08.10 16:22 Сейчас в теме
(28) Да просто экзюк сделай, чтобы хоть потестить.
30. Арчибальд 2706 09.08.10 16:33 Сейчас в теме
(28) Как сказать... Есть разные мнения, Абадонна в курсе :D
31. cleaner_it 220 09.08.10 16:33 Сейчас в теме
Добавил файлик "Com1C_v1_5 - source (D6) without OLAP.zip", тестируйте:)

Кстати, есть хорошая задачка для интересующихся: как получить из 1С не все данные справочника для отображения в таблице, а только те, которые нужно отобразить (а при движении вертикального ползунка "добирать" нужные данные). Если ее решить - тогда уж можно будет развернуться:)
32. tsd 105 09.08.10 20:28 Сейчас в теме

КОМУ ЭТО НУЖНО:
2. Компаниям с ограниченным количеством лицензий 1С. Без желания тратить лицензии 1С на сотрудников, которым для работы нужна только отчетность:)


Хм,
применение данного решения подразумевает наличие в штате специально обученного человека, либо постоянное обращение к оному если он за штатом.

Bнтересно, через какое время до руководства дойдет, что выгоднее один раз купить лицензии, чем постоянно платить зарплату :D
например, лицензия на 20 пользователей стоит 65 т.р., ну, плюс сервер 1С 42 т.р. = 107 т.р. Через сколько месяцев стоимость умельца сравняется со стоимостью лицензий?
34. cleaner_it 220 10.08.10 02:47 Сейчас в теме
(32) Предполагается наличие 1С-ника в штате:) Раз он есть - почему не воспользоваться ситуацией
(33) Спасибо!
36. Abadonna 3958 10.08.10 06:21 Сейчас в теме
(32) tsd, а ты не франч случайно? или аутсорсер? Фикси бы не написал
подразумевает наличие в штате специально обученного человек
, ибо фикси и есть специально обученный человек ;)
37. tsd 105 10.08.10 12:08 Сейчас в теме
(36) угу, уже давно франч. А за бытность свою был и фикси и фри (в общем как негра не назови ... :D ).

Фикси бы не написал
, ибо фикси и есть специально обученный человек


да ктож спорит то. Вот только с точки зрения бизнеса применение данного решения будет означать подсадку на иглу конкретного умельца. Могу привести пару-тройку реальных случаев когда после исчезновения такого умельца (неожиданно уволился, погиб в автокатастрофе) контора начинает иметь ну очень большую кучу гемороя достаточно продолжительный период времени. И начальная копеечная экономия выливается в вовсе не копеечные убытки. Но, кто ж об этом думает то вначале ;)

Кроме того, а какая выгода для фикси наваливать на себя кучу дополнительного гемороя из-за нобходимости постоянной поддержки данного решения?

ЗЫ: сексом лучше заниматься в большой удобной кровати, а не стоя в гамаке в натянутом на себя гидрокостюме ;)

38. Abadonna 3958 11.08.10 00:13 Сейчас в теме
(37)
сексом лучше заниматься в большой удобной кровати

Молодой еще ;) Мне вот в кровати уже и неинтересно. Но и в гидрокостюме не буду :D
Что касается данного решения, для меня оно интересно именно как решение, практического применения, если честно, не вижу
33. MMF 679 10.08.10 00:28 Сейчас в теме
"Кстати, есть хорошая задачка для интересующихся: как получить из 1С не все данные справочника для отображения в таблице, а только те, которые нужно отобразить (а при движении вертикального ползунка "добирать" нужные данные). Если ее решить - тогда уж можно будет развернуться"
Обычно в таких случаях делают на основе TVirtualStringTree - быстро получают первичные ключи и на их основе строят дерево-грид, а при прокрутке подкачивают отсутствующие поля по pk.
35. cleaner_it 220 10.08.10 04:21 Сейчас в теме
(33) Боюсь, что в качестве первичных ключей придется брать GUID, а их быстро получить не получится...
39. cleaner_it 220 11.08.10 01:52 Сейчас в теме
Главное - реализация идеи. А как ее применить - всегда найдем 8-)
40. SirYozha 222 16.08.10 12:31 Сейчас в теме
на 1С 8.2 не проверял, но на толстом клиенте должно работать

не сработает в строчке
V8 := CreateOLEObject('V81.COMConnector');// as IV8COMConnector;

в 8.2 вместо V81 пишется V82
41. cleaner_it 220 17.08.10 06:42 Сейчас в теме
(40) ок, добавлю явный выбор версии платформы
42. cleaner_it 220 09.09.10 16:16 Сейчас в теме
Обновлено до версии 1.5.1
Добавлено:
1. Обращение к метаданным
2. Выполнение простых запросов
43. cleaner_it 220 08.01.11 19:32 Сейчас в теме
Обновлено до версии 1.6
Изменения:
1. Добавлен явный выбор версии платформы 1С (8.1, 8.2, 7.7)
2. Разделены формы обращения к метаданным и построения OLAP-отчетов (для того, чтобы не выкладывать отдельно версию без OLAP-отчета)
44. hate86 09.10.11 11:24 Сейчас в теме
Спасибо:-) Удобное подспорье. Почерпнула пару новых моментов.
1С 7.7 через COM.connector не подключается? или у меня просто руки кривые?
45. Zoomby 09.10.11 12:33 Сейчас в теме
Спасибо, нужно будет посмотреть обработку. :)
46. Varies 02.11.11 18:10 Сейчас в теме
hate86
к 1С 7.7 нельзя подключиться через СОМ, туда только через OLE можно.

cleaner_it
пофикси для 1С 7.7 выбор COM/OLE коннектора, там практически ничего не отличается, только пара строчек при подключении изменится.
47. cleaner_it 220 03.11.11 02:22 Сейчас в теме
(46) У меня времени нет на это:) Ставить делфи 6 с компонентами, изменять... Программисты смогут сделать это самостоятельно, это нетрудно.
48. lees 24.11.11 14:02 Сейчас в теме
исходники Делфи я поюзал. Да, здорово! как реальный пример использовал , сделал обработку на основе этого тоже по Ком объекту, которая загружает данные из зарплатной базы в УПП, но обезличеннные! Круть! Ком-объекты рулят!
cleaner_it; +1 Ответить
Оставьте свое сообщение