SELECT %Actions, %Message, %Priority, %Subject, TaskStatus_TimeCreated, IDFROM EnsLib_Workflow.TaskResponse
WHERE TaskStatus_AssignedTo = ?
AND TaskStatus_IsComplete = 0
SQL
SQL
So it returns only uncompleted tasks assigned to a current user (by the way UserName is a valid sql variable so you don't need to pass it as an argument from ObjectScript). It does not return unassigned tasks - do you autoassign tasks in production? If so, how?
go to post
In that case you need to implement REST API and call that.
go to post
Are you in the interop context? If yes, SendSync/SendAsync should be available for you.If not, check this article.
go to post
Use %Classname(1) method?
go to post
Can you copy FOP to two places (or each job at a start copies FOP to it's own dir) and call it in parallel after that. Would that work?
go to post
I recommend using embedded python and boto3.
go to post
I agree that
is certainly outside of this code golf conditions (method signature should not be changed), but it's still a creative example.
go to post
^IRIS.Msg("EnsColumnsNAMESPACENAME,"en"
Can be mapped to your DB, so you won't lose the changes on update (and also you won't need to make ENSLIB RW).
go to post
*i is a great idea.
go to post
Check DATEDIFF.
go to post
There are to valid ways to solve this code golf:
Both approaches are valid, sample solution uses approach 1.
"Print out" is any output the program produces so if you for example add 1/0 at the end it might save you a few characters.
go to post
Well, in that case you might as well do this (down to 41):
ClassMethod ascii() [ CodeMode = objectgenerator ] { f i=0,27,0:1:94 d %code.Write($c(i+32)) }
go to post
I am very interested how compilation flags help you with this.
go to post
Reflective programming is not cheating!
go to post
42 characters so far.
go to post
Pinging @Stefan Wittmann
go to post
Class methods are recommended for use in all cases.
While classes provide an overhead, this is usually negligible.
go to post
Yes, query Ens.MessageHeader table, maybe joining on a body and then call AbortMessage method here.
go to post
But how do you decide on a user? Do you have only one user to assign tasks to?
go to post
Great!
I see you are using this query:
SELECT %Actions, %Message, %Priority, %Subject, TaskStatus_TimeCreated, ID FROM EnsLib_Workflow.TaskResponse WHERE TaskStatus_AssignedTo = ? AND TaskStatus_IsComplete = 0
So it returns only uncompleted tasks assigned to a current user (by the way UserName is a valid sql variable so you don't need to pass it as an argument from ObjectScript). It does not return unassigned tasks - do you autoassign tasks in production? If so, how?
go to post
How do you call TEST_ROUTER?