• Интеграция HTML движка в нативное Windows приложение – выбор и архитектура

      Как мы перевели работу с HTML в 1С:Предприятии с Internet Explorer на WebKit

      Возможность отображать HTML в формах 1С появилась в платформе 1С:Предприятие в 2003 г. версии 8.0. Для работы с HTML в платформе использовался движок браузера Internet Explorer (1С:Предприятие на тот момент работало только под Windows). Движок браузера использовался платформой для утилитарных целей. Например, писать с нуля полноценный элемент для редактирования текста а-ля Word – с возможностью различных цветовых и шрифтовых решений, вставки картинок и т.д. – весьма непростая задача. А если задействовать для этих целей HTML и использовать в качестве средства отображения движок интернет-браузера, то задача сильно упрощается. Также при помощи движка был реализован ряд других механизмов (например, отображение справочной информации) и элементов (например, Планировщик).

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

      Время шло, платформа стала поддерживать сначала Linux, а потом и macOS. Для работы с HTML в этих ОС Internet Explorer не подходил по понятным причинам; в Linux нами был задействован WebKitGTK+, а в macOs — библиотека на основе Cocoa. Таким образом, единство кодовой базы для разных ОС (которое мы стараемся поддерживать для клиентского кода на уровне 95%) в этой области было нарушено. Ну и движок IE к этому времени стал источником ряда проблем.
      image
      Читать дальше →
    • Как и зачем мы написали высоконагруженный масштабируемый сервис для 1С:Предприятия: Java, PostgreSQL, Hazelcast

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

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

        СВ использует распределенное хранилище Hazelcast и поисковую систему Elasticsearch. Еще речь пойдет о Java и о том, как мы горизонтально масштабируем PostgreSQL.
        image
        Читать дальше →
      • Как мы в «1С: Предприятии» решаем системы алгебраических уравнений

          Работа с числовыми матрицами в целом и решение систем линейных алгебраических уравнений в частности — классическая математическая и алгоритмическая задача, широко используемая при моделировании и расчёте огромного класса бизнес-процессов (например, при расчёте себестоимости). При создании и эксплуатации конфигураций «1С:Предприятия» многие разработчики сталкивались с необходимостью вручную реализовывать алгоритмы расчёта СЛАУ, а после — с проблемой длительного ожидания решения.

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

          Он оптимизирован для использования на данных, имеющих разреженную структуру (то есть содержащие не более 10% ненулевых коэффициентов в уравнениях) и в среднем и в лучшем случаях демонстрирует асимптотику Θ(n⋅log(n)⋅log(n)), где n — количество переменных, а в худшем (при заполненности системы ~100%) его асимптотика сопоставима с классическими алгоритмами ( Θ(n3)). При этом на системах, имеющих ~105 неизвестных, алгоритм показывает ускорение в сотни раз по сравнению с реализованными в специализированных библиотеках линейной алгебры (например, superlu или lapack).

          image
          Важно: статья и описанный алгоритм требуют понимания линейной алгебры и теории графов на уровне первого курса университета.
          Читать дальше →
        • Автоматизация при разработке платформы «1С: Предприятие»

            В этой статье пойдет речь о том, как мы автоматизируем процессы разработки и тестирования технологической платформы «1С:Предприятие 8». Платформа «1С:Предприятие 8» — набор инструментов для создания бизнес-приложений и среда их выполнения. Это большой (более десятка миллионов строк кода) проект на С++, Java и JavaScript. Над ним трудятся десятки программистов, одновременно разрабатывающие и поддерживающие до 10 различных версий продукта.

            Платформа работает на различных версиях ОС и БД:

            • ОС: Windows, Linux, macOS
            • СУБД: MS SQL, PostgreSQL, IBM DB2, Oracle, файловая СУБД собственной разработки
            • Мобильные ОС: Android, iOS, Windows

            Поддерживает несколько видов клиентов:


            Учитывая, что надо поддерживать целый ряд версий вышеперечисленных ОС, СУБД и браузеров, тестирование платформы становится нетривиальной задачей.

            image
            Читать дальше →
          • «Открытое Воскресенье» на партнерском семинаре «1С»

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

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

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

                В платформе «1С:Предприятие» за построение отчётов отвечает механизм под названием «Система компоновки данных» (сокращенно СКД). В этой статье мы постараемся дать краткое описание идеи и архитектуры механизма СКД и его возможностей.

                image
                Читать дальше →
              • Как мы в 1С: Предприятии работаем с моделями данных (или «Почему мы не работаем с таблицами?»)

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

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

                  Здесь (в этой статье) мы говорим не о техническом аспекте хранения и манипулирования данными, а об описании данных как способе проектирования приложения. Почему же данные так важны для бизнес-приложений?
                  Читать дальше →
                • История одного приложения: мобильное «1С: Управление нашей фирмой»

                    На примере мобильного приложения «1С:Управление нашей фирмой» (сокращенно УНФ) я хочу показать эволюцию мобильного бизнес-приложения от его возникновения и выхода самой первой версии до сегодняшнего дня. Сейчас у этого приложения более 220 000 скачиваний; приложение бесплатное, но в нем есть платные опции (реализованные через встроенные покупки).

                    image
                    Читать дальше →
                    • +9
                    • 14,1k
                    • 8
                  • Опрос по качеству платформы «1С: Предприятие 8»

                      Коллеги, нужна помощь тех из вас, кто работает с платформой «1С: Предприятие 8». Платформа 8.3.9 вышла довольно давно, многие из вас уже работают с ней, а некоторые успели попробовать и недавно вышедшую 8.3.10. Примите, пожалуйста, участие в опросе по качеству платформы версий 8.3.8, 8.3.9, 8.3.10: ссылка.

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

                      Заранее спасибо за помощь!
                    • Как разрабатываются отраслевые и специализированные решения для 1С:ERP

                        В этой статье мы попытаемся рассказать, как с помощью удаленных и территориально распределенных команд мы наладили процесс выпуска прикладных решений, расширяющих функциональность нашего продукта «1С:ERP Управление предприятием 2».
                        Читать дальше →
                      • Про multitenancy

                          К сожалению, у этого термина нет хорошего русскоязычного аналога. «Википедия» дает перевод «мультиарендность, множественная аренда». Иногда это называют «множественным владением». Эти термины могут несколько путать, так как предмет не связан по сути ни с арендой, ни с владением. Это вопрос именно архитектуры программного обеспечения и организации его эксплуатации. Причем последнее не менее важно.

                          Мы начали формировать наше понимание multitenancy одновременно с тем, как начали проектировать подход к облачной (сервисной) модели работы «1С:Предприятия». Это было несколько лет назад. И с тех пор наше понимание постоянно расширяется. Мы постоянно обнаруживаем у этого предмета все новые и новые аспекты (плюсы, минусы, сложности, особенности и т.п.).

                          image
                          Читать дальше →
                        • Eclipse как технологическая платформа для 1C:Enterprise Development Tools

                            Наверное, Eclipse давно уже не нуждается в особом представлении. Многие знакомы с Eclipse благодаря Eclipse Java development tools (JDT). Именно эта популярная open-source Java IDE ассоциируется у большинства разработчиков со словом “Eclipse”. Однако Eclipse – это и расширяемая платформа для интеграции средств разработки (Eclipse Platform), и целый ряд IDE, построенных на ее основе, в том числе JDT. Eclipse – это и Eclipse Project, проект верхнего уровня, координирующий разработку Eclipse Platform и JDT, и Eclipse SDK – поставляемый результат этой разработки. Наконец, Eclipse – это open-source Foundation с огромным сообществом проектов, далеко не все из которых написаны на Java или имеют отношение к средствам разработки (например, проекты Eclipse IoT и Eclipse Science). Мир Eclipse очень многообразен.

                            В данной статье, обзорной по своему характеру, мы попробуем рассмотреть некоторые основы архитектуры Eclipse как платформы для построения интегрированных средств разработки и дать начальное представление о компонентах Eclipse, образующих фундамент технологической платформы для «нового Конфигуратора» 1C: Предприятие, 1C:Enterprise Development Tools. Разумеется, такое рассмотрение неизбежно будет во многом поверхностным и довольно ограниченным, в том числе и потому, что мы ориентируемся не только на Eclipse-разработчиков в качестве целевой аудитории. Впрочем, надеемся, что даже опытные разработчики Eclipse смогут найти в статье интересную для себя информацию. Например, мы расскажем об одном из «секретов Eclipse», относительно новом и малоизвестном пока проекте Eclipse Handly, который был основан и поддерживается фирмой 1C.
                            image
                            Читать дальше →
                            • +12
                            • 15,7k
                            • 5
                          • Кастомизации в 1С

                              О кастомизациях вообще


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

                              image
                              Читать дальше →
                            • ВИДЕО: Atlassian User Group в гостях у «1С»

                                Видеозапись встречи Atlassian User Group, прошедшей 8 декабря 2016 г. в офисе «1С».
                                Доклады:
                                • Григорий Кнеллер, Polygran — «Расширение возможностей JIRA с помощью плагина JJUPIN» — Как лёгким движением руки можно расширить стандартные возможности JIRA по построению бизнес-процессов (workflows).
                                • Анастасия Козлова, Toolstrek — «Документирование изменений» — Как не потерять управляемость изменениями, когда несколько администраторов работают в одном инстансе.
                                • Андрей Шовкопляс, Reasoning Mind — «Монитор разработки»
                                • Ольга Николаева, AUG — JIRA Automation Plugin, рассказ про этот небольшой, но чрезвычайно полезный плагин, с примерами.

                                Читать дальше →
                              • Atlassian User Group в гостях у «1С»

                                  Друзья, мы продолжаем цикл встреч о кастомизации JIRA и инфраструктуры продуктов Atlassian.

                                  8 декабря в гостях у «1С» мы обсудим расширение возможности управления бизнес-процессами в JIRA с помощью плагина JJupin, интересная тема: как описать настройки системы и передать заказчику (или коллегам, если у вас несколько админов). Отдельно поговорим о примере мониторинга разработки, реализованного в компании Reasoning Mind.
                                  Читать дальше →
                                • Про веб-клиент 1С

                                    Одной из приятных особенностей технологии 1С:Предприятие является то, что прикладное решение, разработанное по технологии управляемых форм, может запускаться как в тонком (исполняемом) клиенте под Windows, Linux, MacOS X, так и как веб-клиент под 5 браузеров – Chrome, Internet Explorer, Firefox, Safari, Edge, и все это – без изменения исходного кода приложения. Более того – внешне приложение в тонком клиенте и в браузере функционирует и выглядит практически идентично.
                                    Найдите 10 отличий (под катом 2 картинки):
                                    Читать дальше →
                                  • 1С в облаках

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

                                      Картинка для привлечения внимания: автор статьи с помощью подручных средств (облака, флаг, самолет, парашют) иллюстрирует тезис «1С в облаках».


                                      Читать дальше →
                                    • Партнерский семинар «1С» – Открытое Воскресенье — доступна полная программа

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

                                        image
                                        Читать дальше →
                                      • Партнерский семинар «1С» – Открытое Воскресенье

                                          На прошлом осеннем партнерском семинаре 1С мы сделали целый день Открытым воскресеньем для всех, кому интересны наши технологии и решения. Эксперимент был удачным, и на грядущем партнерском семинаре 1С воскресенье, 2 октября, также будет открытым днем, который смогут посетить все желающие.

                                          В прошлый раз участники Открытого воскресенья посетили секции по развитию технологической платформы 1С:Предприятие и прикладных решений 1С; в рамках круглого стола по платформе 1С:Предприятие был продемонстрирован новый кластер серверов 8.4 и примеры написания плагинов к среде 1C:Enterprise Development Tools.

                                          image
                                          Читать дальше →
                                        • Способы интеграции с 1С

                                            Какие важнейшие требования предъявляются к бизнес-приложениям? Одними из самых главных являются следующие задачи:

                                            • Легкость изменения/адаптации логики работы приложения к меняющимся бизнес-задачам.
                                            • Легкость интеграции с другими приложениями.

                                            То, как решается в 1С первая задача, было кратко описано в разделе «Кастомизация и поддержка» этой статьи; мы еще вернемся к этой интересной теме в одной из будущих статей. Сегодня же речь пойдет о второй задаче, об интеграции.
                                            Читать дальше →

                                          Самое читаемое