I am trying to create a task that has a variable property that a user can specify DaysBack but it keeps coming up blank when I ask the system to get the date as of DaysBack from the CURRENT_DATE. Can someone tell me why I am not getting a value back in my tDate variable?
Class OSU.Workday.TerminationsTask Extends %SYS.Task.Definition
{
Parameter TaskName As STRING = "OSU - Workday Termination Update";
Property DaysBack As %Integer [ InitialExpression = 1 ];
Method OnTask() As %Status
{
Set tSC=$$$OK
#Dim tException as %Exception.SystemException
try{
set tDate = ""
&sql(SELECT DATEADD('day', -:daysBack, CURRENT_DATE) INTO :tDate)
ZWRITE tDate
set tSC = ..SelectTerminations(tDate)
$$$ThrowOnError(tSC)
}Catch (tException) {
Set tSC = tException.AsStatus()
}
Return tSC
}
Method SelectTerminations(pDate As %DateTime) As %Status
{
Set tSC=$$$OK
#Dim ex as %Exception.SystemException
try
{
set sqlQuery = "SELECT EMPLID, MedCtrID, LastName, FirstName, EFFDT FROM OSU_Workday_SQL.PDMTerminations WHERE EFFDT > ?)"
set tStatment = ##class(%SQL.Statement).%New()
Set qStatus = tStatment.%Prepare(sqlQuery)
$$$ThrowOnError(qStatus)
set rset = tStatment.%Execute(pDate)
$$$ThrowOnError(rset)
#Dim tTermService As OSU.DataSource.Workday.TermService
set tTermConfigName="OSU.DataSource.Workday.TermService"
$$$ThrowOnError(##class(Ens.Director).CreateBusinessService(tEIDEMPIDConfigName,.tEIDEMPIDService))
if rset.%ROWCOUNT > 0
{
set tTerm = ##class(OSU.Workday.Messages.WorkdayTerminations).%New()
while rset.%Next()
{
set tTerm.EMPLID = rset.%Get("EMPLID")
set tTerm.MedCtrID = rset.%Get("MedCtrID")
set tTerm.Lastname = rset.%Get("LastName")
set tTerm.Firstname = rset.%Get("FirstName")
set tTerm.EFFDT = rset.%Get("EFFDT")
set tSC = tTerm.%Save()
$$$ThrowOnError(tSC)
set (tTermOutput,tHint) = ""
$$$ThrowOnError(tTermService.OnProcessInput(tTerm,.tTermOutput,.tHint))
}
}
}
Catch ex
{
Set tSC = ex.AsStatus()
}
Return tSC
}
ClassMethod TestTask() As %Status
{
Set tSC=$$$OK
set tTask = ##class(OSU.Workday.TerminationsTask).%New()
$$$ThrowOnError(tTask.OnTask())
Return tSC
}
/// Location and Revision of this file in Perforce (Auto-updating)
Parameter SrcVer = "$Id: //custom_ccrs/us/OSUM/OSUMHSCUSTOM/UAT/cls/OSU/Workday/TerminationsTask.xml#3 $";
}
(2).jpg)


.jpg)
(1).jpg)

