1
我目前從ReportServer數據庫中抓取一組RDL文件,並循環遍歷每個.RDL(這是一個XML文件),並將每個文本框的值寫入RDL以文件形式存儲(或者直接到屏幕上)。使用PowerShell從.RDL文件中提取文本框值
我可以從數據庫中獲取文件沒有問題,我可以遍歷每個文件,但我不能始終如一地獲取每個表中的所有文本框值。有時候會跳過表格。我最初的嘗試在一個非常基本的RDL文件上工作。下面的例子是獲取標題行中文本框的名稱。
$FilePath = "C:\XML\Report.rdl"
[System.Xml.XmlDocument]$RDLFile = New-Object system.Xml.XmlDocument
$RDLFile.load($FilePath)
clear
foreach($textbox in $RDLFile.Report.Body.ReportItems.Table.Header.TableRows.TableRow.TableCells.TableCell)
{
$textboxname = $textbox.ReportItems.Textbox.Name
Write-Host($textboxname)
}
這個RDL的工作原理是一個簡單的RDL,其上有一個3列數據網格。當我在更復雜的報告上嘗試相同的方法時,它會炸彈,或者只抓取一些字段。可能工作
難道你不能只是做一些像'[XML] $ RDLFile = GC「C:\ XML \ Report.rdl」'? – TheMadTechnician
當然,但這並不能解決問題。 –
對不起,只是對劇本的一般評論,根本不是答案。 – TheMadTechnician