Hi All,
I’m pretty new to powershell scripting and have been learning a bit about it. However, I am trying to understand objects and how to join them.
I have created the following:
$XPath = "//INVOICEHEADER" $XPath2 = "//FILE" # path where we need to look for the xml. * means all files that end in .xml $Path = "$sourcelocation\*.xml"# Select-Xml -Path $Path -XPath $Xpath |
# Select-Object -EA SilentlyContinue -ExpandProperty Node |
# # export results append to the file NNUH.csv
# Export-Csv -append -Path $resultfilepathtemp -NoTypeInformation
Get-ChildItem -Path $Path |ForEach-Object {
$xml = Select-Xml -Path $.FullName -XPath $Xpath
$results = Select-Object -InputObject $Xml -EA SilentlyContinue -ExpandProperty Node
# Write-Output $results
$xml = Select-Xml -Path $.FullName -XPath $Xpath2
$results2 = Select-Object -InputObject $Xml -EA SilentlyContinue -ExpandProperty Node<span class="c"># Need to join results together</span> <span class="nb">Export-Csv</span> <span class="n">-InputObject</span> <span class="nv">$results</span> <span class="n">-append</span> <span class="n">-Path</span> <span class="nv">$resultfilepathtemp</span> <span class="n">-NoTypeInformation</span>
}
<?xml version="1.0" encoding="UTF-8"?> <INVOICEIMPORT TYPE="INVOICE"> <INVOICES> <INVOICE> <INVOICEHEADER> <CATEGORY>1</CATEGORY> <PURCHASEORDERNO>AA00000</PURCHASEORDERNO> <OURREF>AA00000</OURREF> <ATTRIB2>Client name</ATTRIB2> <ATTRIB3>Address</ATTRIB3> <SUPPLIERREF>1000000000</SUPPLIERREF> <INVOICEDATE>20200302</INVOICEDATE> <ARRIVAL>20200401</ARRIVAL> <AMOUNT>100,401.20</AMOUNT> <VATAMOUNT>13,900.20</VATAMOUNT> <CURRENCY.CURRENCYID>GBP</CURRENCY.CURRENCYID> <CLIENT.CODE>9999</CLIENT.CODE> <ITVNCODE>No supplier found</ITVNCODE> </INVOICEHEADER> <FILES> <FILE> <TRANSACTIONTYPE>X104</TRANSACTIONTYPE> <FULLFILENAME>PP_XXXX_00001.pdf</FULLFILENAME> <PAGENUMBER>1</PAGENUMBER> </FILE> </FILES> </INVOICE> </INVOICES> </INVOICEIMPORT>
"CATEGORY","PURCHASEORDERNO","OURREF","ATTRIB2","ATTRIB3","SUPPLIERREF","INVOICEDATE","ARRIVAL","AMOUNT","VATAMOUNT","CURRENCY.CURRENCYID","CLIENT.CODE","ITVNCODE","TRANSACTIONTYPE","FULLTIMENAME","PAGENUMBER" "1","AA00000","AA00000","Client name","Address","1000000000","20200302","20200401","100,401.20","13,900.20","GBP","9999","No supplier found","X104","PP_XXXX_00001.pdf","1"