Public/DataFormat.ps1

<#PSScriptInfo

.VERSION 1.0

.GUID 972a6d04-f905-4347-98b1-6bf00d8ce204

.AUTHOR dmcanady

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES


.PRIVATEDATA

#>

function DataFormat {

    $Substates = @{
        '489fb3f02b3c9200258f89efe8da156d' = "In Queue";
        'c4b3f3702b3c9200258f89efe8da1504' = "Ready for pickup";
        '3a62f7302b3c9200258f89efe8da1545' = "Waiting for hardware";
        '5747a37c2bf89200258f89efe8da1585' = "At External Repair Location";
        'cb467ce92bf0d200258f89efe8da157f' = "Waiting on non-IT Resource";
        '99a40c452b3c9200258f89efe8da159b' = "Waiting on customer";
        'a83877b02b3c9200258f89efe8da15b7' = "Waiting on permission to reformat";
    }
    
    $TicketTypes = @{
        'cd13f3032b7892001235717bf8da1580' = "Repair";
        'e604f7032b7892001235717bf8da153c' = "Assignment";
        'a6b3bfcf2b3892001235717bf8da1530' = "LCM";
    }
        #set substates...
        foreach ($record in $script:Computers) {
            #removes the bloat string surrounding the substate codes listed above
            if($record.u_substate -ne "" -and $record.u_substate -like "*display_Value*")
            {
                $splitSubstate = $record.u_substate -split("sys_choice/")
                $finalSplit = $splitSubstate[1] -split("}")
                $record.u_substate = $Substates.($finalSplit[0])
            }


            #set tickettype
            if($record.cat_item -ne "" -and $record.cat_item -like "*display_Value*")
            {
                $splitSubstate = $record.cat_item -split("cat_item/")
                $finalSplit = $splitSubstate[1] -split("}")
                $record.cat_item = $finalSplit[0]
                $record.cat_item = $TicketTypes.($record.cat_item)
            }

            ##Sets serial numbers formatting
            if($record.u_asset -ne "" -and $record.u_asset -like "*display_value*")
            {
                [string]$asset_serial = $($record.u_asset) 
                $newValue = $asset_serial.Substring(0, ($asset_serial.IndexOf(";")));
                $newValue = $newValue.Substring(16);
                $record.u_asset = $newValue;
                $record.Serial = $newValue;
            }
            elseif($record.u_asset -eq "")
            {
                $record.Serial = $record.u_serial_number;
            }
            
            #formats primary tech field formatting
            if($record.u_wi_primary_tech -ne "" -and $record.u_wi_primary_tech-like "*display_value*")
            {
                [string]$primary_Tech = $($record.u_wi_primary_tech) 
                $newValue = $primary_Tech.Substring(0, ($primary_Tech.IndexOf(";")));
                $newValue = $newValue.Substring(16);
                $record.u_wi_primary_tech = $newValue;
            }
        }
}