Konfiguracja i użytkownicy systemu Fenix

Podstawą jest poprawna konfiguracja systemu, dodanie użytkowników systemowych, pracowników i usług świadczonych przez firmę. Poniższy opis pomoże przygotować poprawną konfigurację sysystemu. Logowanie do systemu demo. login: demo password: demo.1010 Główny widok systemu (kalendarz) Po poprawnym zalogowaniu widzimy widok kalendarza, zalogowany użytkownik ma dostęp do kalendarzy pracowników. Dostęp jest konfigurowany w zakładce konfiguracja, szczegółowy opis konfiguracji znajduje się poniżej. Konfiguracja systemu W zakładce konfiguracji mamy dostęp (tylko uprawniony użytkownik - administrator) do wszystkich istotnych opcji konfiguracyjnych. ...

stycznia 12, 2017 · paramah

MySQL trigger before insert, numery faktur

Rozwiązanie proste, ale wymagał jednej zmiany w konfiguracji my.cnf, dokładniej thread_stack bo wartość 64K to deko mało. Całość bazuje na założeniu, że numer faktury to ROK/NUMER, gdzie numer jest autoinkrementowaną wartością. Tablica t_faktury, w której numer faktury jest reprezentowany za pomocą pola fvat_no trigger dla niej i procedura poniżej: DROP TRIGGER IF EXISTS fvat_number; DROP PROCEDURE IF EXISTS generuj_fvatno; DELIMITER $$ CREATE PROCEDURE generuj_fvatno(out numerek VARCHAR(30)) BEGIN SELECT CONCAT(DATE_FORMAT(CURDATE(), '%Y'),'/',COUNT(fvat_no) + 1) INTO numerek FROM t_faktury WHERE SUBSTRING_INDEX(fvat_no, '/', 1) = DATE_FORMAT(CURDATE(), '%Y') LIMIT 1 ; END$$ CREATE TRIGGER fvat_number BEFORE INSERT ON t_faktury FOR EACH ROW BEGIN CALL generuj_fvatno(@out); IF @out = NULL THEN SET NEW.fvat_no = CONCAT(DATE_FORMAT(CURDATE(), '%Y'),'/', 1); ELSE SET NEW.fvat_no = @out; END IF; END$$

marca 20, 2010 · paramah

Przydatne SQL’e

Poniżej dla potomoności, parę przydatnych funkcji w MySQL służących do oblicznia danych sieciowych: DROP FUNCTION IF EXISTS check_network; DROP FUNCTION IF EXISTS get_network; DROP FUNCTION IF EXISTS get_broadcast; delimiter | CREATE FUNCTION check_network(ip1 VARCHAR(25), ip_netmask VARCHAR(25), ip2 VARCHAR(25)) RETURNS INT DETERMINISTIC BEGIN IF((INET_ATON(ip2) & INET_ATON(ip_netmask)) = (INET_ATON(ip1) & INET_ATON(ip_netmask))) THEN RETURN 1; ELSE RETURN 0; END IF; END| CREATE FUNCTION get_network(ip1 VARCHAR(25), ip_netmask VARCHAR(25)) RETURNS VARCHAR(20) DETERMINISTIC BEGIN RETURN INET_ATON(ip1) & INET_ATON(ip_netmask); END| CREATE FUNCTION get_broadcast(ip1 VARCHAR(25), ip_netmask VARCHAR(25)) RETURNS VARCHAR(20) DETERMINISTIC BEGIN RETURN INET_NTOA(INET_ATON(ip1) + (INET_ATON('255.255.255.255') - INET_ATON(ip_netmask))); END| delimiter ;

października 23, 2007 · paramah

SQL i graficzne interface’y… Knoda

Mielenie po bazach SQL’owych za pomocą shell’a zaczęło mnie trochę męczyć, różne bazy, wiele zależności, widoki i inne pierdoły. Tak więc zabrałem się za poszukiwanie czegoś co mi ułatwi żywot, a zarazem będzie w stanie obsłużyć wiele baz jednocześnie. Znalazłem coś co zowie się Knoda typowy “database frontend”. Na debianie działa mi bardzo przyjemnie, co prawda w celu dodania nowych baz danych (domyślnie tylko MySQL) trzeba doinstalować sobie libhk-classes-*: gnosis:~# apt-cache search libhk-classes libhk-classes-dev - C++ library for database applications (development files) libhk-classes-mdb - MS Access driver plugin for hk_classes libhk-classes-mysql - MySQL driver plugin for hk_classes libhk-classes-odbc - ODBC driver plugin for hk_classes libhk-classes-paradox - paradox plugin for libhk-classes libhk-classes-postgres - PostgreSQL driver plugin for libhk-classes libhk-classes-sqlite - SQLite 2 driver plugin for hk_classes libhk-classes-sqlite3 - SQLite 3 driver plugin for hk_classes libhk-classes-xbase - XBase/DBase plugin for hk_classes libhk-classes15 - C++ library for database applications Które jak widać są, do obsługi baz takich jak np. Sybase idealnie działa odbc. ...

maja 28, 2007 · paramah