Source:
<code>public ReportDefinition getReportDefinition() { String nullString = null; ObjectFormatter nullStringConverter = new ObjectFormatter(); MohCoreService service = Context.getService(MohCoreService.class); ReportDefinition report = new PeriodIndicatorReportDefinition(); report.setName("MOH 361B Report"); PatientDataSetDefinition dsd = new PatientDataSetDefinition(); dsd.setName("allPatients"); dsd.addColumn("Person ID", new PersonIdDataDefinition(), nullString); dsd.addColumn("Date ART Started", new DateARTStartedDataDefinition(), nullString); PatientIdentifierType pit = service.getCCCNumberIdentifierType(); PatientIdentifierDataDefinition cccColumn = new PatientIdentifierDataDefinition("CCC", pit); dsd.addColumn("Unique Patient Number", cccColumn, nullString, new MultiplePatientIdentifierConverter()); dsd.addColumn("Name", new PreferredNameDataDefinition(), nullString); dsd.addColumn("Sex", new GenderDataDefinition(), nullString); dsd.addColumn("Date of Birth", new BirthdateDataDefinition(), nullString, new BirthdateConverter(MOHReportUtil.DATE_FORMAT)); AgeAtEvaluationDateDataDefinition add = new AgeAtEvaluationDateDataDefinition(); dsd.addColumn("Age", add, nullString, new DecimalAgeConverter(2)); PreferredAddressDataDefinition padd = new PreferredAddressDataDefinition(); <START> dsd.addColumn("Address",padd,nullString); <END> PersonAttributeType pat = Context.getPersonService().getPersonAttributeTypeByName("PersonPhoneContact"); PersonAttributeDataDefinition patientPhoneContact = new PersonAttributeDataDefinition(pat); dsd.addColumn("Phone Number",patientPhoneContact,nullString); report.addDataSetDefinition(dsd, null); return report; }</code><technical_language>combine dsd.addColumn("Address", new PreferredAddressDataDefinition(), nullString);. Do need format it, requirements</technical_language>

Target:
public ReportDefinition getReportDefinition() { String nullString = null; ObjectFormatter nullStringConverter = new ObjectFormatter(); MohCoreService service = Context.getService(MohCoreService.class); ReportDefinition report = new PeriodIndicatorReportDefinition(); report.setName("MOH 361B Report"); PatientDataSetDefinition dsd = new PatientDataSetDefinition(); dsd.setName("allPatients"); dsd.addColumn("Person ID", new PersonIdDataDefinition(), nullString); dsd.addColumn("Date ART Started", new DateARTStartedDataDefinition(), nullString); PatientIdentifierType pit = service.getCCCNumberIdentifierType(); PatientIdentifierDataDefinition cccColumn = new PatientIdentifierDataDefinition("CCC", pit); dsd.addColumn("Unique Patient Number", cccColumn, nullString, new MultiplePatientIdentifierConverter()); dsd.addColumn("Name", new PreferredNameDataDefinition(), nullString); dsd.addColumn("Sex", new GenderDataDefinition(), nullString); dsd.addColumn("Date of Birth", new BirthdateDataDefinition(), nullString, new BirthdateConverter(MOHReportUtil.DATE_FORMAT)); AgeAtEvaluationDateDataDefinition add = new AgeAtEvaluationDateDataDefinition(); dsd.addColumn("Age", add, nullString, new DecimalAgeConverter(2)); PreferredAddressDataDefinition padd = new PreferredAddressDataDefinition(); dsd.addColumn("Address",padd,nullString); PersonAttributeType pat = Context.getPersonService().getPersonAttributeTypeByName(CONTACT_PHONE_ATTRIBUTE_TYPE); PersonAttributeDataDefinition patientPhoneContact = new PersonAttributeDataDefinition(pat); dsd.addColumn("Phone Number",patientPhoneContact,nullString); report.addDataSetDefinition(dsd, null); return report; }