Реактивный интерфейс для 1С:Предприятия

Публикация № 1541240 27.10.21

Разработка - Работа с интерфейсом

Интеграция 1С:Предприятие с веб-приложениями требует нестандартных решений. О том, как построить веб-интерфейс для 1С на HTTP-сервисах, и какие технологии при этом можно использовать, на митапе «Интерфейс в 1С» рассказал автор профессиональных курсов по JavaScript в HTML Academy Игорь Антонов.

Я работаю автором профессиональных курсов по JavaScript в HTML Academy. До HTML Academy я работал руководителем отдела разработки в региональной страховой компании АО «ДальЖАСО». В этой компании мы занимались тем, что строили b2b-систему для продажи страховых продуктов нашим партнерам.

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

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

 

Веб-клиент. Преимущества

Когда мы создали первую версию приложения, она работала на терминальном сервере – клиенты подключались по RDP и работали в тонком клиенте 1С:Предприятие.

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

Веб-клиент — отличный инструмент, работает прямо из коробки. Достаточно установить один из популярных веб-серверов (Apache или IIS) и опубликовать приложение. Всё остальное сделает платформа.

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

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

 

Веб-клиент. Недостатки

Мы пользовались веб-клиентом около 5 лет. За это время удалось прокачать возможности приложения и смириться со многими ограничениями веб-клиента. За это время веб менялся и отношение клиентов к веб-приложениям изменялось вместе с ним. В итоге мы столкнулись с новыми сложностями.

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

Вторая проблема, с которой мы столкнулись при использовании веб-клиента, – это трафик. К сожалению, в платформе нет никаких нативных средств, которые бы позволили вам уменьшить тот объем трафика, который создается в результате использования веб-клиента. Вы можете взять для примера любую типовую конфигурацию, запустить ее в веб-клиенте, посмотреть в «Инструментах разработчика» любого браузера вкладку «Сеть» и увидеть, сколько выполняется запросов при использовании веб-клиента. И какой объем данных передаётся. Если поработать с программой полчаса, там будут внушающие цифры – мегабайты трафика и, само собой, если вы используете какое-то ограниченное веб-соединение (у нас клиенты зачастую в то время пользовались 3G-модемами), это все чувствительно. Когда вы нажимаете кнопку создания документа, проходит какое-то время перед тем, как отрисуется сама форма, и вы сможете этим документом пользоваться. А если у вас в этом документе еще и много реквизитов ссылочного типа – таких как справочники, перечисления и т.д., то их подзагрузка занимает некоторое время. И опять же, анализ показывает, что те ресурсы, которыми часто пользуются, не так кешируются, как могли бы. Это особенно актуально для справочников и т.д. Когда идет обращение к одному и тому же справочнику из разных документов, хотя это один тип данных, то видно, что данные подгружаются заново в полном объеме – это, конечно, неудобно. Почему так сделано — понятно, но жаль, что у разработчика нет возможностей пересмотреть поведение для отдельных ситуаций.

На этом сложности не заканчиваются. В 2017 году всё чаще стали появляться запросы на работу с приложением с планшетов, смартфонов. Любое современное веб-приложение предоставляет адаптивный интерфейс. Веб-клиент пока не может этого предложить. Пользоваться приложением на маленьком экране веб-клиентом невозможно. А если экран не слишком мал (например, при использовании планшетов), то пользоваться всё равно не очень удобно, из-за неприспособленности некоторых элементов к тач-интерфейсу.

Мы пытались с этим бороться: пробовали делать более массивные элементы управления. В некоторых случаях это срабатывало, но чаще всё же нет. Инструментов для создания адаптивного интерфейса — нет. К тому же, мы так или иначе возвращались к проблеме с производительностью на слабых устройствах.

И ещё одна немаловажная проблема, с которой нам также пришлось столкнуться, – это автоматизированное тестирование. Программ без ошибок не бывает. Баги есть, к сожалению, во всех приложениях. С одними легко бороться и выявлять, для других нужны специальные инструменты.

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

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

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

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

Со временем вопрос автоматизированного тестирования встал ребром. И мы поняли, что если будем двигаться в таком направлении дальше, то рано или поздно пользователи нас «съедят» за то, что мы не можем обеспечить нормальную работоспособность нашего приложения.

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

Изначально мы решали эту задачу максимально просто: добавили в приложение опросники. Это позволило понять, что некоторой функциональностью многие пользователи не пользуются или делают это неправильно. Причины этого самые разные. Например, они не знают, для чего программист добавил кнопку с какой-то красивой иконкой и что случится при её нажатии. Осторожный пользователь просто не нажимал её, хотя эта кнопка решала какую-то важную задачу и могла сэкономить его время.

Мы хотели научиться измерить такие вещи и проводить A/B тестирование. Увы, с веб-клиентом решить эту задачу не получилось. Например, мы не можем прицепить никаких готовых метрик. Нет возможности как-то повлиять (точней есть, но этот вариант не стоит рассматривать) на то, какой HTML/JS код получается на выходе.

Например, взять Яндекс.Метрику. Сервис предоставляет «ВебВизор», позволяющий понять, как пользователи взаимодействуют с интерфейсом приложения. В нашем случае это особенно актуально, когда речь идёт о оформлении страховых полисов, где достаточно много полей. Выяснять, почему пользователи застревают на том или ином этапе оформления полиса с помощью опросников — идея такая себе.

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

 

Ожидания от веб-интерфейса для 1С

Что же в нашем понимании современный веб-клиент? Критерии современного веб-клиента складываются из противоположности тех минусов, которые мы отметили для стандартного веб-клиента 1С.

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

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

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

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

1С предоставляет три основных способа это сделать:

  • Первый — это веб-сервисы, которые появились в платформе достаточно давно.

  • Второй – HTTP-сервисы.

  • И третье – это банальная настройка репликации с какой-то сторонней базой данных, которая потом будет обращаться в веб-приложение и показывать различные результаты.

 

HTTP-сервисы – преимущества

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

REST API – это архитектурный паттерн, который популярен в мире веб-технологий, который сродни самому интернету, и позволяет применять те подходы к разработке, которые приняты при разработке классических веб-приложений. Вы можете использовать на полную катушку мощность протокола HTTP – HTTP-методы, коды статусов ответов. И вам не нужно этого выдумывать. Это, на самом деле, здорово, что вы берете какой-то протокол HTTP и просто используете то, что было придумано 20-30 лет назад, и не ломаете голову. Достаточно почитать немного спецификаций, сделать из этого свои выводы и использовать в приложении.

Во-вторых, HTTP-сервисы позволяют гибко распоряжаться данными. Когда мы создаем веб-приложение с использованием REST, мы всегда разделяем данные от представления. Данные могут браться из информационной базы, а тот интерфейс, который будет показывать эти данные, – это будет совсем отдельная сущность, которая никак не связана с вашей информационной базой.

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

HTTP-сервисы почти никак не привязаны к нюансам платформы. С точки зрения любой внешней системы это просто HTTP-сервер. Соответственно, появляется возможность покрывать их тестами. Вы можете написать end-to-end тесты для HTTP-сервисов и узнать, почему у вас вдруг стали приходить не те данные, которые вы ожидаете. Либо увидеть, что у вас нет прав на этот сервис или что внесённые в конфигурацию изменения затронули HTTP-сервис.

Другой немаловажный плюс – это аутентификация и авторизация из коробки. Когда мы используем HTTP-сервисы, нам не нужно особо задумываться над дополнительной системой авторизации. По умолчанию, если не брать встроенный в платформу механизм сессий, который вы можете использовать совместно с HTTP-сервисами, авторизация работает из коробки. Все пользователи, которые у вас заведены в информационной базе, могут авторизироваться под своим именем пользователя и паролем. Поэтому если у вас есть какое-то ограничение по RLS, это все будет работать из коробки.

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

 

HTTP-сервисы – недостатки

Несмотря на то, что у HTTP-сервисов много плюсов, минусы и ограничения тоже есть. Начнём с главного — встроенный механизм сессий. Механизм сессий используется для оптимизации запросов, которые вы отправляете. Если вы не используете механизм сессий, то на каждый запрос у вас будет создаваться отдельный сеанс, и это плохо. Это затратная операция.

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

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

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

И последнее важное ограничение — производительность. HTTP-сервисы позволяют решить многие задачи эффективней по сравнению с веб-клиентом. Однако они всё равно не дотягивают до похожих альтернативных технологий. Большое количество клиентов создаст серьёзную нагрузку на базу данных. К счастью, с этой проблемой можно бороться за счёт дополнительных инструментов. Например, за счёт создания BFF.

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

 

Инструменты и технологии для построения веб-интерфейса

Любую задачу можно решить несколькими способами. Построение веб-интерфейса — не исключение. С целью оптимизации ресурсов и повышения скорости разработки мы сделали выбор в пользу готовых инструментов: css-фреймворки и js-фреймворки. Они скрывают многие нюансы программирования и вёрстки. Для этого они предоставляют готовый каркас.

Таких инструментов много. Первая проблема, с которой сталкивается разработчик: а какой из них выбрать. С CSS-фреймворками всё относительно просто. Есть Bootstrap, есть Tailwind, есть Material UI. Начальный выбор больше зависит от визуальных предпочтений и наличия готовых компонентов. С JavaScript-фреймворками сложней.

 

Angular

Какие особенности у Angular:

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

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

Angular из коробки предоставляет TypeScript, с которым вы можете использовать все преимущества типизированного языка – тестировать ваши программные интерфейсы, определять типы и пользоваться тем, что актуально для языков вроде C#.

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

Важный плюс этого фреймворка – это подробная документация, которая включает множество примеров кода.

Если вы разрабатываете большое приложение с долгим сроком поддержки, Angular станет прекрасным выбором. Он строг, и в нем есть всё необходимое, чтобы продолжать развитие приложения без подключения каких-то дополнительных инструментов.

Из минусов стоит выделить: высокий порог входа. Если у вас нет никакого опыта в разработке на JavaScript, начинать с Angular сложно.

 

React

React – это библиотека от компании Facebook. В отличие от Angular, это именно библиотека. Она не содержит каких-то четких рекомендаций, четких правил к построению кода. Не содержит и лишних абстракций.

В контексте паттерна MVP, React отвечает за V (Views), представления. Тот самый слой, с которым взаимодействует пользователь (интерфейс). Как будут храниться данные и передаваться во View – определяет разработчик самостоятельно. Вы можете использовать либо какие-то универсальные механизмы для управления состоянием (state management), которые позволяют вам организовать глобальное состояние.

У React, в отличие от Angular, самые минимальные возможности из коробки – он отвечает только за представление. Остальная функциональность реализуется за счёт дополнительных пакетов. Их много, и при решении одной и той же задачи вы обязательно столкнетесь с проблемой выбора.

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

Для React создана большая экосистема инструментов. Они не поставляются из коробки, но доступны для загрузки из npm. Например, CLI в виде Create React App. Он уступает возможностям аналогичного инструмента из Angular, но его достаточно для создания базового каркаса приложения. Основа, которая создаётся с помощью CRA, готова к работе и к покрытию тестами. Разработчик получает инструмент с настроенным React Testing Library — библиотека для тестирования компонентов.

Поскольку React не фреймворк, а библиотека, каких-то жёстких требований по написанию кода нет. Это одновременно и плюс, и минус. Начинать с ним проще, но код может получиться не таким «хорошим». По сравнению с Angular, у React более низкий порог входа.

 

Примеры. Личный кабинет партнёра

 

 

Мы использовали React для разработки личного кабинета для партнёра. Примеры интерфейса представлена на скриншотах. Приложение представляет собой SPA (Single Page Application). Физически страница одна, а все страницы приложения полностью формируются на стороне клиента. 1С:Предприятие за счёт HTTP-сервисов отдаёт только необходимый набор данных.

 

 

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

Интерфейс приложения адаптивен. Он хорошо отображается на мобильных устройствах. Партнёры получили возможность оформлять страховые продукты не только с компьютеров. Это удобно.

 

Вопросы

Можно ли как-то встроить это решение в конфигурацию или его нужно использовать отдельно?

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

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

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

 

*************

Данная статья написана по итогам доклада (видео), прочитанного на онлайн-митапе "Интерфейс в 1С". Больше статей можно прочитать здесь.

Приглашаем всех 11-12 ноября принять участие в INFOSTART EVENT 2021 в Москве: event.infostart.ru/2021_msk/

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Yashazz 4507 29.10.21 09:26 Сейчас в теме
У всех моих клиентов наблюдаю строго обратный процесс - люди отказываются от кривого и глючного веб-интерфейса в пользу RDP. Приходят к этому сами. И, думаю, автору просто не повезло найти действительно грамотного сисадмина, чтобы рулить терминалами.

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

Это всё равно что нам тут распинаться, как вы Access или эксельчик прикрутили, чтобы вьюхи скульных таблиц 1С были посимпатичнее. Концептуально - примерно такой же маразм.

Энную долю публикации составляет архи-баянный пересказ основ и азов. Под спойлер бы убрали.

И, автор, вы б хоть тексты слайдов вычитывали. "Сложный интерфейсов" это как "русский языка", да?)
Sakuraso; him1974; zaic; Vasas2007; maks_sh; AllexSoft; +6 2 Ответить
2. antonov_i 278 29.10.21 12:43 Сейчас в теме
(1)

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

> Серьёзные решения с такими извратами и приблудами - это НЕ серьёзные решения.

Каким критериям должны соответствовать «серьёзные решения»? Что подразумевается под «извратами» и «приблудами»?

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

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

> Концовка вообще изумительна - это, типа, мы намутили в связке с 1С, а лучше всё делать вообще не на 1С, и к 1С это уже почти не имеет отношения, а ещё нужны сторонние спецы и штат расширять. Вы это скажите любому адекватному руководителю, я на вас посмеюсь)

Не совсем понял вашу позицию. Мы не стали заново создавать новое решение, а расширили существующее. Тем самым сэкономили деньги и адекватный руководитель за это обычно говорит «спасибо». С расширением штата тоже непонятно. Если для создания, развития продукта, который приносит деньги, требуются специалисты, то почему плохо их нанимать?
4. dreamadv 155 29.10.21 15:34 Сейчас в теме
(2) Не обращайте внимание. Он похоже вообще не понял о чем речь шла в статье. Очень правильный подход для реализации доступа к данным и системе для сторонних партнеров. Личные кабинеты, оформление специализированных заказов, отслеживание этапов его производства и т.д. все подобные задачи именно так и нужно решать. Веб-сервис и web-приложение на любом удобном фреймворке. К тому же если у компании уже есть веб-сайт то интегрировать туда подобное самое то.
Tormal; antonov_i; avbolshakov; +3 Ответить
7. Yashazz 4507 01.11.21 08:53 Сейчас в теме
(4) Для сторонних партнёров - может быть, хотя всё равно пахнет изобретением велосипеда. А вот вы похоже не поняли, какие минусы это за собой влечёт. Ничего, набьёте шишек, поймёте - однородная инфраструктура на единой платформе в общем случае выигрывает у сборной солянки. Я лет 10 назад тоже наивно верил, что для всяких там спец-режимов и кабинетов такое можно разводить.
11. antonov_i 278 03.11.21 10:31 Сейчас в теме
(7) > Для сторонних партнёров - может быть, хотя всё равно пахнет изобретением велосипеда

Извините, но не соглашусь. Мы разделяем обязанности. Разделение бэка и фронта — это типичная задача при разработке приложений. Одна часть отвечает за данные/бизнес-логику, другая за интерфейс. Плюсы очевидны: у вас может быть один бэк и для него созданы разные клиенты. Мобильное приложение, web-клиент и так далее.

> Ничего, набьёте шишек, поймёте - однородная инфраструктура на единой платформе в общем случае выигрывает у сборной солянки

К сожалению, утверждение без контекста. Непонятно, что подразумевается под «общим случаем». Есть задача. Есть требования к её решению. Есть инструменты для решения.
12. Yashazz 4507 03.11.21 12:20 Сейчас в теме
(11) Общий случай - это применение типовых конфигураций (плюс/минус расширения) типовыми 1С-слесарями (с) в других фирмах, чем ваша. Это штатное развёртывание, тиражирование, интеграция.
Пилить свой уникальный вариант - иногда хорошо, а вот предлагать его как пример для подражания - уже не есть хорошо.
9. Yashazz 4507 01.11.21 08:56 Сейчас в теме
(2) Приведите, пожалуйста, определение "адаптивного интерфейса".
10. antonov_i 278 03.11.21 09:59 Сейчас в теме
(9) Адаптивный интерфейс — интерфейс, который правильно отображается на различных устройства. Подстраивается под размеры экрана устройства.
13. Yashazz 4507 04.11.21 07:01 Сейчас в теме
(10) А, т.е. такой, какой 1С нам предлагает сразу из коробки средствами платформы, да? Посмотрите базовые видео-уроки на эту тему, на дворе уже не двухтыщный год, чтоб так мучиться. 1С это умеет)
14. antonov_i 278 12.11.21 09:42 Сейчас в теме
(13)

Если не затруднит, дайте ссылку, чтобы понять о чём именно вы говорите.
16. Yashazz 4507 15.11.21 08:07 Сейчас в теме
(14) Кхм. Вам нужна ссылка на описание принципов интерфейса 1С? Зайдите на главную официальную страницу, там изложено про "интерфейс, который правильно отображается" и "подстраивается под размеры".
3. avbolshakov 29.10.21 14:20 Сейчас в теме
А как вы смотрите на вариант ЛК на джанге например (или фласке). Те бэк у лк все таки свой, и синхронизируем уже базы данных?
antonov_i; +1 Ответить
5. dreamadv 155 29.10.21 15:36 Сейчас в теме
(3) да хоть на голом php. На чем угодно и лучше без синхронизаций можете сохранять данные в локальных базах в качестве промежуточного кеша, а ходить в 1С сервис когда нет кеша или же он устарел.
antonov_i; +1 Ответить
6. antonov_i 278 29.10.21 16:21 Сейчас в теме
(3) соглашусь с dreamadv (5). В целом неважно на чём сделан бэкенд. У нас была история, когда бэков на 1С было несколько и нужно было с ними как-то взаимодействовать с фронтенда. Дёргать каждый — неудобно и затратно. Поэтому делали прослойку в виде BFF (Backend for frontend). Отдельный сервис взаимодействует с бэками и предоставляет удобное API для фронта.
Yashazz; avbolshakov; +2 Ответить
8. Yashazz 4507 01.11.21 08:55 Сейчас в теме
(6) Я такое делал по другой причине. С одной стороны был сайт с несколькими функционалами в реальном времени, а с другой - чудовищно неповоротливая УХ. Там асинхронно работающая прослойка спасла положение. Так что тут поддерживаю.
antonov_i; +1 Ответить
15. antonov_i 278 12.11.21 11:35 Сейчас в теме
(12) Предлагаю на этом закончить бессмысленное обсуждение.
17. akimovdo 14 12.12.21 19:11 Сейчас в теме
Спасибо за статью!
Я уже год всем своим клиентам делаю личные кабинеты использую Nuxt.js, иногда в связке с Django и отдельной БД для оптимизации и экономии.
Соболезную адептам IIS, RDP и веб-клиенту из коробки.
Это мы еще не обсудили вопрос безопасности и разделения прав.
Очень плохая практика всем раздавать доступ в БД.
Если каждому давать, поломается БД...
Оставьте свое сообщение

См. также

"Дружелюбная" клавиатура

Работа с интерфейсом Бесплатно (free)

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

20.04.2023    3631    30    romasna    6    

16

Пример автоматизированного управления публикацией списка баз

Анализ и проектирование ИТ-систем Администрирование СУБД Бесплатно (free)

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

29.11.2022    959    Elaks    4    

9

Верстка главной страницы Infostart на tailwind

WEB-интеграция Работа с интерфейсом Бесплатно (free)

Сверстал главную страницу infostart на framework tailwind css.

08.09.2022    3244    John_d    21    

29

Печатные формы, отчеты, HTML,JS в новом релизе SimpleUI. Август 2022.

Мобильная разработка Работа с интерфейсом Бесплатно (free)

В новом релизе решена тема печатных форм или в общем смысле выходных форм, причем сдельно это очень и очень просто. С 1С переучиваться не придется. А HTML и JS в «экранах» это попутный результат - теперь можно размещать HTML в контейнерах. Основная статья и комплект разработчика тут: https://infostart.ru/public/1153616/

29.08.2022    2891    informa1555    4    

29

Как донести здравый смысл до заказчика. Инструменты архитектора

Управление проектом Анализ и проектирование ИТ-систем Бесплатно (free)

Андрей Овсянкин на конференции Infostart Event 2021 Post-Apocalypse поделился инструментами, которые помогают ему обрабатывать большой поток задач и экономить недели на обсуждении проекта. Он рассказал, как искать ошибки в процессах, какие диаграммы полезны при общении с заказчиком и с помощью каких инструментов можно быстро рисовать наглядные картинки вместо долгих разговоров.

05.08.2022    9947    Evil Beaver    17    

99

Автоматизация vs оптимизация

Анализ и проектирование ИТ-систем Внедрение ИТ-системы Бесплатно (free)

Анализ и оптимизация бизнес-процессов становятся все более востребованными в проектах автоматизации, а с массовым переходом с 1С: УПП на 1С:ERP эта задача станет еще более актуальной. О том, как собрать полную картину реальных потребностей вашего заказчика, исходя из логики его бизнес-процессов, на конференции Infostart Event 2021 Moscow Premiere рассказала Елена Иванова.

27.06.2022    2771    e_ivanova    0    

11

Скальпель, зажим, … пластырь, валерьянка. Мы закончили..: инструменты работы бизнес-аналитика

Анализ и проектирование ИТ-систем Бесплатно (free)

Считается, что аналитику для работы на проекте достаточно уметь строить бизнес-процессы в одной-двух популярных нотациях. Но это не так, потому что работа аналитика гораздо разнообразнее и не ограничивается рисованием схем. О том, какие инструменты пригодятся аналитику и помогут ему сделать свою работу комфортной и удобной, на конференции Infostart Event 2021 Moscow Premiere рассказала руководитель отдела сопровождения финансового учета компании «Самокат» Анастасия Штей.

23.06.2022    4948    ashtey    0    

38

Эмпатия и системный подход в сборе требований и составлении ТЗ

Анализ и проектирование ИТ-систем Внедрение ИТ-системы Бесплатно (free)

Начальник отдела внедрения и сопровождения информационных систем в торговой сети «Командор» Елена Качаева выступила на митапе «Сбор требований и составление ТЗ». Елена рассказала, как разобраться в особенностях клиента, как найти с заказчиком общий язык и составить корректное ТЗ, которое в дальнейшем будет легко реализовать и сдать.

10.06.2022    2289    kacelena    2    

14

Путь покупателя интернет-магазина (Customer Journey) с использованием УФМТП

Анализ и проектирование ИТ-систем Управленческий учет Бесплатно (free)

Недавно у меня вышла статья под названием «Универсальная функциональная модель торгового предприятия (УФМТП) в нотации IDEF0». И одно из пожеланий читателей было пояснить подробнее, как я лично пользуюсь этой моделью и как вообще ее можно применять на практике. В этой статье я выполню просьбу читателей. И на примере взаимодействия покупателей с интернет-магазином продемонстрирую практическое применение этой модели.

12.05.2022    1509    raiml    2    

5

Универсальная функциональная модель торгового предприятия в нотации IDEF0

Анализ и проектирование ИТ-систем Управленческий учет Бесплатно (free)

Из чего состоит предприятие? Какие функции основные, а какие нет? В данной статье вы найдете ответ на этот и другие вопросы. Модель, построенная на основе опыта бизнес-консультанта с использованием нотации IDEF0.

12.05.2022    3940    raiml    4    

7

Business Objective Model или Модель бизнес-целей - где, зачем и как применять?

Анализ и проектирование ИТ-систем Бесплатно (free)

Модель бизнес-целей или Business Objective Model (далее BOM) - техника, которая захватила моё сердце и разум с первого взгляда. Простая и наглядная, она помогает избежать того, от чего так часто возникает недопонимание между бизнесом и теми, кто его автоматизирует.

23.03.2022    2574    SerjoginaMaria    18    

19

Графический интерфейс для сценарного языка OneScript и дизайнер форм в придачу

Работа с интерфейсом OneScript Бесплатно (free)

Графический интерфейс расширяет возможности и область применения скриптового языка. Перед вами ещё один вариант GUI для уже широко используемого и отлично зарекомендовавшего себя инструмента автоматизации OneScript. С доступным комплектом контролов можно написать полноценное приложение, со множеством форм и диалогов. Большое внимание уделено документации, есть примеры на каждое свойство/метод. И в придачу к формам написан дизайнер форм. Без него работу над GUI считал не законченной. Всё это для того, чтобы тратить минимум усилий для получения максимального результата.

08.03.2022    3137    ahyahy    4    

56

Power BI дешево или очень дорого?

Консолидация данных Анализ и проектирование ИТ-систем Бесплатно (free)

На онлайн митапе «Бизнес-анализ по данным базы 1С. Интеграция c платформами BI» выступил Петр Базелюк, CTO компании Digital Business. Петр рассказал, как запустить систему аналитики для полноценной цифровизации всего бизнеса, сравнил возможности подписок Free, Pro и Premium и подсказал возможные пути минимизации затрат.

18.02.2022    4362    pbazeliuk    3    

11

Какие риски и ответственность берет на себя бизнес-аналитик

Анализ и проектирование ИТ-систем Бесплатно (free)

Профессия бизнес-аналитика хотя и интересная, но полна неопределенности. Чем должен заниматься этот специалист, какими навыками обладать, за что отвечать? На эти вопросы попытался ответить исполнительный директор Инфостарта Александр Чавалах.

16.02.2022    4393    chavalah    8    

18

Не надо делать мне как лучше, оставьте мне как хорошо

Анализ и проектирование ИТ-систем 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

Даже самое продуманное решение может потерпеть фиаско при внедрении, если пользователи не увидят в нем пользу.

08.02.2022    3603    SerjoginaMaria    37    

19

42 или главный вопрос по бизнес-процессам

Анализ и проектирование ИТ-систем Бесплатно (free)

Приветствую вас, уважаемые коллеги! Меня зовут Анастасия Штей, я – бизнес-аналитик 1С. Именно так я начинала свои доклады на INFOSTART EVENT 2021 Post-Apocalypse и INFOSTART EVENT 2021 Moscow Premiere. Мне очень близка тема бизнес-анализа, изучения подходов и практик моделирования бизнес-процессов и компетенции бизнес-аналитика. И сейчас я запускаю на Инфостарт серию статей, а уже скоро и курс, посвященный основам моделирования и анализа бизнес-процессов.

07.02.2022    7279    ashtey    20    

25

Документальное оформление бизнес-процессов в проектах по автоматизации

Анализ и проектирование ИТ-систем Управление проектом Внедрение ИТ-системы Бесплатно (free)

При формировании проектной документации под конкретного заказчика важно использовать в качестве основного источника информации автоматизируемые бизнес-процессы. О том, как такой подход позволяет соблюсти правило полноты и непротиворечивости информации на митапе «Бизнес-аналитик. Роль в команде, компетенции, инструментарий» рассказал руководитель отдела экспертизы компании «Первый БИТ» Денис Галимов.

02.02.2022    9145    denisgalimoff    3    

23

Матрица компетенций аналитика 1С

Мотивация, лидерство и личная эффективность Анализ и проектирование ИТ-систем Бесплатно (free)

Тема мотивации сотрудников – одна из центральных в любой организации. Но, как и за что премировать работников, определиться сложно. В компании ФТО решили, что нужно сформировать матрицу компетенций, присвоить каждой определенное количество баллов, и уже на основании такой независимой оценки распределять премиальные. Подробнее о системе рассказала руководитель аналитиков 1С проектного отдела компании ФТО Анна Бирюкова.

28.01.2022    5044    abir    20    

19

Экспресс-обследование и реинжиниринг бизнес-процессов

Внедрение ИТ-системы Управление проектом Анализ и проектирование ИТ-систем Бесплатно (free)

Проведение обследования – это первый этап работы на проекте. От того, как этот этап пройдет, и какие результаты будут получены, будет зависеть дальнейший исход вообще всего проекта. О проведении обследования предприятия для целей управленческого учета на основе МСФО рассказал Генеральный директор ООО «Рэй Консалтинг» Николай Шилкин.

26.01.2022    3346    RayCon    1    

16

Бизнес-аналитики 1С: спрос есть, но кто они?

Управление ИТ-подразделением Внедрение ИТ-системы Анализ и проектирование ИТ-систем Бесплатно (free)

Каждый понимает по-своему, кто такой бизнес-аналитик и чем он занимается. Руководитель компании CORS Consulting Илья Отькало постарался ответить на вопросы, что должен знать такой специалист, какие знания и навыки ему пригодятся в работе.

24.01.2022    8122    otkalo    0    

19

Роль и задачи аналитика в проектной команде при внедрении 1С

Управление командой Внедрение ИТ-системы Анализ и проектирование ИТ-систем Бесплатно (free)

Типовые продукты фирмы «1С» становятся все более гибкими, и функция разработки или изменения для них очень часто вообще не требуется или требуется точечно, поэтому для подобных проектов появился отдельный специалист – аналитик 1С. Какие у него задачи, и чем он отличается от системного аналитика и бизнес-аналитика, рассказал руководитель отдела экспертизы компании «Первый БИТ» Денис Галимов.

19.01.2022    11699    denisgalimoff    8    

21

Как быстро нарисовать блок-схему или изобразить бизнес-процесс

Анализ и проектирование ИТ-систем Россия Бесплатно (free)

Делюсь советами и накопленным опытом по построению блок-схем. Эта информация будет полезна, в основном, новичкам в IT-сфере. Мы рассмотрим идеологию построения любой схемы, первые шаги и поэтапно изучим, как рационально было бы строить каждую новую схемку. Заодно вспомним две самых популярных программы, которые используются для построений.

25.11.2021    17538    VachKirp    10    

18

Использование PlantUML в Redmine

Анализ и проектирование ИТ-систем Бесплатно (free)

В статье опишу порядок настройки плагина PlantUML для Redmine 4.2

25.10.2021    1255    malikov_pro    2    

9

Уникальный дизайн в 1С на примере разработки реального продукта

Работа с интерфейсом Анализ и проектирование ИТ-систем Бесплатно (free)

Изменить стандартный дизайн интерфейса в 1С можно не только с помощью классических веб-технологий. О том, как для этой цели использовать SVG-картинки, и какие особенности есть у такого подхода, рассказал разработчик 1С в компании «Ангелы ИТ» Сергей Харламов.

18.10.2021    16190    papa_harlo    38    

64

Когда интерфейсам 1С нужны веб-технологии

WEB-интеграция Работа с интерфейсом Анализ и проектирование ИТ-систем Бесплатно (free)

Есть несколько способов сделать интерфейс в 1С богаче и оптимальнее с помощью веб-технологий. О том, какие практические приемы помогут в этой задаче, на митапе «Интерфейс в 1С» рассказали руководители разработки в компании «Арбис» Матвей Серегин и Анна Гнатюк.

15.10.2021    5748    Akcium    11    

69

Из арт-директора веб-студии в команду разработки продукта на платформе 1С

Работа с интерфейсом Анализ и проектирование ИТ-систем Бесплатно (free)

В мире 1С по сравнению с веб-разработкой незаслуженно мало внимания уделяется поведению и внешнему виду интерфейсов. На митапе «Интерфейс в 1С» руководитель группы разработки компании АРБИС Анна Гнатюк рассказала, что она привнесла из большого мира дизайна в разработку на 1С.

13.10.2021    1847    gntk    2    

16

Детские механизмы для взрослых людей

Мотивация, лидерство и личная эффективность Анализ и проектирование ИТ-систем Бесплатно (free)

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

06.09.2021    2322    ashtey    6    

12

Берримор, ты потерял рецепт овсянки? Не беда, нам поможет DFD!

Анализ и проектирование ИТ-систем Бесплатно (free)

Методология DFD наряду с нотациями IDEF0 и IDEF3 входит в тройку популярных методологий описания бизнес-процессов. Мы не говорим о современных нотациях eEPC или BPMN, мы говорим о классике.

16.08.2021    6709    ashtey    2    

17

Мухи отдельно, котлеты отдельно. Или когда использовать IDEF3?

Анализ и проектирование ИТ-систем Бесплатно (free)

С нотацией IDEF0 разобрались, теперь поговорим о следующем представителе семейства IDEF – нотации IDEF3.

08.08.2021    8486    ashtey    6    

11

Управление моделями при сборе требований

Анализ и проектирование ИТ-систем Управленческий учет Бесплатно (free)

От качественного моделирования и документирования бизнес-процессов во многом зависит правильность реализации требований заказчика в системе. О том, как организовать процесс моделирования при сборе требований – какие инструменты/нотации при этом использовать и как подбирать аналитика, который сможет правильно документировать требования на проекте, рассказал руководитель проектного отдела “Корпоративные финансы” компании WiseAdvice, Сергей Наумов.

16.07.2021    3681    SergeyN    8    

12

Краткий путеводитель по методологиям и нотациям описания и моделирования бизнес-процессов. Часть 4

Анализ и проектирование ИТ-систем Управленческий учет Бесплатно (free)

Сколько бизнес-аналитиков – столько и мнений: какая нотация лучше и какую следует использовать при моделировании бизнес-процессов. Рассмотрим следующую группу нотаций…

01.06.2021    11537    ashtey    1    

12

Краткий путеводитель по методологиям и нотациям описания и моделирования бизнес-процессов. Часть 2

Анализ и проектирование ИТ-систем Управленческий учет Бесплатно (free)

Самая суть – графическая нотация моделирования бизнес-процессов. Какие бывают и когда их использовать… Начнем с семейства нотаций IDEF.

22.04.2021    17268    ashtey    2    

24

Котлеты по-одесски, или с чем кушать IDEF0

Анализ и проектирование ИТ-систем Бесплатно (free)

В статье я расскажу, как же приготовить котлеты с помощью нотации IDEF0.

23.03.2021    8979    ashtey    5    

21

Пишем ТЗ через сценарии

Анализ и проектирование ИТ-систем Бесплатно (free)

От того, насколько одинаково понимают ТЗ заказчик и исполнитель, зависит успех проекта. Включение моделей на UML и BPMN в состав ТЗ помогает упростить взаимопонимание с заказчиком и обеспечить минимум доработок за счет полного покрытия всех процессов функциональностью системы. О том, как грамотно составить ТЗ и увязать требования заказчика с детализированными моделями, на митапе Saint Petersburg.Online рассказал Сергей Наумов.

05.03.2021    11724    SergeyN    6    

26

Как получить из текста в BPMN схему. Видеоинструкция

Анализ и проектирование ИТ-систем Управленческий учет Бесплатно (free)

Как показывает практика описания процесса, для многих людей непонятно, в какой последовательности описывать процесс. Прочитав данную статью, вы поймете, как описывать и какой минимальный набор действий необходимо сделать для получения описания процесса d нотации BPMN. Вы также можете использовать последовательность, описанную в статье, и для описания процесса в нотации IDEF3.

16.02.2021    2984    raiml    3    

12

СКД: Использование макетов для вывода "сложных" группировок, ресурсов и итогов.

Работа с интерфейсом Конфигурации 1cv8 Бесплатно (free)

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

04.12.2020    16127    user1502278    15    

73

Графит. Правщик 1С морд для аналитиков

Работа с интерфейсом Россия Бесплатно (free)

Краткое описание текущего состояния разработки программы "Графит". Графит это векторный правщик от kuzkov.info для создания прототипов 1С морд приказчиком или аналитиком для согласования с Заказчиком

24.11.2020    6446    77    Steelvan    12    

15