Автоматизированная система учета отказов и основных дефектов электроэнергетического оборудования

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

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

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

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

Программный продукт располагается на сервере и доступ к нему осуществляется удаленно с клиентской машины.

Список использованных источников

1. Технический кодекс установившейся практики. Расследование и учет нарушений в работе объектов энергетического хозяйства потребителей электрической и (или) тепловой энергии. - Утв. Приказом Министерства энергетики Республики Беларусь № 106 от 30 мая 2012 г, рег. № 8/1117 от 11.10.1999.

2. Республика Беларусь. Законы. О промышленной безопасности опасных производственных объектов. № 363-3 [Текст] : [подписан Президентом Респ. Беларусь 10 января 2000 г.]. рег. № 1/2614 от 07.05.2001 : текст по состоянию на 7 июн. 2011 г.

3. Правила расследования и учета несчастных случаев на производстве и профессиональных заболеваний. - Утв. Постановлением Совета Министров Республики Беларусь № 30 от 15 января 2004 г.

4. Джордж В. SAP за 24 часа / Джордж В. Андерсон, Дэниэл Ларокка. - Днепропетровский баланс бизнес букс, 2007. - 432 с.

5. Рюдигер К. Разработка приложений SAP R/3 на языке АВАР/4 / Рюдигер Кречмкр, Вольфганг Вейс. - Лори, 2002. - 335 с.

6. Виейра Р. Программирование баз данных Microsoft SQL Server 2008. Базовый курс / Роберт Виейра - Вильямс, 2010. - 816 с.

7. Иванова Г.С. Объектно-ориентированное программирование / Г.С.Иванова, Т.Н. Ничушкина, Е.К.Пугачев. - МГТУ имени Н.Э.Баумана, 2001. - 319 с.

8. Хомоненко А. Д. Базы данных / Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. - Санкт-Петербург КОРОНА принт, 2004. - 736 с.

9. Укрупненные нормы затрат труда на разработку программного обеспечения. - Утв. Постановлением Министерства труда и социальной защиты Республики Беларусь № 91 от 27.06.2007, рег. № 1966/12от 04.07.2007.

10. Расчет экономической эффективности разработки программных продуктов. Методические указания по подготовке организационно-экономического раздела дипломных работ для студентов специальности 1-40 01 02 «Информационные системы и технологии ( по направлениям )» дневной формы обучения (м/ук №) / Е. А . Кожевников, Н. В. Ермалинская. - Гомель: ГГТУ им. П. О. Сухого, 2012 - 64с.

11. Об установлении размера тарифной ставки первого разряда для оплаты труда работников бюджетных организаций и иных организаций, получающих субсидии, работники которых приравнены по оплате труда к работникам бюджетных организаций. - Утв. Постановлением Министерства труда и социальной защиты Республики Беларусь №226 от 29.03.2013. Рег. №5/37066 от 02.04.2013.

12. Об установлении размера тарифной ставки первого разряда для оплаты труда работников бюджетных организаций и иных организаций, получающих субсидии, работники которых приравнены по оплате труда к работникам бюджетных организаций. - Утв. Постановлением Министерства труда и социальной защиты Республики Беларусь №1230 от 28.12.2012. Рег. №5/36708 от 30.12.2012.

13. Охрана труда. Техника безопасности на предприятиях. [Электронный ресурс]. - Режим доступа: http://www.ukcpoisk.ru/Ohrana-truda/Tehnika-bezopasnosti-na-predpriyatii.html. - Дата доступа: 05.05.2013.

14. Пожпрная безопасность в огранизациях. [Электронный ресурс]. - Режим доступа: http://www.otb.by/articles/3/481-Pozharnaya-bezopasnost-v-organizatsii.html - Дата доступа: 05.05.2013.

15. Мероприятия по охране труда [Электронный ресурс]. - Режим доступа: http://cdmafull.narod.ru/instrukcii/instrukcii_1_5.html. - Дата доступа: 05.05.2012.

16. Бобок С. А. Чрезвычайные ситуации: защита населения и территории. Учебное пособие / С. А. Бобок, В. И. Юртушкин. - М.: «Издательство ГНОМ и Д», 2000. -- 288 с.

ПРИЛОЖЕНИЕ А

Листинги программ

*----------------------------------------------------------------------*

* INCLUDE Z_DATA_DIPLOM *

*----------------------------------------------------------------------*

types: item_table_type like standard table of MTREEITM with default key.

types: begin of ttreenodekey,

key like mtreeitm-node_key,

code(100) type c,

end of ttreenodekey.

data: rb1,rb2,rb3.

rb1 = 'X'.

data eyear(4) type c.

data logbook type table of zlogbook with header line.

data OK_CODE like sy-ucomm.

data: d1(4), d2(2),d3(2),d(10).

data kl(100) type c.

data: dd(100) type c,

dc(100) type c,

do(100) type c,

de(100) type c,

dr(10) type c,

tr(8) type c,

ds(100) type c,

dg(100) type c.

types: begin of tdata07,

key_equip like zdirequip-key_equip,

name like zdirequip-name,

group_key like zdirequip-group_key,

visible like zdirequip-visible,

code like zdirequip-code,

group_name like zdirgroup-name,

end of tdata07.

data: data01 type table of zdirrefusals with header line,

data02 type table of zdirreasonsref with header line,

data03 type table of zdirreffaultstaf with header line,

data04 type table of zdirdep with header line,

data05 type table of zdirgroup with header line,

data06 type table of zdirobj with header line,

data07 type table of tdata07 with header line,

data08 type table of zdirsites with header line,

data09 type table of zdirobjstruct with header line,

data10 type table of zcompdep with header line.

data: indclic(100) type c.

* Поля для ввода вывода инф на экранах

data: ecode200(100) type c,

ecode(100) type c,

edep(100) type c,

eobj(100) type c,

eequip(100) type c,

esites(100) type c,

edref(100) type c,

etref(100) type c,

estart(100) type c,

edlic(100) type c,

etlic(100) type c,

eref(100) type c,

ereas(100) type c,

ecauser(100) type c,

egroup(100) type c.

* Для вывода даты

data: date type d,

date2 type d,

edate(10) type c.

*таблица соответствия кодов узлов дерева с шифром

data treenodekey type ttreenodekey occurs 100 with header line.

* Данные контейнера дерева

data: cont type scrfname value 'CCONTROL', " Имя контейнера

ccontainer type ref to cl_gui_custom_container,

tree type ref to cl_gui_list_tree,

application type ref to cl_application_tree.

* Данные для отображения дерева

data: node_table type treev_ntab,

item_table type item_table_type,

itable type item_table_type,

events type cntl_simple_events,

event type cntl_simple_event.

data: node type treev_node,

item type mtreeitm.

* параметры контейнера для отображения таблицы учета

data: cont_table type scrfname value 'CC_LOGBOOK'," Имя контейнера

custom_container type ref to cl_gui_custom_container,

grid type ref to cl_gui_alv_grid,

layo type LVC_S_LAYO,

gcl_manager type ref to manager.

* параметры контейнера для отображения таблицы истории отказов

data: cont_table500 type scrfname value 'CCONTROL500'," Имя контейнера

custom_container500 type ref to cl_gui_custom_container,

grid500 type ref to cl_gui_alv_grid.

* данные для отоюбражения журнала учета

types: begin of tdatalogbook,

key_logbook like zlogbook-key_logbook,

code_dep like zdirdep-lname,

code_obj like zdirobj-name,

code_equip like zdirequip-name,

code like zlogbook-code,

code_sities like zdirsites-name,

date_ref like zlogbook-date_ref,

time_ref like zlogbook-time_ref,

date_start like zlogbook-date_start,

time_liquid like zlogbook-time_liquid,

code_refusals like zdirrefusals-name,

code_reason like zdirreasonsref-name,

code_causer like zdirreffaultstaf-name,

bool like zlogbook-bool,

end of tdatalogbook.

data: data_logbook type table of tdatalogbook with header line,

data_logbook500 type table of tdatalogbook with header line,

tmp_logbook type table of tdatalogbook with header line,

fieldcat_logbook type lvc_t_fcat.

*----------------------------------------------------------------------*

* INCLUDE ZMAKROS ZDIPLOM *

*----------------------------------------------------------------------*

data: n type i,

s(10) type c.

define clear_edit.

ecod_01 = ''.

evid_01 = ''.

ecod_02 = ''.

ereas_02 = ''.

ecod_03 = ''.

ename_03 = ''.

ecod_04 = ''.

eldep_04 = ''.

edep_04 = ''.

ecod_05 = ''.

egroup_05 = ''.

ecod_06 = ''.

eobj_06 = ''.

ecod_07 = ''.

eeqip_07 = ''.

ecodgr_07 = ''.

ecod_08 = ''.

esites_08 = ''.

ecodgr_08 = ''.

end-of-definition.

*----------------------------------------------------------------------*

* INCLUDE ZMAKROS ZMODIFY *

*----------------------------------------------------------------------*

define set_data01.

select * from zdirrefusals into table data01." where visible = 'X'.

end-of-definition.

define set_data02.

select * from zdirreasonsref into table data02.

end-of-definition.

define set_data03.

select * from zdirreffaultstaf into table data03.

end-of-definition.

define set_data04.

select * from zdirdep into table data04." where visible = 'X'.

end-of-definition.

define set_data05.

select * from zdirgroup into table data05." where visible = 'X'.

end-of-definition.

define set_data06.

select * from zdirobj into table data06." where visible = 'X'.

end-of-definition.

define set_data07.

select e~key_equip e~name e~group_key e~visible e~code g~name

from zdirequip as e inner join zdirgroup as g

on e~group_key = g~key_group

into table data07." where e~visible = 'X'.

end-of-definition.

define set_data08.

select s~key_sites s~name s~group_key s~visible s~code g~name

from zdirsites as s inner join zdirgroup as g

on s~group_key = g~key_group

into table data08." where visible = 'X'.

end-of-definition.

define set_data09.

select s~key_struct s~obj s~eqip s~visible o~name e~name

from zdirobjstruct as s inner join zdirobj as o

on s~obj = o~key_obj inner join zdirequip as e

on s~eqip = e~key_equip

into table data09." where visible = 'X'.

end-of-definition.

define set_data10.

select c~key_comp c~obj c~dep c~visible c~code c~date_start o~name

d~name

from zcompdep as c inner join zdirobj as o

on c~obj = o~key_obj inner join zdirdep as d

on c~dep = d~key_dep

into table data10." where visible = 'X'.

end-of-definition.

*&---------------------------------------------------------------------*

* Задание параметров выводимой таблицы

define set_table.

call method grid->set_table_for_first_display

exporting

is_layout = &1

changing

it_fieldcatalog = &2

it_outtab = &3.

call method grid->refresh_table_display.

end-of-definition.

*----------------------------------------------------------------------*

define addfcat.

* p_fieldcat fieldname inttype outputlen coltext seltext

fcat-fieldname = &2.

fcat-inttype = &3.

fcat-outputlen = &4.

fcat-coltext = &5.

fcat-seltext =&6.

append fcat to &1.

clear fcat.

end-of-definition.

* ... добавление данных в таблицы БД ...

*01--------------------------------------------------------------------*

define addtable_zdirrefusals.

select count( * ) from zdirrefusals into n.

n = n + 1.

perform inttostr using n s.

zdirrefusals-key_refusals = s.

zdirrefusals-visible = 'X'.

zdirrefusals-code = &1.

zdirrefusals-name = &2.

insert zdirrefusals.

end-of-definition.

*02--------------------------------------------------------------------*

define addtable_zdirreasonsref.

select count( * ) from zdirreasonsref into n.

n = n + 1.

perform inttostr using n s.

zdirreasonsref-key_reason = s.

zdirreasonsref-visible = 'X'.

zdirreasonsref-code = &1.

zdirreasonsref-name = &2.

insert zdirreasonsref.

end-of-definition.

*03--------------------------------------------------------------------*

define addtable_zdirreffaultstaf.

select count( * ) from zdirreffaultstaf into n.

n = n + 1.

perform inttostr using n s.

zdirreffaultstaf-key_causer = s.

zdirreffaultstaf-visible = 'X'.

zdirreffaultstaf-code = &1.

zdirreffaultstaf-name = &2.

insert zdirreffaultstaf.

end-of-definition.

*04--------------------------------------------------------------------*

define addtable_zdirdep.

select count( * ) from zdirdep into n.

n = n + 1.

perform inttostr using n s.

zdirdep-key_dep = s.

zdirdep-visible = 'X'.

zdirdep-code = &1.

zdirdep-name = &2.

zdirdep-lname = &3.

insert zdirdep.

end-of-definition.

*05--------------------------------------------------------------------*

define addtable_zdirgroup.

select count( * ) from zdirgroup into n.

n = n + 1.

perform inttostr using n s.

zdirgroup-key_group = s.

zdirgroup-visible = 'X'.

zdirgroup-code = &1.

zdirgroup-name = &2.

insert zdirgroup.

end-of-definition.

*06--------------------------------------------------------------------*

define addtable_zdirobj.

select count( * ) from zdirobj into n.

n = n + 1.

perform inttostr using n s.

zdirobj-key_obj = s.

zdirobj-visible = 'X'.

zdirobj-code = &1.

zdirobj-name = &2.

insert zdirobj.

end-of-definition.

*07--------------------------------------------------------------------*

define addtable_zdirequip.

select count( * ) from zdirequip into n.

n = n + 1.

perform inttostr using n s.

zdirequip-key_equip = s.

zdirequip-visible = 'X'.

zdirequip-code = &1.

zdirequip-name = &2.

zdirequip-group_key = &3.

insert zdirequip.

end-of-definition.

*08--------------------------------------------------------------------*

define addtable_zdirsites.

select count( * ) from zdirsites into n.

n = n + 1.

perform inttostr using n s.

zdirsites-key_sites = s.

zdirsites-visible = 'X'.

zdirsites-code = &1.

zdirsites-name = &2.

zdirsites-group_key = &3.

insert zdirsites.

end-of-definition.

*09--------------------------------------------------------------------*

define addtable_zdirobjstruct.

select count( * ) from zdirobjstruct into n.

n = n + 1.

perform inttostr using n s.

zdirobjstruct-key_struct = s.

zdirobjstruct-visible = 'X'.

zdirobjstruct-obj = &1.

zdirobjstruct-obj = &2.

zdirobjstruct-eqip = &3.

insert zdirobjstruct.

end-of-definition.

*10--------------------------------------------------------------------*

define addtable_zcompdep.

select count( * ) from zcompdep into n.

n = n + 1.

perform inttostr using n s.

zcompdep-key_comp = s.

zcompdep-visible = 'X'.

zcompdep-obj = &1.

zcompdep-dep = &2.

zcompdep-code = &3.

zcompdep-date_start = &4.

insert zcompdep.

end-of-definition.

*01--------------------------------------------------------------------*

define chtable_zdirrefusals.

zdirrefusals-key_refusals = &1.

zdirrefusals-code = &2.

zdirrefusals-name = &3.

zdirrefusals-visible = 'X'.

update zdirrefusals.

end-of-definition.

*02--------------------------------------------------------------------*

define chtable_zdirreasonsref.

zdirreasonsref-code = &1.

zdirreasonsref-reason = &2.

modify zdirreasonsref.

end-of-definition.

*03--------------------------------------------------------------------*

define chtable_zdirreffaultstaf.

zdirreffaultstaf-code = &1.

zdirreffaultstaf-name = &2.

modify zdirreffaultstaf.

end-of-definition.

*04--------------------------------------------------------------------*

define chtable_zdirdep.

zdirdep-code = &1.

zdirdep-name = &2.

zdirdep-lname = &3.

modify zdirdep.

end-of-definition.

*05--------------------------------------------------------------------*

define chtable_zdirgroup.

zdirgroup-code = &1.

zdirgroup-name = &2.

modify zdirgroup.

end-of-definition.

*06--------------------------------------------------------------------*

define chtable_zdirobj.

zdirobj-code = &1.

zdirobj-name = &2.

modify zdirobj.

end-of-definition.

*07--------------------------------------------------------------------*

define chtable_zdirequip.

zdirequip-code = &1.

zdirequip-name = &2.

zdirequip-code_group = &3.

modify zdirequip.

end-of-definition.

*08--------------------------------------------------------------------*

define chtable_zdirsites.

zdirsites-code = &1.

zdirsites-name = &2.

zdirsites-code_group = &3.

modify zdirsites.

end-of-definition.

*09--------------------------------------------------------------------*

define chtable_zdirobjstruct.

zdirobjstruct-code = &1.

zdirobjstruct-code_obj = &2.

zdirobjstruct-code_eqip = &3.

modify zdirobjstruct.

end-of-definition.

*01--------------------------------------------------------------------*

define deltable_zdirrefusals.

delete from zdirrefusals where key_refusals = &1.

end-of-definition.

*02--------------------------------------------------------------------*

define deltable_zdirreasonsref.

delete from zdirreasonsref where code = &1.

end-of-definition.

*03--------------------------------------------------------------------*

define deltable_zdirreffaultstaf.

delete from zdirreffaultstaf where code = &1.

end-of-definition.

*04--------------------------------------------------------------------*

define deltable_zdirdep.

delete from zdirdep where code = &1.

end-of-definition.

*05--------------------------------------------------------------------*

define deltable_zdirgroup.

delete from zdirgroup where code = &1.

end-of-definition.

*06--------------------------------------------------------------------*

define deltable_zdirobj.

delete from zdirobj where code = &1.

end-of-definition.

*07--------------------------------------------------------------------*

define deltable_zdirequip.

delete from zdirequip where code = &1.

end-of-definition.

*08--------------------------------------------------------------------*

define deltable_zdirsites.

delete from zdirsites where code = &1.

end-of-definition.

*09--------------------------------------------------------------------*

define deltable_zdirobjstruct.

delete from zdirobjstruct where code = &1.

end-of-definition.

*----------------------------------------------------------------------*

* INCLUDE Z_CLASS_DEFINITION_DIPLOM *

*----------------------------------------------------------------------*

class CL_APPLICATION_TREE definition.

public section.

methods:

node_dblclick

for event node_double_click of cl_gui_list_tree

importing

node_key,

item_dblclick

for event item_double_click of cl_gui_list_tree

importing

node_key item_name.

endclass.

class manager definition.

public section.

methods:

* constructor "конструктор

* importing alv_grid type ref to cl_gui_alv_grid,

on_double_click

for event double_click of cl_gui_alv_grid

importing e_row e_column.

endclass.

*----------------------------------------------------------------------*

* INCLUDE Z_CLASS_IMPLEMENTATION_DIPLOM *

*----------------------------------------------------------------------*

class cl_application_tree implementation.

method node_dblclick.

endmethod.

method item_dblclick.

data tmp type ttreenodekey.

* ecode = node_key.

read table treenodekey into tmp index node_key.

ecode200 = tmp-code.

data f type n.

perform bool_cod using ecode200 f.

if f = 4.

call screen 200 starting at 10 10 ending at 60 22.

else.

endif.

endmethod.

endclass.

data: tmp type table of zlogbook with header line,

tmp1 like tmp." with hesder line.

class manager implementation.

method on_double_click.

read table data_logbook index e_row-index into tmp_logbook.

kl = tmp_logbook-key_logbook.

edep = tmp_logbook-code_dep.

ecode = tmp_logbook-code.

eobj = tmp_logbook-code_obj.

eequip = tmp_logbook-code_equip.

esites = tmp_logbook-code_sities.

edref = tmp_logbook-date_ref.

etref = tmp_logbook-time_ref.

select *

from zlogbook

into table tmp

where visible = 'X'

and key_logbook = tmp_logbook-key_logbook.

read table tmp index 1

into tmp1.

dd = tmp1-code_dep.

do = tmp1-code_obj.

de = tmp1-code_equip.

ds = tmp1-code_sities.

dr = tmp1-date_ref.

tr = tmp1-time_ref.

if tmp1-bool = 'X'.

call screen 300 starting at 10 10 ending at 60 27.

else.

* уже востановленно

endif.

endmethod.

endclass.

*----------------------------------------------------------------------*

* INCLUDE Z_FORM_DIPLOM *

*----------------------------------------------------------------------*

*преобразование числа в строку

FORM inttostr USING int TYPE i str TYPE c.

str = ''.

DATA: x TYPE i, n TYPE i.

x = int.

WHILE x > 0 .

n = x MOD 10.

CASE n.

WHEN 0.

CONCATENATE '0' str INTO str.

WHEN 1.

CONCATENATE '1' str INTO str.

WHEN 2.

CONCATENATE '2' str INTO str.

WHEN 3.

CONCATENATE '3' str INTO str.

WHEN 4.

CONCATENATE '4' str INTO str.

WHEN 5.

CONCATENATE '5' str INTO str.

WHEN 6.

CONCATENATE '6' str INTO str.

WHEN 7.

CONCATENATE '7' str INTO str.

WHEN 8.

CONCATENATE '8' str INTO str.

WHEN 9.

CONCATENATE '9' str INTO str.

ENDCASE.

x = x DIV 10.

ENDWHILE.

ENDFORM.

* Построение и вывод дерева

FORM add_nodes_and_items.

DATA keydep(100) TYPE c.

DATA: keyobj(200), keyequip(300).

DATA: p1(12) TYPE c,

p2(12) TYPE c.

*----------------------------------------------------------------------

DATA dep TYPE TABLE OF zdirdep WITH HEADER LINE.

DATA: BEGIN OF obj OCCURS 10,

key LIKE zcompdep-obj,

name LIKE zdirobj-name,

code LIKE zcompdep-code,

END OF obj.

DATA: BEGIN OF equip OCCURS 10,

key LIKE zdirobjstruct-eqip,

name LIKE zdirequip-name,

END OF equip.

DATA colitem TYPE i.

REFRESH treenodekey.

colitem = 1.

PERFORM inttostr USING colitem treenodekey-key.

treenodekey-code = 'root'.

APPEND treenodekey.

add_node treenodekey-key '' 0 'X' ''.

add_item: treenodekey-key '1' 'Дерево_принадлежности_оборудования' 4

'' ''.

REFRESH dep.

SELECT * FROM zdirdep INTO TABLE dep.

LOOP AT dep.

CONCATENATE 'root' dep-key_dep INTO keydep SEPARATED BY '*'.

colitem = colitem + 1.

PERFORM inttostr USING colitem treenodekey-key.

treenodekey-code = keydep.

APPEND treenodekey.

p1 = treenodekey-key.

add_node treenodekey-key '1' 1 'X' ''.

add_item treenodekey-key '1' dep-name 10 'X' ''.

REFRESH obj.

SELECT c~obj o~name c~code

FROM zcompdep AS c INNER JOIN zdirobj AS o ON c~obj = o~key_obj

INTO TABLE obj

WHERE c~dep = dep-key_dep.

LOOP AT obj.

CONCATENATE keydep obj-code obj-key INTO keyobj SEPARATED BY '*'.

colitem = colitem + 1.

PERFORM inttostr USING colitem treenodekey-key.

treenodekey-code = keyobj.

APPEND treenodekey.

p2 = treenodekey-key.

add_node treenodekey-key p1 1 'X' ''.

add_item treenodekey-key '1' obj-name 10 'X' ''.

REFRESH equip.

SELECT s~eqip e~name

FROM zdirobjstruct AS s

INNER JOIN zdirequip AS e ON s~eqip = e~key_equip

INTO TABLE equip

WHERE s~obj = obj-key.

LOOP AT equip.

CONCATENATE keyobj equip-key INTO keyequip SEPARATED BY '*'.

colitem = colitem + 1.

PERFORM inttostr USING colitem treenodekey-key.

treenodekey-code = keyequip.

APPEND treenodekey.

add_node treenodekey-key p2 1 'X' ''.

add_item treenodekey-key '1' equip-name 10 'X' '@01@'.

ENDLOOP.

ENDLOOP.

ENDLOOP.

event-eventid = cl_gui_list_tree=>eventid_node_double_click.

event-appl_event = 'X'.

APPEND event TO events.

event-eventid = cl_gui_list_tree=>eventid_item_double_click.

event-appl_event = 'X'.

APPEND event TO events.

CALL METHOD tree->set_registered_events

EXPORTING

events = events.

CREATE OBJECT application.

SET HANDLER: application->node_dblclick

application->item_dblclick FOR tree.

CALL METHOD tree->add_nodes_and_items

EXPORTING

node_table = node_table

item_table = item_table

item_table_structure_name = 'MTREEITM'.

ENDFORM.

* Построение шапки таблицы журнала учета

FORM build_fieldcat.

DATA fcat TYPE lvc_s_fcat.

REFRESH fieldcat_logbook.

addfcat:" fieldcat_logbook 'KEY_LOGBOOK' 'c' 10 'Ключ' 'Ключ',

fieldcat_logbook 'CODE_DEP' 'c' 8 'Цех' 'Цех',

fieldcat_logbook 'CODE_OBJ' 'c' 10 'Объект' 'Объект',

fieldcat_logbook 'CODE' 'c' 15 'Учетный номер' 'Учетный номер',

fieldcat_logbook 'CODE_EQUIP' 'c' 11 'Оборудование'

'Оборудование',

fieldcat_logbook 'CODE_SITIES' 'c' 11 'Узел' 'Узел',

fieldcat_logbook 'DATE_REF' 'd' 10 'Дата отказа' 'Дата отказа',

fieldcat_logbook 'TIME_REF' 'с' 8 'Впемя отказа' 'Впемя отказа',

fieldcat_logbook 'DATE_START' 'c' 8 'Дата ликвидации'

'Дата ликвидации',

fieldcat_logbook 'TIME_LIQUID' 'с' 8 'Время ликвидации' 'Время',

fieldcat_logbook 'CODE_REFUSALS' 'c' 15 'Отказ' 'Отказ',

fieldcat_logbook 'CODE_REASON' 'c' 11 'Причина' 'Причина',

fieldcat_logbook 'CODE_CAUSER' 'c' 11 'Виновники' 'Виновники',

fieldcat_logbook 'BOOL' 'c' 3 'Состояние отказа' 'Состояние отказа'.

ENDFORM. " build_fieldcat

form licvid.

endform. " licvid

form create_otch.

TYPES:

BEGIN OF ty_performance,

company(100) TYPE c,

q1 TYPE i,

q2 TYPE i,

q3 type i,

q4 type i,

END OF ty_performance,

BEGIN OF ty_opttable,

options(30) TYPE c,

END OF ty_opttable.

DATA: it_performance TYPE STANDARD TABLE OF ty_performance,

wa_performance TYPE ty_performance,

it_opttable type standard table of ty_opttable,

wa_opttable type ty_opttable,

dim2(100) type c.

CLEAR WA_PERFORMANCE.

CLEAR wa_opttable.

data t_o type table of zlogbook with header line.

data: yyyy(4),

mmmm(2),

yyyymmdd(8).

data: k1(5) type n value 0,

k2(5) type n value 0,

k3(5) type n value 0,

k4(5) type n value 0.

if rb1 = 'X'.

dim2 = 'Цех'.

set_data04.

loop at data04.

k1 = 0.

k2 = 0.

k3 = 0.

k4 = 0.

select * from zlogbook

into table t_o

where code_dep = data04-key_dep.

loop at t_o.

yyyymmdd = t_o-date_ref.

yyyy = yyyymmdd.

shift yyyymmdd by 4 places.

mmmm = yyyymmdd.

case mmmm.

when '01' or '02' or '03'.

k1 = k1 + 1.

when '04' or '05' or '06'.

k2 = k2 + 1.

when '07' or '08' or '09'.

k3 = k3 + 1.

when '10' or '11' or '12'.

k4 = k4 + 1.

endcase.

endloop.

addcrit data04-lname k1 k2 k3 k4.

endloop.

elseif rb2 = 'X'.

dim2 = 'Объект'.

set_data06.

loop at data06.

k1 = 0.

k2 = 0.

k3 = 0.

k4 = 0.

select * from zlogbook

into table t_o

where code_obj = data06-key_obj.

loop at t_o.

yyyymmdd = t_o-date_ref.

yyyy = yyyymmdd.

shift yyyymmdd by 4 places.

mmmm = yyyymmdd.

case mmmm.

when '01' or '02' or '03'.

k1 = k1 + 1.

when '04' or '05' or '06'.

k2 = k2 + 1.

when '07' or '08' or '09'.

k3 = k3 + 1.

when '10' or '11' or '12'.

k4 = k4 + 1.

endcase.

endloop.

addcrit data06-name k1 k2 k3 k4.

endloop.

elseif rb3 = 'X'.

dim2 = 'Оборудование'.

set_data07.

loop at data07.

k1 = 0.

k2 = 0.

k3 = 0.

k4 = 0.

select * from zlogbook

into table t_o

where code_equip = data07-key_equip.

loop at t_o.

yyyymmdd = t_o-date_ref.

yyyy = yyyymmdd.

shift yyyymmdd by 4 places.

mmmm = yyyymmdd.

case mmmm.

when '01' or '02' or '03'.

k1 = k1 + 1.

when '04' or '05' or '06'.

k2 = k2 + 1.

when '07' or '08' or '09'.

k3 = k3 + 1.

when '10' or '11' or '12'.

k4 = k4 + 1.

endcase.

endloop.

addcrit data07-name k1 k2 k3 k4.

endloop.

endif.

*Задаем параметры вывода

wa_opttable-options = 'P3TYPE = TO'.

APPEND wa_opttable TO it_opttable.

wa_opttable-options = 'P3SIDE = 4'.

APPEND wa_opttable TO it_opttable.

wa_opttable-options = 'P2TYPE = VB'.

APPEND wa_opttable TO it_opttable.

wa_opttable-options = 'TISIZE = 1'.

APPEND wa_opttable TO it_opttable.

CALL FUNCTION 'GRAPH_MATRIX_3D'

EXPORTING

col1 = 'Квартал 1'

col2 = 'Квартал 2'

col3 = 'Квартал 3'

col4 = 'Квартал 4'

dim1 = 'Кварталы'

dim2 = dim2

set_focus = 'X'

titl = 'Квартальный отчет'

TABLES

data = it_performance

opts = it_opttable

EXCEPTIONS

others = 1.

endform. " create_otch

form bool_cod using cod p.

data i type n value 0.

translate cod using '*a'.

search cod for 'a'.

while sy-subrc = 0.

replace 'a' with '*' into cod.

i = i + 1.

sy-subrc = 0.

search cod for 'a'.

endwhile.

p = i.

endform. " bool_cod

*----------------------------------------------------------------------*

* INCLUDE Z_MACROS *

*----------------------------------------------------------------------*

define addfcat.

* p_fieldcat fieldname inttype outputlen coltext seltext

fcat-fieldname = &2.

fcat-inttype = &3.

fcat-outputlen = &4.

fcat-coltext = &5.

fcat-seltext =&6.

append fcat to &1.

clear fcat.

end-of-definition.

*----------------------------------------------------------------------*

* INCLUDE Z_MACROS_DIPLOM *

*----------------------------------------------------------------------*

define addcrit.

wa_performance-company = &1.

wa_performance-q1 = &2.

wa_performance-q2 = &3.

wa_performance-q3 = &4.

wa_performance-q4 = &5.

append wa_performance to it_performance.

end-of-definition.

define add_node.

clear node.

node-node_key = &1.

node-relatkey = &2.

if &3 = 0.

node-relatship = 0.

else.

node-relatship = cl_gui_list_tree=>relat_last_child.

endif.

node-hidden = ''.

node-disabled = ''.

node-isfolder = &4.

node-expander = &5.

append node to node_table.

end-of-definition.

define add_item.

clear item.

item-node_key = &1.

item-item_name = &2.

item-class = cl_gui_list_tree=>item_class_text.

item-alignment = cl_gui_list_tree=>align_auto.

item-font = cl_gui_list_tree=>item_font_prop.

item-text = &3.

item-length = &4.

item-usebgcolor = &5.

item-t_image = &6.

append item to item_table.

end-of-definition.

* Задание параметров выводимой таблицы

define set_table.

call method grid->set_table_for_first_display

exporting

is_layout = &1

changing

it_fieldcatalog = &2

it_outtab = &3.

call method grid->refresh_table_display.

end-of-definition.

*----------------------------------------------------------------------*

* INCLUDE Z_MODULE_DIPLOM *

*----------------------------------------------------------------------*

module init_200 output.

split ecode200 at '*' into dr dd ecode do de.

* select name from zdirdep where key_dep = dd into edep.

set_data04.

read table data04 with key key_dep = dd.

edep = data04-name.

set_data06.

read table data06 with key key_obj = do.

eobj = data06-name.

set_data07.

read table data07 with key key_equip = de.

eequip = data07-name.

dg = data07-group_key.

set_data05.

read table data05 with key key_group = dg.

egroup = data05-name.

* set_data08.

type-pools vrm.

DATA values type vrm_values with header line.

select * from zdirsites into table data08 where group_key = dg.

refresh values.

loop at data08.

values-text = data08-name.

values-key = data08-key_sites.

append values.

endloop.

call function 'VRM_SET_VALUES'

exporting

id = 'esites'

values = values[].

endmodule.

* Инициализация контейнера таблиц

module init_control_table output.

if grid is initial.

create object custom_container

exporting container_name = cont_table.

create object grid

exporting i_parent = custom_container.

if sy-subrc <> 0.

* возникла ошибка

endif.

perform build_fieldcat.

layo-sel_mode = 'A'.

* вешаем обработчики контролов

create object gcl_manager.

* exporting alv_grid = grid.

set handler: gcl_manager->on_double_click for grid.

endif.

select l~key_logbook d~lname o~name e~name l~code s~name l~date_ref

l~time_ref l~date_start l~time_liquid r~name reas~name c~name l~bool

from zlogbook as l

left join zdirdep as d

on l~code_dep = d~key_dep

left join zdirobj as o

on l~code_obj = o~key_obj

left join zdirequip as e

on l~code_equip = e~key_equip

left join zdirsites as s

on l~code_sities = s~key_sites

left join zdirrefusals as r

on l~code_refusals = r~key_refusals

left join zdirreasonsref as reas

on l~code_reason = reas~key_reason

left join zdirreffaultstaf as c

on l~code_causer = c~key_causer

into table data_logbook

where l~visible = 'X'.

call method grid->set_table_for_first_display

exporting

is_layout = layo

changing

it_fieldcatalog = fieldcat_logbook

it_outtab = data_logbook[].

call method grid->refresh_table_display.

* set_table layo fieldcat_logbook data_logbook[].

endmodule. " initcontrol OUTPUT

* Инициализация 100 экрана

module STATUS_0100 output.

SET PF-STATUS 'GUI'.

SET TITLEBAR 'TITLE' with

'АВТОМАТИЗИРОВАННАЯ СИСТЕМА УЧЕТА ОТКАЗОВ И ОСНОВНЫХ ДЕФЕКТОВ'.

endmodule. " STATUS_0100 OUTPUT

* Обработка событий 100 экрана

module USER_COMMAND_0100 input.

case ok_code.

when 'EXIT'.

leave program.

when 'OTCH'.

call screen 400 starting at 10 10 ending at 60 20.

endcase.

endmodule. " USER_COMMAND_0100 INPUT

define addtable_zlogbook.

* data n type i.

* data s(10) type c.

select count( * ) from zlogbook into n.

n = n + 1.

perform inttostr using n s.

zlogbook-key_logbook = s.

zlogbook-visible = 'X'.

zlogbook-code_dep = dd.

zlogbook-code_obj = do.

zlogbook-code_equip = de.

zlogbook-date_ref = sy-datum.

zlogbook-time_ref = sy-UZEIT.

zlogbook-code = ecode.

zlogbook-code_sities = esites.

zlogbook-bool = 'X'.

zlogbook-date_start = '00000000'.

zlogbook-time_liquid = '000000'.

zlogbook-code_refusals = ''.

zlogbook-code_reason = ''.

zlogbook-code_causer = ''.

insert zlogbook.

end-of-definition.

* Обработка событий 200 экрана

module USER_COMMAND_0200 input.

case ok_code.

when 'EXIT'.

call screen 100.

when 'B1C'. " вышел из строя

data fbool type c value ''.

select * from zlogbook into table logbook

where visible = 'X' and

code_dep = dd and

code_obj = do and

code_equip = de and

code = ecode.

loop at logbook.

if logbook-bool = 'X'.

"нельзя нажать

fbool = 'X'.

endif.

endloop.

if fbool <> 'X'.

addtable_zlogbook.

edep = ''.

eobj = ''.

eequip = ''.

egroup = ''.

esites = ''.

call screen 100.

endif.

when 'B2C'.

select l~key_logbook d~lname o~name e~name l~code s~name

l~date_ref l~time_ref l~date_start l~time_liquid r~name

reas~name c~name l~bool

from zlogbook as l

left join zdirdep as d

on l~code_dep = d~key_dep

left join zdirobj as o

on l~code_obj = o~key_obj

left join zdirequip as e

on l~code_equip = e~key_equip

left join zdirsites as s

on l~code_sities = s~key_sites

left join zdirrefusals as r

on l~code_refusals = r~key_refusals

left join zdirreasonsref as reas

on l~code_reason = reas~key_reason

left join zdirreffaultstaf as c

on l~code_causer = c~key_causer

into table data_logbook500

where l~visible = 'X'

and l~code_dep = dd

and l~code_obj = do

and l~code_equip = de.

call screen 500 starting at 5 5 ending at 155 35.

endcase.

endmodule. " USER_COMMAND_0200 INPUT

* Инициализация контейнера дерева

module init_control_tree output.

if tree is initial.

create object ccontainer

exporting

container_name = cont.

if sy-subrc <> 0.

message i001(zmessage).

endif.

create object tree

exporting

parent = ccontainer

node_selection_mode = cl_gui_list_tree=>node_sel_mode_single

item_selection = 'X'

with_headers = ' '.

if sy-subrc <> 0.

message i001(zmessage).

endif.

perform add_nodes_and_items.

endif.

endmodule. " init_control_tree OUTPUT

* задание иконок для неисправных оборудований

module init_icon_tree output.

data: cc(100) type c,

node_key type TV_NODEKEY,

image type TV_IMAGE.

select * from zlogbook into table logbook

where visible = 'X'.

loop at logbook where bool = ''.

concatenate 'root' logbook-code_dep logbook-code

logbook-code_obj logbook-code_equip into cc separated by '*'.

read table treenodekey with key code = cc.

node_key = treenodekey-key.

image = '@01@'.

call method tree->item_set_t_image

exporting

node_key = node_key

item_name = '1'

T_IMAGE = image.

endloop.

loop at logbook where bool = 'X'.

concatenate 'root' logbook-code_dep logbook-code

logbook-code_obj logbook-code_equip into cc separated by '*'.

read table treenodekey with key code = cc.

node_key = treenodekey-key.

image = '@02@'.

call method tree->item_set_t_image

exporting

node_key = node_key

item_name = '1'

T_IMAGE = image.

endloop.

endmodule. " init_icon_tree OUTPUT

* Обработка событий 300 экрана

module USER_COMMAND_0300 input.

case ok_code.

when 'EXIT'.

call screen 100.

when 'BC1'.

zlogbook-key_logbook = kl.

zlogbook-visible = 'X'.

zlogbook-code_dep = dd.

zlogbook-code_obj = do.

zlogbook-code_equip = de.

zlogbook-date_ref = dr.

zlogbook-time_ref = tr.

zlogbook-code = ecode.

zlogbook-code_sities = ds.

zlogbook-bool = ''.

zlogbook-date_start = sy-datum.

zlogbook-time_liquid = sy-UZEIT.

zlogbook-code_refusals = eref.

zlogbook-code_reason = ereas.

zlogbook-code_causer = ecauser.

update zlogbook.

call screen 100.

* perform licvid.

* message i001(zmessage).

endcase.

endmodule. " USER_COMMAND_0300 INPUT

*

module init_300 output.

move sy-datum to d.

EDLIC = d.

etlic = sy-uzeit.

type-pools vrm.

set_data01.

refresh values.

loop at data01.

values-text = data01-name.

values-key = data01-key_refusals.

append values.

endloop.

call function 'VRM_SET_VALUES'

exporting

id = 'eref'

values = values[].

eref = '1'.

set_data02.

refresh values.

loop at data02.

values-text = data02-name.

values-key = data02-key_reason.

append values.

endloop.

call function 'VRM_SET_VALUES'

exporting

id = 'ereas'

values = values[].

ereas = '1'.

set_data03.

refresh values.

loop at data03.

values-text = data03-name.

values-key = data03-key_causer.

append values.

endloop.

call function 'VRM_SET_VALUES'

exporting

id = 'ecauser'

values = values[].

ecauser = '1'.

endmodule. " init_300 OUTPUT

module STATUS_0400 output.

SET PF-STATUS 'GUI400'.

* SET TITLEBAR 'xxx'.

endmodule. " STATUS_0400 OUTPUT

module USER_COMMAND_0400 input.

case ok_code.

when 'CANCEL'.

call screen 100.

when 'OK'.

perform create_otch.

call screen 100.

when 'RBCLICK'.

endcase.

endmodule. " USER_COMMAND_0400 INPUT

module init_list output.

data ecrit(100) type c.

if rb2 = 'X'.

set_data06.

refresh values.

loop at data06.

values-text = data06-name.

values-key = data06-key_obj.

append values.

endloop.

elseif rb1 = 'X'.

set_data04.

refresh values.

loop at data04.

values-text = data04-name.

values-key = data04-key_dep.

append values.

endloop.

elseif rb3 = 'X'.

set_data07.

refresh values.

loop at data07.

values-text = data07-name.

values-key = data07-key_equip.

append values.

endloop.

endif.

call function 'VRM_SET_VALUES'

exporting

id = 'ecrit'

values = values[].

ecrit = '1'.

endmodule. " init_list OUTPUT

module STATUS_0500 output.

SET PF-STATUS 'GUI'.

* SET TITLEBAR 'xxx'.

endmodule. " STATUS_0500 OUTPUT

module USER_COMMAND_0500 input.

case ok_code.

when 'CANCEL' or 'EXIT'.

leave program.

when 'BACK'.

call screen 200 starting at 10 10 ending at 60 22.

endcase.

endmodule. " USER_COMMAND_0500 INPUT

module init_control output.

if grid500 is initial.

create object custom_container500

exporting container_name = cont_table500.

create object grid500

exporting i_parent = custom_container500.

if sy-subrc <> 0.

* возникла ошибка

endif.

perform build_fieldcat.

layo-sel_mode = 'A'.

endif.

call method grid500->set_table_for_first_display

exporting

is_layout = layo

changing

it_fieldcatalog = fieldcat_logbook

it_outtab = data_logbook500[].

call method grid500->refresh_table_display.

endmodule. " init_control OUTPUT

*&---------------------------------------------------------------------

*& Report ZDIPLOM

*&---------------------------------------------------------------------

REPORT zdiplom.

TABLES: zdirdep,

zcompdep,

zdirobj,

zlogbook.

INCLUDE z_class_definition_diplom.

INCLUDE z_data_diplom.

*include z_data_modify.

CLASS cl_gui_cfw DEFINITION LOAD.

INCLUDE z_macros_diplom.

INCLUDE zmacros.

INCLUDE z_macros.

INCLUDE z_class_implementation_diplom.

INCLUDE z_form_diplom.

INCLUDE z_module_diplom.

INITIALIZATION.

MOVE sy-datum TO d.

edate = d.

START-OF-SELECTION.

CALL SCREEN 100.

* Листинг программы ведения справочников

*----------------------------------------------------------------------*

* INCLUDE Z_DATA_MODIFY *

*----------------------------------------------------------------------*

DATA ok_code LIKE sy-ucomm.

data: flag_delete(1) type c value '',

key(10) type c value ''.

* Поля ввода на эеране

DATA: ecod_01(10) TYPE c,

evid_01(200) TYPE c,

ecod_02(10) TYPE c,

ereas_02(200) TYPE c,

ecod_03(10) TYPE c,

ename_03(200) TYPE c,

ecod_04(10) TYPE c,

eldep_04(200) TYPE c,

edep_04(200) TYPE c,

ecod_05(10) TYPE c,

egroup_05(200) TYPE c,

ecod_06(10) TYPE c,

eobj_06(200) TYPE c,

ecod_07(10) TYPE c,

eeqip_07(200) TYPE c,

ecodgr_07(10) TYPE c,

ecod_08(10) TYPE c,

esites_08(200) TYPE c,

ecodgr_08(10) TYPE c,

ec_09(10) type c,

ecod_obj_09(10) type c,

ecod_equip_09(10) type c,

ecod_obj_10(10) type c,

ecod_dep_10(10) type c,

ecode_10(10) type c,

edstart_10(10) type c.

* Радио-батоны

DATA: rb01_0(1) TYPE c value 'X',

rb02_0(1) TYPE c,

rb03_0(1) TYPE c,

rb04_0(1) TYPE c,

rb05_0(1) TYPE c,

rb06_0(1) TYPE c,

rb07_0(1) TYPE c,

rb08_0(1) TYPE c,

rb09_0(1) TYPE c,

rb10_0(1) TYPE c.

* параметры контейнера для отображения таблиц

data: cont type scrfname value 'CCONTROL_0'," Имя контейнера

custom_container type ref to cl_gui_custom_container,

grid type ref to cl_gui_alv_grid,

layo type LVC_S_LAYO,

gcl_manager type ref to manager.

types: begin of tdata07,

key_equip like zdirequip-key_equip,

name like zdirequip-name,

group_key like zdirequip-group_key,

visible like zdirequip-visible,

code like zdirequip-code,

group_name like zdirgroup-name,

end of tdata07,

begin of tdata08,

key_sites like zdirsites-key_sites,

name like zdirsites-name,

group_key like zdirsites-group_key,

visible like zdirsites-visible,

code like zdirsites-code,

group_name like zdirgroup-name,

end of tdata08,

begin of tdata09,

key_struct like zdirobjstruct-key_struct,

obj like zdirobjstruct-obj,

eqip like zdirobjstruct-eqip,

visible like zdirobjstruct-visible,

obj_name like zdirobj-name,

eqip_name like zdirequip-name,

end of tdata09,

begin of tdata10,

key_comp like zcompdep-key_comp,

obj like zcompdep-obj,

dep like zcompdep-dep,

visible like zcompdep-visible,

code like zcompdep-code,

date_start like zcompdep-date_start,

obj_name like zdirobj-name,

dep_name like zdirdep-name,

end of tdata10.

* Внутренние таблицы

data: data01 type table of zdirrefusals with header line,

data02 type table of zdirreasonsref with header line,

data03 type table of zdirreffaultstaf with header line,

data04 type table of zdirdep with header line,

data05 type table of zdirgroup with header line,

data06 type table of zdirobj with header line,

data07 type table of tdata07 with header line,

data08 type table of tdata08 with header line,

data09 type table of tdata09 with header line,

data10 type table of tdata10 with header line,

fieldcat01 type lvc_t_fcat,

fieldcat02 type lvc_t_fcat,

fieldcat03 type lvc_t_fcat,

fieldcat04 type lvc_t_fcat,

fieldcat05 type lvc_t_fcat,

fieldcat06 type lvc_t_fcat,

fieldcat07 type lvc_t_fcat,

fieldcat08 type lvc_t_fcat,

fieldcat09 type lvc_t_fcat,

fieldcat10 type lvc_t_fcat.

* Строка таблицы

data: line_data01 type table of zdirrefusals with header line,

line_data02 type table of zdirreasonsref with header line,

line_data03 type table of zdirreffaultstaf with header line,

line_data04 type table of zdirdep with header line,

line_data05 type table of zdirgroup with header line,

line_data06 type table of zdirobj with header line,

line_data07 type table of zdirequip with header line,

line_data08 type table of zdirsites with header line,

line_data09 type table of zdirobjstruct with header line,

line_data10 type table of zcompdep with header line.

*----------------------------------------------------------------------*

* INCLUDE ZMAKROS ZMODIFY *

*----------------------------------------------------------------------*

define set_data01.

select * from zdirrefusals into table data01." where visible = 'X'.

end-of-definition.

define set_data02.

select * from zdirreasonsref into table data02.

end-of-definition.

define set_data03.

select * from zdirreffaultstaf into table data03.

end-of-definition.

define set_data04.

select * from zdirdep into table data04." where visible = 'X'.

end-of-definition.

define set_data05.

select * from zdirgroup into table data05." where visible = 'X'.

end-of-definition.

define set_data06.

select * from zdirobj into table data06." where visible = 'X'.

end-of-definition.

define set_data07.

select e~key_equip e~name e~group_key e~visible e~code g~name

from zdirequip as e inner join zdirgroup as g

on e~group_key = g~key_group

into table data07." where e~visible = 'X'.

end-of-definition.

define set_data08.

select s~key_sites s~name s~group_key s~visible s~code g~name

from zdirsites as s inner join zdirgroup as g

on s~group_key = g~key_group

into table data08." where visible = 'X'.

end-of-definition.

define set_data09.

select s~key_struct s~obj s~eqip s~visible o~name e~name

from zdirobjstruct as s inner join zdirobj as o

on s~obj = o~key_obj inner join zdirequip as e

on s~eqip = e~key_equip

into table data09." where visible = 'X'.

end-of-definition.

define set_data10.

select c~key_comp c~obj c~dep c~visible c~code c~date_start o~name

d~name

from zcompdep as c inner join zdirobj as o

on c~obj = o~key_obj inner join zdirdep as d

on c~dep = d~key_dep

into table data10." where visible = 'X'.

end-of-definition.

*&---------------------------------------------------------------------*

* Задание параметров выводимой таблицы

define set_table.

call method grid->set_table_for_first_display

exporting

is_layout = &1

changing

it_fieldcatalog = &2

it_outtab = &3.

call method grid->refresh_table_display.

end-of-definition.

*----------------------------------------------------------------------*

define addfcat.

* p_fieldcat fieldname inttype outputlen coltext seltext

fcat-fieldname = &2.

fcat-inttype = &3.

fcat-outputlen = &4.

fcat-coltext = &5.

fcat-seltext =&6.

append fcat to &1.

clear fcat.

end-of-definition.

* ... добавление данных в таблицы БД ...

*01--------------------------------------------------------------------*

define addtable_zdirrefusals.

select count( * ) from zdirrefusals into n.

n = n + 1.

perform inttostr using n s.

zdirrefusals-key_refusals = s.

zdirrefusals-visible = 'X'.

zdirrefusals-code = &1.

zdirrefusals-name = &2.

insert zdirrefusals.

end-of-definition.

*02--------------------------------------------------------------------*

define addtable_zdirreasonsref.

select count( * ) from zdirreasonsref into n.

n = n + 1.

perform inttostr using n s.

zdirreasonsref-key_reason = s.

zdirreasonsref-visible = 'X'.

zdirreasonsref-code = &1.

zdirreasonsref-name = &2.

insert zdirreasonsref.

end-of-definition.

*03--------------------------------------------------------------------*

define addtable_zdirreffaultstaf.

select count( * ) from zdirreffaultstaf into n.

n = n + 1.

perform inttostr using n s.

zdirreffaultstaf-key_causer = s.

zdirreffaultstaf-visible = 'X'.

zdirreffaultstaf-code = &1.

zdirreffaultstaf-name = &2.

insert zdirreffaultstaf.

end-of-definition.

*04--------------------------------------------------------------------*

define addtable_zdirdep.

select count( * ) from zdirdep into n.

n = n + 1.

perform inttostr using n s.

zdirdep-key_dep = s.

zdirdep-visible = 'X'.

zdirdep-code = &1.

zdirdep-name = &2.

zdirdep-lname = &3.

insert zdirdep.

end-of-definition.

*05--------------------------------------------------------------------*

define addtable_zdirgroup.

select count( * ) from zdirgroup into n.

n = n + 1.

perform inttostr using n s.

zdirgroup-key_group = s.

zdirgroup-visible = 'X'.

zdirgroup-code = &1.

zdirgroup-name = &2.

insert zdirgroup.

end-of-definition.

*06--------------------------------------------------------------------*

define addtable_zdirobj.

select count( * ) from zdirobj into n.

n = n + 1.

perform inttostr using n s.

zdirobj-key_obj = s.

zdirobj-visible = 'X'.

zdirobj-code = &1.

zdirobj-name = &2.

insert zdirobj.

end-of-definition.

*07--------------------------------------------------------------------*

define addtable_zdirequip.

select count( * ) from zdirequip into n.

n = n + 1.

perform inttostr using n s.

zdirequip-key_equip = s.

zdirequip-visible = 'X'.

zdirequip-code = &1.

zdirequip-name = &2.

zdirequip-group_key = &3.

insert zdirequip.

end-of-definition.

*08--------------------------------------------------------------------*

define addtable_zdirsites.

select count( * ) from zdirsites into n.

n = n + 1.

perform inttostr using n s.

zdirsites-key_sites = s.

zdirsites-visible = 'X'.

zdirsites-code = &1.

zdirsites-name = &2.

zdirsites-group_key = &3.

insert zdirsites.

end-of-definition.

*09--------------------------------------------------------------------*

define addtable_zdirobjstruct.

select count( * ) from zdirobjstruct into n.

n = n + 1.

perform inttostr using n s.

zdirobjstruct-key_struct = s.

zdirobjstruct-visible = 'X'.

zdirobjstruct-obj = &1.

zdirobjstruct-obj = &2.

zdirobjstruct-eqip = &3.

insert zdirobjstruct.

end-of-definition.

*10--------------------------------------------------------------------*

define addtable_zcompdep.

select count( * ) from zcompdep into n.

n = n + 1.

perform inttostr using n s.

zcompdep-key_comp = s.

zcompdep-visible = 'X'.

zcompdep-obj = &1.

zcompdep-dep = &2.

zcompdep-code = &3.

zcompdep-date_start = &4.

insert zcompdep.

end-of-definition.

*01--------------------------------------------------------------------*

define chtable_zdirrefusals.

zdirrefusals-key_refusals = &1.

zdirrefusals-code = &2.

zdirrefusals-name = &3.

zdirrefusals-visible = 'X'.

update zdirrefusals.

end-of-definition.

*02--------------------------------------------------------------------*

define chtable_zdirreasonsref.

zdirreasonsref-code = &1.

zdirreasonsref-reason = &2.

modify zdirreasonsref.

end-of-definition.

*03--------------------------------------------------------------------*

define chtable_zdirreffaultstaf.

zdirreffaultstaf-code = &1.

zdirreffaultstaf-name = &2.

modify zdirreffaultstaf.

end-of-definition.

*04--------------------------------------------------------------------*

define chtable_zdirdep.

zdirdep-code = &1.

zdirdep-name = &2.

zdirdep-lname = &3.

modify zdirdep.

end-of-definition.

*05--------------------------------------------------------------------*

define chtable_zdirgroup.

zdirgroup-code = &1.

zdirgroup-name = &2.

modify zdirgroup.

end-of-definition.

*06--------------------------------------------------------------------*

define chtable_zdirobj.

zdirobj-code = &1.

zdirobj-name = &2.

modify zdirobj.

end-of-definition.

*07--------------------------------------------------------------------*

define chtable_zdirequip.

zdirequip-code = &1.

zdirequip-name = &2.

zdirequip-code_group = &3.

modify zdirequip.

end-of-definition.

*08--------------------------------------------------------------------*

define chtable_zdirsites.

zdirsites-code = &1.

zdirsites-name = &2.

zdirsites-code_group = &3.

modify zdirsites.

end-of-definition.

*09--------------------------------------------------------------------*

define chtable_zdirobjstruct.

zdirobjstruct-code = &1.

zdirobjstruct-code_obj = &2.

zdirobjstruct-code_eqip = &3.

modify zdirobjstruct.

end-of-definition.

*01--------------------------------------------------------------------*

define deltable_zdirrefusals.

delete from zdirrefusals where key_refusals = &1.

end-of-definition.

*02--------------------------------------------------------------------*

define deltable_zdirreasonsref.

delete from zdirreasonsref where code = &1.

end-of-definition.

*03--------------------------------------------------------------------*

define deltable_zdirreffaultstaf.

delete from zdirreffaultstaf where code = &1.

end-of-definition.

*04--------------------------------------------------------------------*

define deltable_zdirdep.

delete from zdirdep where code = &1.

end-of-definition.

*05--------------------------------------------------------------------*

define deltable_zdirgroup.

delete from zdirgroup where code = &1.

end-of-definition.

*06--------------------------------------------------------------------*

define deltable_zdirobj.

delete from zdirobj where code = &1.

end-of-definition.

*07--------------------------------------------------------------------*

define deltable_zdirequip.

delete from zdirequip where code = &1.

end-of-definition.

*08--------------------------------------------------------------------*

define deltable_zdirsites.

delete from zdirsites where code = &1.

end-of-definition.

*09--------------------------------------------------------------------*

define deltable_zdirobjstruct.

delete from zdirobjstruct where code = &1.

end-of-definition.

*----------------------------------------------------------------------*

* INCLUDE Z_CLASS_DEFENITION_MODIFY *

*----------------------------------------------------------------------*

class manager definition.

public section.

methods:

* constructor "конструктор

* importing alv_grid type ref to cl_gui_alv_grid,

on_double_click

for event double_click of cl_gui_alv_grid

importing e_row e_column.

endclass.

*----------------------------------------------------------------------*

* INCLUDE Z_CLASS_IMPLEMENTATION_MODIFY *

*----------------------------------------------------------------------*

class manager implementation.

method on_double_click.

flag_delete = 'X'.

IF rb01_0 = 'X'.

read table data01 index e_row-index into line_data01.

key = line_data01-key_refusals.

ecod_01 = line_data01-code.

evid_01 = line_data01-name.

ELSEIF rb02_0 = 'X'.

read table data02 index e_row-index into line_data02.

ELSEIF rb03_0 = 'X'.

read table data03 index e_row-index into line_data03.

ELSEIF rb04_0 = 'X'.


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

  • Описание метода диагностики отказов. Основные методы и принципы диагностики отказов, основанной на использовании моделей. Диагностика отказов системы регулирования уровня жидкости в баке. Моделирование элементов системы и отказов, проектирование системы.

    дипломная работа [2,4 M], добавлен 29.09.2008

  • Надежность системы управления как совокупность надежности технических средств, вычислительной машины, программного обеспечения и персонала. Расчет надежности технических систем, виды отказов САУ и ТСА, повышение надежности и причины отказов САУ.

    курс лекций [228,2 K], добавлен 27.05.2008

  • ОАО "Южная телекоммуникационная компания" (ОАО "ЮТК") - оператор фиксированной связи. Экономическая сущность комплекса экономических информационных задач. Перечень услуг присоединения и услуг по пропуску трафика. Автоматизированная система учета.

    курсовая работа [45,1 K], добавлен 27.02.2009

  • Создание автоматизированной информационной системы учета оборудования (компьютерной и оргтехники) на АКБ НМБ ОАО с использованием современных компьютерных средств. Проектирование базы данных. Алгоритмы решения задач. Расчёт затрат на проектирование.

    дипломная работа [2,1 M], добавлен 16.12.2013

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

    курсовая работа [1,4 M], добавлен 06.08.2013

  • Разработка сложных проектов. Значение вероятности безотказной работы системы и интенсивности отказов ее элементов. Логические операции, связывающие исходные и результирующие события отказов. Определение функции надежности. Вероятность безотказной работы.

    курсовая работа [256,5 K], добавлен 09.02.2013

  • Анализ программно-технических решений по учету оборудования торгового эквайринга. Разработка архитектуры программного комплекса учета оборудования. Система управления контентом. Выбор CMS. Менеджер пользователей. Структура информационной базы данных.

    дипломная работа [1,8 M], добавлен 19.01.2017

  • Требования к функциональным характеристикам информационной системы "Подписка". Функциональное проектирование автоматизированной системы ведения учета основных средств на предприятии. Проектирование базы данных автоматизированной системы ведения учета.

    курсовая работа [753,0 K], добавлен 16.01.2015

  • Разработка автоматизированной системы с использованием программных продуктов: 1С: Предприятие 8.2 (для создания автоматизированной системы) и CASE средство BPwin (для проектирования структуры системы). Обучение пользователей работе с конфигурацией.

    курсовая работа [3,6 M], добавлен 04.11.2014

  • Создание автоматизированной системы диагностики конструктивных дефектов на основе акустических сигналов. Структурная схема автоматизированной системы. Методика анализа звукового сигнала. Алгоритм сравнения полученных данных с помощью модуля Diag.

    курсовая работа [658,5 K], добавлен 14.07.2012

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