Limity dynamicznych pól w systemie
Masz ustawione wydanie – pokaż opis dla tego wydania.
AMODIT korzysta z czterech logicznych pul kolumn do przechowywania wartości dynamicznych pól formularza: Varchar, Text, Number i DateTime. Typ pola określa, z której puli zostanie przydzielone miejsce.
Pojemność każdej puli zależy od kolumn istniejących na konkretnym wdrożeniu. Nie ma jednej liczby, która byłaby właściwa dla wszystkich instalacji AMODIT.
Gdzie to jest
Dział zatytułowany „Gdzie to jest”Parametry Varchar, Text, Number i DateTime są dostępne w ustawieniach systemowych AMODIT. Ekran służy administratorowi do sprawdzenia konfiguracji czterech pul używanych przez dynamiczne pola formularzy.
Ogólne przeznaczenie poszczególnych typów pól opisuje artykuł Typy pól.
Jak interpretować limit
Dział zatytułowany „Jak interpretować limit”Podczas dodawania pola AMODIT przydziela mu pierwszy wolny slot z właściwej puli w obrębie danego procesu. Jeżeli proces wykorzysta wszystkie sloty danej puli, nie można dodać kolejnego pola, które korzysta z tej puli.
Limit jest liczony osobno dla każdego procesu i każdej puli. Ten sam numer slotu może odpowiadać różnym polom biznesowym w różnych procesach, dlatego limit nie oznacza łącznej liczby pól we wszystkich procesach.
Rzeczywista pojemność wynika ze struktury bazy konkretnego wdrożenia. Może różnić się między instalacjami ze względu na historię rozbudowy systemu.
Rozbudowa pul i typy nowych kolumn
Dział zatytułowany „Rozbudowa pul i typy nowych kolumn”Nazwa puli Varchar jest nazwą logiczną. Nie oznacza, że każda kolumna tej puli ma ten sam typ SQL ani tę samą pojemność.
| Sposób utworzenia kolumny puli Varchar | MS SQL | MySQL |
|---|---|---|
| Kolumna utworzona przez bazowy schemat | NVARCHAR(256) |
VARCHAR(256) |
| Kolumna dodana przy zwiększaniu puli | NVARCHAR(MAX) |
MEDIUMTEXT |
Zwiększenie puli nie konwertuje istniejących kolumn i nie przenosi zapisanych w nich danych. W jednej instalacji mogą więc współistnieć kolumny o długości 256 znaków utworzone przez bazowy schemat i kolumny LOB dodane przy zwiększaniu puli.
Kolumna LOB pozwala przechować dłuższy tekst, o ile jego długości nie ogranicza konfiguracja pola
lub walidacja aplikacji. Może jednak zwiększyć koszt składowania, odczytu i zmian schematu, a także
ma inne możliwości indeksowania. Integracje i zapytania bazodanowe powinny sprawdzać rzeczywisty
schemat zamiast wyprowadzać typ kolumny z nazwy caseVarcharN.
Dodawanie, zmniejszanie i naprawa pul
Dział zatytułowany „Dodawanie, zmniejszanie i naprawa pul”Zmiana wartości puli działa następująco:
- zwiększenie wartości dodaje kolumny, natomiast jej zmniejszenie nie usuwa istniejących kolumn;
- ustawienie ma osobny ekran edycji;
- przed zwiększeniem puli system sprawdza pojemność oraz spójność tabel spraw i historii spraw. Wykryta niespójność blokuje zmianę, aby nie pogłębić różnic w schemacie;
- Dostępne od261231beta rozbieżność między tabelami spraw i historii spraw można naprawić w kontrolowany sposób: system usuwa nadmiarowe, nieużywane kolumny, z uwzględnieniem indeksów;
- Dostępne od261231beta edycja puli ma dodatkowe ograniczenia: zmiana o jeden krok, maksymalnie o dziesięć względem bieżącej wartości i bez możliwości zejścia poniżej liczby slotów używanych przez procesy.
Blokada zwiększenia puli jest zabezpieczeniem spójności bazy. Nie należy jej omijać ręczną zmianą schematu; sposób naprawy trzeba dobrać do rzeczywistej struktury wdrożenia.
Parametry
Dział zatytułowany „Parametry”| Parametr | Typy pól korzystające z puli | Co zajmuje slot | Wartości | Domyślna |
|---|---|---|---|---|
| Varchar | Tekstowe (krótki tekst), Pole walidowane, Hiperłącze, Lista wyboru, Odnośnik do źródła zewnętrznego oraz historyczne typy SharePoint | Tekst albo tekstowy klucz wartości zewnętrznej. | Liczba zależna od kolumn istniejących na wdrożeniu. | Brak jednej wartości wspólnej dla wszystkich instalacji. |
| Text | Tekstowe (długi tekst), Tabela | Długi tekst. Pole Tabela rezerwuje slot, ale właściwe wiersze tabeli są odrębnymi, powiązanymi sprawami. | Liczba zależna od kolumn istniejących na wdrożeniu. | Brak jednej wartości wspólnej dla wszystkich instalacji. |
| Number | Numeryczne, Kwota, Słownik, Tak/Nie, Użytkownik, Podpis, Odnośnik, Dokument | Liczba, wartość Tak/Nie albo identyfikator powiązanego obiektu. | Liczba zależna od kolumn istniejących na wdrożeniu. | Brak jednej wartości wspólnej dla wszystkich instalacji. |
| DateTime | Data, Data i czas | Data albo data wraz z czasem. | Liczba zależna od kolumn istniejących na wdrożeniu. | Brak jednej wartości wspólnej dla wszystkich instalacji. |
Historyczne typy SharePoint korzystające z puli Varchar to Odnośnik do elementu SharePoint i Wartość elementu listy SharePoint. Ich dostępność zależy od konfiguracji integracji i wariantu edytora formularza.
Typy, które nie korzystają z czterech pul
Dział zatytułowany „Typy, które nie korzystają z czterech pul”Następujące elementy formularza nie przechowują własnej wartości sprawy w żadnej z czterech pul:
- Statyczny tekst,
- Strona zewnętrzna,
- Wywołanie metody web service — typ historyczny,
- Tabela SQL,
- Kod kreskowy,
- Puste,
- Raport,
- Przyciski.
Pola systemowe procesu i etapu również nie są zwykłymi dynamicznymi polami formularza i nie wykorzystują numerowanych slotów tych pul.
Ważne wyjątki
Dział zatytułowany „Ważne wyjątki”Pole Tabela
Dział zatytułowany „Pole Tabela”Pole Tabela rezerwuje jeden slot z puli Text w procesie nadrzędnym. Wiersze tabeli są jednak odrębnymi, powiązanymi sprawami i korzystają z pul pól zdefiniowanych w procesie tabeli.
Pola korzystające z puli Number
Dział zatytułowany „Pola korzystające z puli Number”Pula Number nie służy wyłącznie do przechowywania liczb widocznych na formularzu. Dla pól Słownik, Użytkownik, Podpis, Odnośnik i Dokument slot zawiera identyfikator powiązanego elementu. Właściwe dane tego elementu są obsługiwane osobno.
Nazwa puli a typ kolumny bazy danych
Dział zatytułowany „Nazwa puli a typ kolumny bazy danych”Nazwy Varchar, Text, Number i DateTime określają logiczne pule AMODIT. Nie gwarantują jednego fizycznego typu SQL we wszystkich instalacjach. Mapowanie typów pól na pule jest takie samo dla MS SQL i MySQL, natomiast fizyczne typy kolumn mogą różnić się zależnie od silnika i historii rozbudowy wdrożenia. Szczególnym przykładem jest opisana wyżej pula Varchar, w której mogą współistnieć kolumny o ograniczonej długości i kolumny LOB.
Zmiana typu pola
Dział zatytułowany „Zmiana typu pola”Akcja Zmień typ nie pozwala wybrać pola Tabela jako typu docelowego i wymaga potwierdzenia ryzyka utraty danych. Wybór typu docelowego jest ograniczony do zmian w obrębie trzech grup:
- Tekstowe (krótki tekst), Pole walidowane, Lista wyboru i Hiperłącze;
- Numeryczne i Kwota;
- Data i Data i czas.
Pozostałych typów nie można zmienić przy użyciu tej akcji. Ograniczenie zapobiega konwersjom pól o różnym znaczeniu i strukturze danych. Przykładowo element wykonujący akcję nie zawiera informacji wymaganych przez podpis, takich jak autor podpisu; prosta zmiana etykiety typu mogłaby więc utworzyć pole wyglądające na poprawne, ale działające nieprawidłowo.
Grupy ograniczają ryzyko, lecz nie gwarantują bezstratnego zachowania wszystkich bieżących i historycznych wartości. Przed zmianą nadal trzeba zabezpieczyć dane, potwierdzić ostrzeżenie i zweryfikować wynik. Zmiany typu nie należy traktować jako metody przenoszenia danych między pulami.
Więcej o niedostępnej konwersji na pole Tabela opisuje artykuł Brak możliwości zmiany typu pola na tabelaryczny.