CDS标准视图:应收账龄表 I_ARJrnlEntrItmAgingGrid
视图名称:应收账龄表 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的更多相关文章
- IE9兼容性视图与IE9标准视图
如果你使用的是IE9,那么按下F12键就会出现开发者工具,上面有两个下拉菜单:浏览器模式和文档模式.那么什么是浏览器模式?什么又是文档模式?二者有何区别? 浏览器模式用于切换IE针对该网页的默认文档模 ...
- SAP CDS重定向视图和直接读这两者场景的性能比较
A very rough performance comparison is performed in ER9/001. Comparison scenario The two below opera ...
- 教程:基于访问控制的ABAP CDS视图权限
Hi! 对每一个CDS视图,我们都可以通过DCL(Data Control Language)定义访问控制.在这篇文章中,我会介绍ABAP CDS视图中非常重要的一面:权限管理. 本文的阐述基于我正在 ...
- Flask(10)- 标准类视图
前言 前面文章讲解 Flask 路由的时候,都是将 URL 路径和一个视图函数关联 当 Flask 框架接收到请求后,会根据请求 URL,调用响应的视图函数进行处理 Flask 不仅提供了视图函数来处 ...
- ABAP CDS-Part 1(ABAP CDS实体)
文章翻译自Tushar Sharma的文章,转载请注明原作者和译者! 目录 预备条件 一.概述 二.ABAP CDS实体(CDS Entity) a.定义ABAP CDS Views b.ABAP C ...
- SQL Server基础之《视图的概述和基本操作》
数据库中的视图是一个虚拟表.同真实的表一样,视图包含一系列带有名称的列和行数据,行和列数据用来自由定义视图和查询所引用的表,并且在引用视图时动态产生.本篇将通过一些实例来介绍视图的概念,视图的作用, ...
- SQLServer视图
视图简介:通过定义 SELECT 语句以检索将在视图中显示的数据来创建视图.SELECT 语句引用的数据表称为视图的基表.在SQL Server 2005系统中,可以把视图分为3种类型,即标准视图,索 ...
- sql视图学习笔记--视图
视图是为用户对数据多种显示需求而创建的,其主要用在一下几种情况: (1)限制用户只能访问特定表特定条件的内容,提高系统的安全性. (2)隐藏表结构.创建多种形式的数透视,满足不同用户需求. (3)将复 ...
- MVC小系列(三)【MVC的分部视图】
MVC的分部视图: 分部视图在action中返回一定要用PartialView(),而不要偷懒使用View(),因为如果使用后者,系统会认为是一个标准视图,会为它加个默认的母版页(LayOut),除非 ...
- Qt 学习之路:视图选择 (QItemSelectionModel)
选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反色.在 Qt 中,选择也是使用了一种模型.在 model/view 架构中,这种选择模型提供了一种 ...
随机推荐
- Rust的Reborrow机制
最近,在使用Rust时遇到了Reborrow的概念,记录下来以备以后参考. 1. 起因 起因准备对数据进行Min-Max标准化处理,也就是将一系列数据映射到一个新的范围. 首先,需要遍历数据,找出其中 ...
- kubernetes组件大全
master节点组件 控制平面的组件我们会找一台单独的机器来部署,我们习惯上把部署控制平面组件的机器称为master节点,以下都会用master节点来代替控制平面这个概念,master节点的组件能够对 ...
- HAL+CubeIDE,输入输出重定向
①将以下代码段复制到usart.c里: /******************************************************************************* ...
- You Shi Zai Wo
Xuzhou is a place where there have been more than 50 large-scale battles from ancient times to the p ...
- AI 实战篇:Spring-AI再更新!细细讲下Advisors
在2024年10月8日,Spring AI再次进行了更新,尽管当前版本仍为非稳定版本(1.0.0-M3),但博主将持续关注这些动态,并从流行的智能体视角深入解析其技术底层.目前,Spring AI仍处 ...
- Windows Terminal中使用GitBash
简要说明 我喜欢终端操作,喜欢Git,Microsoft出了一款工具叫做Windows Terminal,在Windows Terminal中使用Git的体验感是极佳的,本博客将教你如何让这体验舒服到 ...
- MySQL原理简介—1.SQL的执行流程
大纲(2426字) 1.MySQL驱动的作用 2.Java系统中的数据库连接池的作用 3.MySQL中的数据库连接池的作用 4.网络连接必须让线程来处理 5.SQL接口会负责处理接收到的SQL语句 6 ...
- Think in Java之构造器的真正调用顺序
构造器是OOP的重要组成部分,很多人认为它很容易.只不过是new了一个对象而已.而think in java的作者却告诉我们,其实这并不容易.先看下面这个例子.在你没看结果之前,你觉得你的答案是对的么 ...
- 定时任务监控服务Healthchecks
GitHub地址:https://github.com/healthchecks/healthchecks 官方文档:https://healthchecks.io/docs/ 按照步骤进行安装: 1 ...
- JDBC【4】-- jdbc预编译与拼接sql对比
在jdbc中,有三种方式执行sql,分别是使用Statement(sql拼接),PreparedStatement(预编译),还有一种CallableStatement(存储过程),在这里我就不介绍C ...