Program o staromarsjańskiej nazwie „Kumiko” to skrypt Tcl/Tk, którego zadaniem jest prowadzenie numerycznej listy spraw/pism/umów/zleceń, czy wszelkiej innej dokumentacji tego typu.
Program współpracuje z lokalną lub zewnętrzną bazą danych MySQL.
1. Jak wygląda Kumiko?
Jak mawiają mali, żółci i sprytni: „Jeden obraz wart jest tysiąca słów”.
Górny, lewy róg okna, to przyciski operacji do wykonania, czyli:
- dodania do listy nowego wiersza,
- edycji podświetlonego wiersza,
- skasowania podświetlonego wiersza.
Górny, prawy róg, to wybór działu (rodzaju spraw) i roku. W czasie startu, program wyszukuje w bazie danych dostępne działy i lata, i umożliwia użytkownikowi ich wybór w formie rozwijanych list. Np. w powyższym przykładzie wyświetlone zostały wszystkie sprawy z działu 2222 (W/g Instrukcji Kancelaryjnej są to zlecenia dostaw, usług lub robót budowlanych) w roku 2007.
Część robocza, to lista danych pokazująca kolejno od lewej:
- numer sprawy (możliwe jest łączenie w numerze cyfr i liter),
- datę wszczęcia (lista jest segregowana w/g tej daty),
- tytuł/opis sprawy spod danego numeru.
Sprawę o której chcemy z jakiś powodów pamiętać, można zaznaczyć na czerwono podając w pisie znacznik <M> (duże „M” w nawiasach kwadratowych). Żeby odznaczyć sprawę wystarczy skasować <M>.
Dolny, lewy róg to wyszukiwarka. Wyszukiwarka obsługuje wyrażenia regularne. Wiersz danych, który odpowiada zapytaniu, podświetlany jest na zielono (jak na przykładzie).
Dolny, prawy róg to przyciska zakończenia pracy z programem. Wszelkie operacje na bazie danych program realizuje na bieżąco, więc jego zamknięcie nie wymaga specjalnych ceremonii typu: Zapisz-Porzuć-Anuluj.
2. Co potrzeba do uruchomienia i pracy programu?
W systemie powinny być:
- interpreter Tcl/Tk,
- rozszerzenie do Tcl w postaci pakietu mysqltcl,
- baza MySQL (lub możliwość zdalnego dostępu do tej bazy).
Program powstał na platformie GNU/Linux, ale napisany w czystym Tcl-u powinien pracować bez problemu również na innych systemach.
Baza danych, to tylko jedna tabela, którą tworzymy wydając mySql-owi polecenie:
create table sprawy (
id smallint(4) unsigned not null auto_increment,
dzial smallint(4) not null,
numer char(5) not null,
data date not null,
opis tinytext,
primary key (id)
);
Pamiętajmy, by użytkownikowi bazy nadać odpowiednie uprawnienia do pracy na danych, czyli: SELECT, INSERT, UPDATE i DELETE.
Konfiguracja programu sprowadza się do edycji pierwszych wierszy skrytpu, gdzie musimy wpisać: nazwę bazy danych, nazwę użytkownika bazy, hasło użytkownika bazy oraz nazwę serwera z bazą. Jeżeli baza danych znajduje się na naszym komputerze, to w miejsce nazwy serwera wpisujemy ‚localhost’.
Uwaga: połączenie programu z bazą danych nie jest w żaden sposób szyfrowane.
3. Co w przyszłości?
Program powstał na potrzebę chwili – niemalże na kolanie. Chodziło o szybki i w miarę przyjazny dostęp do bazy danych, obsługiwanej wcześniej przez skrypt PHP. Spełnił swoje zadanie, w związku z czym nie planuję jego dalszej rozbudowy. Może kiedyś dodam możliwość wydruku zestawienia spraw. Przydałoby się również zrobić coś z entuzjastyczną kolorystyką, a jeszcze lepiej pomyśleć o tile. Może kiedyś… Puki co mam nadzieję, że komuś przyda się w takiej wersji w jakiej obecnie jest (do pracy, lub do zabawy w przerabianie, bo przecież publikuję go na LICENCJI GPL).
.