65 lines
1.7 KiB
PowerShell
65 lines
1.7 KiB
PowerShell
<#
|
|
.SYNOPSIS
|
|
A short one-line action-based description, e.g. 'Tests if a function is valid'
|
|
.DESCRIPTION
|
|
A longer description of the function, its purpose, common use cases, etc.
|
|
.NOTES
|
|
Information or caveats about the function e.g. 'This function is not supported in Linux'
|
|
.LINK
|
|
Specify a URI to a help page, this will show when Get-Help -Online is used.
|
|
.EXAMPLE
|
|
Test-MyTestFunction -Verbose
|
|
Explanation of the function or its result. You can include multiple examples with additional .EXAMPLE lines
|
|
#>
|
|
|
|
function Invoke-ITDSqlCmdJob {
|
|
[CmdletBinding()]
|
|
param(
|
|
[string]
|
|
$ServerInstance,
|
|
|
|
[string]
|
|
$Database,
|
|
|
|
[string]
|
|
$Query,
|
|
|
|
[PSCredential]
|
|
$Credential
|
|
)
|
|
|
|
begin {
|
|
|
|
}
|
|
|
|
process {
|
|
|
|
$ScriptBlock = {
|
|
param($ServerInstance, $Database, $Query)
|
|
$ErrorActionPreference = 'Stop';
|
|
|
|
return [PSCustomObject]@{
|
|
Result = (Invoke-Sqlcmd -ServerInstance $ServerInstance -Query $Query -Database $Database)
|
|
}
|
|
}
|
|
|
|
$Job = Start-Job -Credential $Credential -ScriptBlock $ScriptBlock -ArgumentList $ServerInstance, $Database, $SqlQuery
|
|
(Wait-Job -Job $Job | Receive-Job -Keep).Result
|
|
#$Result = $Job | Receive-Job -Keep
|
|
}
|
|
|
|
end {
|
|
#Write-Output $Result
|
|
}
|
|
}
|
|
|
|
|
|
|
|
<#$ScriptBlock = {
|
|
param($SqlServer, $Database, $Query)
|
|
$ErrorActionPreference = 'Stop';
|
|
|
|
return @{ Result = Invoke-Sqlcmd -ServerInstance $SqlServer -Query $Query -Database $Database }
|
|
}
|
|
|
|
$Job = Start-Job -Credential $Credential -ScriptBlock $ScriptBlock -ArgumentList $SqlServer,$Database,$SqlQuery#> |