0

I'm writing a script that takes the user's input to then Register-ClusteredScheduledTask I'm trying to use a string for the -DaysOfWeek, but am only receiving various errors...

New-ScheduledTaskTrigger -Weekly -WeeksInterval $recur -DaysOfWeek $day -At $starttime

New-ScheduledTaskTrigger: Cannot process argument transformation on parameter 'DaysOfWeek'. Cannot convert value "[dayofweek]Sunday,Wednesday,Saturday" to type "System.DayOfWeek[]". Error: "Cannot convert value "[dayofweek]Sunday,Wednesday,Saturday" to type "System.DayOfWeek". Error: "Unable to match the identifier name [dayofweek]Sunday,Wednesday,Saturday to a valid enumerator name. Specify one of the following enumerator names and try again: Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday""

I did notice that when setting for individual days, the system assigns each day with a 64bit number, starting with Sunday at 1 thru Saturday at 64...

Enabled            : True
EndBoundary        :
ExecutionTimeLimit :
Id                 :
Repetition         :
StartBoundary      : 2020-03-28T02:00:00Z
DaysOfWeek         : 64
RandomDelay        :
WeeksInterval      : 1
PSComputerName     :

Therefore, if I schedule the following, I get the addition of Sunday + Saturday...

PS C:\Scripts\DCS> New-ScheduledTaskTrigger -Weekly -WeeksInterval $recur -DaysOfWeek Sunday,Saturday -At $starttime


Enabled            : True
EndBoundary        :
ExecutionTimeLimit :
Id                 :
Repetition         :
StartBoundary      : 2020-03-28T02:00:00Z
DaysOfWeek         : 65
RandomDelay        :
WeeksInterval      : 1
PSComputerName     :

How can I use a variable for the -DaysOfWeek and actually work without throwing some sort of error?

I've tried various methods of converting the string to date, with limited success.

When I use [dayofweek]$day = 'Sunday,Saturday'

$day is only = to Saturday

1

With [dayofweek]$day you are defining a single value variable. You need to define it as an array:

$ [dayofweek[]]$day = 'Sunday','Saturday'
1
  • Worked perfectly...Result gave me 65 for DaysOfWeek. Thanks for the quick response! – TracyMcClain Mar 27 '20 at 13:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.