It should work but you need to do "while select", like:
static void AXC_CompanyPhone(Args _args) { DirPartyLocation dirPartyLocation; LogisticsElectronicAddress electronicAddress; CompanyInfo companyInfo; companyInfo = companyInfo::find(); while select dirPartyLocation where dirPartyLocation.Party == companyInfo.RecId && dirPartyLocation.IsPostalAddress == NoYes::No join electronicAddress where electronicAddress.Location == dirPartyLocation.Location && electronicAddress.Type == LogisticsElectronicAddressMethodType::Phone { info(strFmt("Description: %1, Contact number/address: %2", electronicAddress.Description, electronicAddress.Locator)); } }