Source:
<code>public List<MaintenanceLock> generateMaintenanceLocks() { LOG.debug("generateMaintenanceLocks, entering"); CuObjectCodeActivationGlobal objectCodeGlobal = (CuObjectCodeActivationGlobal) getBusinessObject(); List<MaintenanceLock> maintenanceLocks = new ArrayList<MaintenanceLock>(); for (CuObjectCodeGlobalDetail detail : objectCodeGlobal.getObjectCodeGlobalDetails()) { MaintenanceLock maintenanceLock = new MaintenanceLock(); StringBuffer lockrep = new StringBuffer(); <START> lockrep.append(Account.class.getName() + KFSConstants.Maintenance.AFTER_CLASS_DELIM); <END> lockrep.append(KFSPropertyConstants.CHART_OF_ACCOUNTS_CODE + KFSConstants.Maintenance.AFTER_FIELDNAME_DELIM); lockrep.append(detail.getChartOfAccountsCode() + KFSConstants.Maintenance.AFTER_VALUE_DELIM); lockrep.append(KFSPropertyConstants.FISCAL_YEAR + KFSConstants.Maintenance.AFTER_FIELDNAME_DELIM); lockrep.append(detail.getUniversityFiscalYear()); lockrep.append(KFSPropertyConstants.OBJECT_CODE + KFSConstants.Maintenance.AFTER_FIELDNAME_DELIM); lockrep.append(detail.getFinancialObjectCode()); maintenanceLock.setDocumentNumber(objectCodeGlobal.getDocumentNumber()); maintenanceLock.setLockingRepresentation(lockrep.toString()); maintenanceLocks.add(maintenanceLock); } return maintenanceLocks; }</code><technical_language>this locking string reference ObjectCode instead of Account? Also, ObjectCodeGlobalMaintainableImpl a field ordering for object code lock strings, potential include locking strings for related sub-objects. similar locking done well</technical_language>

Target:
public List<MaintenanceLock> generateMaintenanceLocks() { LOG.info("generateMaintenanceLocks, entering"); CuObjectCodeActivationGlobal objectCodeGlobal = (CuObjectCodeActivationGlobal) getBusinessObject(); List<MaintenanceLock> maintenanceLocks = new ArrayList(); for (CuObjectCodeGlobalDetail detail : objectCodeGlobal.getObjectCodeGlobalDetails()) { MaintenanceLock maintenanceLock = new MaintenanceLock(); StringBuffer lockrep = new StringBuffer(); lockrep.append(ObjectCode.class.getName() + KFSConstants.Maintenance.AFTER_CLASS_DELIM); lockrep.append(KFSPropertyConstants.UNIVERSITY_FISCAL_YEAR + KFSConstants.Maintenance.AFTER_FIELDNAME_DELIM); lockrep.append(detail.getUniversityFiscalYear() + KFSConstants.Maintenance.AFTER_VALUE_DELIM); lockrep.append(KFSPropertyConstants.CHART_OF_ACCOUNTS_CODE + KFSConstants.Maintenance.AFTER_FIELDNAME_DELIM); lockrep.append(detail.getChartOfAccountsCode() + KFSConstants.Maintenance.AFTER_VALUE_DELIM); lockrep.append(KFSPropertyConstants.FINANCIAL_OBJECT_CODE + KFSConstants.Maintenance.AFTER_FIELDNAME_DELIM); lockrep.append(detail.getFinancialObjectCode()); maintenanceLock.setDocumentNumber(objectCodeGlobal.getDocumentNumber()); maintenanceLock.setLockingRepresentation(lockrep.toString()); maintenanceLocks.add(maintenanceLock); ObjectCode objectCode = new ObjectCode(); objectCode.setUniversityFiscalYear(detail.getUniversityFiscalYear()); objectCode.setChartOfAccountsCode(detail.getChartOfAccountsCode()); objectCode.setFinancialObjectCode(detail.getFinancialObjectCode()); objectCode.setActive(objectCodeGlobal.getActivate()); if (isInactivatingObjectCode(objectCode)) { maintenanceLocks.addAll(getSubObjectTrickleDownInactivationService().generateTrickleDownMaintenanceLocks(objectCode, getDocumentNumber())); } } return maintenanceLocks; }