ВУЗ: Пермская государственная сельскохозяйственная академия имени академика Д. Н. Прянишникова
Категория: Методичка
Дисциплина: Проектирование информационных систем
Добавлен: 18.10.2018
Просмотров: 1092
Скачиваний: 14
}
}
//в случае, если чего-то не хватило, сообщаем об этом пользователю
if (errStr != string.Empty)
{
throw new Exception(errStr);
}
//если всё нормально, то возвращаем массив объектов, которые надо обновить
ret = new DataObject[retObjs.Count];
retObjs.CopyTo(ret,0);
}
return ret;
// *** End programmer edit section *** (OnUpdateЗаказ)
}
Блокирование заказа, после перехода в состояние Оплачен
Чтобы избежать такой ситуации, когда количество товара на складе вычитается несколько раз, сделаем блокирование статуса заказа, если заказ уже оплачен. Перепишем метод Edit в зависимой форме:
// *** Start programmer edit section *** (WinformС_ЗаказE CustomMembers)
public override void Edit(ICSSoft.STORMNET.DataObject dataobject, string contpath, string propertyname, object tag)
{
base.Edit (dataobject, contpath, propertyname, tag);
if (dataobject!= null)
{
EditManager.SetReadonlyFlagProperties(true, new string[]{"Цена"});
СтрокаЗаказа.EditManager.AfterChangeProperty -=new ICSSoft.STORMNET.Windows.Forms.Binders.AfterChangePropertyDelegate(EditManager_AfterChangeProperty);
СтрокаЗаказа.EditManager.AfterChangeProperty +=new ICSSoft.STORMNET.Windows.Forms.Binders.AfterChangePropertyDelegate(EditManager_AfterChangeProperty);
if (((Заказ)dataobject).Статус == СостояниеЗаказа.Оплаченный)
{
EditManager.SetReadonlyFlagProperties(true, new string[]{"Статус"});
}
}
}
-
Какие проекты генерируются с помощью CASEBERRY в рамках одной разрабатываемой системы?
-
Что такое вычислимый атрибут?
-
Что такое бизнес-сервер?
-
Как получить сервис данных?
Темы для самостоятельной работы
На базе полученного опыта можно дальше дорабатывать систему. Ниже представлены основные задачи, которые могут быть решены:
-
В накладной сделать вычислимые атрибуты сумма и т.д. на примере заказа и написать соответствующие обработчики.
-
Исправить сгенерированную форму таким образом, чтобы элементы управления располагались более рационально.
-
Сделать фильтрацию по кладовщикам для лукапа на форме редактирования для объектов класса Склад.
Перспективы развития АСУ_Склад
Чтобы разрабатываемая система была пригодна для использования в «боевых условиях», нужно учесть и обработать следующие моменты:
-
Пользователь должен быть ограничен в рамках жизненного цикла для заказов и накладных. То есть не должно быть произвольных переходов.
-
Документы должны выводиться на печать.
-
Срок оплаты заказа должен контролироваться.
-
Номера документов должны использоваться и как-то быть упорядочены
1 В действительности понятие представления значительно шире — это некоторое подмножество всех атрибутов, включая атрибуты связанных классов. В общем, смысл представления проистекает из простого вопроса: допустим, необходимо прочитать некоторый объект из базы данных: какие атрибуты должны быть прочитаны? Ну, не все же подряд читать. Аналогичные задачи указания множества атрибуты возникают и во многих пользовательском интерфейсе.
2 Менеджер редактирования (EditManager) специальный класс, ответственный за связывание свойств объектов данных и элементов пользовательского интерфейса (контролов)