Блог платформы Flexberry

Мастер-класс по проектированию информационных систем с использованием языка UML

Мастер-класс по проектированию информационных систем с использованием языка UML

21 января 2020 года пройдёт вебинар на тему «Мастер-класс по проектированию информационных систем с использованием языка UML».

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

Ведущий вебинара: Хаберев Евгений

Зарегистрироваться на вебинар можно по ссылке: https://flexberry.timepad.ru/event/1222266/

Приглашайте друзей и знакомых, кому этот вебинар был бы интересен!

Добавлена новая услуга по быстрой разработке прототипа

Очень многие люди боятся публичных выступлений. Представьте ситуацию: вы идёте на важные переговоры с потенциальным заказчиком. Ваша цель - договориться о достаточно дорогом проекте по разработке информационной системы. Вот тут как раз важно хорошо подготовиться эмоционально и не побояться выступления.
Что же рекомендуют психологи?
Во-первых, публичные выступления - это такой же навык, как, например, умение хорошо петь. Существуют курсы ораторского мастерства, тренинги и просто хорошие книги. Не поленитесь перед важным выступлением ознакомиться с базовыми приёмами работы с публикой. Возможно, сосредоточившись на этих рекомендациях, вы тем самым снимете страх неопределённости и будете меньше волноваться. Во-вторых, практика и ещё раз практика. Чем больше вы выступаете, тем проще это даётся. Наверное, это можно сравнить с прыжками с парашютом. Для большего эффекта рекомендуется записывать свои выступления на камеру и обязательно просматривать, анализировать. Это позволит выявить типичные ошибки и исправить их.
В-третьих, перед выступлением важно хорошо выспаться, настроиться эмоционально, решить все вопросы с естественными потребностями, как бы смешно это ни звучало. Человеческий организм в состоянии стресса может усиливать имеющийся дискомфорт и, даже если это позволяет забыть о страхе, то публика будет считывать состояние докладчика и делать выводы даже неосознанно.
И самое важное - хорошая подготовка к выступлению. Если вы рассказываете о чём-то с хорошим пониманием дела, то это почувствует и аудитория, а в ответ на положительную реакцию аудитории страх, как правило, снижается. Хорошая презентация (мало букв и больше схем) - это половина успеха. Если возвращаться к примеру с переговорами, вашей уверенности и успеху в целом, помимо презентации, в переговорах хорошо будет способствовать демонстрация работающего прототипа информационной системы, которую вы хотите сделать. Прототип, разумеется, должен оставлять ощущение прототипа - иначе будет сложно объяснить зачем вам такой бюджет.
Этот же пример хорошо подходит и для студентов, которые идут сдавать свои курсовые и выпускные квалификационные работы и даже для стартаперов, презентующих свой проект.
PS: Если так случилось, что вам действительно нужен работающий прототип программы для демонстрации, то команда проекта Flexberry Quick готова реализовать такой прототип недорого и всего за 48 часов.

Новости о подсистеме полномочий Flexberry

Flexberry Security - подсистема полномочий технологической платформы Flexberry.

Flexberry Security теперь совместима с .NET Core

Продолжается работа по переводу исходного кода серверной части платформы Flexberry на .NET Standard 2.0. На этот раз подготовлена для испытаний версия NuGet-пакета NewPlatform.Flexberry.Security - 3.0.0-alpha01: https://www.nuget.org/packages/NewPlatform.Flexberry.Security/3.0.0-alpha01.

Security Console с поддержкой PostgreSQL

Приложения, разработанные на Flexberry Winforms для настройки полномочий используют отдельную программу - Security Console. Изначально Security Console поддерживала в качестве СУБД только Microsoft SQL Server, что объясняется её большой популярностью в Windows-среде. Структура данных Flexberry Security универсальна для всех фреймворков: Flexberry Winforms, Flexberry ASP.NET и Flexberry Ember. Несмотря на наличие в Flexberry ASP.NET и Flexberry Ember средств управления полномочиями непосредственно в создаваемом приложении, в некоторых случаях удобно использовать внешнее настольное приложение для работы с настройками полномочий. Одним из ключевых преимуществ Security Console при разработке и сопровождении информационных систем является функция записи SQL-скриптов, позволяющая выполнить перенос настроек между базами данных. Для удобства использования Security Console теперь можно установить в виде NuGet-пакета NewPlatform.Flexberry.Security.Applications. После установки, приложение располагается в packages, в каталоге с именем пакета и номером версии, далее во вложенном каталоге tools. Перед использованием обязательно нужно настроить строку соединения с БД в конфигурационном файле.

Документация по FunctionBuilder

Уже почти год назад в Flexberry ORM был добавлен FunctionBuilder - удобный инструмент для построения функций ограничения.

  • Устали писать громоздкие функции ограничения с помощью langdef.GetFunction()?
  • Не доверяете LinqProvider при построении функций ограничения с помощью LINQ?
  • Сталкиваетесь с опечатками в именах свойств, из-за которых ограничение не работает?
  • Хотите иметь полный контроль над выстраиваемым ограничением, но с лучшей читаемостью и меньшим количеством символов?

Предлагаем вам попробовать FunctionBuilder и ваша жизнь уже не будет прежней!

FunctionBuilder:

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

Ознакомиться с описанием, примером использования и документацей по имеющимся методам можно в статье.

Все примеры в документации, где использовался langdef, были переписаны с использованием FunctionBuilder.

FunctionBuilder - новый стандарт в деле построения функций ограничений Flexberry ORM.

Новый дизайн для Flexberry Designer Online

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

Flexberry Designer Desktop также будет доступен, как и прежде.

Познакомиться с новым внешним видом Flexberry Designer Online можно уже сейчас на примере аддона ember-flexberry-designer в его Dummy-приложении на GitHub Pages.

Анонс школы разработчиков

Идёт активная разработка учебных материалов для школы разработчиков на платформе Flexberry.

О школе

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

Школа дает актуальные знания по:

  • Основам функционирования современных веб-приложений
  • Cозданию веб-приложений в архитектуре Single Page Application с использованием фреймворков Ember.js и ASP.NET Web API
  • Использованию средств командной разработки приложений
  • Автоматизации создания SPA-приложений с использованием платформы Flexberry

Для кого

Школа рассчитана на разработчиков, которые имеют опыт разработки веб-приложений на различных технологиях и знакомы с основными технологиями разработки веб-приложений.

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

Основные требования к обучающимся

Знание на базовом уровне, опыт работы с:

  • Языки разметки: HTML, XML
  • Таблицы стилей: CSS
  • Препроцессоры таблиц стилей: LESS
  • JavaScript, библиотека jQuery, работа с DOM, JSON
  • СУБД (желательно MS SQL Server, Postgres), язык SQL

Формат проведения школы

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

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

Flexberry ORM для .NET Core

Введение

Компания Microsoft развивает платформу .NET в сторону кроссплатформенности за счёт новой имплементации под названием .NET Core. На текущий момент актуальной является версия .NET Core 2.0. Она не совместима напрямую с привычным нам .NET Framework 4.5, поскольку он был реализован исключительно для работы под Microsoft Windows. Также она не совместима и с mono, который базируется на API .NET Framework и реализует кроссплатформенность исполнения .NET-программ.

Чтобы не отставать от трендов мы проделали работу по обновлению нашего ключевого элемента всех разрабатываемых на платформе систем - компонентов доступа к данным - Flexberry ORM.

Новый Flexberry ORM

Подготовлена alpha-версия NuGet-пакетов Flexberry ORM 6. Ключевой особенностью данной версии является перевод формата проектов на .NET Standard 2.0. Данная модификация позволяет использовать один и тот же код в проектах на .NET Core 2 и в проектах на .NET Framework 4.6.1+ (это будет минимальная версия, поддерживаемая ORM 6). Второй важный момент - Flexberry ORM теперь поставляется в виде набора пакетов. Центральным звеном является пакет NewPlatform.Flexberry.ORM.Abstractions, который является основной зависимостью в реализациях под конкретные СУБД:

  1. NewPlatform.Flexberry.ORM.PostgresDataService
  2. NewPlatform.Flexberry.ORM.MSSQLDataService
  3. NewPlatform.Flexberry.ORM.OracleDataService

Таким образом, если прикладное решение реализует поддержку только одной СУБД, то в проектах не будет присутствовать следов лишних провайдеров СУБД.

Изменения можно оценить в этом PR.

Обратная связь

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

Добавлена встроенная поддержка транзакционных запросов в Flexberry Ember

С целью реализации встроенной поддержки транзакционных запросов были выпущены следующие preview-пакеты.

Выпущена версия NewPlatform.Flexberry.ORM.ODataService 5.1.0-alpha01

Добавлена поддержка batch запросов. Внимание! Сменилась сигнатура метода HttpConfiguration.MapODataServiceDataObjectRoute(), пример изменения кода после обновления.

Выпущена версия ember-flexberry-data@2.2.0-beta.0

В версию вошли следующие изменения:

  • добавлено:
    • Adapter.Odata:
      • добавлен метод batchUpdate для отправки запроса на добавление/изменение/удаление нескольких моделей одной транзакцией (документация)
  • примечание:
    • для корректной работы batchUpdate на бакенде необходимо поставить версию NewPlatform.Flexberry.ORM.ODataService не ниже 5.1.0-alpha01

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry@2.2.0-beta.0

В версию вошли следующие изменения:

  • добавлено:
    • компонент flexberry-lookup:
      • в режиме autocomplete выбирается первое найденное значение при нажатии кнопки Enter
      • добавлен класс для выпадающего списка в режиме dropdown
      • добавлена возможность лукапу в строке групедита указать функцию ограничения, зависящую от других значений в строке
    • компонент flexberry-file:
      • добавлена возможность задать настройки для модального окна предпросмотра
    • списковые компоненты:
      • добавлена возможность добавлять несколько списков на одну форму (инструкция, пример на стенде, на форме редактирования первого списка расположено несколько списков)
  • breaking changes:
    • в компоненте flexberry-objectlistview переименовано свойство _availableCollExpandMode в availableCollExpandMode. Нужно поправить в шаблонах если оно где-то использовалось.
    • из технологического edit-form контроллера удален миксин flexberry-objectlistview-on-edit-form-controller, который использовался для размещения olv на форме редактирования, для сохранения старого поведения необходимо добавить миксин ‘ember-flexberry/mixins/flexberry-objectlistview-on-edit-form-controller’ к контроллерам форм с olv на форме редактирования
    • при создании новых форм с olv на форме редактирования желательно делать их по инструкции для нескольких olv на форме редактирования, даже если olv один (если есть возможность, то старые формы также желательно перевести по инструкции на использование миксинов для нескольких olv на форме редактирования)

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Flexberry ASP.NET 3.1.0 Release

Изменения в Flexberry ASP.NET 3.1.0

Важные изменения

  • Добавлено поле Comment на технологических формах редактирования объектов полномочий, необходимо обновить пакет NewPlatform.Flexberry.Security до версии 2.1.0.

Добавлено

  • Поддержка Nullable-типов для интеграции пользовательских контролов в WebObjectListView.
  • Делегат UniqueKeySaltBuilderDelegate для изменения ключа настроек в WebObjectListView.
  • Сервис ConcurrentDictionarySessionService иеперь очищает истекшие сессии.
  • Статический метод SetAvailableItemsOnPageCounts в классе Pager.
  • Операция FullViewFilter для фильтрации по всем полям в WebObjectListView.
  • Операция HierarchyDisableAutoSelectChildren для отключения автоматического выбора дочерних элементов в иерархическом WebObjectListView.

Исправлено

  • Выполнение валидации на технологических формах.
  • Фильтрация по перечислению, содержащему пустое значение, в WebObjectListView.
  • Кеширование сервиса пользовательских настроек.
  • Фильтрация с использованием контрола DatePicker в WebObjectListView.
  • Закрытие технологических форм редактирования объектов полномочий.
  • Выбор схожих объектов с использованием автодополнения в Lookup контролах.

Изменено

  • Если всплывающая подсказка для ячейки WebObjectListView равна тексту ячейки, всплывающая подсказка будет удалена.
  • Расширен интерфейс ISessionService.

Удалены неиспользуемые сборки

  • ICSSoft.STORMNET.Business.BFDataService.dll
  • ICSSoft.STORMNET.Business.HttpDataService.dll
  • ICSSoft.STORMNET.EBSI.dll
  • ICSSoft.STORMNET.LockServices.dll
  • IIS.Validation.dll
  • ImageResizerKernel.dll
  • SmartScroller.dll

Flexberry Ember 2.1.0/3.1.0 Release

Выпущена версия ember-flexberry-data@2.1.0

В версию вошли следующие изменения:

  • добавлено:
    • зависимость от ember-moment
    • утилита Information:
      • добавлен метод isOrdered для проверки атрибутов
    • Adapter.Odata:
      • добавлены методы callEmberOdataFunction и callEmberOdataAction для получения ember моделей с бэкенда

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry-data@3.1.0

В версию вошли следующие изменения:

  • добавлено:
    • изменения из версии 2.1.0

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry@2.1.0

В версию вошли следующие изменения:

  • добавлено:
    • блюпринты для генерации приложения:
      • добавлена генерация свойства index для полей представлений
    • компонент flexberry-lookup:
      • добавлена кнопка предпросмотра
      • добавлен флаг autocompletePersistValue, отвечающий за необходимость сбрасывать текст для автокомплита при потере фокуса
      • добавлена возможность указать представление для автокомплита (необходимо, если в лукапе автокомплит происходит по вычислимому полю)
      • добавлен флаг autofillByLimit, автоматически проставляющий в лукап значение, если при применении ограничения возвращается только одна запись
    • компонент flexberry-file:
      • добавлена возможность открывать файлы вместо загрузки
    • списковые компоненты:
      • добавлена возможность скрывать кнопку установки сортировки по умолчанию
      • добавлена возможность фиксировать шапку списка (fixedHeader)
    • компонент flexberry-groupedit
      • добавлена возможность добавлять кастомные кнопки в тулбар
      • добавлена кнопка выбора всех записей
      • добавлена поддержка ordered атрибутов
  • изменено:
    • компонент flexberry-lookup:
      • в режиме dropdown теперь используется представление из свойства projection
  • исправлено:
    • миксин reload-list-mixin:
      • исправлена проблема с DatePredicate, когда условие равно neq, а значение null
      • исправлена фильтрация по null для string, number и date
    • компонент flexberry-file:
      • исправлена “крутилка” на превью, если компонент находится в модальном окне

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry@3.1.0

В версию вошли следующие изменения:

  • добавлено:
    • изменения из версии 2.1.0
  • удалено:
    • компонент flexberry-button:
      • удалено использование миксина DomActionsMixin

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Flexberry Security 2.1.0 Release

Изменения в Flexberry Security 2.1.0

  1. Поле Comment добавлено объектам полномочий Agent и Subject.

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

Релиз базовых Docker-образов

Выпущены очередные технологические Docker-образы. Все образы flexberry/alt.p8… пересобраны на основе официального docker-образа ALTLinux.

Образы flexberry/alt.p8

Для mono выпущен flexberry/alt.p8-apache2-mono с новым функционалом по корректировке XML-файлов.

Образ flexberry/alt.p8-apache2 и его дочерний образ flexberry/alt.p8-apache2-mono поддерживают механизм добавления требуемых модулей apache2. Подробнее в README образа.

Также он доступен с наименованиями:

  • flexberry/alt.p8-apache2-mono:4.6.2.7-1.3.0
  • flexberry/alt.p8-apache2-mono:4.6.2.7-1.3
  • flexberry/alt.p8-apache2-mono:4.6.2.7-1
  • flexberry/alt.p8-apache2-mono:4.6.2.7

Образы pentaho 8.2

Для последней версии pentaho 8.2 собраны образы на основе ubuntu и altlinux flexberry/pentaho-official:8.2 и flexberry/alt.p8-pentaho:8.2 (для тестирования в сертифицированных решениях на основе ALTLinux).

Для образов flexberry/pentaho-official:8.2-1.0.9 и flexberry/alt.p8-pentaho:8.2-1.0.0 (документация):

  • Осуществлен переход с версии pentaho:7.1 на pentaho:8.2
  • Для корректной поддержки экспорта кириллических отчетов в PDF установлены шрифты Microsoft TrueType.
  • Удалены файлы для создания данных по-умолчанию в запускаемом Pentaho Server.
  • Удалено задание периодической проверки наличия обновлений.
  • Убрано выпадающее меню с тестовыми пользователями с экрана логина в Pentaho Server.
  • Обеспечена возможность задавать имена пароли и роли новых пользователей с удалением стандартных пользователей joe, pat, suzy, tiffany;
  • Обеспечена возможность смены пароля пользователя admin
  • Добавлены драйвера баз данных: postgresql-42.2.5, clickhouse-0.1.50 (компиляция драйвера производится при создании образа);
  • Образ позволяет в качестве административной базs данных использовать как встроенную базу HSQLDB, так и, при использовании в production, внешнюю реляционную базу (в настоящий момент postgresql).

Образы alt.p8-postgresql

Для образов flexberry/alt.p8-postgresql и flexberry/alt.p8-postgresql-postgis добавлено расширение PostgreSQL tds_fdw, которое может подключаться к базам данных, использующим протокол Tabular Data Stream (TDS), таким как базы данных Sybase и сервер Microsoft SQL.

Образ flexberry/alt.p8-nginx

Собран начальный образ nginx - flexberry/alt.p8-nginx:1.14.2-0.5.7.

Общие изменения

Все пересобранные образы собраны с тегами согласно Semantic versioning и поддерживают минорные, мажорные и версионные теги (рекомендуется в дальнейшем их использовать). Docker-образы поддерживают механизм тегирования: одному образу можно присвоить несколько тегов. По умолчанию собранный docker-образ имеет тег :latest.

Автодокументация API и улучшение поиска по документации

Отличные новости! Теперь в документации Flexberry flexberry.github.io используется поиск от Algolia. Скорее всего, вы уже не раз сталкивались с ним, ведь такой же поиск используется в документациях ember.js, React и так далее. Использование технологии позволяет быстрее находить требуемую информацию в нужной категории.

Кроме этого, для основных технологических репозиториев была настроена автоматическая документация API на основе XML-комментариев кода на C# и YUIdoc-комментариев ember-кода. Примеры документации:

Выпущена версия Flexbery Designer 2018-12-28

Версию можно скачать с сайта designer.flexberry.net.
Обратите внимание, что для генерации ember приложения необходимо в конфиге указывать нужную версию ember-flexberry аддона, по умолчанию указана ember-flexberry@2.0.0.

<appSettings>
  <add key="EmberPluginAddonName" value="ember-flexberry@2.0.0" />
</appSettings>

В данной версии обновлены плагины генерации для поддержки последних версий подсистем платформы Flexberry.

Выпущена версия Flexberry Service Bus 1.2.0

Опубликованны NuGet-пакеты и Docker-образы версий 1.2.0.

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

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

Что нового в версии Flexberry Service Bus 1.2.0

  • Для интеграции с RabbitMQ создан пакет NewPlatform.Flexberry.ServiceBus.RabbitMQ с реализацией следующих компонентов:
    • ReceivingManager - позволяет получать сообщения хранящиеся в RabbitMQ привычным для клиентов Flexberry Service Bus способом
    • SendingManager - позволяет отправлять сообщения в RabbitMQ привычным для клиентов Flexberry Service Bus способом
    • StatisticsService - собирает статистику сообщений RabbitMQ и преобразует ее в статистику Flexberry Service Bus
    • SubscriptionsManager - позволяет управлять маршрутизацией сообщений в RabbitMQ
    • SubscriptionsSynchronizer - актуализирует настройки маршрутизации сообщений в RabbitMQ
    • MessageConverter - преобразует сообщения в формат Flexberry Service Bus
    • MessageManager - позволяет управлять сообщениями хранящимися в RabbitMQ
  • Исправлена ошибка параллельного приема сообщений с группой
  • Обновлены зависимости до последних версий
  • Создан Docker-образ RabbitMQ настроенный для использования с Flexberry Service Bus

Интеграция Flexberry Service Bus и RabbitMQ

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

Для настройки интеграции Flexberry Service Bus и RabbitMQ необходимо:

Выпущена очередная стабильная версия Flexberry ASP.NET 3.0.0

Список изменений во Flexberry ASP.NET - 2.3.0

  • Изменения в зависимостях

    • Обновлен Flexberry ORM до 5.0.0. Внимание! Обновлен Unity до версии 5.x.
    • Интерфейс NewPlatform.Flexberry.Services.ICacheService заменен на NewPlatform.Flexberry.Caching.ICacheService
    • Изменены защищенные виртуальные модификаторы в NewPlatform.Flexberry.Web.Http.PlaceholderPageContentConnector
    • Обновлен Flexberry Security до версии 2.0.0, обновление по инструкции.
    • Удалены зависимости от старых классов Flexberry Security
    • Удалены кеш-декораторы для классов Flexberry Security
    • Удалена EnterpriseLibrary
    • Обновлены версии тем до 3.0.0
  • Общие изменения:

    • Исправлено исключение OutOfRangeException
    • Заменены модификаторы для методов AttachScripts, AttachStyles, AttachRawHtml на protected virtual
    • Добавлена валидация на технологические формы
    • Исправлено сохранение значений контролов во ViewState
    • Исправлено отображение кнопок сохранения в теме BlueSky в Linux
    • Обработчики lookup show и кнопки create перемещены в файл js.
    • Исправлен ArgumentOutOfRangeException при вызове метода Flush
    • Исправить обработчик window.onload в jquery.ics.js
    • Исправлен AddDynamicPageRoute на Mono
  • Изменения в генераторе ASP.NET-приложений

    • Исправлена генерация каталогов: перегенерация только для измененной части модели
  • Редактор ограничений:

    • Исправлено редактирование ограничение с детейлами
  • WOLV:

    • Исправлено удаление всех элементов после нажатия удалить в строке при всех выделенных строках
    • Исправлено открытие модального окна в строке
    • Исправлена обработка отмеченных строк на странице
    • Реализована возможность передавать на клиент ключ функции ограничения, выгруженной в сессию
    • Исправлен BaseResponseStreamFilter
    • Исправлена функция getSelectedItems для .Web.AjaxControls в flex.Wolv.CheckBoxModule.
  • LookUp:

    • Исправлено отображение кнопки просмотра в MasterEditorAjaxLookup в случае, когда в лукапе изначально выбрано значение при открытии формы
    • Исправлены параметры в URL в юникоде при открытии лукапа через ShowObjectUrl
    • Исправлено окно настройки столбцов
    • Исправлена передача title в юникоде при открытии лукапа на просмотр
    • Реализована кнопка добавления новой записи в лукапе
  • DatePicker

    • DatePicker теперь реализует IPostBackDataHandler
  • AjaxGroupEdit

    • Исправлено имя главного динамического представления

Выпущена очередная стабильная версия Flexberry Security 2.0.0

Обновление полномочий желательно проводить по инструкции.

Изменения в Security - 2.0.0

Зависимости

  1. Пакет Flexberry.ORM обновлен до 5.0.0 (см. подробности в новости о выпуске версии ORM 5.0.0).

Новое

  1. Добавлен внутренний кеш в менеджере полномочий.
  2. Добавлено кеширование пользователей и ролей.
  3. Наряду с менеджером безопасности добавлен менеджер агентов для работы с агентами, ролями и группами.
  4. Добавлены провайдеры членства, ролей и профилей, работающие на основе новых классов безопасности.
  5. Метод bool AccessCheck (string operationId) добавлен в интерфейс ISecurityManger. Р​реализация данного метода выполнена для классов SecurityManager и DefaultSecurityManager.

Исправлено

  1. Проект переведен на .NET Framework 4.5.
  2. Все объекты полномочий теперь сериализуемы.
  3. Исправлена ​​и улучшена логика добавления и удаления фильтров в разрешениях на объекты данных.
  4. Пароль пользователя теперь хэшируется в бизнес-сервере класса Агента.
  5. Кэши для менеджеров агентов и безопасности теперь очищаются в бизнес-серверах классов полномочий.
  6. Пользовательские логины, имена ролей и имена групп теперь обрезаются перед выполнением запросов к БД полномочий. То есть например, логины «pupkin» и «pupkin » считают одинаковыми. Перечисленные имена будут храниться без пробелов в БД полномочий.
  7. Устаревшие классы полномочий (RightManager, CheckingLibrary и пр.) перенесены в пакет NewPlatform.Flexberry.LegacySecurity.

Выпущена очередная стабильная версия Flexberry ORM 5.0.0

Изменения в ORM 5.0.0

Новое

  1. Add simply (Update/Insert style) order for write audit operation.
  2. Add interface IODataExportService.
  3. Add geometry type support.
  4. Add CheckLoadedProperty generic extension methods.
  5. Add delegate to check compatible property storage types.
  6. Add PersistUtcDates property to AuditService.
  7. Add PKHelper and FunctionBuilder utilities.

Исправлено

  1. Fix for Init Custom AuditService.
  2. Fix DataService init.
  3. Fix PostgresDataService wrong access to short names dictionary in multithreading app.
  4. Fix support multithreading in View.AddProperty method.
  5. Fix error for inherited aggregator type with same storage.
  6. Fix empty file saving in PostgresDataService.

Изменено

  1. [BREAKINGCHANGE] Upgrade Unity to 5.x version.
  2. Upgrade Npgsql to 3.x version.

Удалено

  1. [BREAKINGCHANGE] Support for .NET 3.5 and .NET 4.0 has been dropped - minimal version has been upgraded to .NET 4.5.

Изменения в ODataService 5.0.0

Новое

  1. Add exception handling in user functions.
  2. Add permissions for masters and details.
  3. Add export to excel with parameters.
  4. Add the ability to export to an excel function odata.

Исправлено

  1. Fix error when query contains same properties.

Изменено

  1. Update dependencies.
  2. Update ODataService package version to according ORM package version.

Переход на .NET 4.5

В связи с тем, что основной перечень создаваемых на платформе приложений уже давольно давно был переведён на .NET 4.5, было принято решение отказаться от использования .NET 3.5 в качестве основной версии при выпуске новых релизов. Напомним, что ранее Flexberry ORM поставлялся в виде NuGet-пакета, в котором присутствовали 3 версии: net35, net40, net45. Начиная с версии Flexberry ORM 5.0.0 в NuGet-пакете останется только net45.

В чём польза

Данное решение позволяет обновить зависимости, в частности Unity и npgsql, поскольку свежие версии этих пакетов также были лишены сборок для .NET ниже версии 4.5. Также технологам открываются возможности из .NET 4.5.

Что будет с проектами на .NET 3.5 и 4.0

Если проект не может по тем или иным причинам обновить версию .NET до 4.5, то остаётся возможность использования версии Flexberry ORM 4.1.0 включительно. В случае острой необходимости, по запросу будут выполняться работы по переносу исходного кода из текущей версии в ветки со старыми версиями и выпускаться обновления.

Про сломанную обратную совместимость и NuGet

Обновление ORM до версии 5.0 требует некоторого вмешательства в прикладной набор пакетов и, иногда, в исходный код - обратная совместимость нарушена из-за обновления пакетов Unity: потребуется перенастроить конфигурационные файлы и, возможно, using-и, поскольку у них сменились некоторые неймспейсы и названия сборок. Теперь используются следующие пакеты:

<dependency id="Unity.Abstractions" version="3.3.0" />
<dependency id="Unity.Configuration" version="5.2.2" />
<dependency id="Unity.Container" version="5.8.6" />

После обновления ORM до версии 5.* эти зависимости установятся автоматически, но обязательно нужно вручную удалить пакет (через NuGet Package Manager)

<dependency id="Unity" version="[2.1.505.2]" />

В конфигурационном файле нужно выполнить следующие изменения.
Было:

<section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration" />
<!-- ... -->
<alias alias="singleton" type="Microsoft.Practices.Unity.ContainerControlledLifetimeManager, Microsoft.Practices.Unity" />

Стало:

<section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Unity.Configuration" />
<!-- ... -->
<alias alias="singleton" type="Unity.Lifetime.ContainerControlledLifetimeManager, Unity.Abstractions" />

В C# коде там где использовался неймспейс:

using Microsoft.Practices.Unity;

Теперь будет:

using Unity;

Выпущена версия ember-flexberry-data 3.0.0 и ember-flexberry 3.0.0

Переход на Ember ~3.1.3

В дальнейшем доработки в версии Flexberry Ember, которая основана на ember-cli@3.х будут выполняться в версии 3.х. В данном релизе был совершен переход с EmberJS 2.4.3 на ~3.1.3. Подробная инструкция по обновлению EmberJS и Flexberry Ember на существующем проекте будет подготовлена позже (пока можно пользоваться данными из открытых источников).

В версию ember-flexberry-data 3.0.0 вошли следующие изменения:

  • breaking changes:
    • Из Projection.Model удален механизм валидации, предоставляемый аддоном ember-validations (для валидации теперь используется другой аддон)

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

В версию ember-flexberry 3.0.0 вошли следующие изменения:

  • добавлено:
    • блюпринты для генерации приложения:
      • слияние сгенерированных файлов локализации с уже существующими
      • для моделей генерируется локализация для всех атрибутов
    • зависимости от ember-cp-validations@~3.5.2 и ember-i18n-cp-validations@~3.1.0
    • компонент flexberry-sidebar
    • компонент flexberry-sitemap
  • изменено:
    • компонент flexberry-dropdown:
      • убрано использование компонента ui-dropdown из аддона semantic-ui-ember
    • компонент modal-dialog:
      • убрано использование компонента ui-modal из аддона semantic-ui-ember
    • функция run.after переименована в runAfter и перенесена из initializer в utils
    • компонент flexberry-validationsummary:
      • свойство headerText переименовано в header
      • в шаблоне для заголовка добавлен div с классом header
    • компонент flexberry-validationmessage:
      • у свойства pointing изменено значение по умолчанию на ‘pointing’
    • контроллер edit-form выполняет валидацию до попытки сохранить модель
    • миксин flexberry-objectlistview-on-edit-form-controller:
      • свойство customFolvContent не может иметь promise в качестве значения
  • исправлено:
    • блюпринты для генерации приложения:
      • исправлена генерация длинных строк для JSCS
    • миксин flexberry-objectlistview-route:
      • присваивание текущего контроллера при переходе на форму редактирования
    • получение контроллера для списковой формы
    • flexberry-toggler компонент:
      • вложенные друг в друга toogler’ы теперь работают корректно
    • компонент flexberry-lookup:
      • настройки иерархии для lookup-dialog
      • инициализация semantic dropdown для лукапа в режиме dropdown
    • компонент flexberry-objectlistview:
      • смена локализации в мобильном режиме
      • свойство recordsTotalCount в мобильном режиме
    • компонент modal-dialog:
      • инициализация настроек
    • компонент olv-toolbar:
      • стили кнопок экспорта и настройки столбцов
  • удалено:
    • шаблоны sitemap, sitemap-node, sitemap-node-content
    • контроллер sitemap-node
    • компонент flexberry-simpleolv
    • компонент flexberry-datepicker (вместо него рекомендуется использовать компонент flexberry-simpledatetime)
    • зависимость от аддона ember-validations@~2.0.0-alpha.4
  • breaking changes:
    • компонент flexberry-objectlistview:
      • query параметры из свойства customParameters передаются по отдельности (раньше они передавались одним объектом customParameters)
    • удалена зависимость от semantic-ui-ember
    • semantic-ui обновлен до 2.3.1
    • механизм валидации был изменен, желательно перегенерировать приложение
    • компонент flexberry-lookup:
      • в шаблоне свойство items должно идти до свойства value
      • в режиме dropdown множество настроек для semantic ui, заменены на свойство dropdownSettings
    • компонент flexberry-dropdown:
      • множество настроек для semantic ui, заменены на свойство settings

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry-data 2.0.0 и ember-flexberry 2.0.0

На смену версии 0.12.1 приходит версия 2.0.0. В дальнейшем доработки в версии Flexberry Ember, которая основана на ember-cli@2.4.3 будут выполняться в версии 2.х.

В версию ember-flexberry-data 2.0.0 вошли следующие изменения:

  • добавлено:
    • в базовом сериализаторе (Serializer.Base) добавлен метод normalize для обновления typeClass в случае полиморфной связи
    • Query language: GeometryPredicate для геометрического типа данных
  • исправлено:
    • в OData сериализаторе (Serializer.OData) исправлен метод normalize для обновления typeClass в случае полиморфной связи

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

В версию ember-flexberry 2.0.0 вошли следующие изменения:

  • добавлено:
    • блюпринты для генерации приложения:
      • генерация componentName для лукапов
    • роуты формы редактирования:
      • возможность передавать имя модели в query параметрах. Пользовательские query параметры можно передать через свойство customParameters в options экшена objectListViewRowClick
    • компонент flexberry-simpledatetime:
      • свойства defaultHour и defaultMinute для установки времени по умолчанию
    • списковые компоненты:
      • свойство для пользовательских кнопок disabled для возможности контроллировать состояние пользовательских кнопок
    • компонент flexberry-file:
      • свойство headers для добавления заголовков в запрос скачивания файла
  • исправлено:
    • списковые роуты:
      • удаление блокировки при уходе с роута
    • списковые компоненты:
      • убрана возможность нажимать неактивные кнопки путем установки фокуса и нажатия Enter
      • фильтр по колонкам с типо дата
      • применение пользовательских настроек, если query параметры не менялись
    • компонент flexberry-file:
      • меню в мобильной версии компонента
      • превью в случае, когда компонент находится внутри flexberry-groupedit
      • открытие файла вместо загрузки, если файл был удален из компонента, но еще остался на сервере
    • компонент colsconfig-dialog-content:
      • сохранение имен колонок при экспорте в excel
    • компонент flexberry-tab-bar:
      • добавление класса active к текущей вкладке
    • компонент flexberry-simpledatetime
      • установка времени после сброса значения компонента

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry 0.12.1

[UPDATE] После выпуска версии 0.12.1 были выпущены дополнительно версии 0.12.2 и 0.12.3. В них вошли следующие изменения:

  • исправлено:
    • отсутствующие вызовы _super-методов внутри ряда технологических методов. Это могло приводить к неправильному поведению в ряде мест технологии, например, к несрабатыванию технологического хука routeWillTransition в контроллерах форм редактирования
    • работа свойства inHierarchicalMode в настройках лукапа внутри метода getLookupFolvProperties. Пример на стенде можно посмотреть тут. Документацию можно посмотреть тут
    • переход на списковую форму при наличии кастомных параметров

В версию ember-flexberry 0.12.1 вошли следующие изменения:

  • добавлено:
    • блюпринты для генерации приложения:
      • аддитивное слияние содержимого файлов локализации при прегенерации приложения
    • сервисы:
      • управление визуальным отображением загрузки данных (“крутилки”) сделано глобальным и вынесено в сервис app-state Внимание! Использование свойства loadingState и метода setLoadingState сервиса objectlistview-events переведено в состояние Deprecated до выпуска версии ember-flexberry@1.0.0! Начиная с этой версии данное свойство и метод будут удалены из сервиса objectlistview-events! Для использования сервиса app-state необходимо во всех шаблонах приложения код добавления класса {{objectlistviewEventsService.loadingState}} в разметке заменить на {{appState.state}} (в том числе в шаблоне application.hbs), а в контроллеры соответствующих форм добавить инъекцию сервиса app-state.
  • исправлено:
    • блюпринты для генерации приложения:
      • длина строк при генерации моделей не соответствовала правилам JSCS
    • списковые роуты:
      • ошибки, связанные со сбросом параметров запроса в URL
      • неправильное обращение к контроллеру при загрузке модели
    • списковые компоненты:
      • некорректно отображается элемент для выбора количества строк в IE при небольшой ширине списка
    • компонент flexberry-objectlistview:
      • вычислимое свойство colsSettingsItems перезаписывало само себя
      • не отображается сообщение об успешном сохранении настроек при экспорте в Excel
    • компонент flexberry-toggler:
      • закрытие вложенного toggler закрывало родительский toggler
      • проблемы со стилями вложенных элементов после сворачивания и разворачивания toggler
    • компонент flexberry-lookup:
      • вывод сообщения об отсутствии подходящего значения при включенном автокомплите
    • компонент flexberry-textbox:
      • компонент неправильно отображается с классом input error
    • компонент flexberry-dropdown:
      • компонент переставал работать при наличии null-значений в перечне отображаемых элементов
    • сервис user-settings:
      • неправильное отображение страниц при выключении сервиса пользовательских настроек

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия ember-flexberry-data 0.12.0 и ember-flexberry 0.12.0

В версию ember-flexberry-data 0.12.0 вошли следующие изменения:

  • добавлено:
    • для базового стора (Offline.Store) добавлен оналйновый стор (Projection.OnlineStore) для возможности явного переопределения методов в нем
    • для базового стора и соответственно онлайнового/оффлайнового сторов, а также для Adapter.OData реализованы методы deleteAllRecords для удаления всех записей со всех страниц Внимание! Для поддержки этого функционала в OData-бакенде должен быть реализован экшн DeleteAllSelect.
  • изменено:
    • Query language: теперь невозможно создать Query.DatePredicate с недопустимым значением даты или значением null
    • Добавлена поддержка различных типов первичных ключей в запросах к OData-бакенду Внимание! Свойство idType, для определения типа первичного ключа на бакенде, перенесено из адаптера Adapter.OData в модель Projection.Model
  • исправлено:
    • сохранение полей аудита в случаях, когда текущее имя пользователя из свойства currentUserName модели возвращает промис
    • Query language:
      • возможность использования Query.DatePredicate для Query.JsAdapter без указания времени (в timeless-режиме)
      • создание запросов для моделей со строковым типом первичного ключа

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

В версию ember-flexberry 0.12.0 вошли следующие изменения:

  • добавлено:
    • компонент flexberry-toggler: теперь сохраняет статус в пользовательских настройках (имя компонента в параметре componentName шаблона должно быть указано!)
    • списковые компоненты:
      • возможность удаления всех записей, когда выделены все элементы на всех страницах (с учетом текущего фильтра) Внимание! В шаблонах форм для списковых компонентов должен быть добавлен параметр beforeDeleteAllRecords для передачи экшна, который будет срабатывать пере удалением всех элементов на всех страницах (в технологическом контроллере списковой формы добавлен одноименный экшн, который может передаваться по умолчанию). Все предупреждения при удалении записей по кнопке “все со всех страниц” должны быть добавлены на прикладном уровне в экшн beforeDeleteAllRecords в контроллере соответствующей списковой формы. При невыполнении указанных условий удаление всех записей со всех страниц будет осуществлятсья сразу без предупреждений, что чревато серьезными потерями данных у заказчиков!
    • компонент flexberry-objectlistview:
      • свойство customButtonsInRow для добавления кнопок в строки (по аналогии с свойством customButtons)
      • возможность передать функцию в свойстве buttonAction для свойств customButtons и customButtonsInRow
      • возможность переименования столбцов при экспорте в Excel
    • компонент flexberry-error и шаблон error теперь поддерживают перевод сообщений об ошибках, если в сообщении об ошибке указано свойство messageLocaleKey
  • изменено:
    • cортировка, применяемая при нажатии на заголовок столбца, сохраняется в пользовательских настройках
    • при установке или обновлении аддона с помощью команды ember install ember-flexberry версия аддона ember-data принудительно понижается до 2.4.3
  • исправлено:
    • мелкие исправления внешнего вида и поведения компонентов, в том числе в мобильном режиме
    • списковые компоненты:
      • отображение спиннера при применении пользовательских настроек из диалогового окна
    • компонент flexberry-objectlistview:
      • возможность отмечать все элементы на всех уровнях иерархии в иерархическом режиме
      • поведение кнопок из служебныйх столбцов в строках в иерархическом режиме
      • после отключения иерархического режима на мобильном устройстве кнопка для отображения/скрытия вложенных записей больше не остается
    • компонент flexberry-simpledatetime: невозможность выбора крайних значений диапазона дат, когда установлены минимальные или максимальные значения
    • компонент flexberry-lookup: при слишком “длинном” значении (когда значение больше области для его вывода) в мобильном режиме добавлен перенос слов

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Выпущена версия Flexberry Service Bus 1.1.0

Что нового в версии Flexberry Service Bus 1.1.0

  • Переведены на русский язык заголовки в представлених для объектов данных шины.
  • Исправлена логика работы свойства Description для объекта Subscription.
  • Обновлен пакет Npgsql до версии 3.0.8.

Автоматизация сборки Docker-образов

kpv
Разработка приложений уровня предприятия заканчивается успешной установкой информационной системы и её внедрением в бизнес-процессы. Для обеспечения успешной интеграции приложения в действующие бизнес-процессы, как правило, разрабатывают инструкции и проводят учебные курсы. Установка и внедрение приложений в корпоративную инфраструктуру может быть выполнена различными способами: ручная установка и настройка непосредственно на виртуальных или физических машинах, или более современный вариант - автоматизированное разворачивание кластера или стека сервисов, представляющих собой контейнеры. Промышленным стандартом для контейнеризации можно считать решение Docker, которое разрабатывается одноимённой компанией. Подробнее об использовании Docker для разворачивания решений можно прочитать в статье о базовых технологиях платформы Flexberry.
Платформа Flexberry предоставляет возможности по созданию сложных корпоративных приложений, каждое из которых может быть развёрнуто в виде некоторого количества отдельных сервисов. Каждый из таких сервисов может быть естественным образом представлен в виде Docker-контейнера. В самом простейшем варианте один сервис может содержать базу данных PostgreSQL, а второй сервис – веб-приложение.
Для удобного создания Docker-контейнеров, включающих в себя сервисы разрабатываемых решений в платформе Flexberry предусмотрен ряд базовых образов. В Docker реализован механизм наследования, который позволяет «добавлять» в базовый образ что-то новое. Docker-образы строятся на основе файлов специального вида – Dockerfile. Ввиду того, что платформа Flexberry соблюдает принцип свободного программного обеспечения, набор Dockerfile для всех базовых образов опубликован в открытом репозитории на GitHub.
Компания Docker предоставляет не только программное обеспечение для создания образов и запуска контейнеров, но и ряд интернет-сервисов, облегчающих работу с контейнерами. Так, для открытых проектов доступен репозиторий Docker-образов – Docker Hub. Этот репозиторий может использоваться для получения популярного ПО, которое уже кто-нибудь «научил» работать в Docker-контейнере. Базовые Docker-образы, которые разработаны для проектов на Flexberry расположены в разделе организации Flexberry.
Разработчикам образов Docker Hub предоставляет возможность автоматизации процесса сборки Docker-образов. Используя этот подход, все базовые Docker-образы Flexberry собираются и публикуются в репозитории в автоматическом режиме. Это позволяет быстро выполнять доработку образов, в том числе принимать Pull request от сообщества, если пользователям платформы потребуется внести что-нибудь нужное в базовые образы. В качестве ещё одного примера успешного использования контейнеризации можно рассказать о Flexberry Service Bus, которая может быть легко развёрнута и запущена на компьютере по краткой инструкции.

Выпущена очередная стабильная версия Flexberry Service Bus 1.0.1

Flexberry Service Bus это сервисная шина с открытим исходным кодом размещенным на GitHub. Подробнее со структурой проектов и списком репозиторием можно ознакомиться в статье Разработка Flexberry Service Bus на сайте документации платформы Flexberry.

Результатами работ над проектом Flexberry Service Bus являются следующие продукты:

Для начала работы можно воспользоваться статьями Установка и запуск шины в Docker, Пример WCF-адаптеров и Пример REST-адаптера шины.

Что нового в версии Flexberry Service Bus 1.0.1

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

Выпущена очередная стабильная версия Flexberry ORM 4.1.0

Все коммиты теперь сопровождаются сборкой на Travis-CI под mono (без интеграционных, но с выполнением автономных модульных тестов).
С целью синхронизации версий NuGet-пакетов ORM и ODataService была поднята версия пакета ODataService до 4.1.0. В дальнейшем они будут выпускаться синхронно, чтобы избежать путаницы, поскольку между ними есть прямая зависимость.

Изменения в ORM 4.1.0

Added

  1. Add support Microsoft.Spatial.Geography for Net Framework 4.5.
  2. Add support string conversion to Microsoft.Spatial.Geography in Information.
  3. Add PostgresDataService method for comparing types.
  4. Add support Nullable<DateTime> and NullableDateTime for DateTime properties (Day, Month, Year, etc.).
  5. Add property for set connection string by name in DataService. Need confugure IConfigResolver in Unity config section
  6. Add ICSSoft.STORMNET.TuneStaticViewDelegate for tune static Views.

Fixed

  1. Fix LINQ to LCS when sorting with types convert.
  2. Fix error when use unsigned types in LINQ expression.
  3. Fix using UnityFactory.CreateContainer method instead of UnityFactory.GetContainer. It should increase performance.
  4. Fix update error Geography type.
  5. Fix converting LINQ expressions with sorting to custom nullable types.
  6. Fix sql query sequence for delete hasMany data objects with cyclic associations.

Changed

  1. Remove implicit dependency from ICSSoft.STORMNET.RightManager. Now implementation of ISecurityManager specified via Unity is used instead.
  2. Optimized requests to Postgres if LCS has a populated RowNumber property.

Изменения в ODataService 4.1.0

Added

  1. Add support user function geo.intersects.
  2. Add support LoadingCustomizationStruct in user functions.
  3. Add support actions.
  4. Add handler, called after exception appears.
  5. In user functions and actions add possibility to return collections of primitive types and enums. In actions add possibility to use primitive types and enums as parameters.

Fixed

  1. Fix reading properties of files.
  2. Fix error which occured in Mono in method DefaultODataPathHandler.Parse(IEdmModel model, string serviceRoot, string odataPath).
  3. Fix errors in work of user functions.
  4. Fix error in association object enumeration filtration.

Changed

  1. Update dependencies.
  2. Update ODataService package version to according ORM package version.

Выпущена версия ember-flexberry-data 0.11.0 и ember-flexberry 0.11.0

В версию ember-flexberry-data 0.11.0 вошли следующие изменения:

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

В версию ember-flexberry 0.11.0 вошли следующие изменения:

  • добавлены:
    • компонент flexberry-groupedit:
      • сохранение ширины столбцов в пользовательских настройках
      • кнопка для восстановления пользовательских настроек по умолчанию (флаг defaultSettingsButton)
      • кнопка сброса сортировки
    • компонент flexberry-lookup:
      • поддержка пользовательских настроек (для списков лукапа теперь можно задавать developerUserSettings, пример)
      • поддержка perPage
      • поддержка режима иерархии (пример)
    • компонент flexberry-objectlistview:
      • возможность использовать вычислимые свойства в getCellComponent (статья)
    • форма редактирования:
      • прокрутка формы редактирования вверх при возникновении ошибок сохранения
  • изменены:
    • для совместимости с Ember Inspector восстановлено свойство tagName у приложения
    • в логах поле processName теперь содержит имя приложения (ENV.modulePrefix из environment.js)
    • на форме редактирования в методе onSaveActionRejected теперь можно обработать ошибки сохранения для каждого детейла (в данный метод приходит массив с результатами промисов по всем детейлам, как успешным, так и неуспешным)
    • заголовок окна настройки экспорта в Excel
  • исправлено:
    • списковые компоненты:
      • свойство readonly из componentProperties для динамических компонентов (встроенных в ячейки)
      • отображение ошибки о недоступности сервера
    • тема blue-sky:
      • ширина компонента flexberry-checkbox
      • отображение placeholder’ов в IE
    • компонент flexberry-simpleolv:
      • диалоговое окно “Показать установки” из выпадающего меню пользовательских настроек
    • компонент flexberry-lookup:
      • обновление отображаемого свойства при изменении displayAttributeName
      • имя компонента для списка в окне выбора
    • компонент flexberry-groupedit:
      • ошибки валидации когда editOnSeparateRoute и saveOnRouteLeave равны true
      • возможность изменять ширину столбцов, если свойство allowColumnResize было изменено динамически
    • компонент flexberry-file:
      • внешний вид в мобильном режиме
      • отображение ошибок в мобильном режиме
      • отображение превью, если загруженный файл не изображение
    • компонент flexberry-modal:
      • скрытие затемнения при закрытии окна выбора с помощью кнопки “Закрыть”
    • blueprints:
      • генерация локализаций в аддон
    • компонент flexberry-objectlistview:
      • загрузка записей иерархии
      • отображение olv-toolbar в мобильном режиме
    • компонент colsconfig-dialog-content:
      • пропадающее содержимое некоторых ячеек при изменении размера окна браузера
    • компонент flexberry-simpledatetime:
      • блокировка кнопки очистки значения при readonly режиме в IE
    • зависание на списковых и формах редактирования когда сеть недоступна
    • настройки пользователя для форм создания новых записей
  • удалено:
    • компонент flexberry-objectlistview:
      • свойство columnsWidthAutoresize в мобильной версии компонента
    • компонент flexberry-lookup:
      • свойство orderBy (теперь сортировка задается через developerUserSettings)

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Инструкция по обновлению с версии 0.10.0:

  • controllers.application.js:
    • добавить метод updateWidth
    • привести методы toogleSidebar и toogleSidebarMobile в соответствие с application.js
  • templates/application.hbs:
    • в компонент ui-sidebar добавить параметры как в application.hbs
    • для мобильной версии: application.hbs
  • templates/error.hbs:
    • привести в соответствие с error.hbs
  • views/application.js:
    • если тут есть только переопределения свойства tagName: '' и нет дополнительной прикладной логики, то можно удалить этот файл, иначе удалить только tagName: ''
  • так как sidebar теперь не прямой потомок тега body, а в отдельном блоке с классом ember-view, который в свою очередь уже является первым прямым потомком body, то возможно придется поправить прикладные стили (если была привязка стилей к sidebar’у как к прямому потомку body)
  • если на какой-либо из форм используется фильтрация по датам без времени, то нужно формировать предикат для дат с флагом timeless равным true

Flexberry RFC

Что такое Flexberry RFC

Flexberry RFC - это так называемый процесс запросов на комментарии (RFC - Request For Comments), который обеспечивает возможность согласованного и контролируемого принятия более “существенных” изменений, касающихся платформы Flexberry.

Запуск процесса RFC для платформы Flexberry - это еще один шаг в направлении открытости платформы и возможности ее доработки силами сообщества.

Различные OpenSource-проекты имеют аналогичный процесс - например, RFC для фреймворка Ember.js, RFC для языка RUST.

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

Кому и как это поможет

  1. Запуск данного процесса обеспечивает возможность фиксации всех пожеланий по доработке платформы Flexberry. Поэтому все прикладные проекты, желающие, чтобы какие-либо их доработки попали в технолигию, могут сформулировать соответствующий документ RFC и запустить процесс публичного обсуждения и согласования соответствующих идей. По результатам обсуждения будет сформулировано и зафиксировано решение, которое может быть добавлено в исходный код платформы либо технологами, либо прикладными разработчиками (в зависимости от наличия свободных ресурсов и срочности доработок).
  2. Данный процесс также позволит прикладным проектам участвовать в обсуждении более существенных доработок, которые будут внедряться в платформу технологами в плановом режиме.
  3. В перспективе данный процесс будет являться инструментом для включения в платформу функционала со стороны сообщества.

Куда смотреть и что делать

Более подробно с процессом Flexberry RFC можно ознакомиться здесь: https://github.com/Flexberry/rfcs

Выпущена версия ember-flexberry-data 0.10.0 и ember-flexberry 0.10.0

В версию ember-flexberry-data 0.10.0 вошли следующие изменения:

  • добавлено:
    • функция hasChangedBelongsTo для проверки изменений ‘belongsTo’
    • NotPredicate для выражений not
    • теперь адаптеры отвечают на ошибки, ожидаемые в формате OData JSON
  • изменено:
    • получение текущего имени пользователя для всего приложения теперь можно вызвать, вызвав метод getCurrentUserName
  • исправлено:
    • при расширении Projection.Model и использовании наследования вся иерархия моделей имеет общий объект проекций
    • отслеживание изменений для syncUp при изменении ‘belongsTo’
    • GeographyPredicate для flexberry-gis

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

В версию ember-flexberry 0.10.0 вошли следующие изменения:

  • добавлены:
    • контрол для отображения ошибок flexberry-error
    • кнопка удаления и отображения ошибок для flexberry-simpledatetime
    • выделение всех элементов списка и всех элементов списка на странице
    • очистка установленной сортировки
    • кнопки свернуть/развернуть для иерархического списка
    • локализация и сортировка для автокомплита в flexberry-lookup
    • свойство управления длиной текста для flexberry-field and flexberry-textbox
  • изменены:
    • отображение ошибок на списках и формах редактирования (через компонент flexberry-error)
    • работа фильтров (фильтрация по пустому значению, использование Enter)
    • метод beforeDeleteRecord теперь поддерживает асинхронный режим
    • получение текущего имени пользователя
    • режим readonly для flexberry-datepicker
  • исправлено:
    • функционирование иерархического списка
    • фильтрация элементов списка
    • функционирование flexberry-simpleolv с пользовательскими настройками по умолчанию
    • теперь журнал не пытается сохранить неопределенные ошибки
    • функционирование flexberry-simpledatetime для мобильных устройств, а также в режиме readonly и обработка введеного значения
    • тема blue-sky для мобильных устройств, стили для модальных диалогов, отображение боковой панели и высота содержимого страницы.
    • поддержка checked для IE
    • создание шаблона компонента flexberry-groupedit в формах редактирования

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Инструкция по обновлению:

  • Новость от 29.09.2017
  • При обновлении с ember-flexberry 0.9.2-beta.2 нужно перегенерировать приложение, либо внести изменения вручную:
    • В шаблоне application.hbs у блока с классом “full height”, удалить «style=”min-height: 90vh”» (если это не было изменено на прикладном уровне)
    • В шаблонах форм редактирования добавить {{flexberry-error error=error}} после тега «form» Пример
    • В шаблонах списковых форм добавить {{flexberry-error error=error}} в начало Пример
    • В папку с шаблонами добавить error.hbs

Выпущена версия ember-flexberry 0.9.1

В версию вошли следующие доработки:

  • Добавлены темы оформления.
  • Добавлена возможность экспорта списка в excel.
  • В аддон перенесены некоторые компоненты из ember-flexberry-gis.

Более подробно со списком изменений можно ознакомиться в CHANGELOG.md:

Инструкция по обновлению с версии ember-flexberry без тем:

Если есть возможность, то желательно сгенерировать приложение в чистую папку, а затем перенести в него прикладную логику. Иначе нужно:

  • В packages.json добавить "ember-block-slots": "1.1.3" и "ember-cli-less": "^1.5.4". Удалить "ember-cli-sass". Изменить версии "ember-data": "~2.4.3" и "ember-flexberry": "0.9.1".
  • В bower.json добавить "js-beautify": "1.6.4", "jquery-minicolors": "2.2.6" и "seiyria-bootstrap-slider": "6.0.6". Изменить версии "semantic-ui": "git://github.com/Flexberry/Semantic-UI.git#fixed-abort" и "flatpickr-calendar": "2.3.4".
  • Выполнить npm install/bower install.
  • ember-cli-build.js привести в соответствие с ember-cli-build (если необходимо, добавить прикладную логику).
  • В app/index.html после content-for "body" добавить <script src="//cdn.polyfill.io/v1/polyfill.js?features=es6"></script>.
  • app/styles/app.scss переименовать в app/styles/app.less, добавить в начало @import "src/semantic"; и @import "node_modules/ember-flexberry/addon/styles/addon";. Также проверить нет ли в этом файле чего-нибудь несовместимого с less. Для аддона проделать то же самое для addon/styles/addon.scss.
  • Добавить theme.less в app/styles или в addon/styles (для приложения и аддона соответственно).
  • Добавить theme.config в папку спроектом. В конце файла указать путь к theme.less из предыдущего шага.
  • Добавить в vendor font-icon.css, папки fonts и serviceImages из ember-flexberry.
  • В locales/локализация/model для всех моделей в представлениях поменять caption на __caption__.
  • В шаблонах форм редактирования:
    • Удалить state из классов формы.
    • Удалить класс positive у кнопок Сохранить и Сохранить и закрыть, добавить классы save-button и save-close-button соответственно.
    • Удалить класс negative у кнопки удаления, добавить ей класс save-del-button.
    • Кнопке закрытия добавить класс close-button.
  • В приложении в app/controllers/application.js добавить objectlistviewEventsService и привести toggleSidebar/toggleSidebarMobile в соответствие с application.js.
  • В приложении в app/controllers/sitemap-node.js добавить subMenuEl в соответствие с sitemap-node.js.
  • В приложении app/templates/application.hbs привести в соответствие с application.hbs. Скорее всего этот шаблон нужно будет доверстать под проект. В мобильной версии этого шаблона нужно toogleSidebar заменить на toogleSidebarMobile.

Выпущена стабильная версия Flexbery Designer 2017-08-22

Обновить Flexberry Desinger можно, скачав с сайта flexberry.ru. Инструкция по установке находится в статье Установка Flexberry Designer, раздел Установка новой версии Flexberry Desinger (обновление).

Список изменений

  • Общее
    • Исправлена ошибка генерации, если в интрефейсе есть два метода с одинаковыми именами, но с разными сигнатурами.
    • Изменены имена генерируемых сборок, теперь по умолчанию они будут генерироваться без скобочек, и вместо - Namespace.ProjectName(Objects) - Namespace.ProjectName(BusinessServers) - Namespace.ProjectName(BusinessServersBF) - Namespace.ProjectName(ASP.NET Application)

      теперь по умолчанию будут генерироваться имена
      
      - `Namespace.ProjectName.Objects`
      - `Namespace.ProjectName.BusinessServers`
      - `Namespace.ProjectName.BusinessServersBF`
      - `Namespace.ProjectName.ASP.NET Application`
      
      чтобы это не мешало перегенерации уже существующих проектов, в свойствах стадии `ORM -> C# -> Свойства модели` была добавлена дополнительная настройка, позволяющая настроить шаблон для генерируемых имен.
      
      По умолчанию он выглядит так `{Name}.{Purpose}`, чтобы вернуть скобочки в имена сборок, потребуется изменить его на `{Name}({Purpose})` на вкладке `Дополнительно` на форме `Дополнительные настройки`.
      
  • Плагины
    • ORM
      • Добавлены пункты меню для генерации полномочий в плагин ORM -> SQL -> PostgreSQL
      • Пункты меню под плагины DocGen, HistoryPlugin, MoveCase перемещены в ORM -> Утилиты
      • Убран пункт меню ORM -> SQL -> ... -> Сгенерировать SQL, для генерации скриптов нужно использовать ORM -> SQL -> ... -> Привести БД в соответствие с моделью
    • Ember
      • Добавлена генерация бакенда
      • Добавлена генерация метаданных для фронтенда отдельно от всего остального
      • Добавлена обработка external-классов при генерации метаданных
      • Возможность генерации для фронтенда для каждого отдельного класса (доступно из контекстного меню класса)
    • ASP.NET
      • Генератор приведен в соответствие с версией Flexberry ASP.NET 2.3.0
      • Убрана установка пакетов со всеми темами при генерации нового приложения, теперь по умолчанию устанавливаются только темы Spring и BlueSky
      • Исправлена транслитерация при генерации форм с ь/ъ - теперь эти символы пропускаются.
      • Исправлена перегенерация базовых и технологических форм (не меняются существующие, не имеющие локальных изменений)

Обратная связь

Замечания и пожелания, касающиеся Flexberry Designer-a и его плагинов, можно направлять на электронную почту.

Выпущена очередная стабильная версия Flexberry Winforms 3.0.1

В версию вошли следующие доработки:

  • Исправлен поиск по пустому списку.
  • Добавлена возможность работы ExtendedLookUp c несколькими DataObjectTypes.

Выпущена очередная стабильная версия Flexberry ASP.NET 2.3.0

Список изменений во Flexberry ASP.NET - 2.3.0

  • Изменения в зависимостях
  • Общие изменения:
    • Исправлена ошибка порядка обновления агрегатора и детейла с циклической связью (если объект является необязательным мастером ассоциации для своего агрегатора).
    • CustomSiteMapProvider.dll был удален из-за конфликта версий и был изменен на CustomSiteMapProvider.cs, включенный в ICSSoft.STORMNET.Web.Tools.
    • Добавлены вкладки для страниц Администрирование: Группы и Операции.
    • Название темы Crimea изменено на BlueSky (пакет с темой оформления под старым названием Crimea по прежнему находится в nuget-галерее, но более не будет обновляться).
    • Добавлена возможность включения SupportsCredentials для CORS (в пакете Flexberry ASP.NET WebAPI CORS extensions 1.1.0).
    • Исправлена ошибка при построении ограничения для lcs по полю даты, когда имя поля совпадает со свойством DateTime.
  • Изменения в генераторе ASP.NET-приложений
    • Исправлена транслитерация для ьЬъЪ в ASPNETCasePlugin.
    • Исправлена перегенерация технологических файлов: при перегенерации технологические файлы исключены из изменений, если они не менялись локально.
    • Изменена генерация ключа для кеширования XML в WebBinder’е: сейчас он уйсточив к изменениям модели.
    • Исправлена ошибка генерации, если в интрефейсе есть два метода с одинаковыми именами, но с разными сигнатурами.
    • Добавлена обработка external-классов при генерации метаданных.
  • AiaxGroupEdit:
    • Исправлена сортировка по мастеровым полям.
    • При неправильном представлении теперь выводится ошибка, в которой есть информация о названии контрола на странице.
    • Исправлена проблема с фоном, закрывающим собой границы в Firefox и Internet Explorer.
    • В обработчик нажатия на кнопку редактирования в строке детейла добавлена проверка на новую строку.
  • Аудит:
    • Реализовано использование Caption из представления AuditView в объектно-ориентированной форме аудита.
    • Исправлена загрузка данных аудита из другой БД.
  • Редактор ограничений:
    • Изменена и дополнена логика редактирования выражения в редакторе ограничений:
      • Изменение выражения осуществляется только через дерево атрибутов при редактировании правого выражения реализована возможность изменить знак операции и левое выражение;
      • В правое выражение запрещено подставлять тот же атрибут что находится в левом выражении;
      • При попытке снять выделение с редактора правого выражения при невалидном значении, если возможно, возвращается последнее валидное значение (по аналогии с кнопкой ESC).
    • Доработана панель инструментов редактора ограничений:
      • На вкладке “Главная” блок “Применить ограничение” объеденен с блоком “Действия” и назван “Действия”;
      • За блоком назван “Действия” размещен блок “Свойства”;
      • При попытке сохранить ограничение без имени, фокус переходит на поле “Имя ограничения” и выводится подсказка.
    • Реализовано добавление пустому выражению кнопки для удаления в редакторе ограничений.
    • Добавлен запрос на подтверждение действий пользователя при замене группы выражений в редакторе ограничений.
    • Добавлена кнопка для создания пустой строки в выражении в редакторе ограничений.
    • Исправлено оформление редактора ограничений: скрыты лишние отступы, увеличен шрифт в дереве атрибутов.
    • Добавлена проверка существования неиспользуемых параметров перед сохранением ограничения.
    • Исправлено создание и использование ограничений с параметрами.
    • Исправлено открытие редактора ограничений в новом окне в chrome-е (после обновления chrome-а редактор открывался в новой вкладке вместо нового окна).
  • WOLV:
    • Добавлен переход к объекту в WOLV после закрытия модального окна при условии, что объект был сохранён.
    • Поправлена перемотка к объектам найденным модулем поиска WOLV-a.
    • Добавлена возможность переопределять URL-ы форм редактирования, прототипирования, просмотра и добавления в WOLV-е в клиентских обработчиках событий.
    • Исправленно отображение заголовков групп при использовании OverflowWordEllipsis.
    • Исправлена логика возвращения первичного ключа из формы редактирования в модальном окне или новой вкладке: теперь первичный ключ не возвращается для объектов, которые еще не были сохранёны в БД.
    • Поправлено хранение состаяния выделенных строк при переходе между страницами.
    • Во ViewColumnProvider исправлена ошибка загрузки данных из кэша, приводившая к тому, что списки иногда не открывались пока не почистишь кэш.
  • LookUp:
    • Сокращено количество запросов к БД из лукапов.
    • В интерфейсе IMasterEditorAjax добавилось опционально свйство “Object”, в которое WebBinder проставляет объект данных ассоциированный с мастеровым свойством, соответствующим lookup-у.
    • Поправлена работа autocomplete при вставке из буфера обмена через контекстное меню ПКМ.
  • Изменения в зависимых пакетах
    • В пакете Flexberry.Web.Reports также были обновлены все зависимости, включая зависимость от Flexberry.ASP.NET до выпущенной версии 2.3.0.
    • В пакете Flexberry.Web.VeloCache также были обновлены все зависимости, включая зависимость от Flexberry.ASP.NET до выпущенной версии 2.3.0.

Выпущена очередная стабильная версия Flexberry Security 1.7.0

Список изменений во Flexberry Security - 1.7.0

  • Изменения в зависимостях * Пакет Flexberry.ORM обновлен до 4.0.0 (см. подробности в новости о выпуске версии ORM 4.0.0).

  • Общие изменения:

    • Добавлена поддержка сериализуемости для объектов полномочий
    • Исправлены объединение и разность функций ограничения в классе LimitFunctionArithmetic.
    • Добавлены проверки добавляемой и вычитаемой функций на null в классе LimitFunctionArithmetic.
    • Добавлены методы полного удаления фильтра в полномочиях доступа к конкретному объекту данных для роли и пользователя.
    • Расширена логика добавления и удаления фильтров в полномочиях на объекты данных.
    • Исправлено чтение полномочий в операции удаления фильтра у SecurityManager.
    • Исправлена проверка типа доступа к классу данных при получении ограничения для текущего пользователя в SecurityManager.

Выпущена очередная стабильная версия Flexberry Winforms 3.0.0

В версию вошли следующие доработки:

  • Проект ICSSoft.STORMNET.Drawing перенесён из ORM в Winforms.
  • Реализована сериализация в json примитивов диаграммы классов.

Выпущена очередная стабильная версия Flexberry ORM 4.0.0

В версию вошли следующие доработки:

  • Проекты из пакетов UnityFactory и CurrentUserService вошли в пакет ORM. Отдельно теперь их не нужно устанавливать, если есть установленный пакет ORM. При обновлении до ORM 4.0 нужно будет предварительно удалить NuGet-пакеты UnityFactory и CurrentUserService из всех проектов с предыдущей версией ORM.
  • Из ExternalLangDef удалена зависимость от пакетов *DataService. Интерфейс IDataService поменялся (добавлен ещё один метод для интерпретации языка запросов).
  • Проект ICSSoft.STORMNET.Drawing перенесён из ORM в Winforms.
  • Удалён проект ICSSoft.STORMNET.Business.BF (если он кому-нибудь будет нужен, то отдадим в виде исходного кода).
  • Исправлена ошибка порядка обновления агрегатора и детейла с циклической связью (если объект является необязательным мастером ассоциации для своего агрегатора).
  • Реализована поддержка в OData кастомных имён для EDM-моделей (названий классов и свойств).
  • Для всех типов убрано наследование от MarshalByRefObject.
  • Из конструкторов типа ICSSoft.STROMNET.FunctionalLanguage.ObjectType убран параметр “objImagedView” типа “Image”.
  • В функции GetViewByAuditRecord заменено Enum на EnumCaption.
  • Исправлена ошибка при построении ограничения для lcs по полю даты, когда имя поля совпадает со свойством DateTime.
  • Исправлена ошибка при использовании атрибута PrimaryKeyStorageAttribute.
  • ORM опубликован на GitHub
  • LogService, также опубликован на GitHub

Выпущены очередные версии ember-flexberry 0.8.6 и ember-flexberry-data 0.8.4

В версии вошли следующие доработки:

  • Исправлен метод базовой модели, проверяющий изменения в hasMany-отношениях: ранее ошибка могла возникать в случаях, когда свойство canonicalState было неопределено. Первый вариант исправления был предложен в версии ember-flexberry-data@0.8.2, но этот вариант приводил впоследствии к неправильному значению свойства canonicalState у агрегатора при дальнейших изменениях списка связанных детейлов.

Более подробно со списком изменений можно ознакомиться в CHANGELOG-ах соответствующих проектов:

Выпущена очередная версия ember-flexberry 0.8.5

В версию вошли следующие доработки:

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

Более подробно со списком изменений можно ознакомиться в CHANGELOG-ах соответствующих проектов:

Выпущена очередная версия ember-flexberry-data 0.8.3

В версию вошли следующие доработки:

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

Более подробно со списком изменений можно ознакомиться в CHANGELOG-е соответствующего проекта:

Выпущены очередные версии ember-flexberry 0.8.4 и ember-flexberry-data 0.8.2

В версии вошли следующие доработки:

  • Исправлено отсутствие проверки изменений в детейловых моделях при переходе с роута агрегатора на роут детейла следующего уровня. В результате изменения, сделанные в детейлах до перехода на роут детейла следующего уровня, теперь не теряются.
  • В свойство canonicalState hasMany-отношений теперь записывается значение свойства currentState при сохранении модели агрегатора. Данное дополнение устраняет баг при проверке изменений в hasMany-отношениях после первичного сохранения модели агрегатора с детейлами.

Более подробно со списком изменений можно ознакомиться в CHANGELOG-ах соответствующих проектов:

Выпущена очередная версия ember-flexberry 0.8.3

В версию вошли следующие доработки:

  • Исправлено зацикливание вызова обработчика клика при выборе даты в flexberry-simpledatetime (в мобильном режиме).

Более подробно со списком изменений можно ознакомиться в CHANGELOG-е соответствующего проекта:

Выпущена очередная версия ember-flexberry 0.8.2

В версию вошли следующие доработки:

  • Исправлено зависание приложения при смене количества отображаемых страниц на списке в IE.
  • Исправлена невозможность изменять ширину столбцов на списке при переопределении хука model в прикладном роуте.
  • Исправлена ошибка, из-за которой не сбрасывалось количество выделенных строк после перехода на форму редактирования и обратно.
  • Исправлено некорректное отображение пейджинга в оффлайн-режиме после ухода со списка и возврата обратно.
  • Исправлено зависание приложения в оффлайн-режиме при переходе на форму редактирования в том случае, когда в поле для хранения детейлов записано значение undefined.

Более подробно со списком изменений можно ознакомиться в CHANGELOG-ах соответствующих проектов:

Выпущена очередная версия ember-flexberry-data 0.8.1

В версию вошли следующие доработки:

  • Исправлена ошибка чтения детейлов в оффлайн-режиме в том случае, когда в поле для хранения детейлов записано значение undefined.
  • Исправлено некорректное вычисление значения свойства meta.count в оффлайн-режиме при чтении данных.

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

Более подробно со списком изменений можно ознакомиться в CHANGELOG-е соответствующего проекта:

Выпущена очередная версия ember-flexberry 0.8.1

В версию вошли следующие доработки:

  • Поддержка иерархического flexberry-objectlistview на форме редактирования + возможность указывать отступы в иерархическом списке.
  • Исправление ошибки на списках (когда свойство modelProjection не определено).
  • Исправление ошибки flexberry-simpledatetime в мобильном варианте.

Более подробно со списком изменений можно ознакомиться в CHANGELOG-е соответствующего проекта:

Выпущены очередные версии ember-flexberry и ember-flexberry-data 0.8.0

Со списком изменений можно ознакомиться в CHANGELOG-ах соответствующих проектов:

Всем успехов и новых достижений в Новом году!

Попробуйте сами

На период ознакомления или для открытых проектов продукты платформы доступны бесплатно. Попробуйте, и решите, подходят ли они
для ваших задач.

Попробовать

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