JSLink

Piszac na tym blogu juz prawie osiem lat, nigdy nawet nie dotknalem tematu SharePointa. Na zaawansowanych zagadnieniach sie nie znam a niezaawansowane... wlasnie. To jest dla mnie prawdziwa sila tego narzedzia, ze gdy ktos zna strone biznesowa, to majac do dyspozycji konto na SharePoincie z kwestiami informatycznymi jakostam sobie poradzi. Obojetne czy pracuje jako ochroniarz, jako project manager czy jako asystentka ksiegowej. Dla wszystkich tych ról osobiscie widzialem naprawde ladne i ciekawe rozwiazania zbudowane wlasnorecznie przez tak zwany "biznes" i dzialajace dokladnie tak, jak trzeba. Bez analityków, programistów, testerów i tym podobnych. Wystarczylo pokazac o co chodzi w SharePoincie, czasem niedlugie szkolenie zapewnic i gotowe. Mozna tworzyc.

Oczywiscie, przygotowanie tego Sharepointa to nie jest drobiazg i biegly spec IT sie przyda, ale w czasach rozwiazan chmurowych i Office 365, nie jest to az takie trudne jak kiedys.

Przyznam sie bez bicia, ze ja jestem wlasnie takim uzytkownikiem, który zna potrzebe, ma do dyspozycji Office 365 i costam dlubie. Po troche, raz wiecej raz mniej, udoskonalajac i doszlifowujac. A dane sobie zyja w chmurze i pracuja. Proste rzeczy umiem wyklikac w przegladarce ale czasem uruchamialem SharePoint Desinger. Mimo calej potegi Designera, tak naprawde tylko w jednym celu: zeby zaaplikowac do list warunkowe formatowanie. Bo na przyklad przekroczone daty swiecace sie na czerwono sa znacznie lepsze niz te same daty ginace w dlugiej liscie. A potem nadszedl SharePoint 2013. I wsród wielu zmian, najmocniej odczulem wlasnie te, ze samodzielne wyklikanie warunkowego formatowania przestalo byc mozliwe. Przynajmniej dla mnie. Oczywiscie juz stworzone zasady warunkowego formatowania swietnie dzialaly, ale nowych zrobic nie umialem. Mozna bylo radzic sobie z widokami, Excelem sie wspomagac czy kombinowac na jeszcze inne sposoby. Ale prostego formatowania warunkowego juz nie ma.

I tak sobie dalej rózne rzeczy udoskonalalem az zupelnie przypadkiem trafilem na wlasciwosc JSLink. Zeby do niej dotrzec, nalezy:

  • Otworzyc Site w Designerze
  • Otworzyc pozadany widok
  • Przejsc w tryb zaawansowany
  • Zaznaczyc modyfikowany webpart i otworzyc jego wlasciwosci
  • Wskazac swój plik zawierajacy skrypt, który w locie zmieni HTML. Za namowa madrzejszych ode mnie umiescilem skrypt w ~site/_catalogs/masterpage/

 

jsl

 

W skrypcie trzeba posluzyc sie javascriptem. Nie jest to ani mój ulubiony jezyk ani nie moge powiedziec, ze go znam, ale napisanie prostego warunku i sposobu modyfikacji wyswietlanej listy nie powinno przekraczac mozliwosci kogos, kto choc raz w zyciu swiadomie uzyl javascriptu na swojej stronie internetowej. Oczywiscie nie jest to zupelnie intuicyjne, ale skoro ja sobie z tym poradzilem (a ponizsze trzy linijki to mój najdluzszy javascript w karierze), to pewnie i inni dadza rade. Trzeba tylko koniecznie znac nazwy kolumn w liscie, ale i to nie jest specjalnie skomplikowane.

jsl2

Zastanawiam sie caly czas, co sadzic o mozliwosciach JSLink w porównaniu z dostepnym w wersji 2010 formatowaniem warunkowym. Z jednej strony, w zamian za proste narzedzie dostajemy mechanizm duzo bardziej elastyczny i potezny. Z drugiej – potezne mozliwosci wiaza sie ze zlozonoscia i nie jest to juz cos, w co klikna sobie pracownicy biurowi "dopieszczajac" swoje biznesowe widoki na firmowym portalu. Nie wiem sam. Po prostu teraz jest inaczej i pozostaje sie nowego nauczyc. Wystarczy dowolnej wyszukiwarki zapytac, zeby prosto zobaczyc, ze naprawde ladne (i zaawansowane) rzeczy mozna dzieki temu mechanizmowi wystrugac.

Autor: Grzegorz Tworek [MVP]

PS Nie to, zebym nie ufal w czyjakolwiek bieglosc w SharePoincie, ale niesmialo sugeruje, zeby pierwsze podejscia do JSLink wykonac na kopii standardowych plików. Otwiera sie je równie latwo, a przezorny zawsze bezpieczniejszy.