FLOW – Jak zwiększyć limit pobieranych elementów z listy SharePoint

Standardowo funkcja Pobierz elementy w usłudze Microsoft Flow pobiera z listy SharePoint tylko 100 elementów. Można zwiększyć limit w bardzo prosty sposób, chociaż niezbyt oczywisty.

Należy rozwinąć menu klikając w kropeczki po prawej stronie, a następnie wybrać Ustawienia.

Po ukazaniu okna z ustawieniami, należy ustawić opcję Stronicowanie w pozycję Włączone, a następnie określić Próg, wpisując np. 300.

Od tego momentu funkcja Pobierz elementy zwróci nam 300 elementów z listy SharePoint.

Jak przekonwertować format aplikacji PowerApps

Podczas tworzenia nowej aplikacji wybiera się format. Można wybrać format telefonu lub tabletu.

PowerApp Layout Options

Czasami przychodzi moment, że chcemy zmienić format naszej istniejącej aplikacji, ponieważ np. format telefonu jest zbyt mały. Obecnie Microsoft nie udostępnia gotowego rozwiązania. Jeżeli nie chcemy poświęcać wielu godzin na tworzenie nowej aplikacji w formacie tabletu lub odwrotnie, jest na to pewien niestandardowy sposób.

Poniżej przykład jak wykonać konwersję aplikacji w formacie telefonu na format tabletu:

  1. Eksportuj i zapisz na dysku istniejącą aplikację w formacie telefonu.
  2. Stwórz nową czystą aplikację w formacie tabletu.
  3. Eksportuj i zapisz na dysku aplikację w formacie tabletu.
  4. Zmień nazwę obu plików .msapp poprzez dodanie rozszerzenia .zip.
  5. Rozpakuj oba pliki do dwóch katalogów.
  6. W katalogu telefonu, otwórz plik properties.json.
  7. W katalogu tabletu, otwórz plik properties.json.
  8. Wpisz nazwę aplikacji w pliku tabletu.
  9. Skopiuj element LocalConnectionReferences z pliku formatu telefonu do pliku formatu tabletu.
  10. Skopiuj wartość OriginatingVersion z telefonu do tabletu. 
  11. Otwórz archiwum pliku w programie typu WinRAR, WinZIP, itp.
  12. Przeciągnij plik z folderu tabletu properties.json do archiwum, które wcześniej otworzyłeś, podmieniając tym samym stary plik.
    Uwaga: Musisz przeciągnąć plik do otwartego archiwum. Spakowanie na nowo katalogu nie działa.
  13. Zamknij program do archiwizacji.
  14. Usuń rozszerzenie .zip z archiwum pliku formatu telefonu.
  15. Uruchom PowerApps.
  16. Wybierz Otwórz
  17. Wybierz plik .msapp, który wcześniej modyfikowaliśmy.
  18. Kliknij OK.
  19. Wybierz App Settings.
  20. Wybierz Screen size + orientation.
  21. W okienku Size radio button, wybierz 3:2.
  22. Kliknij Apply.
  23. Kliknij Save.
  24. Ponownie, w okienku Size radio button, wybierz 16:9.
  25. Wybierz Apply.
  26. Wybierz Save.

To wszystko. W kilku krokach wykonaliśmy konwersję naszej aplikacji z formatu telefonu na format tabletu i ominęliśmy tym samym budowanie aplikacji na nowo.

Przeniesienie listy z SharePoint On-Premise do SharePoint Online

Najszybszym sposobem na przeniesienie listy np. z SharePoint On-Premise do SharePoint Online jest eksport do programu Excel.

W SharePoincie źródłowym wybieramy opcje Eksportuj do programu Excel:

Po zapisaniu pliku na lokalnym dysku, przechodzimy do witryny SharePoint Online. Należy dodać nową aplikację:

Spośród dostępnych opcji wymieramy Importuj arkusz kalkulacyjny.

Następnie uzupełniamy nazwę nowej listy, oraz wskazujemy wyeksportowany wcześniej plik Excel.

Zaznaczamy zakres tabeli i wybieramy importuj.

Nasza lista została zaimportowana. Należy teraz ustawić właściwie poszczególne kolumny, tak aby typ kolumny był zgodny i ewentualnie przejść do dalszej modernizacji listy za pomocą Flow i PowerApps.

Windows Server 2016 i Sharepoint 2019 – instalacja dodatków offline

W celu zainstalowania dodatków w Windows Server 2016, w momencie gdy serwer ma ograniczone połączenie z Internetem, należy:

  • Pobrać iso Windows Server 2016
  • Zamontować obraz na serwerze
  • Za pomocą PowerShell wykonać polecenie:
Import-Module ServerManager

Add-WindowsFeature Net-Framework-Features,Web-Server,Web-WebServer,Web-Common-Http,Web-Static-Content,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-App-Dev,Web-Asp-Net,Web-Net-Ext,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Health,Web-Http-Logging,Web-Log-Libraries,Web-Request-Monitor,Web-Http-Tracing,Web-Security,Web-Basic-Auth,Web-Windows-Auth,Web-Filtering,Web-Digest-Auth,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Mgmt-Tools,Web-Mgmt-Console,Web-Mgmt-Compat,Web-Metabase,WAS,WAS-Process-Model,WAS-NET-Environment,WAS-Config-APIs,Web-Lgcy-Scripting,Windows-Identity-Foundation,Server-Media-Foundation,Xps-Viewer –Source d:\sources\sxs

Jako Source wskazujemy nasz zamontowany obraz. Powyższe polecenie instaluje nam niezbędne dodatki dla Sharepoint Server 2019.

Tutaj wskazałem jak zainstalować pozostałe wymagania: http://czochara.io/sharepoint/instalacja-offline-wymagan-wstepnych-dla-sharepoint-2019-server/

Usuwanie elementów listy SharePoint za pomocą PowerShell

Kolejną ciekawą alternatywą dla ręcznego usuwania elementów listy poprzez wyklikiwanie, jest zrobienie tego za pomocą skryptu PowerShell.

Możemy wykorzystać skrypt np. w momencie gdy chcemy usunąć elementy starsze niż bieżący rok. Poniżej sposób:

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") 
$site = new-object Microsoft.SharePoint.SPSite("http://nazwa_serwera")
$relweburl = "/nazwa_podwitryny"
$web = $site.openweb($relweburl)
$list = $web.Lists["nazwa_listy"]                                                                       
$caml='<Where>
        <Leq>
            <FieldRef Name="Modified" />
            <Value IncludeTimeValue="TRUE" Type="DateTime">2018-12-31T02:32:20Z</Value>
        </Leq>
    </Where>'
$query=new-object Microsoft.SharePoint.SPQuery 
$query.Query=$caml | Write-Output
$items=$list.GetItems($query) 
$listItemsTotal = $items.Count;
for($x=$listItemsTotal-1;$x -ge 0; $x--)
{
      Write-Host("DELETED: " + $listItems[$x]["Modified"])
      $items[$x].Delete()  
    }
$web.Dispose() 
$site.Dispose() 

Niestety powyższy skrypt działa wolno. Ten jest znacznie wydajniejszy:

Add-PSSnapin Microsoft.SharePoint.PowerShell
 
[System.reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
$web = Get-SPWeb "YOUR SHAREPOINT SITE"
$list = $web.Lists["YOUR LIST NAME"]
$DeleteBeforeDate = [Microsoft.SharePoint.Utilities.SPUtility]::CreateISO8601DateTimeFromSystemDateTime([DateTime]::Now.AddDays(-7))
$caml='<Where> <Lt> <FieldRef Name="Created" /><Value Type="DateTime">{0}</Value> </Lt> </Where> ' -f $DeleteBeforeDate
$query=new-object Microsoft.SharePoint.SPQuery
$query.Query=$caml
$col=$list.GetItems($query)
Write-Host $col.Count
$col | % {$list.GetItemById($_.Id).Delete()}
$web.Dispose()

Wyświetlanie wewnętrznych nazw kolumn listy SharePoint

W wielu przypadkach wyświetlane nazwy kolumn nie są takie same jak nazwy wewnętrzne „widziane” przez SharePoint.

Aby sprawdzić to za pomocą PowerShell, można użyć poniższej kwerendy:

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") 
$site = new-object Microsoft.SharePoint.SPSite("http://nazwa_serwera") 
$relweburl = "/podwitryna"
$web = $site.openweb($relweburl)
$list = $web.Lists["nazwa_listy"]                                                                       
$list.fields | select Title, InternalName, Hidden, Sealed, CanBeDeleted | where {$_.Hidden -eq $false} | sort title | ft -AutoSize

Instalacja OFFLINE wymagań wstępnych dla SharePoint 2019 Server

SharePoint 2019 wprowadza kilka nowych wymagań wstępnych.

Poniższa tabela przedstawia kompletną listę wszystkich wymagań wstępnych dla SharePoint 2019. Czasami zdarza się, że nasz serwer nie ma dostępu do sieci zewnętrznej, lub dostęp do Windows Update jest zablokowany przez GPO. W takim wypadku należy zainstalować składniki offline.

Poniżej przestawiłem sposób instalacji wraz z listą niezbędnych wymagań. Lista zawiera parametry wraz z linkami, z których możemy bezpośrednio pobrać składniki.

Lista wymagań wstępnych

ParametrNazwa
KB3092423Cummulative Update Package 7 for Microsoft AppFabric 1.1 forWindows Server (KB3092423)
IDFX11Microsoft Identity Extension
MSIPCClientMicrosoft Information Protection and Control client
SQLNCliMicrosoft SQL Server 2012 SP4 Native Client
WCFDataServices56Microsoft WCF Data Services 5.6
AppFabricWindows Server AppFabric
DotNet472Microsoft .NET Framework 4.7.2
SyncMicrosoft Sync Framework Runtime v1.0 SP1 (x64)
MSVCRT11Visual Studio C++ Redistributable Package for Visual Studio 2012
MSVCRT141Visual Studio C++ Redistributable Package for Visual Studio 2017

Instalacja za pomocą linii poleceń

W celu instalacji offline, należy pobrać wszystkie powyższe wymagania na komputerze, który ma dostęp do Internetu. Następnie potrzebujemy
prerequisiteinstaller.exe, który znajduje się w obrazie z instalacją SharePoint 2019 Server. Wszystkie paczki należy przekopiować do folderu C:\temp na serwerze, a następnie uruchomić poniższe polecenie w PowerShellu:

.\prerequisiteinstaller.exe `
    /SQLNCli:c:\temp\sqlncli.msi `
    /Sync:c:\temp\Synchronization.msi `
    /AppFabric:c:\temp\WindowsServerAppFabricSetup_x64.exe `
    /IDFX11:c:\temp\MicrosoftIdentityExtensions-64.msi `
    /MSIPCClient:c:\temp\setup_msipc_x64.exe `
    /WCFDataServices56:c:\temp\WcfDataServices56.exe `
    /MSVCRT11:c:\temp\vcredist_x64.exe `
    /MSVCRT141:c:\temp\vc_redist.x64.exe `
    /KB3092423:c:\temp\AppFabric-KB3092423-x64-ENU.exe `
    /DotNet472:c:\temp\NDP472-KB4054530-x86-x64-AllOS-ENU.exe

Exchange – jak przepiąć skrzynkę do nowego użytkownika

Czasami zdarza się sytuacja, gdy musimy przepiąć istniejącą skrzynkę pocztową z jednego użytkownika na drugiego.

Można to zrobić w trzech prostych krokach, wykorzystując Exchange Management Shell.

Pierwszy krok to wyszukanie bazy danych, w której znajduję się skrzynka. Należy skorzystać z polecenia:

Get-mailbox aliasUzytkownika | format-list *

Nazwa bazy danych widnieje przy polu Database.

Potrzebny będzie również ExchangeGuid. Kopiujemy zatem również zawartość tego pola.

Następnym krokiem jest wyłączenie skrzynki pocztowej poleceniem:

Disable-Mailbox –Identity `000000000-0000-0000-0000-0000000000`

Jako parament do -Identity podajemy ExchangeGuid

Ostatni krok to podłączenie skrzynki pocztowej do nowego konta:

Connect-mailbox –Identity `000000000-0000-0000-0000-0000000000` –database `nazwaBazyDanych` -User `domena\nowyUser` -Alias `aliasNowegoUsera`

To wszystko. Od tego momentu nowy użytkownik domenowy ma podłączoną starą skrzynkę pocztową.