Перейти к основному содержанию
Югорский государственный университет
  • В начало
  • Минимальные требования
  • Сбор персональных данных
  • Дополнительно
Вход
Югорский государственный университет
В начало Минимальные требования Сбор персональных данных
  1. Тест Глобал
  2. Практика 4.6 Разработка бизнес логики.

Практика 4.6 Разработка бизнес логики.

Требуемые условия завершения
Дать ответ на задание

Ответ на задание необходимо предоставить в виде файлов Scala и XML, которые были изменены в текущем уроке (для написанного программного кода). Скриншоты интерфейса приложения для заданий выполняемых в интерфейсе и для демонстрации работы кода в системе Global ERP следует отправить в формате PDF, PNG или JPG. Для удобства рекомендуется прислать все файлы в одном архиве.

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

Вычисление заголовка

  • В Api классов-документов переопределите метод вычисление заголовка calcHeadLine, заголовок должен быть в формате {HL класса} № {sNumDoc} от {dDoc в формате дд.мм.гггг}.

  • Для созданных ранее объектов пересчитайте заголовки, для этого в карточках классов, под молотком и ключом запустите операцию Пересчитать заголовки и мнемокоды объектов класса. Для проверки можно посмотреть данные столбца sheadline_dz в таблицах.

Установка порядкового номера для позиций

  • В Api позиций документов переопределите метод insertByParent и напишите установку значения в поле nRow, как максимальный текущий номер в позициях + 1. Если позиций еще нет, то первая позиция должна начинаться с 1. Можно воспользоваться scala функцией reduceOption(_ max _).getOrElse(0.nn)

  • В Avi позиций документов для отображений List_idDoc или List_idInAct переопределите метод onRefresh и допишите сортировку по полю nRow, используя sortBy.

Пересчитываемые поля

Добавьте пересчеты для приходной накладной Lbr_InActDetApi:

  • Переопределите методы установки цены и количества (сеттеры setnPrice и setnQty), добавьте логику вычисления суммы в позиции с округление до 2х знаков

  • Переопределите сеттер суммы, добавьте вычисление цены в позиции с округление до 2х знаков

  • Добавьте пересчет общей суммы документа при изменении суммы в позициях или удалении самой позиции

  • На сеттеры цены, количества и суммы добавьте проверку на отрицательный ввод, вызов ошибки осуществляется методом throw AppException("Текст ошибки")

Lbr_InActDetAvi:

  • Переопределите сеттеры цены, количества и суммы, добавьте в конце обновление текущей записи (selection.refreshItem()) и обновление карточки мастера (selection.master.refreshItem())

  • Переопределите метод удаления (delete) и пропишите в конце обновление карточки мастера

Lbr_InAct.avm.xml:

  • Сумму документа сделайте не редактируемой в карточке

Югорский государственный университет

Контакты

  • Администратор сайта:
                     ag_fomin@ugrasu.ru

Вы используете гостевой доступ (Вход)
Сводка хранения данных
©Тема Trema