@AbapCatalog.sqlViewName: 'CCAINV_TRIG'
@AbapCatalog.preserveKey: true
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #CONSUMPTION
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.privilegedAssociations: [ '_User' ]
@ObjectModel: {
representativeKey: 'CAInvcgSourceDocumentNumber',
-- semanticKey: ['CAInvcgSourceDocumentNumber'], -- does not work together with dynamic sem obj
usageType: {
serviceQuality: #D,
sizeCategory: #XL,
dataClass: #TRANSACTIONAL
}
}
@UI.headerInfo: {
typeName: 'Fakturierungsauftrag anzeigen',
typeNamePlural: 'Fakturierungsaufträge',
title.value: 'CAInvcgSourceDocumentNumber'
}
@UI.presentationVariant: [{
requestAtLeast: ['CAInvcgSourceDocumentSemObj', 'CAContractSemanticObject', 'CAInvcgMasterDataType', 'CAInvcgTargetProcess', 'CAClrfctnCategory' ],
sortOrder: [{ by: 'CAInvcgReqCreationDate', direction: #DESC }]
}]
@Search.searchable: true
@EndUserText.label: 'Fakturierungsaufträge anzeigen'
define view C_CAInvcgRequest
as select from I_CAInvcgRequest as _CAInvcgRequest
association [0..1] to I_ContractAccountPartner as _ContractAccountPartner on $projection.ContractAccount = _ContractAccountPartner.ContractAccount
and $projection.BusinessPartner = _ContractAccountPartner.BusinessPartner
{
@UI.lineItem: [
// Actions on ListReport
{ position: 10, importance: #HIGH, type: #FOR_ACTION, dataAction: 'MPC_EXT:CHECK', label: 'Prüfen', requiresContext: true },
{ position: 20, importance: #HIGH, type: #FOR_ACTION, dataAction: 'MPC_EXT:ACTION_INVOICING', label: 'Fakturieren', invocationGrouping: #CHANGE_SET },
{ position: 30, importance: #HIGH, type: #FOR_ACTION, dataAction: 'MPC_EXT:ACTION_CREATE_CFC_VKONT', label: 'Klärungsfall anlegen' },
{ position: 40, importance: #HIGH, type: #FOR_ACTION, dataAction: 'MPC_EXT:ACTION_CREATE_CFC_SRCDOC', label: 'Klärungsfall anlegen' },
//SRCDOCCAT
{ position: 40, importance: #HIGH, type: #STANDARD }
]
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.9 }
@UI.selectionField: { position: 40 }
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_CAInvcgSourceDocCatVH', element: 'CAInvcgSourceDocumentCat' } } ]
@ObjectModel.text.element: 'CAInvcgSourceDocCatText'
key CAInvcgSourceDocumentCat,
//SRCDOCNO
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.9 }
@UI.selectionField: { position: 10 }
@UI.lineItem: { position: 10, importance: #HIGH }
--@Consumption.semanticObject: 'CAInvcgSourceDocumentSemObj' -- just placeholder (overwritten in local annotations)
key CAInvcgSourceDocumentNumber,
@UI.hidden: true
_CAInvcgSourceDocCat.CAInvcgSourceDocumentSemObj,
//GPART
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
@Semantics: { name.fullName: true }
@ObjectModel.filter.enabled: false
@UI.hidden: true
_BusinessPartner.FirstName,
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
@Semantics: { name.fullName: true }
@ObjectModel.filter.enabled: false
@UI.hidden: true
_BusinessPartner.LastName,
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
@UI.selectionField: { position: 20 }
@UI.lineItem: { position: 30, importance: #HIGH}
@Consumption.valueHelpDefinition: [{ entity: { name: 'C_CAContractPartnerValueHelp', element: 'BusinessPartner' }}]
@Consumption.semanticObject: 'CAContractPartner'
_CAInvcgRequest.BusinessPartner,
//VKONT
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
@UI.selectionField: { position: 30 }
@UI.lineItem: { position: 40, importance: #HIGH }
@Consumption: { semanticObject: 'ContractAccount' }
@Consumption.valueHelpDefinition: [{ entity: { name: 'C_ContractAccountValueHelp', element: 'ContractAccount' }}]
_CAInvcgRequest.ContractAccount,
// @Consumption.filter.hidden: true
// _ContractAccountHeader.ContractAccountName,
//WAERS
@UI.fieldGroup: [ { qualifier: 'FurtherFilter', groupLabel: 'Weitere Einstellungen'} ]
_CAInvcgRequest.TransactionCurrency,
//SRCDOC_AMOUNT
@UI.lineItem: { position: 50, importance: #HIGH }
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CAInvcgSourceDocumentAmount,
//INVOICE_FIRST
@UI.selectionField: { position: 60 }
@UI.lineItem: { position: 60, importance: #HIGH }
@Consumption.filter.selectionType: #INTERVAL
_CAInvcgRequest.CAInvcgFirstDate,
//CRDATE
@UI.selectionField: { position: 70 }
@UI.lineItem: { position: 70, importance: #MEDIUM }
@Consumption.filter.selectionType: #INTERVAL
_CAInvcgRequest.CAInvcgReqCreationDate,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.valueHelpDefinition: [{ entity: { name: 'C_ContractAccountValueHelp', element: 'ContractAccount' }}]
_CAInvcgRequest.AltvContractAcctForCollvBills,
@ObjectModel.filter.enabled: false
_CAInvcgRequest.BusinessPlace,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.valueHelpDefinition: [{ association: '_CAApplicationArea' }]
_CAInvcgRequest.CAApplicationArea,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CABillgDocOriginProcessText'
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_CABillgDocOriginProcessVH', element: 'CABillgDocOriginProcess' } } ]
_CAInvcgRequest.CABillgDocOriginProcess,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.filter.selectionType: #INTERVAL
_CAInvcgRequest.CAInvcgReqEndDate,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.filter.selectionType: #INTERVAL
_CAInvcgRequest.CAInvcgReqStartDate,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CAContract,
@UI.hidden: true
@ObjectModel: {
readOnly: true,
virtualElement: true,
virtualElementCalculatedBy: 'ABAP:CL_CINV_VTREF_SEMOBJ'
}
cast ( '' as vtref_semobj_kk ) as CAContractSemanticObject,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CAInvcgCategoryText'
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_CAInvcgCategoryVH', element: 'CAInvcgCategory' } } ]
_CAInvcgRequest.CAInvcgCategory,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CAInvcgControlOfInvcgUnitTxt'
_CAInvcgRequest.CAInvcgControlOfInvoicingUnit,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CAInvcgCorrectionCatText'
_CAInvcgRequest.CAInvcgCorrectionCategory,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.filter.selectionType: #INTERVAL
_CAInvcgRequest.CAInvcgBaseDate,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CAInvcgMasterDataTypeText'
_CAInvcgRequest.CAInvcgMasterDataType,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CAInvcgReqCreationUser,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CAInvcgReqIsDocumentSimulated,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CAInvcgReqIsLockedForInvoicing,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_CAInvcgSourceDocTypeVH', element: 'CAInvcgSourceDocumentType' } } ]
@ObjectModel.text.element: 'CAInvcgSourceDocTypeText'
_CAInvcgRequest.CAInvcgSourceDocumentType,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CAInvcgTargetProcText'
_CAInvcgRequest.CAInvcgTargetProcess,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@ObjectModel.text.element: 'CAInvcgDocTechDocTypeText'
_CAInvcgRequest.CAInvcgTechnicalDocumentType,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CAPartnerSettlementRule,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_CASubApplicationVH', element: 'CASubApplication' } } ]
@ObjectModel.text.element: 'CASubApplicationText'
_CAInvcgRequest.CASubApplication,
@ObjectModel.text.element: 'CompanyCodeName'
@Consumption.valueHelpDefinition: [{ entity: { name: 'C_CACompanyCodeVH', element: 'CompanyCode' } } ]
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.CompanyCode,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.Division,
@UI.fieldGroup: [ { qualifier: 'FurtherFilter'} ]
_CAInvcgRequest.LogicalSystem,
@UI.hidden: true
_CAInvcgSourceDocCat._CAInvcgSourceDocCatText[1: Language=$session.system_language].CAInvcgSourceDocCatText,
@UI.hidden: true
_CAInvcgCategory._CAInvcgCategoryText[1: Language=$session.system_language].CAInvcgCategoryText,
@UI.hidden: true
_CAInvcgSourceDocType._CAInvcgSourceDocTypeText[1: Language=$session.system_language].CAInvcgSourceDocTypeText,
@UI.hidden: true
_CAInvcgTargetProc._CAInvcgTargetProcText[1: Language=$session.system_language].CAInvcgTargetProcText,
@UI.hidden: true
_CAInvcgDocTechDocType._CAInvcgDocTechDocTypeText[1: Language=$session.system_language].CAInvcgDocTechDocTypeText,
@UI.hidden: true
_CASubApplication._CASubApplicationText[1: Language=$session.system_language].CASubApplicationText,
@UI.hidden: true
_CAInvcgMasterDataType._CAInvcgMasterDataTypeText[1: Language=$session.system_language].CAInvcgMasterDataTypeText,
@UI.hidden: true
_CABillgDocOriginProcess._CABillgDocOriginProcessText[1: Language=$session.system_language].CABillgDocOriginProcessText,
@UI.hidden: true
_CAInvcgCorrectionCat._CAInvcgCorrectionCatText[1: Language=$session.system_language].CAInvcgCorrectionCatText,
@UI.hidden: true
_CAInvcgControlOfInvcgUnit._CAInvcgControlOfInvcgUnitTxt[1: Language=$session.system_language].CAInvcgControlOfInvcgUnitTxt,
@UI.hidden: true
_CACompanyCode.CompanyCodeName,
@UI.hidden: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CINV_SADL_EXIT_INVREQ_DSP'
cast (' ' as inv_cfccat_kk) as CAClrfctnCategory,
// Make association public
@Consumption.filter.hidden: true
_BusinessPartner,
@Consumption.filter.hidden: true
_ContractAccountPartner,
@Consumption.filter.hidden: true
_ContractAccountHeader,
@Consumption.filter.hidden: true
_AltvContractAccountHeader,
@Consumption.filter.hidden: true
_CAInvcgSourceDocCat,
@Consumption.filter.hidden: true
_CAInvcgCategory,
@Consumption.filter.hidden: true
_CAInvcgSourceDocType,
@Consumption.filter.hidden: true
_CAInvcgTargetProc,
@Consumption.filter.hidden: true
_CAInvcgDocTechDocType,
@Consumption.filter.hidden: true
_CASubApplication,
@Consumption.filter.hidden: true
_CAInvcgMasterDataType,
@Consumption.filter.hidden: true
_CABillgDocOriginProcess,
@Consumption.filter.hidden: true
_CAInvcgCorrectionCat,
@Consumption.filter.hidden: true
_CAInvcgControlOfInvcgUnit,
@Consumption.filter.hidden: true
_CACompanyCode,
@Consumption.filter.hidden: true
_Division,
@Consumption.filter.hidden: true
_TransactionCurrency,
@Consumption.filter.hidden: true
_CAApplicationArea,
@Consumption.filter.hidden: true
_User
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_CABILLGDOCORIGINPROCESS",
"I_CABILLGDOCORIGINPROCESSTEXT",
"I_CACOMPANYCODE",
"I_CAINVCGCATEGORY",
"I_CAINVCGCATEGORYTEXT",
"I_CAINVCGCONTROLOFINVCGUNIT",
"I_CAINVCGCONTROLOFINVCGUNITTXT",
"I_CAINVCGCORRECTIONCAT",
"I_CAINVCGCORRECTIONCATTEXT",
"I_CAINVCGDOCTECHDOCTYPE",
"I_CAINVCGDOCTECHDOCTYPETEXT",
"I_CAINVCGMASTERDATATYPE",
"I_CAINVCGMASTERDATATYPETEXT",
"I_CAINVCGREQUEST",
"I_CAINVCGSOURCEDOCCAT",
"I_CAINVCGSOURCEDOCCATTEXT",
"I_CAINVCGSOURCEDOCTYPE",
"I_CAINVCGSOURCEDOCTYPETEXT",
"I_CAINVCGTARGETPROC",
"I_CAINVCGTARGETPROCTEXT",
"I_CASUBAPPLICATION",
"I_CASUBAPPLICATIONTEXT"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_CAAPPLICATIONAREA",
"I_CABILLGDOCORIGINPROCESS",
"I_CACOMPANYCODE",
"I_CAINVCGCATEGORY",
"I_CAINVCGCONTROLOFINVCGUNIT",
"I_CAINVCGCORRECTIONCAT",
"I_CAINVCGDOCTECHDOCTYPE",
"I_CAINVCGMASTERDATATYPE",
"I_CAINVCGSOURCEDOCCAT",
"I_CAINVCGSOURCEDOCTYPE",
"I_CAINVCGTARGETPROC",
"I_CASUBAPPLICATION",
"I_CONTRACTACCOUNTHEADER",
"I_CONTRACTACCOUNTPARTNER",
"I_CURRENCY",
"I_DIVISION",
"I_USER"
],
"BASE":
[
"I_CAINVCGREQUEST"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/