Rss Feed
Tweeter button
Facebook button
Flickr button

SharePoint Blog

SharePoint ist momentan das Thema bei mir, darum werde ich hier immer mal wieder Informationen zu SharePoint veröffentlichen.

bear64

Auto-Reload einer SharePoint Seite

bear64 : 17. November 2011 13:11 : SharePoint

Für eine spezielle Newsseite im SharePoint benötige ich eine Funktion, welche die Webseite automatisch nach einer definierten Zeit neu lädt. Da ich nicht die Zeit dazu habe, selber ein Javascript zu schreiben und ich davon ausgehe, dass es bestimmt schon jemanden gibt, welche genau diese Funktion schon programmiert hat, habe ich mich auf die Suche im Internet gemacht. Dabei bin ich sehr schnell fündig geworden. Im Blog “SharePoint Tips and Tricks” (Dank an Drew, der den Blog betreut) bin ich auf folgendes Script gestossen:

<script>
var reloadTimer = null;
var sURL = unescape(window.location.pathname);

function setReloadTime(secs)
{ if (arguments.length == 1)
   { if (reloadTimer) clearTimeout(reloadTimer);
       reloadTimer = setTimeout(“setReloadTime()”, Math.ceil(parseFloat(secs)*1000));
   }
   else
   { reloadTimer = null;
     location.reload(true);
     window.location.replace( sURL );
   }
}

setReloadTime(30);
</script>

Nach dem ich das Script mittels “Inhalts-Editor-Webpart” in die Seite eingebaut habe, wurde diese im 30 Sekunden Takt neu geladen. Das hat aber einen kleinen Nachteil, denn das Script läuft auch, wenn man im Seitenbearbeitungsmodus ist. Darum empfiehlt es sich, dass zuerst das Webpart ingebaut und konfiguriert wird und erst zum Schluss das Javascript in das Webpart eingefügt wird. Die vorgegebene Zeit von 30 Sekunden für den Reload sollte nicht unterschritten werden.

Einen Kommentar hinterlassen»
bear64

Formatierte Berechungen

bear64 : 8. Juni 2011 19:00 : SharePoint

Mit SharePoint kann man auch sehr schön Daten berechnen lassen. Nur leider lassen sich diese Ergebnisse nicht ohne Programmieraufwand formatieren. Mit einem kleinen Trick und einem fast genau so kleinen Javascript kann man dieses Manko aber problemlos und ohne Programmierkenntnisse lösen. Wie das geht haben andere findige Köpfe bereits im Internet publiziert. Aus diesem Grund erspare ich mir die Arbeit und verweise auf die Seiten, in denen die Funktion erklärt wird:

Im Blog “Path to SharePoint” findet sich der Artikel “Using calculated columns to write HTML”. In diesem Artikel wird die Funktionsweise und das Javascript erklärt. Wer das ganze lieber auf deutsch nachlesen will, sollte sich im Blog “MindBusines Blog” den Artikel “Formatierte Felder und Ampelfunktionen in SharePoint mit JavaScript” mal ansehen.

Und hier für alle Klickfaulen gleich direkt der Javascript-Code zu den Artikeln:

<script type="text/javascript">
//
// Text to HTML
// Feedback and questions: Christophe@PathToSharePoint.com
//
var theTDs = document.getElementsByTagName("TD");
var i=0;
var TDContent = " ";
while (i < theTDs.length) {
try {
TDContent = theTDs[i].innerText || theTDs[i].textContent;
if ((TDContent.indexOf("<DIV") == 0) && (TDContent.indexOf("</DIV>") >= 0)) {
theTDs[i].innerHTML = TDContent;
}
}
catch(err){}
i=i+1;
}
//
// ExpGroupRenderData overwrites the default SharePoint function
// This part is needed for collapsed groupings
//
function ExpGroupRenderData(htmlToRender, groupName, isLoaded) {
var tbody=document.getElementById("tbod"+groupName+"_");
var wrapDiv=document.createElement("DIV");
wrapDiv.innerHTML="<TABLE><TBODY id=\"tbod"+ groupName+"_\" isLoaded=\""+isLoaded+ "\">"+htmlToRender+"</TBODY></TABLE>";
var theTBODYTDs = wrapDiv.getElementsByTagName("TD"); var j=0; var TDContent = " ";
while (j < theTBODYTDs.length) {
try {
TDContent = theTBODYTDs[j].innerText || theTBODYTDs[j].textContent;
if ((TDContent.indexOf("<DIV") == 0) && (TDContent.indexOf("</DIV>") >= 0)) {
theTBODYTDs[j].innerHTML = TDContent;
}
}
catch(err){}
j=j+1;
}
tbody.parentNode.replaceChild(wrapDiv.firstChild.firstChild,tbody);
}
</script>

Danke an Christophe von “Path to SharePoint” für das tolle Script, aber Achtung; nur bei “Path to SharePoint” findet man immer die aktuellste Version des Script.

Einen Kommentar hinterlassen»
bear64

Webparts auf Seite löschen

bear64 : 7. Juni 2011 18:02 : SharePoint

Es kann durchaus vorkommen, dass ein Webpart nach dem Einbinden in die Webseite Probleme macht. Das kann sogar soweit gehen, dass man das Webpart weder verschieben, löschen noch ändern kann.

Genau dieser Fall ist bei mir aufgetreten. Selbst mit dem SharePoint-Designer konnte ich das Webpart nicht mehr löschen. Ich dachte schon, dass ich die Seite neu erstellen muss, aber dann habe ich folgenden genial einfachen Tipp bekommen.

Nr.
Bild

Beschreibung

1.

clip_image002

Die Seite mit dem defekten Webpart aufrufen und in der URL am Ende den Wert

?contents=1

eingeben.

2.

Unbenanntes Bild

Die "Webpartseitenwartung" wird nun angezeigt. Hier werden alle Webparts der Seite aufgelistet.

3.

Unbenanntes Bild2

Unbenanntes Bild3

Nun das defekte Webpart markieren und anschliessend oben in der Navigation auf den Link "Löschen" klicken.

Nun wird das Webpart aus der Seite gelöscht und die Seite kann wieder geöffnet werden.

Einen Kommentar hinterlassen»
bear64

Fehlermeldung bei Anpassen eines Webparts

bear64 : 22. November 2009 08:13 : SharePoint

FehlermeldungWenn man versucht ein WebPart für eine Homepage anzupassen, kann es vorkommen, das stattdessen eine Fehlermeldung erscheint. Aus der Fehlermeldung geht aber nicht hervor, wo man das Problem zu suchen hat.

Als ich kürzlich mal wieder ein WebPart auf der Homepage unseres Projekts anpssen wollt, wurde stattdessen die nebenstehende Fehlermeldung angezeigt.

Modify Shared Web PartDas WebPart habe ich direkt über die Homepage aufgerufen.

Edit Page ausgegrautWeil ich so nicht auf mein WebPart zugreifen konnte, wollte ich stattdessen via “Edit Page” zum WebPart gelangen, aber auch das ging nicht, da der Menüpunkt “Edit Page” ausgegraut war.

Show Page Editing ToolbarNun würde man denken, dass an der Seite irgendetwas Faul ist. Dem ist aber nicht so. Die Seite ist lediglich von einem Benutzer ausgecheckt. Das kann man relativ einfach herausfinden, in dem man sich die “Page Editing Toolbar” via “Site Actions” anzeigen lässt.

Menü "Page"In der Toolbar nun das Menü “Page” aufrufen.

Hier ist nun klar erkennbar, dass auch der “Check out”-Button Menü Toolsausgegraut ist und zusätzlich für Besitzer der Seite die Funktion “Override Check Out” zur Verfügung steht. Will man nun noch wissen, von wem die Seite ausgecheckt wurde, kann man via Toolbarmenü “Tools” den Page Status via “View Page Status” aufrufen.Popup

In diesem Popup findet man den aktuellen Status der Seite und auch die Meldung, von wem die Seite ausgecheckt ist.

Einen Kommentar hinterlassen»
bear64

Registermenü anpassen

bear64 : 20. Oktober 2009 11:17 : SharePoint
Das Registermenü zeigt in der Standardkonfiguration immer nur zwei Ebenen.
Image-0161
Das kann angepasst werden, so dass mittels MouseOver auch noch untergeordneten Sites in noch tieferliegende Ebenen in einem Pulldownmenü aufgelistet werden. Die Einstellung kann aber nur direkt im Code der Standard-Masterpage angepasst werden. Dazu geht man wie folgt vor:
  1. Microsoft Office SharePoint Designer 2007 starten
  2. Via Datei -> Website öffnen den SharePoint Server verbinden (unter Websitename die URL eingeben oder die URL aus der Liste auswählen).
  3. Auf dem Server ins Verzeichnis _catalogs/masterpage wechseln.
  4. Rechte Maustaste auf das Files “default.master” und um Popup den Menüpunkt “Kopieren” auswählen.
  5. Rechte Maustaste in den leeren Verzeichnisbereich und Popupmenü den Punkt “Einfügen” wählen.
  6. Nun kann das Files “default_Kopie(1).master” noch umbenannt werden.
  7. Via Popup der rechten Maustaste muss nun das File ausgecheckt werden.
  8. Anschliessen kann mittels Doppelklick dieses File geöffnet werden.
  9. Nun in die Codeansicht wechseln und nach den Eintrag “MaximumDynamicDisplayLevels” der ID=”TopNavigationMenu” suchen.
  10. Wird der Wert hier nun von 1 auf 4 erhöht, werden alle Subsites bis Ebene 4 als Dynamisches Menü angezeigt.
  11. Die Änderung muss nun noch gespeichert und das Files muss eingecheckt werden.

Nun hat sich die Navigation wie folgt geändert:
Image-0165

Einen Kommentar hinterlassen»
« Seite 1, 2, 3 ... 7 »

Kommentieren