Wypełnianie wartości kontrolki w oparciu o wartości innej kontrolki
Opis funkcjonalności
Funkcjonalność umożliwia wypełnienie wartości jednej kontrolki wynikowej (np. Wartość) na podstawie wartości kontrolek powiązanych (np. Ilość i Cena) z wykorzystaniem wyrażenia zdefiniowanego na właściwościach kontrolki wynikowej (np. Ilość*Cena = Wartość).
Przykłady definicji kontrolek wynikowych:
-
- Kontrolka typu Data: aktualna data, data aktualna + 1 dzień,
- Kontrolka typu Liczba rzeczywista/całkowita/stałoprzecinkowa: aktualna wartość, suma dwóch wartości, różnica dwóch wartości, iloraz dwóch wartości, iloczyn dwóch wartości,
- Kontrolka typu Tekst: aplikacja umożliwia wiązanie następujących typów kontrolek: Data + Data, Data + Liczba, Liczba + Liczba, Liczba + Tekst, Liczba + Data, Tekst + Tekst.
Modyfikacja danych w kontrolkach powiązanych powoduje zmianę wartości w kontrolce wynikowej. Aktualizacja wykonywana jest po każdej zmianie.
Kontrolki, które stają się kontrolkami wynikowymi i powiązanymi podlegają tym samym właściwościom, co kontrolki „zwykłe” np. wymagalności, tylko do odczytu, widoczność itd.
Zdefiniowane kontrolki powiązane można usuwać za pomocą ikony kosza, a dodawać za pomocą linku „Dodaj”. Z kontrolek powiązanych operator może wybierać także kontrolki typu „Lista”.
Wzór na wyrażenie odnosi się do zapytań SQL wykonywanych na bazie systemu ERP XL lub bazie aplikacji Comarch DMS. Dla kontrolki typu Lista umożliwiono odwołanie się do nazwy wybranego elementu.
Możliwe jest wykorzystywanie parametrów predefiniowanych na formatce Wyrażenie kontrolki: @^Id_Operatora@, @^Id_NrDokumentu@, @^Id_TypObiegu@, @^Id_Etapu@ gdzie :
-
- ^Id_Operatora – ID zalogowanego operatora,
- ^Id_NrDokumentu – ID dokumentu,
- ^Id_TypObiegu – ID typu obiegu, w ramach którego wystawiony jest dokument,
- ^Id_Etapu – ID etapu, w którym aktualnie znajduje się dokument.
Na formatce „Wyrażenie kontrolki” można także wykorzystać parametr @nazwa (identyfikator) kontrolki@, który zostanie zamieniony na wartość kontrolki.
Dla kontrolek typu: Dokument elektroniczny, Kontrahent, Towar, Dokument ERP XL, Dane tabelaryczne – parametry zwracają:
-
- @nazwa (identyfikator)@ – GidTyp:GidNumer obiektu,
- @nazwa (identyfikator)_Id@ – GidNumer obiektu,
- @nazwa (identyfikator)_IdType@ – GidTyp obiektu.
Obserwacja kontrolki typu URL przez inne kontrolki
W wersji 2023.1.0 dodano możliwość obserwowania kontrolki typu URL przez inne kontrolki. Możliwe jest obserwowanie:
- linku kontrolki – za pomocą parametru @IdentyfikatorKontrolki_Url@
lub
- nazwy wyświetlanej kontrolki – za pomocą parametru @IdentyfikatorKontrolki_Display@
Kontrolki „Nazwa strony firmy” i „Adres firmy” zostają uzupełnione wartościami z kontrolki typu Url „Strona firmy” – jak pokazano na poniższym filmie:
Obserwacja kontrolki typu Dane tabelaryczne przez kontrolkę typu lista
Od wersji 2023.1.0 również kontrolka typu Dane tabelaryczne może być obserwowana przez kontrolkę typu Llsta.
Przykład:
Użytkownik chce, aby:
- na liście „Lista towarów” były wyświetlane wszystkie produkty, które doda w tabeli w polu „Nazwa towaru” (identyfikator: nazwa_towaru, typ: Tekst);
- na liście „Lista wartości” były wyświetlane wszystkie wartości, które doda w tabeli w polu „Wartość 3” (identyfikator: war3, typ: Liczba stałoprzecinkowa).
W tym celu:
1. w ramach kontrolki „Lista towarów” w ramach pola „Kontrolki powiązane” dodał kontrolkę „Tabela” (Multiline1), aby była obserwowana przez kontrolkę „Lista towarów”;
2. w kontrolce „Lista towarów” w polu „inicjowanie” wybrał „SQL OD” oraz „Text” w polu „Rodzaj identyfikatora” i po kliknięciu przycisku „Ustaw” wpisał następujące zapytanie:
select nazwa_towaru, nazwa_towaru from @Multiline1@
a później nacisnął przycisk „ Zapisz”;
3. następnie w ramach kontrolki „Lista wartości” w ramach pola „Kontrolki powiązane” dodał kontrolkę „Tabela” (Multiline1), aby była obserwowana przez kontrolkę „Lista wartości”;
4. w kontrolce „Lista wartości” w polu „inicjowanie” wybrał „SQL OD” oraz „Int” w polu „Rodzaj identyfikatora” i po kliknięciu przycisku „Ustaw” wpisał następujące zapytanie:
select war3, war3 from @Multiline1@
a później nacisnął przycisk „ Zapisz”;
5. Następnie użytkownik zapisał zmiany za pomocą ikony [Zapisz] i utworzył nowy dokument. W tabeli „Tabela” dodał 3 wersy:
- w polu „Nazwa towaru wpisał:
- W wersie 1: jabłko
- W wersie 2: gruszka
- W wersie 3: cytryna
- w polu „Wartość 3” wpisał:
- W wersie 1: 2
- W wersie 2: 4
- W wersie 3: 6
Zgodnie z ustawieniami kontrolek typu lista:
- W kontrolce „Lista produktów” widoczne są wartości:
- jabłko
- gruszka
- cytryna
- w kontrolce „Lista wartości” widoczne są wartości:
- 2
- 4
- 6
Wraz ze zmianą wartości w polach „Nazwa produktu” i „Wartość 3” również wartości w kontrolkach typu lista będą ulegać zmianie – jak pokazano na poniższym filmie: