AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.12.2001, 06:15   #1  
sguryev is offline
sguryev
Участник
 
24 / 13 (1) ++
Регистрация: 07.12.2001
Адрес: Сергиев Посад
Post Отображение связных таблиц. Сплиттер. Автоувеличение индекса. Delete Action.
<pre><font face = arial>
<b>HB_Tutorial_Company</b>

<u>Цель проекта:</u>
- Изучить работу с отображением связных таблиц, на примере таблицы компаний и
связанной с ней таблицы сотрудников этих компаний. Изучить работу со сплиттером.
- Создание отчета.
- Исследовать возможность добавления такой функциональности, как автоматическое
увеличение индекса при вставке новой записи.
- Поэкспериментировать с установками Delete Action.

<u>Формальное описание проекта:</u>
Создать две таблицы:
- таблица, содержащая информацию о компании (идентификатор и название компании);
- таблица, содержащая информацию о сотрудниках работающих в компаниях из первой
таблицы (идентификатор компании, идентификатор сотрудника, имя сотрудника)
Таблицы связаны по полю идентификатор компании

Далее необходимо создать форму для отображения этой информации в следующем виде:
Два Grid Control’а разделенных сплиттером. При выборе в одном из них компании во втором
появляется список ее сотрудников.
В форме также должна быть предусмотрена возможность вывода отчета по всем компаниям и
их сотрудникам в виде соответствующей кнопки.

При вставке новой записи поле индекса должно увеличиваться автоматически, как в первом,
так и во втором Grid Control’е.

При удалении записи в таблице компании, удаляются также все записи сотрудников этой
компании из таблицы сотрудников.

<u>Детали реализации:</u>

Добавлены следующие вспомогательные типы:
<B>HB_Tutorial_EmpolyeeName</b> – Для хранения имени сотрудника. На основе типа String.
<b>HB_Tutorial_CompanyName</b> – Для хранения названия компании. На основе типа String.
<b>HB_Tutorial_EmployeeID</b> – Для хранения идентификатора сотрудника На основе типа integer.
<b>HB_Tutorial_CompanyID</b> – Для хранения идентификатора компании. На основе типа integer.
Добавлена связь (Relation) на поле таблицы идентификатора компании.

Созданы 2 таблицы:
<B>HB_Tutorial_Company</b>
ID
Name
Override:
InitValue – для автоматического увеличения индекса. Более подробно в базе знаний:
<A href="http://www.axforum.info/forums/showthread.php?s=&threadid=256">“Автоматическое увеличение значения поля при создании новой записи"</a>
Delete Action:
<b>HB_Tutorial_Employee</b> - type: <i>Cascade</i> - подробное описание исследования о типах
Delete Action их влияния на удаление записей в связанных таблицах в статье базе знаний:
<a href=http://www.axforum.info/forums/showthread.php?s=&threadid=257>“Исследование - Как работают разные типы Delete Actions.”</a>
<b>HB_Tutorial_Employee</b>
CompanyID -> HB_Tutorial_Company.ID
EmploeeID
EmploeeName

Форма отображения информации:
<b>HB_Tutorial_CompanyEmployeeForm</b>
Override:
ClassDeclaration – объявление переменной класса сплиттера.
Init – инициализация сплиттера (в качестве сплиттера используется элемент формы Split)
Data sources:
<b>HB_Tutorial_Company</b>
<b>HB_Tutorial_Employee</b>
Joint source - <b>HB_Tutorial_Company.</b>
Override:
InitValue - для автоматического увеличения индекса. Более подробно в базе знаний:
<A href="http://www.axforum.info/forums/showthread.php?s=&threadid=256">“Автоматическое увеличение значения поля при создании новой записи"</a>
Design:
Group::Split – сплиттер.
Override:
MouseUp
MouseDown
MouseMove – работа мышкой со сплиттером

<u>Отчет:</u>
<b>HB_Tutorial_CompanyEmpReport</b>
Просто и быстро создан на основе Wizarda. Затем создан Menu Items->Display для соответствующего
отчета и помещен в соответствующий ButtonGroup формы.

<u>Результаты:</u>
Две статьи добавлены в базу знаний:
<A href="http://www.axforum.info/forums/showthread.php?s=&threadid=256">“Автоматическое увеличение значения поля при создании новой записи"</a>
<a href=http://www.axforum.info/forums/showthread.php?s=&threadid=257>“Исследование - Как работают разные типы Delete Actions.”</a>


</font></pre>
Вложения
Тип файла: xpo hb_tutorial_company.xpo (63.1 Кб, 691 просмотров)
Тип файла: img440-1 (42.6 Кб, 807 просмотров)
__________________
Гурьев Сергей
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Delete Action. Максимальное кол-во таблиц. custtable DAX: Программирование 5 08.09.2008 17:49
jerry-dynamics: How can you make sure that the end user can not delete a record in one table if there are related records in another table? Blog bot DAX Blogs 0 16.06.2007 11:20
Не работает Delete Action в таблице Dimension duz DAX: Программирование 0 02.02.2006 08:47
Связь таблиц по RecId и отображение строки renat DAX: Программирование 16 14.03.2003 18:32
Исследование - Как работают разные типы Delete Actions. sguryev DAX: База знаний и проекты 1 10.05.2002 15:46

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 13:35.