Promotic

DtiOper - Opis interfejsu

DtiOper to interfejs służący do przeglądania i edycji różnych źródeł danych w formie tabelkowej.

Opis podstawowy

Koncept DtiOper składa się z przeglądarki tabeli (PmaPanel z PmgWTable) i źródła danych (obiekty PmaAdo, PmaDataTable, itd.). Przeglądarka komunikuje się ze źródłem danych za pomocą metody projektanta "DtiOper", przedstawiającej źródło danych. Metoda zapewnia wykonanie poszczególnych "uzgodnionych" operacji, które źródło danych oferuje do przeglądarki. W parametrze sDtiPars metody "DtiOper" znajdują się wszystkie informacje wymagane przez właściwe źródło danych w formacie KeyVal, dla dogodniejszego opracowania konwertowane na początku każdej operacji na mapę mDtiPars. Pozostałe parametry metody precyzują wymaganą operację. Ten koncept jest ogólny i umożliwia równocześnie przeglądanie jednego źródła danych za pomocą kilku przeglądarek nawet poprzez Web. Źródło danych obiektu PmaAdo przedstawia źródło danych dla wszystkich tabel bazy danych, dlatego możliwość przeglądania jednego źródła danych w kilku przeglądarkach równocześnie jest konieczna. Tak samo przyszłe rozszerzenie o nowe "operacje" (podstawowe i projektanckie) jest proste, wystarczy w przeglądarce wywołać metodę "DtiOper" z nową operacją, która zostanie zaimplementowana w odpowiednim źródle danych.

Przeglądarka tabeli

Przeglądarka jest ogólna, parametryzowana za pomocą jedynego strukturowanego parametru DtiPars. Parametr przedstawia konkretne źródło danych oraz parametry właściwej przeglądarki. Można zastosować jedyną przeglądarkę do kolejnego przeglądania różnych źródeł danych, z odpowiednimi innymi wartościami parametru DtiPars. Jednakże praktyczniejszym i bardziej przejrzystym jest zastosowanie oddzielnej przeglądarki do każdego źródła danych, co umożliwia konfiguracyjne określenie parametrów konkretnego źródła danych bezpośrednio w przeglądarce. Ponadto jest prostsze dostosowanie przeglądarki według potrzeb do jednego konkretnego celu.

DtiPars w formacie KeyVal to kluczowy element konceptu DtiOper. Musi zostać zapewnione, żeby były w nim wszystkie wymagane informacje podczas pierwszego wyświetlenia przeglądarki. DtiPars można dostarczyć zupełny zaraz od początku lub częściowo wypełniony lub również dostosować kolejno w następujących krokach:
 
Przekazanie łańcucha DtiPars do przeglądarki. Parametr będzie zawierać: ścieżkę do źródła danych, nazwę tabeli i nagłówek tabeli.
 
1) Parametr DtiPars panela przeglądarki dostarczony w sParams w metodzie Pm.CreateView lub w konfiguratorze obiektu PmaWorkspace ramki Wartość domyślna Params.
Przykład: pars:{DtiPars:{DtiPath:../PmaAdo;Table:MyTable;Title:Tabelkowy przegląd wartości}}
Przykład: Przekazanie łańcucha DtiPars do przeglądarki.
2) Parametr DtiPars panela przeglądarki dostarczony w konfiguratorze "Wartość domyślna sViewPars".
Przykład: pars:{DtiPars:{DtiPath:../PmaAdo;Table:MyTable;Title:Tabelkowy przegląd wartości}}
3) W początkowej wartości parametru DtiPars tak, jak jest zdefiniowany w parametrach Parametry Pmg obiektu PmgRoot przeglądarki.
Przykład: DtiPars:DtiPath:../PmaAdo;Table:MyTable;Title:Tabelkowy przegląd wartości
4) W metodzie "Open" przeglądarki, która przejmie wartość parametru DtiPars i wywoła operację "Open". Aż dotąd chodziło o proste przekazanie parametru panela DtiPars.
Przykład: Modyfikacja 1. oraz 2. wiersza metody "Open" obiektu PmgWTable
Przykład: Włożenie 3. - 5. wiersza do metody Open obiektu PmgWTable
5) W operacji "Open" źródła danych są standardowo opracowane przekazane informacje o źródle danych w sDtiPars. Zostanie sprawdzona ważność oraz zostaną uzupełnione wymagane informacje operacji i zostanie zwrócona nowa, uzupełniona forma sDtiPars.
6) W metodzie "Open" przeglądarki, która przejmie rezultat operacji "Open" w formie DtiPars. Przejmie z niej wartości wyłącznie dla przeglądarki, które następnie usunie z DtiPars i pozostawi tam tylko wartości konieczne dla źródła danych. Nowy opracowany DtiPars z informacjami dla źródła danych zapamięta sobie dla wszystkich kolejnych operacji.

Opis domyślnych wartości w DtiPars

Wartości w DtiPars (mogą się lekko różnić w zależności od źródła danych):

DtiPath: Ścieżka do źródła danych (dowolny PmaObject zawierający metodę DtiOper), może być także względna w stosunku do PmaPanel z przeglądarką.
Wartość jest obowiązkowa. Przeglądarka zapamięta sobie tę wartość i usunie ją z DtiPars.
Table: Nazwa tabeli.
Jeżeli źródło zawiera więcej tabel, wtedy wartość jest obowiązkowa, w innym przypadku wartość jest opcjonalna.
W obiekcie PmaAdo jest tu nazwa tabeli bazodanowej, w obiekcie PmaDataTable nie jest przedstawiana.
ColNames: Lista nazw kolumn do wyświetlenia.
Wartość jest opcjonalna. Jeżeli nie jest przedstawiona, wtedy zostaną wyświetlone wszystkie kolumny źródła danych.
ColPkNames: Lista nazw kolumn z kluczem podstawowym (określa unikalność wiersza do edycji lub usunięcia).
Wartość jest opcjonalna. Jeżeli nie zostanie przedstawiona, wtedy zostanie wykorzystana tylko pierwsza kolumna.
ColPkCount: Ilość kolumn z kluczem podstawowym (określa unikalność wiersza do edycji lub usunięcia).
Wartość jest opcjonalna. Jeżeli nie zostanie przedstawiona, wtedy zostanie wykorzystana tylko pierwsza kolumna.
ColTypes: Lista typów danych kolumn (do wyświetlenia i generowania poleceń SQL).
Wartość jest opcjonalna. Jeżeli nie zostanie przedstawiona, wtedy zostanie określona automatycznie.
ColPkTypes: Lista typów danych kolumn z kluczem podstawowym (do wyświetlenia i generowania poleceń SQL).
Wartość jest opcjonalna. Jeżeli nie zostanie przedstawiona, wtedy zostanie określona automatycznie.
ColTitles: Lista nagłówków kolumn do wyświetlenia (np. lokalizowany tekst).
Wartość jest opcjonalna. Jeżeli nie zostanie przedstawiona, wtedy zostanie wykorzystana ColNames.
Przeglądarka zapamięta sobie wartość i usunie ją z DtiPars.
Title: Nagłówek wyświetlonej tabeli (np. lokalizowany tekst).
Wartość jest opcjonalna. Jeżeli nie zostanie przedstawiona, wtedy zostanie wykorzystana Table lub pozostanie puste.
Przeglądarka zapamięta sobie wartość i usunie ją z DtiPars.

Operacje metody DtiOper źródła danych (parametr sOper)

"Open": Jest wywołana tylko jako pierwsza operacja podczas otwarcia przeglądarki. Celem operacji jest przejęcie początkowej wartości sDtiPars, sprawdzić ich poprawność. Następnie uzupełnić wszystkie brakujące informacje jak w celu wyświetlenia przeglądarki tak również żeby można było wykonywać kolejne operacje nad źródłem danych. Rezultatem tej operacji jest nowa uzupełniona wartość DtiPars, która zostanie zwrócona do przeglądarki. Przeglądarka zapamięta sobie ten zmodyfikowany DtiPars i następnie będzie go przekazywać w parametrze sDtiPars każdej kolejnej operacji nad źródłem danych. DtiPars jest uzupełniany o nazwy kolumn, nagłówki kolumn, typy danych kolumn, listę kluczy podstawowych, itd. Dane źródło danych może tu sobie zapisać również własne niezbędne informacje wymagane do kolejnych operacji. Niektóre wartości w DtiPars służą tylko dla pierwotnego wyświetlenia przeglądarki i przeglądarka je z powodów optymalizacji usunie z DtiPars, żeby DtiPars przy kolejnych operacjach nie był zbyt duży i zawierał tylko informacje dla źródła danych.
Operacja zwraca dostosowany DtiPars w formacie KeyVal.
"Close": Zostanie wywołana tylko jeden raz jako ostatnia operacja przy zamykaniu przeglądarki. Zazwyczaj ta operacja nie jest nawet implementowana.
"GetRows": Jest wywołana powtórnie, kiedy przeglądarka potrzebuje aktualizować swoją zawartość.
Operacja zwraca 2-wymiarową tablicę wartości.
"AddRow": vPar1 = tablica wszystkich wartości dodawanego wiersza. Jest wywołana przy dodaniu jednego wiersza.
Operacja zwraca 1 = OK, 0 = błąd
"EditRow": vPar1 = tablica wszystkich wartości edytowanego wiersza, vPar2 = tablica wartości określających edytowany wiersz (wartości klucza podstawowego) Jest wywołana przy zmianie jednego wiersza.
Operacja zwraca 1 = OK, 0 = błąd
"DeleteRow": gdzie vPar1 = tablica wartości określających usuwany wiersz (wartości klucza podstawowego) Jest wywołana przy usunięciu jednego wiersza.
Operacja zwraca 1 = OK, 0 = błąd
Przekazanie łańcucha DtiPars do przeglądarki.:
Parametr będzie zawierać: ścieżkę do źródła danych, nazwę tabeli i nagłówek tabeli.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var oCreator = Pm.CreateView(null, "../ViewerDataTable", "pars:{DtiPars:{DtiPath:../PmaAdo;Table:MyTable;Title:Tabelkowy przegląd wartości}}", "target:_blank;");
oCreator.Open();
Modyfikacja 1. oraz 2. wiersza metody "Open" obiektu PmgWTable:
Ta modyfikacja umożliwia ulokować w panelu kilka tabelek połączonych do różnych źródeł danych (różne tabele jednej lub kilku baz danych).
JavaScriptWybierz oraz skopiuj do schowka

var sDtiPars = "DtiPath:../PmaAdo;Table:MyTable;Title:Tabelkowy przegląd wartości";
// var sDtiPars = pMe.GetPar("DtiPars");
lub
Włożenie 3. - 5. wiersza do metody Open obiektu PmgWTable:
JavaScriptWybierz oraz skopiuj do schowka

mDtiPars.DtiPath = "../PmaAdo";
mDtiPars.Table = "MyTable";
mDtiPars.Title = "Tabelkowy przegląd wartości";

Historia:
Pm9.00.01: Wytworzono
Nawigacja:
 
 
- DtiOper
 
 
- SVG
© MICROSYS, spol. s r.o.