y_insert_update.aspx

Program StudioSystem za pomocą uniwersalnej transakcji y_insert_update.aspx pozwala użytkownikowi na wyświetlenie okna z kontrolkami do edycji informacji zapisanej we wskazanej tabeli. Transakcja podobna do transakcji x_insert_update.aspx, jednakże zasadniczą różnicą jest możliwość definiowania zakładek w formularzu dopisania/edycji.

UWAGA: ograniczenie rozwiązania polega na możliwości edycji danych tylko dla wskazanej jednej tabeli np. dane kartotekowe lub uzupełnianie danych dokumentów.

 

 

 

Z poziomu modułu KONFIGURACJI PROGRAMU można zaprojektować formularz z jakich elementów będzie się składać ekran dopisywania lub edycji danych.

konfiguracja informacji insert update podglad

 

Konfiguracja programu

W celu ustawienia parametrów pozwalających zaprojektować formularz należy uruchomić moduł KONFIGURACJI.

konfiguracja informacji insert update

 

Dopisujemy definicję wprowadzając następujące informacje:

  • Kod transakcji – zalecane jest rozpoczęcie nazwy od INS_ + nazwa tabeli której edycja lub dopisywanie będzie obsługiwane, np. INS_KNASO przeznaczone jest jako formularz kartoteki asortymentowej
  • Nazwa – należy podać nazwę tabeli do której będą zapisywane dane, w naszym przykładzie będzie to tabela KNASO
  • Źródło danych – domyślnie SoftwareStudioConnectionString
  • Zapytanie SQL – należy podać zapytanie SELECT zawierające jakie kolumny mają być obsługiwane, dopuszcza się stosowanie symbolu *, np. SELECT TOP(1) * from knaso. Należy pamiętać o podaniu klauzuli TOP(1)
  • FILTR_KOLUMNA – podajemy nazwę kolumny w tabeli wg której będzie odszukiwanie właściwego rekordu dla odczytania w przypadku trybu pracy UPDATE, np. NRIDASN
  • SZEROKOŚĆ STRONY – wskazujemy w pikselach jaki chcemy mieć rozmiar w zakresie szerokości formularza, ponieważ program może być uruchamiany na urządzeniach z różną rozdzielczością, można wskazać jaką chcemy wymusić szerokość. Zalecana wielkość to 1000 lub więcej. Jeżeli chcemy aby okno było automatycznie dopasowane do rozmiaru okna klienta to wpisujemy wartość 0, wówczas program ustawi szerokość na 100%.

 

konfiguracja insert_update

 

 

Następnie należy wygenerować kolumny czyli jakie pola będą dostępne na formularzu, w tym celu uruchamiamy polecenie UTWÓRZ/ AKTUALIZUJ KOLUMNY.

Dla już utworzonych kolumn do edycji należy używać polecenia EDYTUJ KOLUMNY.

Wyświetlone zostanie okno edycji:

Edytuj_kolumny1

Parametry:

  • KOLEJNOŚĆ – pozwala określić jakie obiekty będą w jakiej kolejności umieszczane na formularzu
  • NAZWA KOLUMNY – nazwa z bazy SQL z jakiej dane są odczytywane i zapisywane
  • ZAKŁADKA – nazwa zakładki wyswietlona w formularzu
  • TYTUŁ – etykieta wyświetlana obok okienka edycji
  • SZEROKOŚĆ KOLUMNY – w pikselach podajemy jakie chcemy mieć szerokie okno edycji, domyślnie 120 pikseli
  • WIDOCZNA – kolumna ustawiona jako niewidoczna nie będzie wyświetlana na formularzu mimo, że znajduje się w zapytaniu SQL
  • WYMAGANE – oznaczenie na TAK powoduje że dane okienko będzie wymagało wypełnienia, w przypadku braku danych, okienko będzie wyświetlane w czerwonym obramowaniu i nie będzie można zapisać danych
  • KLUCZ DOMYŚLNY – należy wskazać jaka kolumna stanowi unikalny identyfikator wiersza, np. NRIDASN, takie okienko może być wyświetlana ale bez możliwości edycji. Zaznaczenie klucza domyślnego skutkuje także autoatycznym nadaniem unikalnego identyfikatora rekordu w tabeli, w przypadku wywołania transakcji jako dopisania.
  • TYP KOLUMNY – pozwala wskazać w jaki sposób można dane edytować
    • Text – wprowadzanie danych tekstowych
    • Date – przeznacozny do wprowadzania dat
    • Numeric – umożliwia wporwadzanie wartości numerycznych
    • CheckBox – edycja pól logicznych, na zasadzie TAK/NIE
    • Combo – lista rozwijana dla wybrania pozycji ze słownika
    • Separator – możliwość rozdzielenia pozycji na formularzu linią poziomą
  • SPOSÓB FORMATOWANIA pozwala wymusić sposób formatowania np. dla kolumn typu DATA należy wpisać yyyy-MM-dd
  • WYRÓWNANIE – skorowidz wyboru wyrównania danych w komórce
  • MAX ILOŚĆ ZNAKÓW – pozwala dla typu kolumny Text na określenie ile znaków można wpisać do okienka, domyślnie brak ograniczeń, należy więc precyzyjnie zabezpieczyć aby użytkownik nie przekraczał wielkości dopuszczalnych
  • WARTOŚĆ DOMYŚLNA – jeżeli wprowadzono wartość domyślną to będzie ona proponowana do zapisu. Można wprowadzać zmienne aby zamiast stałej wartości wpisywane zostały informacje systemowe lub przypisane dla użytkownika:
    • @KTO – zmienna podstawia nazwę aktualnie zalogowanego użytkownika, zmienną należy przypisywać w transakcji INSERT do kolumny LOGIN
    • @ODDZIAL – zmienna zwraca wartość symbolu oddział przypisanego do zalogowanego użytkownika
    • @ROLASYS – zmienna zwraca wartość symbolu ROLI przypisanej do zalogowanego użytkownika
    • @MPK – zmienna zwraca wartość symbolu KOMÓRKI przypisanej do zalogowanego użytkownika
    • @MAGAZYN – zmienna zwraca wartość symbolu MAGAZYNU przypisanej do zalogowanego użytkownika
    • @DATA – zwraca datę systemową
  • MULITLINE – ustawienie na TAK pozwala na wyświetlanie okienka do wpisywania dowolnie długich opisów, okienko jest wysokie na 2 wiersze
  • POGRUBIENIE – ustawienie na TAK powoduje, że etykieta opisu pola wyświetlana jest czcionką pogrubioną
  • BRAK EDYCJI INSERT – ustawienie na TAK pozwala na wyświetlenie informacji, ale brak jest możliwości wprowadzania zmian w transakcji w trybie dopisywanie
  • BRAK EDYCJI UPDATE- ustawienie na TAK pozwala na wyświetlenie informacji, ale brak jest możliwości wprowadzania zmian w transakcji w trybie modyfikacji
  • Zapytanie dla COMBO – w tym polu nalezy wpisac zapytanie do bazy zwracające wyniki dla pola Combo. W zapytaniu obsługiwane jest filtrowanie wg zmiennych systemowych:
    • @ODDZIAL – oddział odczytany z zalogowanego użytkownika
    • @MAGAZYN – magazyn odczytany z zalogowanego użytkownika
    • @ROLA – rola odczytana z zalogowanego użytkownika
    • @ROLASYS – rolasys odczytana z zalogowanego użytkownika
    • @MPK – MPK odczytane z zalogowanego użytkownika

np. SELECT NRIDWMS, ADRES FROM KNWMS WHERE AKTYWNE=’1′ AND ODDZIAL=@ODDZIAL AND MAGAZYN=@MAGAZYN ORDER BY ADRES

 

UWAGA! Podczas konfiguracji pól w formularzu dopisania, pola, które maja przypisane zmienne, np. @MAGAZYN, @KTO itp. mozna oznaczyć jako niewidoczne, ale nalezy je przypisac koniecznie do zakładki, która jest aktywna, w przeciwnym wypadku dopisanie rekordu do bazy nie będzie możliwe – zostanie wyświetlony błąd.

 Konfiguracja formularza dopisania/edycji

Parametry uruchomienia transakcji

Transakcja wymaga podania parametru identyfikującego jakie ustawienia mają zostać wykorzystane.

Jeżeli transakcja ma pracować w trybie dopisywania to parametr nazywa się kodtransakcji, jeżeli w trybie edycji to refno, który wskazuje jaki rodzaj konfiguracji ma być użyty, przykład uruchomienia:

dla aktualizacji zapisów (edycja – update)

role_sys/x_insert_update.aspx?refno=INS_KNASO

dla dopisania nowego rekordu (insert)

role_sys/x_insert_update.aspx?kodtransakcji=INS_KNASO

Opcjonalne parametry:

  • metoda=insert – zdefiniowanie parametru umożliwia wykorzystanie transakcji do kopiowania zapisanych juz rekordów w bazie, np. skopiowania kartoteki asortymentowej z przypisaniem do innego magazynu.

Jako ostatni parametr podajemy nazwę kolumny (pola) z bazy stanowiącego unikalny identyfikator dla danej tabeli np.

  • NRIDASN – dla KNASO
  • NRIDODN – dla KNKON
  • REFNO – dla dpmag

itp.

np. role_sys/y_insert_update.aspx?kodtransakcji=INS_KNASO&nridasn=

formularz dopisania kartoteki towarowej