Список использованных источников
Кириллов В. В. ОСНОВЫ ПРОЕКТИРОВАНИЯ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ — учебное пособие Санкт-Петербургский Государственный институт точной механики и оптики (технический университет) Кафедра вычислительной техники Приложение1. Карпычев В. Ю. Методология IDEF1Х и программный продукт ERWin: Учебно-методическое пособие 2007 год Диго С. М. «Базы данных. Проектирование и создание» учебно-методический комплекс… Читать ещё >
Список использованных источников (реферат, курсовая, диплом, контрольная)
Байков Н. Перспективы российской нефтегазовой промышленности и альтернативных источников энергии // Мировая экономика и международные отношения. — 2008. — № 6. — С.49−56.
Научно-исследовательский Центр CALS-«Прикладная логистика» «МЕТОДОЛОГИЯ ФУНКЦИОНАЛЬНОГО МОДЕЛИРОВАНИЯ IDEF0». ГОССТАНДАРТ РОССИИ Москва РД IDEF 0 — 2000.
Нугаев Р. Я. «Безопасная эксплуатация нефтепромысловых объектов» — 1990 год Техническое задание на ИС «ЭПОС».
Карпычев В. Ю. Методология IDEF1Х и программный продукт ERWin: Учебно-методическое пособие 2007 год Диго С. М. «Базы данных. Проектирование и создание» учебно-методический комплекс М.:ЕАОИ, 2008. — 171с.
Кириллов В. В. ОСНОВЫ ПРОЕКТИРОВАНИЯ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ — учебное пособие Санкт-Петербургский Государственный институт точной механики и оптики (технический университет) Кафедра вычислительной техники Приложение1.
ЛистингклассаEventNotifications.
classEventNotifications.
{.
privatestaticTimeSpan minRefreshPeriod = newTimeSpan (0, 1, 0);
private UI.Main.FormMain formMain_;
privatestring connectionString_;
privatestring schema_;
privateint notificationsRefreshPeriod_;
privateDateTime nextRefreshTime_;
privateTimeSpan refreshPeriod_;
private System.Windows.Forms.NotifyIcon notifyIcon_;
System.Drawing.Icon[] icons_ = null;
public IdleHandler_EventNotifications (.
UI.Main.FormMain formMain,.
string server,.
string sid,.
string schema,.
string user,.
string password).
{.
formMain_ = formMain;
{.
int indexOfColon = server. IndexOf (':');
string optionalPort = ((indexOfColon >= 0)? string. Format (@" Port={0};", server. Substring (indexOfColon + 1)): «»);
connectionString_ = string. Format (.
" Server={0};Sid={1};User Id={2};Password={3};Pooling=False;Direct=True;{4}" ,.
((indexOfColon >= 0)? server. Substring (0, indexOfColon): server),.
sid, user, password, optionalPort);
}.
schema_ = schema;
notificationsRefreshPeriod_ = 0;
nextRefreshTime_ = DateTime. Now;
notifyIcon_ = null;
icons_ = null;
if (formMain_ ≠ null) formMain_.setRefreshEventNotifyIconDelegate (refreshNotifyIcon);
}.
publicbool onIdle ().
{.
if (formMain_ ≠ null).
{.
if (DateTime.Now >= nextRefreshTime_).
{.
int notificationsRefreshPeriod = formMain_.eventNotificationsRefreshPeriod ();
if (notificationsRefreshPeriod_ ≠ notificationsRefreshPeriod).
{.
notificationsRefreshPeriod_ = notificationsRefreshPeriod;
refreshPeriod_ = newTimeSpan (.
notificationsRefreshPeriod / 60,.
notificationsRefreshPeriod % 60,.
0);
if (notifyIcon_ == null).
{.
notifyIcon_ = new System.Windows.Forms.NotifyIcon ();
notifyIcon_.Text = @" ЭПОС: Оповещения о событиях" ;
}.
if (icons_ == null).
{.
icons_ = new System.Drawing.Icon[].
{.
new System.Drawing.Icon («Resources/notify_round00.ico»),.
new System.Drawing.Icon («Resources/notify_round01.ico»),.
new System.Drawing.Icon («Resources/notify_round02.ico»),.
new System.Drawing.Icon («Resources/notify_round03.ico»),.
new System.Drawing.Icon («Resources/notify_round04.ico»),.
new System.Drawing.Icon («Resources/notify_round05.ico»),.
new System.Drawing.Icon («Resources/notify_round06.ico»),.
new System.Drawing.Icon («Resources/notify_round07.ico»),.
new System.Drawing.Icon («Resources/notify_round08.ico»),.
new System.Drawing.Icon («Resources/notify_round09.ico»),.
new System.Drawing.Icon («Resources/notify_round10.ico»),.
};
}.
}.
refreshNotifyIcon ();
}.
returntrue;
}.
returnfalse;
}.
Приложение2.
Листинг класса Request Notifications.
classRequestNotifications.
{.
private UI.Main.FormMain formMain_;
privatestring connectionString_;
privatestring schema_;
privateint notificationsRefreshPeriod_;
privateDateTime nextRefreshTime_;
privateTimeSpan refreshPeriod_;
private System.Windows.Forms.NotifyIcon notifyIcon_;
System.Drawing.Icon[] icons_ = null;
public IdleHandler_RequestNotifications (.
UI.Main.FormMain formMain,.
string server,.
string sid,.
string schema,.
string user,.
string password).
{.
formMain_ = formMain;
{.
int indexOfColon = server. IndexOf (':');
string optionalPort = ((indexOfColon >= 0)? string. Format (@" Port={0};", server. Substring (indexOfColon + 1)): «»);
connectionString_ = string. Format (.
" Server={0};Sid={1};User Id={2};Password={3};Pooling=False;Direct=True;{4}" ,.
((indexOfColon >= 0)? server. Substring (0, indexOfColon): server),.
sid, user, password, optionalPort);
}.
schema_ = schema;
notificationsRefreshPeriod_ = 0;
nextRefreshTime_ = DateTime. Now;
notifyIcon_ = null;
icons_ = null;
if (formMain_ ≠ null) formMain_.setRefreshRequestNotifyIconDelegate (refreshNotifyIcon);
}.
publicbool onIdle ().
{.
if (formMain_ ≠ null).
{.
if (DateTime.Now >= nextRefreshTime_).
{.
int notificationsRefreshPeriod = formMain_.requestNotificationsRefreshPeriod ();
if (notificationsRefreshPeriod_ ≠ notificationsRefreshPeriod).
{.
notificationsRefreshPeriod_ = notificationsRefreshPeriod;
if (notifyIcon_ == null).
{.
notifyIcon_ = new System.Windows.Forms.NotifyIcon ();
notifyIcon_.Text = @" ЭПОС: Оповещения о запросах" ;
}.
if (icons_ == null).
{.
icons_ = new System.Drawing.Icon[].
{.
new System.Drawing.Icon («Resources/notify_square00.ico»),.
new System.Drawing.Icon («Resources/notify_square01.ico»),.
new System.Drawing.Icon («Resources/notify_square02.ico»),.
new System.Drawing.Icon («Resources/notify_square03.ico»),.
new System.Drawing.Icon («Resources/notify_square04.ico»),.
new System.Drawing.Icon («Resources/notify_square05.ico»),.
new System.Drawing.Icon («Resources/notify_square06.ico»),.
new System.Drawing.Icon («Resources/notify_square07.ico»),.
new System.Drawing.Icon («Resources/notify_square08.ico»),.
new System.Drawing.Icon («Resources/notify_square09.ico»),.
new System.Drawing.Icon («Resources/notify_square10.ico»),.
};
}.
refreshNotifyIcon ();
}.
}.
returntrue;
}.
returnfalse;
}.
privatebool refreshData (refint requestsCount).
{.
bool isDataRefreshed = false;
using (Devart.Data.Oracle.OracleConnection connection = new Devart.Data.Oracle.OracleConnection (connectionString_)).
{.
connection.Open ();
isDataRefreshed = refreshData (connection, ref requestsCount);
connection.Close ();
}.
return isDataRefreshed;
}.
privatebool refreshData (Devart.Data.Oracle.OracleConnection connection, refint requestsCount).
{.
bool isDataRefreshed = false;
using (Devart.Data.Oracle.OracleCommand oracleCommand = new Devart.Data.Oracle.OracleCommand (schema_ + «.notification.get_data_requests_count», connection)).
{.
oracleCommand.CommandType = System.Data.CommandType.StoredProcedure;
try.
{.
oracleCommand.Parameters.Add (new Devart.Data.Oracle.OracleParameter («CNT», Devart.Data.Oracle.OracleDbType.Number, System.Data.ParameterDirection.Output));
oracleCommand.ExecuteNonQuery ();
object objRequestsCount = oracleCommand. Parameters[0]. Value;
if ((objRequestsCount ≠ null) && !(objRequestsCount isDBNull)).
requestsCount = Convert. ToInt32(objRequestsCount);
isDataRefreshed = true;
}.
catch (Devart.Data.Oracle.OracleException ex).
{.
if (ex.Code ≠ 4068).
{.
System.Windows.Forms.MessageBox.Show (Sys.Utils.textOracleUserExc (ex), «Ошибка» ,.
System.Windows.Forms.MessageBoxButtons.OK,.
System.Windows.Forms.MessageBoxIcon.Exclamation);
if (ex.Code == 6550){.
requestsCount = 0;isDataRefreshed = true;
}.
}.
}.
}.
return isDataRefreshed;
}.
publicvoid refreshNotifyIcon ().
{.
int requestsCount = 0;
Devart.Data.Oracle.OracleConnection connection = Sys.DB.DBManager.getConnection ();
bool isDataRefreshed = ((connection ≠ null) && refreshData (connection, ref requestsCount));
if (!isDataRefreshed) isDataRefreshed = refreshData (ref requestsCount);
if (isDataRefreshed).
{.
if ((refreshPeriod_ == null) || (refreshPeriod_ < minRefreshPeriod)).
if (notifyIcon_ ≠ null).
{.
bool showNotifyIcon = ((notificationsRefreshPeriod_ > 0) && (refreshPeriod_ ≠ null));
if (notifyIcon_.Visible ≠ showNotifyIcon) notifyIcon_.Visible = showNotifyIcon;
if (showNotifyIcon).
{.
if ((icons_ ≠ null) && (icons_.Length > 0)).
{.
System.Drawing.Icon icon = icons_[Math.Min (requestsCount, icons_.Length — 1)];
if ((icon ≠ null) && (icon ≠ notifyIcon_.Icon)) notifyIcon_.Icon = icon;
}.
}.
}.
}.
}.
publicvoid hide ().
{.
if ((notifyIcon_ ≠ null) && notifyIcon_.Visible) notifyIcon_.Visible = false;
}.
}.