@AbapCatalog.sqlViewName : 'CDUNNINGENTRY'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label : 'Dunning Entry'
@Search.searchable: true
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
//@ObjectModel.representativeKey : 'DunningEntry'
@VDM.viewType: #CONSUMPTION
//@UI.headerInfo: {
// typeName: 'Dunning Notice',
// typeNamePlural: 'Dunning Notices'
//}
define view C_DunningEntry
as select from I_DunningEntry
association [0..*] to C_DunningEntryItem as _DunningEntryItem on $projection.DunningRunDate = _DunningEntryItem.DunningRunDate
and $projection.DunningRun = _DunningEntryItem.DunningRun
and $projection.FinancialAccountType = _DunningEntryItem.FinancialAccountType
and $projection.CompanyCode = _DunningEntryItem.CompanyCode
and $projection.Customer = _DunningEntryItem.Customer
and $projection.Supplier = _DunningEntryItem.Supplier
and $projection.OneTimeAcctBankAccount = _DunningEntryItem.OneTimeAcctBankAccount
and $projection.CustomerHeadOffice = _DunningEntryItem.CustomerHeadOffice
and $projection.GroupingDunningArea = _DunningEntryItem.GroupingDunningArea
and $projection.GroupingDunningLevel = _DunningEntryItem.GroupingDunningLevel
{
@ObjectModel.mandatory: false
@UI.lineItem.position : 4
@UI.selectionField: {position: 6}
@Consumption.filter .selectionType: #INTERVAL
key DunningRunDate,
@UI.lineItem.position : 5
key DunningRun,
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.lineItem.position : 1
@UI.selectionField: {position: 1}
@ObjectModel.text.element: ['FinancialAccountTypeName']
@Consumption.labelElement : 'FinancialAccountTypeName'
@UI.textArrangement: #TEXT_LAST
key FinancialAccountType,
@Consumption.valueHelpDefinition: [ { entity : { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@Search.ranking: #HIGH
@UI.lineItem.position : 2
@UI.selectionField: {position: 2}
@ObjectModel.text.element: ['CompanyCodeName'] // inResult in XML must be set to true on CompandyCodeName, we cant do it because of smart template application so COmpanyCodeName must be included in output
@Consumption.labelElement : 'CompanyCodeName' //
@UI.textArrangement: #TEXT_LAST
key CompanyCode,
@Consumption.valueHelpDefinition: [ { entity : { name: 'I_Customer_VH', element: 'Customer' } } ]
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
//@Search.ranking: #HIGH
//@UI.lineItem.position : 3
@UI.selectionField: {position: 3}
@Consumption.semanticObject : 'Customer'
@ObjectModel.text.element: ['CustomerName'] // inResult in XML must be set to true on CustomerName, we cant do it because of smart template application so COmpanyCodeName must be included in output
@Consumption.labelElement : 'CustomerName'
@UI.textArrangement: #TEXT_LAST
key Customer,
@Consumption.valueHelpDefinition: [ { entity : { name: 'I_Supplier_VH', element: 'Supplier' } } ]
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@Consumption.semanticObject : 'Supplier'
@UI.selectionField: {position: 4}
@ObjectModel.text.element: ['SupplierName'] // inResult in XML must be set to true on CustomerName, we cant do it because of smart template application so COmpanyCodeName must be included in output
@Consumption.labelElement : 'SupplierName'
@UI.textArrangement: #TEXT_LAST
key Supplier,
// @UI.hidden: true
// @Consumption.valueHelpDefinition: [{ entity :{ name: 'C_BPBankAccountVH', element: 'BankAccount' } }] \
@Consumption.filter .hidden: true
key OneTimeAcctBankAccount,
// @UI.hidden: true
// @Consumption.filter .hidden: true
key CustomerHeadOffice,
// @UI.hidden: true
key GroupingDunningArea,
// @UI.hidden: true
key GroupingDunningLevel,
key DunningClerk,
//@Consumption.semanticObject : 'CompanyCodeName'
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.lineItem.position : 20
@Consumption.filter .hidden: true
_CompanyCode.CompanyCodeName, //cannot be dimension nor measure
////@UI.lineItem.position : 40
//@Semantics.name.fullName: true
@Consumption.filter .hidden: true
_Customer.CustomerName, //cannot be dimension nor measure
//search
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.hidden: true
_Customer.OrganizationBPName1,
//search
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.hidden: true
_Customer.OrganizationBPName2,
////@UI.lineItem.position : 50
@Consumption.filter .hidden: true
_Supplier.SupplierName, //cannot be dimension nor measure
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.hidden: true
_Supplier.OrganizationBPName1 as Name,
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.hidden: true
_Supplier.OrganizationBPName2 as AdditionalName,
@UI.hidden: true
DunningPrintDate,
//@UI.hidden: true
@Consumption.filter .selectionType: #INTERVAL
DunningDate,
@UI.hidden: true
LegDunningProcedureOn,
@UI.lineItem.position : 6
DunningProcedure,
@UI.lineItem.position : 8
@Semantics: { amount : {currencyCode: 'DunningCurrency'} }
// @DefaultAggregation: #NONE
// @ObjectModel.text.element: ['DunningCurrency']
@DefaultAggregation: #SUM
DueLineItemsTotalInDunCrcy,
// @UI.lineItem.position : 9
// @UI.lineItem.label : 'TotalAmount'
// concat_with_space(cast (DueLineItemsTotalInDunCrcy as md_customer_name), DunningCurrency, 1) as DueLineItemsTotalInDunCrcy2,
@Semantics.currencyCode:true
@UI.lineItem.position : 9
@Consumption.valueHelpDefinition: [{ entity :{ name: 'C_CurrencyValueHelp', element: 'Currency' } }]
DunningCurrency,
@DefaultAggregation: #SUM
//@Semantics: { amount : {currencyCode: 'DunningCurrency'} }
@UI.hidden: true
cast ( 1 as abap.int4 ) as NmbrOfPages, //DummyNumber
@Search.defaultSearchElement: true
@Search.fuzzinessThreshold : 0.8
@UI.lineItem.position : 7
@UI.selectionField: {position: 5}
DunningLevel,
@UI.hidden: true
DunningBlockingReason,
// @UI.hidden: true
//@UI.lineItem.position : 40
@Consumption.filter .hidden: true
_FinancialAccountType._Text[1:Language = $session.system_language].FinancialAccountTypeName,
@ObjectModel.text.element: ['CustomerSupplierAccountName'] // inResult in XML must be set to true on CustomerName, we cant do it because of smart template application so COmpanyCodeName must be included in output
@Consumption.labelElement : 'CustomerSupplierAccountName'
@UI.lineItem.position : 3
@UI.textArrangement: #TEXT_LAST
@Consumption.filter .hidden: true
cast (
case FinancialAccountType
when 'D' then Customer
when 'K' then Supplier
else ''
end as farp_ktonr_av) as CustomerSupplierAccount,
@UI.lineItem.position : 30
@Consumption.filter .hidden: true
cast (
case FinancialAccountType
when 'D' then _Customer.CustomerName
when 'K' then _Supplier.SupplierName
else ''
end as farp_txt35_konto) as CustomerSupplierAccountName, //cannot be dimension nor measure
//@ObjectModel.association .type: [ #TO_COMPOSITION_CHILD ]
@Consumption.filter .hidden: true
_DunningEntryItem,
@Consumption.filter .hidden: true
_Supplier,
@Consumption.filter .hidden: true
_Customer
}
where
DunningPrintDate <> '00000000' //only printed dunnings should be displayed
/*+[internal] {
"BASEINFO":
{
"FROM ":
[
"I_COMPANYCODE",
"I_CUSTOMER",
"I_DUNNINGENTRY",
"I_FINANCIALACCOUNTTYPE",
"I_FINANCIALACCOUNTTYPETEXT",
"I_SUPPLIER"
],
"ASSOCIATED":
[
"C_DUNNINGENTRYITEM",
"I_CUSTOMER",
"I_SUPPLIER"
],
"BASE":
[
"I_DUNNINGENTRY"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Depth:
1
2
3
4
5
All
Reload