Skip to content

Commit 77a9939

Browse files
Export Script
Update to check for no folderid
1 parent 06eafe9 commit 77a9939

File tree

1 file changed

+40
-40
lines changed

1 file changed

+40
-40
lines changed

LT-ScriptExport.ps1

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -564,63 +564,63 @@ Function Export-LTScript {
564564
#Check folder information
565565

566566
#Check if script is at root and not in a folder
567-
If ($($ScriptXML.FolderId) -eq 0) {
567+
If ($($ScriptXML.FolderId) -eq 0 -or !$($ScriptXML.FolderId)) {
568568
try {
569569
#Delete folder information from template
570-
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.RemoveAttribute()
570+
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.RemoveAll()
571571
}
572572
Catch {
573573
$ErrorMessage = $_.Exception.Message
574574
$FailedItem = $_.Exception.ItemName
575575
Log-Error -FullLogPath $FullLogPath -ErrorDesc "Unable to remove folder data from XML: $FailedItem, $ErrorMessage `n$Error[0]" -ExitGracefully $True
576576
}
577577
}
578-
Else {
579-
#Query MySQL for folder data.
580-
$FolderData = Get-LTData -query "SELECT * FROM `scriptfolders` WHERE FolderID=$($ScriptXML.FolderId)"
578+
Else {
579+
#Query MySQL for folder data.
580+
$FolderData = Get-LTData -query "SELECT * FROM `scriptfolders` WHERE FolderID=$($ScriptXML.FolderId)"
581581

582-
#Check if folder is no longer present.
583-
if ($FolderData -eq $null) {
584-
Log-Write -FullLogPath $FullLogPath -LineValue "ScritID $($ScriptXML.ScriptId) references folder $($ScriptXML.FolderId), this folder is no longer present. Setting to root folder."
585-
Log-Write -FullLogPath $FullLogPath -LineValue "It is recomended that you move this script to a folder."
582+
#Check if folder is no longer present.
583+
if ($FolderData -eq $null) {
584+
Log-Write -FullLogPath $FullLogPath -LineValue "ScritID $($ScriptXML.ScriptId) references folder $($ScriptXML.FolderId), this folder is no longer present. Setting to root folder."
585+
Log-Write -FullLogPath $FullLogPath -LineValue "It is recomended that you move this script to a folder."
586586

587-
#Set to FolderID 0
588-
$ExportTemplate.LabTech_Expansion.PackedScript.NewDataSet.Table.FolderId = "0"
589-
$ScriptXML.FolderID = 0
587+
#Set to FolderID 0
588+
$ExportTemplate.LabTech_Expansion.PackedScript.NewDataSet.Table.FolderId = "0"
589+
$ScriptXML.FolderID = 0
590590

591-
try {
592-
#Delete folder information from template
593-
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.RemoveAttribute()
591+
try {
592+
#Delete folder information from template
593+
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.RemoveAll()
594+
}
595+
Catch {
596+
$ErrorMessage = $_.Exception.Message
597+
$FailedItem = $_.Exception.ItemName
598+
Log-Error -FullLogPath $FullLogPath -ErrorDesc "Unable to remove folder data from XML: $FailedItem, $ErrorMessage `n$Error[0]" -ExitGracefully $True
599+
}
594600
}
595-
Catch {
596-
$ErrorMessage = $_.Exception.Message
597-
$FailedItem = $_.Exception.ItemName
598-
Log-Error -FullLogPath $FullLogPath -ErrorDesc "Unable to remove folder data from XML: $FailedItem, $ErrorMessage `n$Error[0]" -ExitGracefully $True
599-
}
600-
}
601-
Else {
602-
#Format the folder name.
603-
#Remove special characters
604-
$FolderName = $($FolderData.Name).Replace('*','')
605-
$FolderName = $FolderName.Replace('/','-')
606-
$FolderName = $FolderName.Replace('<','')
607-
$FolderName = $FolderName.Replace('>','')
608-
$FolderName = $FolderName.Replace(':','')
609-
$FolderName = $FolderName.Replace('"','')
610-
$FolderName = $FolderName.Replace('\','-')
611-
$FolderName = $FolderName.Replace('|','')
612-
$FolderName = $FolderName.Replace('?','')
601+
Else {
602+
#Format the folder name.
603+
#Remove special characters
604+
$FolderName = $($FolderData.Name).Replace('*','')
605+
$FolderName = $FolderName.Replace('/','-')
606+
$FolderName = $FolderName.Replace('<','')
607+
$FolderName = $FolderName.Replace('>','')
608+
$FolderName = $FolderName.Replace(':','')
609+
$FolderName = $FolderName.Replace('"','')
610+
$FolderName = $FolderName.Replace('\','-')
611+
$FolderName = $FolderName.Replace('|','')
612+
$FolderName = $FolderName.Replace('?','')
613613

614-
# Save folder data to the template.
615-
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.FolderID = "$($FolderData.FolderID)"
616-
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.ParentID = "$($FolderData.ParentID)"
617-
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.Name = "$FolderName"
618-
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.GUID = "$($FolderData.GUID)"
619-
}
614+
# Save folder data to the template.
615+
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.FolderID = "$($FolderData.FolderID)"
616+
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.ParentID = "$($FolderData.ParentID)"
617+
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.Name = "$FolderName"
618+
$ExportTemplate.LabTech_Expansion.PackedScript.ScriptFolder.NewDataSet.Table.GUID = "$($FolderData.GUID)"
619+
}
620620
}
621621

622622
#Create Folder Structure. Check for parent folder
623-
If ($($FolderData.ParentId) -eq 0) {
623+
If ($($FolderData.ParentId) -eq 0 -or !$($FolderData.ParentId)) {
624624
try {
625625
#Create folder
626626
New-Item -ItemType Directory -Force -Path $BackupRoot\$($FolderData.Name) | Out-Null

0 commit comments

Comments
 (0)