- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下内容:
$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
# Need to join results together
Export-Csv -InputObject $results -append -Path $resultfilepathtemp -NoTypeInformation
}
XML
<?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"
# Need to join results together
$endresult = $results + $results2
Export-Csv -InputObject $endresult -append -Path $resultfilepathtemp -NoTypeInformation
Export-Csv : Cannot bind argument to parameter 'InputObject' because it is null.
At C:\Client\ClientX.ps1:74 char:29
+ Export-Csv -InputObject $rpc -append -Path $resultfilepathtemp -N ...
+ ~~~~
+ CategoryInfo : InvalidData: (:) [Export-Csv], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ExportCsvCo
mmand
最佳答案
您的$results
和$results2
变量包含 System.Xml.XmlElement
实例(可能是数组)。
INVOICE
元素,这似乎是可能的):+
与数组结合使用(创建一个包含LHS数组的所有元素,然后是RHS数组的所有元素的新数组)-这不会做您想要的事情,即合并相应XML中的子元素元素。 XmlElement
实例):+
失败,因为XmlElement
并未为+
运算符定义重载。 XmlElement
,以形成包含各个子节点的并集的元素。 Export-Csv
将合并的元素导出到CSV文件。 $XPath = "//INVOICEHEADER"
$XPath2 = "//FILE"
$Path = "$sourcelocation\*.xml"
Get-ChildItem -Path $Path |
ForEach-Object {
# Load and parse the XML file once.
[xml] $xml = Get-Content -Raw $_.FullName
# Run the XPath queries.
$results = $xml.SelectNodes($XPath)
$results2 = $xml.SelectNodes($XPath2)
# Process the results in pairs:
# Create a new element containing the union of the child elements.
foreach ($i in 0..($results.Count-1)) {
# Append the child nodes of the RHS array element to the LHS
# array element.
# NOTE: @(...) ensures that the child nodes are collected in an aux.
# array up front; without that, the .AppendChild() calls would
# interfere with the enumeration of .ChildNodes.
foreach ($child in @($results2[$i].ChildNodes)) {
$null = $results[$i].AppendChild($child)
}
# Output the merged element.
$results[$i]
}
} | Export-Csv -Path $resultfilepathtemp -NoTypeInformation
关于xml - 从xml拾取的Powershell联接对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61208263/
我有一张维护要求表和相关的每月执行频率 维护 +----------+------+ | maint_id | freq | +----------+------+ | 1 | 6
我目前有这些表: CREATE TABLE #SECURITY_TEMP (ID CHAR(30)) CREATE TABLE #SECURITY_TEMP_PRICE_HISTORY (ID CHA
我有一张维护要求表和相关的每月执行频率 维护 +----------+------+ | maint_id | freq | +----------+------+ | 1 | 6
我有一个如下所示的表格 表tbl_veh VIN Record DateChange 11223344 123A 6/24/2012 11223344
我的应用程序的数据模型 群组有很多用户 用户所属组 用户有很多打卡 冲床属于用户 冲床属于PayPeriod PayPeriod hasMany Punch 找电话 $groups = $this->
使用 Join 或 GroupJoin,是否有任何方法可以为父表和子表中的字段生成聚合值。给定一个 Orders 表和一个 OrderDetails 表,使用下面的 2 个步骤我可以从 Orders
我有一个包含用户 ID 和用户名的用户表。另一个表有一个兴趣列表,包括兴趣和姓名。第三个表是一个连接表,包含 userid 和interestid。 对于每对用户,我想获取他们共同兴趣的数量。我尝试了
假设我有下表: 表A a_name | age | country Jordan | 5 | Germany Molly | 6 | Spain Paris | 7 | France John | 7
数据源是 CSV 文件的集合,因此没有实际的数据库。这是与日本已有数十年历史的遗留系统的集成。 我有一个 c# 函数需要将 2 个 DataTables 和 2 个列名作为参数。我的函数需要对这两个数
我有一种情况要在具有数据的elasticsearch中编写搜索查询,如下所示 {id:"p1",person:{name:"name",age:"12"},relatedTO:{id:"p2"}} {
我想创建具有父子关系的文档。 我有如下数据 parent_id = null的父文档数据 { "id": 1, "work
我有以下按预期工作的 SQL: SELECT p.ACCT_ID AS [Acct], a.ACCT_NAME AS [AcctName], p.PD_NO AS [Period],
我想使用 CriteriaBuilder 在连接 2 个表的位置进行查询。在 MySQL 中,我尝试进行的查询如下所示: SELECT * FROM order LEFT JOIN item ON o
使用带有collection标签的域Service,如下所示: @Entity public class Service extends AbstractEntity { private st
我有一个解决方案,通过连接同一个表两次,但我想知道以下查询是否可以优化? select oc.name as father_occupation, o.name as mother_occupatio
我知道除了知道什么是“最喜欢的编程卡通”之外,stackoverflow 会对我有所帮助:P 这是接受的答案: Bill Karwin 感谢大家的帮助(我想给你们加倍投票) 我的查询结果是这样的(这是
我有两个表格,可以在附图中看到。 表 A 包含部门、月份和平均。 表 B 包含月份、年份、RangeStart、RangeEnd 和 颜色。 如果您查看表 B 的屏幕截图,您将看到每个月都有绿色、黄色
我有一个 Linq to sql 如下: var members=db.Members.Include(x=> x.Contact).Count(); 现在由于一些错误的数据,我的成员中的所有联系人都
我有两个表(用户和帖子),我想写出一个用户的所有帖子(以及其他内容)。我想我应该使用 JOIN 和 WHERE,但我在使用 WHERE 时遇到错误。 这是我的代码: SELECT username,
在 Hibernate 是我的持久性提供者的项目中,我可以使用“join fetch”表达式发出查询,Hibernate 将生成反射(reflect)该内容的 SQL:包含使用有效比较路径的联接表达式
我是一名优秀的程序员,十分优秀!