Loading
Snow XML import
I am trying to import devices into snow using snow XML import. But the output that i get from the script shows only 1 device in the xml.  Here is the template & script that i have: Host;Domain;CompType;CompManufacturer;User;OS;SWManufacturer;SWName;Version COMP0001;AU;Notebook;HP;user1; User1;MS;MS Visio 2010;2010   ## Check for correct input parameters   if($args.Count -ne 3)   {   Write-Output "" "csv2snow.ps1" "" "Syntax:" ".\csv2snow.ps1 <path to input.csv> <output-path> <sitename>" "" "Example:" ".\csv2snow.ps1 D:\snowtemplate.csv D:\Device XML" ""   return   }   else   {   $report=$args[0]   $outputdir=$args[1]   $sitename=$args[2] ## Check that the input file exists, otherwise exit   if (!(test-path($report))) { write-host "Input file not found.";return } ## Check that the output directory exists, otherwise create it   if (test-path($outputdir)) { } else { mkdir $outputdir > $ } ## Import the report   write-host (get-date) "Importing file.."   $myinput = import-csv $report -Delimiter ";"   $totalrows = $myinput.Length   write-host "$totalrows rows found"   $current = 0   $currhost = $myinput[$current].host   write-host $currhost   $prods = @()   $now = get-date ## Go through all rows of the CSV   while ($current -lt $totalrows) { $h = $myinput[$current].host if($h -ne $currhost) { #process the old host, then start with the new data   write-host (get-date) "Processing host $currhost" ## Start writing the SnowXML for the host   $output_file = $outputdir + "\" + $currhost +'.xml' $XmlWriter = New-Object System.XMl.XmlTextWriter($output_file,$)   $xmlWriter.Formatting = [System.Xml.Formatting]::Indented   $xmlWriter.WriteStartDocument() $lastupdate = $now.ToString("yyyy-MM-ddThh:mm:ss") $xmlWriter.WriteStartElement("client")   $xmlWriter.WriteElementString('isdmisupported',"false")   $xmlWriter.WriteElementString('isapmsupported',"false")   $xmlWriter.WriteElementString('isplugandplay',"false")   $xmlWriter.WriteElementString('primarybustype',"false")   $xmlWriter.WriteElementString('secondarybustype',"false")   $xmlWriter.WriteElementString('hasusb',"false")   $xmlWriter.WriteElementString('biosreleasedate','1900-01-01T01:00:00')   $xmlWriter.WriteElementString('biosmanufacturer','(n/a)')   $xmlWriter.WriteElementString('biosserialnumber','(n/a)')   $xmlWriter.WriteElementString('biosversion','(n/a)')   $xmlWriter.WriteElementString('company',"false")   $xmlWriter.WriteElementString('dmiversion',"false")   $xmlWriter.WriteElementString('hasflashbios',"false")   $xmlWriter.WriteElementString('hostname',$currhost)   $xmlWriter.WriteElementString('isportable','false')   $xmlWriter.WriteElementString('lastupdate',$lastupdate)   $xmlWriter.WriteElementString('numberofprocessors','1')   $xmlWriter.WriteElementString('manufacturer','(n/a)')   $xmlWriter.WriteElementString('model','(n/a)')   $xmlWriter.WriteElementString('username','(n/a)')   $xmlWriter.WriteElementString('installdate',"1900-01-01T01:00:00")   $xmlWriter.WriteElementString('sitename',$sitename)   $xmlWriter.WriteElementString('clientidentifier',$currhost)   $xmlWriter.WriteElementString('clienttype',0)   $xmlWriter.WriteElementString('isvdi',"false") $xmlWriter.WriteStartElement("memory")   $xmlWriter.WriteElementString('freeslots',"0")   $xmlWriter.WriteElementString('freeswap',"0")   $xmlWriter.WriteElementString('maxphysical',"0")   $xmlWriter.WriteElementString('totalslots',"0")   $xmlWriter.WriteElementString('totalphysical',"0")   $xmlWriter.WriteElementString('totalvirtual',"0")   $xmlWriter.WriteElementString('freevirtual',"0")   $xmlWriter.WriteElementString('freephysical',"0")   $xmlWriter.WriteElementString('totalswap',"0")   $xmlWriter.WriteEndElement() ## Process the software for the host   foreach ($prod in $prods) { $xmlWriter.WriteStartElement("application")   $xmlWriter.WriteElementString('binarytype',"0")   $xmlWriter.WriteElementString('format',"0")   $xmlWriter.WriteElementString('installdate',"1900-01-01T12:00:00")   $xmlWriter.WriteElementString('name',$prod.SWName)   $xmlWriter.WriteElementString('islocal',"true")   $xmlWriter.WriteElementString('ismsi',"true")   $xmlWriter.WriteElementString('isshortcut',"false")   $xmlWriter.WriteElementString('processortype',"0")   $xmlWriter.WriteElementString('uninstallstring',"0")   $xmlWriter.WriteElementString('filename',"(n/a)")   $xmlWriter.WriteElementString('filepath',"(n/a)")   $xmlWriter.WriteElementString('filedatetime',"1900-01-01T12:00:00")   $xmlWriter.WriteElementString('filesize',0)   $xmlWriter.WriteElementString('version',"SNOWXML-" + $prod.SWVersion)   $xmlWriter.WriteElementString('manufacturer',"(n/a)")   $xmlWriter.WriteElementString('language',"Language Neutral")   $xmlWriter.WriteElementString('fullcappeakdate',"1900-01-01T12:00:00")   $xmlWriter.WriteElementString('isrecognized',"1")   $xmlWriter.WriteElementString('coresublimit',"0")   $xmlWriter.WriteElementString('issubcapacity',"false")   $xmlWriter.WriteElementString('subcappeakdate',"1900-01-01T12:00:00")   $xmlWriter.WriteElementString('pvusubcap',"0")   $xmlWriter.WriteElementString('ispvu',"false")   $xmlWriter.WriteElementString('coresubcap',"0")   $xmlWriter.WriteElementString('pvusublimit',"0")   $xmlWriter.WriteEndElement()   } $xmlWriter.WriteStartElement("networkadapter")   $xmlWriter.WriteElementString('dnsserver',"0")   $xmlWriter.WriteElementString('macaddress',"0")   $xmlWriter.WriteElementString('productname',"0")

  • Hi Burak, Yes we have discussed this during our calls. Thanks for this.
  • Community Manager (Flexera Software)

    Hi Dheemant, We have discussed this earlier during our calls, but just to be sure, the PowerShell script will create 1 XML file for each device. Please do let me know if you need any assistance with this. Best Regards, Burak

Related  Product Forums


                     → Flexera One



                      → Snow Atlas



                      → FlexNet Manager



                      → Snow License Manager



                       → App Broker


       Need help finding an answer?


        Ask a Question →


Loading
Snow XML import