Janusz Górczyński. Opis projektu WynajemSal

Wielkość: px
Rozpocząć pokaz od strony:

Download "Janusz Górczyński. Opis projektu WynajemSal"

Transkrypt

1 Janusz Górczyński Opis projektu WynajemSal WSZiM w Sochaczewie, 2011

2 Spis treści 1 WSTĘP BAZA DANYCH TABELE PROCEDURY PRZECHOWYWANE APLIKACJA WINDOWSOWA UTWORZENIE PORJEKTU FORMULARZ GŁÓWNY APLIKACJI MODUŁ OGÓLNY PLIK KONFIGURACYJNY POTRZEBNE KLASY ZEWNĘTRZNE CForStorageSub CValidacja CDataGridPrint FORMULARZ FRMNOWASALA Klasa CAdministracja Uzupełnienie kodu klasy frmnowasala Uzupełnienie kodu formularza głównego Formularz frmnowasala w pracy FORMULARZ FRMEDYCJASAL Projekt formularza frmedycjasal Modyfikacja interfejsu ISale

3 1 Wstęp W trakcie zajęć drugiego semestru studiów podyplomowych na kierunku Projektowanie baz danych zrealizujemy od podstaw projekt, który otrzyma roboczą nazwę WynajemSal. W ramach realizacji tego projektu zostaną zrealizowane trzy główne jego komponenty obejmujące: 1) Zaprojektowanie bazy danych na MS SQL Server; 2) Utworzenie aplikacji VB.NET będącej interfejsem tej bazy danych; 3) Utworzenie aplikacji ASP.NET pełniącej rolę interfejsu komunikacyjnego dla potencjalnych klientów. Podstawą rozpoczęcia prac nad tym projektem jest przemyślenie funkcjonalności zamierzonego rozwiązania, a sam pomysł zajęcia się takim projektem wynika między innymi z dość dużego zainteresowaniem różnych podmiotów wynajęciem naszych sal dydaktycznych. W przypadku pomyślnej realizacji tego projektu cały proces udostępniania wolnych pomieszczeń ulegnie maksymalnemu uproszczeniu poprzez: Umożliwienie via strona www zapoznanie się ze szczegółową ofertą uczelni w zakresie wynajęcia pomieszczeń; Możliwość złożenia formalnego zamówienia na wynajem określonego typu sali (czy sal) poprzedzone uzyskaniem informacji o kosztach wynajęcia, sprawdzeniu dostępności i przy dalszym zainteresowaniu złożenia zamówienia; Automatyczne wygenerowanie i dostarczenie w formie elektronicznej formalnej umowy finansowej (e-faktury); Zarządzanie procesem wynajmowania pomieszczeń via intuicyjny interfejs. 3

4 2 Baza danych Baza danych zostanie utworzona na serwerze MS SQL Server 2008 (słuchacze zakładają ją indywidualnie dla siebie), na potrzeby tego opracowania będziemy się posługiwać nazwą bazy SaleWSZiM. W bazie zostaną utworzone tabele, procedury przechowywane i funkcje, diagram bazy i określone reguły związane z jej bezpieczeństwem. Przyjmiemy zasadę, że jedyna możliwość manipulowania danymi będzie się odbywała via procedury przechowywane. 2.1 Tabele Tabela RodzajSal będzie zawierać wykaz typów pomieszczeń, które znajdą się w ofercie wynajmu. Pole idtyp jest kluczem tej tabeli (automatyczna inkrementacja ze skokiem 1). Pole rodzaj zawiera skrótowy opis odnoszący się generalnie do liczby miejsc, a pole opis będzie wykorzystywane przy prezentacji zdjęć poszczególnych sal. Poniżej przykładowe dane zapisane w tej tabeli. Tabela Sale zawiera informacje o poszczególnych salach dydaktycznych, które mogą być wypożyczane. Kluczem tej tabeli jest pole idnr przechowujące unikalny numer sali (a więc klucz tabeli nie może być automatycznie inkrementowany) 4

5 Pole projektor informuje o tym, czy w sali jest zamontowany projektor podwieszany (wartość 1) czy też nie (wartość 0). Pole id_typ jest kluczem obcym (kluczem tabeli RodzajSal) i będzie wykorzystywane do ustanowienia relacji typu jeden-do-wielu. Poniżej widok przykładowych danych zapisanych w tabeli Sale. Tabela ZdjeciaSal została utworzona po to, aby można było dla danej sali dysponować więcej niż jednym jej zdjęciem. Pole foto będzie przechowywać nazwę zdjęcia danej sali, nazwa ta w połączeniu z nazwą katalogu stworzy pełną ścieżkę dostępu do zdjęć pomieszczeń, które będziemy prezentować potencjalnym klientom na stronie www. Pełna nazwa katalogu będzie pobierana z pliku konfiguracyjnego aplikacji (zarówno windowsowej jak i webowej). Przykładowe dane w tej tabeli pokazane są niżej. Tabela Stawki ma za zadanie przechowywanie informacji o kosztach wynajęcia poszczególnych rodzajów sal. Tabela jest tak zaprojektowana, aby była możliwość przechowywania informacji o historii wprowadzanych zmian stawek, zadanie to będzie realizować pole o nazwie DataZmiany typu smalldatetime. 5

6 Kluczem tej tabeli jest pole idc z automatyczną inkrementacją ze skokiem jeden. Pozostałe pola (z wyjątkiem DataZmiany) są typu money, ich odpowiednikiem po stronie VB.NET czy ASP.NET będzie typ decimal. Pole GodzinaKomputera przechowuje informacje o stawce godzinowej za jedno stanowisko komputerowe, podobnie pole GodzinaProjektora opisuje godzinny koszt udostępnienia projektora (nie dotyczy sal komputerowych). Pozostałe cztery pola przechowują informacje o kosztach wynajęcia określonego typu sali, jest to koszt dzienny (niezależnie od liczby osób i liczby godzin dziennie). Poniżej widok przykładowych danych zapisanych w tabeli Stawki. Tabela NaszeTerminy ma przechowywać terminarz zajęć własnych z podaniem rodzaju zajęć i (ewentualnie) wykazu sal zajętych. Generalnie chodzi o uniknięcie potencjalnych konfliktów. 6

7 Pole TerminSobota typu smalldatetime ma przechowywać sobotnią datę zjazdu sobotnio-niedzielnego, datę niedzielną ustalimy w odpowiedniej procedurze przechowywanej. Pole RodzajZajec przyjmie wartość 1 dla naszych statutowych studiów, wartość 2 dla studiów podyplomowych. W przypadku tych ostatnich pole SaleZajete będzie zawierać numery sal rozdzielone symbolem przecinka. Poniżej widok przykładowych danych zapisanych w tabeli NaszeTerminy. Tabela Klienci będzie przechowywać informacje o firmach wynajmujących nasze pomieszczenia. Projekt tej tabeli pokazany jest poniżej. W tabeli tej zapisano poniższe, absolutnie przypadkowe dane (na etapie projektowania aplikacji). 7

8 Tabela RezerwacjaKlienta ma do spełnienia w naszym projekcie bardzo ważną rolę, to w tej tabeli potencjalny klient będzie zapisywał swoje zapotrzebowanie na wynajęcie odpowiednich pomieszczeń dydaktycznych. Pole idk jest identyfikatorem klienta z tabeli Klienci, wykorzystamy je do nawiązania relacji między tabelą Klienci i RezerwacjaKlienta. Podobną rolę pełnią pola idnr oraz idnrbufet, które powiążą tę tabelę z tabelą Sale. Pole datarejestracji będzie przechowywać datę zgłoszenia zapotrzebowania na wynajęcie sali. Wartość tego pola w połączeniu z wartością klucza (idr) tej tabeli zostanie wykorzystana do przygotowania formalnej umowy wynajęcia danej sali. 8

9 Pole rodzajsali wskazuje na rodzaj sali będącej przedmiotem wynajęcia (chodzi o typ sali dydaktycznej). Pole zakresdat typu tekstowego będzie przechowywać wszystkie daty wynajęcia rozdzielone symbolem przecinka. Jego uzupełnieniem jest pole liczbadni, przechowujące informację o pełnej liczbie dni wynajęcia (tak naprawdę można z tego pola zrezygnować dlaczego?). Pole dnitygodnia typu tekstowego reprezentuje ciąg siedmiu znaków, odpowiednio 1 lub 0, wskazujących na dany dzień tygodnia (od poniedziałku do niedzieli). Jeden oznacza wynajęcie danej sali w danym dniu. Pole liczbagodzin będzie przechowywać informację o planowanej liczbie godzin zajęć, a pole liczbakompow informację o liczbie potrzebnych stanowisk komputerowych. W przypadku wynajmowania innej sali niż komputerowa to pole przyjmuje wartość zero. Pola projektor i salabufetowa przyjmują wartość jeden, jeżeli wynajmujący zgłasza potrzebę udostępnienia projektora czy sali bufetowej. Jeżeli nie, to pola te otrzymują wartość zero. Pola idnr oraz idnrbufet będą przechowywać numer sali przewidzianej do wynajęcia oraz numer sali bufetowej, jeżeli było takie zapotrzebowanie. Jeżeli nie, to pole to otrzyma wartość zero. Pola kosztnetto oraz kosztostateczny zawierają odpowiednio koszt netto wyliczony zgodnie z przyjętym algorytmem i automatycznym rabatem wynikającym z wartości zamówienia oraz koszt netto po ostatecznym ustaleniu (przykładowo z rabatem dla stałego klienta). Na etapie składania zamówienia wartości obu pól są takie same, a ewentualna zmiana (zmniejszenie) pola kosztostateczny może być przeprowadzona przez osobę zarządzającą wynajmowaniem sal. Pole datazaplaty pozostaje puste do momentu wpłaty należności za zrealizowaną transakcję udostępnienia pomieszczeń dydaktycznych. Po wpływie należności na konto Uczelni pole to jest wypełniane przez osobę nadzorującą wynajem pomieszczeń, jednocześnie pole archiv otrzymuje wartość zero. Pola archiv przyjmuje wartość 1 dla oznaczenia tych pozycji, które jeszcze nie zostały zrealizowane, a wartość zero po zrealizowaniu zamówienia. W przypadku anulowania zamówienia pole to przyjmie wartość dwa. Przykładowe dane zapisane w tabeli RezerwacjaKlienta pokazane są niżej (tutaj bez pól kosztnetto, kosztostateczny i datazaplaty). 9

10 A tak wygląda pole liczbadni z większą liczbą szczegółów. Być może, że w trakcie prac nad projektem będziemy musieli zmodyfikować proponowane tabele, dodać nowe itd., ale to wyjdzie w trakcie pracy. Na ten moment mamy utworzone tabele pokazane niżej na diagramie. 10

11 2.2 Procedury przechowywane Procedura pczydobrynip sprawdza, czy potencjalny klient webowy już był zarejestrowany w naszej bazie (dokładnie, czy istnieje rekord o takim Nip w tabeli Klienci). Jeżeli istnieje, to procedura zwraca jego identyfikator, jeżeli nie, to zwraca wartość zero. CREATE procedure int out as as int from dbo.klienci where set Procedura pdajklientawgid zwraca wszystkie dane klienta o podanym identyfikatorze. create procedure int as select * from dbo.klienci where Procedura pdajdaneklientow zwraca komplet informacji z tabeli Klienci sortując je po polu Nazwa. create procedure [dbo].[pdajdaneklientow] as select * from dbo.klienci order by Nazwa Procedura pwstawklienta odpowiada za wstawienie do tabeli Klienci nowego rekordu z jednoczesnym zwróceniem jego identyfikatora. create procedure int out as insert into dbo.klienci (Nazwa, Adres, NIP, mail, telefon, @osoba) Procedura pupdateklienci odpowiada za modyfikację danych wskazanego klienta. 11

12 create procedure nvarchar(100) as update dbo.klienci set where Procedura pdajnaszeterminy odpowiada za zwrócenie pełnej informacji o naszych terminach zajęć z podanego zakresu dat, ich rodzaju oraz ewentualny wykaz zajętych sal. Poza terminem sobotnim zwracane są daty o jeden dzień większe (czyli niedzielne). Jest to realizowane funkcją SQL dateadd(symbol_interwału, o_ile_więcej, termin_wyjściowy). create procedure smalldatetime as select Terminsobota as Sobota, dateadd(dd,1,terminsobota) as Niedziela, Rodzajzajec, SaleZajete from dbo.naszeterminy where TerminSobota and dateadd(dd,1,terminsobota) Procedura pdajstawki zwraca ostatni (najstarszy) rekord z tabeli Stawki. create procedure [dbo].[pdajstawki] as select top(1) GodzinaKomputera, GodzinaProjektora, MalaSala, SredniaSala, DuzaSala, Aula from dbo.stawki order by DataZmiany desc Procedura pdajnumerysalwgtypu odpowiada za zwrócenie numerów tych sal, które odpowiadają przekazanemu typowi sal. Lista zwróconych numerów możemy modyfikować CREATE procedure int as select idnr from dbo.sale where and projektor=1 else select idnr from dbo.sale where 12

13 Procedura pdajwykazterminow zwraca pojedynczą wartość typu tekstowego zawierającą listę aktywnych dat rezerwacji sal określonego typu. CREATE procedure nvarchar(1000) out as as nvarchar(1000) from dbo.rezerwacjaklikenta where archiv=1 and idnr in set Procedura pdajzakresdatdlasali zwraca pojedynczą wartość tekstową zawierającą wykaz dat aktywnych rezerwacji dla danej sali. create procedure nvarchar(1000) out as from dbo.rezerwacjaklikenta where and archiv=1 Set Procedura pczywolnadanasala sprawdza, czy dana sala jest wolna. create procedure int out as from dbo.rezerwacjaklikenta where archiv=1 and idnr Procedura pczywolnasalabufetowa sprawdza, czy sala danego typu nie została zarezerwowana jako sala bufetowa. create procedure int out as from dbo.rezerwacjaklikenta where archiv=1 and idnrbufet in ( select idnr from dbo.sale where ) 13

14 Procedura pczywolnasala odpowiada za sprawdzenie, czy jest wolna jakaś sala określonego typu. create procedure int out as from dbo.rezerwacjaklikenta where archiv=1 and idnr in ( select idnr from dbo.sale where and ) else from dbo.rezerwacjaklikenta where archiv=1 and idnr in ( select idnr from dbo.sale where ) 14

15 3 Aplikacja windowsowa W tej części całego projektu zajmiemy się przygotowaniem aplikacji windowsowej, która umożliwi nam pełną obsługę i zarządzanie bazą daną omówioną w poprzednim rozdziale. Utworzymy nowy projekt aplikacji typu Windows Forms, z uwagi na złożoność projektu będzie to aplikacja z więcej niż jednym formularzem, w jej skład będą wchodziły niektóre z klas, które poznaliśmy w trakcie zajęć pierwszego semestru. Klasa CForStorageSub będzie przez nas wykorzystywana jako klasa bazowa, będziemy tworzyć na jej podstawie szereg specjalistycznych klas potomnych wykorzystywanych do realizacji konkretnych zadań projektowanej aplikacji. 3.1 Utworzenie porjektu Zaczynamy od uruchomienia VisualStudio.NET i wywołania polecenia New Project, co skutkuje otwarciem okna nowego projektu. Standardowo w oknie zainstalowanych szablonów powinien być wybrany szablon Windows Forms Application, jeżeli tak jest to przechodzimy do pola tekstowego Name i wpisujemy w nim nazwę tworzonej aplikacji. 15

16 W pokazanej sytuacji wpisana jest nazwa SpWynajemSal (zgodnie ze zmodyfikowaną notacją węgierską). Po akceptacji przycisku OK tworzone jest nowe rozwiązanie o podanej przez nas nazwie. Po krótkiej chwili nowy projekt zostanie utworzony, na ten moment zawiera on jedynie jeden formularz o domyślnej nazwie Form1. Po utworzeniu projektu powinniśmy zapisać go na dysku, wystarczy w tym celu wywołać polecenie Save All z menu File. W oknie dialogowym tego polecenia wskazujemy folder docelowy (korzystamy z przycisku Browse) i przyciskiem Save zapisujemy projekt, 16

17 3.2 Formularz główny aplikacji Jak wcześniej zostało powiedziane będziemy tworzyć projekt wielo formularzowy, tym samym musimy do projektu wprowadzić specjalny formularz, który będzie kontenerem (pojemnikiem) dla innych formularzy. Można także przekształcić istniejący formularz w formularz typu MDI (ang. Multi Document Interface), wystarczy w tym celu zmienić jego właściwość IsMdiContainer z domyślnej False na True, tak jak to pokazano niżej. Korzystając z okienka Solution Explorer zmieniamy jeszcze nazwę naszego formularza z dotychczasowej Form1.vb na frmmdiform.vb. Zmiany tej możemy dokonać z menu kontekstowego uruchamianego prawym przyciskiem myszy po wskazaniu obiektu formularza, wystarczy wywołać polecenie Rename z tego menu. Kolejnym krokiem jest zmiana właściwości Name tego formularza z dotychczasowej Form1 na frmmdiform. Robimy to w oknie właściwości tego formularza (po lewej sytuacja przed zmianą, po prawej po zmianie). Dla przypomnienia system rozpoznaje każdy obiekt po jego nazwie. 17

18 Jedną z istotnych właściwości formularza typu MDI jest możliwość zbudowania menu użytkownika. Robimy to poprzez dodanie do projektu formularza specjalnej kontrolki (formantu) o nazwie MenuStrip, znajdziemy ją w przyborniku w grupie Menus & Toolbars. Kontrolkę tę umieszczamy w naszym formularzu, ale po zwolnieniu myszy zostaje ona umieszczona nie w samym formularzu, lecz na specjalnym pasku, który nosi nazwę tzw. tacy. Poniżej widok VS po wprowadzonych zmianach. Widzimy egzemplarz formantu MenuStrip z nazwą domyślną MenuStrip1 (nie ma potrzeby jej zmiany), w formularzu pod wierszem tytułowym pojawił się pasek menu, będziemy w nim w trybie graficznym definiować poszczególne pozycje menu. Na tym etapie utworzymy pozycję Administracja z poleceniami jak niżej: - Typy sal (podpolecenia: Nowy typ, Edycja, Usunięcie); - Sale (podpolecenia: Nowa sala, Edycja, Usunięcie); - Zdjęcia sal (podpolecenia: Dodanie, Aktualizacja, Uusnięcie, Przegląd); - Stawki (podpole cnie: Nowe stawki, Edycja, Usunięcie) - Separator - Zakończenie 18

19 Poniżej widok okna projektowania w trakcie tworzenia menu Administracja. W analogiczny sposób dodajemy pozostałe pozycje menu, przy czym korzystając z menu kontekstowego możemy wstawić taką pozycję jak separator. Przed uruchomieniem naszej aplikacji możemy jeszcze zmienić dwie własności formularza frmmdiform, jedna z nich to właściwość Text (tytuł formularza), a druga to WindowState, która określa sposób otwarcia formularza. Poniżej zmienione wartości obu właściwości. Możemy już uruchomić nasz projekt, wystarczy w tym celu nacisnąć klawisz F5, poniżej pokazany jest (zminiaturyzowany) widok okna tej aplikacji z rozwiniętym menu Administracja. 19

20 Na tym etapie aplikacja nie reaguje na klik poszczególnych pozycji menu, jest to spowodowane tym, że jeszcze nie zostały napisane odpowiednie procedury zdarzeniowe reagujące na klik danego polecenia. 3.3 Moduł ogólny W każdej poważniejszej aplikacji składającej się z wielu formularzy, raportów i klas zachodzi potrzeba zadeklarowania stałych, zmiennych i innych obiektów (struktury, wyliczenia) w taki sposób, aby były dostępne dla wszystkich innych modułów tworzonej aplikacji. Podobne oczekiwania można także sformułować odnośnie procedur i funkcji, jeżeli mają być dostępne z innych modułów, to muszą być zadeklarowane w specjalnym module (pliku) typu Module. Dodamy taki obiekt do naszego projektu, a postępowanie jest standardowe: w oknie Solution Explorer klikamy prawym przyciskiem myszy nazwę naszego rozwiązania, z menu kontekstowego wybieramy polecenie Add i dalej New Item. 20

21 W otwartym oknie Add New Item wskazujemy obiekt Module, w polu Name wpisujemy jego nazwę i przyciskiem Add dodajemy obiekt do naszego rozwiązania. W kodzie klasy obiektu ModulWspolny możemy teraz zadeklarować potrzebne zmienne, stałe, struktury, utworzyć publiczne i prywatne procedury i funkcje. Poniże kod tych deklaracji, w miarę dalszych prac można oczekiwać, że będziemy dodawać albo nowe zmienne, albo nowe procedury i funkcje do tego modułu. Jako pierwsze deklarowane są takie zmienne jak strtytul (tu będzie tytuł naszej aplikacji), strbaza (łańcuch połączenia do bazy SQL), Kwestor (nazwisko i imię osoby odpowiedzialnej za wystawienie faktury), stawkavat (aktualnie obowiązująca stawka VAT na usługi wynajmu pomieszczeń), bsqlok (zmienna wskaźnikowa, wartość True wtedy, gdy z pliku konfiguracyjnego zostaną pobrane potrzebne informacje). Module ModulWspolny Public strtytul, strbaza, Kwestor As String, stawkavat As Decimal, bsqlok As Boolean ' tablica Cena() będzie przechowywać stawki za wynajem Public Cena(5) As Decimal ' struktura OpisSal definiuje zmienną użytkownika, która w zwięzły ' sposób ma opisywać oczekiwania osoby zainteresowanej wynajęciem Public Structure OpisSal Dim rodzajsali As Integer Dim zakresdat As String 21

22 Dim dnitygodnia As String Dim liczbadni As Integer Dim liczbagodzin As Integer Dim liczbastanowiskkomputerowych As Integer Dim plusprojektor As Integer ' 1 = tak, 0 -nie Dim plusbufet As Integer ' 1 = tak, 0 = nie Dim WolnaSala As Integer Dim WolnaSalaBufetowa As Integer End Structure ' Publiczna funkcja UstalGrb ma za zadanie ustalenie, który z ' formantów typu RadioButton w kontenerze GroupBox jest zaznaczony. ' warunkiem poprawnego funkcjonowania jest zapisanie zwracanej ' wartości w nazwie każdego z radiobuttonów. ' dopuszczalna numeracja od 0 do 9 Public Function UstalGrb(ByVal grb As GroupBox) As Integer Dim rdb As RadioButton For Each rdb In grb.controls If rdb.checked Then Try Return CInt(rdb.Name.Substring(rdb.Name.Length - 1, 1)) Catch ex As Exception Return 0 End Try End If Next Return 0 End Function ' prywatna funkcja wykorzystywana w innych procedurach tego modułu Private Function WymienZnakNaPozycji(ByVal tekst As String, _ ByVal pozycja As Integer, ByVal znak As String) As String Select Case pozycja Case 1 Return znak & tekst.substring(1, tekst.length - 1) Case tekst.length Return tekst.substring(0, tekst.length - 1) & znak Case Else Return tekst.substring(0, pozycja - 1) & znak & _ tekst.substring(pozycja, tekst.length - pozycja) End Select End Function ' Publiczna funkcja UstalGrbVCheckBox ma za zadanie ustalenie, które ' z formantów typu CheckBox w kontenerze GroupBox są zaznaczone. 22

23 ' Funkcja zwraca ciąg znaków zer i jedynek o liczbie znaków równej ' liczbie ChceckBoxow w kontenerze, symbol 1 oznacza zaznaczenie. ' Funkcja pobiera numer formantu z jego nazwy, numer występuje po ' znaku podkreślenia. Public Function UstalGrbCheckBox(ByVal grb As GroupBox) As String Dim chb As CheckBox, x As Integer, tp As String tp = RepeatString("0", grb.controls.count) Dim tw() As String For Each chb In grb.controls If chb.checked Then Try tw = chb.name.split("_") x = CInt(tw(1)) tp = WymienZnakNaPozycji(tp, x, "1") Catch ex As Exception Return "Błąd" End Try End If Next Return tp End Function ' prywatna funkcja wykorzystywana w innych procedurach tego modułu Private Function RepeatString(ByVal znak As Char, _ ByVal ile As Integer) As String Dim i As Integer, t As String = "" For i = 1 To ile t &= znak Next Return t End Function End Module 3.4 Plik konfiguracyjny W środowisku VS.NET istnieje możliwości przechowywania wybranych informacji w specjalnym pliku XML o nazwie zastrzeżonej app.config. Po kompilacji plik ten umieszczany jest w tym samym folderze co plik wykonywalny aplikacji pod nazwą taką jak nazwa rozwiązania uzupełnioną o fragment,exe.config (w przykładzie omawianym w tym opracowaniu będzie to plik o nazwie SpWynajemSal.exe.config). Plik ten może być swobodnie modyfikowany w dowolnym edytorze XML, a także w np. Notatniku. Wiele wierszy tego pliku nie może być zmienione, nas będzie interesował fragment między znacznikami <appsettings> i </appsettings>. 23

24 <?xml version="1.0" encoding="utf-8"?> <configuration> <system.diagnostics> <sources> <!-- This section defines the logging configuration for My.Application.Log --> <source name="defaultsource" switchname="defaultswitch"> <listeners> <add name="filelog"/> <!-- Uncomment the below section to write to the Application Event Log --> <!--<add name="eventlog"/>--> </listeners> </source> </sources> <switches> <add name="defaultswitch" value="information" /> </switches> <sharedlisteners> <add name="filelog" type="microsoft.visualbasic.logging.filelogtracelistener, Microsoft.VisualBasic, Version= , Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorarchitecture=msil" initializedata="filelogwriter"/> <!-- Uncomment the below section and replace APPLICATION_NAME with the name of your application to write to the Application Event Log --> <!--<add name="eventlog" type="system.diagnostics.eventlogtracelistener" initializedata="application_name"/> --> </sharedlisteners> </system.diagnostics> <! to jest fragment dla nas --> <appsettings> <add key="tytul" value="system obsługi wynajmu sal WSZiM w Sochaczewie"/> <add key="bazasql" value="datasource=boss-tecra\jg_sqlserver;initial Catalog=SaleWSZiM;Integrated Security=True"/> <add key="vat" value="0,23"/> <add key="kwestor" value="maria Kowalska"/> </appsettings> </configuration> 24

25 Plik wzorcowy app.config można dodać do naszego rozwiązania pobierając go z folderu PomocniczePliki, przy czym postępujemy podobnie jak przy dodawaniu innych obiektów różnica polega jedynie na tym, że będziemy wywoływać polecenie Existing Item zamiast New Item. Po dodaniu pliku do rozwiązania możemy zmodyfikować potrzebny fragment z poziomu VisualStudio (wystarczy zmiana nazwy serwera SQL oraz nazwy bazy danych na tym serwerze). Plik app.config musi być odczytany w momencie startu aplikacji, czyli w momencie otwierania formularza głównego frmmdiform. Zadanie to zrealizujemy w procedurze obsługującej zdarzenie Load tego formularza. Odczytanie pliku konfiguracyjnego wymaga zaimportowania niżej pokazanych przestrzeni nazw. Pobrane informacje są przypisywane do odpowiednich zmiennych globalnych (zadeklarowanych w ModulWspolny), Musimy także dodać odpowiednią referencję do biblioteki System.configuration (we właściwościach projektu w zakładce References). Imports System Imports System.Configuration Imports System.Configuration.ConfigurationSettings Public Class frmmdiform Private Sub frmmdi_load(byval sender As Object, _ ByVal e As System.EventArgs) Handles Me.Load Try strtytul =ConfigurationManager.AppSettings("Tytul") strbaza = ConfigurationManager.AppSettings("BazaSQL") StawkaVAT = ConfigurationManager.AppSettings("Vat") Kwestor = ConfigurationManager.AppSettings("Kwestor") bsqlok = True Catch ex As Exception MsgBox("Mam problem z odczytaniem pliku konfiguracyjnego", _ MsgBoxStyle.Critical, "Uruchomienie formularza MDI") End Try Me.Text = strtytul End Sub ' dalsze instrukcje w tej klasie Rnd Class 25

26 3.5 Potrzebne klasy zewnętrzne W tworzonej aplikacji możemy wykorzystać kilka interesujących klas, które poznaliśmy w semestrze pierwszym. Klasy te możemy włączyć do naszego rozwiązania w postaci odpowiedniego pliku, inna możliwość to utworzenie biblioteki DLL (ang. Dynamic link library) i wskazanie we właściwościach projektu lokalizacji takiej biblioteki. Dla treningu zastosujemy pierwsze rozwiązanie do klasy CForSorageSub, a drugie do dwóch pozostałych klas CForStorageSub W folderze przeznaczonym dla przechowywania plików demonstracyjnych tego projektu znajduje się plik CForStorageSub.vb, który zawiera pełny kod tej klasy. Zaimportujemy teraz ten plik do naszego projektu (dokładniej: rozwiązania). Robimy to analogicznie jak w przypadku pliku konfiguracyjnego: 1) Klik prawym przyciskiem myszy na nazwę rozwiązania w oknie Solution Explerer; 2) Z menu kontekstowego wybieramy polecenie Add i dalej Existing Item; 3) W oknie Add Exiting Item wskazujemy potrzebny plik (wcześniej otwierając stosowny folder); 4) Klik przycisku Add importuje wskazany plik i włącza go do naszego rozwiązania. Widok okna Solution Explorer po zaimportowaniu tego pliku pokazany jest obok. 26

27 3.5.2 CValidacja W przypadku klasy CValidacja postąpimy inaczej, skorzystamy z faktu, że dysponujemy wersją DLL tej klasy, a więc wskażemy we właściwościach rozwiązania referencję do tej biblioteki. Wykonujemy kolejne kroki: 1) Otwieramy okno właściwości rozwiązania (klik odpowiedniej ikony w oknie Solution Explorer lub z menu kontekstowego lub z menu głównego); 2) Przechodzimy do zakładki Referenses; 3) Poprzez klik przycisku Add otwieramy okno dodawania referencji; 4) W oknie Add Reference wskazujemy potrzebny plik biblioteki DLL; 5) Klik przycisku OK dodaje referencję (adres) do wskazanego pliku biblioteki (tym samym kompilator VisualStudio będzie wiedział, gdzie szukać tego pliku). Po dołączeniu referencji do biblioteki CValidacja.dll w oknie referencji tworzonego rozwiązania znajdziemy stosowny wpis. 27

28 3.5.3 CDataGridPrint 28

29 3.6 Formularz frmnowasala Zaprojektujemy teraz formularz przeznaczony do zarejestrowania nowej sali dydaktycznej. Zaczynamy od dodania do naszego rozwiązania nowego obiektu typu Windows Form, któremu nadajemy nazwę frmnowasala. Na powierzchni formularza umieścimy następujące obiekty (formanty): TextBox o nazwie txtnumer tu będziemy oczekiwać numeru sali; CheckBox o nazwie chbprojektor pozwoli na określenie czy w sali jest projektor; ComboBox o nazwie cbotypsali będziemy w nim wybierać typ sali; DataGridView o nazwie dgvzdjecia w tym formancie będzie można wpisać (w taki lub inny sposób nazwy plików zdjęć danej sali, jeżeli takowe będą); Button o nazwie btnzapisz przycisk uruchamiający procedurę zapisu danych; Button o nazwie btnbrowse przycisk uruchamiający okno typu OpenFileDialog, w którym użytkownik będzie mógł wskazać pliki zdjęć danej sali; Label z domyślną nazwą formanty opisujące pole tekstowe, pole kombi i datagrid. Dodatkowo do projektu formularza dodajemy formant typu ErrorProvider, który zostaje umieszczony na tzw. tacy. Nazwę tego formantu można pozostawić bez zmiany (domyślną). Poniżej widok projektu tego formularza, jego właściwość FormBorderStyle została zmieniona na FixedToolWindow, co nie pozwoli na zmianę jego rozmiaru. 29

30 W kodzie klasy tego formularza musimy utworzyć szereg procedur obsługujących jego funkcjonowanie, będą to oczywiście procedury zdarzeniowe. Kod zaczyna się od zaimportowania przestrzeni nazw CValidacjaJG, jest to przestrzeń nazw wykorzystywana przez bibliotekę DLL, którą wykorzystamy do walidacji wprowadzonych danych. Imports CValidacjaJG Public Class frmnowasala ' pole tekstowe txtnumer powinno umożliwić wprowadzenie tylko ' znaków cyfr (0 do 9), klawisza Back oraz Delete ' Procedura obsługująca zdarzenie KeyPress realizuje to zadanie Private Sub txtnumer_keypress(byval sender As Object, ByVal e As _ System.Windows.Forms.KeyPressEventArgs) _ Handles txtnumer.keypress If e.keychar >= "0" AndAlso e.keychar <= "9" Then ' cyfry OK e.handled = False ElseIf Asc(e.KeyChar) = Keys.Back Or _ Asc(e.KeyChar) = Keys.Delete Then ' delete i backspace ok e.handled = False Else' reszta nie jest OK Beep() e.handled = True End If End Sub Warto zauważyć, że procedura ta może nam się przydać także w innych przypadkach, a więc warto ją utworzyć w module wspólnym, wtedy będzie ją można wykorzystywać wielokrotnie. Poniżej kod tej procedury (w module wspólnym). Public Function ObslugaKeyPress(ByVal znak As Char) As Boolean If znak >= "0" AndAlso znak <= "9" Then ' cyfry OK Return False ElseIf Asc(znak) = Keys.Back Or Asc(znak) = Keys.Delete Then 'delete i backspace ok Return False Else' reszta nie OK Beep() Return True End If End Function Mając napisaną tę procedurę (funkcję) procedura obsługi zdarzenia KeyPress pola tekstowego txtnumer jest bardzo prosta. 30

31 Private Sub txtnumer_keypress(byval sender As Object, ByVal e As _ System.Windows.Forms.KeyPressEventArgs) _ Handles txtnumer.keypress e.handled = ObslugaKeyPress(e.KeyChar) End Sub Procedura obsługująca zdarzenia Load formularza musi utworzyć źródło danych dla formantu dgvzdjecia. Private Sub frmnowasala_load(byval sender As Object, _ ByVal e As System.EventArgs) Handles Me.Load ' w formularzu jest formant dgvzdjecia, nie jest podpięty ' pod żadne źródło danych. Jeżeli chcemy mieć możliwość dodawania ' nazw plików zdjęć sal, to musimy utworzyć obiekt DataTable Dim dt As New DataTable ' a następnie dodać do niego nową kolumnę typu tekstowego dt.columns.add(new DataColumn("Zdjecie", GetType(String))) ' można teraz przypisać obiekt dt jako źródło gridu Me.dgvZdjecia.DataSource = dt End Sub Procedura obsługująca zdarzenie Click przycisku btnbrowse tworzy i wyświetla okna dialogowe typu OpenFileDialog oczekując na wskazanie plików zdjęć danej sali. Private Sub btnbrowse_click(byval sender As System.Object, _ ByVal e As System.EventArgs) Handles btnbrowse.click Dim t() As String ' naszym zamiarem jest dopisanie wiersza lub wierszy do gridu ' deklarujemy obiekt dt jako DataTable i przypisujemy mu źródło ' danych gridu Dim dt As DataTable = Me.dgvZdjecia.DataSource ' deklarujemy i tworzymt egzemplarz klasy OpenFileDialog Dim ofd As New OpenFileDialog ' konstrukcja wiążąca z uwagi na konieczność zdefiniowania kilku ' właśności tego obiektu With ofd.title = "Proszę wskazać plik zdjęcia (jpg, gif lub bmp)".initialdirectory = "E:\".Multiselect = True.Filter = "Obrazy JPEG *.jpg Obrazy GIF *.Gif Obrazy Bmp *.bmp Wszystkie pliki *.*" End With ' otwieramy okno i badamy, czy użytkownik wybrał jeden lub ' więcej plików 31

32 If ofd.showdialog = Windows.Forms.DialogResult.OK Then ' wybrał, przeglądamy kolekcję nazw plików (pełna ścieżka) For Each strfile As String In ofd.filenames ' metoda Split dzieli ścieżkę na fragmenty opisujące ' dysk i foldery t = strfile.split("\") ' ostatni element to potrzebna nazwa pliku ' dodajemy go do obiekty dt korzystając z metody Add dla ' Rows. Wstawiamy ostatni element tablicy t, jego indeks ' to UBound(t) dt.rows.add(t(ubound(t))) Next ' odświeżamy obiekt dgv Me.dgvZdjecia.Refresh() End If End Sub Musimy jeszcze napisać procedurę obsługującą zdarzenie Click przycisku btnzapisz, ale wcześniej musimy utworzyć klasę, która będzie odpowiadała za wykonanie tego polecenia i kliku innych jeszcze związanych z obsługą sal Klasa CAdministracja Będzie to klasa potomna dziedzicząca po klasie CForStorageSub. Utworzymy w niej interfejs o nazwie ISale, będzie on zawierał funkcje i metody związane z operacjami związanymi z salami dydaktycznymi (dodanie nowej sali, edycja, usunięcie). Zaczynamy od dodania do rozwiązania nowego obiektu typu Class, któremu nadajemu nazwę CAdministracja. W kodzie tej klasy wpisujemy najpierw instrukcję importu potrzebnych przestrzeni nazw. Imports System Imports System.Data Imports System.Data.SqlClient Po instrukcjach importu deklarujemy interfejs ISale podając nazwy procedur i ich parametry. Public Interface ISale Function Komunikat() As String Sub PrzygotujNowaSala(ByVal strconn As String, _ ByVal frm As frmnowasala) Sub ZapiszSale(ByVal strconn As String, ByVal frm As frmnowasala) End Interface 32

33 Właściwy kod klasy zaczynamy od instrukcji dziedziczenia po klasie bazowej, dalej będzie instrukcja o implementacji interfejsu ISale oraz deklaracje zmiennych prywatnych klasy. Public Class CAdministracja Inherits CForStorageSub Implements ISale Private mkomunikat As String = "" Kolejno tworzymy instrukcje opisujące sposób działania funkcji i procedur interfejsu ISale. Funkcja Komunikat zwraca zmienną prywatną klasy mkomunikat, zgodnie z naszą koncepcją będzie to komunikat precyzujący ewentualny błąd czasu wykonania. Public Function Komunikat() As String Implements ISale.Komunikat Return mkomunikat End Function Procedura (metoda) PrzygotujNowaSala odpowiada za pobranie z bazy danych dwóch pól z tabeli RodzajSal, które wykorzystamy jako źródło danych pola kombi cbotypsali. Pobranie będzie wykonane poprzez wywołanie procedury przechowywanej o nazwie pdajtypsali. Public Sub PrzygotujNowaSala(ByVal strconn As String, _ ByVal frm As frmnowasala) _ Implements ISale.PrzygotujNowaSala Dim conn As New SqlConnection(strConn) Dim dt As DataTable Try conn.open() ' pobranie z bazy rekordestu, który będzie źródłem danych ' dla pola kombo cbotypsali, procedura SQL nie ma parametrów dt = MyBase.DajRekordset(conn, "dbo.pdajtypsali", "brak") ' zmienna bflaga zostaje ustawiona na False, dzięki temu ' w trakcie przypisywania właściwości DisplayMemeber oraz ' ValueMember ' będziemy mogli szybko opuścić procedurę obsługi zdarzenia ' SelectedIndexChange w frmnowasala dla cbotypsali bflaga = False ' stosujemy strukturę wiążącą With frm.cbotypsali.datasource = dt.displaymember = "rodzaj" 33

34 .ValueMember = "idtyp".selectedindex = -1 End With ' przypisujemy do bflaga=true dla aktywacji procedury ' SelectedIndexChange Catch ex As Exception mkomunikat = "Problem z pobraniem danych dla typów sal" Finally ' sprzątamy po sobie conn.close() conn = Nothing End Try End Sub Procedura (metoda) ZapiszSale odpowiada za zrealizowanie zapisu wprowadzonych informacji do tabeli Sale, a jeżeli użytkownik podał nazwę zdjęcia (lub nazwy zdjęć), to zostaną one zapisane do tabeli ZdjeciaSal. Public Sub ZapiszSale(ByVal strconn As String, _ ByVal frm As frmnowasala) Implements ISale.ZapiszSale Dim conn As New SqlConnection(strConn), i, j As Integer Try conn.open() ' zapisujemy dane do tabeli Sale, ale tylko wtedy, gdy ' numner sali jest unikalny i = MyBase.DajWartosc(conn, "dbo.pwstawsale", _ frm.txtnumer.text, jgtyp.jginteger, 0, _ IIf(frm.chbProjektor.Checked, 1, 0), _ jgtyp.jginteger, 0, _ frm.cbotypsali.selectedvalue, _ jgtyp.jginteger, 0, _ jgtyp.jginteger, 0) If i = 0 Then ' sala zarejestrowana, można wstawić zdjęcia, jeżeli są If frm.dgvzdjecia.rows.count > 1 Then ' są, zapisujemy MyBase.WstawWieleRekordow(conn, "dbo.pwstawzdjecie", _ frm.dgvzdjecia, _ jgtyp.jginteger, 0, True, frm.txtnumer.text, _ jgtyp.jgstring, 30, False, 0) End If End If Catch ex As Exception 34

35 mkomunikat = _ "Problem z zapisaniem danych do tabel Sale i ZdjeciaSal" Finally conn.close() conn = Nothing If i = 1 And mkomunikat.length = 0 Then mkomunikat = "Sala o numerrze " & frm.txtnumer.text & _ " juz jest w bazie, odmowa zapisu" End If End Try End Sub End Class Uzupełnienie kodu klasy frmnowasala Możemy już napisać procedurę obsługującą klik przycisku btnzapisz. Skorzystamy w tym kodzie z dwóch klas: CValidacja i CAdministracja. Private Sub btnzapisz_click(byval sender As System.Object, _ ByVal e As System.EventArgs) Handles btnzapisz.click ' polecenie zapisu ma być wykonane wtedy, gdy użytkownik poda ' poprawne informacje. Do ich zweryfikowania wykorzystamy metody ' udostępnione w bibliotece CValidacja ' deklarujemy i tworzymy egzemplarz tej klasy Dim w As New CValidacja ' badamy, czy pole txtnumer jest liczbą z podanego zakresu ' numeracji sal If Not w.czytextboxtoliczba(true, Me.txtNumer, _ Me.ErrorProvider1, "Numer sali musi być podany!", minnrsali, _ maxnrsali, True) Then Exit Sub If Not w.czywybranopozycjecombo(true, Me.cboTypSali, _ Me.ErrorProvider1, "Proszę wybrać typ sali!", True) _ Then Exit Sub ' można zapisywać w = Nothing ' deklarujemy obiekt klasy CAdministracja wykorzystując interfejs ' ISale (co ograniczy dostępność metod do tego interfejsu) Dim z As ISale ' tworzymy egzemplarz klasy CAdministracja z = New CAdministracja ' wywołujemy metodę ZapiszSale z.zapiszsale(strbaza, Me) ' sprawdzamy, czy zapis zakończył się sukcesem? If z.komunikat.length > 0 Then 35

36 MsgBox(z.Komunikat, MsgBoxStyle.Critical, Me.Text) Else MsgBox("Nowa sala zapisana w bazie", MsgBoxStyle.Information, _ Me.Text) Me.Close() End If z = Nothing End Sub Uzupełnienie kodu formularza głównego Musimy jeszcze zmodyfikować instrukcje uruchamiające formularz frmnowasala, chodzi o to, że ten formularz ma prawo być pokazany tylko wtedy, gdy wszystkie jego formanty będą gotowe do pracy. W przypadku tego formularza musimy przed jego pokazaniem dostarczyć dane źródłowe do formantu kombo o nazwie cbotypsal. Zrobimy to poprzez utworzenie obiektu klasy CAdministracja i wywołanie metody PrzygotujNowaSala. Pokazana niżej procedura korzysta z publicznej procedury PokazForm, która została utworzona w module ogólnym (z uwagi na to, że będziemy wielokrotnie z niej korzystać). Private Sub mnunowasala_click(byval sender As System.Object, _ ByVal e As System.EventArgs) Handles mnunowasala.click Dim frm As New frmnowasala Dim w As ISale w = New CAdministracja w.przygotujnowasala(strbaza, frm) PokazForm(w.Komunikat, frm, Me, _ "Błąd otwarcia formularza frmnowasala", _ "Formularz dodania nowej sali") End Sub Wspomniana procedura PokazForm otrzymuje jako argumenty te informacje, które pozwalają jej na wyświetlenie lub nie danego formularza. Public Sub PokazForm(ByVal strkomunikat As String, _ ByRef frm As Form, ByRef frmparent As Form, _ ByVal stropisoknakomunikatu As String, _ Optional ByVal strtytulformy As String = Nothing) If strkomunikat.length > 0 Then MsgBox(strKomunikat, MsgBoxStyle.Critical, _ stropisoknakomunikatu) Else If Not IsNothing(strTytulFormy) Then 36

37 frm.text = strtytulformy End If frm.mdiparent = frmparent frm.show() End If End Sub Formularz frmnowasala w pracy Na zakończenie kilka zrzutów ekranowych pokazujących działanie tego formularza. 37

38 I zapis w bazie, tabela Sale (ostatnia pozycja w tej tabeli) oraz w ZdjeciaSal (dwa ostatnie rekordy). 38

Janusz Górczyński. Projekt WynajemSal realizowany w trakcie drugiego semestru studiów podyplomowych

Janusz Górczyński. Projekt WynajemSal realizowany w trakcie drugiego semestru studiów podyplomowych Janusz Górczyński Projekt WynajemSal realizowany w trakcie drugiego semestru studiów podyplomowych WSZiM w Sochaczewie, 2011 Spis treści 1 WSTĘP...3 2 BAZA DANYCH...4 2.1 TABELE...4 2.2 PROCEDURY PRZECHOWYWANE...11

Bardziej szczegółowo

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Projekt Hurtownia, realizacja rejestracji dostaw produktów Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące

Bardziej szczegółowo

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Projekt Hurtownia, realizacja rejestracji dostaw produktów Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące

Bardziej szczegółowo

Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013. Visual Basic.NET dostęp do bazy danych. Baza Microsoft SQL Server Compact

Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013. Visual Basic.NET dostęp do bazy danych. Baza Microsoft SQL Server Compact Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013 Prowadzący: mgr inż. Tomasz Jaworski Strona WWW: http://tjaworski.kis.p.lodz.pl/ Visual Basic.NET dostęp do bazy danych Baza Microsoft SQL Server Compact

Bardziej szczegółowo

3 Delegacje. 3.1 Tworzenie delegacji. 3.2 Skojarzenie delegacji z procedurą czy funkcją

3 Delegacje. 3.1 Tworzenie delegacji. 3.2 Skojarzenie delegacji z procedurą czy funkcją 3 Delegacje Delegacja to specjalny typ danych, który przechowuje referencję (adres) do procedury lub funkcji. W środowisku.net delegacja jest odpowiednikiem wskaźnika (pointer) do funkcji znanego z języka

Bardziej szczegółowo

Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio

Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Podstawy programowania Ćwiczenie Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Tematy ćwiczenia algorytm, opis języka programowania praca ze środowiskiem, formularz, obiekty

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości część 2 Zaprojektowaliśmy stronę dodaj_dzial.aspx proszę jednak spróbować dodać nowy dział nie podając jego nazwy

Bardziej szczegółowo

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy dwie Encje (tabele) prawym

Bardziej szczegółowo

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika Prowadzący: Dr inż. Jacek Habel Instytut Technologii Maszyn i Automatyzacji Produkcji Zakład Projektowania Procesów

Bardziej szczegółowo

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued

Bardziej szczegółowo

Laboratorium 7 Blog: dodawanie i edycja wpisów

Laboratorium 7 Blog: dodawanie i edycja wpisów Laboratorium 7 Blog: dodawanie i edycja wpisów Dodawanie nowych wpisów Tworzenie formularza Za obsługę formularzy odpowiada klasa Zend_Form. Dla każdego formularza w projekcie tworzymy klasę dziedziczącą

Bardziej szczegółowo

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych Paweł Paduch paduch@tu.kielce.pl 06-04-2013 Rozdział 1 Wstęp Na dzisiejszych zajęciach zajmiemy się projektem bazy danych.

Bardziej szczegółowo

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1 1 LINQ 1 1. Cel zajęć Celem zajęć jest zapoznanie się z technologią LINQ oraz tworzeniem trójwarstwowej aplikacji internetowej. 2. Zadanie Proszę przygotować aplikację WWW, która: będzie pozwalała na generowanie

Bardziej szczegółowo

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

5.4. Tworzymy formularze

5.4. Tworzymy formularze 5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania

Bardziej szczegółowo

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3 3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0

Bardziej szczegółowo

DECLARE VARIABLE zmienna1 typ danych; BEGIN

DECLARE VARIABLE zmienna1 typ danych; BEGIN Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;

Bardziej szczegółowo

Materiały do laboratorium MS ACCESS BASIC

Materiały do laboratorium MS ACCESS BASIC Materiały do laboratorium MS ACCESS BASIC Opracowała: Katarzyna Harężlak Access Basic jest językiem programowania wykorzystywanym w celu powiązania obiektów aplikacji w jeden spójny system. PROCEDURY I

Bardziej szczegółowo

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Microsoft.NET: LINQ to SQL, ASP.NET AJAX Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub

Bardziej szczegółowo

Instrukcja użytkownika programu QImport (wydanie II 25.07.2012 r.)

Instrukcja użytkownika programu QImport (wydanie II 25.07.2012 r.) Instrukcja użytkownika programu QImport (wydanie II 25.07.2012 r.) Wymagania techniczne komputer z procesorem 1,5 GHz lub lepszym 512 MB pamięci RAM lub więcej system operacyjny Microsoft Windows XP z

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest

Bardziej szczegółowo

Tworzenie bazy danych na przykładzie Access

Tworzenie bazy danych na przykładzie Access Tworzenie bazy danych na przykładzie Access Tworzenie tabeli Kwerendy (zapytania) Selekcja Projekcja Złączenie Relacja 1 Relacja 2 Tworzenie kwedend w widoku projektu Wybór tabeli (tabel) źródłowych Wybieramy

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych widok ankiety w przeglądarce Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy

Bardziej szczegółowo

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem. WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy

Bardziej szczegółowo

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI LABORATORIUM TECHNOLOGIA SYSTEMÓW INFORMATYCZNYCH W BIOTECHNOLOGII Aplikacja bazodanowa: Cz. II Rzeszów, 2010 Strona 1 z 11 APLIKACJA BAZODANOWA MICROSOFT ACCESS

Bardziej szczegółowo

Dodanie nowej formy do projektu polega na:

Dodanie nowej formy do projektu polega na: 7 Tworzenie formy Forma jest podstawowym elementem dla tworzenia interfejsu użytkownika aplikacji systemu Windows. Umożliwia uruchomienie aplikacji, oraz komunikację z użytkownikiem aplikacji. W trakcie

Bardziej szczegółowo

Instrukcja obsługi aplikacji MobileRaks 1.0

Instrukcja obsługi aplikacji MobileRaks 1.0 Instrukcja obsługi aplikacji MobileRaks 1.0 str. 1 Pierwsze uruchomienie aplikacji. Podczas pierwszego uruchomienia aplikacji należy skonfigurować połączenie z serwerem synchronizacji. Należy podać numer

Bardziej szczegółowo

1. Zarządzanie informacją w programie Access

1. Zarządzanie informacją w programie Access 1. Zarządzanie informacją w programie Access a. 1. Cele lekcji i. a) Wiadomości Uczeń: zna definicję bazy danych i jej zadania, zna pojęcia: rekord, pole, klucz podstawowy, zna obiekty bazy danych: tabele,

Bardziej szczegółowo

Leszek Stasiak Zastosowanie technologii LINQ w

Leszek Stasiak Zastosowanie technologii LINQ w Leszek Stasiak Zastosowanie technologii LINQ w C# 1. Wstęp - połączenie Do naszych zadań będziemy używać Microsoft Visual Studio 2010. Stwórzmy nowy projekt Windows Form Application. Mając do dyspozycji

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście. Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN

Bardziej szczegółowo

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012:

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012: Systemy baz danych 16.04.2013 1. Plan: 10. Implementacja Bazy Danych - diagram fizyczny 11. Implementacja Bazy Danych - implementacja 2. Zadania: 1. Przygotować model fizyczny dla wybranego projektu bazy

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

Kurs walut. Specyfikacja projektu. Marek Zając 2013-12-16

Kurs walut. Specyfikacja projektu. Marek Zając 2013-12-16 Kurs walut Specyfikacja projektu Marek Zając 2013-12-16 Spis treści 1. Podsumowanie... 2 1.1 Wstęp... 2 1.2 Projekt interfejsu... 2 1.2.1 Rozmiar głównego okna... 2 2. Słownik pojęć... 2 2.1 Definicja

Bardziej szczegółowo

BACKUP BAZ DANYCH FIREBIRD

BACKUP BAZ DANYCH FIREBIRD BACKUP BAZ DANYCH FIREBIRD SPIS TREŚCI Informacje ogólne... 2 Tworzenie projektu... 2 Krok 1: Informacje podstawowe... 2 Krok 2: Dane... 3 Backup bazy umieszczonej na serwerze... 3 Bezpośredni backup pliku

Bardziej szczegółowo

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,

Bardziej szczegółowo

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu

Bardziej szczegółowo

WebMobile7 and Sello Integrator wersja 1.1.2

WebMobile7 and Sello Integrator wersja 1.1.2 Instrukcja obsługi aplikacji WebMobile7 and Sello Integrator wersja 1.1.2 Piotr Taraszkiewicz Strona 1 Spis treści 1 WSTĘP O APLIKACJI 3 2 KONFIGURACJA APLIKACJI 4 2.1 KONFIGURACJA POŁĄCZENIA 4 2.2 POZOSTAŁE

Bardziej szczegółowo

Kostki OLAP i język MDX

Kostki OLAP i język MDX Kostki OLAP i język MDX 24 kwietnia 2015 r. Opis pliku z zadaniami Wszystkie zadania na zajęciach będą przekazywane w postaci plików PDF sformatowanych jak ten. Będą się na nie składały różne rodzaje zadań,

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

Baza danych. Program: Access 2007

Baza danych. Program: Access 2007 Baza danych Program: Access 2007 Bazę danych składa się z czterech typów obiektów: tabela, formularz, kwerenda i raport (do czego, który służy, poszukaj w podręczniku i nie bądź za bardzo leniw) Pracę

Bardziej szczegółowo

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3 Currenda EPO Instrukcja Konfiguracji Wersja dokumentu: 1.3 Currenda EPO Instrukcja Konfiguracji - wersja dokumentu 1.3-19.08.2014 Spis treści 1 Wstęp... 4 1.1 Cel dokumentu... 4 1.2 Powiązane dokumenty...

Bardziej szczegółowo

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji Tworzenie bazy danych w postaci aplikacji Access - Aplikacja 1. Otwórz plik zawierający bazę danych Wypożyczalni kaset video o nazwie Wypożyczalnia.mdb. 2. Utworzy kwerendę, która wyświetli tytuły i opisy

Bardziej szczegółowo

Instrukcja laboratoryjna cz.3

Instrukcja laboratoryjna cz.3 Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

Połączenie AutoCad'a z bazą danych

Połączenie AutoCad'a z bazą danych Połączenie AutoCad'a z bazą danych Założenie bazy danych z pojedynczą tablicą Samochody, za pomocą aplikacji MS Access 1. Na dysku C: założyć katalog: C:\TKM\GR1x 2. Do tego katalogu przekopiować plik:

Bardziej szczegółowo

Instrukcja do programu Przypominacz 1.6

Instrukcja do programu Przypominacz 1.6 Instrukcja do programu Przypominacz 1.6 Program Przypominacz 1.6 pozwala w prosty sposób wykorzystać dane z systemu sprzedaży Subiekt GT do prowadzenia tzw. miękkiej windykacji poprzez wysyłanie kontrahentom

Bardziej szczegółowo

SYSTEM INFORMATYCZNY KS-SEW

SYSTEM INFORMATYCZNY KS-SEW DOKUMENTACJA TECHNICZNA KAMSOFT S.A. 40-235 Katowice ul. 1-Maja 133 Tel. (032) 2090705, Fax. (032) 2090715 http:www.kamsoft.pl, e-mail: 5420@kamsoft.pl SYSTEM INFORMATYCZNY NR KATALOGOWY 2334PI06.00 WYDANIE

Bardziej szczegółowo

Projektowanie baz danych za pomocą narzędzi CASE

Projektowanie baz danych za pomocą narzędzi CASE Projektowanie baz danych za pomocą narzędzi CASE Metody tworzenia systemów informatycznych w tym, także rozbudowanych baz danych są komputerowo wspomagane przez narzędzia CASE (ang. Computer Aided Software

Bardziej szczegółowo

Viatoll Calc v1.3. Viatoll Calc. Instrukcja użytkownika. Strona 1

Viatoll Calc v1.3. Viatoll Calc. Instrukcja użytkownika. Strona 1 Viatoll Calc Instrukcja użytkownika Strona 1 Spis treści 1 Wstęp...3 2 Opis panelu głównego...3 2.1 Menu aplikacji...4 2.2 Tabela z trasami...5 2.3 Strona kalkulatora viatoll...6 2.4 Pasek statusu...7

Bardziej szczegółowo

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod:

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: 1. Listener dla przycisku. Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: W linii 24 tworzymy globalną metodę mglobal_onclicklistener,

Bardziej szczegółowo

Instalacja programu:

Instalacja programu: Instrukcja programu Konwerter Lido Aktualizacja instrukcji : 2012/03/25 INSTALACJA PROGRAMU:... 1 OKNO PROGRAMU OPIS... 3 DODANIE MODUŁÓW KONWERSJI... 3 DODANIE LICENCJI... 5 DODANIE FIRMY... 7 DODAWANIE

Bardziej szczegółowo

OpenOfficePL. Zestaw szablonów magazynowych. Instrukcja obsługi

OpenOfficePL. Zestaw szablonów magazynowych. Instrukcja obsługi OpenOfficePL Zestaw szablonów magazynowych Instrukcja obsługi Spis treści : 1. Informacje ogólne 2. Instalacja zestawu a) konfiguracja połączenia z bazą danych b) import danych z poprzedniej wersji faktur

Bardziej szczegółowo

Finanse. Jak wykonać import listy płac z programu Płace Optivum do aplikacji Finanse?

Finanse. Jak wykonać import listy płac z programu Płace Optivum do aplikacji Finanse? Finanse Jak wykonać import listy płac z programu Płace Optivum do aplikacji Finanse? Operacja importu list płac z programu Płace Optivum do aplikacji Finanse przebiega w następujących krokach: 1. wybór

Bardziej szczegółowo

WTYCZKA FARA-TCM Dane techniczne dla twórców zewnętrznych aplikacji do obsługi map cmentarza

WTYCZKA FARA-TCM Dane techniczne dla twórców zewnętrznych aplikacji do obsługi map cmentarza 2015 WTYCZKA FARA-TCM Dane techniczne dla twórców zewnętrznych aplikacji do obsługi map cmentarza Dokumentacja techniczna dostępu do podstawowych danych cmentarnych w programie FARA. wersja 1.0 aktualizacja:

Bardziej szczegółowo

Rejestracja faktury VAT. Instrukcja stanowiskowa

Rejestracja faktury VAT. Instrukcja stanowiskowa Rejestracja faktury VAT Instrukcja stanowiskowa 1. Uruchomieni e formatki Faktury VAT. Po uruchomieniu aplikacji pojawi się okno startowe z prośbą o zalogowanie się. Wprowadzamy swoją nazwę użytkownika,

Bardziej szczegółowo

Dostęp do baz danych w ASP.NET.

Dostęp do baz danych w ASP.NET. Ćwiczenie 12 Temat: Dostęp do baz danych w ASP.NET. Kontrolki źródeł danych i wizualizacyjne. Wyświetlanie i edycja danych. Cel ćwiczenia: W ramach ćwiczenie student zapozna się z kontrolkami umożliwiającymi

Bardziej szczegółowo

Aplikacje geodezyjne

Aplikacje geodezyjne Aplikacje geodezyjne 1. Azymut ze współrzędnych Utwórz nowy projekt o nazwie Azymut. W oknie rozmieść kontrolki mniej więcej zgodnie z rysunkiem. Obiekty mają zmienione następujące wartości cech: cecha

Bardziej szczegółowo

Ćwiczenia 2 IBM DB2 Data Studio

Ćwiczenia 2 IBM DB2 Data Studio Ćwiczenia 2 IBM DB2 Data Studio Temat: Aplikacje w Data Studio 1. Projekty Tworzenie procedur, UDF, trygerów zaczynamy od utworzenia projektu File -> New -> Project wybieramy Data Development Project.

Bardziej szczegółowo

Krótka instrukcja instalacji Adobe Acrobat Reader

Krótka instrukcja instalacji Adobe Acrobat Reader Krótka instrukcja instalacji Adobe Acrobat Reader Program Adobe Acrobat Reader jest niezbędny do otwarcia dokumentu e-faktury tp. Jeżeli nie posiadają go Państwo w swoim komputerze, należy go zainstalować.

Bardziej szczegółowo

Nowe funkcje w programie SYMFONIA Handel Premium w wersji 2009

Nowe funkcje w programie SYMFONIA Handel Premium w wersji 2009 SYMFONIA Handel Premium Strona 1 z 7 Nowe funkcje w programie SYMFONIA Handel Premium w wersji 2009 Dodatkowa ochrona dostępu do przeglądania cen zakupu towarów Duża grupa użytkowników programu zgłaszała

Bardziej szczegółowo

Zapytania i wstawianie etykiet z bazy danych do rysunku

Zapytania i wstawianie etykiet z bazy danych do rysunku Zapytania i wstawianie etykiet z bazy danych do rysunku Pracujemy z gotową bazą danych MSAccess o nazwie KOMIS.MDB. Baza ta składa się z kilku tabel, rys. 1 Rys. 1. Diagram relacji. Wybierając w MSAccess,

Bardziej szczegółowo

15. Funkcje i procedury składowane PL/SQL

15. Funkcje i procedury składowane PL/SQL 15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp

Bardziej szczegółowo

MODUŁ OFERTOWANIE INSTRUKCJA OBSŁUGI

MODUŁ OFERTOWANIE INSTRUKCJA OBSŁUGI MODUŁ OFERTOWANIE INSTRUKCJA OBSŁUGI 1 1. MOŻLIWOŚCI Moduł Ofertowanie jest przeznaczony do programu Symfonia Handel Forte. Jego zadaniem jest wspomaganie działania pracowników firmy w przygotowywaniu

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie

Bardziej szczegółowo

Paweł Górczyński, Janusz Górczyński. Aplikacja MS SQL Server i MS VB.NET do zarządzania studiami podyplomowymi

Paweł Górczyński, Janusz Górczyński. Aplikacja MS SQL Server i MS VB.NET do zarządzania studiami podyplomowymi W ykłady z infor matyki Paweł Górczyński, Janusz Górczyński Aplikacja MS SQL Server i MS VB.NET do zarządzania studiami podyplomowymi Wyższa Szkoła Zarządzania i Marketingu Sochaczew 2010 Książka ta jest

Bardziej szczegółowo

Instrukcja do programu Przypominacz 1.5

Instrukcja do programu Przypominacz 1.5 Instrukcja do programu Przypominacz 1.5 Program Przypominacz 1.5 pozwala w prosty sposób wykorzystać dane z systemu sprzedaży Subiekt GT do prowadzenia tzw. miękkiej windykacji poprzez wysyłanie kontrahentom

Bardziej szczegółowo

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości część 3 przejdziemy teraz do zaprojektowania strony przegladaj_dzialami.aspx na której użytkownicy będą przeglądać

Bardziej szczegółowo

Uzupełnij pola tabeli zgodnie z przykładem poniżej,

Uzupełnij pola tabeli zgodnie z przykładem poniżej, 1. Wykonaj bazę danych biblioteki szkolnej, Otwórz MS Access a następnie z menu plik wybierz przycisk nowy, w oknie nowy plik wybieramy pusta baza danych nadaj jej nazwę Biblioteka i wybierz miejsce w

Bardziej szczegółowo

Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory

Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory Poniższa instrukcja opisuje sposób zdalnej instalacji oprogramowania Webroot SecureAnywhere w środowiskach wykorzystujących usługę Active

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Jak utworzyć plik SIO dla aktualnego spisu?

Jak utworzyć plik SIO dla aktualnego spisu? System Informacji Oświatowej Jak utworzyć plik SIO dla aktualnego spisu? Programy Arkusz Optivum, Kadry Optivum, Płace Optivum, Sekretariat Optivum oraz Księgowość Optivum dostarczają znaczną część danych

Bardziej szczegółowo

Podręcznik użytkownika programu. Ceremonia 3.1

Podręcznik użytkownika programu. Ceremonia 3.1 Podręcznik użytkownika programu Ceremonia 3.1 1 Spis treści O programie...3 Główne okno programu...4 Edytor pieśni...7 Okno ustawień programu...8 Edycja kategorii pieśni...9 Edytor schematów slajdów...10

Bardziej szczegółowo

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Ćwiczenie 1. Kolejki IBM Message Queue (MQ) Ćwiczenie 1. Kolejki IBM Message Queue (MQ) 1. Przygotowanie Przed rozpoczęciem pracy, należy uruchomić "Kreator przygotowania WebSphere MQ" oraz przejść przez wszystkie kroki kreatora, na końcu zaznaczając

Bardziej szczegółowo

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja Produkcja by CTI Proces instalacji, ważne informacje oraz konfiguracja Spis treści 1. Ważne informacje przed instalacją...3 2. Instalacja programu...4 3. Nawiązanie połączenia z serwerem SQL oraz z programem

Bardziej szczegółowo

Formularze w programie Word

Formularze w programie Word Formularze w programie Word Formularz to dokument o określonej strukturze, zawierający puste pola do wypełnienia, czyli pola formularza, w których wprowadza się informacje. Uzyskane informacje można następnie

Bardziej szczegółowo

Ustalanie dostępu do plików - Windows XP Home/Professional

Ustalanie dostępu do plików - Windows XP Home/Professional Ustalanie dostępu do plików - Windows XP Home/Professional Aby edytować atrybuty dostępu do plikow/ katalogow w systemie plików NTFS wpierw sprawdź czy jest Wyłączone proste udostępnianie czyli przejdź

Bardziej szczegółowo

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL, Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających

Bardziej szczegółowo

Ćwiczenie laboratoryjne. Oprogramowanie i badanie stosu lub kolejki w środowisku Visual Basic 2005

Ćwiczenie laboratoryjne. Oprogramowanie i badanie stosu lub kolejki w środowisku Visual Basic 2005 Ćwiczenie laboratoryjne Oprogramowanie i badanie stosu lub kolejki w środowisku Visual Basic 2005 Tematy ćwiczenia realizacja stosu lub kolejki dla tablicowej lub listowej reprezentacji. operacje na stosie

Bardziej szczegółowo

Numeracja dla rejestrów zewnętrznych

Numeracja dla rejestrów zewnętrznych Numeracja dla rejestrów zewnętrznych System ZPKSoft Doradca udostępnia możliwość ręcznego nadawania numerów dla procedur i dokumentów zgodnie z numeracją obowiązującą w rejestrach zewnętrznych, niezwiązanych

Bardziej szczegółowo

Instrukcja obsługi aplikacji Karty Pojazdów dla Dealerów Samochodowych

Instrukcja obsługi aplikacji Karty Pojazdów dla Dealerów Samochodowych Instrukcja obsługi aplikacji Karty Pojazdów dla Dealerów Samochodowych ver. 0.6 1 Instalacja 1. Proces instalacji należy rozpocząć od sprawdzenia, czy w systemie MS Windows jest zainstalowana aplikacja

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5 Wdrożenie modułu płatności eservice dla systemu Zen Cart 1.3.9 1.5 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

Zwróćmy uwagę w jakiej lokalizacji i pod jaką nazwą zostanie zapisana baza (plik z rozszerzeniem *.accdb). Nazywamy

Zwróćmy uwagę w jakiej lokalizacji i pod jaką nazwą zostanie zapisana baza (plik z rozszerzeniem *.accdb). Nazywamy Ćw.1 WPROWADZENIE DO OBSŁUGI BAZ DANYCH MS ACCESS 2007(2010) Program Microsoft Office Access umożliwia organizowanie informacji w tabelach: listach wierszy i kolumn oraz zarządzanie, wykonywanie zapytań

Bardziej szczegółowo

Laboratorium 1 - Programowanie proceduralne i obiektowe

Laboratorium 1 - Programowanie proceduralne i obiektowe Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?

Bardziej szczegółowo

Rozpoczęcie pracy z programem.

Rozpoczęcie pracy z programem. Rozpoczęcie pracy z programem. Po zainstalowaniu programu należy przygotować program do wykonywania kopii zapasowej baz danych. W tym celu należy uruchomić z menu start Panel sterowania a następnie wybrać

Bardziej szczegółowo

Klasa bazowa i klasy potomne - doskonalenie umiejtnoci projektowania i wykorzystania klas (45 min)

Klasa bazowa i klasy potomne - doskonalenie umiejtnoci projektowania i wykorzystania klas (45 min) Zadanie5_28 Klasa bazowa i klasy potomne - doskonalenie umiejtnoci projektowania i wykorzystania klas (45 min) Opis zadania Wykorzystaj gotowy projekt Nowe auto, a nastpnie zaprojektuj klas bazow NoweAuto

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x Wdrożenie modułu płatności eservice dla systemu oscommerce 2.3.x - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

5.2. Pierwsze kroki z bazami danych

5.2. Pierwsze kroki z bazami danych 5.2. Pierwsze kroki z bazami danych Uruchamianie programu Podobnie jak inne programy, OO Base uruchamiamy z Menu Start, poprzez zakładkę Wszystkie programy, gdzie znajduje się folder OpenOffice.org 2.2,

Bardziej szczegółowo

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1 Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych

Bardziej szczegółowo

SYSTEM INFORMATYCZNY KS-SEW

SYSTEM INFORMATYCZNY KS-SEW DOKUMENTACJA TECHNICZNA KAMSOFT S.A. 40-235 Katowice ul. 1-Maja 133 Tel. (032) 2090705, Fax. (032) 2090715 http://www.kamsoft.pl, e-mail: 5420@kamsoft.pl SYSTEM INFORMATYCZNY NR KATALOGOWY 2334PI06.00

Bardziej szczegółowo

Karty pracy. Ustawienia. W tym rozdziale została opisana konfiguracja modułu CRM Karty pracy oraz widoki i funkcje w nim dostępne.

Karty pracy. Ustawienia. W tym rozdziale została opisana konfiguracja modułu CRM Karty pracy oraz widoki i funkcje w nim dostępne. Karty pracy W tym rozdziale została opisana konfiguracja modułu CRM Karty pracy oraz widoki i funkcje w nim dostępne. Ustawienia Pierwszym krokiem w rozpoczęciu pracy z modułem Karty Pracy jest definicja

Bardziej szczegółowo

Rozdział 4 KLASY, OBIEKTY, METODY

Rozdział 4 KLASY, OBIEKTY, METODY Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej

Bardziej szczegółowo

Nowe funkcje w programie SYMFONIA Handel Premium w wersji 2009.c

Nowe funkcje w programie SYMFONIA Handel Premium w wersji 2009.c SYMFONIA Handel Premium Strona 1 Nowe funkcje w programie SYMFONIA Handel Premium w wersji 2009.c Zmiany związane z nowelizacją Ustawy o VAT Z dniem 1 grudnia 2008r. weszła w życie nowelizacja ustawy o

Bardziej szczegółowo

Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami

Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592 Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Spis treści Założenia Projektowe...1 Schemat Bazy Danych...1

Bardziej szczegółowo

Nowe funkcjonalności wersji 3.12.0

Nowe funkcjonalności wersji 3.12.0 1. Folder poczekalnia Nowe funkcjonalności wersji 3.12.0 Dostępny jest z poziomu strony głównej w zakładce Foldery 2. Wkładka adresowa Zdefiniowane wkładu 3. Lokalizacja składów chronologicznych Możliwość

Bardziej szczegółowo

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED Podręcznik użytkownika Katowice 2010 Producent programu: KAMSOFT S.A. ul. 1 Maja 133 40-235 Katowice Telefon: (0-32) 209-07-05 Fax:

Bardziej szczegółowo

Ref. 7 - Język SQL - polecenia DDL i DML

Ref. 7 - Język SQL - polecenia DDL i DML Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość

Bardziej szczegółowo

Ten odcinek Akademii PC Kuriera poświęcony zostanie tworzeniu i wykorzystaniu funkcji i procedur w języku Visual Basic.NET.

Ten odcinek Akademii PC Kuriera poświęcony zostanie tworzeniu i wykorzystaniu funkcji i procedur w języku Visual Basic.NET. Ten odcinek Akademii PC Kuriera poświęcony zostanie tworzeniu i wykorzystaniu funkcji i procedur w języku Visual Basic.NET. Czym są procedury? Efektywne tworzenie często polegać będzie na ponownym wykorzystywaniu

Bardziej szczegółowo

Instrukcjaaktualizacji

Instrukcjaaktualizacji Instrukcja Instrukcjaaktualizacji aktualizacji oprogramowania oprogramowaniainpro InProBMS BMS SPIS TREŚCI 1. AKTUALIZACJA 3 1.1. ARCHIWIZACJA BAZY DANYCH...3 1.1.1. AUTOMATYCZNA...3 1.1.2. RĘCZNA...4

Bardziej szczegółowo