Kontrolka typu „Kontrahent” umożliwia wczytywanie na kartę obiegu Comarch DMS kontrahenta z listy kontrahentów zdefiniowanych w programie Comarch ERP XL.
Na definicji kontrolki dostępne są następujące pola:
- 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 – zaznaczenie 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ą.
- Nazwa spółki – parametr dostępny w trybie wielofirmowym. Określa spółkę, z której będzie można wskazać kontrahenta.
- Pokaż na liście – parametr odpowiedzialny za to, czy na liście dokumentów zawężonej do typu obiegu na którym dodano kontrolkę, będzie wyświetlana kolumna z wartościami kontrolki.
Aby parametr „Pokaż na liście” działał poprawnie, zarówno w przypadku starego jak i nowego trybu uprawnień należy przestrzegać następujących zaleceń:
- nie można używać nawiasów kwadratowych
- nazwa wyświetlana kontrolek może mieć maksymalnie 128 znaków (dotyczy kontrolek, które mają być wyświetlane na liście)
Inicjowanie wartości
Pole Inicjowanie może przyjąć wartość: Brak, SQL OD, SQL ERP (od wersji 2023.1.0) lub C# Script.
- Gdy wybrana jest wartość „Brak”, właściwości kontrolki nie ulegają zmianie, działanie samej kontrolki nie zmienia się, kontrolka działa jak dotychczas.
- W przypadku wartości „SQL OD” lub „SQL ERP” pojawia się możliwość zdefiniowania zapytania SQL, za pomocą którego będą zaczytywane wartości do kontrolki na karcie obiegu w dokumencie oraz wyświetlany jest parametr „Inicjuj przy każdym otwarciu dokumentu”.

- Dla wartości „C# Script” możliwe jest inicjowanie kontrolki za pomocą kodu w języku C#.
- Zaznaczenie parametru „Inicjuj przy każdym otwarciu dokumentu” powoduje, że wartości wyświetlane w kontrolce będą inicjowane każdorazowo, gdy dokument zostanie otwarty w etapie, w którego właściwościach włączono inicjowanie SQL lub C#. Odznaczenie parametru oznacza, że działanie aplikacji w zakresie inicjowania będzie odbywało się jak dotąd, czyli wartość zostanie zainicjowana raz.
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.


W sekcji „Podgląd karty obiegu” po dodaniu kontrolki typu Kontrahent prezentowany jest przycisk , który otwiera listę kontrahentów z programu Comarch ERP XL.

– w kontrolce prezentowane są przyciski
[Zmień] wywołujący listę kontrahentów z Comarch ERP XL, na której można dokonać zmiany kontrahenta przypisanego do dokumentu oraz
[Odepnij] który usunie wskazanie na kontrahenta.

Administrator chce, aby po wpisaniu numeru NIP w kontrolce „NIP kontrahenta” (identyfikator: „nip_kontrahenta”) w kontrolce „Kontrahent” został wybrany kontrahent o tym numerze NIP.
W tym celu w definicji kontrolki typu Kontrahent w polu „Kontrolki powiązane” operator dodaje do obserwacji kontrolkę „NIP kontrahenta” (identyfikator: „nip_kontrahenta”), a po wyborze „SQL ERP” i kliknięciu w link „Ustaw” wprowadza następujące zapytanie SQL:
select knt_gidnumer from cdn.kntkarty where knt_nip= @nip_kontrahenta@

Następnie administrator zapisuje zmiany w obiegu. Kiedy użytkownik DMS wprowadzi numer NIP do kontrolki „NIP kontrahenta”, wówczas w kontrolce „Kontrahent” automatycznie wybrany zostanie kontrahent o danym numerze NIP (jeśli znajduje się na liście kontrahentów w Comarch ERP XL).

Administrator pragnie, aby po wyborze dokumentu z Comarch ERP XL w kontrolce typu Dokument elektroniczny o nazwie „FZ” (identyfikator:”FaZ”) w kontrolce typu Kontrahent o nazwie „Kontrahent” automatycznie był wybierany kontrahent występujący w danym dokumencie.
W tym celu w definicji kontrolki typu Kontrahent w polu „Kontrolki powiązane” operator dodaje do obserwacji kontrolkę „FZ” (identyfikator: „FaZ”), a po wyborze „SQL ERP” i kliknięciu w link „Ustaw” wprowadza następujące zapytanie SQL:
select d.Trn_KntNumer from cdn.TraNag d where d.TrN_GIDTyp = @FaZ_IdType@ and d.TrN_GIDNumer = @FaZ_Id@

Następnie administrator zapisuje zmiany w obiegu. Kiedy użytkownik DMS doda dokument z systemu Comarch ERP XL w kontrolce „FZ”, wówczas w kontrolce „Kontrahent” automatycznie wybrany zostanie kontrahent określony na danym dokumencie.
