Dane tabelaryczne

 

Kontrolka dane tabelaryczne jest wielokolumnową kontrolką z możliwością wprowadzenia nieograniczonej liczby wierszy.

Wskazówka
Od wersji 2023.1.0 istnieje możliwość obserwowania przez kontrolkę typu Lista kontrolki typu Dane tabelaryczne (zob. przykład Obserwacja kontrolki typu Dane tabelaryczne przez kontrolkę typu lista).

Istnieje możliwość zdefiniowania do 20 kolumn (od wersji 2024.1. 0 – wcześniej do 10 kolumn), każda z kolumn może posiadać następujący typ:

  • Data i godzina
  • Dokument elektroniczny
  • Dokumenty w obiegu
  • Kontrahent
  • Liczba całkowita
  • Liczba rzeczywista
  • Liczba stałoprzecinkowa
  • Lista
  • Tekst
  • Towar
  • Wartość logiczna

 

Przykład kontrolki typu Dane tabelaryczne

 

Konfiguracja kontrolki Dane tabelaryczne – właściwości:

Zakładka Ogólne

  • Nazwa wyświetlana – jest to pole, którego zawartość będzie widoczna na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kontrolek dla których wyświetlana jest taka sama nazwa.
  • Nazwa (identyfikator) – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
  • Prezentuj na całej szerokości – oznaczenie tej właściwości spowoduje wyświetlenie kontrolki na całej szerokości okna „Karta obiegu”.
  • Ustaw kontrolkę na początku wiersza – parametr odpowiada za ustawienie kontrolki na początku nowego wiersza karty obiegu, bez konieczności dodawania separatorów pomiędzy kontrolką bieżącą a kontrolką poprzednią.

Uwaga
Możliwość użycia parametru „Ustaw kontrolkę na początku wiersza” uzależniona jest od wartości parametru „Prezentuj na całej szerokości”. Gdy zaznaczono parametr „Prezentuj na całej szerokości”, nie ma możliwości użycia parametru „Ustaw kontrolkę na początku wiersza”. Gdy parametr „Ustaw kontrolkę na początku wiersza” jest zaznaczony, parametr „Prezentuj na całej szerokości” jest dostępny, jego zaznaczenie spowoduje wyłączenie i dezaktywację parametru „Ustaw kontrolkę na początku wiersza”.

  • Liczba prezentowanych wierszyliczba widocznych wierszy, po przekroczeniu zadanej ilości wierszy z prawej strony kontrolki pojawi się pasek przewijania.
  • Kolumny z linkiem Dodaj – możliwość definicji kolejnych kolumn kontrolki (maks. 10).
  • Strzałki  i –  kliknięcie w strzałkę w górę pozwala na przesunięcie danej kolumny  przed poprzednią kolumnę, zaś kliknięcie w strzałkę w dół – na przesunięcie danej kolumny na miejsce po kolejnej kolumnie
  • Ikona– kliknięcie w ikonę kosza powoduje usunięcie danej kolumny  z tabeli

 

 

Kontrolka typu Dane tabelaryczne, zakładka Ogólne

 

Typy kolumn:

Data i godzina
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
      • Czas – wartości Tak/Nie, określenie czy kontrolki data mają posiadać tylko datę czy datę i godzinę.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne” Kolumna typu data i godzina

 

Dokument elektroniczny
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
      • Nazwa spółki – przyjmuje wartości: ‘Dowolna spółka Comarch ERP Altum’ oraz nazwy spółek określone w ustawieniach aplikacji. Określa spółkę, z której będą podpinane dokumenty.
      • Typ – określenie typu dokumentu z systemu Comarch ERP Altum, który można podpiąć do kolumny. Wybór typu nie jest obowiązkowy. Jeżeli typ nie zostanie określony w kolumnie można podpinać dokumenty:
          • FZV – Faktura VAT zakupu
          • KFZV – Korekta faktury VAT zakupu
          • NM – Nota memoriałowa
          • FZ – Faktura zakupu
          • KWFZ – Korekta wartościowa faktury zakupu
          • KIFZ – Korekta ilościowa faktury zakupu
          • ZZ – zamówienie zakupu.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Dokument elektroniczny

 

Dokumenty w obiegu
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
      • Po zapisie nie zamykaj dokumentu w kontrolceparametr odpowiedzialny za zachowanie dokumentu wygenerowanego lub dowiązanego w ramach kolumny.

Uwaga
Gdy parametr „Po zapisie nie zamykaj dokumentu w kontrolce” został zaznaczony, dokument podniesiony do podglądu lub dodany w ramach kontrolki / kolumny typu dokumenty w obiegu po kliknięciu w ikonę ‚Zapisz’ pozostaje wyświetlony, dopóki operator nie wycofa się z jego edycji za pomocą ikony ‚Nawiguj wstecz’ lub ‚Zamknij’  . Gdy parametr „Po zapisie nie zamykaj dokumentu w kontrolce” jest odznaczony, dokument podniesiony do podglądu lub dodany w ramach kontrolki / kolumny typu dokumenty w obiegu po kliknięciu w ikonę ‚Zapisz’ jest zamykany.

      • Dokument – przyjmuje wartości ‘Aktywne’‘Wszystkie’, związany jest z możliwością podpięcia do tabeli tylko dokumentów przypisanych do pracownika (Aktywne) lub wszystkich dokumentów.
      • Typ obiegu – za pomocą przycisku ‚Dodaj’ należy określić typy obiegów dokumentów, w których można będzie tworzyć nowe i podpinać istniejące dokumenty z poziomu kontrolki Dane tabelaryczne. Jeżeli nie zostanie wskazany żaden typ obiegu, wówczas możliwe będzie podpięcie dowolnego istniejącego dokumentu. Dodanie nowego dokumentu wymaga wskazania typu obiegu, w którym dokument zostanie utworzony.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Dokumenty w obiegu

 

Kontrahent
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
      • Nazwa spółki – przyjmuje wartości: ‘Dowolna spółka Comarch ERP Altum’ oraz nazwy spółek określone w ustawieniach aplikacji. Określa spółkę, z której będą podpinani kontrahenci.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Kontrahent

 

Liczba całkowita
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Liczba całkowita

 

Liczba rzeczywista
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Liczba rzeczywista

 

Liczba stałoprzecinkowa
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obieg;
      • Liczba miejsc po przecinku, do której będzie zaokrąglana wartość – pole wprowadzone w wersji 2024.0.0; znajduje się na definicji kontrolki typu Liczba stałoprzecinkowa i służy do określenia, do ilu miejsc po przecinku będzie zaokrąglana wprowadzona liczba (od 0 do 6).

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Liczba stałoprzecinkowa

 

Lista
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
      • Listysłownik nazw list zdefiniowanych na zakładce „Listy”.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Lista

 

Tekst
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Tekst

 

Towar
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu.
      • Nazwa spółki – przyjmuje wartości: ‘Dowolna spółka Comarch ERP Altum’ oraz nazwy spółek określone w ustawieniach aplikacji. Określa spółkę, z której będą podpinane artykuły.

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu Towar

 

Wartość logiczna
Właściwości:

      • Nazwa kolumny – jest to pole, którego zawartość będzie widoczna w nagłówku kolumny w kontrolce tabelarycznej na karcie obiegu, wartość pola nie musi być unikalna, dzięki temu możliwe jest dodanie kilku kolumn tego samego typu dla których wyświetlana jest taka sama nazwa.
      • Identyfikator kolumny – jest to pole, którego wartość widoczna jest wyłącznie we właściwościach kontrolki. Wartość tego pola musi być unikalna w ramach karty obiegu
      • Wybór wierszy –  w ramach parametru można wybrać wartość „TAK” lub „NIE”. Parametr ma zastosowanie w przypadku uzupełniania wartości formatki typu Dokument ERP XL wartościami z kontrolki tabelarycznej (zob. Uzupełnianie wartości formatki Dokument ERP XL wartościami z kontrolki tabelarycznej)

 

Kontrolka typu Dane tabelaryczne, zakładka „Ogólne”, kolumna typu wartość logiczna

 

Zakładka Listy

 

Kontrolka typu Dane tabelaryczne, zakładka „Listy”,

 

Dodaj – możliwość definicji słowników list na potrzeby kolumn typu „Lista”

Ikona– kliknięcie w ikonę kosza powoduje usunięcie danej listy z zakładki „Listy”

 

Właściwości słownika list:

  • Nazwanazwa słownika listy.
  • Inicjowaniesposób inicjowania listy: Słownik, SQL OD, SQL ERP, C# Script.
  • Rodzaj identyfikatora – pole umożliwia operatorowi określenie rodzaju identyfikatorów kolejnych pozycji na liście.   Przyjmuje wartości:
    • Int - gdy identyfikatory kolejnych pozycji na liście określone są liczbą.

Uwaga
Dla metody inicjowania listy słownikiem,  rodzaj identyfikatora to zawsze int.

    • Text - gdy identyfikatory kolejnych pozycji na liście określone są wartością tekstową (np. GUID).

W przypadku, gdy w kontrolce lista określono rodzaj identyfikatora jako int, w edytorze zapytań SQL w mechanizmach inicjowania i obserwowania wyświetlane będą parametry:

    • <identyfikator_kontrolki_typu_lista>_Id
    • <identyfikator_kontrolki_typu_lista>_Text

W przypadku, gdy w kontrolce lista określono rodzaj identyfikatora jako text, w edytorze zapytań SQL w mechanizmach inicjowania i obserwowania wyświetlane będą parametry:

    • <identyfikator_kontrolki_typu_lista>_IdText
    • <identyfikator_kontrolki_typu_lista>_Text

  • Nazwa spółki – pole dostępne w wielofirmowym trybie pracy, umożliwia wybór spółki
  • Tryb pracy – wartości: Lista, Wyszukiwanie
    • W kolumnie typu lista umożliwiono wyszukiwanie wartości po dowolnym ciągu znaków. Możliwość takiego wyszukiwania uzależniona jest od wartości parametru "Szukaj po dowolnym ciągu znaków". Parametr znajduje się we właściwościach definiowanej listy, po wskazaniu trybu pracy ‘Wyszukiwanie’.

 

Kontrolka typu Dane tabelaryczne, zakładka "Listy"

 

Zakładka Inicjowanie wartości

Inicjowanie – wartość „SQL OD” czyli inicjowanie kontrolki zapytaniem SQL z bazy obiegu, lub wartość "C# Script" czyli inicjowanie kontrolki za pomocą kodu w języku C#.

 

Uwaga

Od wersji 2023.1.2 jeżeli operator w ramach pola "Inicjowanie" wybierze wartość  SQL OD, SQL ERP lub C# Script, ale nie kliknie w link "Ustaw" i nie wprowadzi zapytania, wówczas przy próbie zapisu typu obiegu zostanie wyświetlony komunikat, a zmiany nie zostaną zapisane.

W takim przypadku należy zmienić wartość pola "Inicjowanie" na "Brak" albo wprowadzić brakujące zapytanie.

W ramach komunikatu podane są nazwa i identyfikator kontrolki, dla której nie wprowadzono wymaganego zapytania oraz opcja wybrana w polu "Inicjowanie"  tej kontrolki.

Przykładowy komunikat wyświetlany przy próbie zapisania typu obiegu, gdy na definicji kontrolki "Tabela 1"  na zakladce " Inicjowanie wartości" w polu "Inicjowanie" wybrano opcję "SQL OD", ale nie wprowadzono zapytania

 

Kontrolki powiązane - możliwość określenia, która kontrolka ma być obserwowana przez kontrolkę Dane tabelaryczne i na podstawie kontrolki obserwowanej zdefiniowanie wzoru na wartość kontrolki Dane tabelaryczne.

Wzór na wartość - może być zdefiniowany za pomocą SQL OD, SQL ERP lub kodu C#. Przykład został opisany w rozdziale Wypełnianie wartości kontrolki w oparciu o wartości innej kontrolki.

 

Kontrolka typu Dane tabelaryczne, zakładka "Inicjowanie wartości"

Zakładka Ograniczenie edycji

Na zakładce dostępna jest tabela, w której można określić tryb pracy poszczególnych kolumn kontrolki tabelarycznej na każdym etapie procesu.

Tabela zbudowana jest w ten sposób, że:

1. pierwsze dwie kolumny zawierają parametry dotyczące blokady dodawania i usuwania wierszy, które dotychczas były prezentowane we właściwościach kolumny na zakładce Ogólne.

2. pozostałe kolumny to kolejne kolumny zdefiniowanej kontrolki typu Dane tabelaryczne.

3. wiersze tabeli stanowią wszystkie etapy procesu.

 

Zaznaczenie parametru w kolumnach zablokuj usuwanie/dodawanie wierszy skutkuje brakiem możliwości usunięcia/dodania wiersza, gdy dokument przebywa w danym etapie.

Zaznaczenie parametru w pozostałych kolumnach oznacza, że na danym etapie kolumna przejdzie w tryb do odczytu.

 

Kontrolka typu Dane tabelaryczne,  zakładka "Ograniczenie edycji"

 

Kontrolka typu Dane tabelaryczne, kolumna "Dokument" w trybie tylko do podglądu

 

Import danych z arkusza Excel do kontrolki typu Dane tabelaryczne

W wersji 2024.1.0 umożliwiono import danych z arkusza Excel do kontrolki typu Dane tabelaryczne, dodano również pytanie, czy dane zostaną dopisane do istniejących danych w kontrolce typu Dane tabelaryczne, czy też wartości mają zostać nadpisane.

Aby poprawnie importować dane z arkusza Excel do kontrolki typu Dane tabelaryczne należy:

  • W arkuszu kalkulacyjnym, z którego mają zostać zaimportowane dane, przygotować kolumny w taki sposób, aby znajdowały się w takiej samej kolejności jak kolumny w kontrolce typu Dane tabelaryczne

 

Przykładowa tabela w kontrolce typu Dane tabelaryczne

 

Przykładowa tabela w arkuszu kalkulacyjnym – kolumny odpowiadają kolumnom znajdującym się w kontrolce typu Dane tabelaryczne

 

  • W pierwszym wierszu arkusza kalkulacyjnego umieścić nazwy wszystkich kolumn z kontrolki typu Dane tabelaryczne
  • W arkuszu kalkulacyjnym rozpocząć tabelę, która ma zostać zaimportowana, od pola A1

 

Przykładowa tabela w arkuszu kalkulacyjnym – zaznaczono pole A1, od którego należy rozpocząć tabelę

 

  • W arkuszu kalkulacyjnym dodać tabelę z co najmniej 1 kolumną i co najwyżej 20 kolumnami
  • W kontrolce typu Dane tabelaryczne dodać kolumny z jednego lub więcej z poniższych typów kolumn:
    • Data i godzina (z czasem lub bez) – typ danych w Excelu: dd.mm.rrrr (bez czasu), dd.mm.rrrr gg:mm:ss (z czasem)
    • Dokument elektroniczny – typ danych w Excelu: tekst, liczba
    • Dokumenty w obiegu – typ danych w Excelu: liczba, tekst
    • Kontrahent – typ danych w Excelu: tekst, liczba
    • Liczba całkowita – typ danych w Excelu: liczba
    • Liczba rzeczywista – typ danych w Excelu: liczba
    • Liczba stałoprzecinkowa – typ danych w Excelu: liczba
    • Lista – typ danych w Excelu: tekst, liczba
    • Tekst – typ danych w Excelu: tekst
    • Towar – typ danych w Excelu: tekst, liczba
    • Wartość logiczna (z włączonym lub wyłączonym wyborem wiersza) – typ danych w Excelu: liczba

 

Uwaga
W arkuszu kalkulacyjnym należy pominąć kolumnę z liczbą porządkową wiersza.

 

Jeśli dane z arkusza kalkulacyjnego są importowane do kolumny z typów dotyczących kontrolek elektronicznych – kontrolek we współpracy z systemami ERP– wówczas dla kolumny typu:

  • Dokument elektroniczny – zostanie przekazany numer dokumentu
  • Kontrahent – zostanie przekazany akronim kontrahenta
  • Towar – zostanie przekazany kod towaru

Podczas importu takich danych następuje walidacja, czy dany numer/akronim/kod występuje w powiązanej bazie ERP – jeśli tak, element zostanie podpięty w kolumnie, jeśli nie – kolumna pozostanie pusta.

W wersji 2024.1.0 obok kontrolki typu Dane tabelaryczne w aplikacji desktop dodano ikonę [Import danych z arkusza kalkulacyjnego]. Ikona znajduje się obok przycisku dodawania nowego wiersza w ramach kontrolki lub, w przypadku jeśli w zakładce „Schemat obiegu” zaznaczono parametr „Odświeżanie tabeli na żądanie” dla danej kontrolki typu Dane tabelaryczne, obok ikony odświeżania kontrolki .

 

Szczegóły dokumentu z widoczną ikoną „Import danych z arkusza kalkulacyjnego” w aplikacji desktop – jeśli nie włączono odświeżania kontrolki typu Dane tabelaryczne

 

Szczegóły dokumentu z widoczną ikoną „Import danych z arkusza kalkulacyjnego” w aplikacji desktop – jeśli włączono odświeżanie kontrolki typu Dane tabelaryczne

Aby importować dane z arkusza kalkulacyjnego, operator powinien kliknąć w  ikonę [Import danych z arkusza kalkulacyjnego].

Wówczas zostaje otwarte okno, w ramach którego operator powinien wybrać jeden arkusz kalkulacyjny do zaimportowania i kliknąć [Otwórz].

 

Wybór arkusza kalkulacyjnego do zaimportowania

 

Po kliknięciu w przycisk [Otwórz] dane z arkusza kalkulacyjnego zostają zaimportowane do kontrolki typu Dane tabelaryczne.

 

Przykładowa kontrolka typu Dane tabelaryczne z danymi zaimportowanymi z arkusza kalkulacyjnego

 

Jeżeli operator wybrał arkusz kalkulacyjny do zaimportowania i kliknął w przycisk [Otwórz], ale wcześniej wprowadzono już jakieś dane w danej kontrolce, wówczas zostanie wyświetlony następujący komunikat:

 

Komunikat wyświetlany, jeśli w ramach kontrolki wprowadzono jakieś dane przed próbą importu danych z arkusza kalkulacyjnego

 

Jeśli operator wybierze przycisk:

  • [Dopisz dane] – wówczas dane z wybranego arkusza kalkulacyjnego zostaną dodane do danych, które już znajdują się w danej kontrolce typu Dane tabelaryczne, a komunikat zostanie zamknięty
  • [Nadpisz dane] – wówczas dane z wybranego arkusza kalkulacyjnego zastąpią te dane, które już znajdowały się w danej kontrolce typu Dane tabelaryczne, a komunikat zostanie zamknięty
  • [Anuluj] – wówczas operator rezygnuje z importu danych, a komunikat zostanie zamknięty

 

Dodawanie istniejącego dokumentu oraz tworzenie nowego w kolumnie typu ‘Dokumenty w obiegu’

Wskazanie typu kolumny ‘Dokumentu w obiegu’ pozwala na dodawanie istniejącego lub utworzenie nowego dokumentu Comarch DMS.

 

Konfiguracja kontrolki Dane tabelaryczne, kolumna typu Dokument w obiegu

 

Aby w kontrolce Dane tabelaryczne utworzyć nowy dokument należy użyć przycisku który wywoła listę dostępnych typów obiegu w ramach, których możliwe jest utworzenie nowego dokumentu.

 

Kontrolka Dane tabelaryczne – wybór typu obiegu, w którym zostanie utworzony nowy dokument

 

Po wybraniu typu obiegu wyświetlona zostaje karta obiegu.

 

Karta obiegu wywołana z kontrolki typu Dane tabelaryczne na karcie obiegu w ramach innego typu obiegu.

 

Aby w kolumnie typu „Dokumenty w obiegu” dodać istniejący dokument należy wpisać kilka znaków numeru dokumentu, który ma być podpięty w kontrolce. Po wpisaniu frazy, Comarch DMS wyświetli listę dokumentów, które zawierają wpisany ciąg znaków.

 

Kontrolka typu Dane tabelaryczne – wskazanie dokumentu Comarch DMS

 

Inicjowanie kontrolki tabelarycznej zapytaniem SQL

Istnieje możliwość inicjowania kontrolki tabelarycznej zapytaniem SQL. Możliwe jest uruchomienie zapytania wyłącznie na bazie obiegu. Poniżej zostały opisane zasady tworzenia zapytania SQL w zależności od zdefiniowanej ilości i typów kolumn kontrolki.

Tworząc zapytanie które zainicjuje kontrolkę należy kierować się przykładem zamieszczanym na formatce definicji zapytania „Zapytanie SQL”. Składania zapytania oraz przykład jest tworzony dynamicznie w zależności od ilości i typu zdefiniowanych kolumn.

 

Formatka Zapytanie SQL

 

Format zapytania SQL

Inicjowanie kontrolki tabelarycznej zapytaniem SQL odbywa się poprzez SELECT w którym podajemy tyle parametrów i w takiej kolejności w jakiej występują kolumny zdefiniowane w kontrolce.

Kolumny ze składni select przekładają się 1:1 do kolumn zdefiniowanych w kontrolce tabelarycznej poza jednym wyjątkiem. Tym wyjątkiem jest kolumna typu dokument elektroniczny, w którym konieczne jest określenie dwóch składowych GidTyp i Id dokumentu.

Ostatnią kolumną jest zawsze tryb wprowadzania wartości instrukcją select :

1 – nadpisz (usuń istniejące wartości i zastąp nowymi),

2 – dodaj (do istniejących wartości dodaj nowe)

 

Zestawienie typów kolumn instrukcji SELECT:

 

Typ kolumny kontrolkiTyp kolumny SELECTPrzykład
Tekstvarchar (900)'Uwagi do płatności'
Data i godzinadatetime'20170926' - format 'YYYYMMDD'
Liczba całkowitaint123
Liczba stałoprzecinkowadecimal (22,4)1000.55
Liczba rzeczywstareal2000.55
Listaint1 - id pozycji
Wartość logicznaint0 - Nie
1 - Tak

 

Przyklad

Jeżeli w kontrolce dane tabelaryczne zostały zdefiniowane cztery kolumny o następujących typach:
1) tekst
2) data
3) liczba stałoprzecinkowa
4) lista
zapytanie select może wyglądać następująco:

 

<p style="text-align: center;
vertical-align: middle; font-weight: bold;
font-weight: 700;
font-weight: lighter; margin: 0 auto">Kolumny

<p style="text-align: center;
vertical-align: middle; font-weight: bold;
font-weight: 700;
font-weight: lighter; margin: 0 auto">1

<p style="text-align: center;
vertical-align: middle; font-weight: bold;
font-weight: 700;
font-weight: lighter; margin: 0 auto">4

<p style="text-align: center;
vertical-align: middle; font-weight: bold;
font-weight: 700;
font-weight: lighter; margin: 0 auto">2

<p style="text-align: center;
vertical-align: middle; font-weight: bold;
font-weight: 700;
font-weight: lighter; margin: 0 auto">3

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Tekst

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Data

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Liczba stałoprzecinkowa

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Id listy

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Tryb

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">SELECT

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Monitor 23”,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">20170923,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">123.50,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">3,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">2

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">UNION

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">SELECT

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">Klawiatura QWERTY,

<p style="text-align: center;
vertical-align: middle;
margin: 0 auto">20170508,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">348.00,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">2,

<p style="text-align: center;
vertical-align: middle; margin: 0 auto">2

 

Kolumny dla powyższego przykładu zostały zdefiniowane w następujący sposób:

 

Kolumny zdefiniowane w kontrolce tabelarycznej

 

Zmiana wartości kontrolki na podstawie zmiany wartości innej kontrolki (Obserwator)

Od wersji Comarch DMS 2018.2.1 została zmieniona funkcjonalność odświeżania zawartości kontrolki dane tabelaryczne instrukcją SQL: select * from @Nazwa kontrolki@. We wcześniejszych wersjach Comarch DMS wywołanie zapytania select * from @Nazwa kontrolki@ było obowiązkowe dla każdego zdarzenia. Brak instrukcji powodował usunięcie informacji z kontrolki dane tabelaryczne. Aktualnie brak tego zapytania nie spowoduje usunięcia zawartości kontrolki. Zmiana została wprowadzona po to, aby nieobsłużone zdarzenia nie powodowały wielokrotnego odświeżania kontrolki.

Do wersji 2018.2.1 zalecanym schematem pisania zapytań SQL w obsłudze zdarzeń kontrolki dane tabelaryczne był schemat, w którym zapytanie select * from @Nazwa kontrolki@ znajdowało się na końcu kodu SQL:

 

Przyklad

Przykład warunku:

If warunek 1

Begin

… Obsługa warunku 1

End

If warunek 2

Begin

… Obsługa warunku 2

End

select * from @Nazwa kontrolki@

 

Aktualnie zalecanym schematem jest:

 

Przyklad

Przykład warunku:

If warunek 1

Begin

… Obsługa warunku 1

select * from @Nazwa kontrolki@

End

If warunek 2

Begin

… Obsługa warunku 2

select * from @Nazwa kontrolki@

End

 

W przypadku wykorzystania nowego schematu warunku, brak obsługi zdarzenia nie spowoduje żadnej akcji w kontrolce dane tabelaryczne.

 

Uwaga
Nową zasadę można stosować gdy korzystamy z serwera MS SQL 2012 lub wyższego. W przypadku serwera MS SQL 2008 należy stosować dotychczasowe zasady.

 

Odświeżanie wartości w kontrolce dane tabelaryczne na żądanie

Funkcjonalność można włączyć w:
menu "Definicje typów obiegów"zakładka "Schemat obiegu" wybrany etap zakładka "Kontrolki"parametr "Odświeżanie tabeli na żądanie"

 

Parametr "Odświeżanie tabeli na żądanie"

 

Po włączeniu opcji na karcie obiegu pojawi się przycisk, który po kliknięciu będzie odświeżał wartości w tabeli.

 

Przycisk pozwalający na odświeżanie tabeli

 

W edytorze wyrażeń SQL dostępna jest obsługa zdarzenia kliknięcia w przycisk "Odśwież" w kontrolce typu dane tabelaryczne. Zdarzenia można wskazać w parametrach @^SenderControlName@ oraz @^InitSenderControlName@ poprzez wpisanie frazy złożonej z identyfikatora kontrolki tabelarycznej, następnie znaku "_" i dodatkowo słowa "Refresh". Np. dla kontrolki o identyfikatorze "Multiline1" zdarzenie kliknięcia będzie określane jako "Multiline1_Refresh".

 

Przyklad

Zdefiniowano kontrolkę typu dane tabelaryczne "Elementy", w której po dodaniu towaru i uzupełnieniu ilości jednostki miary i ceny wyliczana jest wartość netto wszystkich pozycji tabeli. Zdefiniowano również kontrolkę typu liczba stałoprzecinkowa "Łączna wartość netto dokumentu", w której wyliczana jest suma wartości netto z tabeli.

 

 

W kontrolce typu dane tabelaryczne zastosowano mechanizm obserwowania zmiany wartości przez samą siebie, przy czym w parametrze @^SenderControlName@ wskazano zdarzenie kliknięcia w przycisk "Odśwież" w kontrolce typu dane tabelaryczne.

 

 

W kontrolce liczbowej "Łączna wartość netto dokumentu" zastosowano mechanizm obserwowania wartości w kontrolce tabelarycznej. W zapytaniu obserwatora w parametrze @^SenderControlName@ wskazano zdarzenie kliknięcia w przycisk "Odśwież" w kontrolce "Elementy". We właściwościach etapu zaznaczono, że kontrolka typu dane tabelaryczne będzie pracować w trybie odświeżanie na żądanie.

 

 

Na dokumencie DMS po uzupełnieniu kolumn "Towar", "Ilość", "JM" i "Cena" wartości w kolumnie "Wartość netto" i w kontrolce "Łączna wartość netto dokumentu" nie są wyliczane pomimo ustawienia mechanizmu obserwacji.

 

 

Dopiero po kliknięciu w ikonę "Odśwież" wartości zostaną wyliczone i zaprezentowane w kolumnie "Wartość netto" oraz w kontrolce "Łączna wartość netto dokumentu".