@Metadata: { allowExtensions: true }
@VDM: { usage: { type: [ #TRANSACTIONAL_PROCESSING_SERVICE ] },
viewType: #CONSUMPTION }
@AccessControl: { authorizationCheck: #CHECK }
@ObjectModel: { usageType: { serviceQuality: #X,
sizeCategory: #L,
dataClass: #TRANSACTIONAL },
representativeKey: 'CaseUniqueID',
semanticKey: [ 'DisputeCaseUUID',
'CaseID' ] }
@EndUserText: { label: 'Dispute Case Related to Invoice' }
define root view entity C_CollsInvoiceRelatedDsputCase
as projection on I_CollsInvoiceRelatedDsputCase
{
// VDM Fields
key LogicalSystem,
key ObjectType,
key ObjectKey,
key CaseUniqueID,
@ObjectModel: { text: { element: [ 'CompanyCodeName' ] } }
CompanyCode,
AccountingDocument,
FiscalYear,
AccountingDocumentItem,
CaseID,
_DisputeCase.DisputeCaseUUID,
// Dispute Case Attributes
@ObjectModel: { text: { element: [ 'DsputCaseCoordinatorFullName' ] } }
DisputeCaseCoordinator,
@ObjectModel: { text: { element: [ 'CaseRootCauseDescription' ] } }
_DisputeCase.DisputeCaseRootCause,
_DisputeCase.CaseProcessingDeadlineDate,
_DisputeCase.OriginalAmount,
_DisputeCase.DisputedAmount,
_DisputeCase.PaidAmount,
_DisputeCase.CreditedAmount,
_DisputeCase.WriteOffAmount,
_DisputeCase.ManuallyClearedAmount,
_DisputeCase.DisputeCaseCurrency,
_DisputeCase.ContactPerson,
_DisputeCase.ContactPersonName,
_DisputeCase.ContactPersonEmailAddress,
_DisputeCase.ContactPersonPhoneNumber,
_DisputeCase.ContactPersonFaxNumber,
@ObjectModel: { text: { element: [ 'CountryName' ] } }
_DisputeCase.ContactPersonFaxCountry,
@ObjectModel: { text: { element: [ 'CustomerName' ] } }
_DisputeCase.Customer,
@ObjectModel: { text: { element: [ 'DisputeCaseExtApplName' ] } }
_DisputeCase.DisputeCaseExternalApplication,
@ObjectModel: { text: { element: [ 'CaseTypeName' ] } }
_DisputeCase.CaseType,
_DisputeCase.CaseExternalReference,
@ObjectModel: { text: { element: [ 'CreatedByUserName' ] } }
CaseCreatedBy,
_DisputeCase.CaseCreatedOn,
@ObjectModel: { text: { element: [ 'LastChangedByUserName' ] } }
CaseLastChangedBy,
_DisputeCase.CaseLastChangedOn,
@ObjectModel: { text: { element: [ 'DisputeCaseClosedByUserName' ] } }
CaseClosedBy,
_DisputeCase.CaseClosedTime,
_DisputeCase.CasePlannedCloseDate,
@ObjectModel: { text: { element: [ 'DisputeCaseProcessorFullName' ] } }
CaseProcessor,
@ObjectModel: { text: { element: [ 'DisputeCaseResponsibleFullName' ] } }
CaseResponsible,
_DisputeCase.CaseTitle,
@ObjectModel: { text: { element: [ 'DsputCaseEscalationRsnName' ] } }
_DisputeCase.CaseEscalationReason,
@ObjectModel: { text: { element: [ 'CaseCategoryName' ] } }
_DisputeCase.CaseCategory,
@ObjectModel: { text: { element: [ 'DisputeCasePriorityName' ] } }
_DisputeCase.CasePriority,
_DisputeCase.CaseAuthorizationLevel,
_DisputeCase.CaseStatusProfile,
@ObjectModel: { text: { element: [ 'CaseStatusName' ] } }
_DisputeCase.CaseStatus,
@ObjectModel: { text: { element: [ 'CaseSystemStatusName' ] } }
_DisputeCase.CaseSystemStatus,
@ObjectModel: { text: { element: [ 'CaseReasonName' ] } }
_DisputeCase.CaseReason,
_DisputeCase.CustomerDisputedAmount,
_DisputeCase.CustomerDisputedCurrency,
// Text Elements
@Semantics: { text: true }
_DisputeCase._Country._Text.CountryName as CountryName : localized,
@Semantics: { text: true }
_DisputeCase._RootCause._Text.CaseRootCauseDescription as CaseRootCauseDescription : localized,
@Semantics: { text: true }
_DisputeCase._DisputeCaseCoordinatorCard.UserDescription as DsputCaseCoordinatorFullName,
@Semantics: { text: true }
_DisputeCase._Customer.CustomerName as CustomerName,
@Semantics: { text: true }
_DisputeCase._CompanyCode.CompanyCodeName as CompanyCodeName,
@Semantics: { text: true }
_DisputeCase._DisputeCaseExternalAppl._Text.DisputeCaseExtApplName as DisputeCaseExtApplName : localized,
@Semantics: { text: true }
_DisputeCase._CaseTypes._Text.CaseTypeName as CaseTypeName : localized,
@Semantics: { text: true }
_DisputeCase._CreatedByContactCard.UserDescription as CreatedByUserName,
@Semantics: { text: true }
_DisputeCase._ChangedByContactCard.UserDescription as LastChangedByUserName,
@Semantics: { text: true }
_DisputeCase._ClosedByContactCard.UserDescription as DisputeCaseClosedByUserName,
@Semantics: { text: true }
_DisputeCase._ProcessorContactCard.UserDescription as DisputeCaseProcessorFullName,
@Semantics: { text: true }
_DisputeCase._ResponsibleContactCard.UserDescription as DisputeCaseResponsibleFullName,
@Semantics: { text: true }
_DisputeCase._Escalation._Text.CaseEscalationReasonName as DsputCaseEscalationRsnName : localized,
@Semantics: { text: true }
_DisputeCase._CaseCategory._Text.CaseCategoryName as DisputeCaseCategoryName : localized,
@Semantics: { text: true }
_DisputeCase._Priority._Text.CasePriorityName as DisputeCasePriorityName : localized,
@Semantics: { text: true }
_DisputeCase._Individual._Text.CaseStatusName as CaseStatusName : localized,
@Semantics: { text: true }
_DisputeCase._CaseSystemStatus._Text.CaseSystemStatusName as CaseSystemStatusName : localized,
@Semantics: { text: true }
_DisputeCase._Reasons._Text.CaseReasonName as CaseReasonName : localized,
@Semantics: { text: true }
_DisputeCase._CaseCategory._Text.CaseCategoryName as CaseCategoryName : localized,
// Exposed Associations
_CaseAttribute,
_DisputeCase,
_ChangedByContactCard : redirected to C_RblsMgmtUserContactCard,
_ClosedByContactCard : redirected to C_RblsMgmtUserContactCard,
_CreatedByContactCard : redirected to C_RblsMgmtUserContactCard,
_DisputeCaseCoordinatorCard : redirected to C_RblsMgmtUserContactCard,
_ProcessorContactCard : redirected to C_RblsMgmtUserContactCard,
_ResponsibleContactCard : redirected to C_RblsMgmtUserContactCard
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CASECATEGORY",
"I_CASECATEGORYTEXT",
"I_CASEESCALATIONREASON",
"I_CASEESCALATIONREASONTEXT",
"I_CASEINDIVIDUALSTATUS",
"I_CASEINDIVIDUALSTATUSTEXT",
"I_CASEPRIORITY",
"I_CASEPRIORITYTEXT",
"I_CASEREASONS",
"I_CASEREASONSTEXT",
"I_CASESYSTEMSTATUS",
"I_CASESYSTEMSTATUSTEXT",
"I_CASETYPES",
"I_CASETYPESTEXT",
"I_COLLSINVOICERELATEDDSPUTCASE",
"I_COMPANYCODE",
"I_COUNTRY",
"I_COUNTRYTEXT",
"I_CUSTOMER",
"I_DISPUTECASEEXTERNALAPPL",
"I_DISPUTECASEEXTERNALAPPLTEXT",
"I_ROOTCAUSE",
"I_ROOTCAUSETEXT",
"I_USERCONTACTCARD",
"R_DISPUTECASE"
],
"ASSOCIATED":
[
"C_RBLSMGMTUSERCONTACTCARD",
"I_CASEATTRIBUTE",
"R_DISPUTECASE",
"R_RBLSMGMTUSERCONTACTCARD"
],
"BASE":
[
"I_COLLSINVOICERELATEDDSPUTCASE"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/