Pliki cookie pomagają nam udostępniać nasze usługi. Korzystając z tych usług, zgadzasz się na użycie plików cookie. Więcej informacji
Edytor Dokumentów Pracowników - część 2.

2011-08-31

W pierwszej części artykułu http://tgsoft.pl/Blog.aspx?id=39 przedstawiono możliwość wstawiania danych bezpośrednio z bazy SQL(przygotowanej kartoteki pracownika). Lista udostępnionych pól zawiera szereg różnych danych gotowych do bezpośredniego użycia w dokumencie.

Co w sytuacji gdy lista nie zawiera wymaganej informacji?

Standardowe rozwiązanie to oczywiście wpisanie danych bezpośrednio w dokumencie, jednak czynność tą należy powtarzać dla każdego pracownika.

Dla zaawansowanych użytkowników (programistów)proponujemy dodatkowe rozwiązanie, które umożliwi wzbogacenie dokumentów o kolejne dynamiczne wzorce.

W powyższym przykładzie do dokumentu wstawiono bezpośrednio podstawowe dane pracownika: kod, nazwisko, imię i płeć. Ostanie pole zawiera tylko typ zapisany w bazie danych czyli literki "K" lub "M". W dokumencie chcemy jednak pełne słowa: "Kobieta", "Mężczyzna".

W zakładce "DaneSz@rk" wybieramy opcję "SkryptC#", następnie w nowym oknie naciskamy pierwszy przycisk z lewej strony "Utwórz nowy skrypt z definicją klasy".

Z prawej strony okna widać typ klasy (Sender : System.Data.DataRow),która została przesłana jako parametr konstruktora. Możemy pobrać dane wejściowe, poddać je obróbce i zwrócić wynik do dokumentu.

  1. Definiujemy prywatne pole: DataRow row;
  2. Do konstruktora dodajemy linię: row = sender as DataRow;
  3. Dodajemy nową metodę NazwaPlci() (kod na załączonym poniżej zdjęciu).

Prywatna zmienna row potrzebna nam była to przekazania danych wejściowych z konstruktora do nowej dopisanej przez nas metody NazwaPlci().

Teraz potrzebujemy połączyć naszą funkcję z dokumentem.

  1. Przechodzimy do zakładki "Edytor dokumentu"
  2. Ustawiamy kursor w wymaganym miejscu
  3. Naciskamy klawisze Ctrl+F9
  4. Pomiędzy automatycznie wstawionymi nawiasami { } wpisujemy {DOCVARIABLE C#NazwaPlci}
  5. Naciskamy przycisk Aktualizuj dane

Powyżej efekt działania naszego skryptu.

Dokument należy zapisać. Po otwarciu dla następnego pracownika obliczenia zostaną automatycznie wykonane i zobaczymy formularz z połączonymi danymi oraz przetworzonymi funkcjami(funkcji w naszym skrypcie może być więcej).

Skrypt zapisywany jest razem z dokumentem w oddzielnym pliku z rozszerzeniem .csi będzie automatycznie ładowany podczas standardowego otwierania dokumentu. Użytkownik nie musi wykonywać żadnych dodatkowych czynności.