Below code snipet is one of the way to retrieve employee/worker's primary email address.
private LogisticsElectronicAddressLocator getInstructorEmail(HcmWorkerRecId _workerRecId)
{
LogisticsElectronicAddress logisticsElectronicAddress;
HcmWorker hcmWorker;
DirPerson dirPerson;
DirPartyTable dirPartyTable;
select hcmWorker
where hcmWorker.RecId == _workerRecId
join dirPerson
where dirPerson.RecId == hcmWorker.Person
join dirPartyTable
where dirPartyTable.RecId == dirPerson.RecId
join logisticsElectronicAddress
where dirPartyTable.PrimaryContactEmail == logisticsElectronicAddress.RecId;
return logisticsElectronicAddress.Locator;
}
private LogisticsElectronicAddressLocator getInstructorEmail(HcmWorkerRecId _workerRecId)
{
LogisticsElectronicAddress logisticsElectronicAddress;
HcmWorker hcmWorker;
DirPerson dirPerson;
DirPartyTable dirPartyTable;
select hcmWorker
where hcmWorker.RecId == _workerRecId
join dirPerson
where dirPerson.RecId == hcmWorker.Person
join dirPartyTable
where dirPartyTable.RecId == dirPerson.RecId
join logisticsElectronicAddress
where dirPartyTable.PrimaryContactEmail == logisticsElectronicAddress.RecId;
return logisticsElectronicAddress.Locator;
}