1С для .NET. Средства интеграции.

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

Разработка - Практика программирования

31
Статья посвящена анализу существующих способов и инструментов интеграции .NET приложений с прикладными решениями 1С:Предприятие, в частности, какие способы подобной интеграции существуют, и для каких случаев подходит каждый из них.

 

 

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

Объективных причин этому несколько. Во-первых, программные продукты 1С сейчас используются практически повсеместно, и желания подарить конкурентам свою долю рынка фирма 1С явно не выражает. Во-вторых, прикладные решения на платформе 1С:Предприятие представляют собой преимущественно системы учетные, а значит, являются источником большого количества нужной и полезной объективной информации. Доступ к этой информации зачастую должны иметь не только непосредственные пользователи прикладного решения, но и остальные сотрудники компании, бизнес-процессы которых поддерживаются другими программными средствами, а также внешние лица – клиенты и партнеры компании.

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

Если вы уже столкнулись с проблемой решения задачи интеграции, то надеемся, что наш обзор поможет вам сделать правильный выбор. Если же такая задача Вас пока миновала, то с нашей помощью Вы сможете встретить ее во всеоружии.

 

 

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

*       обмен через промежуточные файлы (.txt, .csv, .xml, .dbf);

*        выгрузка данных в промежуточное хранилище;

*        использование механизма OLE Automation;

*        использование COM-соединения;

*        публикация Web-сервисов;

*        использование Web-расширения для 1С;

*        прямой доступ к данным (Elisy.LinqTo1CSql.81);

*        Enterra .NET SDK.

В списке представлены не только средства, штатно включенные в платформу 1С, но также и самостоятельные продукты, поставляемые как фирмой 1С (Web-расширение), так и сторонними разработчиками (Enterra .NET SDK, Elisy.LinqTo1CSql.81).

Остановимся подробнее на каждом из указанных способов.

Обмен через промежуточные файлы (.txt, .csv, .xml, .dbf)

Здесь все достаточно ясно: в 1С формируется выборка данных, которая выгружается в файл обмена. Сформированный файл может использоваться другими программными средствами. Возможна и обратная ситуация – сформированный сторонней программой файл заданного формата загружается и обрабатывается 1С:Предприятие. Естественно, такого рода обмен потребует создания специальной обработки (либо правил обмена) для выгрузки/загрузки файла.  Минусы такого варианта очевидны – любые изменения в конфигурации 1С потребуют внесения изменений в процедуру экспорта/импорта файлов, в случае отложенной загрузки файла выгруженные данные могут устаревать, требуются дополнительные усилия для обеспечения защиты передаваемой информации. Подобный способ подходит для решения небольших интеграционных задач (например, публикация прайс-листа на веб-сайте), для его использования требуется владение приемами разработки в среде 1С.

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

Выгрузка данных в промежуточное хранилище

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

Использование OLE Automation, COM-соединений

Для их использования в Вашем приложении вполне традиционным образом создается Automation-сервер либо Com-соединение. Через Automation-сервер Вы получаете доступ к системным константам, заданным в конфигураторе объектам и переменным, объявленным в модуле приложения. В качестве методов Automation-сервера можно использовать системные процедуры и функции, а также процедуры и функции модуля приложения и общих модулей, объявленные с ключевым словом Экспорт.

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

Типичный недостаток данных способов – возможна низкая скорость при передаче больших массивов данных. В случае COM-соединения данная проблема может быть частично решена путем использования пула соединений.

Стоимость: данные средства входят в поставку платформы 1С:Предприятие, дополнительных затрат на их приобретение не требуется.

Web-сервисы

Платформа 1С:Предприятие реализует механизмы создания Web-сервисов, которые могут быть опубликованы на сервере IIS или Apache. Создание Web-сервиса требует профессиональных знаний встроенного языка 1С (и принципов конфигурирования, конечно).

Стоимость: данные средства входят в поставку платформы 1С:Предприятие, дополнительных затрат на их приобретение не требуется.

Web-расширение (http://v8.1c.ru/overview/Term_000000286.htm#1)

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

 Web-расширение рассчитано на работу с ASP.NET и построено на использовании технологии Web Forms. Связь с информационной базой 1С:Предприятие осуществляется через ADO.

В вышедшей не так давно версии платформы 1С:Предприятие 8.2., набор функций, связанный с созданием веб-форм и веб-отчетов, реализован штатными средствами платформы. Что же касается разработки .NET  приложений, использующих функционал 1С:Предприятие, то здесь имеется ряд ограничений. Во-первых, Web-расширение рассчитано на работу только с ASP.NET, то есть не может использоваться для создания Windows-приложений. Во-вторых, реализация доступа к базе посредством ADO позволяет получить данные, но не дает возможности вызова методов объектов 1С:Предприятие, что существенно снижает сферу применимости продукта.

Таким образом, использование Web-расширения нецелесообразно для решения простых задач. Для решения же более серьезных задач (как например, реализация вызова хранимых процедур 1С из стороннего приложения) его средств может и не хватить. К тому же, очень похоже, что после объединения с Bitrix, а также выпуска платформы 8.2, фирма 1С не собирается развивать Web-расширение, так как последняя его версия рассчитана на работу с Microsoft .NET Framework 1.1, и никаких обновлений для данного продукта 1С не анонсирует.

Стоимость:  26 000 руб. (цена указана в соответствии с официальным прайс-листом фирмы 1С - http://v8.1c.ru/price/)

Прямой доступ к данным (технология Linq)

Данная технология предполагает доступ к данным 1С:Предприятие с помощью прямого запроса к SQL серверу. Основная сложность в случае прямого доступа – «специфический» подход 1С к именованию таблиц и полей в SQL базе, документация на стандарты которого фирмой 1С не распространяется. Кроме того, любое существенное обновление конфигурации может привести к изменению структуры базы данных, а значит к тому, что созданные напрямую запросы станут неработоспособными.

Способ частично разрешить проблемы прямого доступа предлагают создатели компонента Elisy .Net Bridge (назначение компонента – расширение функциональности 1С возможностями .NET, в частности, возможностью использовать классы .NET из 1С). В качестве решения предлагается обработка Elisy.LinqTo1CSql.81, генерирующая dbml-файл из 1С (http://www.richmedia.us/post/2009/10/linqtosql-1c-dbml-generator.aspx).

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

Преимущества данного метода – для экспорта/импорта данных не требуется посредников (повышается скорость),  получение данных можно осуществлять без временной задержки (гарантирована актуальность данных).

Есть у метода и явные недостатки – всегда существует риск нарушить бизнес-логику прикладного решения 1С, используя метод прямого доступа для записи данных, что может привести к неработоспособности системы в целом. К тому же метод прямого доступа является спорным с точки зрения его соответствия лицензионной политике 1С. Точнее, лицензионное соглашение 1С явно указывает, что «нельзя обращаться к данным информационной базы напрямую, минуя уровень объектов работы с данными "1С:Предприятия" – например, при помощи средств СУБД или при помощи внешних компонент, которые реализуют прямой доступ к СУБД». Хотя в соответствии с Гражданским Кодексом «изготовителю базы данных, создание которой (включая обработку или представление соответствующих материалов) требует существенных финансовых, материальных, организационных или иных затрат, принадлежит исключительное право извлекать из базы данных материалы и осуществлять их последующее использование в любой форме и любым способом".

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

Стоимость: Самостоятельное использование прямого доступа – бесплатно (не считая возможных последствий за нарушение лицензионного соглашения 1С).

Использование Elisy.LinqTo1CSql.81 – бесплатно, в дальнейшем разработчиками планируется включить данное средство в состав компонента Elisy .Net Bridge, стоимость которого в настоящее время составляет 50 EUR за 1 рабочее место и 40 EUR за 2-9 рабочих мест (источник - //infostart.ru/public/20035/). При этом нужно учитывать, что количество лицензий зависит от числа имеющихся рабочих мест  1С:Предприятие.

Enterra .NET SDK (http://www.enterra.ru/enterra-net-sdk-1s.html)

Представляет собой компонент .NET, предоставляющий возможности использования функциональности 1С:Предприятие при создании .NET приложений. Объектная модель 1С:Предприятие представляется в виде набора классов .NET, позволяющих работать с метаданными, использовать свойства и методы объектов 1С:Предприятие, работать со ссылками, реквизитами и табличным частями объектов. Подключение к информационной базе 1С:Предприятие осуществляется посредством технологии COM.

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

Стоимость: 9 800 руб. Необходимое количество лицензий определяется числом разработчиков, одновременно работающих с компонентом.

Таким образом, досконально разобравшись в достоинствах и недостатках существующих способов интеграции, можно сделать следующие выводы:

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

2.           Для решения задач связанных с публикацией данных из 1С в web, имея при этом продвинутые навыки 1С-разработки, можно использовать механизм Web-сервисов.

3.           Если же Вас не привлекает необходимость овладения навыками конфигурирования 1С, то Вам больше подходит Enterra .NET SDK, позволяющая работать с 1С:Предприятие непосредственно из среды .NET, при этом предоставляя возможность решения очень широкого круга интеграционных задач.

Надеемся, данная статья окажется полезной для Вас и поможет принять наиболее эффективное решение в выборе способа интеграции Вашего программного продукта с 1С:Предприятие.

31

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

Наименование Файл Версия Размер
Enterra .NET SDK для 1С - демо версия (15 дней)
.msi 5,57Mb
18.12.09
97
.msi 5,57Mb 97 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо
1. Elisy 917 17.12.09 13:25 Сейчас в теме
Есть еще неперечисленный Elisy .Net Bridge, который давно представлен на Инфостарт с огромным числом примеров использования .Net framework. Думаю, что по степени интеграции с 1С и числу поддерживаемых версий 1С он превосходит все вышеперечисленные методы интеграции.
2. enterra 31 17.12.09 13:50 Сейчас в теме
Если Вы прочтете статью внимательнее, то найдете в обзоре и этот продукт. Мы также постарались проанализировать достоинства и недостатки этого продукта. И далеко не все вышеперечисленные методы интеграции он превосходит, по нашему мнению. Но решать это, безусловно, пользователям. :)
iyrrik; ИТ-Терминал; +2 Ответить
3. Elisy 917 17.12.09 13:56 Сейчас в теме
(2) Хорошая достойная статья. В подтверждение своих слов ставлю "плюс". Но Elisy .Net Bridge представлен в статье одной внешней обработкой Elisy.LinqTo1CSql.81, которая составляет лишь малую часть продукта. Это меня и смутило. Основой же является Elisy.NetBridge.dll, которая позволяет из 1С обращаться ко всей функциональности .Net Framework.
4. steban 72 17.12.09 15:14 Сейчас в теме
Типичный недостаток данных способов – возможна низкая скорость при передаче больших массивов данных. В случае COM-соединения данная проблема может быть частично решена путем использования пула соединений.
неверно.
или неточно.
при пулинге соединений скорость передачи больших массивов данных не меняется.
7. AnnaDav 18.12.09 08:46 Сейчас в теме
(4) Да, вы правы. Возможно, не совсем аккуратно сформулировано. Имелось в виду, что использование пула положительно сказывается на скорости COM-соединения в целом (за счет экономии времени (и ресурсов) на получение соединения). Спасибо, что обратили внимание на неточность.
5. annak2980 18.12.09 00:32 Сейчас в теме
Хорошая статья, в качестве вводного обзора для меня, как новичка в этих вопросах.
К спецам: для того и существует форум статьи, чтобы высказывать свои замечания, обсуждать неточности или делиться опытом по теме.
6. Elisy 917 18.12.09 08:26 Сейчас в теме
Выводы могу сделать такие: Enterra - лишняя в статье, так как ничего нового не несет, а дублирует доступ к 1С через КОМ. Более того, использование Enterra приведет к появлению ненужного посредника и необходимости знать две объектные модели: одну для 1С, а другую, которую вводит Enterra. 1С с КОМом до этого нормально справлялась.
Enterra не несет в себе визуальных компонентов, а опирается на .Net-контролы. В связи с этим Enterra уступает визуальным компонентам 1С, специально заточенным на свою объектную модель. Выглядит это достаточно пестро и чудно, как здесь на картинках, особенно в связке с нелокализованными на русский язык контролами сторонних производителей (для OLAP).
Не вздумайте отображать многострочные объекты 1С (например, регистры сведений), как показано в примерах. Кроме зависания это ничего не вызовет. Реализация же их вывода нормальным образом через виртуальный режим DataGridView (VirtualMode) может занять у вас остаток жизни.
Прикрепленные файлы:
mini_root; +1 Ответить
8. AnnaDav 18.12.09 10:31 Сейчас в теме
(6)
Enterra - лишняя в статье, так как ничего нового не несет, а дублирует доступ к 1С через КОМ


Enterra SDK, возможно, и не несет ничего нового, но цель не в этом. Использование компонента просто экономит ВАШЕ время на создание .NET оберток + дает некоторые рецепты обращения с 1С из .NET кода

Более того, использование Enterra приведет к появлению ненужного посредника и необходимости знать две объектные модели: одну для 1С, а другую, которую вводит Enterra

Не совсем понятно, о какой собственной модели идет речь? Enterra SDK практически не вводит своих новых типов, модель полностью основана на объектной модели 1С

1С с КОМом до этого нормально справлялась

1С с КОМом нормально справляется» - сомнений нет. Идея в том – что Enterra SDK дает .NET разработчику объектную модель 1С в удобном и привычном виде, а значит, экономит время и силы на необходимость вникать в детали работы и 1С, и механизмов COM

Enterra не несет в себе визуальных компонентов, а опирается на .Net-контролы

90% визульных компонентов опирается на .NET контролы. Очень мало тех, кто создает свои собственные текстбоксы, комбобоксы и т.д. Enterra SDK таки включает некоторый минимальный набор контролов для работы с 1С сущностями, но ценность ее конечно не в контролах, а совсем в другом (см. выше)

Не вздумайте отображать многострочные объекты 1С (например, регистры сведений), как показано в примерах. Кроме зависания это ничего не вызовет

Почему-то ни в примерах, ни при использовании компонента, зависания не наблюдалось. Так что непонятно, на основании чего Вы сделали подобный вывод.
10. Elisy 917 18.12.09 13:34 Сейчас в теме
(8)
Enterra SDK, возможно, и не несет ничего нового, но цель не в этом. Использование компонента просто экономит ВАШЕ время на создание .NET оберток + дает некоторые рецепты обращения с 1С из .NET кода

1C.NET Adapter (http://www.gotdotnet.ru/files/406/) экономит время и дает рецепты. А Enterra ничего нового не приносит на этом поприще.

Не совсем понятно, о какой собственной модели идет речь? Enterra SDK практически не вводит своих новых типов, модель полностью основана на объектной модели 1С

К каким объектам 1С относятся "Session", "ConfigTreeControl", "DocumentObjectViewControl". А сразу человек узнает, что за "ValueTable" скрывается ТаблицаЗначений?

Enterra SDK дает .NET разработчику объектную модель 1С в удобном и привычном виде

Зная .Net-разработчиков, они мягко говоря удивятся и отойдут от этого удивления не скоро от конструкции вида
string queryText =
@"ВЫБРАТЬ   
    Представление(ЗаказСоставЗаказа.Номенклатура) КАК Номенклатура,
...


Enterra SDK таки включает некоторый минимальный набор контролов для работы с 1С сущностями

Не исключаю, что Entera будет расширятся в будущем, но пока то, что есть сейчас сильно не впечатляет (см фото выше).

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

На основании работы с вашими примерами. Для ваших тестеров - воспроизвести проблему можно так: 1) Взять реальную базу 1С с регистром сведений с >100,0 тысяч записей 2) Открыть пример "Простой проводник по 1С" 3) Выбрать регистр сведений 4) Нажать "Загрузить"
19. mini_root 147 21.12.09 12:19 Сейчас в теме
Мда... буря в стакане :D

Вот вам еще один вариант:

"Интеграция 1С с сервисной шиной OpenESB"

http://infostart.ru/public/21506/

И все, дальше рисуй мышкой BPEL процесс. Минусы текущей реализации перечислены в конце статьи.

Причем ничего инновационного в этом нет - там тот же самый COM(инновация только в попытке вывести это все на уровень BPEL'я) Равно как и ничего нового нету в подстановке в запрос реальных названий таблиц/полей - у меня такая штука оформлена в виде JDBC драйвера, ниче, работает.

Есть мысли оформить это все в виде опенсорсного проекта + добавить туда же адаптеры к различным MOM'ам.

>Enterra SDK, возможно, и не несет ничего нового, но цель не в этом. Использование компонента просто экономит ВАШЕ время на создание .NET оберток + дает некоторые рецепты обращения с 1С из .NET кода

так ли это актуально с выходом DLR и массовым грядущим цветением динамических ЯП на платформе .NET? и писать тогда строки вида:

(bool)Invoke(currentType, "СодержитТип", new object[] {doubleType})

уже не придется, вместо них будет:

currentType.СодержитТип(doubleType)

Автор статьи скромно умолчал о недостатках своего продукта, а они ровно такие же как и для COM, ибо это COM и есть.

>Стоимость: 14 500 руб. Необходимое количество лицензий определяется числом разработчиков, одновременно работающих с компонентом.

Удачи...

В целом согласен с выводами Elisy в (6).

P.S. Замечательные форум для детального обсуждения:
>У вас не достаточно прав на просмотр форума.
9. enterra 31 18.12.09 12:03 Сейчас в теме
Есть предложение переместиться с предметным обсуждением компонента в соответствующий раздел на форуме - http://infostart.ru/public/62798/forum/topic/29937/.
Будем рады продолжить конструктивный диалог. :)
11. Elisy 917 18.12.09 13:39 Сейчас в теме
(9) В форум меня не пускают: "У вас не достаточно прав на просмотр форума."
12. enterra 31 18.12.09 13:49 Сейчас в теме
(9) В форум меня не пускают: "У вас не достаточно прав на просмотр форума

Теперь Вы приглашены на форум, заходите, будем обсуждать. :)
13. OSlike 19.12.09 15:25 Сейчас в теме
Чем Enterra лучше чем web - расширение не очень понятно.
18. AnnaDav 21.12.09 12:07 Сейчас в теме
(13)
Чем Enterra лучше чем web - расширение не очень понятно

Как минимум - ценой ))
К тому же, Web-расширение реализует ADO для 1С, Enterra SDK создает набор классов, идентичный структуре метаданных 1С - то есть дополнительный возможности в виде вызова тех же хранимых процедур + простота использования.
Еще одно отличие - применение Web-расширения ограничено ASP.NET, Enterra SDK таких ограничений не имеет
14. pvvpvv 10 19.12.09 18:32 Сейчас в теме
Обидно. Давайте обсудим дядю васю. Ему будет приятно.
15. pvvpvv 10 19.12.09 18:42 Сейчас в теме
Не пойму,что продаем? NET - он и в африке NET.
16. I_G_O_R 57 20.12.09 08:20 Сейчас в теме
Статья посвящена анализу существующих способов и инструментов интеграции .NET приложений с прикладными решениями 1С:Предприятие
мне кажется это реклама, но для кого? для 1С-ников? врядли, может для .NET программистов? так они в другом месте бывают, например: http://gotdotnet.ru.

и забыли добавить еще один способ: когда сотрудничают два программиста, каждый делает то, что умеет.
17. d.snissarenko 20.12.09 09:08 Сейчас в теме
Видимо автор про веб расширение от 1с знает понаслышке, не одним вызовом хранимых процедур и функций он хорош, их можно и в .net создать.
Пул в 10 соединений к базе выдерживает более 100 клиентских коннектов к iis и больше, все зависит от правильности написания кода.
То, что в 8.2 доступно через веб это другое и сделано для абсолютно других целей, об этом на партнерской конференции было озвучено.
Вот пример работы веб расширения http://sunrise-ufa.ru , используется только ado.
Да веб контролы от 1с не блещут красотой и юзабельностью, но кто запрещает их не использовать в своем приложении.
20. AnnaDav 21.12.09 12:20 Сейчас в теме
(17)
Пул в 10 соединений к базе выдерживает более 100 клиентских коннектов к iis и больше, все зависит от правильности написания кода.

Да, работа с пулом, несоммненно одна из сильных сторон Web-расширения

То, что в 8.2 доступно через веб это другое и сделано для абсолютно других целей, об этом на партнерской конференции было озвучено.

Только вот не понимаю в чем принципиальное различие в назначении веб-форм и веб-отчетов, созданных в 8.2 и c помощью Web-расширения?

К тому же, новых релизов Web-расширения не выпускалось уже очень давно, работает оно на старой версии .NET Framework (1.1.) - кажется мне, что все это весьма недвусмысленно свидетельствует о том, что сама 1С не считает данный продукт перспективным.
21. mini_root 147 21.12.09 12:21 Сейчас в теме
(18 )>Еще одно отличие - применение Web-расширения ограничено ASP.NET, Enterra SDK таких ограничений не имеет

Я тут хочу страничку на JSP сделать, не подскажите как мне использовать Enterr'у?

23. AnnaDav 21.12.09 14:37 Сейчас в теме
(21)
Я тут хочу страничку на JSP сделать, не подскажите как мне использовать Enterr'у?


Обращайтесь, реализуем для вас требуемый функционал для JSP
25. mini_root 147 21.12.09 15:16 Сейчас в теме
(23) Это каким же образом? :D
22. d.snissarenko 21.12.09 12:31 Сейчас в теме
В итоге, например для меня очень критично иметь пул, а никто кроме 1с веб расширения его предоставить не может, да убогое описание, да собирание инфы по крохам, тем не менее, работает и работает стабильно, кстати ну что вы прицепились к контролам от 1с, получаете запросом DataSet в которой можно хранить туеву гору таблиц и вперед использовать контролы 3.5 фреймворка, ну невозможно использовать кроме как в проектах asp .net
24. Лузер 3 21.12.09 14:53 Сейчас в теме
Могу привести минусы в создании web расширений 1с - такие приложения очень затратны - и внедрение и поддержания выйдет довольно трудоемким для любой фирмы. А для мелких компаний с небольшим бюджетом простым решением служит объединение web и 1с по средством выгрузки и загрузки заказав.

Таким образом мы сокращаем штат как минимум на системного администратора (который должен держать сервер хостин), уменьшения трафика и что самое главное уменьшения уязвимости через сеть интернет.

Хотя есть и минусы - мы теряем оперативность в обработке остатков и заказов. Но опять же не в такой мере чтобы переплачивать за решения такие деньги.
26. d.snissarenko 21.12.09 20:02 Сейчас в теме
(24) Если предприятие решило создать нормальную b2b систему, а не просто инет магазин, то тут уже виртуемарты и шопскрипты отпадают, когда стоит речь об оперативности данных в разрезе секунды, вот тут и надо думать как и на чем делать.

Встроенные в 8.1/8.2 веб сервисы
1с веб расширение
ну и "костыли"
27. Лузер 3 23.12.09 11:18 Сейчас в теме
Могу вас заверить что большие компании не используют 1с в качестве основного софта (т.к. 1с хотя бы просто не умеет работать шустра с большим количеством клиентов).

И когда речь идет о большой оперативности и скоростях могу вам сказать что веб приложения вас просто не спасут - проще организовать сеть на тонких клиентах... (опять же это эффективней и дешевле).

Единственный вариант когда можно задействовать веб приложения 1с или веб приложения другого софта - это удаленный склад или офис с низко пропускным каналам интернета (но и в таких ситуациях есть более комфортные решения).

Хотя поставить плюс автору за статью стоит (хотя бы за обще ознакомительный материал)!
28. lvadim 21 23.12.09 12:33 Сейчас в теме
Для полноты картины учитывайте "Корпоративную аналитику для 1С" от Инталева:
http://www.intalev.ua/index.php?id=26866

Она выгружает данные в хранилище SQL методами Integration Service, динамически строя пакеты на C##. При этом ключи GUID меняются на Int для скорости работы..
Правда для соблюдения требований 1С это делается через промежуточную базу, формируемую на ADO (структуры такой же как база 1С), но оно умеет и без...
Ну а вообще хранилище там строится для нужд OLAP но может и для другого использоваться, т.к. "очеловечено"..
Стандарт (55 000 рублей за установку на сервер)
Бизнес (130 000 рублей за установку на сервер)
29. AnnaDav 28.12.09 11:52 Сейчас в теме
(28)
Выгрузка данных в промежуточное хранилище была упомянута в статье в качестве одного из возможных вариантов.
А насчет "Корпоративной аналитики" - все-таки использование OLAP продукта для решения задач интеграции кажется не очень целесообразным...
30. apilyugina 13.10.11 09:32 Сейчас в теме
Компонент теперь распространяется бесплатно, подробности на сайте компании Энтерра http://www.enterra.ru/enterra-net-sdk-1s.html
31. dmitriypr 03.04.14 12:54 Сейчас в теме
32. avz_1C 10 12.11.15 17:38 Сейчас в теме
Спасибо "Enterra" за open source Enterra .Net SDK для 1C

Вот бы ещё посмотреть примеры применения данного компонента.

Я посмотрел код, в компоненте применяется объект V8X.ComConnector (comcntr.dll), поставляемый с платформой 1С.

А вот было бы здорово, вовсе обойтись без "переходника" от 1С, а сразу обращаться к базе 1С.

Причем, как к файловой, так и к SQL-ной!

Как бы это сделать?
33. user1120008 27.12.18 09:56 Сейчас в теме
Ни где не могу найти ни одного примера использования Enterra .net в .net приложении, поделитесь кто нибудь исходником.
Оставьте свое сообщение

См. также

Распаковка хранилища значений средствами MS SQL Server 15

Инструменты и обработки Программист Компонента, плагин (dll, vbs,..) MS SQL Абонемент ($m) Практика программирования

Способ извлечения данных из 1С-ного "ХранилищеЗначений" в MS SQL Server с помощью самописной скалярной функции (без использования платформы 1С).

1 стартмани

23.09.2019    2133    SerVer1C    11       

Расширяем возможности MS SQL Server с помощью хранимых процедур CLR 8

Инструменты и обработки Программист Архив с данными MS SQL Абонемент ($m) Практика программирования Разработка

Не хватает какого-то функционала на скуле для обработки данных? Тогда он (новый функционал) идет к вам.

1 стартмани

02.09.2019    2843    SerVer1C    9       

Универсальный скрипт резервного копирования Postgres, архивирует все базы сервера баз данных 25

Инструменты и обработки Системный администратор Архив с данными Абонемент ($m) Архивирование (backup)

Предлагаю использовать универсальный скрипт резервного копирования Postgres, архивирует все базы сервера баз данных, архивируются все добавленные базы, ведется лог архивирования, контролируется глубина архива. Скрипт тестировался на PostgreSQL 10.5 CentOS Linux release 7.6.1810

1 стартмани

13.08.2019    2351    2    solaru    4       

Передача баз PostgreSQL на удалённый сервер резервных копий, удобное восстановление. Почасовой и ежесуточный вариант. В общем, ещё один скрипт 35

Инструменты и обработки Системный администратор Архив с данными Windows Абонемент ($m) Архивирование (backup)

Скрипты сохраняют резервную копию в архив и отправляют на удалённый rsync сервер самым оптимальным образом. Вы без проблем сделаете текущую резервную копию или восстановите за любой другой день, не выгоняя пользователей. Есть вариант с восстановлением на любое время. Не нужны ни белые IP адреса клиентов с NAT, ни VPN. Максимально облегчённый вариант, позволит вам массово подстраховать базы клиентов, и стоить вам будет это почти ничего.

1 стартмани

05.08.2019    2179    ЕСТЬNULL    0       

Упражнения на Перфоленте. Парсим технологический журнал 1С 20

Статья Системный администратор Программист Архив с данными Windows Абонемент ($m) Сервисные утилиты Инструментарий разработчика Практика программирования Разработка

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

1 стартмани

31.07.2019    3002    Perfolenta    62       

В 1000 раз быстрее 12

Статья Программист Архив с данными ИТ-компания Windows Абонемент ($m) Практика программирования Разработка

Реализация алгоритма трассировки лучей на новом языке программирования "Перфолента"

1 стартмани

24.07.2019    2247    vasvl123    6       

Перфолента, первое знакомство. Новый язык программирования 126

Инструменты и обработки Программист Приложение (exe) Windows Абонемент ($m) Практика программирования Инструментарий разработчика Разработка

Первое знакомство с новым языком программирования Перфолента. В статье описано назначение языка, причины его появления, основные характеристики и возможные варианты использования.

22.07.2019    13566    84    Perfolenta    154       

Удаленная поддержка в рамках локальной сети (UltraVNC Single Click) 9

Инструменты и обработки Системный администратор Архив с данными Windows Абонемент ($m) Администрирование данных 1С

Что только не используют для управления удалёнными рабочими в локальной сети... да ничего не используют. Сисадмины (не берем банковских), которых знаю я, втыкают каждому тимвьюер и не заморачиваются. Как известно: хороший сисадмин - ленивый сисадмин. Но и тимвьюер не стоит на месте, недавнее обновление потрепало многих и ограничило время до законных 5 минут... Кого это коснулось, прошу под кат...

5 стартмани

28.06.2019    1780    1    capitan    17       

Как настроить автоматическое резервное копирование в MS SQL SERVER EXPRESS 10

Статья Системный администратор Архив с данными Windows Абонемент ($m) Архивирование (backup)

При использовании MS SQL Server редакции Express, которая является бесплатной, важно понимать, что она имеет ряд ограничений. Кроме того что размер базы данных при использовании MS SQL Server Express не может превышать 10 Гб, в составе этой редакции СУБД отсутствует SQL Server Agent, который позволяет создавать планы обслуживания баз данных для регулярного автоматического выполнения. В результате нет возможности автоматизировать резервное копирование базы данных штатными средствами. Однако выход из ситуации есть. В статье описана инструкция по настройке автоматического резервного копирования для MS SQL Server Express 2008.

1 стартмани

20.06.2019    2402    igordynets    3       

Elastic + filebeat + ТЖ 1С 56

Вопрос Системный администратор Программист Архив с данными Windows Абонемент ($m) Журнал регистрации Поиск данных

Рассмотрим как можно обрабатывать удобно большой объем информации с простой структурой. Это удобно для анализа логов ТЖ, поскольку типовыми механизмами он невозможен.

1 стартмани

18.06.2019    4941    12    pashamak    11       

БЭКАПЕР на FTP c открытым кодом 8

Инструменты и обработки Системный администратор Программист Архив с данными Windows Абонемент ($m) Архивирование (backup)

Бесплатная Windows программа для автоматической загрузки (дублирования) архивов баз данных 1С, SQL и прочих файлов на ваш FTP-сервер. Надёжная защита от вирусов шифровальщиков и прочих неприятностей связанных с потерей данных. Программа полностью бесплатная + представляются исходный код, чтобы каждый мог её доработать под себя.

1 стартмани

14.06.2019    2416    3    yukoz    2       

Мониторинг файловых баз (Zabbix - 1CD) 7

Инструменты и обработки Системный администратор Архив с данными Абонемент ($m) Сервисные утилиты

Шаблон с autodiscovery Zabbix для мониторинга файловых баз 1С. Мониторится размер БД, количество таблиц, версия БД.

1 стартмани

21.05.2019    1502    shibanovan    0       

Загрузка-выгрузка файлов по RDP с докачкой 20

Статья Системный администратор Архив с данными Windows Абонемент ($m) Администрирование данных 1С

PowerShell скрипт для загрузки/выгрузки больших файлов в RDP-сессии с использованием технологии BITS-transfer.

1 стартмани

16.05.2019    2009    5    -vito-    1       

Настраиваемое мобильное приложение для сканирования штрихкодов 10

Инструменты и обработки Программист Приложение (apk) Android Абонемент ($m) Практика программирования Сканер штрих-кода Мобильная разработка

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

1 стартмани

14.01.2019    3538    2    inord777    5       

Мониторинг windows серверов на раз, два с помощью prometheus и grafana 9

Инструменты и обработки Системный администратор Архив с данными Абонемент ($m) Сервисные утилиты

Вдохновленный статьей про сбор, хранение и визуализации показателей с помощью prometheus и grafana подготовил готовый docker-compose файл для быстрой настройки и запуска мониторинга windows серверов.

1 стартмани

08.01.2019    4749    4    metmetmet    20       

Разработка внешних компонент на ассемблере goAsm 128

Статья Программист Архив с данными Windows Абонемент ($m) Практика программирования

Создание внешней компоненты по технологии Com "с нуля", используя ассемблер goAsm.

1 стартмани

26.11.2018    7256    6    chessman    40       

Резервное копирование и обслуживание баз Postgre SQL в Windows 14

Инструменты и обработки Системный администратор Архив с данными Россия Windows Абонемент ($m) Архивирование (backup)

Резервное копирование и обслуживание баз Postgre SQL в Windows скриптами командной строки

1 стартмани

14.11.2018    4822    19    user598613_svp_gamma    2       

РусскийФокс и ClickerMann заносят данные в 1С 5

Инструменты и обработки Программист Архив с данными Россия Windows Абонемент ($m) Сервисные утилиты Практика программирования

Новый объектно-ориентированный русскоязычный 1С-подобный язык программирования РусскийФокс. . РусскийФокс создает сценарии для Clickermann. Сценарий заполняет справочник в 1С.

1 стартмани

21.07.2018    6188    1    andreosh    20       

РусскийФокс и OpenOffice, а также исследование объектов 5

Инструменты и обработки Программист Архив с данными Россия Windows Абонемент ($m) Практика программирования

Новый объектно-ориентированный русскоязычный 1С-подобный язык программирования РусскийФокс. . Взаимодействие с OpenOffice. GitHub https://github.com/UfaScript/RusFox

1 стартмани

12.07.2018    3759    1    andreosh    2       

РусскийФокс. Настройка NotePad++, 1C-подобные функции и операторы и создание объектов 11

Статья Программист Архив с данными Россия Windows Абонемент ($m) Практика программирования Математика и алгоритмы

Новый объектно-ориентированный русскоязычный 1С-подобный язык программирования РусскийФокс. Создание объектов и настройка NotePad++. GitHub https://github.com/UfaScript/RusFox

1 стартмани

06.07.2018    7285    1    andreosh    12       

"Перезаливатор" - приложение для автоматизации "перезаливки" баз 64

Инструменты и обработки Системный администратор Программист Архив с данными Windows Абонемент ($m) Архивирование (backup)

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

1 стартмани

05.07.2018    10306    16    Tavalik    24       

РусскийФокс — 1С-подобный язык программирования 8

Инструменты и обработки Программист Архив с данными Россия Windows Абонемент ($m) Практика программирования Математика и алгоритмы

Новый объектно-ориентированный русскоязычный 1С-подобный язык программирования РусскийФокс. Знакомство.

1 стартмани

03.07.2018    6111    1    andreosh    50       

Switcheroo_1C - Быстрое переключение между окнами 1С 7

Инструменты и обработки Программист Архив с данными Windows Абонемент ($m) Сервисные утилиты

Утилита позволяющая переключаться между окнами 1С, аналог Alt+Tab только учитываются 1С приложения.

1 стартмани

18.06.2018    4126    1    WizaXxX    0       

Длинная арифметика (Bignum arithmetic) c COM-интерфейсом (ActiveX) на библиотеках MPIR 4

Инструменты и обработки Программист Архив с данными Россия Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Расчеты любой точности в вашем программном продукте, поддерживающем стандарт COM. Размер/точность длинного числа зависит только от вашей оперативной памяти. Проект основан на исходниках библиотеки MPIR, Edition 3.0.0. Полностью написан на С/С++ (COM.DLL).

1 стартмани

12.04.2018    3605    1    bedvit    4       

Настройка Dropbox как службы на терминальном сервере 7

Статья Системный администратор Архив с данными Windows Абонемент ($m) Администрирование данных 1С

Настройка Dropbox как службы на терминальном сервере на примере сервера Windows 2008 R2 x64. К сожалению, Dropbox не имеет своих инструментов для настройки синхронизации как сервиса Windows. Но иногда очень хочется это сделать, чтобы, например, бэкапы 1С своевременно синхронизировались с облачным хранилищем независимо от того, запущен терминальный сеанс под определенным пользователем или нет. 

1 стартмани

27.03.2018    7685    12    vdv2701    5       

Регистрация компонент 1С и запуск консоли кластера серверов 5

Инструменты и обработки Системный администратор Программист Архив с данными Россия Windows Абонемент ($m) Сервисные утилиты

Выводит список установленных платформ 1С, позволяет зарегистрировать V8x.COMConnector, V8x.Application, V8x.ServerAbout и запустить консоль кластера серверов 1С для выбранной версии. Показывает текущие версии зарегистрированных компонент 1С (требуется .NET Framework 4.0 и права администратора).

1 стартмани

22.03.2018    7845    28    ROL32    7       

Скрипт резервного копирования PostgreSQL на Powershell 9

Инструменты и обработки Системный администратор Архив с данными Windows Абонемент ($m) Архивирование (backup)

Заготовка скрипта. Эти заготовки помогут настроить резервное копирование встроенными методами Windows, с помощью Powershell.

1 стартмани

02.03.2018    7353    8    user811626    0       

Установщик Apache 2.4 39

Инструменты и обработки Системный администратор Архив с данными Абонемент ($m) Администрирование данных 1С

Установщики для Apache 2.4.29 в формате .exe и .msi для ленивых.

1 стартмани

22.01.2018    11015    24    frkbvfnjh    20       

Веб-разработка на 1С (1Script) 140

Инструменты и обработки Программист Архив с данными Абонемент ($m) Практика программирования

Дорогие коллеги, под новый год хочется сделать небольшой сюрприз. Я уже два года обещаю сделать движок веб-разработки для 1С-ников, и вот, наконец, есть что показать. Этим новогодним постом я открываю сериал "Веб-разработка для 1С-ников". Все, кто знаком с проектом OneScript – добро пожаловать! Остальные, тоже не стесняйтесь!

1 стартмани

28.12.2017    24375    21    Evil Beaver    81       

Быстро, дёшево и массово подстраховать базы клиентов от утери. Комплексная система удалённого резервного копирования 39

Статья Системный администратор Архив с данными Абонемент ($m) Архивирование (backup)

Вы можете держать копии баз своих клиентов актуальными на своем backup-сервере. Rsync передаст только изменения базы, в связи с чем, передача данных произойдет самым рациональным способом. Обновление копии файловой базы происходит почти мгновенно, даже по низкоскоростным каналам связи. Вы сможете держать копии всех MSSQL баз на своём удалённом сервере с почасовой актуальностью. Как это сделать описываю в деталях. Систему можно использовать вообще для любых файлов. Если копия не обновляется заданное время - приходит оповещение об этом. Предыдущая версия уже несколько лет работает на локальном backup-сервере, который спасал мою честь несколько раз.

2 стартмани

14.11.2017    12125    7    ЕСТЬNULL    8       

Программа для изменения осей движения мыши - IMouse 4

Инструменты и обработки no Архив с данными Россия Windows Абонемент ($m) Практика программирования

Программа предназначена для изменения движения курсора мыши.

1 стартмани

10.08.2017    8724    1    GubinDenis    12       

Правила и приемы доработки типовых конфигураций 1С для облегчения их дальнейшей поддержки и обновления 146

Статья Программист Архив с данными Абонемент ($m) Практика программирования

В первую очередь, статья адресована разработчикам 1С, но надеюсь, что интересно будет не только им.

1 стартмани

18.07.2017    27476    786    Tavalik    58       

Скрипты на SQL для автоматизации архивации и сжатия баз данных 7

Инструменты и обработки Системный администратор Компонента, плагин (dll, vbs,..) Россия MS SQL Абонемент ($m) Архивирование (backup)

Автоматизирует всю работу по созданию backup на Sql Server, архивированию, удалению старых. Раскладывает backup по папкам - годовые, месячные, недельные, ежедневные. Архивирует WIN RAR. Очищает старые исходя из заданной политики сроков хранения backup каждого вида.

1 стартмани

22.05.2017    13948    22    SergeiGer    12       

Мониторинг баз данных 1С. Автоматизация обновления конфигураций 8

Инструменты и обработки Системный администратор Архив с данными Россия Windows Абонемент ($m) Журнал регистрации Администрирование данных 1С Распределенная БД (УРИБ, УРБД)

Если вы сталкивались с обновлением большого количества баз в рамках РИБ, то данная программа позволяет автоматизировать плановые обновления конфигурации, платформы на различном количестве физических\виртуальных серверов. Также администратор видит выполнение бекапов SQL информационных баз. Программа полезна, если у вас на поддержке большое количество РИБ 1С.

1 стартмани

05.04.2017    11991    10    vlkvlkvlk    6       

1:Tools - наш инструмент для обслуживания 1С 58

Инструменты и обработки Системный администратор Приложение (exe) Абонемент ($m) Сервисные утилиты

Уважаемые коллеги. Разрешите представить вам первый выпуск нашего инструмента для обслуживания 1С. Пока набор функций невелик, но со временем будет расти. Сегодня в него входят очистка кеша и восстановление запуска баз после аварийного завершения.

1 стартмани

05.02.2017    23350    103    oldcopy    78       

Менеджер буфера обмена с поддержкой 1С - ClipAngel 1.83 72

Инструменты и обработки no Архив с данными Windows Абонемент ($m) Сервисные утилиты Инструментарий разработчика

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

1 стартмани

17.01.2017    29083    70    tormozit    194       

Зачем программисту 1С инструменты тестирования Web-приложений? 34

Статья Системный администратор Программист Компонента, плагин (dll, vbs,..) Абонемент ($m) Тестирование и исправление

В 21-м веке как-то странно говорить об отсутствии API интерфейса у web-приложений, но, увы, такое встречается. Особенно если это приложение - 1С, а данные надо туда вносить. Так как быть, если с человеческим ресурсом у нас напряг, а данные кто-то должен внести?

1 стартмани

08.01.2017    13637    1    vandalsvq    14       

Восстановление работоспособности ключа криптозащиты с ошибкой CKR_FUNCTION_FAILED (FIX для автоматической настройки) 6

Инструменты и обработки Системный администратор Приложение (exe) Розничная и сетевая торговля (FMCG) Россия Windows Абонемент ($m) Сервисные утилиты Администрирование данных 1С

Для облегчения процесса мною было собрано два установочника, один для x32 систем, другой для x64, дабы облегчить процесс перенастройки. Просто скачиваете и "Запускаете от имени Администратора". Все остальное происходит автоматически.  

1 стартмани

25.11.2016    21303    61    user635667    11       

Утилита, убирающая второй значок переключения раскладки клавиатуры в RDP сессиях 17

Инструменты и обработки Системный администратор Приложение (exe) Россия Windows Абонемент ($m) Администрирование данных 1С

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

1 стартмани

26.10.2016    13593    10    capitan    13       

Очистка кэша всех пользователей на терминальном сервере 7

Инструменты и обработки Системный администратор Архив с данными Беларусь Windows Абонемент ($m) Сервисные утилиты

Иногда при динамическом обновлении слетают настройки (пустые формы или странное поведение системы).

1 стартмани

02.09.2016    8117    34    ilya.rudziak    0       

Мониторинг количества сеансов 1С на базе PRTG 21

Инструменты и обработки Системный администратор Программист Архив с данными Windows Абонемент ($m) Статистика базы данных Администрирование данных 1С

В данной статье показано как получить информацию о количестве сеансов 1С с историей на базе PRTG сенсором SNMP

1 стартмани

31.08.2016    16123    15    farukshin    12       

Программа "Назад в прошлое" 4

Инструменты и обработки no Приложение (exe) Windows Абонемент ($m) Практика программирования

На панельке винды появляется человечек, которым можно управлять: бегать туда-сюда, прыгать, стрелять.

1 стартмани

24.06.2016    9307    3    fierylions    1       

Автоматическое обновление, архивирование баз 1С 10

Инструменты и обработки Системный администратор Архив с данными Windows Абонемент ($m) Архивирование (backup)

Данное приложение умеет работать как служба и выполнять операции по автоматическому архивированию, обновлению, применению конфигурации (в базах РИБ), выполнять регламентные задания по расписанию.

1 стартмани

04.05.2016    13837    29    kias777    30       

Как в MS Windows server завершить сессии пользователей в терминале в определенное время 11

Инструменты и обработки Системный администратор Программист Архив с данными Windows Абонемент ($m) Сервисные утилиты Архивирование (backup)

Нужно сделать backup базы, но пользователи не выходят нормально из 1С и висят терминальные сессии, что делать? Просто поставь скрипт в задачи сервера, например, за час до бекапа, и вуаля - все пользователи вышли. Скрипт ниже :)

1 стартмани

04.03.2016    20363    17    RomanBor    11       

Скрипт для ноутбуков DELL, где нет кнопки BREAK 5

Инструменты и обработки Системный администратор Архив с данными Windows Абонемент ($m) Администрирование данных 1С

Скрипт переназначает коды кнопок, добавляя записи в реестр.

1 стартмани

02.03.2016    6579    14    ALagutin    2       

Автоматический вход в 1С для ТСД 5

Инструменты и обработки Системный администратор Архив с данными Windows Абонемент ($m) Стартеры 1С Терминал сбора данных

Автоматический вход в 1С на терминальном сервере

1 стартмани

01.03.2016    19603    5    lakhnov.alexander    3       

Перезапуск УТМ ЕГАИС 6

Инструменты и обработки Системный администратор Приложение (exe) Windows Абонемент ($m) Сервисные утилиты

Если необходимо использовать несколько ключей JaCarta на одном компьютере, то при каждой установке нового ключа надо перезагружать службы УТМ. Чтобы автоматизировать этот процесс, был придуман bat-ник перезапуска всех служб УТМ.

1 стартмани

02.02.2016    8826    28    ydaff    1       

Удобная база знаний для программиста 1С. "Шаблоны текста" в WEB-е 22

Инструменты и обработки Системный администратор Программист Архив с данными Абонемент ($m) Инструментарий разработчика Практика программирования

Справочник для программиста 1С. (WEB) Легко и быстро вести "дневник" программиста. Одним кликом редактировать статьи, примеры кода. Сохранять обработки и добавлять к ним описания.

1 стартмани

28.01.2016    13091    26    Farzar    15