Baza danych oparta o MySQL 5.* i jest elementem grupy zarządzającej systemu SC. Źródła bazy danych składają się z dwóch plików, które znajdują się w katalogu ./software/manage_grp/SCdb/:
Scdb_base.sql – struktury tabel,
SCdb_proc.sql – przechowywane procedury.
Kodowanie znaków w bazie danych SCdb jest w standardzie UTF-8. W katalogu ./software/manage_grp/SCdb/ znajduje się także przykładowy plik konfiguracyjny scdb.ini wykorzystywany przez programy klienckie bazy danych (patrz roz. 4.5.3.scdb.ini).
worker(id_worker, first_name, last_name)
worklog(id_wl, wl_date, trans_date)
workstation(id_ws, id_sdate, stime, input)
work_shift(id_worker, id_ws, wdate, shift)
Szczegółowy opis poszczególnych relacji i atrybutów:
worker – dane pracowników
id_worker – identyfikator pracownika,
first_name – imię,
last_name – nazwisko,
worklog – dane na temat pobranych plików typu worklog z katalogu transferowego (patrz. roz. 4.7.2.Worklog (*.wl) i 4.7.5.Katalog transferowy.)
id_wl – identyfikator daty pliku worklog,
wl_date – data pliku worklog,
trans_date – data dostarczenia pliku worklog do bazy danych,
workstation – reprezentuje rekordy danych pobranych z modułów SCslave
id_ws – identyfikator modułu SCslave,
id_sdate – identyfikator daty pliku worklog, z którego dany rekord pochodzi,
stime – czas pobrania danych w modułu SCslave,
input – dane z modułu SCslave.
work_shift – dane dotyczące planu pracy poszczególnych pracowników na poszczególnych stanowiskach
id_worker – identyfikator pracownika,
id_ws - identyfikator modułu SCslave na stanowisku pracownika,
wdate – dzień, w którym dany pracownik pracował na danym stanowisku,
shift – numer zmiany, podczas której dany pracownik pracował na danym stanowisku w dniu wdate.
Rys. 4.13. Diagram ER.
W przechowywanych procedurach zawarte są wszystkie niezbędne operację potrzebne dla aplikacji klienckiej i jest zalecane aby korzystać tylko z nich podczas pracy z bazą danych. Opis dostępnych procedur:
Pracownicy:
show_workers ()
Wyświetla wszystkich pracowników.
insert_worker (in n_first_name varchar(30), in n_last_name varchar(30))
Dodaje pracownika o imieniu n_first_name i nazwisku n_last_name.
delete_worker (in n_first_name varchar(30), in n_last_name varchar(30))
Usuwa pracownika o imieniu n_first_name i nazwisku n_last_name.
Dane z linii produkcyjnej:
insert_wl (in n_wl_date date)
Dodaje datę n_wl_date pliku worklog.
show_wl (in Ayear int, in Amonth int)
Wyświetla dni, z których dane zawiera baza danych.
insert_SCdata (in n_wl_date date, in n_stime time, in n_id_ws tinyint, in n_input int)
Wstawia dane n_input z rejestru układu SCslave z dnia date pobrane w czasie n_stime z stanowiska n_id_ws.
insert_SCdata_override(in n_wl_date date, in n_stime time, in n_id_ws tinyint, in n_input int)
To samo co procedura insert_SCdata z tą różnicą, że nadpisuje powtarzające się dane.
delete_alldata(in del_date date)
Usuwa wszystkie dane z konkretnego dnia.
Plan:
show_planed_shift (in Ayear int, in Amonth int)
Wyświetla dni dla których jest ułożony plan.
insert_shift (in shift_date date, in worker_fname varchar(40), in worker_lname varchar(40), in station int, in shift_num int)
Wstawia element planu, czyli informację, że dnia shift_date pracownik o imieniu worker_fname i nazwisku worke_lname pracował na stanowisku o numerze station podczas zmiany numer shift_num.
show_shift (in sdate date)
Wyświetla plan w formie tabeli o kolumnach: imię, nazwisko, numer stanowiska, numer zmiany.
delete_shift (in sdate date)
Usuwa plan z dnia date.
Łączenie danych z planem:
show_work (in n_first_name varchar(40), in n_last_name varchar(40), in idate date)
Wyświetla tabelę w formacie: numer stanowiska, numer zmiany; dla pracownika o imieniu n_first_name i nazwisku n_last_name z dnia idate.
show_day_input (in sdate date, in tfrom time, in tto time, in ws int)
Wyświetla tabelę w formacie: dane z rejestru SCslave, czas ich pobrania; z dnia sdate, w przedziale czasu od tfrom do tto z stanowiska o numerze ws.
Plik scdb.ini jest plikiem konfiguracyjnym wymaganym przez wszystkie programy klienckie dla bazy danych SCdb. Następujące zmienne muszą być w nim zdefiniowane:
[sql]
host – adres serwera, na którym znajduje się baza danych SCdb,
user – nazwa użytkownika,
passwd – hasło użytkownika,
db_name – nazwa bazy danych.
Copyright © 2008-2010 EPrace oraz autorzy prac.