Разработка подсистемы АСУ "Учёт средств вычислительной техники" для ГОУ ВПО "Северо-Кавказский государственный технический университет"

Диагностический анализ системы управления предприятия, его организационной и функциональной структуры. Разработка проекта подсистемы учёта средств вычислительной техники, описание технического обеспечения базы данных. Характеристика программного продукта.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 28.06.2011
Размер файла 7,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Шумность во всех помещениях не превышает нормы - 50 дБ.

Электромагнитные излучения соответствуют данным паспортов на используемую аппаратуру и не превышают требований СанПиН 2.2.2/2.4.1340-03.

Заключение

В данном дипломном проекте решена задача автоматизации обработки информации при учёте средств вычислительной техники - разработана подсистема «Учёт средств вычислительной техники», как части единой многокомпонентной информационной системы ГОУ СПО «Северо-Кавказский государственный технический университет».

В первом разделе проведен анализ существующего состояния дел университета. На основе рассмотренных основных целей и задач университета были выявлены основные нерешенные проблемы в данной предметной области.

Анализ показал, что в системе циркулирует большой поток документов как между отделами и службами, так и между различными уровнями иерархии системы. С целью ускорения сбора и рассмотрения входящей информации от абитуриента принято решение о развитии механизмов получения и обработки Проанализированы элементы функциональной структуры АСУ, архитектура компьютеров и используемого программного обеспечения. Выявлены и определены узлы автоматизации, определено необходимое организационное обеспечение АСУ. Предложена функциональная структура АСУ организации, которая должна создать единое информационное пространство и предоставить возможность сотрудникам и студентам колледжа связи использовать имеющиеся документы и информацию в полном объеме и с максимальной эффективностью.

В ходе проектирования подсистемы «Учёт средств вычислительной техники» были рассмотрены задачи автоматизации учёта технических средсв с учетом всех необходимых требований. Путем исследования предметной области были выявлены необходимые сущности для хранения в базе данных. Методом последовательной декомпозиции при помощи CASE-средств был выявлен функциональный состав подсистемы. Опираясь на анализ существовавшей подсистемы и на функциональный состав, была построена модель базы данных и определены необходимые таблицы с соответствующими сущностями. В ходе проектирования в качестве СУБД была выбрана система PostgreSQL. В качестве системы разграничения доступа к данным была положена система ролей, реализованная внутри подсистемы. Также были рассмотрены и решены проблемы защиты информации, обеспечения достоверности и целостности информации. Помимо этого, рассмотрен базовый алгоритм взаимодействия пользователя и подсистемы. Подвергнуты рассмотрению вопросы использования программного и технического обеспечения, средств коммуникации. В результате проведенной работы был представлен проект надежной и эффективной подсистемы учёта средств вычислительной техники.

В ходе работы над подсистемой составлена вся необходимая рабочая документация на проект. При создании описания упор делался на лаконичность и понятность содержания, при этом учитывалось, что обслуживать систему должен специалист. В техническом описании указано назначение проекта и условия его применения. В руководстве программиста описано, как развернуть и настроить подсистему. В руководстве пользователя отражена информация о том, как использовать инструментарий подсистемы. При описании контрольного примера выяснено, что разработка соответствует поставленной задаче.

Разработка подсистемы «Учёт средств вычислительной техники» ГОУ ВПО «Северо-Кавказский государственный технический университет» выгодна с экономической точки зрения. Расчетный срок окупаемости проекта составляет 1,56 года, что является нормальным для такого рода систем. Общая трудоемкость разработки составляет 180 дней, большая часть из которых, приходится на разработку технического и рабочего проекта: 96 и 37 дней соответственно.

В дипломном проекте решены вопросы охраны труда и безопасности жизнедеятельности, произведен расчет освещенности рабочего места. Также затронуты вопросы обеспечения микроклимата и эргономичности рабочих мест. Все определенные законодательством показатели соблюдены в полном объеме.

Таким образом, в дипломном проекте решена инженерная задача по раработке подсистемы АСУ «Учёт средств вычислительной техники» для ГОУ ВПО «Северо-Кавказский государственный технический университет». Поставленные задачи на дипломное проектирование выполнены в полном объеме.

Список используемых источников

1. Устав Северо-Кавказского Государственного технического университета № 24Г-0280 от 01.04.99 года.

2. Северо-Кавказскому Государственному техническому университету - 30 лет. - Ст.: Типография СевКавГТУ, 2001.

3. http://www.ncstu.ru - Официальный сервер Северо-Кавказского Государственного технического университета.

4. Должностные инструкции начальника отдела эксплуатации и обслуживания компьютерных классов, 2005.

5. Проектирование экономических информационных систем: Учебник/Г.Н. Смирнова, А.А. Сорокин, Ю.Ф. Тсльнов; Под ред. Ю.Ф. Тельнова. - М.: Финансы и статистика, 2003. - 512 с: ил.

6. Создание информационных систем с AlIFusion Modeling Suite Маклаков С. В. -М.: ДИАЛОГ-МИФИ, 2003 -432 с.

7. PostgreSQL 8.1.0 Documentation by The PostgreSQL Global Development Group Copyright © 1996-2005 The PostgreSQL Global Development Group

8. http://httpd.apache.org/docs/. Apache Software Foundation. Документация сервера Apache, 2005.

9. http://www.medinfo.ru Санитарные нормы к организации и оборудованию рабочих мест с ВДТ и ПЭВМ.

10. http://consultantplus.ru Система нормативной документации Консультант+.

11. PHP Manual Stig Sжther Bakken, Alexander Aulbach , Egon Schmid Copyright © 1997, 1998, 1999, 2000, 2001 by the PHP Documentation Group

12. SQL. Справочник, 2-е издание Клайн К., Ханта Бр. / Пер. с англ. - М.: КУДИЦ-ОБРАЗ, 2006 - 832 с.

13. Архитектура корпоративных программных приложений. Маритин Фаулер: Пер. с англ. -- М.: Издательский дом "Вильяме", 2006. -- 544 с.: ил. -- Парал. тит. англ.

15. http://www.citforum.ru/ - Центр информационных технологий.

16. Алгоритмы: построение и анализ. Т. Кормен, Ч. Лейзерсон, Р. Ривест - М.: МЦНМО, 2001.

17. Безопасность. Технологии, средства, услуги. Барсуков В.С. - М.: Кудиц-образ, 2001 - 496 с.

18. Экология и безопасность жизнедеятельности: Учеб. пособие для вузов / Д. А. Кривошеин, Л. А. Муравей, Н. Н. Роева и др.; Под ред. Л. А. Муравья. - М.: ЮНИТИ-ДАНА, 2000.

19. Безопасность при работе на компьютере: Организация труда на предприятиях информационного обслуживания: Учеб. Пособие. Бурлак Г. Н. - М.: Финансы и статистика, 1998.

20. Гигиенические требования к видео дисплейным терминалам, персональным электронно-вычислительным машинам и организации работы: СанПиН 2.2.2/2.4.1340-03. - М.: Госкомсанэпиднадзор России, 2003.

21. Естественное и искусственное освещение: СНиП 23-05-95. Минстрой России. - М., 1995.

22. Автоматизированные информационные технологии в экономике /Семёнов М.И., Трубин И.Т., Лойко В.И., Барановская Т.П. - М.: Финансы и статистика, 1992.- 154.

Приложение А

Рисунок П.А.1 - Форма инструмента «Ввод заявки»

Рисунок П.А.2 - Форма инструмента «Ввод счёта»

Рисунок П.А.3 - Форма инструмента «Выдача средств»

Рисунок П.А.4 - Форма инструмента «Журнал документов»

Рисунок П.А.5 - Форма инструмента «Печать наклеек»

Рисунок П.А.6 - Форма инструмента «Приходный ордер»

Рисунок П.А.7 - Форма инструмента «Счета за период»

Приложение Б

Листинг wnd00016.php (Инструмент «Накладная материально-ответственного»)

<?php

function wnd00016($pram)

{

$pram = StrToArr($pram);

$USER_ID = get_user_id();

/////////////////////////////////////////////////////////////

///////////////////////// EXCEL /////////////////////////////

$RND = GenRnd(); $exl_str = 0; $exl_col = 0;

$xls =& new Spreadsheet_Excel_Writer("./temp/$RND.xls");

$sheet =& $xls->addWorksheet('Счет');

$sheet->setLandscape();

$sheet->hideGridlines();

/////////////////////////////////////////////////////////////

$sheet->setColumn(0, 0, 3.4);

$sheet->setColumn(0, 1, 10.5);

$sheet->setColumn(0, 2, 74);

$sheet->setColumn(0, 3, 6.3);

$sheet->setColumn(0, 4, 11.4);

$sheet->setColumn(0, 5, 11.4);

$sheet->setColumn(0, 6, 10.4);

/////////////////////////////////////////////////////////////

$xl_bld_10 =& $xls->addFormat();

$xl_bld_10->setTextWrap();

$xl_bld_10->setSize('10');

$xl_bld_10->setBold();

$xl_bld_10->setAlign('justify');

/////////////////////////////////////////////////////////////

$xl_cnt_bld_6_brd =& $xls->addFormat();

$xl_cnt_bld_6_brd->setTextWrap();

$xl_cnt_bld_6_brd->setSize('6');

$xl_cnt_bld_6_brd->setBold();

$xl_cnt_bld_6_brd->setAlign('center');

$xl_cnt_bld_6_brd->setBorder(1);

/////////////////////////////////////////////////////////////

$xl_lft_bld_6_brd =& $xls->addFormat();

$xl_lft_bld_6_brd->setTextWrap();

$xl_lft_bld_6_brd->setSize('6');

$xl_lft_bld_6_brd->setBold();

$xl_lft_bld_6_brd->setAlign('left');

$xl_lft_bld_6_brd->setBorder(1);

/////////////////////////////////////////////////////////////

$xl_rgt_bld_6_brd_dot =& $xls->addFormat();

$xl_rgt_bld_6_brd_dot->setTextWrap();

$xl_rgt_bld_6_brd_dot->setSize('6');

$xl_rgt_bld_6_brd_dot->setBold();

$xl_rgt_bld_6_brd_dot->setAlign('right');

$xl_rgt_bld_6_brd_dot->setBorder(1);

$xl_rgt_bld_6_brd_dot->setNumFormat('0.00');

///////////////////////// EXCEL /////////////////////////////

/////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////

////////////////// Генерация элементов управления ///////////

/////////////////////////////////////////////////////////////

if(!isset($pram['MTCH_fr']))

{

$pram['MTCH_fr'] = 0;

$pram['MTCH_to'] = 0;

$pram['MTCH_cod'] = "";

$pram['MTCH_dat'] = "";

$pram['MTCH_sht'] = 0;

$pram['FTCH_inv'] = "";

$pram['MTCH_sort'] = "tp";

}

$MTCH_fr = $pram['MTCH_fr'];

$fr = $pram['MTCH_fr'];

$MTCH_fr = ctl_lst_sot(0,$MTCH_fr,'MTCH_fr');

$MTCH_to = $pram['MTCH_to'];

$MTCH_to = ctl_lst_sot(0,$MTCH_to,'MTCH_to');

$MTCH_cod = $pram['MTCH_cod'];

$MTCH_cod = "<input type='text' name='MTCH_cod' value='$MTCH_cod' style='font-size: 12px'>";

$MTCH_dat = $pram['MTCH_dat'];

$MTCH_dat = "<input type='text' name='MTCH_dat' value='$MTCH_dat' style='font-size: 12px'>";

$sort = $pram['MTCH_sort'];

$sort_rep = $sort;

$FTCH_inv = $pram['FTCH_inv'];

$inv = $pram['FTCH_inv'];

$FTCH_inv = "<input type='text' name='FTCH_inv' value='$FTCH_inv' ONCHANGE='basmen(); sot_sel()'style='font-size: 12px'>";

/////////////////////////////////////////////////////////////

$MTCH_sht = $pram['MTCH_sht'];

$sht = $pram['MTCH_sht'];

$MTCH_sht = ctl_lst_sht(0, $MTCH_sht, "MTCH_sht");

//////////////////////////////////////////////////////////

$hd_fr = $fr;

if($hd_fr == "storage") $hd_fr = 0;

$q1 = "SELECT

NOW() AS now_dat,

(SELECT fio FROM LstSot_fio WHERE Sot_id='$hd_fr') AS fio,

(SELECT cod FROM JrnDoc WHERE Doc_id='$sht') AS cod,

(SELECT dat FROM JrnDoc WHERE Doc_id='$sht') AS dat";

$QRes = QueryEx($q1); $F=pg_fetch_object($QRes);

if($F->cod == "") $xl_hd_sht = "ВСЕ СЧЕТА"; else $xl_hd_sht = "$F->cod($F->dat)";

/////////////////////////////////////////////////////////////

///////////////////////// EXCEL /////////////////////////////

$text_cel = "Ведомость материальной ответственности на $F->now_dat М/О: $F->fio Счет: $xl_hd_sht";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_bld_10);

$sheet->mergeCells($exl_str, $exl_col, $exl_str, $exl_col+6);

/////////////////////////////////////////////////////////////

$exl_str++;

$text_cel = "№ п/п";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col++;

$text_cel = "Тип";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col++;

$text_cel = "Наименование";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col++;

$text_cel = "Ауд";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col++;

$text_cel = "С/Н";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col++;

$text_cel = "И/Н";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col++;

$text_cel = "Счет";

$sheet->write($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

///////////////////////// EXCEL /////////////////////////////

/////////////////////////////////////////////////////////////

/////////////////////// Формирование таблицы ////////////////

////////////////////////////// Таблица //////////////////////

/////////////////////////////////////////////////////////////

$tbl1 = "";

///////////////////////////////////////////////////////////

if($fr != 'storage') $condition = "c.mt_ot = '$fr'";

else $condition = "c.mt_ot = '0'";

///////////////////////////////////////////////////////////

if($sort == "sn") $sort = "ser, typ, mdl, inv";

if($sort == "in") $sort = "inv, typ, mdl, ser";

if($sort == "ml") $sort = "mdl, typ, inv, ser";

if($sort == "tp") $sort = "typ, mdl, inv, ser";

if($sort == "mt") $sort = "mt_ot1, typ, mdl, inv, ser";

///////////////////////////////////////////////////////////

$condition1 = "Tch_id=Tch_id";

if($sht != 0) $condition1 = "Sht_id='$sht'";

///////////////////////////////////////////////////////////

$norm = "SELECT

a.Tch_id AS tch_id,

b.typ_id AS typ,

b.mdl AS mdl,

b.ser AS ser,

b.inv AS inv,

b.sht_cod AS sht_cod,

c.kab AS kab,

c.kab1 AS kab1,

c.mt_ot AS mt_ot,

c.mt_ot1 AS mt_ot1,

d.kor_id AS kor

FROM

ActTchStt a

LEFT JOIN TchLst b ON b.tch_id = a.tch_id

LEFT JOIN TchStt c ON c.Stt_id = a.Stt_id

LEFT JOIN LstKor d ON d.Kor_id = (SELECT kor_id FROM LstKab WHERE kab_id = c.kab)

WHERE

$condition";

$q1 = "SELECT

a.Tch_id AS tch_id,

(SELECT name FROM LstTyp WHERE Typ_id=a.typ) AS typ,

a.mdl AS mdl,

(SELECT bv_mdl FROM temp.tmp_bv2 WHERE bv_inv=a.inv) AS mdl1,

a.ser AS ser,

a.inv AS inv,

a.sht_cod AS sht_cod,

(SELECT name FROM LstKab WHERE kab_id=a.kab) AS kab,

(SELECT name FROM Lstkor WHERE kor_id=a.kor) AS kor,

(SELECT name FROM LstKab WHERE kab_id=a.kab1) AS kab1,

a.mt_ot AS mt_ot,

a.mt_ot1 AS mt_ot1,

(SELECT fio FROM LstSot_fio WHERE Sot_id=a.mt_ot1) AS vid_fio,

(SELECT bv_fio FROM temp.tmp_bv2 WHERE bv_inv=a.inv) AS fio,

(SELECT Sht_id FROM ShtPos WHERE r_pos = a.tch_id) AS sht_id,

(SELECT Pod_id FROM ShtPos WHERE r_pos = a.tch_id) AS pod_id

FROM

($norm) a";

$q1 = "SELECT

tch_id AS tch_id,

typ AS typ,

mdl AS mdl,

mdl1 AS mdl1,

ser AS ser,

inv AS inv,

sht_cod AS sht_cod,

kab AS kab,

kor AS kor,

kab1 AS kab1,

mt_ot AS mt_ot,

mt_ot1 AS mt_ot1,

vid_fio AS vid_fio,

fio AS fio,

sht_id AS sht_id,

pod_id AS pod_id,

(SELECT cod FROM JrnDoc WHERE Doc_id=a.sht_id) AS sh_cd,

(SELECT dat FROM JrnDoc WHERE Doc_id=a.sht_id) AS sh_dt,

(SELECT fl_rev FROM JrnDoc WHERE Doc_id=a.sht_id) AS fl_rev,

(SELECT cod FROM JrnDoc WHERE Doc_id=a.pod_id) AS pd_cd

FROM

($q1) a

WHERE

$condition1 AND inv LIKE '%$inv%'

ORDER BY

$sort";

///////////////////////////////////////////////////////////

///////////////////////////////// !!!!!!!!!!!!!!! /////////

///////////////////////////////////////////////////////////

// if($fr != 'storage') $q1 = $q2;

///////////////////////////////////////////////////////////

// print("$q1<hr>");

//////////////////////////////////////

// print("$fr <HR> $q2");

//////////////////////////////////////

$QRes = QueryEx($q1);

$i=0; $bg_fl=0;

while($F = pg_fetch_object($QRes))

{

$i++;

if($bg_fl == 1) {$bg_fl = 0; $bg = "white";}

else {$bg_fl = 1; $bg = "#f4f0e8";}

if($F->fl_rev == 1) $rev = "<b>ПРОВЕРЕНО";

else $rev = "";

if(isset($pram["MTCH_pos_".$F->tch_id."_chk"]) AND

$pram["MTCH_pos_".$F->tch_id."_chk"]=="on")

{

$chk = "<input type='checkbox' name='MTCH_pos_" . $F->tch_id . "_chk' checked>";

}

else

{

$chk = "<input type='checkbox' name='MTCH_pos_" . $F->tch_id . "_chk'>";

}

//////////////////////

if(isset($pram["MTCH_pos_" . $F->tch_id . "_inv"])) $inv = $pram["MTCH_pos_" . $F->tch_id . "_inv"];

else $inv = $F->inv;

//////////////////////

if($fr != 'storage') $inv = $inv;

else $inv = "<INPUT type='text' name='MTCH_pos_" . $F->tch_id . "_inv' value='$inv'>";

$mdl1 = ChkNULL($F->mdl1);

$fio1 = ChkNULL($F->fio);

$sh_cd = ChkNULL($F->sh_cd);

$pd_cd = ChkNULL($F->pd_cd);

$kab = ChkNULL($F->kab);

if($F->kab == "" AND $F->kab1 != "") $kab = "!_$F->kab1";

if($F->kor == "") {$F->kor = "-";}

else $F->kor = "$F->kor";

if($F->sht_cod == "") {$F->sht_cod = "-";}

else $F->sht_cod = "$F->sht_cod";

$vid_fio = ChkNULL($F->vid_fio);

//$c_tch = cript_num($F->tch_id, $USER_ID);\"$c_tch\"

$tbl1.= "<tr bordercolordark='white' bgcolor='$bg'>

<td align='center'>$i</td>

<td align='center'>$F->typ</td>

<td ONDBLCLICK='pos_set(2, 91, $F->tch_id)'>$F->mdl</td>

<td align='center'>$mdl1</td>

<td align='center'>$vid_fio</td>

<td align='center'>$F->kor</td>

<td ONDBLCLICK='pos_set(2,32, $F->tch_id)' align='center'>$kab</td>

<td ONDBLCLICK='pos_set(2,34, $F->tch_id)' align='center'>$F->ser</td>

<td ONDBLCLICK='pos_set(2,89, $F->tch_id)' align='center'>$inv</td>

<td align='center'>$fio1</td>

<td align='center'>$F->sht_cod</td>

<td ONCLICK='sht_rev($F->sht_id)' ONDBLCLICK='sht_clk($F->sht_id)' align='center' nowrap>$sh_cd ($F->sh_dt)<br>$rev</td>

<td align='center'>$pd_cd</td>

<td align='center'>$chk</td>

</tr>";

/////////////////////////////////////////////////////////////

///////////////////////// EXCEL /////////////////////////////

$exl_col = 0; $exl_str++;

$text_cel = "$i";

$sheet->writeNumber($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col ++;

$text_cel = "$F->typ";

$sheet->writeString($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col ++;

$text_cel = "$F->mdl";

$sheet->writeString($exl_str, $exl_col, "$text_cel", $xl_lft_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col ++;

$text_cel = "$kab";

$sheet->writeString($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col ++;

$text_cel = "$F->ser";

$sheet->writeString($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col ++;

$text_cel = "$F->inv";

$sheet->writeString($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

/////////////////////////////////////////////////////////////

$exl_col ++;

$text_cel = "$sh_cd($F->sh_dt)";

$sheet->writeString($exl_str, $exl_col, "$text_cel", $xl_cnt_bld_6_brd);

///////////////////////// EXCEL /////////////////////////////

/////////////////////////////////////////////////////////////

}

//////////////////////////////////////////////////////////

/////////////////////// Формирование таблицы /////////////

////////////////////////////// Шапка /////////////////////

//////////////////////////////////////////////////////////

$tbl = "<table cellpadding='0' cellspacing='0' width='100%' height='100%' border='1' bordercolor='black' style='font-size: 12px'>";

$tbl.= "

<tr bordercolordark='white' bgcolor='#D4D0C8' align='center'>

<td><b>№</td>

<td ONCLICK='sort_clk(\"tp\")'><b>Тип</td>

<td ONCLICK='sort_clk(\"ml\")'><b>Название</td>

<td><b>Название по Б/В</td>

<td ONCLICK='sort_clk(\"mt\")'><b>Выдано</td>

<td><b>Корпус</td>

<td><b>Кабинет</td>

<td ONCLICK='sort_clk(\"sn\")'><b>Серийный</td>

<td ONCLICK='sort_clk(\"in\")'><b>Инвентарный</td>

<td><b>М/О по Б/В</td>

<td><b>П/С</td>

<td><b>СЧЕТ</td>

<td><b>ОРДЕР</td>

<td><b>X</td>

</tr>

$tbl1

<tr height='100%'>

<td>

</td>

</tr>

</table>

";

//////////////////////////////////////////////////////////

$html = "

<script type='text/javascript'>

function sht_clk(sht)

{

document.main.REP_sht.value = sht;

act_set(2, 3);

}

function sort_clk(srt)

{

document.main.MTCH_sort.value = srt;

act_set(0, 39);

}

function sht_rev(sht)

{

document.main.REVSHT_sht.value = sht;

act_set(2, 46);

}

function pos_set(act, wnd, pos)

{

document.main.HPOS_num.value = pos;

act_set(act, wnd);

}

function sot_sel()

{

act_set(0, 16);

}

function reloadd()

{

act_set(0, 16);

}

function kab_set(tch)

{

document.main.HPOS_num.value = tch;

act_set(2, 32);

}

function act_set(act, wnd)

{

document.main.act.value = act;

document.main.wnd.value = wnd;

document.main.submit();

}

</script>

<table border='1' height='100%' width='100%'>

<tr>

<td bordercolor='#D4D0C8'>

<b>Перемещение материальных ценностей

</td>

</tr>

<tr>

<td>

<table>

<FORM name='main' method='POST'>

<input type='hidden' name='wnd' value='16'>

<input type='hidden' name='act' value=''>

<input type='hidden' name='HPOS_num' value=''>

<input type='hidden' name='REP_sht' value=''>

<input type='hidden' name='REVSHT_sht' value=''>

<input type='hidden' name='MTCH_sort' value='$sort_rep'>

<tr>

<td>Накладная:</td>

<td>$MTCH_cod</td>

<td>от:</td>

<td>$MTCH_dat</td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<table>

<tr>

<td>Сдатчик:</td>

<td>$MTCH_fr</td>

</tr>

<tr>

<td>Получатель:</td>

<td>$MTCH_to</td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<table>

<tr>

<td>Фильтр по счетам:</td><td>$MTCH_sht</td>

<td>Поиск по инв. номеру:</td><td>$FTCH_inv</td>

</tr>

</table>

</td>

</tr>

<tr height='100%'>

<td bgcolor='white'>

<div style='height: 100%;overflow: auto'>$tbl</div>

</td>

</tr>

<tr>

<td bordercolor='#D4D0C8' align='right'>

<input type='button' value='EXCEL' style='font-size: 10px; width: 80' ONCLICK='window.open(\"./temp/$RND.xls\")'>

<input type='button' name='per' value='переместить' style='font-size: 10px; width: 80' ONCLICK='act_set(1,16)'>

</td>

</tr>

</FORM>

</table>

";

///////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////

///////////////////////// EXCEL ///////////////////////////

$xls->close();

///////////////////////// EXCEL ///////////////////////////

///////////////////////////////////////////////////////////

return($html);

}

?>

Листинг wnd00016_EX.php (Инструмент «Накладная материально-ответственного)»

<?php

function wnd00016_EX($pram, $Sot)

{

$StrParm = $pram;

$pram = StrToArr($pram);

$MTCH_fr = $pram['MTCH_fr'];

$MTCH_to = $pram['MTCH_to'];

$MTCH_dat = $pram['MTCH_dat'];

$MTCH_cod = $pram['MTCH_cod'];

///////////////////////////////////////////////////////////////////

$q1 = "INSERT INTO JrnDoc (DTyp_id, Sot_id, ParStr, dat, tim, cod)

VALUES ('16','$Sot','$StrParm', '$MTCH_dat', NOW(), $MTCH_cod )";

QueryEx($q1);

///////////////////////////////////////////////////////////////////

$q1 = "SELECT currval('jrndoc_doc_id_seq') AS id";

$QRes = QueryEx($q1);

$F = pg_fetch_object($QRes);

$Doc = $F->id;

///////////////////////////////////////////////////////////////////

foreach($pram AS $a => $b)

{

$Arr = explode('_', $a);

if($Arr[0] == "MTCH" AND $Arr[1] == "pos" AND $Arr[3] == "chk")

{

$Pos = $Arr[2];

$q1 = "SELECT MAX(Stt_id)

FROM Tch_Stt

WHERE Tch_id = '$Pos'";

$q2 = "SELECT *

FROM TchStt

WHERE Stt_id=($q1)";

$QRes = QueryEx($q2);

while($rec = pg_fetch_assoc($QRes))

{

$LstStt = $rec["stt_id"];

unset($rec["stt_id"]);

$rec["mt_ot"] = $MTCH_to;

$rec["stat"] = '10';

$rec["kab"] = 0;

$rec["mt_ot1"] = 0;

$rec["ipn"] = '-';

$rec["msk"] = '-';

$rec["shl"] = '-';

$fl = 0;

$nam_str = "";

$val_str = "";

foreach($rec AS $name => $val)

{

$fl++;

if($fl == 1)

{

$nam_str.= "$name";

$val_str.= "$val";

}

else

{

$nam_str.= " ,$name";

$val_str.= " ,'$val'";

}

}

///////////////////////////////////////////////////////

$q1="INSERT INTO TchStt ($nam_str)

VALUES ($val_str)";

QueryEx($q1);

///////////////////////////////////////////////////////

$q1 = "SELECT currval('tchstt_stt_id_seq') AS id";

$QRes = QueryEx($q1);

$F = pg_fetch_object($QRes);

$Stt = $F->id;

// $Stt = mysql_insert_id();

///////////////////////////////////////////////////////

$q1 = "INSERT INTO Tch_Stt (Tch_id, Stt_id, Doc_id, dat, tim)

VALUES ('$Pos','$Stt','$Doc', NOW() , NOW())";

QueryEx($q1);

///////////////////////////////////////////////////////

if($MTCH_fr == 'storage')

{

$inv = $pram['MTCH_pos_' . "$Pos" . '_inv'];

$q1 = "UPDATE

TchLst

SET

inv='$inv'

WHERE

Tch_id = '$Pos'";

QueryEx($q1);

}

}

}

}

}

?>

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.