Martin's Blog - Developer Infos zu SharePoint, ASP.NET, BI und anderen Technologien




powered by Component Software GmbH

SharePoint Hosted App und der Zugriff auf WebApi

Begonnen hat es ganz einfach. Siehe (hier). Heute stand am Programm, den TypeScript Code in eine SharePoint hosted App zu transferieren. Wie ich TypeScript in Visual Studio 2013 innerhalb einer SharePoint Hosted App verwenden kann, beschreibe ich später. Jetzt geht es mal darum, den Json Call auf meine WepApi-Datenbankzugriffs-Schicht in SharePoint abzusetzen. Da wir einen anderen Host als den SharePoint App Host aufrufen, kommt es zu einem CrossDomain Call, der bekanntlich nicht erlaubt ist. Aber genau dafür bietet das SharePoint Client Object Model die Klasse SP.WebProxy. Also schnell den ... [Mehr]

Spaß mit “this” in TypeScript

Eigentlich war der Plan ganz simpel. Eine kleine SharePoint Hosted App, die in Typescript geschrieben wird und die Daten einer Datenbank mit WebAPI bzw. Json abfragt. Um den Entwicklungsaufwand gering zu halten verwende ich jquery und knockout. Aber wie so oft, liegt der Stolperstein nicht dort, wo man ihn erwarten würde. In der einfachen App soll eine TypeScript Klasse als ViewModel dienen. In der TypeScript Datei habe ich ein Interface für die Datenbankeinträge geschrieben. Es macht einfach mehr Spaß wenn die Objekte typisiert sind. Das ViewModel besteht aus einer Liste, äh sorry, in JavaScr... [Mehr]

SharePoint 2013- Änderungen am Workflow sind unwirksam

Bei der Programmierung von SharePoint 2013 Workflows fällt schnell auf dass die WOrkflow gecached werden. Änderungen am Workflow werden von Visual Studio zwar ohne Fehlermeldung deployed aber beim Testlauf wird noch der zuletzt ausgelieferte Code verwendet. Das hat den unangenehmen Effekt, dass die letzten Änderung am Programmcode doch nicht das erwünschte Verhalten bringen, man weiter die Lösung des Problems sucht. In Wahrheit hat man die Lösung bereits gefunden, nur leider wird sie von der Workflow-Engine nicht verwendet. Abhilfe schafft wenn man den Prozess “vssphost5.exe” stoppt. Dieser is... [Mehr]

Excel Power Query und Power Map– neue BI Komponenten

Microsoft setzt immer mehr auf “Self Service BI” und bringt laufend neue Komponenten. Zwei neue Werkzeuge sind Power Query und Power Map. Power Query vereinfacht die Abfrage und Aufbereitung von externen Daten und Power Map ermöglicht die Darstellung von Diagrammen auf einer Weltkugel. PowerQuery PowerQuery ist ein Add In für Excel 2013 oder Excel 2010. (Download) Nach der Installation, die .NET 3.5 benötigt wird das Excel-Ribbon um die Karte “Power Query” erweitert.   Von hier aus, hat der Benutzer die Möglichkeit verschiedene externe Datequellen einzubinden. Neben den üblichen relatio... [Mehr]

Client-side Field Rendering in SharePoint 2013

Eine der großartigen Neuerungen in SharePoint 2013 ist die Möglichkeit das Erscheinungsbild einer Spalte mittels Client-seitigen Code zu ändern. Hierzu kann der HTML Code jeder einzelnen Spalte angepasst werden. Mit SharePoint 2010 war es noch notwendig den XLST Code für die gesamte Ansicht anzupassen. Jetzt reichen ein paar Zeilen Code! Mein Ziel ist es eine Status Spalte einer Liste in Form von Icons anzuzeigen. Der Kernpunkt ist ein JavaScript-Funktion in welcher ein Template für ein Feld einer  Liste angelegt und zugewiesen wird. Dieses Template enthält den HTML Code der zur Darstellu... [Mehr]

RunWithElevatedPrivilege für SharePoint Apps

Seit längeren ist es im SharePoint Server API möglich, Code mit mehr Rechten auszuführen als der Benutzer der den Code ausführt eigentlich hat. Dadurch können z.B. in Webparts dem Benutzer Aktionen angeboten werden zu denen er keine Berechtigungen hat. Unter SharePoint 2013 gibt es nun das Appmodel in dem kein Server-Seitiger Code vorkommt. Alles wird nur mit ClientObject Model programmiert. In der App-Entwicklung kann es vorkommen, dass eine App mehr Rechte  benötigt als der Benutzer hat. Bei der Installation einer App kann ein Benutzer der App aber immer nur soviel Rechte zubilligen als... [Mehr]

Die unendlichen Möglichkeiten des Client Object Models

Das Client Objekt Model von SharePoint 2010 ermöglicht die Entwicklung von SharePoint-Anwendungen die nicht im Kontext des SharePoint Servers laufen. Im wesentlichen bietet das COM (hatten wir diese Abkürzung nicht schon mal?) die Funktionalität des Server API, nur eben für Remote-Anwendungen. So ist es möglich Listen und Bibliotheken anzulegen, zu verändern, Daten zu schreiben und noch weitere Änderungen am SharePoint Server vorzunehmen… Wie mir unlängst beim Durchstöbern der Funktionen aufgefallen ist, mit dem Client Objekt Model können auch die Menüs erweitert werden! Gut, einen konkreten A... [Mehr]

Error bei PivotTable Refresh in PowerPivot SharePoint 2013

PowerPivot für SharePoint ist immer für Fehler gut. Leider ist das Problem meist nicht aus der Fehlermeldung erkennbar. Diesmal hatte ich wiedermal einen “An error occured while working on the Data Model in the workbook” Das Datenmodell wurde korrekt in die PowerPivot SSAS-Instanz geladen. Dort war das Problem also nicht zu suchen. Die einzige neue Komponente war die Office Web App Installation innerhalb der Farm. Sobald der Office Web App Server installiert ist, wird für die Anzeige der Excel Dateien dieser verwendet und nicht mehr der in SharePoint eingebaute xlsx-Viewer. Das ist leicht an ... [Mehr]

Listenberechtigung eines Users mit Client Object Model abfragen

Oftmals ist es notwendig, zu überprüfen ob ein Benutzer in SharePoint berechtigt ist, einen Listeneintrag zu erstellen oder ein Dokument hochzuladen. Die Aufgabenstellung kann auch in Klient-Anwendungen vorkommen. Das Client Object Model von SharePoint 2010 bietet auch hierfür Funktionen an. EffectiveBasePermission Eine Klient-Listen Klasse bietet mit “EffectiveBasePermission” den Zugriff auf die Persmissions des Benutzers. liste.EffectiveBasePermissions.Has(PermissionKind.AddListItems) Die Methode “Has” überprüft ob eine bestimmte Permission vorliegt. Das enum “PermissionKind” bietet alle i... [Mehr]

Copyright © 2019 Martin Groblschegg - Impressum