Почему скрипт не выбирает указанные базы?
Пробую завершить сеансы пользователей в указанной базе данных. Но, скрипт, завершает работу всех пользователей во всех базах. Подскажите, где ошибка
$servers1C =("localhost:1540")
$bases = ("db_1")
$logFile = "E:\tmp\log.txt"
#общее число пользователей
$intUsersCount=0
echo (Get-Date).ToString() > $logFile
# Создается COM-объект подключения к 1С.
$connector = New-Object -Comobject "V83.COMConnector"
# Подключение к агенту на сервере.
foreach ($server1C in $servers1C)
{
$AgentConnection = $connector.ConnectAgent($server1C)
$Cluster = $AgentConnection.GetClusters()[0]
$AgentConnection.Authenticate($Cluster,"","")
}
$bases=$AgentConnection.GetInfoBases($Cluster)
foreach ($baseALL in $bases)
{
$base = $baseALL.Name
$sessions1CtoTerminate = ($AgentConnection.GetSessions($Cluster) | Where-Object {$_.Infobase.Name -eq $base -and $_.AppId -ne "SrvrConsole" -and $_.AppId -ne "BackgroundJob"})
foreach ($session in $sessions1CtoTerminate)
{
## Отключаем сеансы
$AgentConnection.TerminateSession($Cluster,$session)
}
}
Источник: Stack Overflow на русском