Здравствуйте. Я пытаюсь написать сценарий powershell для запуска запроса к базе данных MS Access, а затем экспортировать сгенерированную из запроса таблицу в файл excel.
Вот мой текущий скрипт, но проблема, с которой я сталкиваюсь, заключается в том, что все данные экспортируются в одну ячейку. Мне нужно, чтобы каждый элемент поля был экспортирован в свой собственный столбец.
$DBFilePath ="D:\SFET_BuildVersion\CurrencyReport\ClientBuildVersions.accdb"
$adOpenStatic = 3
$adLockOptimistic = 3
$infoColl = @()
$conn=New-Object -com "ADODB.Connection"
$rs = New-Object -com "ADODB.Recordset"
$conn.Open("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=$DBFilePath; Persist Security Info=False;")
$rs.Open("SELECT * from SFClient",$conn,$adOpenStatic,$adLockOptimistic)
$rs.MoveFirst()
$myOuput = While ( ! $rs.EOF ) {
New-Object -TypeName PSObject -Property @{
Customer = $rs.Fields.Item('Customer').Value
HHRR = $rs.Fields.Item('HHRR').Value
System = $rs.Fields.Item('System').Value
Release_Level = $rs.Fields.Item('Release Level').Value
TNTAL_version = $rs.Fields.Item('TNTAL version').Value
HF_Level = $rs.Fields.Item('HF Level').Value
Createdate = $rs.Fields.Item('Createdate').Value
CLAIMS_version = $rs.Fields.Item('CLAIMS version').Value
CreatedateC = $rs.Fields.Item('CreatedateC').Value
PayerRules_version = $rs.Fields.Item('PayerRules version').Value
ECV_Version = $rs.Fields.Item('ECV Version').Value
Edits = $rs.Fields.Item('Edits').Value
REGs_version = $rs.Fields.Item('REGs version').Value
BBM = $rs.Fields.Item('BBM version').Value
OMS_version = $rs.Fields.Item('OMS version').Value
Runtime = $rs.Fields.Item('Runtime').Value
HASvr = $rs.Fields.Item('HASvr').Value
EOS = $rs.Fields.Item('EOS').Value
CurrencyDays = $rs.Fields.Item('Currency Days').Value
}
$rs.MoveNext()
}
$conn.Close
$rs.Close
$myOuput | FT -a
$myOuput | Out-GridView
$myOuput | Export-csv D:\SFET_BuildVersion\CurrencyReport\SFClient.xlsx -NoTypeInformation