HTML

Linkblog

Sharepoint

Örök harc a SharePoint ellen... a háború új szakaszába lépett, közeleg a 2010-es offenzíva...

Friss topikok

  • arpadarpa: Ez sajnos így van. A paramétereket a tárolt eljárásoknál sem kezeli jól (ott is elfelejti, illetve... (2009.03.20. 12:04) SPDesigner bug

"websablonfájl már létezik"

2010.09.28. 17:05 Sharepoint Fighter

Van egy site-templated, mondjuk "FCKTHS", ami nem is látszik a Site Template Galery-ből, de az stsadm -o enumtemplates paranccsal kilistázható. Király. Mondjuk le kell cserélni, mert semmi sem örök, néha új dolgok kerülnek fel rá, stb..., szóval: stsadm.exe -o deletetemplate -title FCKTHS, siker, majd iisreset (biztos-ami-biztos alapon).

Utána fogjuk az új file-t, aminek a neve megegyezik a korábbival, majd: stsadm.exe -o addtemplate -filename C:\FCKTHS.stp -title "FCKTHS", amire hibaüzenet jön: "A(z) FCKTHS.stp websablonfájl már létezik."

Ilyenkor az ember újra megnézi az enumtemplates-el (már nincs kilistázva), megpróbálja újra - erősebben! - törölni a deletetemplate-tel, de az is azt mondja, hogy már nincsen ilyen...

Ami megoldja a problémát, az az stp file átnevezése! FCKTHIS.stp -> FCKTHS2.stp, mejd utána stsadm.exe -o addtemplate -filename C:\FCKTHS2.stp -title "FCKTHS"...

Ki érti ezt?

What if You got the message "Web template with file FCKTHS.stp already exists" when you run stsadm -o addtemplate -filename C:\FCKTHS.stp -title "FCKTHS", and You are sure that "FCKTHS" template is deleted? Rename the file that You want to upload, then try again... with success. It works, but why...?

Szólj hozzá!

Címkék: sharepoint stsadm site template

SilverLight linkgyüjtemény, kezdőknek...

2010.07.28. 10:42 Sharepoint Fighter

SQL-adatkapcsolat: www.codeproject.com/KB/silverlight/Silverlight3_SQL_WCF.aspx

[bővítés folyamatban...]

Szólj hozzá!

Munkafolyamat, ami duplaplusz-nemjó a dokumentumtárakon

2010.01.21. 09:11 Sharepoint Fighter

SharePoint listára munkafolyamatot (workflow, wf) kötni SP Designerrel meglehetősen egyszerű: új wf, melyik listán fusson, mit csináljon, kész. Kicsit figyelni kell arra, hogy ne futtassa magát végtelen ciklusban, ha példáúl a listaelem módosulásakor indulna a wf, és maga a wf is belemódosít magába a listaelembe, de ezzel együtt sem nagy was-ist-das.

 

De mi a helyzet  egy dokumentumtárral, amit - mondjuk - Word dokumentumok tárolására használunk, és szeretnénk rá wf-t kötni, ami a lista-elemhez kitöltene metaadatokat? Na, itt jön a duplaplusz-nemjó: a felhasználó megnyitja a kedvenc dokumentumát szerkesztésre. Kicsit molyol rajta, időnként megnyomja a Mentés-gombot - 20 évnyi igen hasznos informatikai beidegződés - majd még egyszer átfutja, és mivel minden OK, megnyomja a bezárás X-ecskét a Word jobb felső sarkában...

 

Mi törént ezek közben a háttérben, a SharePoint-on? A dokumentum a szerkesztési megnyitás ellenére nem csekkolódott ki (mármint: nem történt longterm-checkout). Amíg a Word nyitva volt, addig egy short term lock volt az elemen. A wf minden egyes Mentés megnyomásakor elindult, de mivel az elemen lock van - annak ellenére, hogy a wf annak a felhasználónak a nevében fut, akinek a lock fenn van tartva - nem fut le rendesen (mondjuk hibaüzenettel leáll a wf). Amikor a felhasználó bezárja a Word-öt, akkor a short-term lock megszűnik, de a lista-elem nem módosult már, ezért a wf _nem_indul_el_, mert "nem történt semmi". Mit lehet mit tenni, MS?

 

Szólj hozzá!

Címkék: lock sharepoint checkout workflow short term lock long term lock

Infopath startup események sorrendje

2008.12.02. 18:21 Sharepoint Fighter

Ismét egy érdekesség:

(1) ha az Infopath-ban kipróbálom a fejlesztett formot (Preview), akkor először az indítási szabályok futnak le (Open and save / Rules), aztán a hozzáírt kódban a FormEvents_Loading eljárás...

(2) ugyanaz felrakva a SharePoint-ra (FormServer), majd webes űrlapként megnyitva: először a FormEvents_Loading fut le, azután (vagy azzal párhuzamosan?) az indítási  szabályok...

Szólj hozzá!

Címkék: startup sharepoint infopath form server

Miért? (aspx, code-behind dll, GAC)

2008.10.28. 14:21 Sharepoint Fighter

Bizonyos esetben az aspx-ben behivatkozott dll-t nem elég behúzni a GAC-ba (természetesen a web.config-ban szerepel a SafeControls alatt), ahhoz, hogy működjön be kell rakni a \Inetpub\wwwroot\wss\VirtualDirectories\80\bin\ alá is....

Ha valaki tud rá értelmes magyarázatot, egy hozzászólással kisegíthetne! Sotesz? GyZ? :) Köszönöm!

 

Szólj hozzá!

Címkék: sharepoint gac aspx code behind dll

Javascript: get http parameters

2008.09.29. 14:48 Sharepoint Fighter

function GetHttpParameter( paramName )
        {
            paramName = paramName.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
            var regexS = "[\\?&]"+paramName+"=([^&#]*)";
            var regex = new RegExp( regexS );
            var results = regex.exec( window.location.href ); // or: regex.exec( unescape( window.location.href ) ) when needed...
            if( results == null )
                return "";
            else
                return results[1];
        }
 

(Original idea: http://www.netlobo.com/url_query_string_javascript.html ... Thank You!)

Szólj hozzá!

Címkék: javascript get http parameter

Javascript in asp:Content

2008.09.29. 14:14 Sharepoint Fighter

How to place and run javascipt in Sharepoint aspx files?

Write this (or append to an existing the "PlaceHolderAdditionalPageHead" section) the followings (in the aspx):

<asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server">
    <script language="JavaScript">
    <!-- Begin
        function HelloWorld()
        {
            alert("Hello World!");
        }
    //  End -->
    </script>
</asp:Content>

... and supplement the "PlaceHolderBodyAreaClass" section (or create new one if it does't exist) as follows:

<asp:Content ContentPlaceHolderId="PlaceHolderBodyAreaClass" runat="server">
    <script  LANGUAGE="JavaScript">
        window.attachEvent('onload', HelloWorld);
    </script>
</asp:Content>

... and voila! :)
 

Szólj hozzá!

Címkék: javascript sharepoint aspx asp:content

Infopath form to Word document

2008.09.15. 16:15 Sharepoint Fighter

General description about this:
msdn.microsoft.com/en-us/library/aa662311(office.11).aspx

Own comments:
(1) the wsf file needs the following frame:
<job id="MyJob"><script language="JScript">
    [script content from the article above]
</script></job>

(2) the xpath expressions (of the fields) in the xsl file are cannot be used as they are generated: replace them with absolute pathes, eg.: replace
<xsl:apply-templates select="ns2:Field_1" mode="_1"/>
with
<xsl:apply-templates select="ns2:myFields/ns2:NodeGroup/ns2:Field_1" mode="_1"/>

Egy kicsit más, de súrolja az említett témát, és sokat segíthet (ez magyarul): http://balassy.spaces.live.com/blog/cns!8742D9F327180554!505.entry

 

Szólj hozzá!

Címkék: convert word infopath infopath to word

SPDesigner bug

2008.09.12. 13:22 Sharepoint Fighter

SPDesigner, data view webpart + xml web services:

a webservice-hez megadott paramétert hiába állítgatom (elmentem, újranyitom a beállító property ablakot: az átállított érték szerepel benne), a WS hívásakor a szerverenmégis a régi paraméter jelenik meg.... furi....

Itt lehet belejavítani a kódban:

    <WebPartPages:DataFormWebPart ..........>

<DataSources><SharePoint:SoapDataSource runat="server" id="SoapDataSource6" AuthType="None" WsdlPath="http://server/webservice.asmx?WSDL" SelectUrl="http://server/_layouts/webservice.asmx" SelectAction="http://tempuri.org/GetResponse" SelectPort="GetResponseSoap" SelectServiceName="GetResponse"><SelectCommand><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body>[ Az itt következő paramétert kell aktualizálni... ]

1 komment

Link előállítása XSL-el

2008.09.05. 12:28 Sharepoint Fighter

Hasznos, pl. Data View webpartok tartalmának "kézi" összeállításánál:

            <td class="ms-vb">
                <xsl:element name="a">
                    <xsl:attribute name="href">
                        <xsl:value-of select="ddw1:SiteName"/>
                    </xsl:attribute>
                    <xsl:value-of select="ddw1:SiteTitle"/>
                </xsl:element>
            </td>
 

Szólj hozzá!

Címkék: webpart spdesigner xslt

Üres hiba, sor-megjelölés nélkül

2008.09.02. 10:34 Sharepoint Fighter

Szimptóma: üres hibát kapunk Sharepoint search query esetén, vagyis a kódban üres lesz az exception a catch-nél, illetve a hiba helyét (a hibázó sor sorszáma) sem tudjuk meg... :(

Megfejtés: ez azért lehet, mert olyan mezőt kérünk el a selectnél (pl. select Path, DueDate from scope() ... ), amit a Metaadat-tulajdonságok megfeleltetésénél (Central Administration / Shared Services / Search settings) nem állítottunk be (pl. a DueDate-et)...

Szólj hozzá!

DataFormWebPart dinamikus paraméterezése webservice-híváshoz

2008.03.19. 13:54 Sharepoint Fighter

Az adatforrás tulajdonságainál a szükséges paramétereknél NE (?) pipáljuk be a futásidőben történő behelyettesítést (pl. egy "User" paraméternél), mondjuk meg neki, hogy honnan helyettesítse be (érték: "UserLogin"), majd a létrejött ParameterBinding szakaszt módosítsuk e szerint:

<ParameterBinding Name="UserLogin" Location="ServerVariable(LOGON_USER)" DefaultValue="[ LOGON_USER ]"/>

Szóval a megoldás kulcsa a Location="ServerVariable(LOGON_USER)" rész...

Szólj hozzá!

Címkék: sharepoint 2007 dataformwebpart webpart dynamic parameter

User visszakeresése

2008.01.31. 14:14 Sharepoint Fighter

User adatainak visszakeresése, ha a user egy mezőben van megadva egy Sharepoint-listán (pl. felelős mező egy feladatnál):

SPFieldUserValue
spFUV = new SPFieldUserValue(SPWeb1, (string)item["AssignedTo"]);
string EmailAddress_To = spFUV.User.Email;

Szólj hozzá!

Címkék: email user sharepoint

Nagyon hasznos linkek

2008.01.16. 11:33 Sharepoint Fighter

Ezt a listát elég gyakran fogom bővíteni (remélhetőleg...) a jövőben:

Fordítás
Sharepoint-Osztópont szótár (sajnos pont a legfontosabb dolgokat nem tudja, de azért fennthagyom addig, amíg nem találok jobbat): http://209.85.129.104/search?q=cache:KZ7RPol1z8cJ:aghy.hu/wp-content/uploads/2006/08/en-hu_dict.xls+sharepoint+angol+magyar+sz%C3%B3t%C3%A1r&hl=hu&ct=clnk&cd=1&gl=hu
C# - Visual Basic "szótár": http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

WebParts
(majdnem-üres-)WebPart összerakása, telepítése: http://www.dplouffe.ca/creating-a-basic-webpart/
Összetettebb webpart összerakása:
http://msdn2.microsoft.com/en-us/library/ms558854.aspx

Egyéb
ASP.NET authentication, impersonation, authorization:
http://www.15seconds.com/issue/020312.htm

ASPX oldal bevarrása SharePoint alá, code-behind dll-el megtámogatva:
http://blogs.msdn.com/cjohnson/archive/2007/12/15/building-a-simple-asp-net-page-based-sharepoint-application-in-visual-studio-with-the-visual-studio-extensions-for-wss-ctp-1-1.aspx
 
ASP.NET PeopleEditor bevarrása aspx oldalba:
www.sharepoint2007security.com/developers/using_the_peopleeditor_control

Infopath:
Hogyan lehet InfoPath-ba áthozni egy SP lista számított mezőjét (calculated field):
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2427800&SiteID=1
Hogyan rakjunk soremelést egy multiline TextBox-ba, szabály alapján (tervezéskor vagy futásidőben):
http://blogs.msdn.com/infopath/archive/2005/03/04/385577.aspx
URL-paraméterek FormServer-es űrlapok megnyitásához:
http://msdn2.microsoft.com/en-us/library/ms772417.aspx
Contact Selector használata (context site beállítáásal!):
Contact selector kezelés + User full name és e-mail elkérése:
Form publikálásra listára (web-szervízen keresztül... hogy miért jó? Mert dinamikusan állítható, hogy hova menjen!)
Form with code publikálása, aktiválása:
SharePoint programozás:
Web-szerviz bevarrása SP alá (nagyon pontos, használható leírás):
Sharepoint Event-kezelés (eventhandlers), az alapoktól:
Ez pedig egy felsorolás, hogy milyen eseményekre lehet eseménykezelőt írni:
 

SharePoint UI:
Ezen a linken a számított oszlopokban (=mezők) használható függvényekről van némi infó (majd keresek jobbat!):
http://office.microsoft.com/en-us/sharepointtechnology/HA101215881033.aspx
(Ami szar benne, az az, hogy a függvény-nevek magyarítva vannak a magyar SzarPont-ban, és egyébként sincsenek túldokumentálva...)
Találtam egy sokkal jobbat: 
portal.esu3.org/_layouts/help.aspx
(viszont ez nem tűnik nagyon hivatalosnak...)


Sharepoint Search:
Custom Search page összerakása:
it.toolbox.com/blogs/sharepoint-blog/working-with-sharepoint-search-part-1-14359

Sharepoint search query, relative date (relatív dátumhasználat):

msdn.microsoft.com/en-us/library/ms477432.aspx

 

 

Szólj hozzá!

Aprócska különbség: SPWeb.Folders[folder] és SPWeb.GetFolder(folder)

2008.01.09. 13:31 Sharepoint Fighter

A következő két példa egy olyan user nevében fut le, amelynek a listára csak korlátozott hozzáférése van, viszont az adott listaelemre elemszinten munkatárs van beállítva, tehát tudja szerkeszteni, checkout-olni, stb.

// példa #1
SPWeb web = Site.OpenWeb(webName);
SPFolder folder = web.GetFolder(folderName);
SPFile item = folder.Files[folderName + "/" + fileName];
item.CheckOut();


// példa #2
SPWeb web = Site.OpenWeb(webName);
SPFolder folder = web.Folders[folderName];
SPFile item = folder.Files[folderName + "/" + fileName];
item.CheckOut();


A kiindulási helyzet ugyanaz: az elemet a user a böngészőn keresztül képes checkout-olni.
Melyik fog hibával végződni?
A megoldás itt van a zárójelek között, jelöld ki, hogy el tudd olvasni:
[
Az 1-es példa lefut, a 2-es példa hibát dob: System.ArgumentException: Value does not fall within the expected range  at Microsoft.SharePoint.SPFolderCollection.get_Item(String urlOfFolder)
És nem is jogosultság-hibát... :)

]
És miért?
Ha valaki tudja, mondja már el nekem...

In English: user has restricted/limited(?) rights to a Sharepoint document library, while has read/write right to the specified item.
Results (select invisible text between brackets): [ #1 runs, #2 throws error. ] Why?

Szólj hozzá!

Címkék: hiba sharepoint jogosultság spweb.folders spweb.getfolder

"Your search cannot be completed because this site is not assigned to an indexer."

2008.01.03. 16:09 Sharepoint Fighter

Király! Mindjárt egy olyan finomság, ami nem a sharepoint hibája, de ezt utólag könnyű belátni...

Szóval a szimptómák
Search használata browserből: nincs találat (fura, a telepítéskor mintha be lett volna állítva a Search Server vagy mi...)
Sebaj, irány a Central Administration (a lényeg a kép jobb oldalán van, ha nem látni rendesen)):























Klikk a WSS_Content-re, és lám: a keresőkiszolgáló üres!
Gyorsan beállítom, mentés, minden... OK. Jönnek a találatok.

Mostmár lehet kódból próbálkozni...

    KeywordQuery query = new KeywordQuery(mySite);
    query.QueryText = "apple";
    query.ResultTypes = ResultType.RelevantResults;
    ResultTableCollection results = query.Execute();
    ResultTable resultTable = results[ResultType.RelevantResults];

Az első sornál hiba:
"Microsoft.SharePoint.SPException: Your search cannot be completed because this site is not assigned to an indexer. Contact your administrator for more information."

Dehát! Az elöbb én! Pont ott! Meg átállítottam! Meg minden! :)

Élesebb szeműek (vagy akik több siteot menedzselnek) az oldalon megtalálják a megoldást: fennt a webalkalmazást át kell állítani a megfelelőre (mivel nálam csak 1 site volt, ez nem tünt evidensnek), viszont az SP alapból az admin site-ot tette oda...

Szóval ennyi...

(Brief in English: go to Central Administration / [Sharepoint-based Webapplications] Content databases. In the page (scroll picture above to left), select the _proper_ webapplication, then change the content database's search service server name...)

Szólj hozzá!

Címkék: site c# search sharepoint search cannot be completed content database not assigned

süti beállítások módosítása