C_CAInvcgClrfctnCase

DDL: C_CAINVCGCLRFCTNCASE SQL: CCAINV_CFC Type: view CONSUMPTION

Klärungsfall Fakturierung

C_CAInvcgClrfctnCase is a Consumption CDS View that provides data about "Klärungsfall Fakturierung" in SAP S/4HANA. It reads from 1 data source (I_CAInvcgClrfctnCaseTP) and exposes 62 fields with key field CAInvcgClarification. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_CAInvcgClrfctnCaseTP CAInvcgClrfctnCase from

Associations (2)

CardinalityTargetAliasCondition
[0..*] C_CAInvcgClrfctnCaseActionLog _CAInvcgClrfctnCaseActionLog $projection.CAInvcgClarification = _CAInvcgClrfctnCaseActionLog.CAInvcgClarification
[0..1] C_CABillgReqBPAddress _CAInvcgBusinessPartnerAddress $projection.BusinessPartner = _CAInvcgBusinessPartnerAddress.BusinessPartner

Annotations (25)

NameValueLevelField
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AbapCatalog.sqlViewName CCAINV_CFC view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Klärungsfall Fakturierung view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #CONSUMPTION view
Search.searchable true view
ObjectModel.semanticKey CAInvcgClarification view
ObjectModel.representativeKey CAInvcgClarification view
ObjectModel.compositionRoot true view
ObjectModel.transactionalProcessingDelegated true view
ObjectModel.draftEnabled true view
ObjectModel.updateEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled EXTERNAL_CALCULATION view
UI.headerInfo.typeName Klärungsfall view
UI.headerInfo.typeNamePlural Klärungsfälle view
UI.headerInfo.title.label Klärungsfall view
UI.headerInfo.title.type #STANDARD view
UI.headerInfo.title.value CAInvcgClarificationStr view
UI.headerInfo.description.value CAClrfctnStatusName view

Fields (62)

KeyFieldSource TableSource FieldDescription
KEY CAInvcgClarification I_CAInvcgClrfctnCaseTP CAInvcgClarification Klärungsfall
BusinessPartner I_CAInvcgClrfctnCaseTP BusinessPartner
BusinessPartnerName
StreetName _CAInvcgBusinessPartnerAddress StreetName
AddressCityName _CAInvcgBusinessPartnerAddress AddressCityName
CountryName _CAInvcgBusinessPartnerAddress CountryName
CAAmountInTransactionCurrency I_CAInvcgClrfctnCaseTP CAAmountInTransactionCurrency
CAApplicationArea I_CAInvcgClrfctnCaseTP CAApplicationArea
CAClrfctnCaseIsClarifiedAutom I_CAInvcgClrfctnCaseTP CAClrfctnCaseIsClarifiedAutom
CAClrfctnCaseIsResubmitted I_CAInvcgClrfctnCaseTP CAClrfctnCaseIsResubmitted Wiedervorlage
CAClrfctnCaseIsLocked I_CAInvcgClrfctnCaseTP CAClrfctnCaseIsLocked Sperre
CAClrfctnCategory I_CAInvcgClrfctnCaseTP CAClrfctnCategory Klärungstyp
CAClrfctnCategoryText
CAClrfctnInvcgDocCheck I_CAInvcgClrfctnCaseTP CAClrfctnInvcgDocCheck
CAClrfctnInvcgDocCheckText
CAClrfctnIsClarified I_CAInvcgClrfctnCaseTP CAClrfctnIsClarified Klärungsfall geklärt
CAClrfctnLastProcessedByUser I_CAInvcgClrfctnCaseTP CAClrfctnLastProcessedByUser
CAClrfctnLastProcgStatus I_CAInvcgClrfctnCaseTP CAClrfctnLastProcgStatus Temporärer Bearbeitungszustand
CAClrfctnLockedToDate I_CAInvcgClrfctnCaseTP CAClrfctnLockedToDate
CAClrfctnNmbrOfWorkflows I_CAInvcgClrfctnCaseTP CAClrfctnNmbrOfWorkflows
CAClrfctnProcgStatus I_CAInvcgClrfctnCaseTP CAClrfctnProcgStatus Bearbeitungsstatus
CAClrfctnProcgStatusName
CAClrfctnReason I_CAInvcgClrfctnCaseTP CAClrfctnReason
CAClrfctnReasonText
CAClrfctnResubmsnDate I_CAInvcgClrfctnCaseTP CAClrfctnResubmsnDate
CAClrfctnSrceDocCheck I_CAInvcgClrfctnCaseTP CAClrfctnSrceDocCheck Quellbelegprüfung
CAClrfctnSrceDocCheckText
CAClrfctnStatus
CAClrfctnStatusName
CAContract I_CAInvcgClrfctnCaseTP CAContract
CAContractSemanticObject
CACurrencySourceDocument I_CAInvcgClrfctnCaseTP CACurrencySourceDocument
CAInvcgMasterDataType I_CAInvcgClrfctnCaseTP CAInvcgMasterDataType
CAInvcgProcess I_CAInvcgClrfctnCaseTP CAInvcgProcess
CAInvcgSourceDocumentAmount I_CAInvcgClrfctnCaseTP CAInvcgSourceDocumentAmount
CAInvcgSourceDocumentCat I_CAInvcgClrfctnCaseTP CAInvcgSourceDocumentCat
CAInvcgSourceDocCatText
CAInvcgSourceDocumentNumber I_CAInvcgClrfctnCaseTP CAInvcgSourceDocumentNumber Quellbeleg
CAInvcgSourceDocumentSemObj
CAInvcgSourceDocumentType I_CAInvcgClrfctnCaseTP CAInvcgSourceDocumentType
CAInvcgSourceDocTypeText
CAInvcgTargetProcess I_CAInvcgClrfctnCaseTP CAInvcgTargetProcess
CAInvoicingDocument I_CAInvcgClrfctnCaseTP CAInvoicingDocument
CAPreliminaryInvoicingDocument Vorläufige Rechnung
CASubApplication I_CAInvcgClrfctnCaseTP CASubApplication
ContractAccount I_CAInvcgClrfctnCaseTP ContractAccount
ContractAccountName
CreatedByUser I_CAInvcgClrfctnCaseTP CreatedByUser
CreationDate I_CAInvcgClrfctnCaseTP CreationDate
CreationTime I_CAInvcgClrfctnCaseTP CreationTime
CreationDateTime
SystemMessageIdentification I_CAInvcgClrfctnCaseTP SystemMessageIdentification
SystemMessageNumber I_CAInvcgClrfctnCaseTP SystemMessageNumber
SystemMessageType I_CAInvcgClrfctnCaseTP SystemMessageType
SystemMessageVariable1 I_CAInvcgClrfctnCaseTP SystemMessageVariable1
SystemMessageVariable2 I_CAInvcgClrfctnCaseTP SystemMessageVariable2
SystemMessageVariable3 I_CAInvcgClrfctnCaseTP SystemMessageVariable3
SystemMessageVariable4 I_CAInvcgClrfctnCaseTP SystemMessageVariable4
TransactionCurrency I_CAInvcgClrfctnCaseTP TransactionCurrency
CAInvcgClarificationStr
CAClrfctnCaseMessageText Meldung
CAClrfctnCaseTransactionCrcy Währung
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AbapCatalog.sqlViewName: 'CCAINV_CFC'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.privilegedAssociations: ['_CreatedByUser', '_ProcessedByUser']
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Klärungsfall Fakturierung'
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@VDM.viewType: #CONSUMPTION
@Search.searchable: true
@ObjectModel: {
    semanticKey: 'CAInvcgClarification',
    representativeKey: 'CAInvcgClarification',
    compositionRoot: true,
    transactionalProcessingDelegated: true,
    draftEnabled: true,
    updateEnabled: 'EXTERNAL_CALCULATION',
    deleteEnabled: 'EXTERNAL_CALCULATION'
}
@UI.headerInfo: {
    typeName:       'Klärungsfall',
    typeNamePlural: 'Klärungsfälle',
    title: {
        label:  'Klärungsfall',
        type:   #STANDARD,
        value:  'CAInvcgClarificationStr'
    },
    description: {
        value: 'CAClrfctnStatusName'
    }
}
@UI.selectionVariant: [
    { qualifier: 'VariantSelection01', text: 'Offen', filter: 'CAClrfctnStatus lt "03" and CAClrfctnCaseIsResubmitted eq ""' },
    { qualifier: 'VariantSelection02', text: 'Wiedervorlage', filter: 'CAClrfctnStatus lt "03" and CAClrfctnCaseIsResubmitted eq "X"' },
    { qualifier: 'VariantSelection03', text: 'Abgeschlossen', filter: 'CAClrfctnStatus eq "03"' }
]
@UI.presentationVariant: [{
    requestAtLeast: [
        'CAInvcgSourceDocumentSemObj',
        'CAContractSemanticObject',
        'CAInvcgDocPrntOutpCtrlIsEnbld',
        'CAInvcgDocumentPrintIsEnabled',
        'CAInvcgDocPrintPreviewIsEnbld',
        'UICT_CAAmtInTransCrcy',
        'UICT_CABillingDocument',
        'UICT_CAClrfctnCaseMessage',
        'UICT_CAInvoicingDocument',
        'UICT_CAPreliminaryInvoice',
        'UICT_ContractAccount'
    ]
}]
define view C_CAInvcgClrfctnCase
  as select from I_CAInvcgClrfctnCaseTP as CAInvcgClrfctnCase
  association [0..*] to C_CAInvcgClrfctnCaseActionLog as _CAInvcgClrfctnCaseActionLog   on $projection.CAInvcgClarification = _CAInvcgClrfctnCaseActionLog.CAInvcgClarification
  association [0..1] to C_CABillgReqBPAddress         as _CAInvcgBusinessPartnerAddress on $projection.BusinessPartner = _CAInvcgBusinessPartnerAddress.BusinessPartner

{
      @UI: {
          facet: [
              { purpose: #HEADER, type: #FIELDGROUP_REFERENCE, targetQualifier: 'HeaderInformation01' },
              { purpose: #HEADER, type: #FIELDGROUP_REFERENCE, targetQualifier: 'HeaderInformation02' },
              { purpose: #HEADER, type: #FIELDGROUP_REFERENCE, targetQualifier: 'HeaderInformation03' },
              { purpose: #HEADER, type: #DATAPOINT_REFERENCE,  targetQualifier: 'HeaderInformation04', hidden: #(UICT_CAAmtInTransCrcy) },
  { purpose: #STANDARD, type: #COLLECTION, position: 10, id: 'GENERAL01', label: 'Quellbeleg', hidden: #(UICT_CABillingDocument) },
  { purpose: #STANDARD, type: #COLLECTION, position: 20, id: 'GENERAL02', label: 'Fakturierungsbeleg', hidden: #(UICT_CAInvoicingDocument) },
  { purpose: #STANDARD, type: #COLLECTION, position: 30, id: 'GENERAL03', label: 'Vorläufige Rechnung', hidden: #(UICT_CAPreliminaryInvoice) },
  { purpose: #STANDARD, type: #COLLECTION, position: 40, id: 'GENERAL04', label: 'Vertragskonto', hidden: #(UICT_ContractAccount) },
  { purpose: #STANDARD, type: #COLLECTION, position: 50, id: 'GENERAL05', label: 'Fehlermeldung', hidden: #(UICT_CAClrfctnCaseMessage) },
  { purpose: #STANDARD, type: #COLLECTION, position: 60, id: 'GENERAL_INFO', label: 'Allgemeine Informationen' },
  { purpose: #STANDARD, type: #LINEITEM_REFERENCE, position: 70, targetElement: '_CAInvcgClrfctnCaseActionLog', label: 'Klärungshistorie' },
  { position: 10, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation01', parentId: 'GENERAL01', targetQualifier: 'AddInformation01', label: 'Abrechnungsdaten', hidden: #(UICT_CABillingDocument) },
  { position: 20, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation02', parentId: 'GENERAL01', targetQualifier: 'AddInformation02', label: 'Klärung' },
  { position: 30, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralActions01', parentId: 'GENERAL01', targetQualifier: 'GeneralActions01', label: 'Aktionen' },
  { position: 10, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation03', parentId: 'GENERAL02', targetQualifier: 'AddInformation03', label: 'Fakturierungsdaten', hidden: #(UICT_CAInvoicingDocument) },
  { position: 20, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation04', parentId: 'GENERAL02', targetQualifier: 'AddInformation04', label: 'Klärung' },
  { position: 30, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralActions02', parentId: 'GENERAL02', targetQualifier: 'GeneralActions02', label: 'Aktionen' },
  { position: 10, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation05', parentId: 'GENERAL03', targetQualifier: 'AddInformation05', label: 'Vorläufige Rechnung', hidden: #(UICT_CAPreliminaryInvoice) },
  { position: 20, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation06', parentId: 'GENERAL03', targetQualifier: 'AddInformation06', label: 'Klärung' },
  { position: 30, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralActions03', parentId: 'GENERAL03', targetQualifier: 'GeneralActions03', label: 'Aktionen' },
  { position: 10, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation07', parentId: 'GENERAL04', targetQualifier: 'AddInformation07', label: 'Klärung' },
  { position: 20, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralActions04', parentId: 'GENERAL04', targetQualifier: 'GeneralActions04', label: 'Aktionen' },
  { position: 10, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'AddInformation08', parentId: 'GENERAL05', targetQualifier: 'AddInformation08', label: 'Klärung' },
  { position: 20, purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralActions05', parentId: 'GENERAL05', targetQualifier: 'GeneralActions05', label: 'Aktionen' },
  { purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralInformation01', parentId: 'GENERAL_INFO', targetQualifier: 'GeneralInformation01', label: 'Sperrdaten' },
  { purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralInformation03', parentId: 'GENERAL_INFO', targetQualifier: 'GeneralInformation03', label: 'Wiedervorlage' },
  { purpose: #STANDARD, type: #FIELDGROUP_REFERENCE, id: 'GeneralInformation02', parentId: 'GENERAL_INFO', targetQualifier: 'GeneralInformation02', label: 'Erstellungsdaten' }
  ],
  lineItem: [
  { position: 30, type: #FOR_ACTION, dataAction: 'BOPF:CHANGE_STATUS', invocationGrouping: #CHANGE_SET, label: 'Status ändern' },
  { position: 40, type: #FOR_ACTION, dataAction: 'BOPF:CHANGE_PROCESSOR', invocationGrouping: #CHANGE_SET, label: 'Bearbeiter ändern' },
  { position: 50, type: #FOR_ACTION, dataAction: 'BOPF:ASSIGN', invocationGrouping: #CHANGE_SET, label: 'Mir selbst zuordnen' },
  { position: 60, type: #FOR_ACTION, dataAction: 'BOPF:UNASSIGN', invocationGrouping: #CHANGE_SET, label: 'Zuordnung aufheben' },
  { position: 70, type: #FOR_ACTION, dataAction: 'BOPF:RESUBMIT', invocationGrouping: #CHANGE_SET, label: 'Wiedervorlegen' },
  { position: 10, type: #STANDARD, cssDefault.width: '8rem' }
  ],
  fieldGroup: [
  { qualifier: 'TechnicalSettings01', importance: #HIGH, label: 'Weitere Einstellungen', type: #AS_FIELDGROUP},
  { qualifier: 'GeneralActions01', position: 10, importance: #HIGH, dataAction: 'BOPF:CHECK', invocationGrouping: #CHANGE_SET, label: 'Prüfen', type: #FOR_ACTION },
  { qualifier: 'GeneralActions01', position: 20, importance: #HIGH, dataAction: 'BOPF:COMPLETE', invocationGrouping: #CHANGE_SET, label: 'Abschließen', type: #FOR_ACTION },
  { qualifier: 'GeneralActions01', position: 30, importance: #HIGH, dataAction: 'BOPF:REVERSE_SRCDOC', invocationGrouping: #CHANGE_SET, label: 'Stornieren', type: #FOR_ACTION },
  { qualifier: 'GeneralActions01', position: 40, importance: #HIGH, dataAction: 'BOPF:DO_NOT_INVOICE', invocationGrouping: #CHANGE_SET, label: 'Nicht fakturieren', type: #FOR_ACTION },
  { qualifier: 'GeneralActions01', position: 50, importance: #HIGH, dataAction: 'BOPF:PUT_ON_HOLD_SRCDOC', invocationGrouping: #CHANGE_SET, label: 'Beleg zurückstellen', type: #FOR_ACTION },
  { qualifier: 'GeneralActions02', position: 10, importance: #HIGH, dataAction: 'BOPF:COMPLETE', invocationGrouping: #CHANGE_SET, label: 'Abschließen', type: #FOR_ACTION },
  { qualifier: 'GeneralActions02', position: 20, importance: #HIGH, dataAction: 'BOPF:DO_NOT_INVOICE', invocationGrouping: #CHANGE_SET, label: 'Nicht fakturieren', type: #FOR_ACTION },
  { qualifier: 'GeneralActions03', position: 70, importance: #HIGH, dataAction: 'BOPF:REVERSE_PRLINV', invocationGrouping: #CHANGE_SET, label: 'Stornieren', type: #FOR_ACTION },
  { qualifier: 'GeneralActions04', position: 10, importance: #HIGH, dataAction: 'BOPF:COMPLETE', invocationGrouping: #CHANGE_SET, label: 'Abschließen', type: #FOR_ACTION },
  { qualifier: 'GeneralActions04', position: 20, importance: #HIGH, dataAction: 'BOPF:DO_NOT_INVOICE', invocationGrouping: #CHANGE_SET, label: 'Nicht fakturieren', type: #FOR_ACTION },
  { qualifier: 'GeneralActions05', position: 10, importance: #HIGH, dataAction: 'BOPF:COMPLETE', invocationGrouping: #CHANGE_SET, label: 'Abschließen', type: #FOR_ACTION },
  { qualifier: 'GeneralActions05', position: 20, importance: #HIGH, dataAction: 'BOPF:DO_NOT_INVOICE', invocationGrouping: #CHANGE_SET, label: 'Nicht fakturieren', type: #FOR_ACTION }
  ]
  }
      @UI.selectionField: [{ position: 10 }]
      @EndUserText.label: 'Klärungsfall'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.85 }
      @ObjectModel.readOnly: true
  key CAInvcgClrfctnCase.CAInvcgClarification,

      @UI.textArrangement: #TEXT_FIRST
      @UI.selectionField: [{ position: 50 }]
      @UI.lineItem: [{ position: 60, type: #STANDARD }]
      @UI.fieldGroup: [{ qualifier: 'HeaderInformation01', position: 10, importance: #HIGH, type: #STANDARD }]
      @Consumption.semanticObject: 'CAContractPartner'
      @Consumption.valueHelpDefinition: [{ entity: { name: 'C_CAContractPartnerValueHelp', element: 'BusinessPartner' } }]
      @ObjectModel.text.element: ['BusinessPartnerName']
      @ObjectModel.foreignKey.association: '_BusinessPartner'
      CAInvcgClrfctnCase.BusinessPartner,

      @UI.hidden: true
      @ObjectModel.filter.enabled: false
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._BusinessPartner.BusinessPartnerName,

      @UI.fieldGroup: [{ qualifier: 'HeaderInformation01', position: 20, importance: #HIGH, type: #STANDARD }]
      @ObjectModel.filter.enabled: false
      @ObjectModel.readOnly: true
      _CAInvcgBusinessPartnerAddress.StreetName,

      @UI.fieldGroup: [{ qualifier: 'HeaderInformation01', position: 30, importance: #HIGH, type: #STANDARD }]
      @ObjectModel.filter.enabled: false
      @ObjectModel.readOnly: true
      _CAInvcgBusinessPartnerAddress.AddressCityName,

      @UI.fieldGroup: [{ qualifier: 'HeaderInformation01', position: 40, importance: #HIGH, type: #STANDARD }]
      @ObjectModel.filter.enabled: false
      @ObjectModel.readOnly: true
      _CAInvcgBusinessPartnerAddress.CountryName,

      @UI.hidden: true
      @Semantics.amount.currencyCode: 'TransactionCurrency'
      CAInvcgClrfctnCase.CAAmountInTransactionCurrency,

      @Consumption.hidden: true
      @ObjectModel.foreignKey.association: '_CAApplicationArea'
      CAInvcgClrfctnCase.CAApplicationArea,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 130, importance: #HIGH, type: #STANDARD }]
      CAInvcgClrfctnCase.CAClrfctnCaseIsClarifiedAutom,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 200, importance: #HIGH, type: #STANDARD },
          { qualifier: 'GeneralInformation03', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Wiedervorlage' }
      ]
      @EndUserText.label: 'Wiedervorlage'
      CAInvcgClrfctnCase.CAClrfctnCaseIsResubmitted,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 210, importance: #HIGH, type: #STANDARD },
          { qualifier: 'GeneralInformation01', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Sperre' }
      ]
      @EndUserText.label: 'Sperre'
      CAInvcgClrfctnCase.CAClrfctnCaseIsLocked,

      @UI.textArrangement: #TEXT_FIRST
      @UI.selectionField: [{ position: 30 }]
      @UI.lineItem: [{ position: 30, type: #STANDARD }]
      @UI.fieldGroup: [{ qualifier: 'HeaderInformation03', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Bearbeitungsstatus' }]
      @EndUserText.label: 'Klärungstyp'
      @ObjectModel.text.element: ['CAClrfctnCategoryText']
      @ObjectModel.foreignKey.association: '_CAClrfctnCategory'
      CAInvcgClrfctnCase.CAClrfctnCategory,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAClrfctnCategory._CAClrfctnCategoryText[1: Language = $session.system_language].CAClrfctnCategoryText,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Weitere Einstellungen'},
          { qualifier: 'AddInformation02', position: 20, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAInvoicingDocument) },
  { qualifier: 'AddInformation04', position: 20, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAInvoicingDocument) },
  { qualifier: 'AddInformation06', position: 20, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAPreliminaryInvoice) }
  ]
      @ObjectModel.text.element: ['CAClrfctnInvcgDocCheckText']
      @ObjectModel.foreignKey.association: '_CAClrfctnInvcgDocCheck'
      CAInvcgClrfctnCase.CAClrfctnInvcgDocCheck,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAClrfctnInvcgDocCheck._CAClrfctnInvcgDocCheckText[1: Language = $session.system_language].CAClrfctnInvcgDocCheckText,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 140, importance: #HIGH, type: #STANDARD }]
      @EndUserText.label: 'Klärungsfall geklärt'
      CAInvcgClrfctnCase.CAClrfctnIsClarified,

      @UI.selectionField: [{ position: 80 }]
      @Consumption.valueHelpDefinition: [{ entity: { name: 'C_CAInvcgClrfctnCaseUserVH', element: 'ContactCardID' } }]
      CAInvcgClrfctnCase.CAClrfctnLastProcessedByUser,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 150, importance: #HIGH, type: #STANDARD }]
      @EndUserText.label: 'Temporärer Bearbeitungszustand'
      CAInvcgClrfctnCase.CAClrfctnLastProcgStatus,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 160, importance: #HIGH, type: #STANDARD },
          { qualifier: 'GeneralInformation01', position: 20, importance: #HIGH, type: #STANDARD, groupLabel: 'Sperrdaten' }
      ]
      CAInvcgClrfctnCase.CAClrfctnLockedToDate,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 190, importance: #HIGH, type: #STANDARD }]
      CAInvcgClrfctnCase.CAClrfctnNmbrOfWorkflows,

      @UI.textArrangement: #TEXT_ONLY
      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 170, importance: #HIGH, type: #STANDARD },
          { qualifier: 'HeaderInformation03', position: 30, importance: #HIGH, type: #STANDARD }
      ]
      @EndUserText.label: 'Bearbeitungsstatus'
      @ObjectModel.text.element: ['CAClrfctnProcgStatusName']
      @ObjectModel.foreignKey.association: '_CAClrfctnProcgStatus'
      CAInvcgClrfctnCase.CAClrfctnProcgStatus,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAClrfctnProcgStatus._Text[1: Language = $session.system_language].CAClrfctnProcgStatusName,

      @UI.textArrangement: #TEXT_FIRST
      @UI.selectionField: [{ position: 40 }]
      @UI.lineItem: [{ position: 40, type: #STANDARD }]
      @UI.fieldGroup: [
          { qualifier: 'AddInformation02', position: 30, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation04', position: 30, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation06', position: 30, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation07', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Prüfungsdaten' },
          { qualifier: 'AddInformation08', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Prüfungsdaten' }
      ]
      @ObjectModel.text.element: ['CAClrfctnReasonText']
      @ObjectModel.foreignKey.association: '_CAClrfctnReason'
      @Consumption.valueHelpDefinition: [{ entity: { name: 'I_CAClrfctnReasonVH', element: 'CAClrfctnReason' } } ]
      CAInvcgClrfctnCase.CAClrfctnReason,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAClrfctnReason._CAClrfctnReasonText[1: Language = $session.system_language].CAClrfctnReasonText,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 180, importance: #HIGH, type: #STANDARD },
          { qualifier: 'GeneralInformation03', position: 20, importance: #HIGH, type: #STANDARD }
      ]
      @Consumption.filter.selectionType: #INTERVAL
      CAInvcgClrfctnCase.CAClrfctnResubmsnDate,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 20, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation02', position: 10, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CABillingDocument), groupLabel: 'Prüfungsdaten' },
  { qualifier: 'AddInformation06', position: 10, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CABillingDocument), groupLabel: 'Prüfungsdaten' }
  ]
      @EndUserText.label: 'Quellbelegprüfung'
      @ObjectModel.text.element: ['CAClrfctnSrceDocCheckText']
      @ObjectModel.foreignKey.association: '_CAClrfctnSrceDocCheck'
      CAInvcgClrfctnCase.CAClrfctnSrceDocCheck,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAClrfctnSrceDocCheck._CAClrfctnSrcDocCheckText[1: Language = $session.system_language].CAClrfctnInvcgDocCheckText as CAClrfctnSrceDocCheckText,

      @UI.textArrangement: #TEXT_ONLY
      @UI.selectionField: [{ position: 20 }]
      @UI.lineItem: [{ position: 20, type: #STANDARD, cssDefault.width: '8rem' }]
      @ObjectModel.text.element: ['CAClrfctnStatusName']
      @ObjectModel.foreignKey.association: '_CAClrfctnStatus'
      @ObjectModel.filter.transformedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT' -- potential roleid filter applied
      CAInvcgClrfctnCase.CAClrfctnStatus,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAClrfctnStatus._Text[1: Language = $session.system_language].CAClrfctnStatusName,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 40, importance: #HIGH, type: #STANDARD },
          { qualifier: 'HeaderInformation02', position: 20, importance: #HIGH, type: #STANDARD }
      ]
      CAInvcgClrfctnCase.CAContract,
      
      @UI.hidden: true
      @ObjectModel: {
        readOnly: true,
        virtualElement: true,
        virtualElementCalculatedBy: 'ABAP:CL_CINV_VTREF_SEMOBJ'
      }
      cast ( '' as vtref_semobj_kk )                              as CAContractSemanticObject,

      @UI.hidden: true
      @Semantics.currencyCode: true
      CAInvcgClrfctnCase.CACurrencySourceDocument,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 30, importance: #HIGH, type: #STANDARD }]
      CAInvcgClrfctnCase.CAInvcgMasterDataType,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 90, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation03', position: 10, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAInvoicingDocument), groupLabel: 'Fakturierungsdaten' },
  { qualifier: 'AddInformation05', position: 10, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAPreliminaryInvoice), groupLabel: 'Vorläufige Rechnung' }
  ]
      @Consumption.valueHelpDefinition: [{ entity: { name: 'I_CAInvcgProcessVH', element: 'CAInvcgProcess' } } ]
      CAInvcgClrfctnCase.CAInvcgProcess,

      @UI.hidden: true
      @Semantics.amount.currencyCode: 'CACurrencySourceDocument'
      CAInvcgClrfctnCase.CAInvcgSourceDocumentAmount,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 50, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation01', position: 10, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CABillingDocument), groupLabel: 'Abrechnungsdaten' }
  ]
      @ObjectModel.text.element: ['CAInvcgSourceDocCatText']
      @ObjectModel.foreignKey.association: '_CAInvcgSourceDocCat'
      @Consumption.valueHelpDefinition: [{ entity: { name: 'I_CAInvcgSourceDocCatVH', element: 'CAInvcgSourceDocumentCat' } } ]
      CAInvcgClrfctnCase.CAInvcgSourceDocumentCat,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAInvcgSourceDocCat._CAInvcgSourceDocCatText[1: Language = $session.system_language].CAInvcgSourceDocCatText,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 60, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation01', position: 20, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CABillingDocument) }
  ]
      @EndUserText.label: 'Quellbeleg'
      @Consumption.semanticObject: 'CAInvcgSourceDocumentNumber'
      CAInvcgClrfctnCase.CAInvcgSourceDocumentNumber,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAInvcgSourceDocCat.CAInvcgSourceDocumentSemObj,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 70, importance: #HIGH, type: #STANDARD }]
      @ObjectModel.text.element: ['CAInvcgSourceDocTypeText']
      @ObjectModel.foreignKey.association: '_CAInvcgSourceDocType'
      CAInvcgClrfctnCase.CAInvcgSourceDocumentType,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      CAInvcgClrfctnCase._CAInvcgSourceDocType._CAInvcgSourceDocTypeText[1: Language = $session.system_language].CAInvcgSourceDocTypeText,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 80, importance: #HIGH, type: #STANDARD }]
      CAInvcgClrfctnCase.CAInvcgTargetProcess,

      @UI.fieldGroup: [
          { qualifier: 'TechnicalSettings01', position: 100, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation03', position: 20, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAInvoicingDocument) }
  ]
      @Consumption.semanticObject: 'CAInvoicingDocument'
      CAInvcgClrfctnCase.CAInvoicingDocument,

      @UI.fieldGroup: [{ qualifier: 'AddInformation05', position: 20, importance: #HIGH, type: #STANDARD, hidden: #(UICT_CAPreliminaryInvoice) }]
      @ObjectModel.readOnly: true
      @ObjectModel.filter.enabled: false
      @EndUserText.label: 'Vorläufige Rechnung'
      @Consumption.semanticObject: 'CAInvoicingDocument'
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT'
      cast('' as invdocno_cfc_kk)                                                                                                            as CAPreliminaryInvoicingDocument,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 40, importance: #HIGH, type: #STANDARD }]
      @Consumption.valueHelpDefinition: [{ entity: { name: 'I_CASubApplicationVH', element: 'CASubApplication' } }]
      @ObjectModel.foreignKey.association: '_CASubApplication'
      CAInvcgClrfctnCase.CASubApplication,

      @UI.textArrangement: #TEXT_FIRST
      @UI.selectionField: [{ position: 60 }]
      @UI.lineItem: [{ position: 70, type: #STANDARD }]
      @UI.fieldGroup: [{ qualifier: 'HeaderInformation02', position: 10, importance: #HIGH, type: #STANDARD, groupLabel: 'Vertrag' }]
      @Consumption.semanticObject: 'ContractAccount'
      @Consumption: {
         valueHelpDefinition: [{
            entity: { name: 'C_ContractAccountValueHelp', element: 'ContractAccount' },
            additionalBinding: [{ element: 'BusinessPartner', localElement: 'BusinessPartner', usage: #FILTER_AND_RESULT }]
         }]
      }
      @ObjectModel.text.element: ['ContractAccountName']
      @ObjectModel.foreignKey.association: '_ContractAccountHeader'
      CAInvcgClrfctnCase.ContractAccount,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      @ObjectModel.filter.enabled: false
      CAInvcgClrfctnCase._ContractAccountHeader.ContractAccountName,

      @UI.fieldGroup: [{ qualifier: 'TechnicalSettings01', position: 110, importance: #HIGH, type: #STANDARD }]
      @Consumption.valueHelpDefinition: [{ entity: { name: 'C_CAInvcgClrfctnCaseUserVH', element: 'ContactCardID' } }]
      @Semantics.user.createdBy: true
      CAInvcgClrfctnCase.CreatedByUser,

      //      @UI.selectionField: [{ position: 70 }]

      //      @UI.lineItem: [{ position: 80, type: #STANDARD }]

      //      @UI.fieldGroup: [{ qualifier: 'GeneralInformation02', position: 20, importance: #HIGH, type: #STANDARD }]

      //      @EndUserText.label: 'Angelegt am'

      //      @Consumption.filter.selectionType: #INTERVAL

      @UI.hidden: true
      @ObjectModel.readOnly: true
      @Semantics.systemDate.createdAt: true
      CAInvcgClrfctnCase.CreationDate,

      //      @UI.fieldGroup: [

      //          { qualifier: 'TechnicalSettings01', position: 120, importance: #HIGH, type: #STANDARD },

      //          { qualifier: 'GeneralInformation02', position: 30, importance: #HIGH, type: #STANDARD }

      //      ]

      //      @EndUserText.label: 'Angelegt um'

      @UI.hidden: true
      @ObjectModel.readOnly: true
      @Semantics.systemTime.createdAt: true
      CAInvcgClrfctnCase.CreationTime,

      //combined field of crdate and crtime

      @UI.selectionField: { position: 70 }
      @UI.lineItem: [{ position: 80, type: #STANDARD }]
      @UI.fieldGroup: [{ qualifier: 'GeneralInformation02', position: 20, importance: #HIGH, type: #STANDARD }]
      @Consumption.filter.selectionType: #INTERVAL
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT'
      @ObjectModel.filter.transformedBy: 'ABAP:CL_CINV_SADL_FILTER_DATETIME'
      cast(0 as crtimestamp_kk)                                                                                                              as CreationDateTime,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageIdentification,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageNumber,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageType,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageVariable1,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageVariable2,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageVariable3,

      @UI.hidden: true
      CAInvcgClrfctnCase.SystemMessageVariable4,

      @UI.hidden: true
      @Semantics.currencyCode: true
      CAInvcgClrfctnCase.TransactionCurrency,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT'
      cast('' as abap.sstring(256))                                                                                                          as CAInvcgClarificationStr,

      @UI.multiLineText: true
      @UI.fieldGroup: [
          { qualifier: 'AddInformation02', position: 40, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation04', position: 40, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation06', position: 40, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation07', position: 20, importance: #HIGH, type: #STANDARD },
          { qualifier: 'AddInformation08', position: 20, importance: #HIGH, type: #STANDARD }
      ]
      @EndUserText.label: 'Meldung'
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT'
      cast('' as abap.sstring(256))                                                                                                          as CAClrfctnCaseMessageText,

      @EndUserText.label: 'Währung'
      @Semantics.currencyCode: true
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT'
      cast('' as blwae_kk)                                                                                                                   as CAClrfctnCaseTransactionCrcy,

      @UI.dataPoint:[{ qualifier: 'HeaderInformation04' }]
      @UI.lineItem: [{ position: 50, type: #STANDARD }]
      @EndUserText.label: 'Betrag'
      @Semantics.amount.currencyCode: 'CAClrfctnCaseTransactionCrcy'
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_CAINVCGCLRFCTNCASETP_EXIT'
      cast(0 as betrw_kk)