视图名称:应收账龄表 I_ARJrnlEntrItmAgingGrid

视图类型:参数

视图代码:

点击查看代码
@AbapCatalog.sqlViewName: 'IARJEITMAGGRID'
@AbapCatalog.compiler.compareFilter:true
@AbapCatalog.preserveKey:true
@VDM.viewType: #COMPOSITE
@EndUserText.label: 'Aging Grid of Accounts Receivables'
@Analytics: { dataCategory: #CUBE }
@Analytics.internalName: #LOCAL // released with Cloud 1808 and OP 1809 hence no design studio usage before
@Search.searchable: false // I_Region is annotated as true, hence this new must have an annotation for searchable
@Metadata.ignorePropagatedAnnotations: true
@Metadata.allowExtensions:true
@AccessControl.authorizationCheck:#CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.supportedCapabilities: [ #ANALYTICAL_PROVIDER, #CDS_MODELING_DATA_SOURCE ]
@AccessControl.personalData.blocking: #REQUIRED
define view I_ARJrnlEntrItmAgingGrid
with parameters
@Environment.systemField: #SYSTEM_DATE
P_KeyDate : sydate,
P_NetDueInterval1InDays : farp_net_due_interval1,
P_NetDueInterval2InDays : farp_net_due_interval2,
P_NetDueInterval3InDays : farp_net_due_interval3,
P_DisplayCurrency : vdm_v_display_currency,
P_ExchangeRateType : kurst as select from P_ARJrnlEntrItmAgingGrid4(P_KeyDate: :P_KeyDate,
P_NetDueInterval1InDays: :P_NetDueInterval1InDays,
P_NetDueInterval2InDays: :P_NetDueInterval2InDays,
P_NetDueInterval3InDays: :P_NetDueInterval3InDays) association [0..1] to I_FiscalYearForCompanyCode as _FiscalYear on $projection.FiscalYear = _FiscalYear.FiscalYear
and $projection.CompanyCode = _FiscalYear.CompanyCode
association [1..1] to I_JournalEntry as _JournalEntry on $projection.CompanyCode = _JournalEntry.CompanyCode
and $projection.FiscalYear = _JournalEntry.FiscalYear
and $projection.AccountingDocument = _JournalEntry.AccountingDocument
association [0..1] to I_CompanyCode as _Company on _Company.CompanyCode = $projection.CompanyCode
association [0..1] to I_Customer as _Customer on _Customer.Customer = $projection.Customer
association [0..1] to I_FinancialAccountType as _FinancialAccountType on _FinancialAccountType.FinancialAccountType = $projection.FinancialAccountType
association [0..1] to I_CustomerCompany as _CustomerCompany on _CustomerCompany.CompanyCode = $projection.CompanyCode
and _CustomerCompany.Customer = $projection.Customer
association [0..1] to I_AccountingClerk as _AccountingClerk on _AccountingClerk.CompanyCode = $projection.CompanyCode
and _AccountingClerk.AccountingClerk = $projection.AccountingClerk
association [0..1] to I_Country as _CustomerCountry on _CustomerCountry.Country = $projection.CustomerCountry
association [0..1] to I_Region as _CustomerRegion on _CustomerRegion.Region = $projection.CustomerRegion
and _CustomerRegion.Country = $projection.CustomerCountry
association [0..1] to I_Currency as _DisplayCurrency on _DisplayCurrency.Currency = $projection.DisplayCurrency
association [0..1] to I_SpecialGLCode as _SpecialGLCode on _SpecialGLCode.SpecialGLCode = $projection.SpecialGLCode
and _SpecialGLCode.FinancialAccountType = 'D'
association [0..1] to I_ChartOfAccounts as _ChartOfAccounts on _ChartOfAccounts.ChartOfAccounts = $projection.ChartOfAccounts
association [0..1] to I_GLAccountInChartOfAccounts as _GLAccountInChartOfAccounts on _GLAccountInChartOfAccounts.ChartOfAccounts = $projection.ChartOfAccounts
and _GLAccountInChartOfAccounts.GLAccount = $projection.GLAccount
association [0..1] to I_GLAccountInChartOfAccounts as _ReconciliationAccount on _ReconciliationAccount.ChartOfAccounts = $projection.ChartOfAccounts
and _ReconciliationAccount.GLAccount = $projection.ReconciliationAccount
association [0..1] to I_CustomerAccountGroup as _CustomerAccountGroup on _CustomerAccountGroup.CustomerAccountGroup = $projection.CustomerAccountGroup
association [0..1] to I_CustomerClassification as _CustomerClassification on _CustomerClassification.CustomerClassification = $projection.CustomerClassification
// association [0..*] to I_ProfitCenter as _ProfitCenter on _ProfitCenter.ProfitCenter = $projection.ProfitCenter
// and _ProfitCenter.ControllingArea = $projection.ControllingArea
association [0..1] to I_ProfitCenter as _CurrentProfitCenter on $projection.ControllingArea = _CurrentProfitCenter.ControllingArea
and $projection.ProfitCenter = _CurrentProfitCenter.ProfitCenter
and _CurrentProfitCenter.ValidityStartDate <= $session.system_date
and _CurrentProfitCenter.ValidityEndDate >= $session.system_date
association [0..1] to I_ControllingArea as _ControllingArea on _ControllingArea.ControllingArea = $projection.ControllingArea {
@ObjectModel.foreignKey.association: '_Company'
key CompanyCode,
@ObjectModel.foreignKey.association: '_FiscalYear'
key FiscalYear,
@ObjectModel.foreignKey.association: '_JournalEntry'
key AccountingDocument,
key LedgerGLLineItem, AccountingDocumentItem,
// will be sorted as char (- 1, -10, -100, -2, -20, ...) as of now hence useless
// @DefaultAggregation: #NONE
// cast( NetDueArrearsDays as zmm_verzn_char ) as NetDueArrearsDays,
@ObjectModel.foreignKey.association: '_FinancialAccountType'
cast( 'D' as fis_koart ) as FinancialAccountType,
@ObjectModel.foreignKey.association: '_Customer'
Customer,
@ObjectModel.foreignKey.association: '_GLAccountInChartOfAccounts'
GLAccount,
@ObjectModel.foreignKey.association: '_SpecialGLCode'
SpecialGLCode,
// foreign key 0..* will cause problem with SADL calling AE (not with AE itself which assumes and searches in view definition for time restrictions)
// @ObjectModel.foreignKey.association: '_ProfitCenter'
ProfitCenter,
BusinessArea,
Segment,
@ObjectModel.foreignKey.association: '_ControllingArea'
ControllingArea,
BillingDocument,
AssignmentReference, cast(
case when NumberOfParameters = 3 and NetDueInterval = MaxNetDueIntervalInDays then CONCAT_WITH_SPACE('H.',CONCAT_WITH_SPACE('>', cast(PosNetDueInterval3InDays as abap.char(20)),1),1)
when NumberOfParameters = 3 and NetDueInterval = PosNetDueInterval3InDays then CONCAT_WITH_SPACE('G.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(PosNetDueInterval2InDays + 1 as abap.char(20)), '-',1), cast(PosNetDueInterval3InDays as abap.char(20)),1),1)
when NumberOfParameters = 3 and NetDueInterval = PosNetDueInterval2InDays then CONCAT_WITH_SPACE('F.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(PosNetDueInterval1InDays + 1 as abap.char(20)), '-',1), cast(PosNetDueInterval2InDays as abap.char(20)),1),1)
when NumberOfParameters = 3 and NetDueInterval = PosNetDueInterval1InDays then CONCAT_WITH_SPACE('E.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE('1','-',1), cast(PosNetDueInterval1InDays as abap.char(20)),1),1)
when NumberOfParameters = 3 and NetDueInterval = 0 then CONCAT_WITH_SPACE('D.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(NegNetDueInterval1InDays as abap.char(20)), '-',1), '0',1),1)
when NumberOfParameters = 3 and NetDueInterval = NegNetDueInterval1InDays then CONCAT_WITH_SPACE('C.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(NegNetDueInterval2InDays as abap.char(20)), '-',1), cast(NegNetDueInterval1InDays - 1 as abap.char(20)),1),1)
when NumberOfParameters = 3 and NetDueInterval = NegNetDueInterval2InDays then CONCAT_WITH_SPACE('B.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(NegNetDueInterval3InDays as abap.char(20)), '-',1), cast(NegNetDueInterval2InDays - 1 as abap.char(20)),1),1)
when NumberOfParameters = 3 and NetDueInterval = NegNetDueInterval3InDays then CONCAT_WITH_SPACE('A.',CONCAT_WITH_SPACE('<', cast(NegNetDueInterval3InDays as abap.char(20)),1),1) when NumberOfParameters = 2 and NetDueInterval = MaxNetDueIntervalInDays then CONCAT_WITH_SPACE('F.',CONCAT_WITH_SPACE('>', cast(PosNetDueInterval2InDays as abap.char(20)),1),1)
when NumberOfParameters = 2 and NetDueInterval = PosNetDueInterval2InDays then CONCAT_WITH_SPACE('E.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(PosNetDueInterval1InDays + 1 as abap.char(20)), '-',1), cast(PosNetDueInterval2InDays as abap.char(20)),1),1)
when NumberOfParameters = 2 and NetDueInterval = PosNetDueInterval1InDays then CONCAT_WITH_SPACE('D.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE('1', '-',1), cast(PosNetDueInterval1InDays as abap.char(20)),1),1)
when NumberOfParameters = 2 and NetDueInterval = 0 then CONCAT_WITH_SPACE('C.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(NegNetDueInterval1InDays as abap.char(20)), '-',1), '0',1),1)
when NumberOfParameters = 2 and NetDueInterval = NegNetDueInterval1InDays then CONCAT_WITH_SPACE('B.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(NegNetDueInterval2InDays as abap.char(20)), '-',1), cast(NegNetDueInterval1InDays - 1 as abap.char(20)),1),1)
when NumberOfParameters = 2 and NetDueInterval = NegNetDueInterval2InDays then CONCAT_WITH_SPACE('A.',CONCAT_WITH_SPACE('<', cast(NegNetDueInterval2InDays as abap.char(20)),1),1) when NumberOfParameters = 1 and NetDueInterval = MaxNetDueIntervalInDays then CONCAT_WITH_SPACE('D.',CONCAT_WITH_SPACE('>', cast(PosNetDueInterval1InDays as abap.char(20)),1),1)
when NumberOfParameters = 1 and NetDueInterval = PosNetDueInterval1InDays then CONCAT_WITH_SPACE('C.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE('1', '-',1), cast(PosNetDueInterval1InDays as abap.char(20)),1),1)
when NumberOfParameters = 1 and NetDueInterval = 0 then CONCAT_WITH_SPACE('B.',CONCAT_WITH_SPACE(CONCAT_WITH_SPACE(cast(NegNetDueInterval1InDays as abap.char(20)),'-',1),'0',1),1)
when NumberOfParameters = 1 and NetDueInterval = NegNetDueInterval1InDays then CONCAT_WITH_SPACE('A.',CONCAT_WITH_SPACE('<', cast(NegNetDueInterval1InDays as abap.char(20)),1),1) when NumberOfParameters = 0 and NetDueInterval = MaxNetDueIntervalInDays then 'A. > 0'
when NumberOfParameters = 0 and NetDueInterval = 0 then 'B. <= 0' else 'ERROR' // dummy
end as farp_netdue_intvl_text ) as NetDueIntervalText, @ObjectModel.foreignKey.association: '_CustomerCountry'
cast( _Customer._StandardAddress._Country.Country as farp_land1 ) as CustomerCountry,
@ObjectModel.foreignKey.association: '_CustomerRegion'
_Customer._StandardAddress._Region.Region as CustomerRegion,
@ObjectModel.foreignKey.association: '_AccountingClerk'
cast( _CustomerCompany.AccountingClerk as farp_busab ) as AccountingClerk,
@ObjectModel.foreignKey.association: '_ChartOfAccounts'
cast( _Company.ChartOfAccounts as fis_ktopl ) as ChartOfAccounts,
@ObjectModel.foreignKey.association: '_ReconciliationAccount'
cast( _CustomerCompany.ReconciliationAccount as farp_akont ) as ReconciliationAccount, // fields for authorization checks via DCL
cast( _Customer.AuthorizationGroup as fis_customer_basic_auth_grp ) as CustomerBasicAuthorizationGrp,
_CustomerCompany.AuthorizationGroup as CustomerFinsAuthorizationGrp, @ObjectModel.foreignKey.association: '_CustomerAccountGroup'
_Customer.CustomerAccountGroup as CustomerAccountGroup,
@ObjectModel.foreignKey.association: '_CustomerClassification'
_Customer.CustomerClassification as CustomerClassification, @Semantics.currencyCode:true
@ObjectModel.foreignKey.association: '_DisplayCurrency'
cast(:P_DisplayCurrency as vdm_v_display_currency) as DisplayCurrency, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => AmountInCompanyCodeCurrency,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_total_amount_display_crcy ) as TotalAmountInDisplayCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => TotalNotOverdueAmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_tot_not_ovrd_amt_dspcrcy ) as TotalNotOvrdAmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => TotalOverdueAmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_total_overdue_amt_dspcrcy) as TotalOverdueAmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => NetDueIntvl1AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_netdue_intvl1_amt_dspcrcy ) as NetDueIntvl1AmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => NetDueIntvl2AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_netdue_intvl2_amt_dspcrcy ) as NetDueIntvl2AmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => NetDueIntvl3AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_netdue_intvl3_amt_dspcrcy ) as NetDueIntvl3AmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => NetDueIntvl4AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_netdue_intvl4_amt_dspcrcy ) as NetDueIntvl4AmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => FutureIntvl1AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_futdue_intvl1_amt_dspcrcy ) as FirstIntvlFutrDueAmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => FutureIntvl2AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_futdue_intvl2_amt_dspcrcy ) as SecondIntvlFutrDueAmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => FutureIntvl3AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_futdue_intvl3_amt_dspcrcy ) as ThirdIntvlFutrDueAmtInDspCrcy, @DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DisplayCurrency'
cast( currency_conversion(
amount => FutureIntvl4AmtInCoCodeCrcy,
source_currency => CompanyCodeCurrency,
target_currency => :P_DisplayCurrency,
exchange_rate_date => :P_KeyDate,
exchange_rate_type => :P_ExchangeRateType,
// error_handling => 'FAIL_ON_ERROR',
round => #CDSBoolean.true,
decimal_shift => #CDSBoolean.true,
decimal_shift_back => #CDSBoolean.true
) as farp_futdue_lintvl_amt_dspcrcy ) as FourthIntvlFutrDueAmtInDspCrcy, _FiscalYear,
_JournalEntry,
_Company,
_Customer,
_CustomerCompany,
_FinancialAccountType,
_AccountingClerk,
_CustomerCountry,
_CustomerRegion,
_SpecialGLCode,
// _ProfitCenter,
_CurrentProfitCenter,
_ControllingArea,
_GLAccountInChartOfAccounts,
_ReconciliationAccount,
_ChartOfAccounts,
_DisplayCurrency,
_CustomerClassification,
_CustomerAccountGroup
}

事务代码:参数

净额到期间隔 1:距离关键日期第一个间隔最大天数

全额付款到期间隔 2:距离关键日期第二个间隔最大天数

净额到期间隔 3:距离关键日期第二个间隔最大天数

汇率类型:使用的汇率类型

CDATE:关键日期

显示货币:显示的货币类型

视图结构:

字段名称 技术名称
公司代码 COMPANYCODE
会计年度 FISCALYEAR
日记账分录 ACCOUNTINGDOCUMENT
日记账分录项目 LEDGERGLLINEITEM
过账视图项目 ACCOUNTINGDOCUMENTITEM
财务科目类型 FINANCIALACCOUNTTYPE
客户 CUSTOMER
总账科目 GLACCOUNT
特殊总账 SPECIALGLCODE
利润中心 PROFITCENTER
业务范围 BUSINESSAREA
SEGMENT
成本控制范围 CONTROLLINGAREA
开票凭证 BILLINGDOCUMENT
分配参考 ASSIGNMENTREFERENCE
全额付款到期日间隔 NETDUEINTERVALTEXT
国家/地区代码 CUSTOMERCOUNTRY
地区 CUSTOMERREGION
会计员 ACCOUNTINGCLERK
科目表 CHARTOFACCOUNTS
对账科目 RECONCILIATIONACCOUNT
客户基本权限组 CUSTOMERBASICAUTHORIZATIONGRP
权限 CUSTOMERFINSAUTHORIZATIONGRP
客户科目组 CUSTOMERACCOUNTGROUP
客户分类 CUSTOMERCLASSIFICATION
显示货币 DISPLAYCURRENCY
总金额 TOTALAMOUNTINDISPLAYCRCY
未来金额 TOTALNOTOVRDAMTINDSPCRCY
逾期金额 TOTALOVERDUEAMTINDSPCRCY
1 期到期期间金额 NETDUEINTVL1AMTINDSPCRCY
2 期到期期间金额 NETDUEINTVL2AMTINDSPCRCY
3 期到期期间金额 NETDUEINTVL3AMTINDSPCRCY
4 期到期期间金额 NETDUEINTVL4AMTINDSPCRCY
1 期到期期间未来金额 FIRSTINTVLFUTRDUEAMTINDSPCRCY
2 期到期期间未来金额 SECONDINTVLFUTRDUEAMTINDSPCRCY
3 期到期期间未来金额 THIRDINTVLFUTRDUEAMTINDSPCRCY
上一到期期间未来金额 FOURTHINTVLFUTRDUEAMTINDSPCRCY

CDS标准视图:应收账龄表 I_ARJrnlEntrItmAgingGrid的更多相关文章

  1. IE9兼容性视图与IE9标准视图

    如果你使用的是IE9,那么按下F12键就会出现开发者工具,上面有两个下拉菜单:浏览器模式和文档模式.那么什么是浏览器模式?什么又是文档模式?二者有何区别? 浏览器模式用于切换IE针对该网页的默认文档模 ...

  2. SAP CDS重定向视图和直接读这两者场景的性能比较

    A very rough performance comparison is performed in ER9/001. Comparison scenario The two below opera ...

  3. 教程:基于访问控制的ABAP CDS视图权限

    Hi! 对每一个CDS视图,我们都可以通过DCL(Data Control Language)定义访问控制.在这篇文章中,我会介绍ABAP CDS视图中非常重要的一面:权限管理. 本文的阐述基于我正在 ...

  4. Flask(10)- 标准类视图

    前言 前面文章讲解 Flask 路由的时候,都是将 URL 路径和一个视图函数关联 当 Flask 框架接收到请求后,会根据请求 URL,调用响应的视图函数进行处理 Flask 不仅提供了视图函数来处 ...

  5. ABAP CDS-Part 1(ABAP CDS实体)

    文章翻译自Tushar Sharma的文章,转载请注明原作者和译者! 目录 预备条件 一.概述 二.ABAP CDS实体(CDS Entity) a.定义ABAP CDS Views b.ABAP C ...

  6. SQL Server基础之《视图的概述和基本操作》

     数据库中的视图是一个虚拟表.同真实的表一样,视图包含一系列带有名称的列和行数据,行和列数据用来自由定义视图和查询所引用的表,并且在引用视图时动态产生.本篇将通过一些实例来介绍视图的概念,视图的作用, ...

  7. SQLServer视图

    视图简介:通过定义 SELECT 语句以检索将在视图中显示的数据来创建视图.SELECT 语句引用的数据表称为视图的基表.在SQL Server 2005系统中,可以把视图分为3种类型,即标准视图,索 ...

  8. sql视图学习笔记--视图

    视图是为用户对数据多种显示需求而创建的,其主要用在一下几种情况: (1)限制用户只能访问特定表特定条件的内容,提高系统的安全性. (2)隐藏表结构.创建多种形式的数透视,满足不同用户需求. (3)将复 ...

  9. MVC小系列(三)【MVC的分部视图】

    MVC的分部视图: 分部视图在action中返回一定要用PartialView(),而不要偷懒使用View(),因为如果使用后者,系统会认为是一个标准视图,会为它加个默认的母版页(LayOut),除非 ...

  10. Qt 学习之路:视图选择 (QItemSelectionModel)

    选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反色.在 Qt 中,选择也是使用了一种模型.在 model/view 架构中,这种选择模型提供了一种 ...

随机推荐

  1. Java面试真题之中级进阶(线程,进程,序列化,IO流,NIO)

    前言 本来想着给自己放松一下,刷刷博客,慕然回首,线程.程序.进程?Java 序列化?Java 中 IO 流? Java IO与 NIO的区别(补充)?似乎有点模糊了,那就大概看一下Java基础面试题 ...

  2. (待续) 强化学习——如何提升样本效率 ( DeepMind 综述深度强化学习:智能体和人类相似度竟然如此高!)

    强化学习     如何提升样本效率 参考文章: https://news.html5.qq.com/article?ch=901201&tabId=0&tagId=0&docI ...

  3. Docker容器制作DockerFile

    Docker换国内源和简单操作 vim /etc/docker/daemon.json { "registry-mirrors": ["http://hub-mirror ...

  4. .NET 9使用Scalar替代Swagger

    背景 .NET 9刚刚正式发布了,如果你创建一个空的Asp.Net Core 9.0的Web API项目,启动之后,你会惊讶地发现陪伴你多年的Swagger没有了!--这是因为ASP.NET Core ...

  5. 洛谷 NOIP 2023 模拟赛 T2 汪了个汪

    洛谷 NOIP 2023 模拟赛 T2 汪了个汪 考试建出正解图不知道怎么处理,题解区樱雪喵博客薄纱. 樱雪喵题解链接 Ps:笔者语文爆炸,不建议阅读本文 思路 首先你会发现,一共有 \(\frac{ ...

  6. linux 自动输入密码脚本避免密码确认

    有时候需要执行一个小脚本,就把一部分命令集合起来,我们可以使用 && 或者 .sh 脚本换行. 而有些时候涉及权限需要输入密码就出现了一些客户端会卡在输密码的界面让用户输入 脚本会暂停 ...

  7. Impala源代码分析(1)-Impala架构和RPC

    Leave a reply Impala总共分为3个组件:impalad, statestored, client/impala-shell.关于这三个组件的基本功能在这篇文章中已经介绍过了. Cli ...

  8. 多线程实现的Java爬虫程序

    以下是一个Java爬虫程序,它能从指定主页开始,按照指定的深度抓取该站点域名下的网页并维护简单索引. 参数:private static int webDepth = 2;//爬虫深度. 主页的深度为 ...

  9. 《前端运维》一、Linux基础--11服务

    首先服务的概念,对于linux服务器来说,其中大多数的软件都算是服务,比如nginx.mysql.Jenkins等等.下面我们就来学习一下linux中有关服务的一些内容. 一.服务简介和分类 1.运行 ...

  10. vs2017 opencv 编译错误 error C2665: “exp”: 3 个重载中没有一个可以转换所有参数类型

    编译错误 - error C2665: "exp": 3 个重载中没有一个可以转换所有参数类型,在GenericPacketMath.h文件, 是因为使用了Eigen3.4库,只要 ...