Я собираю в PowerShell функцию, которая будет читать значение таблицы SQL для TotalCalls и TotalDuration.Поскольку идентификатор вызова уникален, я создал хеш-таблицу, в которой в качестве ключа будет использоваться идентификатор вызова с значениями TotalCalls и Total Duration.В конечном итоге отчет будет занимать месяцы, рассчитывая полный отчет с суммой TotalCalls и TotalDuration.Я сталкиваюсь с проблемой суммирования TotalDuration, так как это строка с "чч: мм: сс".Я знаю, что должен преобразовать его в тип данных timepan или int32, чтобы вычислить его, но мой ум бегает кругами о том, как это сделать.
if ($FullReport)
{
#Querying ALL ARD Lines
$FullQuery = Select-SQL -Database Telecom_Database -Query 'SELECT * FROM ARDReports'
$TotalDuration = 0
$TotalCalls = 0
$FullHash = [ordered]@{}
foreach ($row in $FullQuery)
{
if ($FullHash.contains($row.AOR))
{
$FullHash[$row.AOR].TotalCalls += [int]$row.TotalCalls
#$FullHash[$row.AOR].TotalDuration += formattime $row.TotalDuration
} else
{
$FullHash.Add($row.AOR, [ordered]@{})
$FullHash[$row.AOR].add("Name",$row.Name)
$FullHash[$row.AOR].add("Description",$row.Description)
$FullHash[$row.AOR].add("TotalCalls",[int]$row.TotalCalls)
$FullHash[$row.AOR].add("TotalDuration",$row.TotalDuration)
}
}
Строка # $ FullHash [$ row.AOR] .TotalDuration + = formattime , где он будет продолжать добавлять TotalDuration в зависимости от месяца, и это сводит меня с ума.Я думал о создании отдельной функции, которая вычисляла бы ее в промежуток времени, но я не знаю правильный подход.Любая помощь будет оценена!
Спасибо!