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

Публикация № 1534932 15.10.21

Интеграция с оборудованием и сервисами - WEB-интеграция

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

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

 

Предпосылки

 

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

 

 

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

 

 

  • Несмотря на это, в приложениях 1С все больше и больше внимания уделяется бизнес-задачам – автоматизации процессов, общению, документообороту.

 

 

  • На фоне других аналогов подобных программ пользователи уже очень сильно привыкли к хорошему, и не готовы мириться с «суровым Enterprise» даже для решения каких-то сложных задач.

 

 

  • И последний момент – сейчас веб-верстка отчасти становится новым стандартом интерфейсов.

На экране вы видите примеры десктопных приложений, которые для вывода своего интерфейса используют такой движок, как Electron – он позволяет использовать для вывода интерфейса связку HTML+JS+CSS. Все эти приложения плюс Skype, плюс Spotify и т.д. для вывода своих функций в интерфейс используют именно веб-технологии.

 

Несколько примеров в сравнении с 1С-интерфейсами

Маркетинговая информация. Лендинги, отображение видео и аудио

 

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

Стандартно в 1С сейчас маркетинговая информация выглядит как на слайде – это информация, но спорно судить, насколько она привлекательна.

Даже если это баннеры – здесь спорный вопрос.

В то же время с помощью веба вы можете произвольным образом скомпоновать эту информацию, выделить более важные элементы.

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

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

 

Дашборды и отчеты. Расширенная и настраиваемая визуализация данных

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

В этом случае мы можем применить веб и сделать гибкую и настраиваемую визуализацию данных:

  • подсветить те элементы, которые нужны;

  • показать ховером какую-то дополнительную информацию;

  • вставить любые графики и любые диаграммы, сделать их интерактивными – например, по клику на какой-то сегмент у нас будет обновляться правая часть интерфейса;

  • сделать вкладки, написать на вкладках не только одно слово и циферку в скобках, но и вывести какую-то дополнительную информацию.

Здесь ваши возможности становятся практически безграничными.

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

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

 

CRM и канбан-доски. Обработка нестандартных событий: перехват движения мыши, перетаскивания, ховеры

Пример CRM. УНФ – прекрасное решение. Согласна, что ребята действительно с душой относятся к тому продукту, который они делают. Они много поработали над CRM, они действительно создали аналог поведения сервисов – таких, как AmoCRM, Битрикс24 и других популярных сейчас продуктов на рынке CRM.

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

В этом случае вы можете применить веб.

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

 

Мессенджеры. Подгрузка элементов с нестандартной компоновкой по скроллу, отображение миниатюр файлов

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

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

На слайде вы видите «монструозное состояние» нашей форме ввода, когда пользователь добавил все, что мог – здесь есть и цитата, и приложенные файлы, и текст, который можно оформить списком, жирным начертание, вставить какие-то шаблоны текста.

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

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

 

Списки файлов

Еще один кейс – это списки файлов. Стандартно в форме «Архив файлов» у нас есть иконка для расширения плюс название файла.

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

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

 

Пошаговые мастеры

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

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

 

Способы внедрения

 

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

Мы рассмотрим три варианта:

  • Самый простой – когда мы полностью формируем HTML внутри 1С-приложения и отдаем ее на форму.

  • Второй вариант – когда мы взаимодействуем с динамическим списком и справа от него показываем предпросмотр документа.

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

 

Частичное внедрение веб-технологий – в зависимости от параметров собираем HTML и отдаем на форму

 

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

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

 

 

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

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

 

Техническая реализация

 

 

Для генерации такой страницы применяем классическую работу со строками.

  • при изменении реквизита «КоличествоСтрок» заполняем поле HTML – берем элемент шаблона с id=“gallery__row” (его мы будем заменять на наш набор баннеров);

  • далее с помощью функции Изображение(URLКартинки) объединяем баннеры (соответствующие шаблоны) в массив;

  • далее этот массив строк просто соединяем и вставляем в нужное место HTML – переопределяем содержимое элемента с id=“gallery__row”.

 

 

В макете HTML у нас находится простой шаблон, в котором задан CSS и непосредственно само тело HTML, где есть div с id=”gallery__row”, содержимое которого у нас переопределяется в коде.

Минусы такого подхода:

  • нет интерактивности;

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

Это – самый простой вариант работы с веб в 1С.

 

Частичное внедрение веб-технологий – взаимодействуем с динамическим списком и справа показываем предпросмотр

 

 

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

 

 

Если несколько строк – то это выводится как таблица.

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

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

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

  • изменение заголовка декорации – с помощью нее мы можем выводить форматированную строку;

  • изменение флага видимости у определенных элементов формы;

  • ряд других моментов.

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

 

 

Альтернативное решение – то же самое, сделанное с помощью веб-технологий.

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

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

 

 

Также сохранена возможность перехода по ссылкам. Если мы нажимаем на клиента, у нас открывается соответствующая форма, если мы нажимаем на товар, у нас тоже открывается соответствующая форма номенклатуры.

 

Техническая реализация

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

 

 

Во-первых, у нас есть форма, на которую добавлен реквизит «Строка» и выведен в качестве поля HTML-документа.

 

 

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

 

 

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

 

 

И далее – есть инициализирующий скрипт, где мы объявляем переменную app, которая отвечает за отрисовку. И инициализируем ее с помощью вызова специальной функции, передавая в качестве параметра простой текст в формате JSON.

 

 

Этот HTML-шаблон у нас хранится в макете документа.

  • В целом, хранение в макете – один из вариантов.

  • Можно также помещать это во временное хранилище – платформа может оттуда доставать.

  • Либо в качестве альтернативы, можно хранить на каком-то веб-сервере в качестве статики.

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

 

 

Соответственно, когда мы открываем форму, мы помещаем в поле HTML начальный шаблон с нулевыми данными.

 

 

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

 

Проверка, что документ сформирован

 

 

Чтобы проверить, что документ сформирован, у нас сделана специальная функция.

Есть особенность, что событие «ДокументСформирован» для поля HTML-документа в Windows вызывается 2-3-4 и более раз. При этом не всегда понятно, когда он действительно сформирован.

Соответственно, мы проверяем:

  • есть ли вообще тело документа;

  • есть ли длина у вложенных элементов;

  • если они определены, то уже проверяем готовность.

Если готовность – “complete”, значит, все скрипты уже отработали, и мы можем добавлять свои кастомные скрипты для отрисовки интерфейса, для вывода информации.

 

Добавление скрипта для отрисовки интерфейса

 

 

Как мы добавляем скрипт?

 

 

Во-первых, мы получаем с сервера информацию о документе – это простой запрос с отбором «по ссылке».

 

 

Далее мы собираем структуру, в которую в том числе помещаем структуру из массива строк «Товары» – комбинация из структур, массивов и примитивных типов наиболее хорошо преобразуется в JSON.

 

 

И затем простой функцией преобразовываем данные документа в JSON-строку.

Сам исполняющий код выделен. Все остальное – обертка для универсальности.

 

 

Результат с преобразованием данных документа можно посмотреть, например, отладчиком. Скрипт с таким параметром пойдет уже в веб-часть.

 

 

Далее – мы формируем скрипт. Здесь к тексту скрипта добавляется метод app.Init(), который задан фронтэнд-разработчиком – мы его вызываем и передаем туда JSON.

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

 

Перехват комментариев

Как нам перехватить комментарии – как в принципе получить обратную связь от элемента управления поля HTML-документа.

 

 

Определенные события, которые существуют в JavaScript, можно перехватывать с помощью соответствующих обработчиков, которые можно добавлять с помощью типовой платформенной функции ДобавитьОбработчик.

  • Указываем событие определенного элемента управления внутри поля HTML-документа – ПолеКомментарий.onblur

  • И далее указываем, какую процедуру мы будем подвешивать на этот обработчик – ОбработчикHTMLКомментарийПриИзменении.

В процедуре ОбработчикHTMLКомментарийПриИзменении мы из события, которое нам передано в качестве параметра, достаем значение поля Комментарий. И просто неконтекстным вызовом передаем это значение на сервер с параметрами Ссылка и строка комментария, где документ перезаписывается.

Далее обновляется список, и мы в нем видим новые данные.

 

Переход по ссылке

И еще один момент интерактивного взаимодействия – это переход по ссылке.

 

 

В демо-примере показано два способа обработать нажатие в поле HTML.

Во-первых, мы можем просто с помощью тега href повесить на элемент управления ссылку – тогда при нажатии на этот элемент у нас сработает переход по ссылке.

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

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

 

 

Еще один способ взаимодействия – это прокси-кнопки.

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

Это нам позволяет делать какие-то таймеры внутри JavaScript или другие процедуры, которые должны выполняться при определенных обстоятельствах, но без реакции пользователя.

Например, он опрашивает какой-то внешний веб-сервис прямо из поля HTML-документа. Если что-то произошло – изменилась погода, поступил телефонный звонок, позвонили в дверь и т.д. – то он открывает форму в 1С или выполняет другое действие.

 

Отладка макетов HTML внутри 1С

Немного о том, каким образом фронтэнд-разработчику обеспечить работоспособность этого решения внутри 1С.

Несмотря на то, что, начиная с 14-й версии платформы у нас в качестве движка для поля HTML-документа используется встроенный браузер, являющийся форком WebKit (у фирмы «1С» есть отдельная статья на хабре о том, как они совершенствовали поле HTML-документа), поведение этого браузера отличается от того же Chrome. Это просто еще один браузер, под который хоть и привычными способами, но тем не менее, нужно адаптировать верстку.

 

 

Для отладки HTML-макетов есть достаточно простая обработка.

Внутри этой обработки выведено два элемента управления:

  • одно – это строка для того, чтобы можно было выбирать конкретные файлы;

  • второе – это поле HTML-документа, где у нас будут отображаться данные шаблона.

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

 

 

Более того, во встроенный браузер встроены инструменты разработчика – их можно открыть с помощью комбинации клавиш Ctrl+Alt+Shift+F12.

Снизу у нас появляются инструменты разработчика, здесь мы можем привычным способом, как в инструментах разработчика в Chrome, смотреть, отлаживать весь фронтенд – использовать консоль, вызывать дополнительные скрипты и т.д.

Например, мы хотим проверить, как работает тот или иной скрипт. Мы можем взять шаблон, скопировать из него сюда скрипт для заполнения – например, поменяем здесь комментарий на «Привет IS». Выполняем скрипт – у нас поменялся отображенный.

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

 

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

 

Еще один вариант применения веб-технологий – это непосредственное взаимодействие веб-компонента с сервером 1С.

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

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

 

 

Здесь у нас выводится список справочника контрагентов, куда для демонстрации добавлено 10 тысяч элементов.

Есть регистр сведений, в котором просто хранится число – количество заявок

И у нас есть функциональность «Добавить заявку» и «Обработать заявки»

По умолчанию в список загружается 20 элементов. Когда мы прокручиваем до нужной позиции, динамически подгружаются следующие элементы.

 

 

И еще работает поиск – он работает сравнимо с полнотекстовым поиском в динамических списках.

 

 

Также мы перехватываем открытие.

 

 

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

 

Техническая реализация

 

 

С технической стороны это реализовано следующим образом.

Есть очень простая обработка. При ее вызове мы получаем параметры сервера.

 

 

В параметры сервера включается адрес сервера и настройка cookie.

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

Этот seanceId мы передаем в шаблон в качестве Cookie и у нас получается структура параметров с полями «url» и «cookie».

 

 

Больше со стороны тонкого клиента мы никакие команды в поле HTML-документа не отправляем – только перехватываем его нажатие, если необходимо перейти по ссылке.

Если поле HTML явно хочет отправить нам команду, реализован JavaScript, который сам запрашивает данные из базы данных через HTTP-сервисы.

 

 

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

 

 

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

 

 

В функции ОбработатьТекущиеЗаявки мы просто пишем набор записей с отбором, в функции СоздатьНовуюЗаявку – увеличиваем количество заявок в регистре.

 

 

Чуть более сложный код по получению данных клиентов.

Здесь передаются определенные параметры – начиная с какого элемента какое количество получить, реализуется логика пагинации.

 

 

Дальше формируется простой запрос.

Параметры, которые нам переданы, через схему запросов подставляются в сам запрос.

 

 

Формируется текст запроса – он выполняется, и результат заворачивается в JSON так же, как это было в варианте с отображением документа.

JSON возвращается HTTP-сервису в качестве ответа, и далее JavaScript стандартным образом эти данные у себя отображает.

 

Три варианта технической реализации, проверенные практикой

 

Итого, мы рассмотрели три варианта использования веб-технологий для формирования интерфейса в 1С:

  • 1С получает данные, формирует HTML на сервере. JS реагирует на события.

  • 1С получает данные, вызывает методы JS. JS формирует HTML.

  • JS получает данные от 1С через HTTP-сервис и формирует HTML.

 

Выводы, плюсы и минусы использования веб-технологий для 1С

 

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

Но существуют и определенные минусы.

  • Во-первых, такой подход требует достаточно много ресурсов – требуется отдельный дизайнер, фронтенд-разработчик, бэкенд-разработчик (или разработчик 1С, который знает бэкенд). Если мы используем последний вариант, который я демонстрировал, то HTTP-сервисы должны быть написаны в соответствии с принципами бэкенд-разработки. Потому что фронтенд будет строиться на каких-то типовых библиотеках – это может быть Vue, React. Это может быть все, что угодно, а в самих этих библиотеках уже какие-то подходы заложены. Соответственно, это кратно увеличивает стоимость разработки – на 3-4 и более раз.

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

  • И иногда интерфейс 1С гибче и оптимизированнее, чем веб – это касается того же динамического списка, возможностей по интерактивному изменению формы. Мы можем это сделать в вебе, но поддерживать это там будет очень дорого. Поэтому обычно веб делается стабильным интерфейсом. Там настроек, которые может пользователь сделать – существенно меньше.

 

Вопросы

 

Нет диссонанса видеть форму предпросмотра в веб, а при открытии – обычную форму документа?

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

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

При реализации через HTTP-сервисы как реализуете аутентификацию?

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

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

Можно ли посмотреть демобазу?

Мы обсудим с коллегами возможность публикации. Если нам позволят обстоятельства, выложим.

Почему не использовали React, Vue.js? Или использовали?

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

 

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

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

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

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. VVi3ard 50 15.10.21 14:00 Сейчас в теме
Интересно было бы именно в части использования react/vue посмотреть.
Я пытался сам сделать но возникают проблемы с расположением файлов, приходится всё паковать в один файл.
2. Akcium 51 15.10.21 17:48 Сейчас в теме
(1) в этом случае мы распологаем веб-содержимое отдельно на веб-сервере и в соответствующем полю HTML документа реквизите формы прописываем ссылку на html страницу. В этом случае платформа сама подтягивает нужные дополнительные файлы и при возможности кэширует их.
3. VVi3ard 50 16.10.21 13:07 Сейчас в теме
Да но тогда не понятно как все это поставлять (продавать) заказчикам и потом поддерживать, ведь многие даже клиент сервер не используют а мы к ним приходим и говорим что поставьте веб сервер, сделайте публикацию. Потом же это обновлять ещё как то надо при установке обновления. Такое вообще пройдет сертификацию 1С?
4. Akcium 51 17.10.21 21:24 Сейчас в теме
(3) если решение продается как коробочное и при этом на рабочих местах нет доступа к интернету, то такая схема действительно будет сложной для развертывания на внедрениях, где используется файловая база.

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

В части требований к 1С:Совместимо решение не анализировал, но на первый взгляд проблем при сертификации не должно возникнуть.
5. VVi3ard 50 17.10.21 23:07 Сейчас в теме
(4)
- если на рабочих местах есть доступ в интернет, то можно разместить необходимые файлы на облачном сервере и загружать веб-содержимое из интернета;

Это требует дополнительной инфраструктуры на стороне разработчика, при этом становится единой точкой выхода из строя, затрудняет работу с релизами, под каждый релиз нужен свой сервис (т.к. не все сразу обновятся, а многие вообще не будут обновляться по году) соответственно нужно для каждого релиза поддерживать соответствующий сервис. Плюс интернет то может и есть но не в таком количестве что бы формы хорошо работали.
Как вообще в таком варианте всё кешируется? Т.е. вот например у хром я понимаю как кэш работает и где лежит, а у тонкого клиента для поля html документа как работает кеширование? Не получится ли что ваша коробка которая стучится к вам на сервер, проданная под 2000-3000 установок положит его?


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

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

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


Да в этом случае уже понятно что есть админы которые все развернут настроят и тут вопрос отпадает.
6. Akcium 51 17.10.21 23:12 Сейчас в теме
(5) В части затруднения работы с релизами - особо нет. Просто веб-контент версионируется и хранится в папках с указанием номера версии. Это не очень большие объемы и довольно низкая сложность.

В части стандартного инсталятора. Завернуть можно, просто это будет сложнее. Плюс сейчас практически норма публиковать ИБ на веб-сервере (автоматическое обновление клиента, 1С:Аналитика, интеграции через http или soap сервисы и т.д.), поэтому докинуть туда еще и веб-содержимое для работы конфигурации сильно сложной задачей не выглядит.
7. rpgshnik 2732 18.10.21 12:28 Сейчас в теме
Чат красивый, вот бы до такого доросло Обсуждение) у вас будет отдельно продажа чата? Какие есть решения уже на продажу?
8. Akcium 51 20.10.21 22:49 Сейчас в теме
(7) В докладе был пример реализации для одного из наших клиентов. Универсальных решений на продажу нет, но можем реализовать решение на этих технологиях по вашим требованиям или требованиям ваших клиентов.
9. AlexeyPapanov 428 29.10.21 11:35 Сейчас в теме
Хочу сказать спасибо за статью и за видео, которое очень "по делу" и без воды.
И спасибо, Матвей, за помощь!
10. MAlexey81 16.11.21 10:26 Сейчас в теме
Похоже на проект полета человека на Луну. Сложно, дорого, ресурсоемко. Для реализации личных кабинетов и закрытия части бизнес-задач такие методы могут помочь, но делать из 1С подобие веб-приложения будет сопоставимо по затратам с программой освоения космоса.
Спасибо за статью.
Планирую в одном проекте попробовать вариант - "JS получает данные от 1С через HTTP-сервис и формирует HTML" как наиболее реализуемый в рамках соотношения затраты/результат.
Оставьте свое сообщение

См. также

Подмена заголовка 1С Промо

Универсальные функции Работа с интерфейсом Россия Бесплатно (free)

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

08.12.2018    11665    moolex    26    

Программный интерфейс для доработки форм

Практика программирования Работа с интерфейсом Универсальные функции v8 1cv8.cf Бесплатно (free)

Реализовал простой способ программного создания новых элементов, команд и реквизитов на форме.

25.11.2021    2968    AtamanovYS    19    

Безголовая (Headless) архитектура построения eCommerce

WEB Бесплатно (free)

Обобщение материалов по безголовой архитектуре построения eCommerce.

10.11.2021    476    malikov_pro    9    

Понимание схемы JSON (JSON Schema), часть 2

WEB Бесплатно (free)

Перевод книги https://json-schema.org/understanding-json-schema/

09.11.2021    978    malikov_pro    0    

Подбор в управляемой форме - что может быть проще? Промо

Работа с интерфейсом v8::УФ 1cv8.cf Бесплатно (free)

Технологии модальности сейчас меняются на технологии асинхронности, многопоточности и прочие дивные вещи, что, в свою очередь, заставляет людей еще чаще спрашивать о том, что да как в этой новой нелегкой жизни. Разбираемся!

19.09.2017    56029    starik-2005    71    

Примеры тестовых сценариев Postman

WEB Бесплатно (free)

Перевод статьи https://learning.postman.com/docs/writing-scripts/script-references/test-examples/

08.11.2021    1675    malikov_pro    0    

Телеграм, 1С http-сервис, webhook по SSL

WEB Бесплатно (free)

Как установить Телеграм webhook по HTTPS на 1С http-сервис используя самоподписанный (self signed) сертификат на IP адрес. Личный опыт.

31.10.2021    2002    Goody    16    

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

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

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

27.10.2021    2912    antonov_i    16    

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

WEB v7.7 v8 Бесплатно (free)

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    58650    Serginio    33    

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

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

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

18.10.2021    6535    zatoichi    37    

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

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

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

13.10.2021    793    gntk    2    

WEB/HTTP сервисы. Базовые отличия и применение на практике

WEB Практика программирования v8 Бесплатно (free)

Рассказываем о WEB и HTTP сервисах, их практическом применении, о шишках, которые мы набили, и о выводах, которые сделали. Спойлер: тех, кто дочитает статью до конца, ждет бонус от автора.

04.10.2021    6073    Neti    14    

Online телефонный справочник из 1С: Зарплата и управление персоналом Промо

WEB Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    27451    ruha    21    

Swagger для 1С. Описание сложной структуры входящих и исходящих данных

WEB OneScript Россия Бесплатно (free)

Анонс нового функционала 1Script пакета swagger версии 0.5.0.

04.10.2021    2179    kuleshov.x    7    

Бесплатный сертификационный курс Интеграция API Яндекс.Маршрутизации и программных продуктов на базе 1С (22 сентября - 5 октября 2021 года)

WEB Бесплатно (free)

Курс позволит получить востребованную квалификацию по работе с API Яндекс.Маршрутизации, поможет разобраться с особенностями настройки сервиса и научит реализовывать сложные операционные бизнес-схемы, чтобы быстрее интегрировать его в своей компании или на стороне клиента, снижая затраты на логистику на 10-20% и повышая маржинальность организации до 2х раз. Сертифицированные специалисты также смогут присоединиться к агентской программе Яндекс.Маршрутизации и получать дополнительный доход от продажи лицензий и проведения работ по интеграции сервиса.

13.09.2021    1349    routing    0    

Внедрение веб-клиента – взгляд изнутри программиста 1С со стороны заказчика

WEB Бесплатно (free)

Программист 1С в компании TELS Виталий Ильинчик выступил на онлайн-митапе «Web-клиент для 1С». Он рассказал о том, с какими проблемами столкнется ИТ-отдел заказчика и как их можно предупредить. За основу взят опыт внедрения веб-кабинета поставщика на платформе vCan-Site.

10.09.2021    1083    wtlz    0    

Поздравляем всех одинэсников с 23 февраля! Промо

Поздравления Бесплатно (free)

Дорогие одинэсники, с Днем Защитника вас! Помните, что защищать нужно не только Родину, но и прекрасную половину человечества! Особенно ту, которая говорит с вами на одном языке, как в нашем видео-сюрпризе ;)

20.02.2014    27924    support    140    

Обмен с HTTP сервисом файлами по формату multipart/form-data

WEB v8 1cv8.cf Россия Бесплатно (free)

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

07.09.2021    2837    ix5s    22    

Разработка гибридного web-приложения на 1С, возможности и ограничения

WEB v8 Бесплатно (free)

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

06.09.2021    2792    Бэнни    11    

Встраивание форм 1С на страницы сайта

WEB v8 1cv8.cf Бесплатно (free)

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

27.08.2021    2847    mikepin    9    

Полезности применения СКД Промо

Работа с интерфейсом Практика программирования v8::УФ v8::СКД УТ10 Россия Бесплатно (free)

Нюансы при работе из СКД на программном уровне.

11.04.2012    52852    logarifm    42    

WEB-интерфейсы как механизм сбора и контроля данных в розничной сети. Инструменты и наработки

WEB 1cv8.cf Бесплатно (free)

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

24.08.2021    1297    itworks    3    

Умная маршрутизация: кейс интеграции с 1С (часть 1)

WEB v8 Бесплатно (free)

Как мы решали проблемы с доставкой в нашем интернет-магазине, внедрили новый бизнес-процесс за 3 месяца и научились меньшим количеством машин привозить больше заказов клиентам.

18.08.2021    4378    greencactus    42    

Девопсы в 1С: микросервис распознавания штрихкодов

WEB Git (GitHub, GitLab, BitBucket) DevOps Практика программирования Бесплатно (free)

Распознавание штрихкода из сканированного документа в PDF.

09.08.2021    1592    alexey_kurdyukov    8    

Идея или как сохранить ЦВЕТ, ШРИФТ, ОФОРМЛЕНИЕ пользователя Промо

Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Простой и оригинальный способ сохранять ЦВЕТОВУЮ СХЕМУ и ОФОРМЛЕНИЕ пользователей. Как сохранить ЦВЕТ

22.06.2015    24948    Tatitutu    12    

Телеграм-бот как инструмент

WEB v8 1cv8.cf Бесплатно (free)

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

21.07.2021    4244    M_A_D    19    

FastAPI (python) - инструмент для быстрого создания Веб сервиса (WSGI) с REST api

WEB Бесплатно (free)

Ознакомительная статья по FastAPI (python) - инструменту быстрого создания Веб сервиса (WSGI) с REST api.

19.04.2021    7848    Идальго    25    

Wildberries. Заполнение карточек товаров. Как получить значение справочников?

WEB Бесплатно (free)

Wildberries. Заполнение карточек товаров. Как получить значение справочников? в документации это описано очень скромно, пытаюсь рассказать на основании своего опыта.

31.03.2021    2497    sergeyisa    1    

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

WEB Инструменты администратора БД Сервисные утилиты Бесплатно (free)

Небольшой код который встраивается на сайт и выводит информацию о последних релизах конфигураций 1С

12.09.2014    41254    Malfarion    34    

Графит. Правщик 1С морд от kuzkov.info. 8. Видимые свойства отображалок

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

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

31.03.2021    547    Steelvan    0    

Как получить ключ поставщика Wildberries (uuID), supplierID, Идентификатор поставщика

WEB Бесплатно (free)

Как получить ключ поставщика Wildberries (uuID), supplierID, Идентификатор поставщика, для работы с карточками товара.

18.03.2021    6349    sergeyisa    9    

Правила обмена больше не нужны

Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8 Распределенная БД (УРИБ, УРБД) WEB v8 Бесплатно (free)

Есть несколько общепринятых подходов к написанию обмена между 1С-системами, каждый из которых упирается в длительное изучение технологии, мучительную отладку правил конвертации и написание большого количества сервисного кода, в котором потом тяжело разобраться. О принципах работы универсального фреймворка liteExchange, который реализует быстрые обмены между 1С и внешними системами, и берет на себя всю техническую обвязку по стандартному преобразованию данных, на INFOSTART MEETUP Saint Petersburg.Online рассказал Николай Крылов.

17.03.2021    12479    Nikola23    40    

Хранение и редактирование дополнительных параметров в регламентированном отчете. Для начинающих. Промо

Работа с интерфейсом v8 БП2.0 УПП1 БУ Бесплатно (free)

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

22.01.2014    21074    KapasMordorov    4    

Динамический список и поиск... неприятностей

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

Страх и ненависть в поиске по динамическому списку, или "Кое-что о неоптимальном отборе".

17.03.2021    4679    Yashazz    37    

Интеграция "1С:Управление торговлей 10.3" с Yandex SpeechKit для распознавания телефонных звонков

WEB Интеграция с сервисами Телефония, SIP Бесплатно (free)

Распознавание телефонных звонков позволяет контролировать работу менеджеров, организовать для них дополнительный KPI, помогает разбирать конфликты и категоризировать звонки по вхождению слов. О своем опыте интеграции «1С:Управления торговлей 10.3» и сервиса Yandex SpeechKit на INFOSTART MEETUP Saint Petersburg.Online рассказал ИТ-директор компании «Умный дом» Федор Рыжков.

12.03.2021    1326    zzhiraf_    0    

Графит. Правщик 1С морд от kuzkov.info. 6. Сохраняем и правим SVG формат

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

Шестая часть хронологии разработки программы Графит, векторного правщика 1С морд от kuzkov.info. Добавлен функционал сохранения схемы в svg с возможностью повторной правки сохраненного svg файла. Практический пример приложения svg картинок к задаче в задачнице Мантис. Тяни-бросай svg на поле рисования из виндового проводника и пример гиперссылок между svg в обозревателе.

25.02.2021    558    Steelvan    0    

Из архивов Web-проектов: Основы теории цвета Промо

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

Казалось бы, все сделано по уму: и ТЗ адекватное, и программа написана в соответствии. А глаз не радует... Для тех кому знакома ситуация, кому важна гармония во всем, посвящается:

17.09.2013    24944    Evgen.Ponomarenko    13    

Графит. Правщик 1С морд от kuzkov.info.5. Панель свойств

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

Пятая часть хронологии разработки программы Графит, векторного правщика 1С морд от kuzkov.info. Пока мы решили отойти от разработки шаблонов 1С элементов и сосредоточиться на функционале. Добавлена правая панель с вкладкой "ТиповыеСвойства" для элементов "Прямоугольник", "Многоугольник", "Овал", "Соединитель". Создан функционал для работы с цветами через буфер обмена. Будет несколько гифок для зрительной иллюстрации написанного.

09.02.2021    966    Steelvan    3    

Бот Telegram и HTTP сервис в 1С

WEB 8.3.8 Бесплатно (free)

Настройка рабочего вебхука telegram для 1С используя IIS (Internet Information Services - встроенный в windows веб-сервер). Мой опыт.

26.01.2021    9158    solidsun    13    

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

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

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

04.12.2020    6250    user1502278    15    

Кэширование COM-соединения. Три способа Промо

Перенос данных из 1С7.7 в 1C8.X Внешние источники данных WEB Практика программирования v8 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    43211    YPermitin    42    

Как я бесплатно пишу чат-ботов WhatsApp на 1С

WEB Бесплатно (free)

На разработку чат-бота требуется время. Как правило, время уходит на ознакомление с API, отладку, приемку. Как сэкономить и не платить за использование API на время разработки? Делюсь своим опытом.

02.11.2020    4144    andrew_shamin    10    

[mobile] Переносим HTML интерфейс на 1С

Работа с интерфейсом Мобильная разработка v8 v8::Mobile 1cv8.cf Бесплатно (free)

Разберем методы переноса HTML интерфейса на 1С на примере реализации нижнего меню для мобильного приложения. Сравним методы между собой. Данные методы можно применять не только для мобильной разработки, но и для веб-клиента и т.д

02.11.2020    8915    leobrn    79    

Обмен с сайтом посредством Post-запроса, json

WEB v8 1cv8.cf Бесплатно (free)

Задача - передавать на сайт объекты с наименованием и уникальным идентификатором (УИ), которые изменяются в 1С. Также нужно сохранять историю отправленных пакетов.

29.10.2020    6056    John_d    26    

Заготовка для загрузки файлов по ftp Промо

WEB Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

3 процедуры и 1 макет

03.06.2013    31345    anig99    6    

Использование HTTP REST обертки xmysql для работы с MySQL на примере OpenCart

WEB Бесплатно (free)

В статье опишу вариант работы с MySQL базой используя HTTP.

28.09.2020    2470    malikov_pro    2    

Учимся создавать http сервисы (часть вторая). Передача параметра в http сервис

WEB v8 1cv8.cf Бесплатно (free)

Пошаговое руководство по созданию http-сервиса (часть вторая). Передача параметра в http сервис.

22.09.2020    9154    hpi    7    

Переопределение представления ссылочного значения

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

Переопределение представления ссылочного значения

17.09.2020    5053    sam441    15    

Программное генерирование кнопочек для удобного управления уровнями группировки в отчетах (версия 2a). Промо

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

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

09.04.2011    47359    mtv:)    75    

Дневник боли и страданий. Как я переходил от The Bat! к MS Outlook

WEB Бесплатно (free)

Мой опыт перехода от The Bat! к MS Outlook. Сравнение двух программ, киллер-фичи, лайфхаки и рецепты из интернета. Все в одном месте и проверено автором на актуальных релизах сентября 2020 года.

02.09.2020    3264    gubanoff    16    

Формирование документа Google Docs из шаблона используя Google Apps Script

WEB Бесплатно (free)

В статье опишу работу скрипта для формирования документа с публикацией по HTTP.

25.08.2020    3019    malikov_pro    3    

Использование скриптов при формировании запросов используя Postman

WEB Бесплатно (free)

В статье опишу применение JS скриптов а postman при работе с API.

22.08.2020    5321    malikov_pro    8