Przewodnik pokazuje jak zimplementować rozwiazanie w pustej witrynie Sharepoint 2010 Foundation
STRONY APLIKACJI
Utworzenie biblioteki przechowujacej strony aplikacji
Usuwamy z niej domyślnie utworzone strony i tworzymy następujace
- Strona główa
- Rejestracja zgłoszenia
- Dyspozycja zgłoszenia
- Obsługa zgłoszenia
- Złoszenie użytkownika
- Lista zgłoszeń użytkownika
DEFINICJA LIST
Pojedyncza instancja aplikacji (może być ich wiele obsługujących różne obszary działalności) wymaga zdefiniowania czterech list, których szablony zostały zdefiniowane w rozwiązaniu.
Rozpoczynamy od utworzenia listy, która będzie zawierała zgłoszenia korzystając z szablonu HelpDesk - Request i nazywamy ją Zgłoszenia
Następnie tworzymy listę dysponentów zgłoszeń na podstawie szablonu HelpDesk - Manager o nazwie Dysponenci
Potem listę personelu obsługującego zgłoszenia poprzez szablon HelpDesk - Staff o nazwie Personel
I czas na ostatnią z list, zawierająca konfigurację instancji aplikacji z szablonu HelpDesk - Config, którą nazwiemy Konfiguracja
Po poprawnym utworzeniu list w zawartości witryny powinny nam się one pokazać na liście
W związku z tym, że w szablonach nie jest możliwe zdefiniowanie powiązań między nieistniejącymi jeszcze listami konieczne jest ręczne dokonanie modyfikacji listy Personel. Przechodzimy do ustawień listy Personel
Usuwamy tekstowe pole Kategoria zgłoszeń. Po jego usunięciu tworzymy nową kolumnę o nazwie RequestType typu odnośnik do listy dysponentów i podpinamy pole Kategoria zgłoszeń. Dlaczego ważna jest nazwa "RequestType"? Aplikacja odczytuje pola po StaticName i taka nazwa dla tego pola jest zdefiniowana w aplikacji. W przypadku podania innej nazwy kolumny aplikacja nie będzie działać prawidłowo.
Po dodaniu nowej kolumny zmieniamy teraz jej nazwę (nie powoduje to zmiany StaticName) na Kategoria zgłoszeń i ustawiamy na Wymagane.
Po czym powinniśmy uzyskac następującą definicję kolumn.
KONFIGURACJA INSTANCJI
Kiedy już listy zostały utworzone, nalezy skonfigurować instancję aplikacji. przechodzimy do listy Konfiguracja, dodajemy nowy element i uzupełniamy go odpowiednimi wartościami. W ostatnie dwa pola to linki do stron, na których będą wstawione Webpart'y dysponenta i serwisant. To nasze wcześniej utworzone strony: Dyspozycja zgłoszeń i Obsługa zgłoszenia. Linki do nich w przypadku mojej witryny to:
- http://sharepoint/sites/devpl/Aplikacja HelpDesk/Dyspozycja zgłoszeń.aspx
- http://sharepoint/sites/devpl/Aplikacja HelpDesk/Obsługa zgłoszenia.aspx
Pozostało nam jescze zdefiniować dysponentów zgłoszeń dodając odpowiednie elementy na liście Dysponenci. jak widać na przykładzie do jedna osoba może być przydzielona do wielu kategorii.
Teraz można przystąpić do definicji personelu obsługującego zgłoszenia. Jeżeli dysponent będzie realizował zgłoszenia to równiez powinien znaleźć się na tej liście.
WSTAWIENIE WEBPART'ÓW NA STRONACH APLIKACJI
W skład aplikacji wchodzi pięć WebPartów, które wstawiamy na wcześniej utworzone strony aplikacji
- Rejestracja zgłoszenia - OperatorRequest
- Dyspozycja zgłoszenia - ManagerRequest
- StaffRequest - Obsługa zgłoszenia
- UserRequest - Złoszenie użytkownika
- UserListRequest - Lista zgłoszeń użytkownika
Utworzona strona powinna wyświetlac następującą zawartość
Każdy z Webpart'ów wymaga konfiguracji w sekcji Różne, czyli wskazania witryny gdzie przechowywane
są dane oraz nazwę listy konfiguracyjnej. W moim przypadku są to poniższe wartości
HelpDesk site url: http://sharepoint/sites/devpl
HelpDesk configuration list name: Konfiguracja
Należałoby jeszcze zmienić wartość pola tytuł na bardziej przyjazną
Po prawidłowym ustawieniu właściwości Webpart'a i ponownym otworzeniu strony wyświetlony zostanie formularz rejestracji zgłoszenia dla operatora.
Jak można zauważyć pole Typ zgłoszenia na formularzu wypełniane jest zawartością listy Dysponenci. W ten sam sposób postępujemy z pozostałymi Webpart'ami, czyli wstawiamy na odpowiednią stronę i ustawiamy właściwości.
Po zakończeniu tego etapu aplikacja jest poprawnie zaimplementowana w witrynie.
Teraz możliwe jest ustawienie odpowienich uprawnień do stron aplikacji oraz list. Zalecam ustawienie dla list aplikacji tylko uprawnień czytania (aplikacja używa konta systemowego do pracy z listami).
Webpart'y użytkownika UserRequest i UserListRequest mogą być nawet osadzone w innej witrynie i też będą poprawnie zapisywac zgłoszenia. Ale w takim przypadku w witrynie aplikacji MUSZĄ być dodani Ci użytkownicy choćby bez żadnych uprawnień, gdyż tego wymaga architektura sharepoint'a.
DEFINICJE SZABLONÓW LIST
HelpDeskRequest
DisplayName | Type | StaticName | Name |
---|---|---|---|
Tytuł | Text | Title | Title |
Czas zgłoszenia | Datetime | RegisterTime | RegisterTime |
Zgłaszający | User | Notifier | Notifier |
Typ zgłoszenia | Text | RequestType | RequestType |
Priorytet | Choice | Priority | Priority |
(1) wysoki, *(2) normalny, (3) niski | |||
Status | Choice | Status | Status |
*przyjęte, przydzielone, w toku, zakończone, anulowane | |||
Opis | Note | Description | Description |
Dysponent | User | Manager | Manager |
Serwisant | User | Staff | Staff |
Czas przydzielenia | Datetime | AssignTime | AssignTime |
Uwagi | Note | Note | Note |
Czas zakończenia | Datetime | DoneTime | DoneTime |
HelpDeskManager
DisplayName | Type | StaticName | Name |
---|---|---|---|
Kategoria zgłoszeń | Text | Title | Title |
Osoba | User | Manager | Manager |
HelpDeskStaff
DisplayName | Type | StaticName | Name |
---|---|---|---|
Nazwa | Text | Title | Title |
Osoba | User | Staff | Staff |
Kategoria zgłoszeń | Text | RequestType | RequestType |
List: HelpDeskManager |
HelpDeskConfig
DisplayName | Type | StaticName | Name |
---|---|---|---|
Site url | Text | Site | Site |
Lista zleceń | Text | ListRequest | ListRequest |
Lista dysponentów | Text | ListManager | ListManager |
Lista serwisantów | Text | ListStaff | ListStaff |
System email | Text | SystemEmail | SystemEmail |
Webpart dysponenta | Text | ManagerUrl | ManagerUrl |
Webparta serwisanta | Text | StaffUrl | StaffUrl |