Fix PowerShell parameter conflicts by renaming Verbose to VerboseOutput

- Fixed parameter conflicts in sf-data-export.ps1, sf-data-import.ps1, sf-retrieve.ps1, and sf-test-run.ps1
- Renamed conflicting \ parameter to \ to avoid conflicts with PowerShell's built-in -Verbose common parameter
- Added proper parameter sets to ensure -Help parameter works correctly in all scripts
- Added -hp aliases where needed for consistency across all scripts
- All scripts now properly support help functionality without parameter conflicts

This resolves issues where scripts would fail with 'A parameter with the name Verbose was defined multiple times' error.
This commit is contained in:
Reynold Lariza
2025-08-28 20:58:54 +08:00
parent 159ede3794
commit 134169a2ee
4 changed files with 102 additions and 20 deletions

View File

@@ -32,7 +32,7 @@
.PARAMETER Wait
Wait time in minutes (default: 10) (alias: -wt)
.PARAMETER Verbose
.PARAMETER VerboseOutput
Enable verbose output (alias: -ve)
.PARAMETER Help
@@ -51,36 +51,64 @@
param(
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="Help")]
[Alias("qy")]
[string]$Query,
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="Help")]
[Alias("fl")]
[string]$File,
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[Alias("so")]
[string]$SObject,
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[Alias("ot")]
[string]$Output = "export.csv",
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[Alias("to")]
[string]$TargetOrg,
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[ValidateSet("csv", "json")]
[Alias("fm")]
[string]$Format = "csv",
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[Alias("bk")]
[switch]$Bulk,
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[Alias("wt")]
[int]$Wait = 10,
[Alias("vb")]
[switch]$Verbose,
[Parameter(ParameterSetName="Query")]
[Parameter(ParameterSetName="File")]
[Parameter(ParameterSetName="SObject")]
[Parameter(ParameterSetName="Help")]
[Alias("ve")]
[switch]$VerboseOutput,
[Parameter(ParameterSetName="Help", Mandatory=$true)]
[Alias("hp")]
[switch]$Help
)
@@ -235,7 +263,7 @@ Write-Host "Output format: $Format" -ForegroundColor Cyan
Write-Host "Output file: $Output" -ForegroundColor Cyan
# Add verbose flag if requested
if ($Verbose) {
if ($VerboseOutput) {
$sfArgs += "--verbose"
}
@@ -245,7 +273,7 @@ Write-Host "📊 Starting Data Export" -ForegroundColor Blue
Write-Host "=======================" -ForegroundColor Blue
# Show query preview if verbose
if ($Verbose) {
if ($VerboseOutput) {
Write-Host ""
Write-Host "📝 SOQL Query:" -ForegroundColor Yellow
Write-Host "----------------------------------------" -ForegroundColor Gray
@@ -287,7 +315,7 @@ try {
}
}
if ($Verbose) {
if ($VerboseOutput) {
Write-Host "💡 Use a spreadsheet application or text editor to view the exported data" -ForegroundColor Yellow
}
} else {

View File

@@ -35,7 +35,7 @@
.PARAMETER IgnoreErrors
Continue on errors (don't fail entire job) (alias: -ie)
.PARAMETER Verbose
.PARAMETER VerboseOutput
Enable verbose output (alias: -ve)
.PARAMETER Help
@@ -57,39 +57,48 @@
#>
param(
[Parameter(Mandatory)]
[Parameter(ParameterSetName="Import", Mandatory)]
[Alias("fl")]
[string]$File,
[Parameter(Mandatory)]
[Parameter(ParameterSetName="Import", Mandatory)]
[Alias("so")]
[string]$SObject,
[Parameter(ParameterSetName="Import")]
[ValidateSet("insert", "update", "upsert")]
[Alias("op")]
[string]$Operation = "insert",
[Parameter(ParameterSetName="Import")]
[Alias("ei")]
[string]$ExternalId,
[Parameter(ParameterSetName="Import")]
[Alias("to")]
[string]$TargetOrg,
[Parameter(ParameterSetName="Import")]
[Alias("bk")]
[switch]$Bulk,
[Parameter(ParameterSetName="Import")]
[Alias("wt")]
[int]$Wait = 10,
[Parameter(ParameterSetName="Import")]
[Alias("bs")]
[int]$BatchSize = 10000,
[Parameter(ParameterSetName="Import")]
[Alias("ie")]
[switch]$IgnoreErrors,
[Alias("vb")]
[switch]$Verbose,
[Parameter(ParameterSetName="Import")]
[Alias("ve")]
[switch]$VerboseOutput,
[Parameter(ParameterSetName="Help", Mandatory=$true)]
[Alias("hp")]
[switch]$Help
)
@@ -270,7 +279,7 @@ switch ($fileFormat) {
}
# Show file preview if verbose
if ($Verbose) {
if ($VerboseOutput) {
Show-FilePreview $File $fileFormat
}
@@ -312,7 +321,7 @@ if ($IgnoreErrors) {
}
# Add verbose flag if requested
if ($Verbose) {
if ($VerboseOutput) {
$sfArgs += "--verbose"
}
@@ -349,7 +358,7 @@ try {
}
}
if ($Verbose) {
if ($VerboseOutput) {
Write-Host "💡 Check the output above for detailed results and any warnings" -ForegroundColor Yellow
}
} else {

View File

@@ -26,7 +26,7 @@
.PARAMETER Wait
Wait time in minutes for the retrieve operation (default: 10)
.PARAMETER Verbose
.PARAMETER VerboseOutput
Enable verbose output
.PARAMETER Help
@@ -53,10 +53,28 @@ param(
[Parameter(ParameterSetName="Package")]
[string]$Package,
[Parameter(ParameterSetName="Types")]
[Parameter(ParameterSetName="Manifest")]
[Parameter(ParameterSetName="Package")]
[string]$OutputDir,
[Parameter(ParameterSetName="Types")]
[Parameter(ParameterSetName="Manifest")]
[Parameter(ParameterSetName="Package")]
[string]$o,
[Parameter(ParameterSetName="Types")]
[Parameter(ParameterSetName="Manifest")]
[Parameter(ParameterSetName="Package")]
[int]$Wait = 10,
[switch]$Verbose,
[Parameter(ParameterSetName="Types")]
[Parameter(ParameterSetName="Manifest")]
[Parameter(ParameterSetName="Package")]
[switch]$VerboseOutput,
[Parameter(ParameterSetName="Help", Mandatory=$true)]
[Alias("hp")]
[switch]$Help
)
@@ -166,7 +184,7 @@ if ($Wait -ne 10) {
}
# Add verbose flag if requested
if ($Verbose) {
if ($VerboseOutput) {
$sfArgs += "--verbose"
}

View File

@@ -32,7 +32,7 @@
.PARAMETER OutputDir
Directory to store test results and reports
.PARAMETER Verbose
.PARAMETER VerboseOutput
Enable verbose test output
.PARAMETER Help
@@ -63,11 +63,38 @@ param(
[Parameter(ParameterSetName="Suite")]
[string]$Suite,
[Parameter(ParameterSetName="Classes")]
[Parameter(ParameterSetName="Methods")]
[Parameter(ParameterSetName="Level")]
[Parameter(ParameterSetName="Suite")]
[switch]$Coverage,
[Parameter(ParameterSetName="Classes")]
[Parameter(ParameterSetName="Methods")]
[Parameter(ParameterSetName="Level")]
[Parameter(ParameterSetName="Suite")]
[int]$Wait = 10,
[Parameter(ParameterSetName="Classes")]
[Parameter(ParameterSetName="Methods")]
[Parameter(ParameterSetName="Level")]
[Parameter(ParameterSetName="Suite")]
[string]$o,
[Parameter(ParameterSetName="Classes")]
[Parameter(ParameterSetName="Methods")]
[Parameter(ParameterSetName="Level")]
[Parameter(ParameterSetName="Suite")]
[string]$OutputDir,
[switch]$Verbose,
[Parameter(ParameterSetName="Classes")]
[Parameter(ParameterSetName="Methods")]
[Parameter(ParameterSetName="Level")]
[Parameter(ParameterSetName="Suite")]
[switch]$VerboseOutput,
[Parameter(ParameterSetName="Help", Mandatory=$true)]
[Alias("hp")]
[switch]$Help
)
@@ -181,7 +208,7 @@ $sfArgs += "--result-format"
$sfArgs += "human"
# Add verbose flag if requested
if ($Verbose) {
if ($VerboseOutput) {
$sfArgs += "--verbose"
}