CIRS offers 3 files that contain employment data for all active and onleave faculty, staff and management positions within the CSU system. These files have position data and some personal data, but do not have confidential data such as SSA, name and address. The systemwide files are:
-
Systemwide Active Current Status File (SAC) - weekly snapshot as of the previous Friday
-
Systemwide Annual Current Status File (SAN) - annual snapshot as of 10/31
-
Systemwide Transaction Data File (STR) - historical data back to 1976
Generally, reports generated from systemwide files contain summarized data at the position level. For example, a count of positions by class code. But sometimes there's a need for information at the employee level. For example, a head count of employees by class code. That type of report represents a problem because employee counts are generally obtained using the field SSA, which is not available in the systemwide files. However, there are some ad hoc reporting techniques you could use to get estimated head counts. The example that follows uses the SAC file, but it can be used with the SAN or the STR files as well. The entire report is available in the common library as FOC6001.
Step 1: Define A Key Field
Begin by concatenating all the real (non-defined) fields in the first segment of the file into a single key field. Concatenation can only be used with alpha fields, so you must first convert birth date from a smart date field (SAC:BRTHDATE) to an alpha field (SAC:BIRTH) and then concatenate it to the other fields. For example:
EX SAC
DEFINE FILE SAC ADD
SAC:BIRTH/A8MDYY = SAC:BRTHDATE;
SAC:KEY/A15 = (SAC:BIRTH|SAC:SEX|SAC:ETHNIC|SAC:DISABLE);
END
Step 2: Create A Hold File Using List
The next step is to write a report that lists all the fields required for the final report, and place the data in a hold file (e.g., PERMRPT). By using the verb LIST, each row of data in the resulting hold file will be numbered. The row number will be used in the next step. Do not include any sorts in the report. For example:
TABLE FILE SAC
LIST SAC:KEY SAC:CAMPUS SAC:CLASS
ON TABLE HOLD AS PERMRPT
END
Step 3: Define A Unique Identifier
Using the list and key data in the hold file, define a new field to be used as a (somewhat unique) identifier in place of SSA for generating a head count.
DEFINE FILE PERMRPT
IDENTIFIER/I5 = IF (SAC:KEY EQ LAST SAC:KEY) THEN LAST LIST ELSE LIST;
END
Step 4: Generate Report
The final report provides an estimated head count of employees by campus and class code because it doesn't create a truly unique key. For comparison, the actual head count of all active/onleave employees, by campus, as of December 30, 2005 is 52,243. The report below generates a count of 54,283.
TABLE FILE PERMRPT
COUNT DST.IDENTIFIER
BY SAC:CAMPUS
BY SAC:CLASS
END
If you want to know more about defines and hold files, refer to your FOCUS documentation. Also, don't forget about the multitude of reports with systemwide data that are available for printing, downloading or even editing in the CIRS compendium. These reports do not incur any CPU charges and are updated on a regular basis.
For complete information about the systemwide files, refer to the CIRS Data Element Dictionary.