:::: MENU ::::

Chyba zobrazení desetinného čísla v custom listech !

Na chybu zobrazení desetinného čísla jsem narazil, když jsem vytvářel pomocí Sharepoint Designeru nový DispForm.aspx, ve kterém se nezobrazovala čísla, která byla uložena s desetinnou čárkou. Konkrétně šlo o pole Sleva, které mělo zobrazovat výsledek v %, a tedy po zadání např. 10 % se číslo automaticky převedlo na 0,1. Problém je v použití českého prostředí (Language pack – czech), které místo toho, aby hodnotu uložilo s desetinou tečkou (0.1), jí uložil s desetinou čárkou (0,1), kterou pak už zpětně nedokázal přečíst. Problém jsem řešil na verzi Sharepoint Service 3 SP2, kde byly použity všechny poslední aktualizace, a bylo tedy nutno problém vyřešit jiným způsobem.

SharePoint Service 3 - chybné zobrazení desetiného místa

Co se stalo? aneb jak zobrazit uloženou hodnotu 10 % v českém prostředí

Pokud necháte Sharepoint Designer vytvořit nový DispForm.aspx, vygeneruje vám automaticky vzorec pro zobrazení číselné hodnoty v procentech, ale jelikož je hodnota uložena v desetinném formátu (0,1) s čárkou, nic se neukáže viz. Obr1. Takto vypadá vzorec vygenerovaný pomocí SD.

Jak jsem již zmínil, problém je právě v tom, že je hodnota uložena s čárkou, a je zapotřebí nejprve hodnotu převést, a to konkrétně změnit čárku za tečku. Tento převod provedeme pomocí operace translate. Vzorec pak bude vypadat takto:

Po této změně se již číslo zobrazí, ale v hodnotě 0.1 (my potřebujeme hodnotu v %), proto provedeme ještě jednu změnu ve vzorci, a to následovně:

SharePoint Service 3 - oprava zobrazení desetiného místa

Nyní se nám již správně zobrazuje hodnota 10 %


Komentáře