Toggle navigation sidebar
Toggle in-page Table of Contents
Руководство прикладного разработчика GlobalFramework
Введение
Предисловие
Обзор
Начало работы с фреймворком
Языки разработки
Сессия приложения
Взаимодействие с базой данных
Классы
Класс
Сервисные возможности для классов
Тип объекта
Выборки
Выборка
Сервис группового редактирования
Универсальный фильтр
MDA-таблица
Аудит открытия форм и выполнения операций
Инструменты
Конфигуратор
Работа в IntelliJ IDEA
Отладка приложений
Тестирование
Горячие клавиши
Отчеты
Отчеты
Jasper Reports
Шаблоны отчетов
Организация разработки
Основные понятия
Проект
Релизы
Работа с Git
Развёртывание рабочего места под Linux
Дополнительно
Локализация приложений
Логирование
Проектные расширения
Интеграция с сервером
Параллельные вычисления
Асинхронное обновление данных в связанных классах
Средства мониторинга работы системы.
Структуры аудита
Сервисы сервера приложений
Приложение
Практические советы
Создание выборки без класса
Создание avm-файла для выборки без класса
Проектное переопределение
Работа с данными, хранящимися в jsonb контейнере
Классы-расширения. Simple Extensions
Запуск отладки/теста
Как вносить изменения
Как обновить внешние зависимости
Как переопределить методы API
Как переопределить методы AVI
Как переопределить сеттеры API
Как переопределить сеттеры AVI
Как сбросить кэш
Как собрать проект
Как создать класс
Как создать коллекцию
Как создать новое отображение
Как создать точку расширения
Найти и открыть класс из настройки системы
Настройка автонумерации
Настройка группировки класса
Поиск по коду в Idea
Создание логического атрибута класса
Практики разработки
Полезные практики от опытных разработчиков
Практика Avi
Практика SQL
Практика avm, примеры интерфейсов
Практика odm
Практика код
Практики при разработке документов
Разработка под высокую нагрузку
Работа с кэшем
Scala код
Sql запросы
.md
.pdf
Введение
Введение
#
Предисловие
На кого ориентировано руководство
Программные средства для работы
Обзор
Архитектура системы
Тонкий клиент
Мобильный клиент
Балансировщик нагрузки
Кластер серверов приложений
Решение
Кластер баз данных
Уровни разработки
Принципиальная схема
Основные понятия
Класс
Бизнес объект
Пакет
Выборка
Модуль
Приложение
Сессия приложения
Взаимодействие с данными
Объектное взаимодействие
Реляционные запросы
Начало работы с фреймворком
Требования к аппаратному обеспечению рабочего места разработчика
Создание новой БД для проекта
Создание пользователя
Создание БД
Подключение расширений
Настройка рабочего места
Установка
Настройка переменных окружения Windows
Настройка проекта
Развертывание вручную
Конфигурация Global Server
gsf-cli - утилита командной строки Global System Framework
Прикладной проект
Структура проекта
Модуль
Структура каталогов модуля
Зависимости
Подключение внешних библиотек
Первая сборка проекта
Развертывание первоначальных данных
Запуск приложения
Регистрация
Отладка приложений
Отладка бизнес-логики
Перекомпиляция кода без перезапуска сервера
Отладка выборки
Языки разработки
Scala
Обработка исключений
Объявление исключений
Выбрасывания исключения
Перехват исключений
Конвертация java исключений в прикладные исключения
Jexl скрипты
Обработка исключений в jexl
Добавленные методы
Работа с датами
Работа с sql
Работа с массивами объектов навигации (Rop)
Работа в контексте выборки
Контекстная справка
Команды
PL/pgSQL
Требования к масштабируемости
Общие принципы наименования
Конвенция для разработки на scala
Сокращения
Scala типы для работы с данными
NLong
NNumber
NGid
NDate
NString
NBigDecimal
NDuration
Наименование переменных для nullable типов и атрибутов
Примеры задания параметров
Наименования Scala-пакетов
Правила наименования сущностей
Наименование классов
Наименование пакетов
Наименование процедур и функций
Наименование параметра
Наименование временных таблиц
Наименование выборок
Наименование отображений
Формат комментария в систему контроля версий
Стандартные сокращения
Odm (Object domain model)
Orm (Object-Relational Mapper)
Pojo
Dpi
Dvi
Api
Pkg
Avi
Dvm (Domain view markup)
Avm (Application view markup)
Ata (Application table)
Aro (Application row)
Rop (Row provider)
Сессия приложения
Сессия базы данных
Рабочее пространство (workspace)
Точки сохранения
Пользовательский сеанс
Пользовательская блокировка
Логические блокировки
Оптимистические блокировки
Пессимистическая блокировка
Бизнес логика
Ключевые стратегии создания масштабируемого решения
Api
Пример API
Pkg
Взаимодействие с базой данных
Объектные запросы
Методы
Объектный запрос c помощью выражений EclipseLink
Объектный запрос большого списка
Кеширование объектных запросов
Кэширование по полю
Кэширование объектных запросов
Транзакционный индекс
Реляционные запросы
ASQL
ATSQL
ASelect
Типичные ошибки
Некорректное использование запросов на чтение
Некорректное использование блокировок
Некорректное формирование запроса
Работа с большими данными
Массовая вставка
Массовый update\delete
Размер транзакции