Indywidualne indeksy

Wprowadzenie

Indeksy umożliwiają przyspieszenie operacji odczytu na podstawie określonych atrybutów. W systemach deweloperskich indeksy dla Business Objects tworzy się w aplikacji Obiekty deweloperskie. Standardowo każdy obiekt biznesowy posiada:

  • indeks na kluczu głównym (Primary Key)

  • indeks na kluczu biznesowym (Business Key)

Tworzenie indeksów w aplikacji Obiekty deweloperskie jest zazwyczaj realizowane przez programistów aplikacji. Dodanie indeksu w metadanych obiektu biznesowego skutkuje utworzeniem nowej wersji tego obiektu, która jest przekazywana do innych systemów za pomocą aktualizacji oprogramowania.

Aplikacja Indywidualne indeksy umożliwia tworzenie indeksów w dowolnym systemie, również produkcyjnym. Dzięki niej administratorzy mogą w ramach monitoringu wydajności tworzyć dodatkowe indeksy specyficzne dla danej bazy danych w celu zwiększenia wydajności.

Dzięki temu możliwe jest tworzenie indeksów dla Business Objects i Dynamic Objects bez konieczności przeprowadzania aktualizacji oprogramowania. Tak utworzone indeksy można przenosić na inne systemy za pomocą eksportu/importu.

Dynamic Objects, w przeciwieństwie do Business Objects, nie są przenoszone za pomocą aktualizacji oprogramowania. Dynamic Objects mogą być tworzone w każdej bazie danych OLTP, tzn. również w systemie produkcyjnym, bez nakładu pracy deweloperskiej. Dynamic Objects są wykorzystywane m.in. w Cechy artykułów. Dynamic Objects mogą być przechowywane w więcej niż jednej tabeli w następujących przypadkach:

  • Dynamic Objects zawiera dużą liczbę lub bardzo rozbudowane atrybuty (np. długie teksty), przez co nie mogą być zapisane w jednym wierszu tabeli
  • Dynamic Objects zawiera atrybuty wielowartościowe
Uwaga
Można użyć aplikacji Indywidualne indeksy, aby utworzyć indeksy w tabelach Dynamic Objects.

Grupa docelowa

  • Programiści aplikacji
  • Administratorzy

Opis aplikacji

Aplikacja Indywidualne indeksy służy do rejestrowania indeksów tabel. Indeksy mogą być tworzone na tabelach Business Objects i na tabelach dynamicznych Business Objects. W tym celu aplikacja jest podzielona na dwa widoki, które można zmieniać za pomocą pola Widoki na standardowym pasku narzędzi. Każdy widok składa się z nagłówka i obszaru roboczego. Po zapisaniu indywidualny indeks nie jest jeszcze fizycznie utworzony, tylko jego metadane są zapisywane w bazie danych. Indeksy indywidualne są tworzone w odpowiednich tabelach tylko za pomocą aplikacji w tle Utwórz indeksy, której uruchomienie możliwe jest za pomocą akcji [Utwórz wszystkie indeksy w statusie Przygotowane]. Aplikacja w tle generuje wszystkie indeksy indywidualne, które mają status Przygotowane. Jeśli generowanie indeksu zakończy się:

  • pomyślnie status ustawiany jest na Pomyślnie zakończone
  • błędem, status zostanie ustawiony na Nieudane

Podczas zapisywania indywidualnego indeksu status jest ustawiany na Przygotowane.

Nagłówek

Nagłówek aplikacji zawiera pola, które jednoznacznie identyfikują indywidualny indeks, a także inne dodatkowe dane. Dostępne pola:

Indeks – nazwa indeksu jednoznacznie identyfikuje indeks w bazie danych. Nazwa musi zaczynać się od litery, a następnie może składać się z liter i cyfr.

Baza danych – na liście rozwijalnej dostępne są wszystkie bazy danych powiązane z systemem. Za jego pomocą dokonuje się wyboru, w której bazie danych ma zostać utworzony indeks.

Obiekt biznesowy – pole dostępne w widoku Obiekty biznesowe zawiera nazwę obiektu biznesowego, na którego tabeli ma zostać utworzony indeks.

Obiekt dynamiczny – pole dostępne w widoku Dynamiczne obiekty biznesowe zawiera nazwę dynamicznego obiektu biznesowego, na którego tabeli ma zostać utworzony indeks.

Komentarz – opis celu utworzenia indeksu indywidualnego.

Typ – indeksy typu Standard są tworzone za pomocą okna otwartego za pomocą opcji Dodaj/usuń atrybuty indeksu.

Typ Specyficzne dla bazy danych umożliwia edycję pól Polecenie-SQL na zakładkach bazy danych. Użytkownik może tutaj określić polecenie utworzenia indeksów w składni SQL.

Tabela – wyświetla nazwę tabeli wybranego obiektu biznesowego/dynamicznego obiektu biznesowego.

Generowanie – wskazuje status generowania indeksu indywidualnego. Dostępne są następujące statusy:

  • Przygotowane – indeks indywidualny otrzymuje ten status, gdy zostanie zapisany
  • Pomyślnie zakończone– indeks indywidualny został pomyślnie wygenerowany na odpowiedniej tabeli
  • Nieudane – wystąpił błąd podczas tworzenia indeksu na tabeli

Obszar roboczy

Obszar roboczy składa się z kilku zakładek. Zakładki zachowują się różnie w zależności od wybranego typu indeksu. Dla typu indeksu Standard, indeks jest definiowany na pierwszej zakładce poprzez wybranie odpowiedniego atrybutów indeksu. Pozostałe zakładki wyświetlają instrukcje SQL do tworzenia indeksów zdefiniowanych przez wybór atrybutów. Jeśli wybrano typ indeksu Specyficzne dla bazy danych, pole Polecenie-SQL można edytować na zakładkach dla obsługiwanych baz danych, a instrukcję SQL do generowania żądanego indeksu można wprowadzić bezpośrednio za pomocą poleceń specyficznych dla bazy danych.

Zakładka Atrybuty indeksu

Zakładka składa się z listy zawierającej pola, z których powinien składać się indeks. Kolejność pól od góry do dołu określa również kolejność pól w indeksie wynikowym. Przycisk [Dodaj/usuń atrybuty indeksu] otwiera okno dialogowe z listą wszystkich kolumn tabeli. Kolumny, które mają być użyte jako atrybuty indeksu, są wybierane za pomocą pola wyboru.

Na liście dostępne są poniższe przyciski:

[Dodaj/usuń atrybuty indeksu] – otwiera okno dialogowe z listą kolumn tabeli. Atrybuty indeksu mogą być dodawane lub usuwane za pomocą pól wyboru w wierszach.

[Przenieś pole na ostatnią pozycję] – jeśli wiersz zostanie zaznaczony na liście, zostanie on przeniesiony na ostatnią pozycję.

[Przenieś pole w indeksie jedną pozycję niżej] – jeśli na liście zostanie wybrany wiersz, zostanie on przesunięty o jedną pozycję w dół. W przypadku gdy wiersz znajduje się już na ostatniej pozycji, pozostanie na niej.

[Przesuń pole w indeksie o jedną pozycję wyżej] – jeśli na liście zostanie wybrany wiersz, zostanie on przesunięty o jedną pozycję w górę. Jeśli wiersz znajduje się już na pierwszej pozycji, pozostanie na niej.

[Przenieś pole na pierwszą pozycję] – jeśli wiersz zostanie zaznaczony na liście, zostanie przeniesiony na pierwszą pozycję.

[Zmień kolejność sortowania] – zmienia kolejność sortowania wybranego atrybutu. Jeśli kolejność sortowania była malejąca, po wykonaniu akcji będzie ona rosnąca.

Okno dialogowe Atrybuty Business Object i Atrybuty dynamicznego Business Object

Okna dialogowe Atrybuty Business Object oraz Atrybuty dynamicznego Business Object mają taką samą strukturę. Zawierają listę wszystkich kolumn tabeli wybranego obiektu biznesowego lub dynamicznego obiektu biznesowego. Każdy wiersz posiada pole wyboru, które może być użyte do dodania odpowiednich kolumn tabeli do indeksu jako atrybut indeksu. Jeśli pole wyboru jest zaznaczone, okno dialogowe zostanie zamknięte po wybraniu przycisku [Zastosuj], a wybrane kolumny tabeli zostaną dodane do listy atrybutów indeksu.

Lista zawiera następujące kolumny

Nazwa atrybutu – nazwa atrybutu obiektu biznesowego lub dynamicznego obiektu biznesowego.

Kolumna – nazwa odpowiedniej kolumny tabeli

Etykieta – etykieta atrybutu. W związku z tym, że mogą istnieć atrybuty, które nie są wyświetlane w interfejsie, wpis może być pusty.

Pierwotny typ danych – prymitywny typ danych atrybutu.

Zakładki specyficzne dla bazy danych

Istnieje zakładka dla każdej bazy danych obsługiwanej przez Comarch ERP Enterprise. Zakładki te posiadają tylko jedno pole dla instrukcji SQL.

Jeśli wybrano typ indeksu Domyślny, pola nie są edytowalne i wyświetlają instrukcję SQL, która została zdefiniowana za pomocą listy na zakładce Atrybuty indeksu. Jeśli wybrano typ indeksu Specyficzne dla bazy danych, pola można edytować, a do tworzenia indeksów można używać poleceń dedykowanych dla bazy danych. Jeśli pola zostały już dodane do indeksu na pierwszej zakładce, lista atrybutów indeksu zostanie usunięta.

Poprzednio wygenerowana instrukcja SQL pozostaje i może być użyta jako szablon. Ponieważ instrukcja SQL wprowadzona przez użytkownika nie jest sprawdzana w aplikacji, można uniknąć błędów w pisowni pól, jeśli żądane atrybuty zostały wcześniej dodane do listy atrybutów, a następnie wybrano typ indeksu Specyficzne dla bazy danych.

Zakładka Wszystkie indeksy

Zakładka zawiera listę, która wyświetla wszystkie istniejące indeksy w tabeli obiektu biznesowego lub dynamicznego obiektu biznesowego. Lista jest uzupełniana za pomocą przycisku [Aktualizuj] dostępnego na tej zakładce. W widoku Obiekt biznesowy należy w polu Obiekt biznesowy wybrać odpowiedni obiekt biznesowy, dla którego mają zostać wyświetlone istniejące indeksy tabeli.
W widoku Dynamiczne obiekty biznesowe należy w polu Tabela wybrać tabelę, której indeksy mają być pokazane. Lista zawiera następujące kolumny:

Indeks – nazwa indeksu wybranej tabeli.

Atrybuty indeksu– lista wszystkich atrybutów indeksu.

4 Akcja [Utwórz wszystkie indeksy w statusie Przygotowane]

Aplikacja w tle Utwórz indeksy jest uruchamiana za pomocą przycisku [Utwórz wszystkie indeksy w statusie Przygotowane] na standardowym pasku narzędzi. Tworzy ona indeksy na odpowiednich tabelach ze wszystkich indywidualnych indeksów w stanie Przygotowane. Jeśli generowanie zakończyło się powodzeniem, status jest ustawiany na Pomyślnie. W przypadku błędu status jest ustawiany na Nieudane.

Konfiguracja

W aplikacji Konfiguracja nie występują dedykowane parametry dla aplikacji Indywidualne indeksy.

Jednostki biznesowe

Aplikacja Indywidualne indeksy jest powiązana z jednostką biznesową: com.cisag.sys.dictionary.obj.TableIndexExtension, która może być używana do:

  • przydzielania uprawnień

  • konfigurowania definicji działań

  • importowania lub eksportowania danych

Autoryzacje

Uprawnienia mogą być nadawane za pomocą ról uprawnień lub przypisania do organizacji. Szczegółowe informacje znajdują się w artykule Uprawnienia.

Uprawnienia specjalne

Dla aplikacji Indywidualne indeksy nie posiada żadnych specjalnych uprawnień.

Przyporządkowania organizacji

Aplikacja Indywidualne indeksy nie wymaga przypisania do organizacji.

Specjalne możliwości

Aplikacja Indywidualne indeksy nie posiada specjalnych możliwości.

Uprawnienia dla partnerów biznesowych

Aplikacja Indywidualne indeksy nie jest dostępna dla partnerów biznesowych.

Instrukcje

Tworzenie indeksu indywidualnego typu Domyślny

  1. Uruchomić aplikację Indywidualne indeksy
  2. Na standardowym pasku narzędzi wybrać przycisk [Nowy].
  3. W polu Indeks należy wprowadzić nazwę indeksu.
  4. W polu Baza danych wybrać odpowiednią bazę danych, w której znajduje się tabela, dla której ma zostać utworzony indeks.
  5. W polu Obiekt biznesowy wprowadź wybrany obiekt biznesowy, dla którego w tabeli ma zostać utworzony indeks.
  6. Na zakładce Atrybuty indeksu nad listą wybierać przycisk [Dodaj/usuń atrybuty indeksu]. Otwarte zostanie okno Atrybuty Business object.
  7. Zaznaczyć na liście pola wyboru atrybutów, które mają być uwzględnione w indeksie.
  8. Wybrać przycisk [Zastosuj]. Wybrane pola dodane zostaną do listy na zakładce Atrybuty indeksu
  9. Za pomocą przycisków: [Przenieś pole na ostatnią pozycję]/[Przenieś pole w indeksie jedną pozycję niżej]/[Przesuń pole w indeksie o jedną pozycję wyżej]/[Przenieś pole na pierwszą pozycję] ustalić kolejność.
  10. W razie potrzeby użyć akcji listy [Zmień kolejność sortowania], aby zmienić kolejność sortowania odpowiednich atrybutów indeksu.
  11. Wybrać przycisk [Zapisz] na standardowym pasku narzędzi.
Uwaga
Podczas zapisywania do bazy danych zapisywane są tylko metadane, indeksy nie są jeszcze tworzone. Są one tworzone za pomocą akcji dostępnej na standardowym pasku narzędzi: związanej z aplikacją Utwórz wszystkie indeksy w stanie Przygotowane.

Tworzenie indywidualnego indeksu typu Specyficzny dla bazy danych

  1. Uruchomić aplikację Indywidualne indeksy
  2. Na standardowym pasku narzędzi wybrać przycisk [Nowy].
  3. W polu Indeks należy wprowadzić nazwę indeksu.
  4. W polu Baza danych wybrać odpowiednią bazę danych, w której znajduje się tabela, dla której ma zostać utworzony indeks.
  5. W polu Obiekt biznesowy wprowadź wybrany obiekt biznesowy, dla którego w tabeli ma zostać utworzony indeks.
  6. W polu Typ wybrać opcję Specyficzny dla bazy danych
  7. Pole Polecenie-SQL na zakładce bazy danych mogą być edytowane. 
  8. Należy wybrać odpowiednią zakładkę np. Server SQL.
  9. wprowadzić instrukcję SQL w polu Polecenie-SQL.
  10. Wybierać przycisk [Zapisz] na standardowym pasku narzędzi.
Uwaga
Podczas zapisu do bazy danych zapisywane są tylko metadane, a indeksy nie są jeszcze tworzone. Są one tworzone poprzez akcję związaną z akcją Generuj wszystkie indeksy ze statusem „Przygotowane”.

Czy ten artykuł był pomocny?