Окно "Спецификация счета"

Создайте окно w_account_item путем наследования из окна w_base_dw. Установите свойство dataobject для объекта dw_sheet в dw_account_item.

Добавьте объект DataWindow в окно w_account_item (Insert - Control - DataWindow). Установите имя объекта dw_form_account, параметр DataObject тоже dw_form_account. Заметьте, что объект dw_form_account объекта w_account_item, является указателем на объект DataWindow с именем dw_form_account, находящийся в библиотеке rad.

Разместите объект dw_form_account так, чтобы в нем помещались все поля объекта DataWindow, а под ним разместите объект dw_sheet.

Объявление переменных

Double id_account

Событие open

Скрипт события:

id_account = message.doubleparm
dw_form_account.settransobject(sqlca)

Как ужу говорилось выше, объект message служит для передачи данных между объектами приложения. Свойство doubleparm является стандартным для данного объекта. В нем будет передан номер счета.

Т.к. объект dw_form_account отсутствует в родительском окне, для него необходимо вызвать метод settransobject.

Событие ue_retrieve_data

Скрипт события:

Dw_sheet.retrieve(id_account)
Dw_form_account.retrieve(id_account)

Событие ue_edit

Скрипт события:

w_form_account	lw_form_account
long		ll_row				
ll_row = dw_sheet.getrow()
if ll_row = 0 then return
id_account_item = dw_sheet.getitemnumber(ll_row, 'id_account_item')
opensheetwithparm(lw_form_account, this, this)

Скрипт перекрывает скрипт родительского окна.

Событие ue_insert

Скрипт события:

w_form_account lw_form_account
id_account_item = -1
opensheetwithparm(lw_form_account, this, this)

Скрипт перекрывает скрипт родительского окна.