You cannot change it via workflow during the run, but you can change it in UFT during the run for that test. I have posted some UFT code below, have the user add the UFT code to the beginning of the scripts and it will check to see if the test is run from ALM, if it is it will set the draft run status to N so that the run shows up.
'Written by Joshua Yates Orasi Software 1/17/17
if qcutil.IsConnected then
Reporter.ReportEvent micPass,''Connected to QC'', ''Connected to Quality Center Server: '' & qcutil.QCConnection.ServerName & vbcrlf & _
''Project : '' & qcutil.QCConnection.ProjectName & vbcrlf & '' Domain : '' & qcutil.QCConnection.DomainName
Set CurrentTSTest = qcutil.CurrentTestSetTest
if CurrentTSTest is Nothing then
Reporter.ReportEvent micFail,''IsExecutedFromQC'', ''QTP is connected to quality center server. But the test is **not** executed from a Testlab in QC''
IsExecutedFromQC = FALSE
Reporter.ReportEvent micPass,''IsExecutedFromQC'', ''The test is executed from a Testlab in QC''
IsExecutedFromQC = TRUE
'set draft run to N so test result will show up if ran while checked out
QCUtil.CurrentRun.Field(''RN_DRAFT'') = ''N''
Reporter.ReportEvent micPass,''Set Draft Run Value'', ''Test Draft Run status changed to N''