Saturday 15 July 2017

Ssrs 2008 R2 Gleitender Durchschnitt


Sharepointalist Bedingte Formatierung war schon immer ein Schmerzpunkt in SharePoint 2013 und SharePoint Online (Office 365). Vor allem für diejenigen, die mit SharePoint 2007 und 2010 arbeiten, wo Sie in der Lage, bedingte Formatierung mit SharePoint Designer zu tun. In SharePoint 2013 und Office 365 ist diese Funktionalität weg. Sie können immer noch verschiedene JavaScript-Hacks verwenden (d. h. verwenden Sie einige berechnete Spalten JavaScript, um bedingte Formatierung auf die Zeile anzuwenden). Es gibt viele Blog-Beiträge darüber, aber die Hauptprobleme mit all denen sind die Zeit, die Sie investieren müssen, um das Ergebnis zu produzieren und die Tatsache, dass es praktisch außerhalb der Grenzen des regulären SharePoint-Benutzers ist. Meine Firma Sharepointalist arbeitete fleißig daran, bedingte Formatierungsfunktionen zugänglich zu machen, die vom regulären SharePoint-Benutzer zugänglich und verwendbar sind. Wir haben eine enorme Arbeit geleistet und ich bin sehr stolz darauf, einige der Features unseres neuen Produktes SharePoint List Booster zu präsentieren. List Booster arbeitet als Add-on auf Ihrem regulären Out of the Box SharePoint-Listenansichten (alle Listen und Dokumentbibliotheken). Es erlaubt Ihnen, Ihre Liste zu stylen, Farbschemata anzuwenden, Schriftarten und Farben zu verwalten - ganz oben auf der regulären SharePoint-Benutzeroberfläche. Mit List Booster können Sie ganz einfach verschiedene bedingte Formatierungsregeln anwenden, einschließlich: Textregeln Datum Regeln Numerische Regeln (einschließlich Währung) Ranking Regeln (oben, unten, oben, unten) Mittelwerte Regeln (entspricht durchschnittlich, überdurchschnittlich, unterdurchschnittlich usw.) Sie Kann auch verschiedene Indikatoren verwenden, um verschiedene Ampeln zu erzeugen. Benutzererfahrung in SharePoint ist eines der Hauptanliegen für viele SharePoint-Benutzer. Meine Firma - Sharepointalist hat sich entschlossen, die SharePoint-Benutzererfahrung in einem der am häufigsten verwendeten SharePoint-Features - Listen und Dokumentbibliotheken zu aktualisieren. Sharepointalist hat vor kurzem ein neues Produkt 8211 SharePoint List Booster veröffentlicht. It8217s eine neue Generation von SharePoint-Add-On, die nur mit JavaScript und CSS erstellt wurde 8211 kein serverseitiger Code 8211 funktioniert sowohl für SharePoint Online (Office 365) als auch für SharePoint 2013. List Booster verbessert die Box SharePoint-Benutzererfahrung, die es dem Benutzer ermöglicht, Wenn Sie mit Listen und Dokumentbibliotheken arbeiten, ändern Sie die Spalten (einschließlich der automatischen Größe durch Doppelklick) - auf jeder Listenansicht ändern Sie die Schriftartstile, die Textausrichtung, die Farbe und den Hintergrund für Spalten und Header Klicken Sie auf die Seitenzahl auf die gleiche Weise wie in Google), sichtbar sowohl oben als auch unten in der Liste Ansichtstabellen Farbschemata 8211 wie in Microsoft Excel oder Word, das alles in der regulären Ansicht und im schnellen Bearbeitungsmodus funktioniert. Alle diese Features sind sehr intuitiv und einfach zu bedienen durch die Endbenutzer. List Booster hilft viel mit der SharePoint-Adoption und erhöht die Leistung bei der Arbeit mit großen Listen und Dokumentbibliotheken. Sie können kurzes Video über das Produkt bei spbooster auschecken Wenn Sie in der Lage sein werden, die Lückengrößen, Text - und Hintergrundfarben, Schriftarten und Ausrichtung Ihrer SharePoint-Listen und Dokumentbibliotheken leicht zu ändern, müssen Sie dieses Produkt überprüfen. Dienstag, 13. Januar 2015 Viele Firmen mit Benutzern, die sich über mehrere Zeitzonen verteilen, erleben Probleme mit den Daten bei der Verwendung von SharePoint vor Ort und SharePoint Online. Standardmäßig sehen SharePoint-Benutzer alle Termine und Zeiten in der Zeitzone der Website, so dass alle Besucher zu erraten, was ist die tatsächliche Zeit von all denen ändern Datum und Ereignis Startzeiten. Es gibt mehrere Möglichkeiten, diese Verwirrung zu beseitigen: Out of the box - Aktualisieren Sie Ihr Benutzerprofil, um immer SharePoint-Daten in Ihrer aktuellen Zeitzone anzuzeigen. Während es ein großartiges Feature ist, ist es etwas verborgen vom Benutzer und setzt auf Selbstbedienung (Benutzer muss das selbst machen) SharePoint Time Zone App - meine Firma (Sharepointalist) hat vor kurzem neue kostenlose SharePoint App veröffentlicht (arbeitet sowohl vor Ort als auch SharePoint online), mit dem Sie ein kleines Widget (App-Teil) auf jeder SharePoint-Seite platzieren können, und es wird die Benutzerzeitzone dieser Seite angezeigt. Es bedeutet, dass, wenn Sie einen Kalender erstellen und teilen Sie den Link mit allen Benutzern, werden sie sofort sehen, welche Zeitzone ist, dass in. Diese App bietet auch eine schnelle Verbindung, um Benutzerprofil zu konfigurieren, um alle Daten in der richtigen Zeitzone zu sehen, die ist Sehr praktisch für den Benutzer. Bitte versuchen Sie diese App, es ist völlig kostenlos und sehr einfach zu installieren und zu verwenden. Anhängen von Paar-Screenshots der App Es war früher eine Standardpraxis, um in Event-Empfängern in SharePoint 2010 und SharePoint 2007 umzuleiten. SharePoint 2013 hat einige Änderungen in dieser Funktionalität. Redirect Option Availability Keine Redirect-Optionen für ItemAdded verfügbar. ItemUpdated und ItemDeleted. Einige Umleitungsoptionen für ItemAdding verfügbar. ItemUpdating und ItemDeleting. Sie sind nur verfügbar, wenn das Formular, das ein Ereignis initiiert, im CSRRenderMode. ServerRender-Modus wiedergegeben wird. Andernfalls werden Listenformulare über asynchrone XmlHttpRequests festgelegt und Umleitungsoptionen sind nicht verfügbar. CancelWithRedirectUrl - NICHT WORK Der folgende Code funktioniert: Der Compiler gibt folgende Warnung aus: Microsoft. SharePoint. SPEventReceiverStatus. CancelWithRedirectUrl ist veraltet: Standard-Listenformulare werden über asynchrone XmlHttpRequests übergeben, so dass auf diese Weise angegebene URLs umgeleitet werden, gefolgt von Default. Um ein Listenformular zu erzwingen, um einer Abbruchumleitung zu folgen, legen Sie die Liste der Web-Teile CSRRenderMode-Eigenschaft auf CSRRenderMode. ServerRender fest. Wenn Sie herausfinden müssen, wie Sie die CSRRenderMode. ServerRender-Eigenschaft für das Formular automatisch festlegen (in der Listendefinition), beziehen Sie sich bitte auf meinen anderen Blogpost SPUtility. Redirect - NICHT WORK SPUtility. Redirect funktioniert nicht mehr in Event Receivers. Es wirft tatsächlich eine Ausnahme aus. Der Grund - SPUtility. Redirect beruht auf HttpContext. Current. Die an dieser Stelle nicht existiert. Getestet mit verschiedenen CSRRenderMode-Einstellungen. ARBEITSLÖSUNG: currentContext. Response. Redirect currentContext. Response. Redirect funktioniert zwar (WICHTIG: Nur wenn das Formular, das ein Ereignis initiiert, im CSRRenderMode. ServerRender-Modus gerendert wird.) Sie können das folgende Beispiel verwenden: Als Fan von LinkedIn Ich überprüfe häufig who8217s, das mein Profil betrachtet. Vor etwa einem halben Jahr habe ich dort merkwürdige Aktivitäten bemerkt. Mein Profil wird von zahlreichen 8220Accounting Professionals8221 mit 0 Verbindungen angesehen. Ich habe das Gefühl, dass jemand, der nicht mit LinkedIn verbunden ist, Kontoinformationen und Kontoaktualisierungen sammelt. UPDATE (2011-06-16): Wow, sie hörten zu. ) Die Hälfte dieser Profile zeigt sich nun als Anonymer LinkedIn User. Sie haben ihre Datenschutzeinstellungen geändert. An wen kann es sein: Wenn Sie durch LinkedIn-Profile scannen, macht es sence, nur ein Konto dafür zu verwenden. Ansonsten zeigt es hässlich in Profilstatistiken. Bitte kommentieren Sie, wenn Sie die gleiche Aktivität erleben oder zusätzliche Informationen haben. Hier ist die Liste der verdächtigen Konten, die mein Profil für die letzten drei Monate schlagen: Hulda Virgile Titel: Accounting Professional Demografische Informationen: Greater New York City Area Accounting Rico Natalizio Titel: Accounting Professional Demografische Info: Greater New York City Bereich Buchhaltung Zulema Miyares Titel: Stellenangeboten Beratungsangeboten Neuen Projekten Anfragen zu Stellen Expertenrat-Anfragen Geschäften Referenz-Anfragen Kontaktaufnahme Vollständiges Profil anzeigen Öffentliches Profil bereitgestellt von: LinkedIn Ein öffentliches Profil erstellen: Anmelden oder Jetzt Mitglied werden Das vollständige Profil von Accounting anzeigen: Sehen Sie einmal nach, Großraum New York City Bereich Buchhaltung Leopoldo Avner Anschrift: Accounting Professional Demografische Informationen: Greater New York City Area Buchhaltung Ena Zenke Titel: Accounting Professional Demografische Informationen: Greater New York City Area Buchhaltung Charley Darner Titel: Accounting Professional Demografische Info: Greater New York City Area Buchhaltung Kellee Himelfarb Titel: Accounting Professional Demografische Informationen: Greater New York City Bereich Buchhaltung Alana Shannon Titel: Accounting Professional Demografische Informationen: Greater New York City Area Buchhaltung Julio Dyer Titel: Accounting Professional Demografische Info: Greater New York City Area Accounting Francisco Head Titel: Stellenangeboten Beratungsangeboten Neuen Projekten Anfragen zu Stellen Expertenrat-Anfragen Geschäften Referenz-Anfragen Kontaktaufnahme Vollständiges Profil anzeigen Öffentliches Profil bereitgestellt von: LinkedIn Ein öffentliches Profil erstellen: Anmelden oder Jetzt Mitglied werden Das vollständige Profil von Accounting anzeigen: Sehen Sie einmal nach, Greater New York City Area Accounting Chester Booth Titel: Accounting Professional Demografische Informationen: Großraum New York City Bereich Buchhaltung Fernando Sanchez Titel: Accounting Professional Demografische Info: Greater New York City Bereich Buchhaltung Bitte überprüfen Sie die neuesten Updates am Ende des Artikels. In meinem vorherigen Beitrag habe ich über neue 2010 Office Data Connectivity Components oder Microsoft. ACE. OLEDB.14.0 gesprochen. Ich habe dort eine kleine Probe, wie man programmgesteuert auf SharePoint 2007 Daten mit dieser Komponente zugreifen kann. Während dieser Ansatz funktioniert großartig, wenn Sie jede benutzerdefinierte Lösung bauen, gibt es auch eine Möglichkeit, diese Komponenten ohne jede Kodierung überhaupt zu verwenden. Microsoft. ACE. OLEDB.14.0 kann in Excel Services verwendet werden, um seine Einschränkung auf SharePoint-Datenquellen zu bearbeiten. Zum Beispiel könnte dies verwendet werden, um Excel-Diagramme und Pivot-Tabellen, basierend auf SharePoint-Datenquelle zu erstellen. Diese Lösung wurde auf SharePoint 2007 Server (MOSS) und Microsoft Office 2007 getestet. Voraussetzungen: Sie benötigen 2010 Office Data Connectivity-Komponenten, die auf Ihrem SharePoint 2007 Excel Services-Computer installiert sind. Vergessen Sie nicht, zu Central Admin - Shared Services - Trusted Data Provider zu gehen - fügen Sie es dort als Provider ID Microsoft. ACE. OLEDB.12.0 und Provider Type OLE DB hinzu. Sie müssen Excel Services vertrauenswürdigen Speicherort (definiert in Central Admin) Wir können Microsoft. ACE. OLEDB.14.0 nicht direkt aus Excel verwenden, wird der Datenverbindungsassistent die Datenverknüpfung nicht erstellen. Aber wir können noch unsere eigene Office Data Connection (ODC) Datei erstellen. Anstelle von ProviderMicrosoft. ACE. OLEDB.14.0 müssen wir ProviderMicrosoft. ACE. OLEDB.12.0 verwenden. Es ist ein Fehler und wäre wahrscheinlich in der Freigabe fixiert. Hier ist die Quell-XML für die ODC-Datei. Kopiere sie auf deinen Lieblingstext-Editor und ändere ltodc: ConnectionStringgt: Benutzer-ID - nicht relevant Datenquelle - URL zu deiner SharePoint-Website DATABASE - URL zu deiner SharePoint-Website LIST - List Title (nicht Name) oder List GUID Es gibt keine Notwendigkeit zu ändern Liste in ltodc: CommandTextgt - es lädt Daten aus der Liste, referenziert in LIST sowieso Speichern Sie Datei mit Erweiterung. odc und versuchen Sie es in Microsoft Excel zu öffnen. Wenn alles richtig ist, solltest du deine Daten in Excel laden lassen. Speichern Sie Ihre. odc-Datei in der Datenverbindungsbibliothek in SharePoint 2007 (MOSS). Genehmigen Sie es, oder fragen Sie Eigentümer der Website (Administrator), um es zu genehmigen. Es wird noch für Sie arbeiten ohne die Genehmigung, aber nicht für die anderen Benutzer. Erstellen Sie eine neue Excel-Arbeitsmappe, wählen Sie unter Einfügen die Option PivotChart (oder PivotTable). Wählen Sie im Dialogfeld PivotTable mit PivotChart erstellen eine externe Datenquelle aus und klicken Sie auf Verbindungstaste auswählen. Klicken Sie auf Durchsuchen nach mehr und navigieren Sie zu Ihrer. odc-Datei in der SharePoint-Datenverbindungsbibliothek. Erstellen Sie Ihr Pivot-Diagramm oder Pivot-Tabelle. Wenn Sie fertig sind, klicken Sie auf Office Button und wählen Sie Veröffentlichen - Excel Services. Navigieren Sie zu Ihrer Ziel-SharePoint-Dokumentbibliothek. Klicken Sie auf die Schaltfläche Excel Services Options und wählen Sie aus, welche Elemente Sie mit Excel Services veröffentlichen möchten. Speicher die Datei. Jetzt sollten Sie in der Lage sein, auf Ihre Pivot-Tabelle oder Pivot-Diagramm mit Excel Web Access Web Part zugreifen. Diese Chartstable sind total dynamisch und zeigen Ihre aktualisierten Daten, wenn sie aktualisiert werden. Nach einigen zusätzlichen Forschung und Hilfe von Ivan Huter sieht aus wie beschrieben Methode funktioniert mit eigenständiger MOSS-Installation nur. Sie müssen die Kerberos-Authentifizierung konfigurieren, damit sie in einer Farm funktioniert. Leider habe ich jetzt keine Zeit, um Kerberos-Option zu testen, aber ich werde ein Update posten, wenn ich eine Chance bekomme. Lassen Sie mich wissen, wenn Sie irgendwelche Fragen oder Notizen haben. Freitag, 12. Februar 2010 Vor kurzem habe ich SharePoint Designer Workflow Activity erstellt, um Daten aus Excel zu importieren. Traditionell habe ich OLEDB benutzt, um das zu tun, aber meine Zielplattform war 64bit und ich konnte 2007 nicht benutzen OLEDB Drivers (64 Bit Treiber Version wurde noch nie implementiert). Glücklicherweise hat Microsoft am Ende des Jahres 2009 die Office System Driver Beta: Data Connectivity Components veröffentlicht. Dieser Treiber funktioniert gut, aber anstelle von ProviderMicrosoft. ACE. OLEDB.14.0 müssen Sie trotzdem auf ProviderMicrosoft. ACE. OLEDB.12.0 und Extended PropertiesExcel zugreifen 12,0 Xml. Das wäre wohl in der Freigabe behoben. Dieser Treiber auch nicht immer erkennt die zuletzt gefüllte Zeile in Excel, so stellen Sie sicher, dass Sie damit umgehen. Vergessen Sie nicht, zu Central Admin - Shared Services - Trusted Data Provider zu gehen - fügen Sie es dort als Provider ID Microsoft. ACE. OLEDB.12.0 und Provider Type OLE DB hinzu. Hier ist ein Beispielcode, der dazu beitragen kann, mit ihm zusammenzuarbeiten: Montag, 23. November 2009 Wenn Sie bereits SQL Server 2008 installiert haben, installieren Sie nicht SharePoint 2010 als Single Server (Standalone) Version. Es wird zusätzliche Instanz von SQL Server Express, die offensichtlich nicht das, was Sie wollen. Dies bringt auch einige zusätzliche Probleme (basierend auf diesem). Wählen Sie eine vollständige Installation aus. Wenn Sie keine Domain haben und lokale Konten verwenden, müssen Sie diesen Blog lesen. Donnerstag, 19. November 2009 Versuchen Sie nicht, SharePoint 2010 Beta (14.0.4536.1000) oben auf SharePoint 2010 Technical Preview (14.0.4006.1010) zu installieren, es sei denn, Sie brauchen das wirklich. Es wird installieren, aber würde nicht richtig funktionieren. Deinstallieren Sie die vorherige Version zuerst. Ich bin immer noch mit Office 2003 in der Lage sein, mit einigen Legacy-Anwendungen arbeiten. Bei der Installation von Beta Office 2010 x64 bekam ich einen Fehler, den ich 2003 und 2007 nicht mehr bei 2010 x64 verwenden kann - und ich muss stattdessen x86 verwenden. Deinstallieren Sie alle 20032007 Office-Apps, installieren Sie 2010 x64 und installieren Sie Office 20032007 ohne Probleme. Dienstag, 13. Oktober 2009 Nachdem wir Infrastruktur-Updates installiert haben, haben wir begonnen, einige Probleme mit InfoPath Forms zu erleben - es gab beim Laden des Formulars einen Fehler. Eine benötigte Ressource konnte nicht heruntergeladen werden. Um zu versuchen, den Download fortzusetzen, aktualisiere die Seite. . Bei der Verwendung einiger der alternativen URLs. SharePoint-Protokolle zeigte mir WARNUNG: Ungültige Kanarische für View-Datei Basierend auf den Informationen aus dem Microsoft gibt es ein bekanntes Problem mit dem Alternate Access Mapping in Infrastruktur-Updates. Das nächste kumulative Update soll dieses Problem beheben. Wird diesen Beitrag aktualisieren, sobald ich ihn installiert und überprüft habe. Update: Nach der Installation von SP2 wurde das Problem behoben. Nur das folgende Problem heute erlebt - verbringen Sie ein paar Stunden auf es herauszufinden: Ich habe ein voll vertrauenswürdiges InfoPath-Formular, das bereits veröffentlicht und funktioniert. Es gab ein paar Formularfelder, die mit den Feldspalten im SharePoint verknüpft sind. Ich habe versucht, ein paar zusätzliche hinzuzufügen - aber es hat nicht funktioniert. Die Felder waren da, die Werte waren innerhalb des InfoPath-Formulars, aber sie wurden nicht auf SharePoint übertragen. Es sieht so aus, als müsstest du dieses Formular für die Ortskollektion aus dem Central Admin wieder aktivieren (zuerst deaktivieren und wieder aktivieren), damit diese Assoziationen aufgefrischt werden können. Montag, 24. August 2009 Begegnete sonderbare InfoPath Bug. Hatte einen Genehmigungsworkflow mit dem InfoPath 2007 Web Form (MOSS). Benutzer hatte Probleme beim Einreichen des Formulars, klicken Sie auf die Schaltfläche "Senden" war nichts. Wiedereröffnung der Form war genug zu unterwerfen. Ich beobachtete, wie der Benutzer mit dem Formular arbeitete und bemerkte, dass der Benutzer doppelklickte auf den E-Mail-Link, der das Formular veranlasste, zweimal zu laden (in zwei IE-Tabs). Ändern dieser Gewohnheit, nur einmal zu klicken - löste das Problem vollständig. Ich habe keine Ahnung, warum doppelte Beladung das Formular verhindert, dass es von der Einreichung, aber das ist, was es war. Freitag, 29. Mai 2009 Während der Festsetzung des Problems in meinem vorherigen Post beschrieben, sah ich viele Leute versuchen, Auto Breite für die Spalten gesetzt. Ohne Glück aber Ich habe einen Weg gefunden: Change Expression, um so etwas wie 8221ltDIV8221 amp zu sein Ersetzen (FieldsYourField. Value,, ampnbsp) amp 8220ltDIV8221 Platzhalter-Eigenschaften ändern 8211 Registerkarte Allgemein 8211 Markup-Typ 8211 HTML-Interpretieren von HTML-Tags als Styles. (Platzhalter-Eigenschaften können durch Rechtsklick auf Expression (Feld) innerhalb der Zelle, nicht auf Zelle selbst zugegriffen werden). Das war zu einfach :) PS. Arbeitet für SSRS 2008, niemals auf 2005 getestet. PPS. Denken Sie daran - das funktioniert NUR im Webbrowser. Export in PDF und sogar Drucken wird noch vordefinierte Spaltenbreite verwenden. Es könnte auch ein Workaround geben - aber ich brauche es nicht wirklich, also werde ich es euch ablegen. Bitte beachten Sie, wenn Sie zusätzliche Hinweise finden. Mittwoch, 27. Mai 2009 Vor kurzem bekam ich ein seltsames Problem, einige Berichte mit SSRS 2008 zu bauen. Die Spaltenbreite begann, automatisch basierend auf Inhalt zu ändern, während alle Spalten Breite in SSRS durch Design festgelegt sind. Die Ursache dafür waren lange Worte und lange URLs in diesen Feldern, die nicht einpacken konnten. Sieht aus wie HTML-Tabelle hat die Spalte Größe entsprechend angepasst. (Übrigens, es war immer noch ok in der Vorschau, aber war die Änderung der Größe der Spalten in der veröffentlichten Version.) Verbrachte eine ganze Zeit versucht, herauszufinden, was damit zu tun, denn ich brauche diese Spaltenbreiten statisch zu sein. Hier ist die Lösung: Während dieses Problem durch native HTML-Funktionalität verursacht wird, können wir HTML verwenden, um es zu beheben. Ändern Sie den Ausdruck, um so etwas wie 8221ltDIV style8217width zu sein: 1.2in82178221 amp FieldsYourField. Value amp 8220ltDIV8221 wobei width die gewünschte statische Breite dieser Spalte ist. Platzhalter-Eigenschaften ändern 8211 Registerkarte Allgemein 8211 Markup-Typ 8211 HTML-Interpretieren von HTML-Tags als Styles. (Platzhalter-Eigenschaften können durch Rechtsklick auf Expression (Feld) innerhalb der Zelle, nicht auf Zelle selbst zugegriffen werden). PS Ich bin auch sicher, dass Sie den gleichen Ansatz verwenden können, um Spalten mit einstellbarer oder automatischer Breite zu erstellen, es braucht nur etwas Tweaking. Update: Hier ist es. Monday, 13. April 2009 Dieser Sound ist offensichtlich, aber sieht aus wie viele Leute wissen das nicht. JA, du kannst JavaScript in XSL verwenden. Und JA, du kannst JavaScript in SharePoint Data View XSL verwenden. Und es ist ziemlich einfach. Hier ist eine kleine Probe. Let8217s sagen, wir wollen wissen, wie alt jedes Element, das wir in Data View sehen, ist. Da die Version von XSL, die in SharePoint verwendet wird, 82201.08221 ist, haben wir don8217t wirklich ein breites Spektrum von Datumsfunktionen. Eigentlich haben wir nur 8220FormatDate8221 Funktion, und auch diese kommt aus einem speziellen (ddwrt) Microsoft Namespace. Jedenfalls, anstatt mit XSL zu arbeiten, versuchen, einige verrückte Vorlage zu erstellen, um diese Aufgabe zu behandeln, können wir einfach JavaScript verwenden. Ich gehe davon aus, dass Sie zuvor mit SharePoint Designer 2007 und Data Views gearbeitet haben. Du musst zuerst eine JavaScript-Funktion hinzufügen. Du kannst es der Seite, dem Seitenlayout oder der Masterseite hinzufügen, egal. Ich werde etwas modifiziertes Skript von 8220Das JavaScript Source8221 verwenden. Jetzt müssen wir diese JavaScript-Funktion aus der Datenansicht aufrufen. Klicken Sie einfach in eine der respektvollen Zellen in Ihrer Datenansicht und wechseln Sie zu Code View. You8217ll sehen so etwas wie dieses: Jetzt we8217ll bearbeitet es und füge den JavaScript Call hinzu: PS: Ich habe keine Screenshots hier aufgenommen, vorausgesetzt, dass es ziemlich einfach ist, aber wenn man etwas braucht, lassen Sie einfach einige Kommentare. Immer gefragt, ob es irgendeine Möglichkeit, zusätzliche Zone hinzufügen, um die Liste der URL-Zonen in SharePoint Central Administration Sorry Jungs, keine Möglichkeit. Es ist eigentlich eine vordefinierte Aufzählung definiert in Microsoft. SharePoint. dll Sonntag, 12. April 2009 Vor kurzem arbeitete ich viel mit SharePoint 2007 MOSS Publishing Seiten und Layouts. Ich bemerkte ein seltsames Verhalten, als ich einige Seiten von der Umgebung in die Produktion verlegte. Manchmal ist der Link zum Seitenlayout stecken und zeigt immer noch auf eine alte (dev) Umgebung. Es war nicht offensichtlich, einen Weg zu finden, um es zu beheben8230 Zuerst habe ich versucht, diese Seiten auf meine lokale Festplatte zu exportieren und sie im Notizblock zu editieren und zurückzusetzen. Dieser Ansatz hat funktioniert, war aber ein bisschen zu manuell8230 Nach einigen Kopfkratzen fand ich endlich eine Seite Einstellungen Seite. Wenn die Symbolleiste für die Seitenbearbeitung sichtbar ist (Sie haben auf 8220Site Actions8221 -8220Edit Page8221 geklickt) können Sie auf Seite Dropdown klicken und 8220Pageeinstellungen und Schedule8221 auswählen. Auf dieser Seite kannst du Page Title und Beschreibung, Publishing Schedule, Page Layout, Audience Targeting und Page Contact. Alternativ können Sie auch einfach auf sie zugreifen-sharepoint-sitelayoutsPageSettings. aspxPageltPage IDgt. Ich hatte ein paar Situationen, in denen es noch nicht funktionierte, und ich bekam einen Fehler, der versucht, die Layout-Einstellungen zu ändern. Sie können es immer in Notizblock in diesem Fall bearbeiten, wie ich schon früher beschrieben habe. Mittwoch, 8. April 2009 Ich kam in diese, als ich gebeten wurde, einige Microsoft Publisher generierte Dateien in SharePoint 2007 Website zu setzen. Grundsätzlich habe ich 8220index. html8221 Datei und 8220indexfiles8221 Ordner mit einigen Bildern und HTML-Dateien im Inneren. Ich habe die Indexdatei in die Wurzel gelegt und dann die Dokumentbibliothek mit dem Namen 8220indexfiles8221 erstellt. Auch ich lud alle Dateien in sie ohne Probleme mit 8220Open in Windows Explorer8221 Funktionalität. Alles begann wirklich gut zu arbeiten. Dann war ich überrascht, dass ich diese Dokumentbibliothek in SharePoint Designer nicht sehen werde. Als ich es aus dem Browser 8211 öffnete, war es leer. Aber es zeigte immer noch alle Dateien, wenn sie mit Windows Explorer geöffnet wurden. Als ich versuchte, die Dokumentbibliothekseinstellungen zu ändern, um mit den Inhaltstypen zu arbeiten, begann die gesamte Einstellungsseite, Fehler zu werfen. Ich habe einige Recherchen und es sieht aus wie SharePoint 2007 hat einige native Unterstützung von so genannten 8220thicket8221 Ordner (8220files8221 Ordner). SharePoint erlaubt es nicht, einen solchen Ordner zu erstellen, wenn Sie eine entsprechende (übergeordnete) Datei haben. Wenn Sie versuchen, einen solchen Ordner mit SharePoint Designer zu erstellen, hängt er seinen Namen mit einem Unterstrich am Ende an. SharePoint-Webschnittstelle verbirgt den Inhalt eines solchen Ordners, während diese Dateien von Windows Explorer zugänglich sind oder wenn Sie diese direkt durchsuchen. Mein raten 8211 versuchen, Dickicht in SharePoint zu vermeiden. Die sind dort schwer zu verwalten. Dienstag, 24. März 2009 Verwenden Sie bei Verwendung von SharePoint Designer niemals die IP-Adresse anstelle des Maschinennamens. Sie können sich sparen einige Zeit nicht versuchen, die Probleme zu lösen, die durch that8230 Ich spielte mit einigen SharePoint Designer Workflows den anderen Tag und wurde immer 8220SharePoint Designer ein Fehler beim Erzeugen der Aufgabe form8221 Fehler die ganze Zeit. Und ja, in dem Moment, in dem ich IP geändert habe, um den Namen zu verarbeiten, war das Problem verschwunden. Und das ist nicht der erste Fehler in meiner Praxis, die ich wegen dieser Ausgabe hatte. Dienstag, 10. März 2009 Vor einiger Zeit bekam ich eine Aufgabe, meine eigene SharePoint Central Admin Seite zu erstellen. Ich habe angefangen googeln und durch verschiedene Blogs gehen, aber fast nichts gefunden. Einige Tipps hier und da und that8217s ziemlich viel es. Als ich endlich fertig war, entschied ich, dass ich alle meine Erfahrung strukturieren sollte, wann immer ich eine Chance bekomme. Also, endlich, ein halbes Jahr später habe ich beschlossen, diesen Blog mit diesem Artikel zu starten. Eine kurze Einführung SharePoint Central Admin Seiten physisch befindet sich in 12Admin Ordner. Wenn Sie durchsehen möchten, wie einige der aktuellen Funktionen der zentralen Admin-Anwendungsseiten funktionieren, können Sie Reflector auf Microsoft. Sharepoint. ApplicationPages. Administration. dll und Microsoft. Office. Server. UI. dll verwenden. Es befindet sich jeweils innerhalb von 12CONFIGADMINBIN Ordner und Assembly Cache. Überprüfen Sie Out-of-the-Box-Seiten. Ermöglicht die Überprüfung der vorhandenen MOSS-Out-of-the-Box-Zentraladministration Anwendungsseiten: Erstellen einer minimalen SharePoint-Zentraladministration-Anwendungsseite. Typische zentrale Admin-Anwendungsseite erbt von Microsoft. SharePoint. ApplicationPages. GlobalAdminPageBase. Um mit den aktuellen Seiten übereinstimmen zu können, wollen wir das neue: 8226 Operations Section Seite 8211 von Microsoft. SharePoint. ApplicationPages. OperationsPage. ApplicationPages. OperationsPage 8226 Application Management Seite 8211 von Microsoft. SharePoint. ApplicationPages. ApplicationsManagementPage Beide OperationsPage und ApplicationsManagementPage-Klassen überschreiben nur ein PageToRedirectOnCancel Eigenschaft von GlobalAdminPageBase. Let8217s bauen unsere erste leere Central Admin Applications Management Seite: Hier ist der Code: Hier ist die Webseite: Deployment. Der beste Weg, um die Zentraladministrationsseiten zu implementieren, besteht darin, eine Funktion zu erstellen. Das wird schon oft beschrieben, also werde ich nicht tief werden. Vergiss einfach nicht: Brotkrumen hinzufügen. Bitte beachten Sie die folgenden Texte von Jan Tielens: Hinzufügen von Breadcrumb-Navigation zu Anwendungsseiten in der SharePoint-Zentraladministration und Hinzufügen von Breadcrumb-Navigation zu SharePoint-Anwendungsseiten, der Easy Way. Bereitstellen Sie Ihre Seiten nicht direkt in den Ordner ADMIN. Erstellen Sie einen Unterordner. In vielen Fällen möchten wir einen neuen Link zu unserer neuen Seite auf der MOSS Central Administration Site hinzufügen. Wir können die Elementmanifestdatei mit der dafür definierten CustomAction verwenden. Weitere Informationen finden Sie unter Custom Action Definitions und Default Custom Action Locations und IDs auf MSDN. Kurz gesagt, wir müssen Ort (Seite) wählen und eine Gruppe für unseren Link auswählen. Mögliche Standorte und Gruppen: Operations Page - Microsoft. SharePoint. Administration. Operations. Sicherung und Wiederherstellung - BackupRestore Datenkonfiguration - DataConfiguration Globale Konfiguration - GlobalConfiguration Logging und Reporting - LoggingAndReporting Sicherheitskonfiguration - Sicherheitstopologie und Services - Topologie Upgrade und Migration - Upgrade Content Deployment - ContentDeployment Application Management Seite - Microsoft. SharePoint. Administration. ApplicationManagement. Anwendungssicherheit - ApplicationSecurity Externe Serviceverbindungen - ExternalService SharePoint Site Management - SiteManagement SharePoint Web Application Management - WebApplicationConfiguration Workflow Management - WorkflowManagement Search - SearchGroup InfoPath Forms Services - IPFSApplicationConfiguration Office SharePoint Server Shared Services - OfficeServerCoreServices Application Erstellt Seite - Microsoft. SharePoint. Administration. ApplicationCreated . Links - Links Shared Services Administration Seite - Office. Server. ServiceProvider. Administration. Benutzerprofile und meine Websites - UAP-Suche - Suche Excel Services-Einstellungen - ExcelServer-Zielgruppen - AUD Office SharePoint-Nutzungsberichte - PortalAnalytics Business Data Catalog - BDC Hier ist ein Beispiel Elements. xml Hier ist ein Beispiel Feature. xml Dies ist genug, um ein Leerzeichen zu erstellen Seite. Sie können ein Archiv mit dem Quellcode und dem Bereitstellungspaket hier herunterladen. In Situationen, in denen ich die Leistung eines SQL Servers analysieren muss, habe ich eine Checkliste verwendet, um einen Überblick über die Konfiguration des SQL Servers zu erhalten. Dies kostet 10 Minuten zu füllen, aber es wird ein guter Anfang, um den Engpass in der SQL Server-Konfiguration zu finden. In diesem Blog finden Sie eine Checkliste für die Hardware-Konfiguration und Datenbank-Einstellungen. Am Ende finden Sie die Windows Performance-Zähler und eine SQL-Profil-Trace-Definition, die ich als Ausgangspunkt verwende. Leistungsprobleme können aus einer oder mehreren der folgenden bestehen: Hardwareprobleme. Hardwarekomponenten könnten fehlerhaft sein. Fehlerhafte Komponenten können zu schweren Leistungsproblemen führen. Hardwarekapazität Sie können die Kapazität der Systemkomponenten überschreiten. Möglicherweise benötigen Sie Post-Kapazitätsplanung oder um die vorhandene Hardware neu zu konfigurieren. Anwendungsprobleme SQL-Anweisungen können ineffizient sein, was zu übermäßiger Nutzung von Systemressourcen führt Hardwareprobleme: Überprüfen Sie das Ereignisprotokoll auf Fehler überprüfen Sie das Ereignisprotokoll Ihres Speichersystems Die drei häufigsten Komponenten auf Ihrem System, die das Tuning erfordern: Prozessor Disk Subsystem Speicher Prozessor: Eine allgemeine Regel ist Dass, wenn Ihre Prozessorauslastung kontinuierlich bei 80 Prozent oder höher bleibt oder wenn es oft mit dieser Rate spitzt, können Sie einen CPU-Engpass haben. Leistungszähler: Prozessorobjekt, Prozessor Zeitzähler. Festplatten-Subsystem: SQL-Server verwendet die folgenden drei Kategorien von Dateien für Datenbanken: 8226 Primäre Datendateien. Eine primäre Datendatei enthält Startinformationen für eine Datenbank, zeigt auf andere von der Datenbank verwendete Dateien, speichert Systemtabellen und Objekte und kann auch Datenbankdaten und Objekte speichern. Jede Datenbank hat genau eine primäre Datei. (Dateierweiterung. MDF) 8226 Sekundärdateien. Sekundärdateien sind für jede Datenbank optional. Sie können verwendet werden, um Daten und Objekte wie Tabellen und Indizes zu halten, die sich nicht in der primären Datei befinden. Eine Datenbank benötigt möglicherweise eine oder mehrere sekundäre Dateien, die auf separaten Datenträgern platziert sind, um Daten über die Festplatten zu verbreiten. (Dateierweiterung. NDF) 8226 Protokolldateien. Eine Protokolldatei enthält alle Transaktionsprotokollinformationen für die Datenbank und kann nicht verwendet werden, um andere Daten zu halten. (Dateierweiterung. LDF). Aus Performancegründen empfiehlt es sich, die LDF-Datei auf eine separate Festplatte zu legen. Die LDF sollte die einzige Datei auf dieser Festplatte sein, sonst ist der Vorteil einer separaten Festplatte für Log-Operationen verloren. 8226 Sie können zwei oder mehr Festplatten zu einem RAID-Array kombinieren. Das Hauptmerkmal eines RAID-Arrays ist, dass physikalische Festplattenlaufwerke zu einem logischen Laufwerk kombiniert werden, das ein virtuelles Laufwerk ist. Bei der Konfiguration von logischen Laufwerken müssen Sie den RAID-Level auswählen: 8226 RAID 0. Unterstützt keine Redundanz. Es gibt keine Fehlertoleranz, also wenn ein Datenträger ausfällt, werden alle Daten verloren gehen. RAID 0 wird nicht für die Speicherung von SQL Server-Datendateien empfohlen. 8226 RAID 1. Auch als Spiegelung bekannt. Verwenden Sie RAID 1, wenn Daten auf ein Laufwerk passen. Verwenden Sie RAID 1 für Ihre Betriebssystemdiskette. Es kann zeitaufwendig sein, ein Betriebssystem im Falle eines Fehlers wieder aufzubauen. Da das Betriebssystem in der Regel auf eine Festplatte passt, ist RAID 1 eine gute Wahl. Verwenden Sie RAID 1 für das Transaktionslog. Normalerweise kann das SQL Server-Transaktionsprotokoll auf einem Festplattenlaufwerk passen. Darüber hinaus führt das Transaktionsprotokoll meist sequentielle Schreibvorgänge durch. Nur Rollback-Operationen verursachen Lesevorgänge aus dem Transaktionsprotokoll. So können Sie eine hohe Leistungsrate erzielen, indem Sie das Transaktionsprotokoll auf das eigene RAID I-Volume isolieren. Verwenden Sie Schreib-Caching auf RAID I-Volumes. Weil RAID 1 schreibt, wird nicht beendet, bis beide Schriften durchgeführt wurden, können Sie die Leistung von Schriften verbessern, indem Sie einen Schreib-Cache verwenden. Wenn Sie einen Schreib-Cache verwenden, achten Sie darauf, dass es von einer Batterie gesichert wird. 8226 RAID 5. Jedes Datenträgervolumen, das mehr als 10 Prozent schreibt, ist kein guter Kandidat für RAID. Verwenden Sie Schreib-Caching auf RAID 5-Volumes. Da ein RAID 5-Schreibvorgang nicht abgeschlossen ist, bis zwei Lesevorgänge und zwei Schreibvorgänge durchgeführt wurden, können Sie die Antwortzeit von Schreibvorgängen durch die Verwendung eines Schreib-Caches verbessern. Wenn Sie einen Schreib-Cache verwenden, stellen Sie sicher, dass es mit einer Batterie gesichert ist. Allerdings ist der Schreib-Cache keine Heilung für das Übersteuern Ihrer Festplatten. Sie müssen immer noch in der Kapazität dieser Platten bleiben. Wie Sie sehen können, ist RAID 5 wirtschaftlich, aber zu einem Performance-Preis. 8226 RAID 10. RAID 10 ist eine Kombination aus RAD 0 und RAID 1. RAID 10 beinhaltet das Spiegeln eines Plattenstreifens. Each disk has an exact duplicate, but each disk contains only a part of the data. This configuration gives you the fault8212tolerant advantages of RAID 1 with the convenience and performance advantages of RAID 0. Use RAID 10 whenever the array experiences more than 10 percent writes. RAID 5 does not perform well with large numbers of writes. Use RAID 10 when performance is critical. Since RAID 10 supports split seeks, performance is very good. Use write caching on RAID 10 volumes. Since RAID 10 writes are not complete until both writes are done, you can improve the performance of writes by using a write cache. Write caching is only safe when used in conjunction with caches that are backed up with batteries. To determine the load placed on the individual disk drives in the system, you must perform some calculations based on next performance counters: Physical Disk Disk Readssec Physical Disk Disk Writessec With next formulas you can determine how many IOs are actually going to each disk in the array. RAID 0: IOs per Disk (Reads Writes) Number of Disks RAID 1: IOs per Disk (Reads (2 Writes))2 RAID 5: IOs per Disk (Reads (4 Writes)) Number of Disks RAID 10: IOs per Disk (Reads (2 Writes)) Number of Disks Times it takes to seek between tracks during random IOs A random IO on a typical system takes approximately 4.2 ms ((seek time read seek time write)2) for the disk to seek to where the data is held and an additional 2 ms in rotational latency, for a total of 6.2 ms. This gives a theoretical maximum of 161 IOs per second (since 6.2 ins can occur 161 times per second). As noted earlier, if you run a disk drive at more than 85 percent of its capacity, queuing occurs. Therefore, the maximum recommended IO rate is 137 IOs per second. Taking into account overhead in the controller, a general rule is to drive these disk drives at no more than 125 1 Os per second. So the closer the number of actually IO8217s per second gets to maximum capacity the longer the latencies get. The disk queue lengths will growth which results in performance lose. Memory: It is best to dedicate your database server to SQL Server applications only, if possible. That allows SQL Server to use as much memory as possible in the system without having to share it with other applications. SQL Server 2008 supports the maximum support memory of the operating system. To allow applications on Windows 20032008 X86 to address more than 4 GB, these editions support Address Windowing Extensions (AWE). AWE allows physical memory pages above the standard 4 GB memory space to be acquired by applications. To allow AWE with Windows 2000, you must add the PAE flag to the Boot. ini file. If you have between 4 GB and 16 GB in your system, you can also add the 3GB flag to the Boot file to allow only 1 GB of virtual memory space for the operating system, instead of 2 GB Amount of system memory Flag to add to the boot. ini file You must enable the AWE enabled option by setting it to I (its default is 0). Restart SQL Server for the setting to take effect. The AWE option is an advanced option. You must have show advanced options set to 1 to view the current values of advanced options or to change an advanced option using spconfigure. To configure show advanced opions, use the following statement: spconfigure 8220show advanced options8221, 1 To enable AWE use the following statement: EXEC spconfigure awe enabled, 1 For more details about enable and configure advanced options see the books online of SQL server. Before you can analyze the performance monitor log files you need to know the hardware configuration of the SQL server. Number of CPHU8217s Physical RAM amount If physical memory is more than 4 GB, what is the contents of the BOOT. INI Total number of physical drives in each array RAID level of array used for SQL server databases Hardware versus Software RAID Location of operating system Location of SQL server executables Location of SWAP file Location of Tempdb Location of System databases Location of user databases (MDF) Location of log files (LDF) What is the size of all user databases How many free disk space is available on each array Is write back cache in Disk controller On or Off Speed of disk drives (RPM) What is the average seek time of the hard disk What is the rotational latency of the hard disk What is the speed of the network card Are the network cards hard coded for SpeedDuplex How many database are attached in SQL server Is this Physical server dedicated to SQL server Is 8220NTFS data file encryption and compression8221 turned off Is the Windows 2003 server configured as stand alone server Is the 8220application response8221 setting, set to 8220Optimize Performance for background services8221 Location of operating system. For best performance, operating system should be on a disk array that does not include the SQL server data files. Location of SQL server executables. The location of the SQL server executables, is not critical, as long as they are not located on the same array as the SQL server data files. Location of the swap file. The location of the swap file is not critical, as long as they are not located on the same array as the SQL server data files. Location of the Tempdb. If the tempdb is heavily used, consider moving it to an array of its own, either RADI 1 or RAID 10, to boost disk IO performance. Avoid RAID 5 arrays as they can be slow when writing data. Location of User databases. For best performance, user databases should be located on their own array (RAID 1,5 or 10), separate from all other data files, including log files. How many free disk space is available While the performance effect isn8217t huge, it is important that all of your disk arrays have at least 20 of free space. This is because NTFS needs extra space to work efficiently. If space is not available, then NTFS is not able to function at its full capacity and performance can degrade. It also leads to more disk fragmentation. Is write back cache in Disk Controller on or off Write back cache will boost the performance of SQL server, however you should have a controller that offers battery backup. Otherwise you will get a corrupt database in case of a power failure. This is because SQL server already thinks that the data is stored, while it is still in cache. All data in cache is cleared after a power failure. Are the network cards hard coded for speedDuplex It is fairly common for a network card to auto-sense incorrectly, setting a less than optimum speed or duplex setting, which can significantly hurt network performance. So set manually the card8217s speed and duplex setting. Is this physical server dedicated to SQL server SQL server should run on a dedicated physical server, not shared with other application software. When you share SQL server with other software, you force SQL server to fight over physical resources, which make it much more difficult to tune your server for optimum SQL server performance. Database configuration settings: Database configuration setting Autoclose: By default set to OFF, only useful to set On when you have a lot of SQL databases on your server which are used incidental. When set to ON, the database is closed and shut down cleanly when the last user of the database exits and all processes in the database complete, thereby freeing any resources. The database reopens automatically when a user tries to use the database again. If the database was shut down cleanly, the database is not reopened until a user tries to use the database the next time SQL Server is restarted. When set to OFF, the database remains open even if no users are currently using the database. The Autoclose option should not be used for databases accessed by an application that repeatedly makes and breaks connections to SQL Server. The overhead of closing and reopening the database between each connection will impair performance. Autocreate statistics: When set to On, statistics are automatically created on columns used in a predicate. Adding statistics improves query performance because the SQL Server query optimizer can better determine how to evaluate a query. Autoupdatestatitics: When set to On, existing statistics are automatically updated when the statistics become out-of-date because the data in the tables has changed. Autoshrink: By default set to Off, because mostly every database will growth in size during usages. Database auto grow: By default set to On, the databases can growth whenever necessary. There is only one restriction, you need to have diskspace available on the array where the database is stored. Transaction log auto grow: By default set to On, The transaction log can growth whenever necessary. There is only one restriction, you need to have diskspace available on the array where the transaction log is stored. Recovery model . Can be set to simple if only full back ups are made and no transaction log back ups are made. Use the performance monitor to collect data of the SQL server. Define a trace log with next counters and set the interval time on 1 minute. Performance monitor counters: I recently came accross your blog and have been reading along. I thought I would leave my first comment. I dont know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often. Thanks Joannah nice to hear that you enjoyed my blog. Hi Andre, Recently I have been assigned to do DB auditing for my company and your blog is just wonderfull Thanks man and keep up good work Andre, Your post about SQL performance is great. But may be too detailed for my understanding :(. I am planning to have a MSSQL 2008 R2 Express serving as back-end of a website. The database and website are stored at a Virtual Dedicated Server at GoDaddy (I know, not the best). How can I anticipate when the database will be two slow I want users to get responses every 2 seconds, max. How do I estimate this Iwall, You need to build logging in your application to measure the response times of every ASPX page. Then you can see which pages are fast or slow. Otherwise you need to use SQL profiler to profile on duration. Be aware that you measure of SQL duration. For the user you also need to take into account the time to process the ASPX page. BEside this i do not know if you can use SQL profiler at your hosting provider. If a database is split into multiple files in same disk, does that reduces the performance. Anup no that doesn39t matter. Performance Will be THE Same. Can u please suggest what should be the interval to collect performance metrics and can you please post the best performance metrics. Andr van de Graaf My name is Andr van de Graaf, Im working for Exact Software in the Research team as Principal Research Engineering. Im located in Delft, The Netherlands. In my work i have a strong focus on performance of applications. Beside performance I want to keep everything as simple as possible. What is the perfect balance between performance and functionality View my complete profile Search This Blog Popular Posts Blog Archive Followers of my blog Blogs I ReadConnecting PowerShell to SQL Server Introduction PowerShell (aka Posh or just PS) is becoming more and more of a tool for operational support and some deployment scenarios. If you need to pull or place data into SQL Server, PS can be a handy way of doing it in both one-off and automated work. There are a number of ways to connect to SQL Server via PS. In this article I wanted to go over the options that are available to you. If you have used PS for any number of months or years, you know there tends to be multiple ways of performing a task. So it goes without saying if you are building out scripts to use in production to test, test, and testthen test it one more time. List of Options As an overview the following is the list of options I will go over in this article: SQL Server PowerShell (SQLPS) SQL Server Management Objects (SMO) (System. Data. SqlClient) SQL Server PowerShell SQLPS is a utility that was first released with SQL Server 2008, you may see this referenced in various ways. It exists as a (1) utility and (2) as a PS module. The utility and module are installed with the SQL Server Management tools from SQL Server 2008 and up. There are a few ways of connecting to SQL Server using this utility, and each one has strengths and weaknesses. This is a utility that you should be able to open by typing it in the run prompt (Start gt Run). A second option, right-click a node under Object Explorer, within SQL Server Management Studio (SSMS), and select Start PowerShell. The SQLPS utilitys main access point is using the provider SQLSERVER: to browse SQL Server like a file directory. With that, based on the node you open SQLPS from will place you within that path of the provider. Under each folder you are in for the provider offers properties to read or set, and some methods to use for administration. One thing you must remember when using this utility is the version of PS you operate under is 2.0, an obvious weakness. Example: I use on Windows 10 Operating System (OS) with PS version 5.0 and SQL Server 2012: It is very important distinction to remember because a cmdlet (pronounced command-let ) under version 5.0 may not show up at all in SQLPS. exe, or be missing new features that were added. This method to accessing a SQL Server instance is for those one-liner situations, but will admit that SQLPS is rather slow to work with at times, so dont get in too big of a rush. As an example, a common one-liner I use SQLPS utility for is when I am refreshing development environment and just want to set all the databases to SIMPLE recovery mode: Get - ChildItem SQLSERVER. SQL LOCALHOST SQL12 Databases foreach SQLPS Module Importing the SQLPS module into a PS session provides the same access using the utility does, but allows you to operate in the PS version of the OS you operate under. In SQL Server 2008 and 2008 R2 you will load the SQLPS as a snap-in (Add-PSSnapin), then with SQL Server 2012 and up it is imported (Import-Module). When you import the module it will load the SQLSERVER: provider and change your location to that path. You will also have access to the cmdlets offered in the module, which these are also accessible via the utility. You can get a list of those cmdlets using the Get-Command: The most commonly known cmdlet out of this module is, Invoke-Sqlcmd. This is generally thought of as a PS replacement for the old sqlcmd command-line utility, that to date is still available in currently supported versions of SQL Server. You utilize this cmdlet to execute any T-SQL query that you want against one or multiple instances. The advantage you get using Invoke-Sqlcmd over the command-line utility is the power of handling output in PS. The output from the cmdlet is created as a DataTable ( System. Data. DataRow is the exact type). Just passing the full command to Get-Member will show the TypeName: You will also see in the output that if you properly named your columns in your SELECT statement they show up as properties in that array. You can leverage the data conversions available in PS such as ConvertTo-Csv, or even ConvertTo-HTML if you needed to build an HTML report. SQL Server Management Objects (SMO) SMO is a pain to some, but once you learn how to research the SMO namespace in MSDN your eyes can be opened to the possibilities. SMO is most commonly seen used to perform administration task against SQL Server instance(s). You can use this to do a check of the configuration instance where you may do a comparison of the settings to your standard configuration or for audit situations. It offers some flexibility over executing the equivalent T-SQL via Invoke-Sqlcmd, if there is an option via T-SQL. You can also execute T-SQL through SMO if you wish and there is one benefit using this method over the method. The benefit you get is executing T-SQL statements that may include the GO batch separator. Using the method errors when it hits the first GO in a script, because it is not true SQL syntax. This can be useful in deployments where someone may have scripted out the objects via SSMS, which will put in the GO statement. If you happen to have gotten a long script, or a zipped file that contains hundreds of scripts, utilizing SMO in this situation saves a good bit of headache. Loading SMO To use SMO the first thing that has to be done is loading the SMO assembly into your PowerShell session. You can actually do this by simply loading the full SQLPS module, as that will automatically load the assembly. The other method, and more commonly used in online articles, is to add the assembly using System. Reflection. Assembly . LoadWithPartialName () . A more proper method to load SMO, as of PS 3.0, is to use the cmdlet Add-Type. Now from there you will need to work out which task you want to perform, and find the class of objects and methods that you need. It, obviously, is not the method used for quickly doing a task (at least until you get familiar with how SMO works). Framework PS is built on top of so you have access to that framework that can be used to perform work against SQL Server. This is more commonly used to work with data itself over performing administrative task. I will also tell you it takes a good bit more typing to use, so not an option for one-liners. There is one advantage you can achieve using this process over the ones we already went over and that is, portability. You will find on any Windows OS so there is no dependency on SQL Server tools being installed, at least on the machine the script is running on. The version of however can be dependent on the version of the OS you run, so just ensure you test before moving your script to production. Now there are various ways of doing this but, on average, you will see most examples create the following objects to get connected to an SQL Server instance: Create a connection Create your command (the T-SQL that will be executed) Create your data adapter (if you want to retrieve data) Create your dataset (the adapter fills this object) Create a Connection You simply create an object of System. Data. SqlClient. SqlConnection and pass the connection string that will be used to connect to the given SQL Server instancedont forget to open it. Create Your DataSet (and fill it) This object will be the type System. Data. DataSet and as defined is simply an in-memory cache of data. Which this is something to take note of that the query you are running has to be loaded into memory, so the larger the dataset the more memory needed. data New-Object System. Data. DataSet adp. Fill(data) Out-Null This is just my preference but when I use the Fill method I pipe this to Out-Null simply because this method will output the number of records it filled. If you want that output just remove the Out-Null . Retrieving Your Data After you do all that you are probably wondering how you output that data so you can see it The data itself resides in a collection of tables within the Table property of your DataSet object. Now depending on the version of you are working with you might actually need to specify the index of the collection (e. g. Tables 0 ), but this is generally only required in older versions below 4.0.

No comments:

Post a Comment