Viewing 3 posts - 1 through 3 (of 3 total)
Viewing 3 posts - 1 through 3 (of 3 total)
- You must be logged in to reply to this topic.
PER is short for PERson, so PER objects are used to reference patient, contact and staff records in ClinicOffice.
Typically in a script, you’ll find a field referenced as “per.fieldname” for example :-
per.lastname <- a person's lastname
per.dob <- their date of birth
per.email <- their email address
Here's the full list of fields available on the PER object in ClinicOffice.
title
firstname
middlename
lastname
knownas
company
address1
address2
address3
towncity
county
postcode
country
telephone
worktel
mobile
fax
email
webpage
notes
clinic_id
ispatient
iscontact
patcat_id
patstatus_id
referredcat_id
refby_per_id
maritalstatus_id
occupation_id
practitioner_staff_id
gp_per_id
resp_per_id
insurance_per_id
invrecip_per_id
familyhead_per_id
contcat_id
registrationdate
code
consent
insuranceref
discpercent
invduedays
dob
sex
height
weight
archived
deleted
Can I also access user defined fields programatically? Specifically, can I access a field referring to a list? Should I simply refer to per.custom_field_id?
Yes you can access custom fields from the scripts. How you do this depends on the event that the script is fired from
As an example, the following script would check a custom field called “is_smoker” and then display a message when the patient record is loaded :-
frmEditorPatient – OnAfterLoadRecord
frmEditorBaseRec Editor = (Params[0] as frmEditorBaseRec);
cPer per = (Editor.Record as cPer); // <- the base PER record
cDBBaseRec custom_patient_fields = Editor.CustomRec; // <- the CUSTOM record
if (custom_patient_fields.Row["is_smoker"] != DBNull.Value &&
(bool)custom_patient_fields.Row["is_smoker"] == true)
{
PSDevEx.cMessages.InformationBox("This Patient is a smoker!", "Smoker Alert");
}