Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Harmonogram

Podsumowanie:

W sekcji typu harmonogram można zdefiniować interaktywną tabelę do wyświetlania danych (zdarzeń) w siatce dowolnie definiowanych wierszy i kolumn.

Skonfigurowanie harmonogramu wymaga określenia ustawień w oknie dialogowym Ustawienia sekcji oraz akcji dla czynności wykonywanych przez użytkownika w ramach interakcji z harmonogramem. Do tych interakcji należą: kliknięcie prawym przyciskiem myszy komórki w harmonogramie, zmiana zakresu zdarzenia przez przeciągnięcie obramowania zdarzenia, przeniesienie zdarzenia w inne miejsce na harmonogramie (przeciągnięcie z wciśniętym lewym przyciskiem myszy i lewym klawiszem ALT), zaznaczanie komórek harmonogramu przez klikanie lewym przyciskiem z wciśniętym przyciskiem CTRL.

Informacje o zaznaczonym zdarzeniu i/lub zaznaczonych komórkach są dostępne w kontekście formularza jako obiekt KodSekcji_SelectedEvent oraz jako tablica KodSekcji_SelectedCells, jak na ilustracji poniżej.

Informacje o zdarzeniu i zaznaczonych komórkach (komórka wyróżniona kolorem zielonym) w kontekście formularza
Informacje o zdarzeniu i zaznaczonych komórkach (komórka wyróżniona kolorem zielonym) w kontekście formularza

Ustawienia sekcji

Na panelu właściwości sekcji typu harmonogram kliknij przycisk Ustawienia sekcji i określ ustawienia w wyświetlonym oknie dialogowym:

  • Wysokość: określa wysokość harmonogramu w sekcji, domyślnie auto.
  • Podział komórki w osi X: określa na ile części mają być dzielone komórki harmonogramu w poziomie, domyślnie 1.
  • Podział komórki w osi Y: określa na ile części mają być dzielone komórki harmonogramu w pionie, domyślnie 1.
  • Domyślny kolor komórki: kolor pojedynczej komórki w harmonogramie, domyślnie #fff.
  • Wysokość komórki: wysokość pojedynczej komórki w harmonogramie, domyślnie 60px.
  • Szerokość komórki: szerokość pojedynczej komórki w harmonogramie, domyślnie 150px.
  • Kolor nagłówka kolumny: kolor nagłówka kolumny, domyślnie ‘#e1edef’.
  • Kolor nagłówka wiersza: kolor nagłówka wiersza, domyślnie ‘#e1edef’.
  • Wysokość nagłówka kolumny: wysokość nagłówka kolumny, domyślnie 60px.
  • Szerokość nagłówka wiersza: szerokość nagłówka wiersza, domyślnie 100px.
  • Wartość nagłówka przecinającego: tekst wyświetlany dla nagłówka przecinającego kolumny z wierszami, domyślnie pusty.
  • Przenoszenie zdarzeń: zezwala na przenoszenie zdarzeń w harmonogramie metodą drag & drop (z wciśniętym lewym klawiszem ALT), domyślnie wyłączone.
  • Zmiana rozmiaru zdarzenia w osi X: jeśli przełącznik jest włączony, po najechaniu kursorem myszy na pionową krawędź obramowania komórki zdarzenia jest wyświetlana strzałka zmiany rozmiaru, a przy próbie zmiany rozmiaru jest wykonywana akcja przypisana we właściwości Akcje dla zmiany rozmiaru; jeśli komórki harmonogramu mają włączony podział w osi X, możliwa jest zmiana zakresu zdarzenia w tej osi w obrębie jednej komórki, aby można było zwiększyć zakres zdarzenia na sąsiednie kolumny, musi być włączony przełącznik Rozciągaj zdarzenia dla kilku wierszy.
  • Zmiana rozmiaru zdarzenia w osi Y: jeśli przełącznik jest włączony, po najechaniu kursorem myszy na poziomą krawędź obramowania komórki zdarzenia jest wyświetlana strzałka zmiany rozmiaru, a przy próbie zmiany rozmiaru jest wykonywana akcja przypisana we właściwości Akcje dla zmiany rozmiaru; jeśli komórki harmonogramu mają włączony podział w osi Y, możliwa jest zmiana zakresu zdarzenia w tej osi w obrębie jednej komórki, aby można było zwiększyć zakres zdarzenia na sąsiednie wiersze, musi być włączony przełącznik Rozciągaj zdarzenia dla kilku wierszy.
  • Zmiana rozmiaru zdarzenia w osi Y: zezwala na zmianę zakresu zdarzenia w pionie (wiersze), domyślnie wyłączone.
  • Rozciągaj zdarzenia dla kilku kolumn: pozwala zwiększać zakres zdarzenia na sąsiednie kolumny, przeciągając myszą pionową krawędź obramowania komórki.
  • Rozciągaj zdarzenia dla kilku wierszy: pozwala zwiększać zakres zdarzenia na sąsiednie wiersze, przeciągając myszą poziomą krawędź obramowania komórki.
  • Wyświetlaj nagłówki kolumn: włącza/wyłącza wyświetlanie nagłówków kolumn.
  • Wyświetlaj nagłówki wierszy: włącza/wyłącza wyświetlanie nagłówków wierszy.
  • SQL dla kolumn: zapytanie SQL zwracające nagłówki kolumn harmonogramu; w zapytaniu należy zwrócić następujące kolumny:
    • displayValue (string): wymagane; kod HTML renderowany jako tekst w nagłówku kolumny,
    • value (dowolny typ): wymagane; wartość identyfikująca kolumnę, do której przypisane jest zdarzenie,
    • background (string): opcjonalne; szesnastkowy kod koloru tła nagłówka kolumny, np. #facc3a,
    • width (string): opcjonalne; szerokość kolumny z dopiskiem jednostki, np. 300px.
      SELECT
      CONCAT('<span class="m-0 text-center"><p>', d.[Name],'</p><p>',Format(d.[Date],'yyyy-MM-dd'),'</p></span>',
      '<p class="m-0 text-center font-weight-bold text-danger" data-toggle="tooltip" data-placement="bottom" title="''">''</p>'
      ) AS displayValue,
      d.[Date] AS value
      FROM (VALUES
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 0), 'Poniedziałek'),
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 1), 'Wtorek'),
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 2), 'Środa'),
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 3), 'Czwartek'),
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 4), 'Piątek'),
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 5), 'Sobota'),
      (DATEADD(wk, DATEDIFF(wk, 0, @DataStart), 6), 'Niedziela')
      ) AS d ([Date], [Name])
      
  • SQL dla wierszy: zapytanie SQL zwracające nagłówki wierszy harmonogramu; w zapytaniu należy zwrócić następujące kolumny:
    • displayValue (string): wymagane; kod HTML renderowany jako tekst w nagłówku wiersza,
    • value (dowolny typ): wymagane; wartość identyfikująca wiersz, do którego przypisane jest zdarzenie,
    • headerBackground (string): opcjonalne; szesnastkowy kod koloru tła nagłówka wiersza, np. #facc3a,
    • background (string): opcjonalne; szesnastkowy kod koloru tła komórek wiersza, np. #facc3a,
    • height (string): opcjonalne; wysokość wiersza z dopiskiem jednostki, np. 300px.
  • SQL dla zdarzeń: zapytanie SQL zwracające dane umożliwiające prawidłowe wyświetlenie zdarzeń w harmonogramie; w zapytaniu należy zwrócić następujące kolumny:
    • id (dowolny typ): wymagane; identyfikator zdarzenia,
    • column (dowolny typ): wymagane; kolumna, do której przypisano zdarzenie (value z zapytania dla kolumn),
    • columnSpan (number): opcjonalne; liczba kolumn, które pokrywa zdarzenie; domyślnie 1,
    • row (dowolny typ): wymagane; wiersz, do którego przypisano zdarzenie (value z zapytania dla wierszy),
    • rowSpan (number): opcjonalne; liczba wierszy, które pokrywa zdarzenie; domyślnie 1,
    • startDivisionX (number): indeks pierwszej subkomórki w pierwszej komórce zdarzenia; określa początek zdarzenia w osi X w przypadku włączenia podziału komórek w osi X; przyjmuje wartości od 1 do n, gdzie n to wartość ustawienia Podział komórki w osi X,
    • endDivisionX (number): indeks ostatniej subkomórki w ostatniej komórce zdarzenia; określa koniec zdarzenia w osi X w przypadku włączenia podziału komórek w osi X; przyjmuje wartości od 1 do n, gdzie n to wartość ustawienia Podział komórki w osi X,
    • startDivisionY (number): indeks pierwszej subkomórki w pierwszej komórce zdarzenia; określa początek zdarzenia w osi Y w przypadku włączenia podziału komórek w osi Y; przyjmuje wartości od 1 do n, gdzie n to wartość ustawienia Podział komórki w osi Y,
    • endDivisionY (number): indeks ostatniej subkomórki w ostatniej komórce zdarzenia; określa koniec zdarzenia w osi Y w przypadku włączenia podziału komórek w osi Y; przyjmuje wartości od 1 do n, gdzie n to wartość ustawienia Podział komórki w osi Y,
    • displayValue (string): wymagane; kod HTML renderowany jako opis zdarzenia,
    • background (string): wymagane; szesnastkowy kod koloru tła komórki zdarzenia, np. #facc3a,
    • border (string): opcjonalne; obramowanie komórki zdarzenia, podawane jako CSS, np. 1px #d4d4d4 solid,
    • resizeLocked (bit): opcjonalne; blokada zmiany rozmiaru zdarzenia; domyślnie 0,
    • moveLocked (bit): opcjonalne; blokada przenoszenia zdarzenia; domyślnie 0,
    • isEmptyEvent (bit): opcjonalne; identyfikator zdarzenia „pustej” komórki, umożliwia przypisanie akcji we właściwości Akcja dla pustego zaznaczenia.
      SELECT 
      f.Id AS [id], 
      f.MachineId AS [column], 
      DATEADD(
      dd, 
      DATEDIFF(dd, 0, f.[FailureDate]), 
      0
      ) AS [row], 
      '#fac0d4' AS [background], 
      CONCAT(
      '<p class="m-0 text-center">', f.Description, 
      ' (', f.Code, ')', '</p>'
      ) AS displayValue 
      FROM 
      dev.MachineFailures AS f
      

Akcje harmonogramu

Aby prawidłowo korzystać z harmonogramu, należy skonfigurować zestaw akcji wykonywanych podczas interakcji użytkownika z harmonogramem:

  • Akcje dla pustego zaznaczenia: akcje wykonywane po kliknięciu pustej komórki prawym przyciskiem myszy i wybraniu nazwy akcji do wykonania; na przykład zapytanie SQL dodające wpis do tabeli zdarzeń harmonogramu z nowym zdarzeniem:
    INSERT INTO [dbo].[ZdarzeniaHarmonogramu] (
    TypZdarzenia, Opis, Zakres, DataWykonania
    ) 
    values 
    (
      {& Testy.Dictionaries.EventsTypes.MyEvent}, 
      {@_Section_Description}, 
      {@_Section_Scope}, 
      {@_Section_Date}
    )
    
  • Akcje dla zdarzeń: akcje wykonywane po kliknięciu komórki zdarzenia prawym przyciskiem myszy i wybraniu nazwy akcji do wykonania; może to być na przykład akcja Otwórz formularz, która otworzy formularza z informacjami o zdarzeniu; identyfikator bieżącego zdarzenia należy wskazać w akcji za pomocą zmiennej {@KodSekcjiHarmonogramu_SelectedEvent.Id} wpisanej w polu dla opcji wskazany dokument.

  • Akcje dla zmiany rozmiaru: akcje wykonywane po zmianie rozmiaru zdarzenia, np. akcja aktualizacji informacji o nowym zakresie zdarzenia.

  • Akcje dla przenoszenia: akcje wykonywane po przeniesieniu zdarzenia metodą drag & drop.
|← Sekcja Załączniki - podgląd |↑ Do góry |→ Sekcja HTML |

Copyright © 2025 OPTEAM SA. Theme Copyright © 2017-2020 Patrick Marsceill. Distributed by an MIT license.