Ten poradnik jest częścią ścieżki nauki WinCC V7/V8.
Jeśli chcesz najpierw zobaczyć pełny obraz systemu SIMATIC WinCC, zacznij od przewodnika: SIMATIC WinCC V7/V8 - zaawansowany system SCADA od Siemensa.
Krótka odpowiedź: do czego służy SQL Grid w WinCC?
Co to jest SQL Grid w WinCC? To kontrolka pozwalająca wyświetlać dane z bazy SQL bezpośrednio na ekranie SCADA, z możliwością dynamicznej zmiany zapytań i odczytu wybranych wierszy.
Łukasz Krzesiński, założyciel RysujeSCADA.pl, pokazuje jak zastąpić 15 statycznych gridów jednym dynamicznym widokiem.
Dynamiczna podmiana zapytań SQL
1. Konfiguracja podstawowa
- Kontrolka SQL Grid ma właściwość `SQL Query`
- Podstawowe zapytanie: `SELECT * FROM Table1`
- Właściwość `Object name` identyfikuje kontrolkę (np. "netGrid")
2. Zmiana zapytania przez VBS Action
- W zdarzeniu `Press Left` dodajemy VBS Action
- Łączymy się z obiektem: `Object = ScreenItems("netGrid")`
- Zmieniamy zapytanie: `Object.SQLQuery = "SELECT * FROM Table1 WHERE ID < 10"`
- Ważne: Wywołujemy `Object.Refresh` aby odświeżyć widok
3. Praktyczny przykład filtrowania
- Przed kliknięciem: 18 rekordów (ID od 1 do 18)
- Po `WHERE ID < 10`: tylko 9 rekordów (ID 1-9)
- Po `WHERE ID > 10`: tylko 8 rekordów (ID 11-18)
Co dalej w nauce WinCC V7/V8?
Ten artykuł rozwija jeden konkretny fragment pracy z WinCC. Jeśli układasz sobie całą ścieżkę nauki, wróć do głównego hubu WinCC V7/V8, a potem przejdź do praktycznych modułów:
- WinCC V7/V8 Explorer - przegląd wszystkich modułów
- Graphics Designer w WinCC V7.5 - tworzenie pierwszych ekranów
- Tag Management w WinCC V7/V8 - zmienne i połączenia
Jeśli interesuje Cię sam fundament WinCC, zacznij od kursu WinCC V7/V8 od podstaw. SQL Grid, raporty, integracje z bazami i praca z danymi to już temat kursu zaawansowanego WinCC V7/V8.
Obejrzyj cały odcinek na YouTube: Programowanie SCADA: Prosty i skuteczny sposób pra →
Odczyt wybranych danych z SQL Grid
1. Pobieranie całego wiersza
- Właściwość: `GetSelectedRow`
- Zwraca wszystkie kolumny zaznaczonego wiersza
- Można wyświetlić w MessageBox lub wysłać do sterownika
2. Pobieranie pojedynczej komórki
- Właściwość: `GetSelectedCell`
- Parametr: `GetSelectedCellByIndex(0)` - pobiera tylko pierwszą kolumnę (np. ID)
- Przydatne przy systemach FIFO (First In First Out)
3. Zastosowania praktyczne
- Lista produkcyjna dla operatora
- Zestawy parametrów dla maszyn/silników
- Automatyczne wysyłanie danych do sterownika
- Zarządzanie kolejnością produkcji według ID
Dlaczego dynamiczny SQL Grid?
- Jeden widok zamiast wielu: Zamiast 15 osobnych gridów - jeden z podmienianym zapytaniem
- Interaktywność: Operator klika wiersz → dane trafiają do sterownika
- Optymalizacja: Pobieranie tylko potrzebnych kolumn (np. sam ID produkcyjny)
- Elastyczność: Filtrowanie według różnych kryteriów bez zmiany ekranu
FAQ
Co to jest SQL Grid w WinCC?
Kontrolka graficzna pozwalająca wyświetlać dane z bazy SQL bezpośrednio na ekranie SCADA, z możliwością dynamicznej zmiany zapytań SQL i odczytu wybranych wierszy przez operatora.
Jak odświeżyć SQL Grid po zmianie zapytania?
Po zmianie właściwości `SQLQuery` należy wywołać metodę `Refresh` na obiekcie SQL Grid. Bez tego widok nie zostanie zaktualizowany.
Do czego można użyć GetSelectedCellByIndex?
Do pobierania tylko jednej kolumny (np. ID produkcyjnego) zamiast całego wiersza. Przydatne w systemach FIFO, gdzie potrzebujemy tylko unikalnego numeru produkcji, a nie wszystkich 50 parametrów. ```