Рассмотрим поэтапно на примере создание нового модуля.
Создаем новый проект-библиотеку Class Library и задаем его свойства:
Редактируем файл AssemblyInfo.cs, меняя соответствующие существующие значения на нижеприведенные:
|
Подключаем дополнительно библиотеки: •из раздела Assemblies -> Framework: ▪System.ComponentModel.Composition; ▪System.Drawing; ▪System.WindowsForms; •из раздела Assemblies -> Extensions: ▪DevExpress.XtraGrid; ▪DevExpress.XtraEditors; ▪DevExpress.Data; ▪DevExpress.Utils; •и дополнительно (по кнопке Browse), указывая файлы библиотек из дистрибутива Ultima Businessware®: |
▪BaseClientLibrary.dll – библиотека содержит базовые списковые формы и формы редактирования справочников и документов, базовую форму отчета, базовую форму запроса параметров интерактивных команд и используемые в этих формах элементы управления;
▪ClientImplementation.dll – библиотека содержит класс базового модуля, используемого для получения списка команд;
▪Metadata.dll – библиотека содержит все классы объектов метаданных;
▪ClientInterfaces.dll – библиотека содержит интерфейсы, необходимые в том числе для создания команд и реализации списковых форм и форм редактирования;
▪UltimaLib.dll – библиотека содержит системные константы и дескрипторы классов объектов метаданных;
▪UltimaInterfaces.dll – библиотека содержит интерфейсы специальных менеджеров.
Создаем в проекте папку ThirdParty и добавляем туда библиотеки из одноименной папки дистрибутива Ultima Businessware®.
Подключаем StyleCop, предназначенный для анализа кода на предмет соответствия стилю:
•копируем файл Settings.StyleCop из дистрибутива Ultima Businessware® в папку проекта;
•редактируем файл проекта *.csproj, добавляя строку:
<Import Project="..\..\ThirdParty\StyleCop\StyleCop.targets" />
На этом создание модуля можно считать законченным. Компилируем его и копируем созданные библиотеки в папку клиентского приложения (в данном примере это основное клиентское приложение Ultima Businessware®) Client:
•TradeTestSolution.dll и TradeTestSolution.pdb в папку Client\ClientModules\TradeTestSolution\;
•TradeTestSolution.resources.dll в папку \Distrib\Client\ClientModules\TradeTestSolution\ru\.
Осталось создать соответствующий модуль в справочнике Client Module:
Название модуля Name должно совпадать с названием его папки в клиентском приложении Client\ClientModules\TradeTestSolution\.
Также добавляем созданный модуль в соответствующее клиентское приложение (UltimaClient), делаем его общедоступным (common module) и добавляем в него скопированные в папку клиентского приложения библиотеки модуля: