Skip to main content

Reparser

Seven20 also includes the functionality to reparse a candidate's CV, for example if they were created manually, or if a new CV has been provided. The reparser takes the CV which has been flagged to be indexed in the seven20__CV_File_Id__c field, and parses it, updating the contact record with the new values.

Parser status

The parser is managed by the parser status (seven20__Parser_Status__c) field, to trigger a reparse, this field value needs to be updated, the following values are defined:

ValueDescription
Partial Re-parseUpdates the seven20__Full_CV__c field and any blank field on the contact record with the value parsed from the CV
Partial Re-parse with History RecordsSame as Partial Re-Parse, however also creates new seven20__Education_History__c and seven20__Employment_History__c records from the CV
Full Re-parseUpdates all field values on the contact record with the value parsed from the CV
Full Re-parse with History RecordsSame as Full Re-Parse, however also creates new seven20__Education_History__c and seven20__Employment_History__c records from the CV
Parse History RecordsCreates new seven20__Education_History__c and seven20__Employment_History__c records from the CV, but updates no contact field values
ParsedThe CV has been parsed, and no further action is required
Failed Partial Re-parseA partial reparse action has failed to complete, retry the parse action and reach out to support if it persists
Failed Full Re-parseA full reparse action has failed to complete, retry the parse action and reach out to support if it persists
Failed History ParseA history parse action has failed to complete, retry the parse action and reach out to support if it persists
tip

The reparser runs as a system process, so any user can trigger a reparse without worrying about their own field permissions.

Record processing

The reparser operates through the use of an apex batch job, which is queued for execution by a trigger whenever the seven20__Parser_Status__c field is updated to a parsing status.

This batch job is self-governing and will prevent multiple instances of it from running at once, ensuring that multiple jobs aren't launched accidentally by multiple records being updated within a short period of time. Once the job has completed, it will check for any remaining records to be parsed, and if any are found, will automatically queue another instance of itself.

warning

The reparser is a resource-intensive process, and as such, the length of time taken to reparse a large number of records can be lengthy. To help mitigate this, it is best to perform bulk re-parsing outside of business hours, or preferably on weekends, to avoid impacting users.

info

The batch job will only look for records which were modified within the last day, this is to prevent record save issues from creating an infinitely looping reparse process. Take this into account when performing a large reparse of records, or when designing validation rules and automations.