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

Практика 2.2 Создание выборки основного меню приложения.

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

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

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

Создайте основную выборку приложения Библиотека

1. Создайте файл src/main/resources/ru/bitec/app/lbr/Lbr_MainMenu.avm.xml
<?xml version="1.0"?>

<view xmlns="http://www.global-system.ru/xsd/global3-view-1.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.global-system.ru/xsd/global3-view-1.0.xsd"
      name="Lbr_MainMenu">

    <acObject caption="Управление библиотекой"/>

    <representation name="Default" caption="Управление библиотекой"    editMode="edit" >

        <layout>
            <simpleComposer>
                <frame caption="Управление библиотекой">
                    <grid/>
                </frame>
            </simpleComposer>
        </layout>

        <attributes>
            <attr name="ID" caption="Идентификатор" isVisible="false"/>
            <attr name="IDACCESSGROUP#" caption="Группа доступа"    isVisible="false"/>
            <attr name="dGlobalCurrentDate" caption="Дата" editorType="datePick"    order="40"/>
            <attr name="idGlobalDepOwner" caption="Организация" isVisible="false"    order="40"/>
            <attr name="idGlobalDepOwnerHL" caption="Организация" order="40.2">
                <editor>
                    <lookup lookupQuery="gtk-ru.bitec.app.bs.Bs_DepOwnerAvi#Lookup"
                            changeableAttr="idGlobalDepOwner"    isLookupLazyLoad="true"
                            lookupKeyAttr="id" lookupListAttr="sHeadLine"    isResetButtonVisible="true"/>
                </editor>
                <ref class="Bs_DepOwner"/>
            </attr>
            <attr name="dGlobalBeginDate" caption="Период с"    editorType="datePick" order="50" isLastInLine="true"/>
            <attr name="dGlobalEndDate" caption="по" editorType="datePick"    order="60" isLastInLine="true"/>
            <attr name="nChoosePeriodBtn" caption="Выбрать период"    editorType="button" order="65"/>
        </attributes>

        <operations>

        </operations>
    </representation>

</view>

2. Создайте файл src/main/scala/ru/bitec/app/lbr/Lbr_MainMenuAvi.scala

package ru.bitec.app.lbr

import ru.bitec.app.bs._
import ru.bitec.app.btk._
import ru.bitec.app.gtk.gl.avi.Visibilities
import ru.bitec.gtk.core.AvmFile

@AvmFile(name = "Lbr_MainMenu.avm.xml")
object Lbr_MainMenuAvi extends Bs_ApplicationAvi {
override def default(): Default = {
  new Default {
    override def meta = this
  }
}

trait Default extends super.Default {
  override def onLoadMeta(): Unit = {
    super.onLoadMeta()
  }

  //========== Справочники ======================

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible, imageCollection="Btk_Application", imageIndex=6,
    visibleOnMainMenu = Visibilities.Visible, caption = "Справочники", order = 10)
  def mm_ReferenceRoot(): Unit = {}

  //-------Подразделения-----

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Подразделения", order = 10, headOperation = "mm_ReferenceRoot")
  def mm_DepartmentRoot(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Подразделения", order = 5, headOperation = "mm_DepartmentRoot")
  def mm_Department(): Unit = {
    Bs_DepartmentAvi.tree().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Организации", order = 10, headOperation = "mm_DepartmentRoot")
  def mm_Bs_DepOwner(): Unit = {
    Bs_DepOwnerAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Виды подразделений", order = 20, headOperation = "mm_DepartmentRoot")
  def mm_Bs_DepartmentSort(): Unit = {
    Bs_DepartmentSortAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "-", order = 20, headOperation = "mm_ReferenceRoot")
  def mm_Delimiter1(): Unit = {}

  // Контрагенты
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Контрагенты", order = 30, headOperation = "mm_ReferenceRoot")
  def mm_Bs_ContrasRoot(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Контрагенты", order = 10, headOperation = "mm_Bs_ContrasRoot")
  def mm_Bs_Contras(): Unit = {
    Bs_ContrasAvi.mainList().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Типы контрагентов", order = 20, headOperation = "mm_Bs_ContrasRoot")
  def mm_Bs_ContrasType(): Unit = {
    Btk_ObjectTypeAvi.list().newForm().params(Map(
      "FLT_SREFCLASSNAME" -> "Bs_Contras",
      "FLT_SREFCLASSNAME.readOnly" -> true
    )).open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "-", order = 30, headOperation = "mm_ReferenceRoot")
  def mm_Delimiter11(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Физические лица", order = 50, headOperation = "mm_ReferenceRoot")
  def mm_Bs_Person(): Unit = {
    Bs_PersonAvi.list().newForm().open()
  }

  //----------------------------------
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "-", order = 60, headOperation = "mm_ReferenceRoot")
  def mm_Delimiter12(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
   visibleOnMainMenu = Visibilities.Visible, caption = "Авторы", order = 80, headOperation = "mm_ReferenceRoot")
 def mm_Lbr_Autor(): Unit = {
   Lbr_AuthorAvi.list().newForm().open()
 }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
   visibleOnMainMenu = Visibilities.Visible, caption = "Издательства", order = 90, headOperation = "mm_ReferenceRoot")
 def mm_Lbr_Publisher(): Unit = {
   Lbr_PublisherAvi.list().newForm().open()
 }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
   visibleOnMainMenu = Visibilities.Visible, caption = "Книги", order = 110, headOperation = "mm_ReferenceRoot")
 def mm_Lbr_Book(): Unit = {
   Lbr_BookAvi.list().newForm().open()
 }

  

  

  

 

  //========== Документы ======================

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible, imageCollection="Btk_Application", imageIndex=7,
    visibleOnMainMenu = Visibilities.Visible, caption = "Документы", order = 20)
  def mm_DocumentRoot(): Unit = {}

  

 

  

  //========== Отчеты ======================

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible, imageCollection="Btk_Application", imageIndex=8,
    visibleOnMainMenu = Visibilities.Visible, caption = "Отчеты", order = 50)
  def mm_LbrReportRoot(): Unit = {}

 

  //========== Настройки ======================

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible, imageCollection="Btk_Application", imageIndex=9,
    visibleOnMainMenu = Visibilities.Visible, caption = "Настройки", order = 60)
  def mm_SettingRoot(): Unit = {}

  //========== Настройки документации ======================
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Настройки документации", order = 10, headOperation = "mm_SettingRoot")
  def mm_DocSetting(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Типы объектов", order = 10, headOperation = "mm_DocSetting")
  def mm_Btk_ObjectType(): Unit = {
    Btk_ObjectTypeAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Настройка детализации типов объектов", order = 15, headOperation = "mm_DocSetting")
  def mm_Btk_ObjectTypeDet(): Unit = {
    Btk_ObjectTypeDetAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Жизненные циклы", order = 40, headOperation = "mm_DocSetting")
  def mm_Btk_LifeCycle(): Unit = {
    Btk_LifeCycleAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Закладки", order = 60, headOperation = "mm_DocSetting")
  def mm_Btk_Tab(): Unit = {
    Btk_TabAvi.list().newForm().open()
  }

  //========== Печатные формы ==============================
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Печатные формы", order = 90, headOperation = "mm_SettingRoot")
  def mm_Rpt_Report(): Unit = {
    val vRpt_ReportAvi = Btk_Lib().getAviBySimpleName("Rpt_ReportAvi")
    if (vRpt_ReportAvi != null)
      vRpt_ReportAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "-", order = 120, headOperation = "mm_SettingRoot")
  def mm_Delimiter60(): Unit = {}

  //============ Дополнительно =========================
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Дополнительно", order = 130, headOperation = "mm_SettingRoot")
  def mm_AdditionalSettings(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Групировка объектов", order = 130, headOperation = "mm_AdditionalSettings")
  def mm_Btk_Group(): Unit = {
    Btk_GroupAvi.list().newForm().open()
  }

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Состояния классов", order = 150, headOperation = "mm_AdditionalSettings")
  def mm_Btk_ClassList(): Unit = {
    Btk_ClassListAvi.list().newForm().open()
  }

  //========== Менеджер заданий ======================
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "-", order = 140, headOperation = "mm_SettingRoot")
  def mm_Delimiter140(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Менеджер заданий", order = 150, headOperation = "mm_SettingRoot")
  def mm_Btk_Job(): Unit = {
    Btk_JobGroupAvi.tree().newForm().open()
    //Btk_JobAvi.tree().newForm().open()
  }

  //========== Тестирование и отладка ======================
  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "-", order = 9998, headOperation = "mm_SettingRoot")
  def mm_Delimiter9998(): Unit = {}

  @Oper(visibleOnContextMenu = Visibilities.Invisible, visibleOnToolbar = Visibilities.Invisible,
    visibleOnMainMenu = Visibilities.Visible, caption = "Тесты и отладка", order = 9999, headOperation = "mm_SettingRoot")
  def mm_Testing(): Unit = {}
   } //---------
 }

3. Создайте файл src/main/resources/META-INF/applications.xml

<?xml version="1.0" encoding="UTF-8"?>
<apps>
    <!--<app mainSelection="Lbr_MainMenuAvi" caption="Наименование приложения"    imageIndex="1"/>-->
    <app mainSelection="Lbr_MainMenuAvi" caption="Управление библиотекой"    imageIndex="6"/>
</apps>  

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

Контакты

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

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