Ulepszenie kontrolek Gantta

Oprócz do tej pory istniejących parametrów Gantta w wersji aplikacji 82 zostały dodane nowe. Dzięki temu łatwiej można zarządzać diagramami Gantta.

Poniższa tabela przedstawia dostępne parametry ustawiane w resie gridowym oraz wersje aplikacji, od których są one dostępne.

Nazwa

Opis

Komponent/od wersji

ShowGanttResources

Określa, czy pokazać komponent ScheduleView.

GanttView: 80

ScheduleView: 80

ShowGanttTasks

Określa, czy pokazać komponent GanttView.

GanttView: 80

ScheduleView: 80

StartFieldName

Określa kolumnę, z której zostanie pobierana początkowa data zasobu.

GanttView: 80

ScheduleView: 80

EndFieldName

Określa kolumnę, z której będzie pobierana końcowa data zasobu.

GanttView: 80

ScheduleView: 80

GroupFieldName

Określa kolumnę, po której zasoby zostaną pogrupowane.

GanttView: brak

ScheduleView: 80

KeyFieldName

Określa kolumnę, z której zostanie pobrana wartość klucz unikalna dla zasobu.

GanttView: 80

ScheduleView: brak

PrevKeyFieldName

Określa kolumnę, z której zostaną pobierane klucze do zasobów powiązanych. Kolejne klucze są oddzielane średnikiem.

GanttView: 80

ScheduleView: brak

ProgressFieldName

Określa kolumnę, z której zostanie brana wartość postępu prac nad zasobem. Dozwolone są wartości z przedziału 0-100.

GanttView: 80

ScheduleView: 82

TitleFieldName

Określa kolumnę, z której zostanie pobrany tytuł zasobu.

GanttView: 80

ScheduleView: 80

ColorFieldName

Określa kolumnę, z której zostanie pobrany kolor zasobu.

GanttView: 82

ScheduleView: 82

HintFieldName

Określa kolumnę, z której zostanie pobrany opis zasobu.

GanttView: 82

ScheduleView: 82

DeadLineFieldName

Określa kolumnę, z której zostanie pobrana data przezbrojenia gniazda produkcyjnego.

GanttView: 82

ScheduleView: 82

RelationColorFieldName

Określa kolumnę, z której zostanie pobrany kolor powiązań zasobu.

GanttView: 82

ScheduleView: brak

CanChangeTimeScale

Określa, czy menu kontekstowe z wyborem skali czasu ma zostać pokazane na komponencie GanttView.

GanttView: 82

ScheduleView: brak

DefaultTimeScale

Określa domyślnie wybraną wartość skali czasu na komponencie GanttView.

GanttView: 82

ScheduleView: brak

Grid_Enabled

Określa, czy standardowy grid ma być widoczny.

GanttView: 82

ScheduleView: 82

Options

Jest to zestaw zawierający kilka właściwości:

·         egShowDayTab – określa, czy zakładka Dzień zostanie pokazana,

·         egShowWeekTab – określa, czy zakładka Tydzień zostanie pokazana,

·         egShowMonthTab – określa, czy zakładka Miesiąc zostanie pokazana,

·         egShowTimeLineTab – określa, czy zakładka Linia czasu zostanie pokazana,

·         egNavigationForCurrentDataRange – określa, czy przyciski nawigacyjne oraz kalendarz mają być zależne od wybranego zakresu danych. Domyślnie false.

GanttView: 82

ScheduleView: 82

_Gantt_Deadline

Każdy wyświetlony element oprócz daty rozpoczęcia i zakończenia może mieć również trzecią datę, tzw. datę przezbrojenia. Może to być jakiś krytyczny punkt dla danego elementu, określony czasem. Jest on przedstawiony w formie czerwonej linii na elemencie.

image002-26

Rys. Krytyczny punkt

__Gantt_Progress

Jeżeli chcemy pokazać, w jakim stopniu dane zadanie bądź zasób zostały wykonane, najlepszym rozwiązaniem jest dodanie kolumny z postępem. Jest to kolumna opcjonalna, wyświetlana w formie cienkiej zielonej linii pod nazwą elementu. Jako wartość przyjmuje liczby z zakresu od 0 do 100, określające procentowe wykonanie. Podanie liczby spoza dopuszczalnego zakresu wiąże się tylko z przyjęciem skrajnych wartości, czyli 0 bądź 100.

image003-25

Rys. Informacja o postępie

__Gantt_Color

Dla każdego wyświetlanego elementu możemy również zmienić kolor. W tym celu należy posłużyć się kolumną __Gantt_Color.

image004-25

Rys. Kolorowanie elementów

__Gantt_Hint

Domyślnie po najechaniu na element w obu kontrolkach pojawia się hint z tytułem. Można to zmienić, gdy chcemy rozszerzyć opis elementu o jakieś dane. W tym celu należy mieć kolumnę __Gantt_Hint lub w resie gridowym ustawić właściwość Gantt.HintFieldName, w którym podajemy nazwę kolumny, z której hint ma być pobierany. Od teraz, jeżeli podana właściwość zostanie ustawiona, a wartość w polu nie będzie pusta, treść wyświetlanego hinta będzie z niej pobierana, w przeciwnym wypadku zostanie ustawiony tytuł elementu.

image005-25

Rys. Podpowiedzi

__GanttTechnicalType

Jest to kolumna wykorzystywana jedynie w komponencie ScheduleView.

Podanej kolumny nie da się zmienić z poziomu resa. Jeżeli chce się skorzystać z możliwości, jakie ona daje, należy w słowniku dodać kolumnę o takiej nazwie.

Obecnie istnieje tylko jeden typ pola technicznego i jest nim kolor tła (GanttColor). Jeżeli nasz słownik posiada kolumnę __GanttTechnicalType i dany rekord w tej kolumnie ma wpisane „GanttColor”, to wtedy zostanie wyświetlony, jako kolor tła. Jeżeli wpiszemy w pole coś innego bądź pozostawimy je puste rekord zostanie wyświetlony normalnie.

image006-25

Rys. Kolorowanie tła

DefaultTimeScale i CanChangeTimeScale

Są to właściwości wykorzystywane jedynie w komponencie GanttView. Ustawia się je w resie gridowym. Jeżeli CanChangeTimeScale zostanie ustawione na false, wtedy po kliknięciu w komponencie GanttView na nagłówek z czasem nie zostanie wyświetlone pokazane poniżej menu. Domyślnie skala czasu przedstawiana na wykresie dopasowuje się automatycznie, jednak za pomocą tego menu sami możemy ustalić, jaką skalę czasu przyjmujemy. Dodatkowo, posługując się właściwością DefaultTimeScale, możemy określić, jaką skalę przyjmujemy na początku (domyślnie jest to skala automatyczna: dtsAuto).

Dostępne opcje to:

·         dtsAuto,

·         dtsHour,

·         dtsDay,

·         dtsMonth

image007-25

Rys. Możliwość zmiany skali podglądu

Dodatkowe funkcje

W celu niejako powolnego usamodzielnienia się kontrolki ScheduleView tak, aby mogła ona pracować bez widocznego grida, w wersji 82 dodano kilka drobnych elementów ułatwiających pracę.

Menu kontekstowe

Pod kontrolkę podpina się menu operacji na wierszach, dostępne z poziomu grida ze wszystkimi dostępnymi tam elementami. Jeżeli słownik posiada procedury bądź statusy, również zostaną one wyświetlone.

image008-24

Rys. Okno z menu kontekstowym

Nowa zakładka

Powstała również nowa zakładka o nazwie Linia czasu Umożliwia ona przeglądanie do 30 dni przedstawionych w jednej linii, dzięki czemu można łatwiej wyszukiwać odpowiednie terminy bądź wydarzenia. Obecnie liczba widocznych dni jest dobierana automatycznie na zasadzie najmniejszej daty początkowej(__gantt_start) i największej daty końcowej(__gantt_end) wszystkich rekordów. Jednak liczba dni nie będzie większa od 30.

image009-24

Rys. Widok Zakładki Linia czasu

Zoom

W celu bardziej precyzyjnego przeglądania elementów w czasie powstała możliwość zoomowania. Służą do tego dodatkowe przyciski z rysunkiem lupki.

image010-23

Rys. Ikony służące do powiększania i zmniejszania widoku

Powiększanie sprawia, że dane są prezentowane z większą precyzją. Wcześniej mogliśmy oglądać elementy z precyzją do kilku godzin, teraz przy odpowiednio dużym powiększeniu precyzja może wynosić nawet kilka minut.

Parametr Gantt.Options

Jest to nowy parametr ustawiany z poziomu resa

image011-23

Rys. Parametr Gant.Options

Opcje egShow… dają możliwość ukrycia odpowiednich zakładek, jeżeli nie są one wymagane. Domyślnie wszystkie dostępne zakładki są widoczne.

image012-23

Rys. Przyciski zmieniające zakres osi czasu

egNavigationForCurrentDataRange – Jest to opcja dająca możliwość blokady wyjścia poza ustalony danymi okres. Domyślnie możemy się poruszać po dowolnej dacie, przeglądając kalendarz nawet o kilkanaście lat w każdą stronę. Gdy włączymy parametr, taka możliwość zostanie zablokowana. Jeżeli dane w słowniku będą z przedziału 4.05.2015 do 7.05.2015 to będziemy mogli poruszać się tylko i wyłącznie we wskazanym przedziale czasu.

image013-22

Rys. Widok kalendarza po zablokowaniu dat spoza wyznaczonego okresu