У меня есть несколько строк в таблице с одним столбцом с именем «query_server».
Команда Invoke_ASCmd должна дважды (2 строки) вызываться на разных серверах запросов (называемых Destination_server) следующим образом:
foreach($row in $Table | where { $_.cube_name -match $CUBE -and $_.active -match $Active })
{
$Destination_Server = $row.Item("query_server")
$sync_output += "_$Destination_Server.txt"
Invoke-ASCmd –InputFile $XML_file -Server $Destination_Server >$sync_output
}
Я пытался сделать это, но это не работает
$i=0
foreach($row in $Table | where { $_.cube_name -match $CUBE -and $_.active -match $Active })
{
@($Destination_Server) = $row.Item("query_server")
$sync_output += "_$Destination_Server.txt"
Invoke-ASCmd –InputFile $XML_file -Server $Destination_Server[$i] >$sync_output
$i++
}
выдает ошибку:
- @ ($ Destination_Server) = $ row.Item ("query_server")
- ~~~~~~~~~~~~~~~~~~~~~~
Выражение присваивания недопустимо. Входные данные для оператора присваивания должны быть объектом, который может принимать
присваивания, такие как переменная или свойство.
- CategoryInfo: ParserError: (:) [], ParentContainsErrorRecordException
- FullyQualifiedErrorId: InvalidLeftHandSide