|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.kuali.rice.kns.bo.BusinessObjectBase
org.kuali.rice.kns.bo.PersistableBusinessObjectBase
org.kuali.rice.kns.document.DocumentBase
org.kuali.rice.kns.document.TransactionalDocumentBase
org.kuali.kfs.sys.document.FinancialSystemTransactionalDocumentBase
org.kuali.kfs.sys.document.LedgerPostingDocumentBase
org.kuali.kfs.sys.document.GeneralLedgerPostingDocumentBase
org.kuali.kfs.module.ar.document.CustomerCreditMemoDocument
public class CustomerCreditMemoDocument
| Field Summary | |
|---|---|
protected AccountsReceivableDocumentHeader |
accountsReceivableDocumentHeader
|
protected AccountsReceivableTaxService |
arTaxService
|
protected List<CustomerCreditMemoDetail> |
creditMemoDetails
|
protected org.kuali.rice.kns.util.KualiDecimal |
crmTotalAmount
|
protected org.kuali.rice.kns.util.KualiDecimal |
crmTotalItemAmount
|
protected org.kuali.rice.kns.util.KualiDecimal |
crmTotalTaxAmount
|
protected String |
financialDocumentReferenceInvoiceNumber
|
protected CustomerInvoiceDocument |
invoice
|
protected Integer |
invOutstandingDays
|
protected static org.apache.log4j.Logger |
LOG
|
protected String |
statusCode
|
protected TaxService |
taxService
|
| Fields inherited from class org.kuali.kfs.sys.document.GeneralLedgerPostingDocumentBase |
|---|
generalLedgerPendingEntries |
| Fields inherited from class org.kuali.kfs.sys.document.LedgerPostingDocumentBase |
|---|
accountingPeriod, accountingPeriodService, checkPostingYearForCopy, dataDictionaryService, dateTimeService, postingPeriodCode, postingYear |
| Fields inherited from class org.kuali.kfs.sys.document.FinancialSystemTransactionalDocumentBase |
|---|
documentHeader |
| Fields inherited from class org.kuali.rice.kns.document.DocumentBase |
|---|
documentBusinessObject, documentNumber |
| Fields inherited from class org.kuali.rice.kns.bo.PersistableBusinessObjectBase |
|---|
extension, versionNumber |
| Constructor Summary | |
|---|---|
CustomerCreditMemoDocument()
|
|
| Method Summary | |
|---|---|
protected void |
addIncomeGLPEs(GeneralLedgerPendingEntrySequenceHelper sequenceHelper,
GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
boolean hasClaimOnCashOffset)
This method adds pending entry with transaction ledger entry amount set to item price * quantity |
void |
addPendingEntry(GeneralLedgerPendingEntry entry)
Adds a GeneralLedgerPendingEntry to this document's list of pending entries |
protected void |
addReceivableGLPEs(GeneralLedgerPendingEntrySequenceHelper sequenceHelper,
GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
boolean hasClaimOnCashOffset)
This method creates the receivable GLPEs for credit memo detail lines. |
protected void |
addSalesTaxGLPEs(GeneralLedgerPendingEntrySequenceHelper sequenceHelper,
GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
boolean hasClaimOnCashOffset)
This method add pending entries for every tax detail that exists for a particular postal code |
void |
clearAnyGeneralLedgerPendingEntries()
This resets this document's list of general ledger pending etnries, though it does not delete those entries (however, the GeneralLedgerPendingEntryService will in most cases when this method is called). |
void |
clearInitFields()
Clear out the initially populated fields. |
void |
doRouteStatusChange(org.kuali.rice.kew.dto.DocumentRouteStatusChangeDTO statusChangeEvent)
When document is processed do the following: 1) Apply amounts to writeoff invoice 2) Mark off invoice indiciator |
boolean |
generateDocumentGeneralLedgerPendingEntries(GeneralLedgerPendingEntrySequenceHelper sequenceHelper)
Creates any GeneralLedgerPostingEntry's that are based on a document, not those based on GeneralLedgerPendingEntrySourceDetail entries |
boolean |
generateGeneralLedgerPendingEntries(GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
GeneralLedgerPendingEntrySequenceHelper sequenceHelper)
This method creates the following GLPE's for the customer credit memo 1. |
AccountsReceivableDocumentHeader |
getAccountsReceivableDocumentHeader()
|
AccountsReceivableTaxService |
getArTaxService()
Gets the arTaxService attribute. |
List<CustomerCreditMemoDetail> |
getCreditMemoDetails()
Gets the creditMemoDetails attribute. |
org.kuali.rice.kns.util.KualiDecimal |
getCrmTotalAmount()
Gets the crmTotalAmount attribute. |
org.kuali.rice.kns.util.KualiDecimal |
getCrmTotalItemAmount()
Gets the crmTotalItemAmount attribute. |
org.kuali.rice.kns.util.KualiDecimal |
getCrmTotalTaxAmount()
Gets the crmTotalTaxAmount attribute. |
String |
getCurrencyFormattedCrmTotalAmount()
This method returns the crmTotalAmount as a currency formatted string. |
String |
getCurrencyFormattedCrmTotalItemAmount()
This method returns the crmTotalItemAmount as a currency formatted string. |
String |
getCurrencyFormattedCrmTotalTaxAmount()
This method returns the crmTotalTaxAmount as a currency formatted string. |
protected org.kuali.rice.kns.util.KualiDecimal |
getCustomerInvoiceDetailOpenPretaxAmount(org.kuali.rice.kns.util.KualiDecimal openAmount)
|
String |
getFinancialDocumentReferenceInvoiceNumber()
Gets the financialDocumentReferenceInvoiceNumber attribute. |
String |
getFinancialDocumentTypeCode()
Returns the general ledger input type code for the given document, using the DataDictionaryService |
org.kuali.rice.kns.util.KualiDecimal |
getGeneralLedgerPendingEntryAmountForDetail(GeneralLedgerPendingEntrySourceDetail postable)
A method to determine what the actual amount, based off of a GeneralLedgerPendingEntrySourceDetail, should be for the resultant GeneralLedgerPendingEntry |
List<GeneralLedgerPendingEntrySourceDetail> |
getGeneralLedgerPendingEntrySourceDetails()
Returns a list of any GeneralLedgerPostables this helper has, to create GeneralLedgerPendingEntries |
CustomerInvoiceDocument |
getInvoice()
Gets the invoice attribute. |
org.kuali.rice.kns.util.KualiDecimal |
getInvoiceOpenItemQuantity(CustomerCreditMemoDetail customerCreditMemoDetail,
CustomerInvoiceDetail customerInvoiceDetail)
|
Integer |
getInvOutstandingDays()
Gets the invOutstandingDays attribute. |
String |
getPostalCode()
|
String |
getStatusCode()
Gets the statusCode attribute. |
TaxService |
getTaxService()
Gets the taxService attribute. |
org.kuali.rice.kns.util.KualiDecimal |
getTotalDollarAmount()
This method returns the total dollar amount for the document. |
List<Long> |
getWorkflowEngineDocumentIdsToLock()
|
void |
initiateDocument()
Initializes the values for a new document. |
boolean |
isDebit(GeneralLedgerPendingEntrySourceDetail postable)
This method determines if the passed in GeneralLedgerPendingEntrySourceDetail is a debit or not. |
void |
populateCustomerCreditMemoDetails()
|
void |
populateCustomerCreditMemoDetailsAfterLoad()
This method populates credit memo details that aren't saved in database |
void |
prepareForSave(org.kuali.rice.kns.rule.event.KualiDocumentEvent event)
do all the calculations before the document gets saved gets called for 'Submit', 'Save', and 'Blanket Approved' |
protected void |
prepareTotalsForUpdate(org.kuali.rice.kns.util.KualiDecimal oldItemAmount,
boolean isTaxableItemFlag)
|
void |
recalculateTotals(CustomerCreditMemoDetail customerCreditMemoDetail)
|
void |
recalculateTotals(org.kuali.rice.kns.util.KualiDecimal itemAmount,
boolean isTaxableItemFlag)
|
void |
recalculateTotalsBasedOnChangedItemAmount(CustomerCreditMemoDetail customerCreditMemoDetail)
|
void |
resetTotals()
|
void |
setAccountsReceivableDocumentHeader(AccountsReceivableDocumentHeader accountsReceivableDocumentHeader)
|
void |
setCreditMemoDetails(List<CustomerCreditMemoDetail> creditMemoDetails)
Sets the creditMemoDetails attribute value. |
void |
setCrmTotalAmount(org.kuali.rice.kns.util.KualiDecimal crmTotalAmount)
Sets the crmTotalAmount attribute value. |
void |
setCrmTotalItemAmount(org.kuali.rice.kns.util.KualiDecimal crmTotalItemAmount)
Sets the crmTotalItemAmount attribute value. |
void |
setCrmTotalTaxAmount(org.kuali.rice.kns.util.KualiDecimal crmTotalTaxAmount)
Sets the crmTotalTaxAmount attribute value. |
void |
setFinancialDocumentReferenceInvoiceNumber(String financialDocumentReferenceInvoiceNumber)
Sets the financialDocumentReferenceInvoiceNumber attribute value. |
void |
setInvoice(CustomerInvoiceDocument invoice)
Sets the invoice attribute value. |
void |
setInvOutstandingDays(Integer invOutstandingDays)
Sets the invOutstandingDays attribute value. |
void |
setStatusCode(String statusCode)
Sets the statusCode attribute value. |
| Methods inherited from class org.kuali.kfs.sys.document.LedgerPostingDocumentBase |
|---|
createInitialAccountingPeriod, getAccountingPeriod, getAccountingPeriodService, getDataDictionaryService, getDateTimeService, getPostingPeriodCode, getPostingYear, retrieveCurrentAccountingPeriod, setAccountingPeriod, setPostingPeriodCode, setPostingYear |
| Methods inherited from class org.kuali.kfs.sys.document.FinancialSystemTransactionalDocumentBase |
|---|
answerSplitNodeQuestion, getDocumentHeader, prepareForSave, processAfterRetrieve, setDocumentHeader |
| Methods inherited from class org.kuali.rice.kns.document.TransactionalDocumentBase |
|---|
getAllowsCopy, isSessionDocument |
| Methods inherited from class org.kuali.rice.kns.document.DocumentBase |
|---|
addCopyErrorDocumentNote, addPessimisticLock, afterLookup, afterWorkflowEngineProcess, beforeWorkflowEngineProcess, createPropertySerializabilityEvaluator, doActionTaken, doRouteLevelChange, generateSaveEvents, getAdHocRoutePersons, getAdHocRouteWorkgroups, getBasePathToDocumentDuringSerialization, getCustomLockDescriptor, getDocumentBusinessObject, getDocumentNumber, getDocumentPropertySerizabilityEvaluator, getDocumentTitle, getLockClearningMethodNames, getNonLockingActionTakenCodes, getPessimisticLocks, getXmlForRouteReport, logErrors, populateDocumentForRouting, postProcessSave, refresh, refreshIfEmpty, refreshPessimisticLocks, refreshReferenceObject, serializeDocumentToXml, setAdHocRoutePersons, setAdHocRouteWorkgroups, setDocumentNumber, setNewDocumentHeader, setPessimisticLocks, toString, toStringBuilder, toStringMapper, useCustomLockDescriptors, validateBusinessRules, wrapDocumentWithMetadataForXmlSerialization |
| Methods inherited from class org.kuali.rice.kns.bo.PersistableBusinessObjectBase |
|---|
addNote, afterDelete, afterInsert, afterUpdate, beforeDelete, beforeInsert, beforeInsert, beforeUpdate, beforeUpdate, buildListOfDeletionAwareLists, deleteNote, getAttachmentService, getBoNote, getBoNotes, getExtension, getNoteService, getObjectId, getPersistenceService, getPersistenceStructureService, getVersionNumber, isAutoIncrementSet, isBoNotesSupport, isNewCollectionRecord, linkEditableUserFields, refreshNonUpdateableReferences, setAutoIncrementSet, setBoNotes, setExtension, setNewCollectionRecord, setObjectId, setVersionNumber, supportsBoNotes |
| Methods inherited from class org.kuali.rice.kns.bo.BusinessObjectBase |
|---|
prepareForWorkflow |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.kuali.kfs.sys.document.GeneralLedgerPendingEntrySource |
|---|
getDocumentHeader, getPostingYear |
| Methods inherited from interface org.kuali.kfs.sys.document.LedgerPostingDocument |
|---|
getAccountingPeriod, getPostingPeriodCode, getPostingYear, setAccountingPeriod, setPostingPeriodCode, setPostingYear |
| Methods inherited from interface org.kuali.kfs.sys.document.FinancialSystemTransactionalDocument |
|---|
answerSplitNodeQuestion, getDocumentHeader |
| Methods inherited from interface org.kuali.rice.kns.document.Document |
|---|
addPessimisticLock, afterWorkflowEngineProcess, beforeWorkflowEngineProcess, doActionTaken, doRouteLevelChange, generateSaveEvents, getAdHocRoutePersons, getAdHocRouteWorkgroups, getAllowsCopy, getBasePathToDocumentDuringSerialization, getCustomLockDescriptor, getDocumentBusinessObject, getDocumentNumber, getDocumentPropertySerizabilityEvaluator, getDocumentTitle, getLockClearningMethodNames, getPessimisticLocks, getXmlForRouteReport, populateDocumentForRouting, postProcessSave, prepareForSave, processAfterRetrieve, refreshPessimisticLocks, serializeDocumentToXml, setAdHocRoutePersons, setAdHocRouteWorkgroups, setDocumentHeader, setDocumentNumber, useCustomLockDescriptors, validateBusinessRules, wrapDocumentWithMetadataForXmlSerialization |
| Methods inherited from interface org.kuali.rice.kns.bo.PersistableBusinessObject |
|---|
addNote, buildListOfDeletionAwareLists, deleteNote, getBoNote, getBoNotes, getExtension, getObjectId, getVersionNumber, isBoNotesSupport, isNewCollectionRecord, linkEditableUserFields, refreshNonUpdateableReferences, refreshReferenceObject, setAutoIncrementSet, setExtension, setNewCollectionRecord, setObjectId, setVersionNumber |
| Methods inherited from interface org.kuali.rice.kns.bo.BusinessObject |
|---|
prepareForWorkflow, refresh |
| Methods inherited from interface org.apache.ojb.broker.PersistenceBrokerAware |
|---|
afterDelete, afterInsert, afterLookup, afterUpdate, beforeDelete, beforeInsert, beforeUpdate |
| Field Detail |
|---|
protected static org.apache.log4j.Logger LOG
protected String statusCode
protected String financialDocumentReferenceInvoiceNumber
protected org.kuali.rice.kns.util.KualiDecimal crmTotalItemAmount
protected org.kuali.rice.kns.util.KualiDecimal crmTotalTaxAmount
protected org.kuali.rice.kns.util.KualiDecimal crmTotalAmount
protected Integer invOutstandingDays
protected CustomerInvoiceDocument invoice
protected AccountsReceivableDocumentHeader accountsReceivableDocumentHeader
protected List<CustomerCreditMemoDetail> creditMemoDetails
protected transient TaxService taxService
protected transient AccountsReceivableTaxService arTaxService
| Constructor Detail |
|---|
public CustomerCreditMemoDocument()
| Method Detail |
|---|
public List<CustomerCreditMemoDetail> getCreditMemoDetails()
public void setCreditMemoDetails(List<CustomerCreditMemoDetail> creditMemoDetails)
creditMemoDetails - The creditMemoDetails to set.public String getFinancialDocumentReferenceInvoiceNumber()
public void setFinancialDocumentReferenceInvoiceNumber(String financialDocumentReferenceInvoiceNumber)
financialDocumentReferenceInvoiceNumber - The financialDocumentReferenceInvoiceNumber to set.public CustomerInvoiceDocument getInvoice()
public void setInvoice(CustomerInvoiceDocument invoice)
invoice - The invoice to set.public String getStatusCode()
public void setStatusCode(String statusCode)
statusCode - The statusCode to set.public void initiateDocument()
public void clearInitFields()
public org.kuali.rice.kns.util.KualiDecimal getCrmTotalAmount()
public String getCurrencyFormattedCrmTotalAmount()
public void setCrmTotalAmount(org.kuali.rice.kns.util.KualiDecimal crmTotalAmount)
crmTotalAmount - The crmTotalAmount to set.public org.kuali.rice.kns.util.KualiDecimal getCrmTotalItemAmount()
public String getCurrencyFormattedCrmTotalItemAmount()
public void setCrmTotalItemAmount(org.kuali.rice.kns.util.KualiDecimal crmTotalItemAmount)
crmTotalItemAmount - The crmTotalItemAmount to set.public org.kuali.rice.kns.util.KualiDecimal getCrmTotalTaxAmount()
public String getCurrencyFormattedCrmTotalTaxAmount()
public void setCrmTotalTaxAmount(org.kuali.rice.kns.util.KualiDecimal crmTotalTaxAmount)
crmTotalTaxAmount - The crmTotalTaxAmount to set.public Integer getInvOutstandingDays()
public void setInvOutstandingDays(Integer invOutstandingDays)
invOutstandingDays - The invOutstandingDays to set.public void recalculateTotalsBasedOnChangedItemAmount(CustomerCreditMemoDetail customerCreditMemoDetail)
public void recalculateTotals(CustomerCreditMemoDetail customerCreditMemoDetail)
protected void prepareTotalsForUpdate(org.kuali.rice.kns.util.KualiDecimal oldItemAmount,
boolean isTaxableItemFlag)
public void resetTotals()
public void recalculateTotals(org.kuali.rice.kns.util.KualiDecimal itemAmount,
boolean isTaxableItemFlag)
public void populateCustomerCreditMemoDetails()
public void populateCustomerCreditMemoDetailsAfterLoad()
public org.kuali.rice.kns.util.KualiDecimal getInvoiceOpenItemQuantity(CustomerCreditMemoDetail customerCreditMemoDetail,
CustomerInvoiceDetail customerInvoiceDetail)
protected org.kuali.rice.kns.util.KualiDecimal getCustomerInvoiceDetailOpenPretaxAmount(org.kuali.rice.kns.util.KualiDecimal openAmount)
public void prepareForSave(org.kuali.rice.kns.rule.event.KualiDocumentEvent event)
prepareForSave in interface org.kuali.rice.kns.document.DocumentprepareForSave in class GeneralLedgerPostingDocumentBaseDocument.prepareForSave(org.kuali.rice.kns.rule.event.KualiDocumentEvent)public boolean generateDocumentGeneralLedgerPendingEntries(GeneralLedgerPendingEntrySequenceHelper sequenceHelper)
GeneralLedgerPendingEntrySource
generateDocumentGeneralLedgerPendingEntries in interface GeneralLedgerPendingEntrySourcesequenceHelper - a sequence helper for the method to create more general ledger pending entries
GeneralLedgerPendingEntrySource.generateDocumentGeneralLedgerPendingEntries(org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntrySequenceHelper)public boolean isDebit(GeneralLedgerPendingEntrySourceDetail postable)
GeneralLedgerPendingEntrySource
isDebit in interface GeneralLedgerPendingEntrySourceGeneralLedgerPendingEntrySource.isDebit(org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntrySourceDetail)public void clearAnyGeneralLedgerPendingEntries()
GeneralLedgerPostingDocumentBase
clearAnyGeneralLedgerPendingEntries in interface GeneralLedgerPendingEntrySourceclearAnyGeneralLedgerPendingEntries in class GeneralLedgerPostingDocumentBaseGeneralLedgerPendingEntrySource.clearAnyGeneralLedgerPendingEntries()public List<GeneralLedgerPendingEntrySourceDetail> getGeneralLedgerPendingEntrySourceDetails()
GeneralLedgerPendingEntrySource
getGeneralLedgerPendingEntrySourceDetails in interface GeneralLedgerPendingEntrySourceorg.kuali.kfs.sys.document.GeneralLedgerPendingEntrySource#getGeneralLedgerPostables()public void addPendingEntry(GeneralLedgerPendingEntry entry)
GeneralLedgerPostingDocumentBase
addPendingEntry in interface GeneralLedgerPendingEntrySourceaddPendingEntry in class GeneralLedgerPostingDocumentBaseentry - a pending entry to addGeneralLedgerPendingEntrySource.addPendingEntry(org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntry)public org.kuali.rice.kns.util.KualiDecimal getGeneralLedgerPendingEntryAmountForDetail(GeneralLedgerPendingEntrySourceDetail postable)
GeneralLedgerPendingEntrySource
getGeneralLedgerPendingEntryAmountForDetail in interface GeneralLedgerPendingEntrySourcepostable - the detail line from the general ledger pending entry source to find an amount for
org.kuali.kfs.sys.document.GeneralLedgerPendingEntrySource#getGeneralLedgerPendingEntryAmountForGeneralLedgerPostable(org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntrySourceDetail)public String getFinancialDocumentTypeCode()
getFinancialDocumentTypeCode in interface GeneralLedgerPendingEntrySourcegetFinancialDocumentTypeCode in class LedgerPostingDocumentBasepublic List<Long> getWorkflowEngineDocumentIdsToLock()
getWorkflowEngineDocumentIdsToLock in interface org.kuali.rice.kns.document.DocumentgetWorkflowEngineDocumentIdsToLock in class org.kuali.rice.kns.document.DocumentBasepublic void doRouteStatusChange(org.kuali.rice.kew.dto.DocumentRouteStatusChangeDTO statusChangeEvent)
doRouteStatusChange in interface org.kuali.rice.kns.document.DocumentdoRouteStatusChange in class GeneralLedgerPostingDocumentBaseorg.kuali.kfs.sys.document.GeneralLedgerPostingDocumentBase#doRouteStatusChange()
public boolean generateGeneralLedgerPendingEntries(GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
GeneralLedgerPendingEntrySequenceHelper sequenceHelper)
generateGeneralLedgerPendingEntries in interface GeneralLedgerPendingEntrySourceglpeSourceDetail - the source detail line to generate general ledger pending entries forsequenceHelper - the sequence helper which will assign sequence number to generated general ledger pending entries
org.kuali.kfs.service.impl.GenericGeneralLedgerPendingEntryGenerationProcessImpl#processGenerateGeneralLedgerPendingEntries(org.kuali.kfs.sys.document.GeneralLedgerPendingEntrySource, org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntrySourceDetail, org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntrySequenceHelper)
protected void addReceivableGLPEs(GeneralLedgerPendingEntrySequenceHelper sequenceHelper,
GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
boolean hasClaimOnCashOffset)
poster - sequenceHelper - postable - explicitEntry -
protected void addIncomeGLPEs(GeneralLedgerPendingEntrySequenceHelper sequenceHelper,
GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
boolean hasClaimOnCashOffset)
poster - sequenceHelper - postable - explicitEntry -
protected void addSalesTaxGLPEs(GeneralLedgerPendingEntrySequenceHelper sequenceHelper,
GeneralLedgerPendingEntrySourceDetail glpeSourceDetail,
boolean hasClaimOnCashOffset)
sequenceHelper - glpeSourceDetail - hasClaimOnCashOffset - public org.kuali.rice.kns.util.KualiDecimal getTotalDollarAmount()
AmountTotaling
getTotalDollarAmount in interface AmountTotalingpublic AccountsReceivableDocumentHeader getAccountsReceivableDocumentHeader()
public void setAccountsReceivableDocumentHeader(AccountsReceivableDocumentHeader accountsReceivableDocumentHeader)
public String getPostalCode()
public TaxService getTaxService()
public AccountsReceivableTaxService getArTaxService()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||