Seznam všech listů na webu pomocí PS

Pro výpis listů na webu lze použít následující PowerShell script.

param (
 [string]$url = "$(Read-Host 'url [e.g. http://moss]')"
)

function main() {
  [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
  Display-SPList -url $url
}

function Get-SPSite([string]$url) {
  New-Object Microsoft.SharePoint.SPSite($url)
}

function Get-SPWeb([string]$url) {
  $SPSite = Get-SPSite $url
  return $SPSite.OpenWeb()
  $SPSite.Dispose()
}

function Display-SPList([string]$url) {
  $OpenWeb = Get-SPWeb $url
  $OpenWeb.Lists | Select Title,ID
  $OpenWeb.Dispose()
}

main

Znaková sada databáze

SELECT SERVERPROPERTY('COLLATION')

Změna vlastníka databáze

EXEC dbo.sp_changedbowner @loginame = N'anOwner', @map = false

Vlastní Error stránka

  1. Na MOSS serveru je potřeba vytvořit kopii ze souboru
    C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\LCID\
    
    a pojmenovat ji např. "my404.html"
    LCID: 1033 - en, 1029 cz ...
  2. Soubor "my404.html" upravit do potřebného designu.
  3. Použít jednu z následujícu akcí pro nasazení:
  • Create a Console Application, insert the following code into it and run.
    System.Uri webApplicationUri = new Uri("http://myserver/");
    SPWebApplication webApplication = SPWebApplication.Lookup(webApplicationUri);
    webApplication.FileNotFoundPage = "my404.html";  
    webApplication.Update();
  • V PowerShellu lze spustit následující script.
    PS: [System.Reflection.Assembly]::Load("Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral,PublicKeyToken=71e9bce111e9429c")
    PS: $webapp = [Microsoft.SharePoint.Administration.SPWebApplication]::Lookup("http://myserver/")
    PS: $webapp.FileNotFoundPage = "my404.html"
    PS: $webapp.Update()

Zdroj informací:

http://support.microsoft.com/
http://blogs.msdn.com/jingmeili/
http://www.wssdemo.com/

Seznam - List Template

Seznam definicí, které jsou k dispozici jako možnost pro vytváření seznamů.

HodnotaTyp
100 Generic list
101 Document library
102 Survey
103 Links list
104 Announcements list
105 Contacts list
106 Events list
107 Tasks list
108 Discussion board
109 Picture library
110 Data sources
111 Site template gallery
112 UserInformation
113 Web Part gallery
114 List template gallery
115 XML Form library
116 Master Page Catalog
117 No Code Workflows
118 Workflow Process
119 Wiki Page Library
120 Custom grid for a list
130 Data Connection Library
140 Workflow History
150 Gantt Tasks
200 Meeting Series list
201 Meeting Agenda list
202 Meeting Attendees list
204 Meeting Decisions list
207 Meeting Objectives list
210 Meeting text box
211 Meeting Things To Bring list
212 Meeting Workspace Pages list
300 Portal Sites list
301 Posts (Blog)
302 Comments (Blog)
303 Categories (Blog)
1100 Issue tracking
1200 Admin Tasks
2002 Personal document library
2003 Private document library

Seznam jazykových kódů (LCID)

Microsoft používá jazukové kódy pro některé produkty. V tabulce je pár vybraných a ostatní jsou zde.

Jazyk - Země/RegionLCID HexLCID Dec
Chinese - People's Republic of China 0804 2052
Czech 0405 1029
English - United States 0409 1033
English - United Kingdom 0809 2057
French - France 040c 1036
German - Germany 0407 1031
Japanese 0411 1041
Polish 0415 1045
Portuguese - Portugal 0816 2070
Russian 0419 1049
Slovak 041b 1051
Spanish - Spain (Modern Sort) 0c0a 3082
Spanish - Spain (Traditional Sort) 040a 1034
Turkish 041f 1055
Ukrainian 0422 1058

Seznam fieldů v listu pomocí PS

Pro výpis fieldů v listu lze použít následující PowerShell script.

param (
  [string]$url = "$(Read-Host 'url [e.g. http://moss]')",
  [string]$List = "$(Read-Host 'List Name [e.g. Announcements]')"
)

function main() {
  [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
  Display-SPListField -url $url -List $List
}

function Get-SPSite([string]$url) {
  New-Object Microsoft.SharePoint.SPSite($url)
}

function Get-SPWeb([string]$url) {
  $SPSite = Get-SPSite $url
  return $SPSite.OpenWeb()
  $SPSite.Dispose()
}

function Display-SPListField([string]$url, [string]$List) {
  $OpenWeb = Get-SPWeb $url
  $OpenWeb.Lists[$List].Fields | Select Title,InternalName,Type
  $OpenWeb.Dispose()
}
main

Spouštění další aplikace z kodu

Kod pro volání další aplikace.

System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo.FileName = @"c:\program.exe";
try
{
  proc.Start();
  proc.WaitForExit();
  proc.Close();
}
catch (Exception ex)
{
  //handle error
}

Skrýt pole "Poslední změny / Recent Changes"

CSS

<style type="text/css">
    .s4-recentchanges
    {
        display: none;
    }
</style>

jQuery

<script type="text/javascript">
    $(document).ready(function () {        
        $(".s4-recentchanges").hide();    
    });
</script>

Zástupné znaky pro vlastní akce

Pokud potřebuji definovat přes SharePoint Designer nejaké kontextové akce, mohu do akcí doplnit následující zástupné znaky, do kterých SharePoint následně dynamicky doplní hodnoty.

ZnakyVýstup
~site/ SPContext.Current.Web.ServerRelativeUrl
~sitecollection/ SPContext.Current.Site.ServerRelativeUrl
{ItemId} item.ID.ToString()
{ItemUrl} item.Url
{SiteUrl} web.Url
{ListId} list.ID.ToString("B")
{RecurrenceId} item.RecurrenceID

O blogu

Tento blog je místem, kde sdílím své zkušenosti, části zdrojových kódů, odkazy apod. Zdroje jsou zaměřeny převážně na problematiku portálového řešení SharePoint a vývoj webů v prostředí Microsoft. Mým cílem není úplně obsahnout konkrétní řešení, ale pouze tu část, kterou potřebuji. Pokud se problematika obsáhlejší, jsou pod článkem odkazy na související informace.

O autorovi

Oldřich Zátopek
Zabývám se vývojem webových aplikací internet/intranet na Microsoft technologiích. Hlavní specializace je SharePoint. LinkedIn