Private/Wissen/B_Basic/B35_Transaction.ps1

<#
 
# Transaktionen in der PowerShell
 
 Mit dieser Funktion können Sie eine Transaktion starten die aus mehreren Befehle besteht um im Anschluss die Transaktion festzuschreiben oder zurückzusetzen.
 
- **Hashtags** Transaction
 
- **Version** 2020.05.27
 
#>


# READ Weiterführende und Nachschlage-Informationen:

Get-Help -Name 'about_Transactions' -ShowWindow
Get-Command -Noun 'Transaction' -Module 'Microsoft.PowerShell.*'

# ! ACHTUNG - Gilt nur für Cmdlets die den Parameter UseTransaction besitzen:

Get-Help '*' -Parameter 'UseTransaction'

# ! ACHTUNG - Cmdlets die einem SwitchParameter UseTransaction besitzen und mit den PowerShell Provider verzahnt sind, z.B. New-Item ist diese Funktionalität nur möglich, wenn der PowerShell Provider Transactions unterstützt:

Get-PSProvider

# ! Beispiel 1:

Set-Location -Path 'hkcu:\software'

Start-Transaction
New-Item '_ABC' -UseTransaction
New-ItemProperty -Path '_ABC' -name 'Heute' -value (Get-Date) -UseTransaction
Complete-Transaction

Get-ItemProperty -Path '_ABC'
Remove-Item -Path '_ABC' -Force

# ! Beispiel 2:

Start-Transaction
New-Item '_ABC' -UseTransaction
New-ItemProperty -Path '_ABC' -name 'Heute' -value (Get-Date) -UseTransaction
Undo-Transaction

Get-ItemProperty -Path '_ABC'

# TODO QUIZ - https://attilakrick.com/schlagwort/powershell-transaction/