Using a variable inside a method

I am not a developer but on the Admin side. Is the below formatting legal? Essentially, I want to pass in a value for $time based upon user input, then try and perfom the query - below. If I put in -2 it works but if I assign $time=-2 I am hitting issues

Get-WinEvent -computername localhost -FilterHashtable @{ logname = $log; StartTime = ((get-date).AddHours($time))}

Can you paste all your code?

This works for me:

[string]$log2 = "Application"
[int]$time = -2
Get-WinEvent -computername localhost -FilterHashtable @{ logname = $log2; StartTime = ((get-date).AddHours($time))}

You don’t have to make it an integer, it already is.

PS H:> $hours = -2
PS H:> $hours.gettype()

IsPublic IsSerial Name BaseType

True True Int32 System.ValueType

PS H:> @{start = (get-date).AddHours($hours)}

Name Value

start 9/8/2016 5:56:52 AM