Разработка программных средств для актуализации структур баз данных при расчётах и оптимизации трубопроводных систем
Информационно-вычислительный комплекс "Ангара" для компьютерного моделирования трубопроводных систем энергетики. Генерации SQL скрипта структуры базы данных и средства программного доступа. Описание интерфейса пользователя и его режимы генерации.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 09.05.2014 |
Размер файла | 5,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Тогда, издержки на основную заработную плату обслуживающего персонала составят:
Зоснзп = 12*(2500 + 1500) = 48000 руб.
Сумма дополнительной заработной платы составляет 60% от основной заработной платы:
Здопзп = 0.6*48000 = 28800 руб.
Сумма отчислений на социальные нужды составляет 40.5% от суммы дополнительной и основной заработных плат:
Зотчзп = 40.5*(48000 + 28800) = 48240 руб.
Тогда годовые издержки на заработную плату обслуживающего персонала составят:
Ззп = 48000 + 28800 +48240= 125040 руб.
9. Полные затраты на эксплуатацию ЭВМ
Полные затраты на эксплуатацию ЭВМ в течение года составят:
Зэвм = 125040+2612,5+512+209+1045+1045= 130463,5 руб.
Тогда цена часа арендуемого времени составит
Счас = 130463,5 / 1760 = 74 руб.
А затраты на оплату машинного времени составят:
Змвспп = 74 * 99,2 = 7340,8 руб.
10. Расчёт расходов на приобретение программного обеспечения
Таблица 10 Расчет расходов на ПО.
№ |
Наименование ПО |
Кол-во |
Стоимость за единицу |
Общая стоимость |
|
1 |
Borland Delphi |
1 шт. |
31000 руб. |
31000 руб. |
|
2 |
MS SQL Server 2005 |
1 шт. |
39000 руб. |
39000 руб. |
Итого: 60000 руб.
ЗПО = 60000 руб.
11. Расчёт общих расходов
Общие расходы это расходы на освещение, отопление, коммунальные услуги и т.п. Они принимаются равными одной трети основой зарплаты разработчика программы т.е. Зобщ = 7333 руб.
Тогда затраты на создание программного продукта составят:
Зспп = 22000 + 7340,8 + 60000 + 7333= 96673,8 руб.
Выводы по разделу:
В результате расчета затраты на разработку программного продукта 96673,8,8 руб. В данном случае трудно определить прямой экономический эффект, но внедрение системы позволит автоматизировать весьма важный процесс ввода данных, вследствие чего экономическая эффективность будет выражена качественными показателями:
· повышение производительности труда;
· улучшения качества ввода;
· снижение требований к персоналу при устройстве на работу.
Заключение
В ходе выполнения данной дипломной работы достигнуты следующие результаты:
1. Выполнен анализ в области ТПС энергетики. Дана краткая характеристика ТПС как объекта моделирования. Рассмотрены задачи моделирования (синтез, анализ, управление), области применения методов моделирования (проектирование ТПС, эксплуатация, диспетчерское управление, исследовательские и обучающие цели применения), а так же информационно вычислительный комплекс "Ангара" для компьютерного моделирования ТПС (назначение, функции, организация БД).
2. Для каждого из типов ТПС разрабатывается соответствующее программное обеспечение для проектирования, расчёта, оптимизации режимов и др. Так же постоянно появляются новые технические средства контроля и управления режимами ТПС, что открывает новые возможности. Всё это приводит к необходимости постоянной модификации БД, появлению новых таблиц, атрибутов, связей. Для повышения эффективности применения методов математического моделирования требуется разработка соответствующих программных средств. Одной из задач, возникающих при разработке и использовании программ, является автоматизация процессов актуализации БД.
3. Выполнен анализ существующих подходов для обновления структуры пространственно распределённых БД. Рассмотрены существующие технологии.
4. В разных СУБД реализация функциональных возможностей различна. Существует много технологий для обновления структуры баз данных.
Наиболее подходящей СУБД для решения данной задачи является Microsoft SQL Server. Для манипуляции с данными, используется язык SQL. SQL обеспечивает независимость от конкретных СУБД, что является одной из наиболее важной причиной его выбора, также язык SQL является простым и лёгким для изучения. В подавляющем большинстве современных СУБД метаданные определяются с помощью языка SQL (Structured Query Language). В реализованной программе для доступа к данным применяется ADO. С помощью ADO можно получить доступ к данным, но нельзя считывать структуру БД. Для этого, применяется ADOX с помощью которого, можно решать различные задачи, недоступные с помощью обычных объектов ADO. SQL Script дополняет и создаёт БД.
5. Произведено обоснование выбора инструментальных средств, рассмот рена характеристика реализации. Разработана программа для автоматизации обновления структуры баз данных программного обеспечения ТПС. Назначение программы состоит в том, что бы максимально освободить пользователя от необходимости знания программирования и теории систем БД, а также позволяет решать конкретные задачи в области расчёта и оптимизации ТПС. Обновлять структуру БД, а также данные.
Список литературы
1. Громов Н. К. Городские теплофикационные системы. М. :Энергия, 1974.
2. Сафонов А. П. Автоматизация систем централизованного теплоснабжения. -М., 1974.
3. Соколов Е. Я. Теплофикация и тепловые сети, 4 изд. - М., 1975.
4. Зингер И. М. Гидравлические и тепловые режимы теплофикационных систем. -М.: Энергия, 1976.
5. Чистович С.А., Аверьянов В.К., Темпель Ю.Я. и др. Автоматизированные системы теплоснабжения и отопления. Л.: Стройиздат., 1987.
6. Горская Н. И. Автоматизация выявления повреждений в тепловых сетях. - Новосибирск: Наука, 1987.
7. Сеннова Е. В., Сидлер В. Г. Математическое моделирование и оптимизация развивающихся теплоснабжающих систем. - Новосибирск: Наука, 1987.
8. Сеннова Е.В. Оптимизация развития и реконструкции теплоснабжающих систем. - Новосибирск: Наука, 1987.
9. Меренков А. П., Сеннова Е. В., Сумароков С. В. и др. Математическое моделирование и оптимизация систем тепло-, водо-, нефте- и газоснабжения. - Новосибирск: ВО Наука, 1992.
10. Разработка и развитие методических основ и алгоритмической базы для комплексного решения задач управления функционированием современных трубопроводных систем энергетики. Отчет о комплексной научно-исследовательской работе; руководитель А. П. Меренков, ответственный исполнитель Н. Н. Новицкий. Иркутск: ИСЭМ СО РАН, 1993.
11. Сеннова Е. В., Каганович Б. М., Ощепкова Т. Б. Исследование надежности при оценке различных принципов построения теплофикационных систем// Методические вопросы исследования надежности больших систем энергетики. -1975.
12. Разработать научно-методические материалы по разработке ТЗ на АСУТП систем теплоснабжения. Научный отчет. М.: ВНИПИЭнергопром, 1988.
13. О разработке основных положений по управлению функционированием систем централизованного теплоснабжения крупных городов. Научный отчет. -Новосибирск: Сибтехэнерго, 1986.
14. Сидлер В. Г. Линейная и нелинейная модели для оценивания параметров гидравлических сетей. - Иркутск: ИСЭМ СО РАН, 1977.
15. Сидлер В. Г., Новицкий Н. Н. Идентификация трубопроводных систем как гидравлических цепей с переменными параметрами. - Иркутск: ИСЭМ СО РАН, 1984.
16. Гарсия-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс: Пер. с англ. - М.: Вильяме, 2003. - 1088 с.
17. Дейт К. Введение с системы баз данных. Шестое издание. Киев: Диалектика, 1998. - 784 с.
18. Мартин Дж. Организация баз данных в вычислительных системах. - М.: Мир, 1980. - 662 с.
19. Массель Л.В., Болдырев Е.А., Горнов А.Ю. Интеграция информационных технологий в системных исследованиях энергетики. - Новосибирск: Наука, 2003. - 320 с.
20. Харриштон Д. Проектирование объектно-ориентированных баз данных: Пер. с англ. - М.: ДКМ Пресс, 2001. - 272 с.
21. http://www.intersystems.ru
22. Сборник научных трудов института проблем моделирования в энергетике им. Г.Е. Пухова. Информационные технологии в энергетике. - Киев: Диалектика, 2004. - 105 с.
23. Урман Ск. Огас1е9i. Программирование на языке PL/SQL. Пер. с англ. -М.: Лори, 2004. - 528 с.
24. Луни К., Терьо М. Огас1е9i. Настольная книга администратора: Пер. с англ. - М.: Лори, 2003. - 766 с.
25. Эбби М., Кори М., Абрамсон И. Первое знакомство: Основы баз данных Огас1е9i: Пер. с англ.--М.:Вилъямс, 2003. -518с.
26. Пирогов В. MS SQL Server 2000: управление и программирование. Спб.: БХВ-Петербург, 2005,- 598 с,
27. Гарсиа М., Рединг Дж., Уолен Э., ДеЛюк С, Microsoft SQL Server 2000. Справочник администратора. - Спб.: СП ЭКОМ, 2004. -976 с.
28. Мамаев Е. Microsoft SQL Server 2000. Наиболее полное руководство. -Спб.: БХВ-Петербург, 2004, - 1280 с.
29. Бавдик Н.В. Электромагнитная безопасность человека. -Иркутск: Изд-во ИрГТУ. - 2002. -92 с.
30. СанПиН 2.2.4.548-96. Гигиенические требования к микроклимату производственных помещений.
31. ГОСТ 12.1.005-88 ССБТ. Воздух рабочей зоны. Общие санитарно-гигиенические требования.
32. СанПиН 2.2.1/2.1.1.1278-03. Естественное и искусственное освещение.
33. СН 2.2.4/2.1.8.562-96. Шум на рабочих местах в помещениях жилых общественных зданий и на территории жилой застройки.
34. СанПиН 2.2.2/2.5.1340-03. Гигиенические требования к персональным электронно-вычислительным машинам и организация работ.
35. СанПиН 2.2.2.542-96. Гигиенические требования к видеодисплейным терминалам, персональным электронно-вычислительным машинам и организация работы.
36. ГОСТ 12.1.038-82 ССБТ. Электробезопасность. Общие требования безопасности.
37. НПБ 105-03. Определение категорий помещений, зданий и наружных установок по взрывопожарной и пожарной опасности.
Приложение
Автоматический режим
1.1 Сверка структуру БД
procedure TFDiplomADOX.BCheckStrucClick(Sender: TObject);
var
i,j,IZcount,Vcount,IZlevel:integer;
IZtext,Vtext:string;
begin
LockWindowUpdate(PM.Handle);
Screen.Cursor:= crHourGlass;
TVIZ.Items.BeginUpdate;
TVIZ.FullExpand;
TVV.FullExpand;
IZcount:=TVIZ.Items.Count;
Vcount:=TVV.Items.Count;
i:=IZcount-1;
if (IZcount > 1) and (Vcount > 1) then
begin while i <> 1 do
begin TVIZ.Items.Item[i].Selected:=true;
IZtext:=TVIZ.Items.Item[i].Text;
IZlevel:=TVIZ.Items.Item[i].Level;
j:=Vcount-1;
while j <> 1 do
begin TVV.Items.Item[j].Selected:=true;
Vtext:=TVV.Items.Item[j].Text;
if (IZlevel = 4) and (GetStrItemsName(IZtext) = Vtext) then
begin
TVIZ.Items.Item[i].Delete;
break; end; dec(j); end; dec(i); end; end;
IZcount:=TVIZ.Items.Count;
Vcount:=TVV.Items.Count;
i:=IZcount-1;
if (IZcount > 1) and (Vcount > 1) then
begin while i <> 1 do
begin
TVIZ.Items.Item[i].Selected:=true;
IZtext:=TVIZ.Items.Item[i].Text;
IZlevel:=TVIZ.Items.Item[i].Level;
j:=Vcount-1;
while j <> 1 do
begin
TVV.Items.Item[j].Selected:=true;
Vtext:=TVV.Items.Item[j].Text;
if (IZlevel = 3) and ((IZtext = 'Columns') or (IZtext = 'Keys')) and (not TVIZ.Items.Item[i].HasChildren) then
begin
TVIZ.Items.Item[i].Delete;
break; end; dec(j); end; dec(i); end; end;
IZcount:=TVIZ.Items.Count;
Vcount:=TVV.Items.Count;
i:=IZcount-1;
if (IZcount > 1) and (Vcount > 1) then
begin while i <> 1 do
begin
TVIZ.Items.Item[i].Selected:=true;
IZtext:=TVIZ.Items.Item[i].Text;
IZlevel:=TVIZ.Items.Item[i].Level;
j:=Vcount-1;
while j <> 1 do
begin
TVV.Items.Item[j].Selected:=true;
Vtext:=TVV.Items.Item[j].Text;
if (IZlevel = 2) and GetStrTable(IZtext) and (not TVIZ.Items.Item[i].HasChildren) then
begin
TVIZ.Items.Item[i].Delete;
break; end; dec(j); end; dec(i); end; end;
IZcount:=TVIZ.Items.Count;
TVIZ.Items.Item[1].Selected:=true;
TVIZ.Items.EndUpdate;
LockWindowUpdate(0);
Screen.Cursor:= crDefault;
if IZcount <= 2
then begin Struc:=true;
if not check
then application.MessageBox('Различий в структурах БД не обнаружено','Внимание',MB_OK+MB_ICONINFORMATION)
else
begin
application.MessageBox('Структура БД перенесена успешно, Различий в структурах БД не обнаружено','Внимание',MB_OK+MB_ICONINFORMATION);
check := false; end; end
else begin
Struc:=true; end; end;
1.2 Перенос структуры БД
procedure TFDiplomADOX.BGenerateStrucClick(Sender: TObject);
var
count,i,j:integer;
text:string;
begin
FOptions.ShowModal;
if (st >= 0) and (fin >= 0) then
begin
FLAGC:=FAlSE;
LockWindowUpdate(TVIZ.Handle);
Screen.Cursor:= crHourGlass;
count:=TVIZ.Items.Count;
for i := st to fin do
begin
for j := 1 to Count - 1 do
begin
TVIZ.Items.Item[j].Selected:=true;
text:=TVIZ.Items.Item[j].Text;
if GetStrTable(text) then
begin
if (i = 0) and (not FLAGC) then BCreateTClick(Sender);
if (i = 1) and (not FLAGC) then BAlterTPKClick(Sender);
if (i = 2) and (not FLAGC) then BAlterTFKClick(Sender);
end;
end;
end;
TVIZ.FullCollapse;
if TVIZ.Items.Count > 2 then
TVIZ.Items.Item[2].MakeVisible else
TVIZ.Items.Item[1].MakeVisible;
FLAG:=TRUE;
M.Lines.SaveToFile('SQLReport.sql');
M.Lines.Clear;
MenuConnect2Click(Sender);
LockWindowUpdate(0);
Screen.Cursor:= crDefault;
Check:=true;
if TVIZ.Items.Count < 1000 then
BCheckStrucClick(Sender);
end;
end;
1.3 Перенос данных БД
procedure TFDiplomADOX.BReportDataClick(Sender: TObject);
begin
if FileExists('MsExport.exe')
then winexec(pchar('MsExport.exe'),1)
else application.MessageBox('Файл "\MsExport.exe" не найден','Ошибка',MB_OK+MB_ICONERROR);
end;
procedure TFDiplomADOX.ExecSQLClick(Sender: TObject);
begin
CatalogD := CoCatalog.Create;
if FileExists(pDS)
then E0.Text:='OK'
else CatalogD.Create(DS);
Con.Close;
Con.ConnectionString:=DS;
Con.Open;
M.Lines.Add(E.Text);
Q.SQL.Text:=E.Text;
Q.ExecSQL();
Q.Close;
LMess.Caption:='';
E.Clear;
end;
Ручной режим
1.4 Создание таблицы
procedure TFDiplomADOX.BCreateTClick(Sender: TObject);
var
count,ai,ailc,i:integer;
Field:boolean;
begin
i:=1;
Gen:=1;
count:=TVIZ.Items.Count;
if (count <=2) or (TVIZ.Selected.Level <> 2) then
begin
application.MessageBox('Выберите в дереве (слева) название таблицы которую хотите создать','Ошибка',MB_OK+MB_ICONERROR);
exit;
end;
TVIZClickAll(tviz);
count:=TVIZ.Items.Count;
ai:=TVIZ.Selected.AbsoluteIndex;
ailc:=TVIZ.Items.Item[ai].GetLastChild.AbsoluteIndex;
TVIZ.Items.Item[ailc+i].Selected:=true;
while TVIZ.Selected.Parent.Text = 'Columns' do
begin
TVIZClickAll(tviz);
inc(i);
Field:=true;
if ailc+i <> count
then TVIZ.Items.Item[ailc+i].Selected:=true
else break;
end;
if Field then
begin
ExecSQLClick(Sender);
Field:=false;
end
else e.Text := 'Нет полей!';
if FLAGC then MenuConnect2Click(Sender);
TVIZ.Items.Item[ai].Selected:=true;
TVIZ.SetFocus;
end;
1.5 Создание Primary Keys
procedure TFDiplomADOX.BAlterTPKClick(Sender: TObject);
var
count,ai,aifc,i:integer;
text:string;
PK:boolean;
begin
i:=1; Gen:=2;
count:=TVIZ.Items.Count;
if (count <=2) or (TVIZ.Selected.Level <> 2) then
begin
application.MessageBox('Выберите в дереве (слева) название таблицы в которой есть PK','Ошибка',MB_OK+MB_ICONERROR);
LMess.Caption:='Внимание! PK может быть создан только после создания всех таблиц (с полями)';
exit; end;
TVIZClickAll(tviz);
ai:=TVIZ.Selected.AbsoluteIndex;
aifc:=TVIZ.Items.Item[ai].getFirstChild.AbsoluteIndex;
TVIZ.Items.Item[aifc+i].Selected:=true;
while (TVIZ.Selected.Parent.Text = 'Keys') do
begin Text:=TVIZ.Selected.Text;
if (GetStrPK_Keys(Text) = 1) then
begin
TVIZClickAll(tviz);
PK:=TRUE;
end;
inc(i);
if aifc+i <> count
then TVIZ.Items.Item[aifc+i].Selected:=true
else break;
end;
if PK then
begin
ExecSQLClick(Sender);
PK:=false;
end
else e.Text := 'Нет идентификационных ключей!';
if FLAGC then MenuConnect2Click(Sender);
TVIZ.Items.Item[ai].Selected:=true;
TVIZ.SetFocus; end;
1.6 Создание Foreign Keys
procedure TFDiplomADOX.BAlterTFKClick(Sender: TObject);
var
count,ai,aifc,i:integer;
text:string;
FK:boolean;
begin
i:=1;
Gen:=2;
count:=TVIZ.Items.Count;
if (count <=2) or (TVIZ.Selected.Level <> 2) then
begin
application.MessageBox('Выберите в дереве (слева) название таблицы в которой FK','Ошибка',MB_OK+MB_ICONERROR);
LMess.Caption:='FK может быть создан только после создания всех таблиц (с полями) и PK';
exit;
end;
TVIZClickAll(tviz);
ai:=TVIZ.Selected.AbsoluteIndex;
aifc:=TVIZ.Items.Item[ai].getFirstChild.AbsoluteIndex;
TVIZ.Items.Item[aifc+i].Selected:=true;
while (TVIZ.Selected.Parent.Text = 'Keys') do
begin
Text:=TVIZ.Selected.Text;
if (GetStrFK_Keys(Text) = 2) then
begin
TVIZClickAll(tviz);
FK:=TRUE;
end; inc(i);
if aifc+i <> count
then TVIZ.Items.Item[aifc+i].Selected:=true
else break; end;
if FK then
begin
ExecSQLClick(Sender);
FK:=false;
End else e.Text := 'Нет внешних ключей!';
if FLAGC then MenuConnect2Click(Sender);
TVIZ.Items.Item[ai].Selected:=true;
TVIZ.SetFocus; end;
1.7 Добавление поля
procedure TFDiplomADOX.BAlterColClick(Sender: TObject);
var
count,ai,aifc,i:integer;
Col:boolean;
begin
i:=1;
Gen:=3;
count:=TVIZ.Items.Count;
if not Struc then
begin
LMess.Caption:='Поле может быть создано только после сверки структур БД';
exit;
end;
if (count <=2) or (TVIZ.Selected.Level <> 2) then
begin
application.MessageBox('Выберите в дереве (слева) название таблицы в которой есть поле для создания','Ошибка',MB_OK+MB_ICONERROR);
exit; end;
TVIZClickAll(tviz);
ai:=TVIZ.Selected.AbsoluteIndex;
aifc:=TVIZ.Items.Item[ai].getLastChild.AbsoluteIndex;
TVIZ.Items.Item[aifc+i].Selected:=true;
while (TVIZ.Selected.Parent.Text = 'Columns') do
begin
TVIZClickAll(tviz);
inc(i);
Col:=TRUE;
if aifc+i <> count
then TVIZ.Items.Item[aifc+i].Selected:=true
else break;
end;
if Col then
begin
ExecSQLClick(Sender);
Col:=false;
end
else e.Text := 'Нет дополнительных полей!';
if FLAGC then MenuConnect2Click(Sender);
TVIZ.Items.Item[ai].Selected:=true;
TVIZ.SetFocus; end;
1.8 Создание отчёта SQL
procedure TFDiplomADOX.BCreateRClick(Sender: TObject);
begin
if M.Lines.Count > 0 then
M.Lines.SaveToFile('SQLReport.sql');
if FileExists('SQLReport.sql') then
begin
FSQLReport.MRep.Clear;
FSQLReport.Caption:='SQLReport.sql';
FSQLReport.MRep.Lines.LoadFromFile('SQLReport.sql');
FSQLReport.ShowModal;
end;
end;
Размещено на Allbest.ru
Подобные документы
Формирование входных и выходных данных, SQL–скрипт генерации таблиц базы данных. Создание интерфейса программного приложения и проектирование форм базы данных. Требования к аппаратно–программному обеспечению. Инструкции по установке и эксплуатации.
курсовая работа [1,6 M], добавлен 08.02.2013Проектирование реляционной базы данных с помощью прикладного программного средства MS ACCESS. Описания особенностей использования запросов для извлечения, изменения и удаления информации из базы данных. Характеристика структуры интерфейса пользователя.
курсовая работа [1,6 M], добавлен 19.11.2012Проектирование логической структуры базы данных методом нормальных форм, сущность связь. Сравнительный анализ спроектированной базы данных и базы данных существующих информационных систем. Выбор и обоснование состава технических и программных средств.
курсовая работа [3,0 M], добавлен 22.12.2014Выбор сервера базы данных, инструментальных средств разработки клиентского интерфейса и технологий. Описание таблиц базы данных системы мониторинга. Разработка инструментальных средств создания элементов системы. Интерфейс генерации тестов. Расчет затрат.
дипломная работа [1,9 M], добавлен 12.03.2013Выбор состава технических и программных средств разработки системы. Описание входных и выходных данных. Выбор модели базы данных. Разработка подсистемы наполнения базы данных, формирования отчетов. Разработка интерфейса пользователя, тестирование системы.
курсовая работа [3,7 M], добавлен 04.12.2014Рассмотрение инфологической и даталогической модели базы данных кинотеатров города. Разработка базы данных в программе MS Access. Описание структуры приложения и интерфейса пользователя. Изучение SQL-запросов на вывод информации о кинотеатре и о фильме.
курсовая работа [1,1 M], добавлен 04.09.2014Составление схемы концептуальной модели данных. Разработка структуры реляционной базы данных и интерфейса пользователя. Особенности главных этапов проектирования базы данных. Способы реализации запросов и отчетов. Специфика руководства пользователя.
курсовая работа [186,9 K], добавлен 18.12.2010Разработка программного средства, внесение в него отчета, данных о находках, отображение археологических памятников на карте, автоматической генерации отчета по заданному шаблону. Функциональные требования к онлайн–карте. Описание структуры базы данных.
курсовая работа [2,5 M], добавлен 29.08.2014Проектирование модели базы данных с помощью Erwin: выделение сущностей предметной области и их атрибутов. Разработка SQL-скрипта, предназначенного для генерации базы данных в формате MS SQL Server 2005. Создание процедур и написание проверочных кодов.
контрольная работа [1,1 M], добавлен 31.03.2012Описание первичных и результатных документов, типа связи информационных объектов. Построение информационно-логической модели базы данных и её реализация в СУБД Access (создание таблиц, запросов, форм, отчётов). Разработка интерфейса пользователя.
курсовая работа [2,1 M], добавлен 14.11.2013