Return to Navigation

Commonly Used Calculated Mapping Application Class Objects

This section provides examples for how to derive:

It is assumed that the person who will be responsible for creating and managing the application classes is a seasoned engineer who is comfortable with working with PeopleTools Application Designer, is well versed in writing PeopleCode, and has detailed knowledge of the referential integrity associated with the tables referenced by the File Parser context definition.

Warning! These are examples only, and have not been exposed to any rigorous testing scenarios. Should you decide to use these examples in any form, it is strongly recommended that a complete and thorough set of test cycles be exercised before moving to production.

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 ExtOrgId
  *
  *  @version 1.0
  *  @author Campus Solutions	
  *
  *  Module: Recruiting and Admissions / Common App.
  *  Description: 
  */


class ExtOrgId extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
   /* public methods */
   
   method ExtOrgId();
   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 &SchoolCeeb;
   instance string &ExtOrgIdOut;
   
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &SchoolCeebField;
   
end-class;


method ExtOrgId
   
   %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 &ExtOrgIdOut;
   
end-method;


method GetFileData
   
   Local string &ExtOrg;
   
   If &SchoolCeebField = Null Then
      %This.GetFieldReferences();
   End-If;
   
   &SchoolCeeb = "";
   
   If &SchoolCeebField <> Null Then
      &SchoolCeeb = &SchoolCeebField.FieldValue;
      
      SQLExec("SELECT EXT_ORG_ID FROM PS_ORG_ADM_CUR_VW WHERE ATP_CD = :1", 
&SchoolCeeb, &ExtOrg);
      
      &ExtOrgIdOut = &ExtOrg;
   End-If;
   
end-method;


method GetFieldReferences
   
   Local integer &SegmentNbr;
   Local integer &RecordRow;
   
   Local SCC_FILE_PARSER:MODEL:Results:ResultsRecord &obj_SCC_STG_ACADHST;
   
   &SegmentNbr = &ResultsField.ResultsRecord.SegmentNbr;
   &RecordRow = &ResultsField.ResultsRecord.RecordRow;
   
   &obj_SCC_STG_ACADHST = &ResultsCollection.GetResultsRecord(&SegmentNbr, 
"SCC_STG_ACADHST", &RecordRow);
   
   If &obj_SCC_STG_ACADHST <> Null Then
      &SchoolCeebField = &obj_SCC_STG_ACADHST.GetResultsField("SAD_SCHOOL_CEEB");
   End-If;
   
end-method;

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;

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 FetchDegreeDescr
  *
  *  @version 1.0
  *  @author Campus Solutions	
  *
  *  Module: Recruiting and Admissions / Common App.
  *  Description: 
  */


class FetchDegreeDescr extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
   /* public methods */
   
   method FetchDegreeDescr();
   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 &Degree;
   instance string &DegreeDescrOut;
   
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &DegreeField;
   
end-class;


method FetchDegreeDescr
   
   %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 &DegreeDescrOut;
   
end-method;


method GetFileData
   
   Local string &DegreeDescr;
   
   If &DegreeField = Null Then
      %This.GetFieldReferences();
   End-If;
   
   &Degree = "";
   
   If &DegreeField <> Null Then
      &Degree = &DegreeField.FieldValue;
      
      SQLExec("SELECT A.DESCR FROM PS_DEGREE_TBL A 
WHERE A.DEGREE =:1 AND A.EFF_STATUS = 'A' AND 
A.EFFDT = (SELECT MAX(A1.EFFDT) FROM PS_DEGREE_TBL A1 
WHERE A1.DEGREE = A.DEGREE AND 
A1.EFFDT <= %DateIn(:2))", &Degree, %Date, &DegreeDescr);
      
      If &DegreeDescr = "" Then
         &DegreeDescrOut = "NOT FOUND";
      Else
         &DegreeDescrOut = &DegreeDescr;
      End-If;
   End-If;
   
end-method;


method GetFieldReferences
   
   Local integer &SegmentNbr;
   Local integer &RecordRow;
   
   Local SCC_FILE_PARSER:MODEL:Results:ResultsRecord &obj_SCC_STG_EXTDEGR;
   
   &SegmentNbr = &ResultsField.ResultsRecord.SegmentNbr;
   &RecordRow = &ResultsField.ResultsRecord.RecordRow;
   
   &obj_SCC_STG_EXTDEGR = &ResultsCollection.GetResultsRecord(&SegmentNbr, 
"SCC_STG_EXTDEGR", &RecordRow);
   
   If &obj_SCC_STG_EXTDEGR <> Null Then
      &DegreeField = &obj_SCC_STG_EXTDEGR.GetResultsField("DEGREE");
   End-If;
   
end-method;

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 FetchSubjectDescr
  *
  *  @version 1.0
  *  @author Campus Solutions	
  *
  *  Module: Recruiting and Admissions / Common App.
  *  Description: 
  */


class FetchSubjectDescr extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
   /* public methods */
   
   method FetchSubjectDescr();
   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 &SubjectArea;
   instance string &SubjectAreaDescrOut;
   
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &SubjectAreaField;
   
end-class;


method FetchSubjectDescr
   
   %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 &SubjectAreaDescrOut;
   
end-method;


method GetFileData
   
   Local string &SubjectAreaDescr;
   
   If &SubjectAreaField = Null Then
      %This.GetFieldReferences();
   End-If;
   
   &SubjectArea = "";
   
   If &SubjectAreaField <> Null Then
      &SubjectArea = &SubjectAreaField.FieldValue;
      
      SQLExec("SELECT A.DESCR FROM PS_EXT_SUBJECT_TBL A 
WHERE A.EXT_SUBJECT_AREA =:1 AND A.EFF_STATUS = 'A' 
AND A.EFFDT = (SELECT MAX(A1.EFFDT) FROM PS_EXT_SUBJECT_TBL A1 
WHERE A1.EXT_SUBJECT_AREA = A.EXT_SUBJECT_AREA AND 
A1.EFFDT <= %DateIn(:2))", &SubjectArea, %Date, &SubjectAreaDescr);
      
      If &SubjectAreaDescr = "" Then
         &SubjectAreaDescrOut = "NOT FOUND";
      Else
         &SubjectAreaDescrOut = &SubjectAreaDescr;
      End-If;
   End-If;
   
end-method;


method GetFieldReferences
   
   Local integer &SegmentNbr;
   Local integer &RecordRow;
   
   Local SCC_FILE_PARSER:MODEL:Results:ResultsRecord &obj_SCC_STG_ADMINT;
   
   &SegmentNbr = &ResultsField.ResultsRecord.SegmentNbr;
   &RecordRow = &ResultsField.ResultsRecord.RecordRow;
   
   &obj_SCC_STG_ADMINT = &ResultsCollection.GetResultsRecord(&SegmentNbr, 
"SCC_STG_ADMINT", &RecordRow);
   
   If &obj_SCC_STG_ADMINT <> Null Then
      &SubjectAreaField = &obj_SCC_STG_ADMINT.GetResultsField("EXT_SUBJECT_AREA");
   End-If;
   
end-method;

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 WriteTranMap
  *
  *  @version 1.0
  *  @author Campus Solutions	
  *
  *  Module: Recruiting and Admissions / Common App.
  *  Description: 
  */


class WriteTranMap extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
   /* public methods */
   
   method WriteTranMap();
   method calculateValue(&ResultsFieldIn As 
SCC_FILE_PARSER:MODEL:Results:ResultsField, &ResultsCollectionIn 
As SCC_FILE_PARSER:MODEL:Results:ResultsCollection) Returns any;
   
private
   method GetFileData();
   
   instance string &WriteTranMapOut;
   
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &SccTempIdField;
   
end-class;


method WriteTranMap
   
   %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 &WriteTranMapOut;
   
end-method;


method GetFileData
   
   Local string &TransAcCd;
   Local integer &SccTempIdIn;
   
   &TransAcCd = "AAWS_FP_ADMAPPLS";
   
   SQLExec("SELECT SCC_TEMP_ID FROM PS_SCC_STG_CTRS", &SccTempIdIn);
   
   SQLExec("INSERT INTO PS_SCC_SL_TRNMAP (SCC_TEMP_ID,SCC_TRANSAC_CD) 
VALUES (:1,:2)", &SccTempIdIn, &TransAcCd);
   
   &WriteTranMapOut = " ";
   
end-method;

Code example:

import SCC_FILE_PARSER:MODEL:Results:ResultsField;
import SCC_FILE_PARSER:UTIL:FieldCalculationAbstract;
import SCC_FILE_PARSER:MODEL:Results:ResultsFileFields;
import SCC_FILE_PARSER:MODEL:Results:ResultsCollection;

/**
  *  class LastNameSrch
  *
  *  @version 1.0
  *  @author Campus Solutions   
  *
  *  Module: Recruiting and Admissions / Common App.
  *  Description:
  */


class LastNameSrch extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
   /* public methods */
   
   method LastNameSrch();
   method calculateValue(&ResultsFieldIn As 
SCC_FILE_PARSER:MODEL:Results:ResultsField, &ResultsCollectionIn As 
SCC_FILE_PARSER:MODEL:Results:ResultsCollection) Returns any;
   
private
   
   instance string &LastNameIn;
   
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsFileFields &FileFldValueField;
   
end-class;

Declare Function RemoveAccent PeopleCode FUNCLIB_CS.PREFERRED_NAME FieldFormula;


method LastNameSrch
   
   %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 +/
   
   Local integer &filesegout, &fldnumout;
   Local string &LastNameTemp, &LastNameSrch;
   
   &FileFldValueField = &ResultsCollectionIn.RFF;
   
   &filesegout = 1; /* File Segment Number will always be 1 for 
non-multiple row types. */
   
   /* Last Name */
   &fldnumout = 60;
   &LastNameIn = &FileFldValueField.FetchFileFieldValue(&filesegout, &fldnumout);
   
   RemoveAccent(&LastNameIn, &LastNameTemp);
   &LastNameSrch = &LastNameTemp;
   
   Return &LastNameSrch;
   
end-method;

Code example:

import SCC_FILE_PARSER:MODEL:Results:ResultsField;
import SCC_FILE_PARSER:UTIL:FieldCalculationAbstract;
import SCC_FILE_PARSER:MODEL:Results:ResultsFileFields;
import SCC_FILE_PARSER:MODEL:Results:ResultsCollection;

/**
  *  class FirstNameSrch
  *
  *  @version 1.0
  *  @author Campus Solutions   
  *
  *  Module: Recruiting and Admissions / Common App.
  *  Description:
  */


class FirstNameSrch extends SCC_FILE_PARSER:UTIL:FieldCalculationAbstract
   /* public methods */
   
   method FirstNameSrch();
   method calculateValue(&ResultsFieldIn As 
SCC_FILE_PARSER:MODEL:Results:ResultsField, &ResultsCollectionIn As 
SCC_FILE_PARSER:MODEL:Results:ResultsCollection) Returns any;
   
private
   
   instance string &FirstNameIn;
   
   instance SCC_FILE_PARSER:MODEL:Results:ResultsField &ResultsField;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsCollection &ResultsCollection;
   instance SCC_FILE_PARSER:MODEL:Results:ResultsFileFields &FileFldValueField;
   
end-class;

Declare Function RemoveAccent PeopleCode FUNCLIB_CS.PREFERRED_NAME FieldFormula;


method FirstNameSrch
   
   %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 +/
   
   Local integer &filesegout, &fldnumout;
   Local string &FirstNameTemp, &FirstNameSrch;
   
   &FileFldValueField = &ResultsCollectionIn.RFF;
   
   &filesegout = 1; /* File Segment Number will always be 1 for 
non-multiple row types. */
   
   /* First Name */
   &fldnumout = 40;
   &FirstNameIn = &FileFldValueField.FetchFileFieldValue(&filesegout, &fldnumout);
   
   RemoveAccent(&FirstNameIn, &FirstNameTemp);
   &FirstNameSrch = &FirstNameTemp;
   
   Return &FirstNameSrch;
   
end-method;