Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用powershell从XML源提取数据第二部分-从CSV提取数据以用于特定字段或函数_Xml_Powershell - Fatal编程技术网

使用powershell从XML源提取数据第二部分-从CSV提取数据以用于特定字段或函数

使用powershell从XML源提取数据第二部分-从CSV提取数据以用于特定字段或函数,xml,powershell,Xml,Powershell,因此有两种情况: 数据源示例: <Person lifenumber="21596" lname="LOVER" mname="J" fname="JERRY" affiliation="Hospital One" email="jerry.LOVER@mss.edu" building="" floor="" room="" phone="" hrstatus="A" active_direct_user="lassej04" active_direct_provider="HOSPIT

因此有两种情况: 数据源示例:

<Person lifenumber="21596" lname="LOVER" mname="J" fname="JERRY" affiliation="Hospital One" email="jerry.LOVER@mss.edu" building="" floor="" room="" phone="" hrstatus="A" active_direct_user="lassej04" active_direct_provider="HOSPITAL">
<Appointment affiliation="Hospital One" deptname="Cardiology" divname="" deptcode="821" title="ASST CLIN PROF"/>
如何使用包含LifeNumber列表的csv来运行函数?要在//People/Person下提取与该生命编号关联的所有数据



我将在另一篇文章中添加其他代码示例。

此链接的示例源代码更好。[链接]如果另一个问题解决了你的那部分问题,你应该在另一个问题中给出答案。这也会鼓励有人在这里帮助你,我想是的。让我回去。谢谢你让我知道裂变

$xmlPath = 'C:\Scripts\source.xml'
[xml]$data = Get-Content $xmlPath

#pulls everything above 'Appointment"
function Search-LifeNumber 
{
    param(
        $Source = $data,
        [Parameter(Mandatory=$true,
        Position=0)]
        $LifeNumber

    )

    $Target = $Source.People.Person | ? {$_.LifeNumber -eq $LifeNumber} 

    return $Target
}
#pulls Deptment Code data associated with targeted node
function Search-ByDepartmentCode 
{
    param(
        $Source = $data,
        [Parameter(Mandatory=$true,
            Position=0)]
        $DepartmentCode

    )

    $Target = $Source.SelectNodes('//People/Person/Appointment') | ? {$_.deptcode -eq $DepartmentCode} 

    return $Target
}