I am trying to append the $date variable which should contain the ticket creation date to an existing array that contains open tickets:
$teamConfig = @(
[pscustomobject]@{
TeamName = 'Team1'
TeamEmail = 'team1@domain.tld'
}
[pscustomobject]@{
TeamName = 'Team2'
TeamEmail = 'team2@domain.tld'
}
)
$query = "select * from INCAutomation"
$results = Invoke-Sqlcmd -query $query -ServerInstance 'localhost' -Database 'AyushTest'
$teamTickets = foreach($team in $teamConfig) {
# Filter tickets based on team name
$ticketIds = $results |Where-Object TeamName -eq $team.TeamName |Select -ExpandProperty TicketID
$date = $results |Where-Object TeamName -eq $team.TeamName |Select -ExpandProperty createdDate
# Create an empty array
$ticketIdArray = @()
foreach ($id in $ticketIds) {
$thisId = "
<tr>
<td>$($id)</td>
<td>$($date)</td>
</tr>
"
$ticketIdArray += $thisId
}
$team |Select TeamName,TeamEmail,@{Name='HTML';Expression={$ticketIdArray}}
}
$teamTickets.HTML
However this is the output I get (example):
<tr>
<td>INC0001</td>
<td>10/12/20 10/12/20 10/12/20 10/12/20</td>
</tr>
<tr>
<td>INC0002</td>
<td>10/12/20 10/12/20 10/12/20 10/12/20</td>
</tr>
<tr>
<td>INC0003</td>
<td>10/12/20 10/12/20 10/12/20 10/12/20</td>
</tr>
This is my desired output:
<tr>
<td>INC0001</td>
<td>10/12/20</td>
</tr>
<tr>
<td>INC0002</td>
<td>10/12/20</td>
</tr>
<tr>
<td>INC0003</td>
<td>10/12/20</td>
</tr>
It seems like for whatever reason the date is being appended based on the total number of teams.
Any ideas? Thanks in advance