SharePoint XSL Conditional Formatting for custom lists

Given that users are familiar with Microsoft Office Excel applications, find it absolutely normal to use conditional formatting in SharePoint lists.

In fact, SharePoint lists are web pages that cannot be formatted as easy as in Excel. Most experts recommend three methods of formatting lists custom: JS scripts, XSL styles or acquisition of specialized applications.

Script on which I propose is based on XSL style and is customizable for both the SharePoint site of on-premises and for Office 365.

The script also contains many formatting of the default SharePoint designated to improve the end users experience, but it can make more improvements.

Custom list structure:

clip_image002

You have to use in XSL the internal name of columns:

If you want to identify the internal names of columns you have to use a custom XSL with the template:

<xsl:template match=”/” xmlns:x=”http://www.w3.org/2001/XMLSchema”>

<!– Defining variable userd for all records from a Links list –>
<xsl:variable name=”Rows” select=”/dsQueryResponse/Rows/Row” />
   
<!– Display the list as a unsorted list. Also you can choose to create a table. –>   
<ul>
    <xsl:for-each select=”$Rows”>
    <!– Extract the columns of an object. –>
        <li>
            <xsl:for-each select=”@*”>
                <xsl:value-of select=”name()” /> |
            </xsl:for-each>   
        </li>
    </xsl:for-each>
</ul>
</xsl:template>

 

If you want to test my script into a test development you can download it from the address: https://gallery.technet.microsoft.com/XSL-Conditional-Formatting-576f55bd

Internal Names of the columns in this sample:

ID | PermMask | FSObjType | Title | FileLeafRef | FileLeafRef.Name | FileLeafRef.Suffix | Created_x0020_Date | Created_x0020_Date.ifnew | FileRef | FileRef.urlencode | FileRef.urlencodeasurl | File_x0020_Type | HTML_x0020_File_x0020_Type.File_x0020_Type.mapall | HTML_x0020_File_x0020_Type.File_x0020_Type.mapcon | HTML_x0020_File_x0020_Type.File_x0020_Type.mapico | ContentTypeId | Stock | Stock. | SS | SS. | RS |

  • ProductName = Title
  • Stock = Stock
  • Safety Stock = SS
  • Required Supply = RS – calculated column. Formula: =IF([Safety Stock]-Stock>0;[Safety Stock]-Stock;0)
    Depending your locale the formula could be different. Replace ”;” character with ”,”. Also the internal name could be different.

To proceed to the following steps, you have to be sure that you have appropiate permissions.

Test steps:

  1. Download the script from previous Link;
  2. Create a custom list in SharePoint on-premises or Office 365;
  3. Give the name of the list Stocks… or other names… is not important for this sample;
  4. Create columns with short name (eg. SS) and rename columns with a display name;
  5. Create new records, and fill the sample data to accieve condition;
  6. Create a new View and name it Formatting. Is not so important but you have to modify the XSL script if you choose to specify a different name;
  7. Customize your XSL script and uploade it on the SharePoint site in Site Assets library;
  8. Open the Formatting view from the custom list Stocks and from the Settings menu choose Edit Page option;
  9. From the Edit page choose Web part properties:
    image
  10. Expand Miscellaneous and in text box XSL Link type: /SiteAssets/cf_Stocks.xsl
    image
  11. Click Apply button, Ok and close Page editing.

If you want to choose another condition for you custom solution you have to modify the XSL file and to edit another condition on the line 74 from my script:

image

Also you can apply multiple formats using different xsl:when conditions.

Script details:

image

Results:

image

Hope it helps and thank you for future feedback!

Înregistrarea și plata on-line a impozitelor și taxelor pentru Primăria Iași

Să începem săptămâna cu o veste bună, zic eu :). Știu că nu se bucură nimeni când vorbim de taxe și impozite, dar astăzi am avut deosebita plăcere să mă înregistrez și să-mi plătesc impozitele locale pentru Primăria Iași. Marele câștig este că am scăpat de un drum până acolo. Și nu drumul era principala problemă, ci faptul că trebuie să stai la coadă la diferite ghișee alături de concetățeni plini de nemulțumire și toate celelalte…

Pe site-ul https://dfpl.primaria-iasi.ro/index.aspx puteți găsi un un formular de înregistrare pe care trebuie să îl completați cu atenție.

image

După ce îl completați îl listați și mergeți cu el la Primărie pentru depunere (la Registratură). Trebuie să aveți și o copie după cartea de identitate. Am întrebat de ce trebuie să mergem cu formularul la Primărie iar răspunsul este: pentru identificarea persoanei din cauza confidențialității fiscale. Așa este legea… Avantajul este că mergi o singură dată pentru a depune actele și atât. Ulterior se pot efectua plățile direct cu cardul prin sistemul Primăriei sau prin Ghiseul.ro.

ghiseul.ro

Print screen: Obligații de plată prin Ghiseul.ro

Partea faină este că ghiseul.ro este inregrat cu site-ul de taxe al Primăriei, din oricare loc s-ar face plata cu cardul puteți vedea în timp aproape real înregistrarea plății.

Câți dintre voi nu au ratat să plătească amenzile de circulație în termenul de înjumătățire al sumei? Și mai fain pe site-ul Primăriei este că poți să-ți vezi și amenzile pe care le ai de achitat la Poliție sau pe care le-ai achitat deja, așa că nu partajați userul și parola cu soția. Smile

etaxAmenzi

Și în componenta de Bunuri/Proprietăți am aflat că la bloc am și eu o parte de pământ. Diseara fac un grătar pe pământul meu de la bloc. Smile

Pentru cetățenii care sunt înregistrați ca PFA (persoană fizică autorizată) este foarte important să completați o declarație fiscală pentru sediul în care vă desfășurați activitatea. Au apărut tot felul de știri și informații pe Internet legate de faptul că veți plăti foarte mult impozit pe apartamentele în care aveți înregistrat sediul, pentru că se ia în considerarea întreaga suprafață. Indiferent de domeniul de activitate al PFA, descărcați formularul, completați-l și depuneți-l cu cererea de înregistrare a contului la Primărie.

Mulțumesc doamnelor de la Serviciul Informatizare din cadrul Primăriei Iași pentru clarificări și indicații.

Să aveți o săptămână faină!

#SharePoint – Inserare imagine cu mai multe link-uri

În activitatea curentă a unui site de SharePoint apar necesități specifice de navigare. Una din cele mai comune metode de navigare complementară meniurilor obișnuite (personalizarea meniului din stânga sau de sus) sau listelor de legături sunt imaginile. În viziunea mai multor utilizatori poți folosi o imagine pentru mai multe link-uri.

Pentru a putea să inserăm mai multe link-uri pentru o imagine trebuie să utilizăm tagul HTML IMG cu atributul usemap și tagul MAP cu opțiunile AREA.

În exemplul pe care vi-l propun voi folosi o imagine de dimensiunea 640×427 px. Imaginea va fi încărcată în SharePoint într-o bibliotecă de imagini sau active. Este foarte important în procesul de mapare a imaginii să se păstreze dimensiunea corectă a imaginii pentru a nu decala legăturile stabilite prin arii.

Ariile pe imagini pot fi definite sub formă de pătrat (rect) cu 4 coordonate, cerc (circle) cu 3 coordonate din pagină și polinom cu câte două dimensiuni pentru fiecare colț. Explicații mai elaborate puteți găsi în articolul:  How To Create Multiple Links On A Single Image With Image Map

Pentru determinarea poziției/ariei se pot utiliza resurse on-line de mapare sau aplicații clasice de editare a imaginilor. Un instrument on-line interesant poate fi accesat și utilizat pe site-ul http://www.image-maps.com/map_image.php care permite definirea și salvarea ariilor cu tot cu o serie de opțiuni specifice de formatare.

image

În Offline pentru editare eu mai folosesc din când în când versiunea de 30 de zile a aplicației Zoner Photo Studio 18 care îmi permite identificarea poziției x,y de start și început a unui pătrat sau determinarea punctului central al unui cerc.

image

Vedeți pe imagine poziția x,y a cursorului în colțul de jos al selecției.

Implementarea în SharePoint

Am încărcat imaginea în Site Assets apoi am creat o nouă pagină simplă în care am inserat imaginea și m-am asigurat că are dimensiunea dorită (640×427 px).

Din ribbonul Format Text am ales opțiunea Edit Source și am introdus codul:

<p>
   <img src=”/SiteAssets/Image.png” alt=”” style=”margin: 5px; width: 640px; height: 427px;” usemap=”#ress”/>
   <map name=”ress”>
       <area title=”Resource 1″ href=”#” shape=”rect” coords=”63,281,233,363″ alt=”Resource 1″ />
       <area title=”Resource 2″ href=”#” shape=”rect” coords=”223,182,386,254″ alt=”Resource 2″ />
       <area title=”Resource 3″ href=”#” shape=”rect” coords=”403,113,574,193″ alt=”Resource 3″ />
   </map>
    </p>

image

În forma de editare putem vizualiza în SharePoint dacă încadrarea este corectă după care putem adăuga legăturile corecte (atributul href de pe area) și salva pagina.

Sper să vă fie util!

Blog la WordPress.com.

SUS ↑