You are not going to be able to run anything as part of your job to display a popup to prompt the user to review/set values: The only way a program/script run by adTempus can interact with the user is if the job is running under the user's account, and the user is logged in at the time of execution.
One way I can think of to get close to what you want: define two Job Variables for your for the StartDate and EndDate. In the step that runs your process, you would use variable tokens (e.g., "%StartDate%") to insert the values in the command line. In the variable definition, don't specify an initial value.
When a user runs a job manually, the execution options window has a tab where they can set/override variable values. So the user can go set the values there when they run the job. We have an enhancement planned for version 5 so you can customize this some--for example, mark a variable as required so that the user will be forced to enter a value--but for now you need a workaround to make sure they enter something.
One way to do this would be to run a script as the first step of the job. If the job is being run manually, the script checks to make sure the variables have values, and fails the job if they don't. If the job is being run on a schedule, the script reads the file you mentioned to get the values.
You can use the "ADTTriggerClass" job variable to determine how the job is being run: for manual execution, this will be set to "Manual". Here's a sample VB script that you could run as step 1:
Imports System
Imports System.Collections.Generic
Imports ArcanaDevelopment.adTempus.Shared
Imports ArcanaDevelopment.adTempus.ApplicationIntegration
Public Class UserScript
Inherits ArcanaDevelopment.adTempus.ApplicationIntegration.UserScriptBase
Public Overrides Function Run() As Object
If adTempus.JobVariables("ADTTriggerClass")="Manual" Then
'job was triggered manually. Make sure StartDate and EndDate variables are set.
If Not VariableHasValue("StartDate") OrElse Not VariableHasValue("EndDate") Then
'one of the variables is not set. Log an error message and report failure so the job fails.
adTempus.LogMessage(MessageTypeEnum.Error,0,"You must specify values for the StartDate and EndDate variables")
Return 8
Else
'everything is OK. Report success
Return 0
End If
Else
'job is being run on schedule. Read a file to get the variable values
SetVariablesFromFile
Return 0
End If
End Function
Private Function VariableHasValue(variableName As String) As Boolean
Return Not String.IsNullOrEmpty(adTempus.JobVariables(variableName))
End Function
Private Sub SetVariablesFromFile()
Using inputFile=System.IO.File.OpenText("c:\whatever.txt")
'do whatever you need to get the values from the file
'set the variables
adTempus.JobVariables("StartDate")="2017-01-01"
adTempus.JobVariables("EndDate")="2017-01-31"
End Using
End Sub
End Class
You will need to modify the SetVariablesFromFile method to do whatever is appropriate to read the variables from the file.