Пример создания простого приложения

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

С помощью формы реализуем следующий алгоритм работы:

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

  2. При нажатии на кнопку «Добавить» будет выводиться диалог для ввода наименования нового элемента. После ввода и нажатия кнопки «ОК» будет формироваться список наименований добавляемых элементов. Также наименования сразу будут добавляться в таблицу.

  3. При нажатии на кнопку «Сохранить» на основании информации из сформированного списка в справочник будут добавлены новые элементы.

  4. При нажатии на кнопку «Закрыть» форма закрывается без добавления в справочник новых элементов.

Перед тем, как приступить к реализации алгоритма, выполните ещё ряд настроек. В инспекторе сборок уже отображаются подключенные сборки ExtCtrls и Forms. Необходимо подключить ещё ряд сборок. Для этого дважды щелкните по элементу «Ссылки» и установите флажки напротив сборок Collections, Drawing, Metabase, Rds, Tab и Ui. Ресурсы данных сборок потребуются при разработке кода. Также в коде формы необходимо добавить ряд переменных:

Class F_SHOW_DICTForm: Form
    PPButton1: PPButton;
    PPButton2: PPButton;
    PPButton3: PPButton;
    TabSheetBox1: TabSheetBox;
    UiTabSheet1: UiTabSheet;
    Mb: IMetabase; 
//Контекст репозитория
    RdsDict: IRdsDictionaryInstance; //Открытый экземпляр справочника
    TSheet: ITabSheet; //Таблица визуального компонента
    NewElementsName: IStringList; //Список для хранения наименований новых элементов
    ElementCount, NameAttrIndex: Integer; //Количество элементов и индекс атрибута Наименование
    //...
End Class F_SHOW_DICTForm;

Рассмотрим по шагам реализацию отдельных пунктов алгоритма.

1. Загрузка списка элементов

2. Добавление нового элемента

3. Сохранение элементов в справочник

4. Закрытие формы без сохранения

Если всё выполнено корректно, то после запуска и добавления нескольких элементов форма будет выглядеть следующим образом: