You are on page 1of 42

©2006 GE Fanuc Automation. http://www.gefanuc.com

Korzystanie z VisiconX

Podręcznik Korzystanie z VisiconX jest przeznaczony dla wszystkich użytkowników systemu iFIX chcących wykorzystywać dane z relacyjnych lub konwencjonalnych baz danych. Dyskutuje on szczegółowo użycie kontrolek VisiconX - obiektów ActiveX. Kontrolki te umożliwiają dostęp do danych zapisanych w bazie danych dowolnego typu. Wykorzystywane do dostępu do danych skrypty lub programy nie są wtedy już potrzebne.

Dawniej, uzyskanie dostępu do danych wymagało napisania skryptu w języku Microsoft Visual Basic, co

było zajęciem czasochłonnym i wiązało się potrzebą znajomości tego języka. Kontrolki VisiconX korzystają

z najnowszej technologii firmy Microsoft, znanej pod nazwą ADO, która jest skrótem od ActiveX Data Objects. Dzięki ADO, technologia VisiconX umożliwia łatwy i szybki dostęp do danych.

Do zrozumienia niniejszego podręcznika wymagana jest znajomość podstaw programu Proficy iFIX WorkSpace oraz samego systemu iFIX. Zakłada się ponadto umiejętność korzystania z zapytań SQL oraz relacyjnych baz danych. Konieczna jest również znajomość środowiska systemu operacyjnego Windows,

a zwłaszcza jego zaawansowanych funkcji.

Dokumenty odnośne

Informacje odnoszące się do tematów opisywanych w tym podręczniku są zawarte w następujących

dokumentach:

Tworzenie rysunków

Korzystanie z SQL

Pisanie skryptów

Przykłady wykorzystania technologii VisiconX w programie WorkSpace zostały zilustrowane w programach demonstracyjnych Systemu przykładowego. Celem uzyskania więcej informacji na temat korzystania z Systemu przykładowego, należy odwołać się do rozdziału Korzystanie z Systemu przykładowego oprogramowania iFIX podręcznika Podstawy systemu iFIX.

Wprowadzenie

VisiconX™ jest narzędziem firmy GE Fanuc typu Plug and Solve ® przeznaczonym dla systemu iFIX®. Jest to wygodne w użyciu, obiektowo zorientowane narzędzie projektowe, które umożliwia wyjątkowo łatwy dostęp do danych zapisanych w bazie danych dowolnego typu. Jego prosty interfejs typu wskaż i kliknij dostarcza środków do konfigurowania sposobu dostępu do dowolnej bazy danych i następnie sformułowania zapytania SQL o dowolnej złożoności w celu uzyskania szukanej informacji. Użytkownik może również tworzyć proste instrukcje wstawiania i aktualizacji danych w bazie.

Technologia VisiconX składa się z zestawu kontrolek w standardzie GE Fanuc, które można wprowadzać do rysunku otwartego w programie Proficy iFIX WorkSpace™. Kontrolki te skojarzone są z obiektami firmy Microsoft o nazwie ActiveX™ Data Objects (ADO), dzięki czemu wyeliminowana jest potrzeba pisania skryptów w języku Microsoft® Visual Basic® lub tworzenia własnego oprogramowania do pobierania i obróbki danych. Zadanie, które wcześniej wymagało godzin pracy, obecnie może zostać wykonane w ciągu sekund.

Kreator SQL wbudowany w technologię VisiconX umożliwia łatwe pozyskiwanie niezbędnej informacji, bądź dodawanie lub zmianę danych przechowywanych w bazie danych. Kreator SQL pomaga wybrać opcje zapytań, a przez to zbudować instrukcję SQL Select, Insert lub Update. Jeśli zachodzi potrzeba, można również pominąć pomoc Kreatora i złożyć zapytanie korzystając z procedury przechowywanej lub samodzielnie wprowadzić instrukcję SQL Select.

Technologia VisiconX gwarantuje również dostęp do zabezpieczonych baz danych. Do przeprowadzenia

©2006 GE Fanuc Automation. http://www.gefanuc.com

weryfikacji praw dostępu technologia VisiconX może posługiwać się albo nazwą użytkownika i hasłem, albo wbudowanymi standardowo w system operacyjny Windows funkcjami ochrony zasobów. Potwierdzenie tożsamości musi zostać dokonane zanim udostępnione będą dane.

Instukcję SQL można skonfigurować, aby wymagany był podpis elektroniczny Wykonującego, bądź podpisy Wykonującego i Sprawdzającego, a także można określić, czy Kreator SQL ma być dostępny w trybie wykonywania.

System przykładowy oprogramowania iFIX dostarcza przykładów wykorzystania technologii VisiconX w programie WorkSpace na tle rzeczywistych aplikacji. Celem uzyskania więcej informacji na temat korzystania z Systemu przykładowego, należy odwołać się do rozdziału Korzystanie z Systemu przykładowego oprogramowania iFIX podręcznika Podstawy systemu iFIX .

Funkcjonowanie technologii VisiconX

Technologia VisiconX jest zestawem następujących czterech obiektów typu ActiveX, zwanych kontrolkami:

Kontrolka danych

Kontrolka siatki

Kontrolka listy

Kontrolka listy rozwijanej

Kontenerem tych kontrolek jest program Proficy iFIX WorkSpace. Kontrolkę danych łączy się z dowolną bazą danych, również bazą danych systemu iFIX. Kontrolki siatki, listy i listy rozwijanej służą do wyświetlania danych uzyskanych przez połączenie z kontrolką danych dzięki animacji typu obiekt-obiekt.

Poniższa ilustracja prezentuje sposób pracy kontrolek VisiconX w ramach programu Proficy iFIX WorkSpace. Na tym rysunku każda kontrolka danych jest skonfigurowana tak, aby mieć dostęp do dostawcy danych OLE DB.

Kontrolka danych nr 1 animuje kontrolkę siatki wyświetlającą dane w formacie arkusza kalkulacyjnego.

Kontrolka danych nr 2 animuje kontrolkę listy.

Kontrolka listy animuje zapytania zdefiniowane w instrukcji SQL Select kontrolki danych nr 1, które z kolei służą do filtracji danych prezentowanych w kontrolce siatki.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Korzystanie z kontrolek VisiconX w programie WorkSpace

Korzystanie z kontrolek VisiconX w programie WorkSpace

Wykorzystanie obiektów VisiconX w systemie iFIX

W podrozdziale tym przedstawiono konkretne przykłady wykorzystania obiektów VisiconX w programie Proficy iFIX WorkSpace. Przykłady te korzystają z bazy danych programu Microsoft Access:

Przykład 1: Wyświetlanie procesów wsadowych w oparciu o identyfikator wsadu

Przykład 2: Wyświetlanie procesów wsadowych w oparciu o daty wersji receptur

Jest to zaledwie próbka typów zapytań i prezentacji, jakie można utworzyć. W trakcie zgłębiania tajemnic obiektów VisiconX czytelnik dostrzeże ich szerokie zastosowanie do własnych aplikacji. Niemniej jednak już obecnie można otworzyć program demonstracyjny Przemysł chemiczny dostępny w Systemie przykładowym i kliknąć przycisk otwierający prezentację danych wsadowych.

Przykład 1: Wyświetlanie procesów wsadowych w oparciu o identyfikator wsadu

W przykładzie tym przedstawiono sposób prezentacji szczegółów procesu wsadowego z wykorzystaniem identyfikatora wsadu (ang. Batch ID). W tym celu wykorzystano:

Dwie kontrolki danych służące do złożenia dwóch różnych zapytań do bazy danych.

Kontrolkę siatki służącą wyświetleniu informacji na temat procesu wsadowego dla wybranego identyfikatora wsadu.

Kontrolkę listy służącą wybraniu identyfikatora wsadu.

Poniższy ekran pokazuje widok uzyskany w trakcie pracy programu Proficy iFIX WorkSpace w środowisku ruchowym.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Prezentacja szczegó ł ów procesów wsadowych w

Prezentacja szczegółów procesów wsadowych w oparciu o identyfikator wsadu

Na rysunku tym wskaźnik w kontrolce siatki wskazuje na drugi rekord zbioru rekordów ADO wyselekcjonowanych przez zadane zapytanie; rekord ten jest rekordem nr 1 kontrolki danych. Wraz ze zwiększaniem numeru w kontrolce danych wspomniany wskaźnik wędruje w dół listy.

Przykład 2: Wyświetlanie procesów wsadowych w oparciu o daty wersji receptur

W przykładzie tym przedstawiono sposób tworzenia zapytań SQL w celu prezentacji informacji procesu wsadowego dla sprecyzowanej daty, jak i innych dat wersji receptur. Poniższy rysunek zawiera: jedną kontrolkę danych, jedną kontrolkę siatki, jak również kontrolkę Kalendarz, jako obiekt typu OLE. Dane w kontrolce siatki zmieniają się zależnie od wybranej daty w Kalendarzu.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Prezentacja danych wsadowych w oparciu o daty

Prezentacja danych wsadowych w oparciu o daty wersji receptur

Rozpoczęcie pracy

W rozdziale tym przedstawiono metodę połączenia z dostawcą danych OLE DB, jak również metodę pobierania danych. Opisane zostały same kontrolki, sposób wprowadzenia ich do rysunku, konfiguracja kontrolki danych celem połączenia z wybranym dostawcą zarówno bez, jak i z ochroną danych oraz metodę testowania połączenia. Informacja przedstawiona jest w następujących podrozdziałach:

Dostawca danych OLE DB

Informacje wstępne na temat pracy z obiektami VisiconX

Idea obiektów VisiconX

Wprowadzanie kontrolek VisiconX

Połączenie z dostawcą danych OLE DB

Dostęp do chronionych dostawców danych OLE DB

Testowanie połączenia z dostawcą danych OLE DB

Podsumowanie

Dostawca danych OLE DB

Aby móc korzystać z technologii VisiconX należy zdobyć od administratora systemu informację o sposobie połączenia z dostawcą danych OLE DB. Na początku należy wybrać dostawcę danych. Obiekty VisiconX współpracują z wieloma takimi dostawcami, jak Serwer SQL, Oracle oraz drajwerami ODBC, które przypisują żnego rodzaju relacyjne bazy danych.

Sposób połączenia zależy więc od wybranego dostawcy. Należy w tej sprawie skontaktować się z

©2006 GE Fanuc Automation. http://www.gefanuc.com

administratorem systemu. Poniższa tabela podaje co należy wiedzieć o danym dostawcy danych OLE DB mogącym współpracować z obiektami VisiconX.

Informacja niezbędna do połączenia z dostawcą danych OLE DB

Dostawca danych OLE DB Niezbędna informacja Microsoft Jet 3.51 lub 4.0 Nazwa bazy danych i
Dostawca danych OLE DB
Niezbędna informacja
Microsoft Jet 3.51 lub 4.0
Nazwa bazy danych i jej ścieżka dostępu
Nazwa bazy danych systemu (ochrony) i jej ścieżka dostępu
Drajwery ODBC
Nazwa źródła danych ODBC lub
łańcuch połączeń ODBC
Serwer SQL
Nazwa serwera
Nazwa bazy danych
Oracle
Nazwa serwera
Simple
Łańcuch połączeń dla źródła danych (serwera) i katalog początkowy

UWAGA: Nazwy źródła danych ODBC są definiowane w Narzędziach administracyjnych. Aby je przeglądnąć, należy wybrać kolejno Start, Programy, Narzędzia administracyjne, a na końcu kliknąć Źródła danych (ODBC). Okno dialogowe Narzędzia administracyjne można także otworzyć bezpośrednio z Panelu sterowania.

Należy również określić, czy dostawca danych OLE DB ma chroniony dostęp. Wówczas niezbędna jest znajomość identyfikatora użytkownika (ang. User ID) oraz hasła celem uzyskania dostępu do tego interfejsu. Należy ponadto zdefiniować zakres uprawnień. Na przykład, czy użytkownik ma dostęp do wszystkich lub tylko niektórych baz danych? Czy użytkownik ma dostęp do wszystkich tabel danej bazy danych.

Informacje wstępne na temat pracy z obiektami VisiconX

Przed rozpoczęciem pracy z kontrolkami VisiconX, należy uruchomić system iFIX oraz program Proficy iFIX WorkSpace.

Od tego momentu można przystąpić do wprowadzania istniejących lub tworzenia własnych obiektów VisiconX. Należy w tym celu utworzyć nowy lub otworzyć istniejący rysunek, postępując według reguł przedstawionych w podręczniku Tworzenie rysunków .

Idea obiektów VisiconX

Dzięki technologii VisiconX dostępne są cztery kontrolki OLE ActiveX, które można wprowadzić do rysunków:

Kontrolka danych

Kontrolka siatki

Kontrolki listy i listy rozwijanej

Pozwalają one połączyć się z wybranym dostawcą danych OLE DB, określić zapytanie do bazy danych, a także wyświetlić otrzymane dane w postaci arkusza kalkulacyjnego, listy, bądź listy rozwijanej.

©2006 GE Fanuc Automation. http://www.gefanuc.com

Kontrolka danych

Kontrolka danych stanowi interfejs pomiędzy dostawcą danych OLE DB i obiektami w programie WorkSpace. Dzięki kontrolce danych można komunikować się z dowolnym dostawcą danych OLE DB zainstalowanym na lokalnym komputerze operatora, np. Serwerem SQL, MS Access, Oracle i innymi. Można ponadto uzyskać dostęp do relacyjnych baz danych wykorzystując sterowniki ODBC.

Jeśli wybrany drajwer udostępniający dane ma chroniony dostęp, kontrolka danych wymaga podania autoryzowanego identyfikatora ID użytkownika i hasła, zanim będzie mogła uzyskać połączenie oraz pobrać dane. Użytkownicy korzystający z chronionego serwera SQL mogą wykorzystać funkcje systemu ochrony obecne w systemie operacyjnym Windows.

UWAGA: Jeśli właściwość InvisibleInRunMode (Ukryta w trybie wykonywania) kontrolki danych jest ustawiona, jako True, komunikaty systemu ochrony o błędach nie będą wyświetlane.

Kontrolkę danych można w prosty sposób konfigurować dzięki interfejsowi użytkownika typu wskaż i kliknij. Dwukrotne jej kliknięcie powoduje pojawienie się okna dialogowego Właściwości kontrolki danych. Okno to zawiera karty, przy pomocy których można szybko wybrać żądany serwer i bazę danych.

Karta Dostawca zawiera listę dostępnych dostawców danych OLE DB, z której można dokonać wyboru. Dostawcy ci odwołują się do wielu różnych typów relacyjnych baz danych. Pola karty Baza danych różnią się w zależności od wybranego dostawcy danych. Każdy typ dostawcy danych wymaga innej informacji, niezbędnej do połączenia z bazą danych. Przejście do karty Źródło rekordów wymaga dokonania uprzedniego wyboru dostawcy danych i bazy danych.

Dzięki karcie Żródło rekordów można złożyć zapytanie SQL lub wykorzystać procedurę przechowywaną celem uzyskania odpowiednich danych z bazy. W przypadku składania zapytania SQL mozna również skonfigurować korzystanie z podpisów elektronicznych w trybie wykonywania.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Kontrolka danych i okno dialogowe W ł

Kontrolka danych i okno dialogowe Właściwości kontrolki danych

W trybie wykonywania kontrolka danych wyświetla liczbę naturalną określającą aktualny wiersz oraz strzałki nawigacyjne, dzięki którym można poruszać się po danych prezentowanych w kontrolce siatki.

ć si ę po danych prezentowanych w kontrolce siatki. Wygl ą d kontrolki danych w trybie

Wygląd kontrolki danych w trybie wykonywania

Karta Źródło rekordów

Dzięki karcie Źródło rekordów można złożyć zapytanie SQL lub wykorzystać procedurę przechowywaną celem pobrania, wstawienia lub aktualizacji odpowiednich danych z bazy.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Karta Ź ród ł o rekordów w

Karta Źródło rekordów w oknie dialogowym Właściwości kontrolki danych

Na karcie Źródło rekordów można też określić, czy dla instrukcji SQL uruchamianych w trybie wykonywania należy stosować podpisy elektroniczne. Ponadto, można określić, czy w trybie wykonywania można będzie uruchamiać Kreatora SQL.

WAŻNA INFORMACJA: Aby zapis do bazy danych był możliwy, dla danego użytkownika lub grupy użytkowników musi być dodana funkcja aplikacji VisiconX Writes. Jeśli kontrolki danych utworzone w poprzednich wersjach systemu iFIX realizowały wpisy do bazy danych, nie będą one działały; również w tym przypadku dla danego użytkownika lub grupy użytkowników musi być dodana funkcja aplikacji VisiconX Writes. Celem uzyskania więcej informacji, należy odwołać się do podrozdziału Funkcje aplikacji i aplikacje podręcznika System ochrony.

Karta Źródło rekordów jest miejscem, gdzie można uaktywnić Kreatora SQL, czyli narzędzie służące do budowania instrukcji SQL Select, Insert i Update. Kreator SQL pozwala budować instrukcje SQL od prostych do złożonych oraz proste instrukcje Insert i Update. Bardziej złożone instrukcje Insert i Update można budować bezpośrednio na karcie Źródło rekordów. Zapytania SQL mogą dotyczyć:

Do 64 właściwości kolumn, które mogą być animowane.

Do 32 właściwości zapytań, które są zmiennymi w samym zapytaniu. Właściwości te mogą przyjmować dowolne wartości lub być animowane poprzez wzajemny dialog obiektów systemu iFIX.

W przypadku korzystania z pliku .csv, jako tabeli na karcie Źródło rekordów, należy używać nazwy zastępczej tabeli zamiast nazwy pliku .csv, aby zmodyfikować kolumny tabeli w instrukcji SQL. Przykładowo, nie należy tworzyć zapytania o następującej postaci:

SELECT data.csv.col1, data.csv.col2 FROM data.csv

Zamiast takiego, zalecane jest następujące zapytanie:

SELECT t.col1, t.col2 FROM data.csv t

gdzie t jest nazwą zastępczą tabeli data.csv.

©2006 GE Fanuc Automation. http://www.gefanuc.com

Celem uzyskania więcej informacji na temat korzystania z Kreatora SQL, należy odwołać się do podrozdziałów Tworzenie zapytań z wykorzystaniem Kreatora SQL i Tworzenie instrukcji Insert lub Update.

Kontrolka siatki

Kontrolka siatki służy do prezentacji danych pobranych z bazy w formacie arkusza. W tym celu należy uprzednio animować kontrolkę siatki poprzez kontrolkę danych stanowiącą źródło danych. Za każdym razem, gdy kontrolka danych jest rekonfigurowana, dane wyświetlane w kontrolce siatki są uaktualniane. Kontrolka siatki umożliwia wybór sposobu wyświetlania danych poprzez ustawienie czcionki i jej rozmiaru.

Kontrolki listy i listy rozwijanej

Kontrolki listy i listy rozwijanej służą do prezentacji wybranej kolumny danych w formie odpowiednio listy i listy rozwijanej. Podobnie, jak w przypadku kontrolki siatki, animacji omawianych kontrolek dokonuje się poprzez kontrolkę danych stanowiącą źródło danych. Kontrolki listy i listy rozwijanej umożliwiają również wybór sposobu wyświetlania danych poprzez wybór czcionki i koloru tekstu.

Wprowadzanie kontrolek VisiconX

Po zainstalowaniu technologii VisiconX, program Proficy iFIX WorkSpace dołącza nowy pasek narzędzi o nazwie VisiconX, zawierający cztery przyciski:

ę dzi o nazwie VisiconX, zawieraj ą cy cztery przyciski: Pasek narz ę dzi VisiconX Z

Pasek narzędzi VisiconX

Z przycisków tych korzysta się w celu wprowadzenia obiektów VisiconX do rysunku.

Kontrolka pojawia się na rysunku wraz z uchwytami, przy pomocy których można ją przesunąć lub zmienić jej rozmiar, podobnie jak w przypadku dowolnego obiektu rysunku.

Celem uzyskania więcej informacji na temat przemieszczania i zmiany rozmiarów obiektów należy odwołać się do podręcznika systemu iFIX Tworzenie rysunków .

Jeśli pasek narzędzi VisiconX z jakichś przyczyn nie pojawia się w programie WorkSpace, można go importować lub wybrać z listy dostępnych pasków narzędzi.

Po wprowadzeniu kontrolek do rysunku, w drzewie systemu programu WorkSpace widziane są one, jako obiekty. Poniższa tabela prezentuje konwencje nazw stosowanych dla każdego obiektu. W konwencji tej n jest liczbą naturalną, począwszy od jeden, która jest automatycznie inkrementowana po każdym nowym pojawieniu się obiektu danego typu.

Konwencje nazw dla kontrolek VisiconX

inkrementowana po ka ż dym nowym pojawieniu si ę obiektu danego typu. Konwencje nazw dla kontrolek

©2006 GE Fanuc Automation. http://www.gefanuc.com

Kontrolka Konwencja nazw Kontrolka danych vxDatan Kontrolka siatki vxGridn Kontrolka listy vxListn Kontrolka listy
Kontrolka
Konwencja nazw
Kontrolka danych
vxDatan
Kontrolka siatki
vxGridn
Kontrolka listy
vxListn
Kontrolka listy rozwijanej
vxCombon

Połączenie z dostawcą danych OLE DB

Pierwszym krokiem parametryzacji obiektów VisiconX, niezbędnym do uzyskania dostępu do danych jest skonfigurowanie kontrolki danych celem połączenia z wybranym dostawcą danych OLE DB lub drajwerem ODBC.

Można wybrać opcję automatycznego połączenia z dostawcą danych OLE DB w trybie wykonywania. Opcja ta jest domyślnie wybrana. Mogą być jednak sytuacje, np. podczas testowania konfiguracji, kiedy przydatne jest posiadanie możliwości manualnego połączenia lub odłączenia od interfejsu udostępniającego dane. W celu zapewnienia możliwości manualnego połączenia należy dodać do rysunku przycisk polecenia oraz wprowadzić następujący kod wykonywany po zajściu zdarzenia Kliknięcie na obiekcie:

Private Sub CommandButton1_Click()

vxData1.DBConnect

End Sub

Celem uzyskania więcej informacji na temat własności, metod i zdarzeń w technologii VisiconX, należy odwołać się do rozdziału Korzystanie z właściwości i metod technologii VisiconX.

z w ł a ś ciwo ś ci i metod technologii VisiconX . Po łą czenie

Połączenie z wieloma bazami danych

Dane przechowywane w jednej bazie mogą oddziaływać na dane umieszczane w innej bazie. Na przykład, daty dostaw towaru w bazie zamówień pewnego przedsiębiorstwa, mają wpływ na daty produkcji w bazie produkcji.

Korzystając z technologii VisiconX można pobierać dane z wielu baz poprzez skonfigurowanie kontrolki danych dla każdej z nich. Dzięki metodzie animacji typu obiekt-obiekt można złożyć zapytanie do jednej bazy danych na podstawie wartości uzyskanych z innej bazy, jak przedstawiono na poniższym rysunku.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Po łą czenie z wieloma bazami danych

Połączenie z wieloma bazami danych

://www. g efanuc.com Po łą czenie z wieloma bazami danych Dost ę p do chronionych dostawców

Dostęp do chronionych dostawców danych OLE DB

Technologia VisiconX zapewnia prosty interfejs użytkownika do wprowadzania informacji niezbędnych dla uzyskania dostępu do chronionych dostawców danych OLE DB. W dodatku, można skonfigurować kontrolkę danych tak, aby przy każdym uruchamianiu trybu wykonywania, wyświetlane było okno logowania.

Niemniej jednak, użytkownicy korzystający z baz Microsoft OLE DB dla interfejsu dostarczającego dane, na przykład serwer SQL mogą raczej optować za korzystaniem z wbudowanego w system operacyjny Windows systemu ochrony zasobów, niż wprowadzania nazwy użytkownika i hasła.

ni ż wprowadzania nazwy u ż ytkownika i has ł a. Testowanie po łą czenia z

Testowanie połączenia z dostawcą danych OLE DB

Ostatnim krokiem połączenia do dostawcy danych OLE DB jest testowanie tego połączenia. Przedtem jednak należy naturalnie wybrać odpowiedniego dostawcę w oknie dialogowym Właściwości kontrolki danych oraz wybrać lub wpisać nazwę bazy danych, do której pragnie się uzyskać dostęp. Jeśli wybrany dostawca danych jest chroniony, należy ponadto podać odpowiednią informację potwierdzającą autoryzację dostępu.

Jeśli połączenie zostało prawidłowo przeprowadzone, pojawi się potwierdzające to okno dialogowe z tekstem Test połączenia zakończony sukcesem. W przeciwnym wypadku wyświetlone zostanie okno o

©2006 GE Fanuc Automation. http://www.gefanuc.com

treści Test połączenia nie zakończony sukcesem. Kliknij OK. Celem uzyskania więcej informacji na temat postępowania w przypadku nie uzyskania połączenia, należy odwołać się do podrozdziału Ocena niepowodzenia testu połączenia.

uzyskania po łą czenia, nale ż y odwo ł a ć si ę do podrozdzia ł

Podsumowanie

Aby pobrać dane od dostawcy OLE DB i wyświetlić je w programie Proficy iFIX WorkSpace, należy wykonać następujące czynności:

1. Wprowadź kontrolkę danych do rysunku.

2. W oknie dialogowym Właściwości kontrolki danych, skonfiguruj kontrolkę do połączenia do wybranego dostawcy danych OLE DB oraz wybranej bazy danych, a następnie przetestuj to połączenie.

3. W tym samym oknie dialogowym wybierz tabelę lub tabele z bazy danych, a następnie złóż do nich zapytanie korzystając z dowolnej metody dostarczonej przez technologię VisiconX.

4. Wprowadź kontrolki siatki, listy lub listy rozwijanej dla prezentacji pobranych danych.

5. Na karcie Zachowanie, okna dialogowega Animacje, dokonaj animacji kontrolki siatki, listy lub listy rozwijanej. Jako źródło danych do animacji wybierz kontrolkę danych, a z listy Konwersja danych wybierz typ konwersji Obiekt.

6. Kliknij przycisk Przełącz do trybu wykonywania na pasku narzędzi Standardowy, żeby wyświetlić rysunek w środowisku ruchowym.

Implementowanie technologii VisiconX

W rozdziale tym przedstawione są zagadnienia, z jakimi użytkownik spotyka się korzystając z obiektów VisiconX celem połączenia z bazą danych i złożenia zapytania. W ich skład wchodzą planowanie, jaką informację z bazy pragnie się uzyskać, wprowadzić lub zmienić, projektowanie sposobu prezentacji tej informacji w zależności od jej odbiorców, finalizacja projektowania oraz optymalizacja pracy systemu. Zwraca się również uwagę na pewne powszechnie napotykane pułapki oraz podaje sposoby zaradzenia im.

Celem uzyskania więcej informacji, należy odwołać się do następujących podrozdziałów:

Planowanie zapytania

Planowanie wpisów do bazy danych

Projektowanie widoku ekranu aplikacji

Zakończenie projektu

Optymalizowanie pracy systemu

Rozwiązywanie problemów

Planowanie zapytania

Pierwszym etapem pracy z technologią VisiconX jest dobre zaplanowanie, jaką informację pragnie się uzyskać. Na przykład, sprzedawcy mogą żądać spisu wszystkich konsumentów, których zamówienia zostały zrealizowane po upływie ustalonego terminu, aby zaoferować specjalne pakiety promocyjne do

©2006 GE Fanuc Automation. http://www.gefanuc.com

przyszłych ofert.

Oznacza to dowiedzenie się, do której bazy danych należy złożyć zapytanie oraz zdobycie praw potrzebnych do uzyskania dostępu do tej bazy. Kontynuując, oznacza to ponadto dowiedzenie się, jaka jest organizacja bazy danych, czyli jak rozłożona jest w niej informacja, aby móc poprawnie określić do jakich tabel wymagany jest dostęp.

Dopiero wówczas można przystąpić do tworzenia zapytania, w wyniku którego ma być zwrócona pożądana informacja. To z kolei wymaga dowiedzenia się:

Do której tabeli lub tabel należy złożyć zapytanie. Jeśli zapytanie dotyczy więcej, niż jednej tabeli, które kolumny powinny zostać połączone i w jaki sposób.

Jakie kolumny i w jakiej kolejności uwzględnić w zapytaniu. Czy chce się, aby zostały wyświetlone powielone wiersze, czy nie.

Jakie wyrażenia porównań użyć w filtrze wierszowym oraz za pomocą jakiego operatora - And, czy Or - połączyć te wyrażenia.

Jak posortować zwracaną informację.

Może zaistnieć potrzeba utworzenia zapytań wielokrotnych zwłaszcza wówczas, gdy dane rezydujące w jednej bazie determinują dane pozyskiwane z innej bazy danych. W każdym przypadku należy wykorzystać rozważania prezentowane w poprzednich podrozdziałach, opisujące sposób poszukiwania żądanej informacji.

Planowanie wpisów do bazy danych

Informacja zgromadzona w bazie danych może z czasem ulegać zmianie. Przykładowo, można pozyskać nowych odbiorców lub informacja na temat odbiorcy zapisanego w bazie (nazwisko osoby kontaktowej, numer telefonu) może wymagać weryfikacji. Technologia VisiconX umożliwia dokonanie wpisu nowej informacji do bazy danych dzięki intrukcji SQL Insert lub Update.

WAŻNA INFORMACJA: Aby zapis do bazy danych był możliwy, dla danego użytkownika lub grupy użytkowników musi być dodana funkcja aplikacji VisiconX Writes. Jeśli kontrolki danych utworzone w poprzednich wersjach systemu iFIX realizowały wpisy do bazy danych, nie będą one działały; również w tym przypadku dla danego użytkownika lub grupy użytkowników musi być dodana funkcja aplikacji VisiconX Writes. Celem uzyskania więcej informacji, należy odwołać się do podrozdzialu Funkcje aplikacji i aplikacje podręcznika System ochrony.

Dodawanie lub zmiana infomacji w bazie danych wymaga określenia, której bazy to dotyczy i jaka jest jej organizacja, czyli do któych tabel i kolumn wymagany jest dostęp.

Gdy znana jest organizacja bazy danych, należy określić:

Które tabele będą uzupełniane lub modyfikowane.

Które kolumny zawierają interesującą informację.

W przypadku korzystania z instrukcji Update, jakie wyrażenia porównania zastosować w filtrze wierszowym oraz, czy połączyć wyrażenia operatorami And lub Or.

Czasami zachodzi potrzeba dokonania wpisów do wielu baz danych, zwłaszcza gdy dane rezydujące w jednej bazie wpływają na dane w innej bazie.

WSKAZÓWKA: Instrukcje SQL należy formułować zgodnie z konwencjami standardu SQL-92. Według standardu SQL, w instrukcjach nie ma znaczenia wielkość liter.

©2006 GE Fanuc Automation. http://www.gefanuc.com

Projektowanie widoku ekranu aplikacji

Mając już dokładnie ustalone, jaką informację pragnie się uzyskać należy zaprojektować sposób jej prezentacji, czyli ustalić widok ekranu aplikacji. Należy wziąć pod uwagę:

Czy przedstawić uzyskaną informację w formie arkusza, czy też listy? Czy informacja ta ma służyć również do animowania innych obiektów, np. właściwości zapytań, Pola danych, albo właściwości wypełniania prostokąta?

Kto ma być odbiorcą tej prezentacji? Osoba monitorująca produkcję może być raczej zainteresowana kontrolką siatki prezentującą dane, a nie kontrolką danych zajmującą się składaniem zapytań do bazy danych. Inna osoba, potrzebująca dostępu do większej liczby baz danych, życzyłaby sobie mieć możliwość korzystania z przycisków w trybie wykonywania do nawiązywania połączenia z różnymi bazami i składania zapytań.

Jakich kolorów użyć do prezentacji?

Które obiekty powinny być widoczne, a które ukryte w trybie wykonywania?

Zakończenie projektu

Po zaplanowaniu zapytań i zaprojektowaniu widoku ekranu aplikacji, można:

Poprosić użytkowników o zalogowanie się w trybie wykonywania do dostawcy danych.

Animować obiekty takie, jak listy, właściwości zapytań etc.

Korzystając z właściwości i metod w skryptach języka Visual Basic, utworzyć bardziej dynamiczne środowisko pracy aplikacji. Przykładowo można dołączyć standardowe elementy Microsoft, jak przyciski poleceń lub opcji, celem złożenia szczególnych zapytań, albo uruchomienia Kreatora SQL.

Zmodyfikować projekt celem zoptymalizowania pracy systemu.

Optymalizowanie pracy systemu

Proces składania zapytań do relacyjnych baz danych i pobierania danych może wpływać na pracę systemu operacyjnego Windows. Podrozdział ten opisuje kilka czynności, jakie można wykonać w celu zoptymalizowania pracy systemu w trakcie składania zapytań do baz danych poprzez obiekty VisiconX typu kontrolki danych. Rozważane są następujące tematy:

Wybór dostawcy danych

Wykorzystanie filtrów wierszowych do zmniejszenia ilości pobieranych danych

Wybór dostawcy danych

Technologia VisiconX pracuje najlepiej, kiedy do pobierania danych korzysta z rodzimego dostawcy danych OLE DB, a nie z pośrednictwa drajwera bazy danych ODBC. Jeśli dostępne są zarówno jakiś rodzimy dostawca danych OLE DB, na przykład Serwer SQL, jak również drajwer baz danych ODBC do tego samego serwera, w oknie dialogowym Właściwości kontrolki danych, należy wybrać tego pierwszego.

©2006 GE Fanuc Automation. http://www.gefanuc.com

Wykorzystanie filtrów wierszowych do zmniejszenia ilości pobieranych danych

Pobieranie dużych zbiorów danych wpływa istotnie na czas wykonania tej operacji, chociaż nie zamraża systemu. Niemniej jednak, jeśli potrzebny jest wyłącznie ograniczony podzbiór danych, warto jest zastosować filtr wierszowy w zapytaniu SQL.

Rozwiązywanie problemów

Technologia VisiconX jest narzędziem prostym w implementacji i użyciu. Jednak pewne sytuacje, jak na przykład połączenie z dostawcą danych lub animacja obiektów mogą, na pierwszy rzut oka, być źródłem trudnych do zrozumienia problemów.

W podrozdziale tym opisane zostały typowe problemy, jakie można napotkać. Podane zostały również sposoby ich rozwiązywania. Rozważane są następujące tematy:

Unikanie problemów

Ocena niepowodzenia testu połączenia

Ocena niepowodzenia połączenia w trybie wykonywania

Filtry wierszowe korzystające z pól daty nie wyświetlają danych

Kontrolki animowane przez kontrolkę danych nie wyświetlają danych

Rozwiązywanie problemów spowodowanych przez procedury przechowywane

Unikanie problemów

Problemów można uniknąć dzięki właściwemu skonfigurowaniu systemu przed rozpoczęciem pracy. Kiedy problem jednak wystąpi należy zawsze spróbować uprościć animacje obiektów i zapytania.

Poniższa lista prezentuje minimalne wymagania pozwalające uniknąć problemów:

Używaj komputerów zalecanych przez firmę GE Fanuc.

Używaj sprzętu i oprogramowania sieciowego zalecanego przez firmę GE Fanuc.

Celem uzyskania więcej informacji na omawiany temat, należy odwołać się do podręcznika Rozpoczęcie pracy z systemem iFIX.

Ocena niepowodzenia testu połączenia

Jeśli po kliknięciu przycisku Test połączenia na karcie Baza danych okna dialogowego Właściwości kontrolki danych wyświetlona zostanie informacja stwierdzająca niepowodzenie testu, należy postępować w następujący sposób:

Spróbuj znaleźć przyczynę braku połączenia na podstawie informacji zawartych w oknie dialogowym stwierdzającym niepowodzenie połączenia.

©2006 GE Fanuc Automation. http://www.gefanuc.com

Jeśli baza danych jest chroniona, upewnij się, czy masz wystarczające uprawnienia niezbędne do uzyskania dostępu do bazy danych i tabel wybranych w zapytaniu.

Sprawdź, czy podany identyfikator użytkownika, User ID, oraz hasło dostępu do bazy są poprawne.

Sprawdź, czy serwer, na którym rezyduje baza danych pracuje i jest dostępny.

Jeśli połączenie w dalszym ciągu nie jest zrealizowane skontaktuj się z administratorem systemu w celu sprawdzenia, czy wprowadzone ustawienia są poprawne.

Ocena niepowodzenia połączenia w trybie wykonywania

Jeśli w trybie wykonywania kontrolka danych wyświetli komunikat informujący o błędzie połączenia, należy postępować w następujący sposób:

Upewnij się, czy tabela, której dotyczy zapytanie jest dostępna. Następnie utwórz zapytanie korzystając z polecenia Table i ponownie złóż zapytanie. Jeśli komunikat ten się powtarza, tabela wciąż nie jest dostępna.

Sprawdź, czy masz wystarczające uprawnienia. Może się okazać, że posiadane uprawnienia nie upoważniają do dostępu do wybranej tabeli.

Dokonaj przeglądu źródeł danych i sposobów konwersji zdefiniowanych dla wszystkich obiektów i animowanych właściwości zapytań.

Filtry wierszowe korzystające z pól daty nie wyświetlają danych

Filtr wierszowy zawiera wyrażenie porównania, które porównuje zawartość pola Data z wartością lub właściwością zapytania. Jeśli po złożeniu zapytania żadne dane nie są wyświetlane w obiektach animowanych przez kontrolkę danych, należy postępować w następujący sposób:

Sprawdź, czy istnieją jakiekolwiek dane odpowiadające specyfikacji w filtrze wierszowym.

Pole Data może w rzeczywistości być polem łańcuchowym sformatowanym tak, aby wyświetlać daty. W takiej sytuacji w filtrze wierszowym wprowadź łańcuch sformatowany, jak data i ponów zapytanie. Dodatkowo w systemie operacyjnym ustaw format daty odpowiadający formatowi daty w bazie danych. Aby ustawić format daty, skorzystaj z opcji Opcje regionalne i językowe, dostępnej w Panelu sterowania.

Kontrolki animowane przez kontrolkę danych nie wyświetlają danych

Sprawdź, czy istnieją jakiekolwiek dane odpowiadające specyfikacji w zapytaniu.

Sprawdź, czy obiekt jest animowany przez kontrolkę danych.

Jeśli w zapytaniu zawarta jest właściwość zapytania, sprawdź, czy właściwość zapytania kontrolki danych jest animowana.

Jeśli w zapytaniu zawarta jest właściwość zapytania, przejdź do trybu wykonywania. Wpisz lub zaznacz wartość w obiekcie, która animuje właściwość zapytania. Nowa wartość powinna zmienić dane w obiekcie animowanym przez kontrolkę danych. Na przykład, jeśli kontrolka listy animuje właściwość zapytania, wybierz inny element listy, aby zmienić wyświetlaną zawartość w obiekcie animowanym kontrolką danych.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com

Rozwiązywanie problemów spowodowanych przez procedury przechowywane

Wykorzystanie procedury przechowywanej do składania zapytań do bazy danych Microsoft Access lub serwera Oracle wymaga przeprowadzenia specjalnych rozważań z powodu specyficznych elementów wprowadzanych w trakcie projektowania tych baz.

Bazy danych Microsoft Access

Bazy danych Microsoft Access w rzeczywistości nie pracują z procedurami przechowywanymi. Jednak, pracują z zapytaniami, które technologia ADO traktuje w ten sam sposób, jak wspomniane procedury. Obecnie dostawcy danych OLE DB tacy, jak MS Jet 3.51 i 4.0 nie mogą odczytać informacji o parametrach z zapytań programu Access. Dlatego, kiedy wybrana jest Procedura przechowywana, jako typ polecenia na karcie Źródło rekordów okna dialogowego Właściwości kontrolki danych, żadne parametry ani przyporządkowane właściwości zapytań nie pojawiają się dla wybranego zapytania programu Access.

Aby obejść ten problem można spróbować jednego z dwóch następujących sposobów:

Połącz się z bazą danych Microsoft Access poprzez jakiś drajwer ODBC, a nie rodzimego dostawcę danych OLE DB, na przykład MS Jet.

Jeśli znasz parametry zdefiniowane w zapytaniu programu Access, złóż zapytanie, jako instrukcję SQL Select. W poniższym przykładzie ScrBatchSummary jest nazwą zapytania programu Access, a Batch_Serial_No jest parametrem wejściowym tego zapytania.

Select * From ScrBatchSummary where ScrBatchSummary.batch_serial_no = QP1

Serwery Oracle

Procedury przechowywane serwera Oracle służące do uaktualniania, wprowadzania lub usuwania informacji z bazy danych pracują zgodnie z wymogami technologii VisiconX. Jednak procedury przechowywane, które pobierają lub wybierają dane w serwerze Oracle wymagają specjalnych rozważań. Aby procedura przechowywana serwera Oracle mogła zwrócić zestaw rekordów, należy utworzyć pewien pakiet.

Pakiet serwera Oracle definiuje tabelę, która jest zapełniana zestawami rekordów danych zwracanych do technologii ADO i technologii VisiconX. Nie można wywołać pakietu używając polecenia typu "Stored Procedure" (Procedura przechowywana). W tym przypadku niezbędne jest polecenie SQL. W poniższym przykładzie packperson jest nazwą pakietu, oneperson jest nazwą procedury przechowywanej, resultset 2 definiuje maksymalną liczbę wierszy, zaś ssn, fname i lname określają kolumny, jakie należy zwrócić, a QP1 jest zmienną technologii VisiconX, która steruje wyborem.

{call packperson.oneperson(QP1,{resultset 2, ssn, fname, lname})}

Aby uzyskać więcej informacji na temat tworzenia pakietów na serwerze Oracle mogących zwrócić zestaw rekordów do technologii ADO i VisiconX, należy odwołać się do Artykułu Q176086 w bazie wiedzy Microsoft Support KnowledgeBase.

Korzystanie z podpisów elektronicznych dla instrukcji SQL

Podczas tworzenia instrukcji SQL Select, Insert lub Update dla kontrolki danych VisiconX, istnieje możliwość zarządania podpisów elektronicznych, w przypadku stosowania tych instrukcji, gdy program WorkSpace będzie w trybie wykonywania. Dotyczy to zarówno podpisu Wykonującego, jak i

©2006 GE Fanuc Automation. http://www.gefanuc.com

Sprawdzającego.

Gdy kontrolka danych zostanie otwarta w trybie wykonywania, wyświetlone zostanie okno dialogowe żądające podpisu elektronicznego. Po złożeniu podpisu, do systemu obsługi alarmów wysłany zostanie odpowiedni komunikat. Gdy podpis jest poprawny, wyświetlony zostanie potwierdzający to komunikat. Podobnie, odpowiedni komunikat zostanie wyświetlony, gdy podpis jest błędny.

Celem uzyskania dodatkowych informacji na temat korzystania z podpisów elektronicznych, należy odwołać się do podręcznika Podpisy elektroniczne.

Funkcja podpisów elektronicznych została wprowadzona w celu uzupełnienia systemu ochrony. Przykładowo, wykorzystywana jest ona w przypadku zmiany danych zapisanych w bazie danych i śledzenia przebiegu tych operacji w dzienniku podpisów. W dzienniku podpisów w systemie iFIX rejestrowane są odpowiednie dane dotyczące złożonych podpisów elektronicznych. Celem uzyskania więcej informacji na ten temat, należy odwołać się do rozdziału Tworzenie dziennika podpisów elektronicznych.

Tworzenie i animowanie instrukcji SQL

W rozdziale tym przedstawiono sposoby tworzenia instrukcji SQL w celu wyszukania danych u wybranego dostawcy danych OLE DB. Poza samymi podstawami zaprezentowano metody ich udoskonalania w celu wyszukania specyficznej informacji, dodania danych do bazy lub aktualizacji istniejących danych, jak również metody wykorzystania animowanych właściwości zapytań. Po otrzymaniu danych, można je wyświetlić w animowanych kontrolkach siatki, listy lub listy rozwijanej.

Niniejszy rozdział zawiera następujące podrozdziały:

Korzystanie z Kreatora SQL

Tworzenie zapytań

Wpisywanie do bazy danych

Korzystanie z Kreatora SQL

Tworzenie filtru wierszowego

Animowanie kontrolek siatki, listy i listy rozwijanej

Wyświetlanie danych

Animowanie właściwości zapytań

Przykłady animowania właściwości zapytań

Tworzenie zapytań

Zadaniem zapytania jest uzyskanie dostępu do tabel w bazie danych i zwrócenie żądanych danych. Proste zapytanie zwraca całą zawartość tabeli. Z kolei bardziej złożone zapytanie filtruje najpierw wiersze korzystając z pewnych kryteriów wyboru, sortuje dane lub też łączy dane pochodzące z więcej niż jednej tabeli. Dzięki technologii VisiconX łatwo jest tworzyć zapytania o dowolnej złożoności.

Tworzenie zapytania rozpoczyna się na karcie Źródło rekordów okna dialogowego Właściwości kontrolki danych. Poprzez wybór z listy Typ polecenia wybiera się typ tworzonego zapytania, co przedstawia poniższa tabela.

Typy poleceń zapytania

listy Typ polecenia wybiera si ę typ tworzonego zapytania, co przedstawia poni ż sza tabela. Typy

©2006 GE Fanuc Automation. http://www.gefanuc.com

Typ polecenia Opis Instrukcja SQL Wykorzystuje Kreatora SQL do tworzenia instrukcji SQL lub umożliwia ręczne
Typ polecenia
Opis
Instrukcja SQL
Wykorzystuje Kreatora SQL do tworzenia instrukcji SQL lub umożliwia
ręczne wprowadzenie instrukcji SQL.
Tabela
Zwraca dane dla całej tabeli.
Procedura
Przypisuje właściwości zapytań parametrom procedury przechowywanej
przechowywana

Karta Źródło rekordów zawiera również opcje do ustawiania typu blokowania bazy danych wykorzystywane podczas odczytu i aktualizowania danych. Celem uzyskania więcej informacji, należy odwołać się do rozdziału Zagadnienia zaawansowane podręcznika Konfigurowanie środowiska pracy.

podr ę cznika Konfigurowanie ś rodowiska pracy. Tworzenie zapyta ń z wykorzystaniem Kreatora SQL Kreator

Tworzenie zapytań z wykorzystaniem Kreatora SQL

Kreator SQL w technologii VisiconX pomaga szybko tworzyć instrukcję SQL Select o dowolnej złożoności. Korzystając z tego Kreatora, nie potrzeba znać składni instrukcji SQL Select; wiedza ta zapisana jest w Kreatorze.

Oprócz przyśpieszenia i ułatwienia pracy, Kreator SQL umożliwia wykorzystanie właściwości zapytań. Poprzez ich animację, użytkownik może modyfikować wyświetlane dane bazując na wartości obecnie przyporządkowanej właściwości zapytania. Aby uzyskać więcej informacji na temat animacji zapytań, należy odwołać się do podrozdziału Animowanie właściwości zapytań niniejszego niniejszego rozdziału.

Za pomocą Kreatora SQL można:

Wybrać jedną lub więcej tabel, do których składane będą zapytania.

Wybrać kolumny tabel, które mają być wyświetlone.

Zwrócić wiersz tabeli zawierający unikalne (niepowtarzające się) wartości zamiast wierszy z powtarzającymi się elementami.

Przefiltrować zwrócone wiersze na podstawie przypisanych kryteriów wyboru.

Posortować dane w rosnącym lub malejącym porządku według wartości z wybranych kolumn.

Celem uzyskania więcej informacji na temat konfigurowania zapytań z wykorzystaniem Kreatora SQL, należy odwołać się do podrozdziału Udoskonalanie zapytań z wykorzystaniem Kreatora SQL.

ł u Udoskonalanie zapyta ń z wykorzystaniem Kreatora SQL. Wprowadzanie lub wklejanie instrukcji SQL Karta Ź

Wprowadzanie lub wklejanie instrukcji SQL

Karta Źródło rekordów okna dialogowego Właściwości kontrolki danych zawiera okienko Tekst polecenia SQL. Użytkownik może wprowadzić instrukcję SQL bezpośrednio do tego okienka lub wkleić ją z innej aplikacji. Zapytania zbudowane przez Kreatora SQL również pojawiają się w tym okienku, a użytkownik może je dalej udoskonalać.

Użytkownicy swobodnie posługujący się instrukcjami SQL Select oraz znający nazwy tabel i kolumn ich baz danych mogą jednak preferować ręczne wprowadzanie instrukcji. Można ponadto tworzyć zapytania SQL w innej aplikacji, jak np. MS Query, a następnie wprost je wklejać.

Łączenie tabel

©2006 GE Fanuc Automation. http://www.gefanuc.com

W przypadku, gdy chce się utworzyć zapytanie łączące dane z dwóch lub więcej tabel, należy połączyć te tabele. Jednak wówczas, łączone tabele muszą mieć identyczną kolumnę. Na przykład, zarówno tabela klientów, jak i tabela zamówień mają kolumnę identyfikatora klienta.

Przy pomocy Kreatora SQL można łatwo łączyć tabele wykorzystując najpopularniejszy typ operacji połączenia, czyli typ wewnętrzny - inner join. Do takiego połączenia wybierane są wyłącznie te rekordy z każdej tabeli, dla których wartości odpowiadających sobie kolumn pasują do siebie. Na przykład, opisywana już instrukcja Select łączy tabele o nazwie Customer i Orders poprzez przyrównanie kolumn CustomerID w obydwu tabelach. Zatem zwracana jest informacja o klientach i zamówieniach charakteryzujących się tym samym identyfikatorem klienta. Nie jest za to zwracana żadna informacja o klientach, do których nie jest przypisane żadne zamówienie i odwrotnie.

SELECT Customers.CustomerID, Customers.ContactName, Orders.OrderID, Orders.ShipName FROM Customers, Orders WHERE (Customers.CustomerID = Orders.CustomerID) ORDER BY Customers.CustomerID

Poniższy rysunek przedstawia próbkę danych wydobytych dzięki łączeniu tabel Klient (Customer) i Zamówienie (Order), bazującym na przedstawionej wyżej instrukcji Select.

bazuj ą cym na przedstawionej wy ż ej instrukcji Select. Rezultaty po łą czenia wewn ę

Rezultaty połączenia wewnętrznego

Innym rodzajem łączenia jest łączenie zewnętrzne - outer join, które tworzy się jedynie poprzez wprowadzenie lub wklejenie instrukcji Select. Łączenie zewnętrzne zwraca wszystkie rekordy z jednej tabeli, ale z drugiej wyłącznie te rekordy, dla których występują wartości odpowiadające wspólnej kolumnie. Na przykład, opisywana instrukcja Select korzysta z zewnętrznego łączenia do zwracania wszystkich rekordów z tabeli Orders, ale tylko tych rekordów z tabeli Customer, dla których wartość identyfikatora CustormerID w obydwu tabelach jest ta sama. Znaczy to, że wyświetlany jest każdy rekord z tabeli zamówień posiadający lub nie posiadający przypisaną informację o kliencie.

SELECT Customers.CustomerID, Customers.ContactName, Orders.ShippedDate, Orders.ShipName FROM (Orders LEFT OUTER JOIN Customers ON Orders.CustomerID = Customers.CustomerID) ORDER BY Customers.CustomerID

Poniższa instrukcja Select działa w drugą stronę; jedyną żnicą jest kolejność tabel w klauzuli From. Instrukcja ta zwraca wszystkie rekordy z tabeli Customers, ale tylko te rekordy z tabeli Orders, dla których wartość identyfikatora CustomerID w obydwu tabelach jest ta sama. Znaczy to, że wyświetlany jest każdy rekord z tabeli klientów posiadający lub nie posiadający przypisanej informacji o zamówieniu.

SELECT

Customers.CustomerID,

Customers.ContactName,

Orders.OrderID,

Orders.ShipName

©2006 GE Fanuc Automation. http://www.gefanuc.com

FROM (Customers LEFT OUTER JOIN Orders ON Customers.CustomerID = Orders.CustomerID) ORDER BY Customers.CustomerID

Poniższy rysunek przedstawia próbkę danych wydobytych dzięki uruchomieniu powyższej instrukcji Select. Należy zwrócić uwagę, że klient o identyfikatorze PARIS nie ma przypisanej informacji o zamówieniu.

PARIS nie ma przypisanej informacji o zamówieniu. Rezultaty po łą czenia zewn ę trznego Korzystanie z

Rezultaty połączenia zewnętrznego

o zamówieniu. Rezultaty po łą czenia zewn ę trznego Korzystanie z tabeli Najprostszym zapytaniem, jakie mo

Korzystanie z tabeli

Najprostszym zapytaniem, jakie można złożyć jest to, które zwraca wszystkie dane z tabeli, czyli wszystkie wiersze i kolumny. W przypadku małych tabel, dla których dane można łatwo przejrzeć, może to być wystarczające rozwiązanie.

ć , mo ż e to by ć wystarczaj ą ce rozwi ą zanie. Korzystanie z

Korzystanie z procedury przechowywanej

Procedury przechowywane są skompilowanymi blokami kodu w relacyjnych bazach danych. Są często przydatne, gdyż mogą zawierać instrukcje warunkowe i instrukcje przepływu danych. Mogą one realizować INSERT, UPDATE, DELETE i SELECT. Mogą również pobierać argumenty i zwracać wyniki. Argumentami mogą być wartości wprowadzane lub wykorzystywane w klauzulach Where.

Procedury mogą być znacznie szybsze, niż instrukcje SQL z następujących powodów:

Wykonanie procedury przechowywanej wymaga wyłącznie jednego wywołania.

Procedura przechowywana jest już skompilowana w bazie danych.

Procedura przechowywana jest wykonywana na serwerze, a nie kliencie.

Celem uzyskania więcej informacji na temat tworzenia kodu i kompilowania procedur przechowywanych, należy odwołać się do podręcznika Korzystanie z SQL.

Kiedy technologia VisiconX wykorzystuje procedurę przechowywaną do uzyskania dostępu do danych i ich pobrania, tworzy ona listę właściwości zapytań, którym zostają przypisane parametry takiej procedury. Wyświetlona lista zawiera zatem przyporządkowanie właściwość zapytania - parametr, typ danych parametru i kierunek, w którym przez parametr przekazywana jest informacja, jak to przedstawia poniższa ilustracja.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Przyporz ą dkowanie parametrów w procedurze przechowywanej

Przyporządkowanie parametrów w procedurze przechowywanej

W technologii VisiconX właściwości zapytań przypisywane są zwracanym wartościom, parametrom wejściowym, parametrom wyjściowym i parametrom wejściowo-wyjściowym zdefiniowanym dla procedury przechowywanej. W przypadkach, w których technologia VisiconX nie jest w stanie określić celu parametru, kierunek w polu Lista parametrów występuje, jako Nieznany.

UWAGA: W przypadku, gdy stosuje się procedurę przechowywaną do złożenia zapytania do bazy danych programu Microsoft Access lub bazy danych Oracle, należy odwołać się do podrozdziału Rozwiązywanie problemów spowodowanych przez procedury przechowywane, w której przedstawione są szczegółowe rozważania dotyczące tych baz danych.

Przeglądając pole Lista parametrów (Parameter List), warto jest zanotować właściwości zapytań, które przypisane są parametrom wejściowym procedury przechowywanej. Są to właściwości zapytań, które muszą zostać animowane w celu wyszukania danych przez tę procedurę.

animowane w celu wyszukania danych przez t ę procedur ę . Wpisywanie do bazy danych Przez

Wpisywanie do bazy danych

Przez wpisywanie do bazy danych rozumie się wprowadzanie lub aktualizowanie wartości kolumn wybranej tabeli bazy danych. Do tworzenia prostych instrukcji wprowadzania lub aktualizowania danych można wykorzystać Kreatora SQL, a bardziej złożone instrukcje można manualnie wprowadzać na karcie Źródło rekordów okna dialogowego Właściwości kontrolki danych.

Korzystając z tego Kreatora, nie musi się znać składni instrukcji SQL Insert lub Update; wiedza ta zapisana jest w Kreatorze.

WSKAZÓWKA: Instrukcje SQL należy formułować zgodnie z konwencjami standardu SQL. Według standardu SQL, w instrukcjach nie mają znaczenia wielkości liter.

©2006 GE Fanuc Automation. http://www.gefanuc.com

Tworzenie instrukcji Insert lub Update

Kontrolki danych VisiconX mogą korzystać z instrukcji SQL w celu dodania lub aktualizowania wartości kolumn w wybranych tabelach bazy danych. Do tworzenia prostych instrukcji Insert lub Update można wykorzystać Kreatora SQL, a bardziej złożone instrukcje można manualnie wprowadzać na karcie Źródło rekordów okna dialogowego Właściwości kontrolki danych. Celem uzyskania więcej informacji na temat ręcznego tworzenia instrukcji SQL, należy odwołać się do podrozdziału Wprowadzanie lub wklejanie instrukcji SQL.

Kreator SQL dostępny w technologii VisiconX pomaga w szybkim tworzeniu prostych instrukcji SQL Insert lub Update. Korzystając z tego Kreatora, nie potrzeba znać składni instrukcji SQL Insert lub Update; wiedza ta zapisana jest w Kreatorze.

Za pomocą Kreatora SQL można:

Wybrać jedną lub więcej tabel, do których planowany jest wpis.

Wybrać kolumny tabel, do których planowany jest wpis .

Przefiltrować aktualizowane wiersze, na podstawie zdefiniowanych kryteriów.

Korzystanie z Kreatora SQL

Kreator SQL jest narzędziem o dużych możliwościach, ułatwiającym tworzenie wyrafinowanych instrukcji SQL, celem pobrania danych z przeznaczeniem do ich wyświetlenia lub dodania i uaktualnienia bazy danych. Korzystając z tego Kreatora, nie musi się znać składni instrukcji SQL; wiedza ta zapisana jest w Kreatorze. Przy pomocy Kreatora SQL można szybko:

Wybrać tabele

Wybrać kolumny

Przefiltrować wiersze dzięki interfejsowi użytkownika typu wskaż i kliknij.

Posortować dane względem wartości kolumny.

Zwrócić wyłącznie unikalne wiersze.

Tworzenie instrukcji przy pomocy Kreatora SQL rozpoczyna się na karcie Źródło rekordów okna dialogowego Właściwości kontrolki danych. Przycisk Uruchom Kreatora SQL dostępny jest, gdy wcześniej wybrano Typ polecenia, jako Instrukcja SQL. Kreator SQL pozwala najpierw zdecydować, czy tworzona będzie instrukcja (polecenie) Select, Insert lub Update.

©2006 GE Fanuc Automation. http://www.gefanuc.com

©2006 GE Fanuc Automation. htt p ://www. g efanuc.com Okno dialogowe wyboru instrukcji w Kreatorze SQL

Okno dialogowe wyboru instrukcji w Kreatorze SQL

Kreator SQL prowadzi użytkownika poprzez proces tworzenia instrukcji SQL. Kliknięcie w Kreatorze przycisku Dalej spowoduje, że Kreator wykorzysta opcję wybraną w tym oknie dialogowym do sporządzenia informacji wyświetlanej w następnym oknie dialogowym. Jeśli użytkownik pragnie zmienić dokonany wcześniej wybór, wystarczy kliknąć przycisk Wstecz. W dowolnym momencie można kliknąć przycisk Zakończ, aby zakończyć proces tworzenia zapytania.

Kreator SQL prosi o wybanie:

1. Tabel, do których planowane są zapytania, dodawanie lub aktualizowanie danych.

2. Kolumn w wybranych tabelach, do których planowane są zapytania, dodawanie lub aktualizowanie danych, a także, czy w kolumnach tych mają być unikalne (niepowtarzalne) wartości.