Activity Description
Code example:
import SCC_FILE_PARSER:UTIL:FieldCalculationAbstract;
import SCC_FILE_PARSER:MODEL:Results:ResultsField;
import SCC_FILE_PARSER:MODEL:Results:ResultsRecord;
import SCC_FILE_PARSER:MODEL:Results:ResultsCollection;
import SCC_FILE_PARSER:UTIL:Exception:FileParserException;
/**
* class FetchActivityDescr
*
* @version 1.0
* @author Campus Solutions
*
* Module: Recruiting and Admissions / Common App.
* Description:
*/
class FetchActivityDescr extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
/* public methods */
method FetchActivityDescr();
method calculateValue(&ResultsFieldIn As
SCC_FILE_PARSER:MODEL:Results:ResultsField, &ResultsCollectionIn
As SCC_FILE_PARSER:MODEL:Results:ResultsCollection) Returns any;
private
method GetFileData();
method GetFieldReferences();
instance string &Setid;
instance string &Activity;
instance string &ActivityDescrOut;
instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ActivityField;
end-class;
method FetchActivityDescr
%Super = create SCC_FILE_PARSER:UTIL:FieldCalculationAbstract();
end-method;
method calculateValue
/+ &ResultsFieldIn as SCC_FILE_PARSER:MODEL:Results:ResultsField, +/
/+ &ResultsCollectionIn as SCC_FILE_PARSER:MODEL:Results:ResultsCollection +/
/+ Returns Any +/
/+ Extends/implements
SCC_FILE_PARSER:UTIL:FieldCalculationAbstract.CalculateValue +/
&ResultsCollection = &ResultsCollectionIn;
&ResultsField = &ResultsFieldIn;
%This.GetFileData();
Return &ActivityDescrOut;
end-method;
method GetFileData
Local string &ActivityDescr;
If &ActivityField = Null Then
%This.GetFieldReferences();
End-If;
&Setid = "PSUNV"; /* For now, the SetID is
hard coded - need to add code to fetch from system. */
&Activity = "";
If &ActivityField <> Null Then
&Activity = &ActivityField.FieldValue;
SQLExec("select a.descr from ps_extr_actvty_tbl a
where a.extra_activity =:1 and a.setid =:2 and
a.eff_status = 'A' and a.effdt = (select max(a1.effdt)
from ps_extr_actvty_tbl a1 where a1.setid = a.setid and
a1.extra_activity = a.extra_activity and
a1.effdt <= %DateIn(:3))", &Activity,
&Setid, %Date, &ActivityDescr);
If &ActivityDescr = "" Then
&ActivityDescrOut = "NOT FOUND";
Else
&ActivityDescrOut = &ActivityDescr;
End-If;
End-If;
end-method;
method GetFieldReferences
Local integer &SegmentNbr;
Local integer &RecordRow;
Local SCC_FILE_PARSER:MODEL:Results:ResultsRecord &obj_SCC_STG_EXTRACU;
&SegmentNbr = &ResultsField.ResultsRecord.SegmentNbr;
&RecordRow = &ResultsField.ResultsRecord.RecordRow;
&obj_SCC_STG_EXTRACU = &ResultsCollection.GetResultsRecord(&SegmentNbr,
"SCC_STG_EXTRACU", &RecordRow);
If &obj_SCC_STG_EXTRACU <> Null Then
&ActivityField = &obj_SCC_STG_EXTRACU.GetResultsField("EXTRA_ACTIVITY");
End-If;
end-method;