• 视图名称: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. 为什么在http协议中使用base64编码方式传输二进制文件

    相关: 图解 Base64 实现原理并使用 js 实现一个简单的 Base64 编码器 常用加密方法之Base64编解码及代码实现 一直都知道在http协议中使用base64的方式传递二进制文件,虽然 ...

  2. IBM 开源的文档转化利器「GitHub 热点速览」

    上周的热门开源项目,Star 数增长犹如坐上了火箭,一飞冲天.短短一周就飙升了 6k Star 的多格式文档解析和导出神器 Docling,支持库和命令行的使用方式.全新的可视化爬虫平台 Maxun, ...

  3. Metal 开发教程(二)

    https://developer.apple.com/documentation/quartzcore/cametallayer?language=objc#3385893 CAMetalLayer ...

  4. MySQL原理简介—2.InnoDB架构原理和执行流程

    大纲 1.更新语句在MySQL中是如何执行的 2.重要的内存结构-Buffer Pool缓冲池 3.undo日志文件如何让更新的数据可以回滚 4.更新Buffer Pool缓冲池中的缓存数据 5.Re ...

  5. python的egg的制作

    egg包是目前最流行的python应用打包部署方式.如何制作和安装egg包?下面我就简单的分析了一下. 总是安装别人的egg包,是不是也想制作自己的egg包呢?好,接下来我们就自己制作一个简单的egg ...

  6. 通过jconsole查看tomcat运行情况的配置方法——基于JDK1.5、Linux(Redhat5.5)、Tomcat6

    由于项目的原因,需要使用jconsole对tomcat进行远程监控,结合网上的资料对配置方法进行了总结. 第一步.配置tomcat 打开%TOMCAT_HOME%/bin下的文件catalina.sh ...

  7. Collections Framework中的算法(之二)

    从本篇开始我们讲述Collections中的一些算法的源代码!本篇主要讲述与排序相关的一些方法,如:排序.反序.反序比较器.乱序.最大值和最小值等. 一.头及一些与算法相关的属性 package ja ...

  8. go官方包依赖管理工具之mod

    1.1.go mod是什么 go mod 是Golang 1.11 版本引入的官方包(package)依赖管理工具,用于解决之前没有地方记录依赖包具体版本的问题,方便依赖包的管理. 之前Golang ...

  9. Codeforces Round 642 (Div3)

    K-periodic Garland 给定一个长度位\(n\)的\(01\)串,每次操作可以将\(1\)变为\(0\)或者将\(0\)变为\(1\),现在你需要通过操作使得所有\(1\)之间的距离为\ ...

  10. springgateway 路由转发

    有些情况下,我们希望不直接访问后端地址,这个时候可以通过springgateway网关进行处理.下面只是一个简单的例子. 至于URL,变化,我们可以通过编写程序逻辑来实现. 实现步骤: 1.新建项目 ...