Remove the InfoPath form customization from a SharePoint list.

Removing the InfoPath customization from a list after having used ‘Customize with InfoPath’ is not always easy, especially during a migration to SharePoint Subscription Edition. Indeed, this latest version no longer includes certain options/menus that allow you to revert to the default list forms for a content type.

To identify a list customized with InfoPath, you can use the following script (https://gist.github.com/jchable/6234bd200eae4109ac77717934d14ea0):

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
 
$WebAppURL="<webapp URL>"
$ReportOutput="<path to output CSV file>"
$ResultColl = @()
 
$WebsColl = Get-SPWebApplication $WebAppURL | Get-SPSite -Limit All | Get-SPWeb -Limit All
 
Foreach($Web in $WebsColl)
{
 Foreach ($List in $web.Lists | Where { 
$_.ContentTypes[0].ResourceFolder.Properties["_ipfs_infopathenabled"]})
    {
            Write-Host "InfoPath Form : $($Web.URL), $($List.Title)"
            $Result = new-object PSObject
            $Result | add-member -membertype NoteProperty -name "Site URL" -Value $web.Url
            $Result | add-member -membertype NoteProperty -name "List Name" -Value $List.Title
            $Result | add-member -membertype NoteProperty -name "List URL" -Value "$($Web.Url)/$($List.RootFolder.Url)"
            $Result | add-member -membertype NoteProperty -name "Template" -Value $list.ContentTypes[0].ResourceFolder.Properties["_ipfs_solutionName"]
            $ResultColl += $Result
    }
}

$ResultColl | Export-csv $ReportOutput -notypeinformation

Or check in SharePoint Designer to see if certain files are present:

Form customization is enabled via the _ipfs_infopathenabled property of the content type and the form URLs.

Here is a script that remove InfoPath customization from the content types of lists in a site (https://gist.github.com/jchable/26b5161dedc4bb42ab2b8bc7563e7ed0):

$web = get-spweb "<web site URL>"
  
function removeCustomInfopathListForms([String]$folderName, [Microsoft.SharePoint.SPContentType]$ct)
{
  write-host Removing custom Infopath list form on $folderName

  # Remove InfoPath customisation
  $ct.ResourceFolder.Properties["_ipfs_infopathenabled"] = "False"
  # Reset default form URL
  $ct.NewFormUrl = ""
	$ct.EditFormUrl = ""
	$ct.DisplayFormUrl = ""
  $ct.ResourceFolder.Update()     
     
	write-host "Liste:" $list.Title "  CT:" $strContentType
     
  $folder = $web.getFolder($folderName)
  write-host Delete files from folder: $folder.Name
     
  # "Delete the InfoPath Form from the server"
  for ($i = $folder.Files.count -1; $i -gt -1; $i--)
  {
       write-host deleting $folder.Files[$i].Name
       $folder.Files[$i].delete()
  }
     
  $web.dispose()
}
  
# Check content type in all lists for InfoPath forms
foreach($list in $web.Lists) { 
    foreach ($ct in $list.ContentTypes){
        if ($ct.ResourceFolder.Properties["_ipfs_infopathenabled"] -eq "True"){
            $strfolderName =$web.url + "/" + $ct.ResourceFolder.URL
            write-host "The following url is using a custom infopath list form:"  $strFolderName                               
            removeCustomInfopathListForms -folderName $strfolderName -ct $ct
        }
    }
}
$web.Dispose()

write-host "Script ended"

[MS Breakfast] Slides de ma session sur le RAG avec Azure AI Studio

Dans le cadre de cette première édition des « Microsoft breakfast » (« Petit-déjeuner Microsoft ») en décembre 2023, qui a été un véritable succès (merci à tous nos partenaires et aux speakers d’exception que sont Sylver SCHORGEN et Mehdi MAHRONG) je vous avais promis mes slides … mais disons que le temps à passer, qu’il a plu ces derniers jours et que j’ai repris les entrainements de trail … bref, j’avais juste complètement zappé et mon copilot ne l’a pas fait pour moi pendant ce temps😅

Alors les voici les slides de la session « MSBreakfast – Azure OpenAI et Microsoft 365 Copilot » :

How to activate Bing Chat Enterprise

Here we are, Bing Chat Enterprise is out ! Have a look at the official product page : Your AI-Powered Chat for Work | Bing Chat Enterprise (microsoft.com). With Edge for Business already available, Edge is placing itself as personal and professional place to browse and use Internet service.

  1. Connect to this link to accept Bing Chat Enterprise Supplemental terms : https://www.bing.com/business/bceadmin
  2. Check the box to accept terms and click on Activate in Bing chat Enterprise zone :

In case of success you will have the following message :

If you are licensed for Microsoft 365 E3, E5, Business Standard, Business Premium, or A3 or A5 for faculty, it will comes at no additional costs for your company.

Next time, you and your collegues, will open Edge, you should see a Protected label in the upper right corner that indicates Bing Enterprise is enable and you can share data and conversations with Bing Chat securely and privately.