• 视图名称:PM通知单 I_LocationAnalysisCube
  • 视图类型:分析
  • 视图代码:
点击查看代码
@EndUserText.label: 'Location Analysis - Cube'
@VDM.viewType: #COMPOSITE
@AbapCatalog.sqlViewName: 'ILOCANALYSISCUBE'
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations: true
@AbapCatalog.compiler.compareFilter: true @Analytics: {
dataCategory: #CUBE,
dataExtraction: {
enabled: true,
delta.byElement: {
name: 'LastChangeDateTime'
}
}
} @Metadata.allowExtensions:true @ObjectModel: {
usageType: {
dataClass: #MIXED,
serviceQuality: #D,
sizeCategory: #XL
}
} @ObjectModel.supportedCapabilities:[ #ANALYTICAL_PROVIDER ]
@ObjectModel.modelingPattern: #ANALYTICAL_CUBE @AccessControl.personalData.blocking: #NOT_REQUIRED
// with this CDS view only partial details of CS notification would be visible, CS is only in compatibility mode and no further details would be made available
define view I_LocationAnalysisCube
as select from I_MaintNotificationTechObj
association [0..1] to I_WorkCenterBySemanticKey as _MainWorkCenterBySemanticKey on $projection.MainWorkCenter = _MainWorkCenterBySemanticKey.WorkCenter
and $projection.MainWorkCenterPlant = _MainWorkCenterBySemanticKey.Plant
association [0..1] to I_WorkCenterBySemanticKey as _WorkCenterBySemanticKey on $projection.workcenter = _WorkCenterBySemanticKey.WorkCenter
and $projection.WorkCenterPlant = _WorkCenterBySemanticKey.Plant
association [0..*] to I_EquipmentData as _EquipmentData on _EquipmentData.Equipment = $projection.Equipment
association [0..1] to I_FunctionalLocationData as _FunctionalLocationData on _FunctionalLocationData.FunctionalLocation = $projection.FunctionalLocation
association [0..1] to P_MaintNotifTaskCount as _MaintNotifTaskCount on _MaintNotifTaskCount.MaintenanceNotification = $projection.MaintenanceNotification
association [0..1] to P_MaintNotifSuccssflTaskCount as _MaintNotifSuccssflTaskCount on _MaintNotifSuccssflTaskCount.MaintenanceNotification = $projection.MaintenanceNotification
association [0..1] to P_MaintNotifOutStdgReldTaskCnt as _MaintNotifOutStdgReldTaskCnt on _MaintNotifOutStdgReldTaskCnt.MaintenanceNotification = $projection.MaintenanceNotification
-- Extensions, do not expose as association:
association [0..1] to E_PMNotifMaintenanceData as _NotifMaintenanceDataExtension on _NotifMaintenanceDataExtension.MaintenanceNotification = $projection.MaintenanceNotification {
@ObjectModel.text.element: [ 'NotificationText' ]
key I_MaintNotificationTechObj.MaintenanceNotification, @Semantics.text: true
I_MaintNotificationTechObj.NotificationText, @ObjectModel.foreignKey.association: '_MaintenancePlant'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.MaintenancePlant, @ObjectModel.foreignKey.association: '_PlantSection'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.PlantSection, @ObjectModel.foreignKey.association: '_PMNotificationType'
I_MaintNotificationTechObj.NotificationType,
@ObjectModel.foreignKey.association: '_PMNotificationPhase'
I_MaintNotificationTechObj.NotifProcessingPhase, @ObjectModel.foreignKey.association: '_MaintenancePlanPlant'
I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenancePlanningPlant, @ObjectModel.foreignKey.association: '_PMNotificationPriority'
I_MaintNotificationTechObj.MaintPriority,
@ObjectModel.foreignKey.association: '_PMNotificationPriorityType'
I_MaintNotificationTechObj.MaintPriorityType, I_MaintNotificationTechObj.NotificationOrigin,
@ObjectModel.foreignKey.association: '_IsDeleted'
I_MaintNotificationTechObj.IsDeleted, @ObjectModel.foreignKey.association: '_BusinessArea'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.BusinessArea,
I_MaintNotificationTechObj._PMNotifMaintenanceData.Assembly,
@ObjectModel.foreignKey.association: '_MaintenancePlannerGroup'
I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenancePlannerGroup,
@ObjectModel.foreignKey.association: '_MaintenanceObjectIsDown'
I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenanceObjectIsDown, @ObjectModel.foreignKey.association: '_MainWorkCenterBySemanticKey'
cast( I_MaintNotificationTechObj._MainWorkCenter.WorkCenter as gewrk preserving type ) as MainWorkCenter,
@ObjectModel.foreignKey.association: '_MainWorkCenterPlant'
cast( I_MaintNotificationTechObj._MainWorkCenter.Plant as wergw preserving type ) as MainWorkCenterPlant,
@ObjectModel.foreignKey.association: '_WorkCenterBySemanticKey'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._WorkCenter.WorkCenter,
@ObjectModel.foreignKey.association: '_WorkCenterPlant'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._WorkCenter.Plant as WorkCenterPlant, I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.AssetLocation,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.AssetRoom,
@ObjectModel.foreignKey.association: '_ABCIndicator'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.ABCIndicator,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.MaintObjectFreeDefinedAttrib,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.CostCenter,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.ControllingArea,
@ObjectModel.foreignKey.association: '_CompanyCode'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.CompanyCode,
@ObjectModel.foreignKey.association: '_WBSElementBasicData'
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.WBSElementInternalID,
cast( I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._WBSElementBasicData.WBSElement as ps_posid preserving type ) as WBSElement, // Dates
@Semantics.systemDate.createdAt: true
I_MaintNotificationTechObj.CreationDate,
@Semantics.systemTime.createdAt: true
I_MaintNotificationTechObj.CreationTime,
@Semantics.systemDate.lastChangedAt: true
I_MaintNotificationTechObj.LastChangeDate,
@Semantics.businessDate.createdAt: true
I_MaintNotificationTechObj.NotificationCreationDate,
I_MaintNotificationTechObj.NotificationCreationTime,
I_MaintNotificationTechObj.NotificationCompletionDate,
I_MaintNotificationTechObj.CompletionTime,
@Semantics.businessDate.at: true
I_MaintNotificationTechObj.NotificationReferenceDate,
I_MaintNotificationTechObj.RequiredStartDate,
I_MaintNotificationTechObj.RequiredStartTime,
I_MaintNotificationTechObj.RequiredEndDate,
I_MaintNotificationTechObj.RequiredEndTime,
I_MaintNotificationTechObj._PMNotifMaintenanceData.MalfunctionStartDate,
I_MaintNotificationTechObj._PMNotifMaintenanceData.MalfunctionStartTime,
I_MaintNotificationTechObj._PMNotifMaintenanceData.MalfunctionEndDate,
I_MaintNotificationTechObj._PMNotifMaintenanceData.MalfunctionEndTime, // Timestamps
@Semantics.systemDateTime.lastChangedAt: true
I_MaintNotificationTechObj.LastChangeDateTime, // Users
@Semantics.user.createdBy: true
I_MaintNotificationTechObj.CreatedByUser,
@Semantics.user.lastChangedBy: true
I_MaintNotificationTechObj.LastChangedByUser,
I_MaintNotificationTechObj.ReportedByUser, /****************************************************************************************************
* Technical Object
****************************************************************************************************/ // Alternative labeling for Functional Locations is supported
I_MaintNotificationTechObj._TechnicalObject.TechnicalObjectLabel, //@ObjectModel.foreignKey.association: '_TechnicalObject'
//I_MaintNotificationTechObj.TechnicalObject,
@ObjectModel.foreignKey.association: '_TechObjIsEquipOrFuncnlLoc'
I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc,
@ObjectModel.foreignKey.association: '_TechnicalObjectType'
I_MaintNotificationTechObj._TechnicalObject.TechnicalObjectType,
I_MaintNotificationTechObj._TechnicalObject.AssetManufacturerName,
I_MaintNotificationTechObj._TechnicalObject.ManufacturerPartTypeName,
I_MaintNotificationTechObj._TechnicalObject.AuthorizationGroup,
@ObjectModel.foreignKey.association: '_ManufacturerCountry'
I_MaintNotificationTechObj._TechnicalObject.ManufacturerCountry,
@Semantics.calendar.year: true
cast( I_MaintNotificationTechObj._TechnicalObject.ConstructionYear as eam_techobj_construction_year ) as ConstructionYear, cast( I_MaintNotificationTechObj._TechnicalObject.ConstructionMonth as eam_techobj_construction_month ) as ConstructionMonth,
@ObjectModel.foreignKey.association: '_EquipmentData'
I_MaintNotificationTechObj.Equipment,
@ObjectModel.foreignKey.association: '_FunctionalLocationData'
I_MaintNotificationTechObj.FunctionalLocation,
@ObjectModel.foreignKey.association: '_TechnicalObjectCodeCatalog'
I_MaintNotificationTechObj._TechnicalObject.CatalogProfile, //LinearAssetManagementData
cast( cast( I_MaintNotificationTechObj._LinearAssetManagementData.LinearDataStartPoint as abap.dec(11, 3) ) as eaml_start_point ) as LinearDataStartPoint,
cast( cast( I_MaintNotificationTechObj._LinearAssetManagementData.LinearDataEndPoint as abap.dec(11, 3) ) as eaml_end_point ) as LinearDataEndPoint, @Semantics.quantity.unitOfMeasure: 'LinearDataUnitOfMeasure'
I_MaintNotificationTechObj._LinearAssetManagementData.LinearDataLength,
@ObjectModel.foreignKey.association: '_LinearDataUnitOfMeasure'
I_MaintNotificationTechObj._LinearAssetManagementData.LinearDataUnitOfMeasure, /****************************************************************************************************
* Measures
****************************************************************************************************/
@DefaultAggregation: #SUM
cast( 1 as smofn ) as NumberOfCreatedMaintNotifs, @DefaultAggregation: #SUM
cast( case when I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenanceObjectIsDown = 'X' then 1
else 0 end as sgmsaus ) as NumberOfReportedBreakdowns, @DefaultAggregation: #SUM
cast( case when I_MaintNotificationTechObj.MaintenanceOrder != '' then 1
else 0 end as iaofn ) as NumberOfCreatedMaintOrders, @DefaultAggregation: #SUM
cast( case when I_MaintNotificationTechObj.IsCompleted = 'X' then 1
else 0 end as smmab ) as NumberOfCompletedMaintNotif, @DefaultAggregation: #SUM
cast( case when I_MaintNotificationTechObj.IsDeleted = 'X' then 1
else 0 end as eam_deleted_notifications ) as NmbrOfDeltdMaintNotifications, @DefaultAggregation: #SUM
cast( case when I_MaintNotificationTechObj.IsDeleted = 'X' or I_MaintNotificationTechObj.IsCompleted = 'X' then 0
else 1 end as eam_open_notifications ) as NmbrOfOpenMaintNotifications, //Downtime Duration in Hour
@DefaultAggregation: #SUM
// @Semantics.quantity.unitOfMeasure: 'MaintObjDowntimeDurationUnit'
cast(unit_conversion(
quantity => I_MaintNotificationTechObj.MaintObjectDowntimeDuration,
source_unit => cast('S' as maueh),
target_unit => cast('STD' as maueh),
error_handling=> 'SET_TO_NULL'
) as auszt ) as MaintObjectDowntimeDuration,
//Hour
@Semantics.unitOfMeasure: true
cast('STD' as maueh) as MaintObjDowntimeDurationUnit, //Total Lead Time of Notifications
@DefaultAggregation: #SUM
// @Semantics.quantity.unitOfMeasure: 'LeadTimeUnit'
cast(division(TSTMP_SECONDS_BETWEEN (
(dats_tims_to_tstmp(NotificationCreationDate, NotificationCreationTime, abap_system_timezone( $session.client,'NULL' ), $session.client, 'NULL' ) ),
(dats_tims_to_tstmp(NotificationCompletionDate, CompletionTime, abap_system_timezone( $session.client,'NULL' ), $session.client, 'NULL' ) ),
'NULL' ), 86400, 11 ) as qnsumdlzt ) as TotalLeadTimeOfMaintNotif,
//Day
@Semantics.unitOfMeasure: true
cast('TAG' as qeinhtag) as LeadTimeUnit, //Number of Notifications with Status Outstanding
@DefaultAggregation: #SUM
cast(case when I_MaintNotificationTechObj.IsDeleted = '' and NotificationCompletionDate = '00000000' then 1
else 0 end as qzhlmofn ) as NrOfOutstandingMaintNotif, //Number of Notifications Completed on Schedule
@DefaultAggregation: #SUM
cast(case when I_MaintNotificationTechObj.IsDeleted = '' then
case when NotificationCompletionDate != '00000000' and RequiredEndDate != '00000000' then
case when NotificationCompletionDate < RequiredEndDate then 1
when NotificationCompletionDate = RequiredEndDate then
case when CompletionTime < RequiredEndTime then 1
else 0 end
else 0 end
when NotificationCompletionDate != '00000000' and RequiredEndDate = '00000000' then 1
else 0 end
else 0 end as qzhlerl_te ) as NrOfMaintNotifCmpltdOnSched, //Number of Tasks
@DefaultAggregation: #SUM
cast(_MaintNotifTaskCount.NumberOfMaintNotifTasks as qzhlmass ) as NumberOfMaintNotifTasks, //Number of Tasks with Status Successful
@DefaultAggregation: #SUM
cast(_MaintNotifSuccssflTaskCount.NrOfMaintNotifSuccssflTasks as qzhlmerf ) as NrOfMaintNotifSuccssflTasks, //Number of Tasks with Status "Outstanding" or "Released" (Active Tasks)
@DefaultAggregation: #SUM
cast(_MaintNotifOutStdgReldTaskCnt.NrOfMaintNotifActiveTasks as qzhlmaof ) as NrOfMaintNotifActiveTasks, //Associations
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._MaintenancePlant,
I_MaintNotificationTechObj._PMNotifMaintenanceData._MaintenancePlanningPlant,
I_MaintNotificationTechObj._PMNotifMaintenanceData._MaintenancePlanPlant,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._PlantSection,
I_MaintNotificationTechObj._IsDeleted,
I_MaintNotificationTechObj._PMNotificationPhase,
I_MaintNotificationTechObj._PMNotificationType,
I_MaintNotificationTechObj._PMNotificationPriority,
I_MaintNotificationTechObj._PMNotificationPriorityType,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._BusinessArea,
I_MaintNotificationTechObj._PMNotifMaintenanceData._MaintenancePlannerGroup,
I_MaintNotificationTechObj._PMNotifMaintenanceData._MaintenanceObjectIsDown,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._ABCIndicator,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._CompanyCode,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._WBSElementBasicData,
I_MaintNotificationTechObj._LinearAssetManagementData._LinearDataUnitOfMeasure,
I_MaintNotificationTechObj._MainWorkCenter._Plant as _MainWorkCenterPlant,
I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._WorkCenter._Plant as _WorkCenterPlant,
//_TechnicalObject,
I_MaintNotificationTechObj._TechObjIsEquipOrFuncnlLoc,
I_MaintNotificationTechObj._TechnicalObject._TechnicalObjectType,
I_MaintNotificationTechObj._TechnicalObject._ManufacturerCountry,
--I_MaintNotificationTechObj._Equipment,
--I_MaintNotificationTechObj._FunctionalLocation,
I_MaintNotificationTechObj._TechnicalObject._TechnicalObjectCodeCatalog, _EquipmentData,
_FunctionalLocationData,
_MainWorkCenterBySemanticKey,
_WorkCenterBySemanticKey
}
  • 事务代码:IQS3

  • 视图结构:

字段名称 设备名称
通知 MAINTENANCENOTIFICATION
描述 NOTIFICATIONTEXT
维护工厂 MAINTENANCEPLANT
厂区 PLANTSECTION
通知类型 NOTIFICATIONTYPE
通知阶段 NOTIFPROCESSINGPHASE
计划工厂 MAINTENANCEPLANNINGPLANT
优先级 MAINTPRIORITY
优先级类型 MAINTPRIORITYTYPE
通知来源 NOTIFICATIONORIGIN
已删除 ISDELETED
业务范围 BUSINESSAREA
装配 ASSEMBLY
计划人员组 MAINTENANCEPLANNERGROUP
细分 MAINTENANCEOBJECTISDOWN
主工作中心 MAINWORKCENTER
工厂工作中心 MAINWORKCENTERPLANT
工作中心 WORKCENTER
工厂 WORKCENTERPLANT
位置 ASSETLOCATION
房间 ASSETROOM
ABC 标识 ABCINDICATOR
分类字段 MAINTOBJECTFREEDEFINEDATTRIB
成本中心 COSTCENTER
成本控制范围 CONTROLLINGAREA
公司代码 COMPANYCODE
WBS 要素 WBSELEMENTINTERNALID
WBS 要素 WBSELEMENT
创建日期 CREATIONDATE
创建时间 CREATIONTIME
更改日期 LASTCHANGEDATE
通知日期 NOTIFICATIONCREATIONDATE
通知时间 NOTIFICATIONCREATIONTIME
完成日期 NOTIFICATIONCOMPLETIONDATE
完成时间 COMPLETIONTIME
参考日期 NOTIFICATIONREFERENCEDATE
要求的起始日期 REQUIREDSTARTDATE
要求的开始时间 REQUIREDSTARTTIME
要求的结束日期 REQUIREDENDDATE
要求的结束时间 REQUIREDENDTIME
故障开始 MALFUNCTIONSTARTDATE
故障开始(时间) MALFUNCTIONSTARTTIME
故障结束 MALFUNCTIONENDDATE
故障结束 MALFUNCTIONENDTIME
时戳 LASTCHANGEDATETIME
创建人 CREATEDBYUSER
更改人 LASTCHANGEDBYUSER
报告人 REPORTEDBYUSER
技术对象 TECHNICALOBJECTLABEL
技术对象类型 TECHOBJISEQUIPORFUNCNLLOC
对象类型 TECHNICALOBJECTTYPE
制造商 ASSETMANUFACTURERNAME
型号 MANUFACTURERPARTTYPENAME
授权组 AUTHORIZATIONGROUP
制造国家/地区 MANUFACTURERCOUNTRY
制造年份 CONSTRUCTIONYEAR
制造月份 CONSTRUCTIONMONTH
设备 EQUIPMENT
功能位置 FUNCTIONALLOCATION
类别参数文件 CATALOGPROFILE
起点 LINEARDATASTARTPOINT
终点 LINEARDATAENDPOINT
LINEARDATALENGTH
计量单位 LINEARDATAUNITOFMEASURE
创建的通知 NUMBEROFCREATEDMAINTNOTIFS
明细报告 NUMBEROFREPORTEDBREAKDOWNS
订单被生成 NUMBEROFCREATEDMAINTORDERS
完成的通知 NUMBEROFCOMPLETEDMAINTNOTIF
已删除的通知 NMBROFDELTDMAINTNOTIFICATIONS
未清通知 NMBROFOPENMAINTNOTIFICATIONS
停机期间 MAINTOBJECTDOWNTIMEDURATION
单位 MAINTOBJDOWNTIMEDURATIONUNIT
总提前期 TOTALLEADTIMEOFMAINTNOTIF
LEADTIMEUNIT
未清通知 NROFOUTSTANDINGMAINTNOTIF
日程安排 NROFMAINTNOTIFCMPLTDONSCHED
全部的任务号码 NUMBEROFMAINTNOTIFTASKS
任务成功 NROFMAINTNOTIFSUCCSSFLTASKS
任务末结 NROFMAINTNOTIFACTIVETASKS

CDS标准视图:PM通知单 I_LocationAnalysisCube的更多相关文章

  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. BootStrap5应用时tooltips的添加

    BootStrap5应用时tooltips的添加 官方示例 <button type="button" class="btn btn-secondary" ...

  2. 【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(4)

    1.问题描述: 目前华为推送API使用的是v2或者v1版本,请问目前最新的鸿蒙next使用v3版本是否兼容v2或者v1,反过来将v2或者v1的api可以推送鸿蒙next的设备吗? 解决方案: v3接口 ...

  3. Paimon lookup store 实现

    Lookup Store 主要用于 Paimon 中的 Lookup Compaction 以及 Lookup join 的场景. 会将远程的列存文件在本地转化为 KV 查找的格式. Hash htt ...

  4. 模算术 modular arithmetic

    https://en.wikipedia.org/wiki/Modular_arithmetic#Integers_modulo_n 模算术: 整数达到特定值时会' 折返 ' 回来-- 模数 modu ...

  5. OSG开发笔记(三十一):OSG中LOD层次细节模型介绍和使用

    前言   模型较大的时候,出现卡顿,那么使用LOD(细节层次)进行层次细节调整,可以让原本卡顿的模型变得不卡顿.  本就是LOD介绍.   Demo      LOD 概述   LOD也称为层次细节模 ...

  6. 10.Kubernetes核心技术Service

    Kubernetes核心技术Service 前言 前面我们了解到 Deployment 只是保证了支撑服务的微服务Pod的数量,但是没有解决如何访问这些服务的问题.一个Pod只是一个运行服务的实例,随 ...

  7. 高性能计算-gemm-mpi并行计算优化(8)

    1. 目标: 矩阵A(MK) 矩阵B(KN)相乘,计算结果 C(M*N);本测试将使用不同的数据分块方式.MPI通信接口.数据循环模型,测试通信及计算效率,计算耗时为程序用户态和核心态的占用cpu时间 ...

  8. 2025年前端面试准备js篇

    1.js的基本数据类型有哪些 undefined,null,bo0lean,number,string,object,Symbol,bigInt 分为原始类型和引用类型 原始类型:undefined, ...

  9. python get请求传array数组

    前言 使用传统的http发get请求时,如果传参为array数组,参数名称为a时,可以这样传值a=1&a=2&a=3,但是当只有一个时,这种方式就不合理了. get请求还有另外一种方式 ...

  10. 专为移动端设计的PDF阅读器-小白PDF阅读器

    以前在手机端看扫描版的pdf电子书,要么放大后用手指来回拖动着看,要么将手机横屏看,阅读体验非常差!后来就想自己做一款能自动重排版的pdf阅读器,于是小白PDF阅读器就诞生了! 小白PDF阅读器的重排 ...