- 博客(140)
- 资源 (1)
- 收藏
- 关注
原创 ADBC:根据SQL Select的字段返回动态内表
DATA: lv_con_name TYPE dbcon-con_name, lr_cx_sql_exception TYPE REF TO cx_sql_exception, lr_connection TYPE REF TO cl_sql_connection, lr_statement TYPE REF TO cl_sql_statement, lr_result_set TYPE REF TO cl_sql_result_..
2021-06-01 15:21:58 1062
原创 BPC开发:写入备注
BPC模型中只能存数值,存储备注文本的信息每个模型都对应有一张备注表来存储。使用程序UJ0_GET_GEN_TABNAME可以知道每个模型对应的备注表名。备注表的更新是增量的,如相同维度第一次存入一个文本AAAA,第二次存入文本BBBB,那么AAAA,BBBB都会在备注表中存在。系统读取的时候会根据时间戳字段DATEWRITTEN读取最新的一条数据。备注相关操作主要通过cl_ujc_cmtmanager来实现方法封装:方法实现: METHOD add_cmts_fast.
2021-05-11 16:18:21 1769
原创 BPC开发:将数据写回BPC模型
使用方法if_ujo_write_back->write_back可以将数据写回BPC模型。将方法封装:代码: METHOD write_back_to_bpc_cube. DATA: lo_ujo_wb TYPE REF TO if_ujo_write_back, ls_wb_param TYPE if_ujo_write_back=>gs_wb_param, ls_wb_status TYPE ujo_s
2021-05-11 14:44:31 1839
原创 SAP BPC开发:读取BPC模型数据
可以使用if_ujo_query->run_rsdri_query方法获取BPC模型的数据。方法参数:代码: METHOD read_bpc_cube. DATA : lo_appl TYPE REF TO cl_uja_application, lt_appl_dim TYPE uja_t_appl_dim, ls_appl_dim LIKE LINE OF lt_appl_dim, lt_dim
2021-05-11 14:39:47 3131 1
原创 SAP BPC开发:对ABAPer的快速扫盲
最近两年做的都是BPC项目的开发,我觉得有必要对BPC项目的开发做一个总结。此文章仅以我个人的理解对一些概念做浅显的描述,让ABAPer刚开始做BPC项目时,能够和BPC顾问有共同语言 、快速的上手。1.什么是BPC? BPC是SAP推出的一款做预算合并分析的产品。其运行在BW/4上,所以上了BPC系统的其实就相当于装了BW,也就可以使用BW的功能。 BPC包含了预算和合并功能,一般预算和合并是不同的顾问来实施。 操作层面分两个部分,一个是在网页端查看流程、配置系统等,另一个是在EX...
2021-03-08 16:49:56 10292 1
原创 BPC BADI开发注意事项
1.脚本中START_BADI XXX,如果不需要通过*XDIM_MEMBERSET限制数据范围时,一定要设置QUERY = OFF。系统默认QUERY = ON,如果没有设置OFF,那么会抓取改模型的全部数据,然后再写回模型,导致脚本许久都没有运行结束。待续。...
2021-03-03 14:53:20 1305 1
原创 ABAP 发送JSON报文
调用主函数:FUNCTION ZWMS_MATERIAL_POST.*"----------------------------------------------------------------------*"*"本地接口:*" IMPORTING*" REFERENCE(INPUT) TYPE ZWMSP007*" EXPORTING*" REFERENCE(OUTPUT) TYPE ZWMSP002*"-------------------------.
2021-01-05 16:23:20 1047
原创 ECCS:调用BAPI_ACC_DOCUMENT_POST后自动生成的合并凭证丢失行项目
问题现象:启用ECCS的实时更新后,自开发程序调用BAPI_ACC_DOCUMENT_POST会触发生成合并凭证,但是总会缺少第一行,通过FB01手工记账生成的合并凭证没有问题。DEBUG发现执行到FC_DOCUMENT_INTERFACE_POST后行项目内表IT_ACCIT少了一行:解决:打NOTES:0002910069 Real-time update: Incomplete Consolidation Documents打好后:...
2020-12-29 18:15:56 478
原创 CDS 带参数实例
CDS 带参数:@AbapCatalog.sqlViewName: 'ZV_DZPZ'@AbapCatalog.compiler.compareFilter: true@AbapCatalog.preserveKey: true@AccessControl.authorizationCheck: #CHECK@EndUserText.label: '取各系统对账凭证'define view ZCDS_GET_ACDOCA_ALL with parameters in_PER_l
2020-12-04 15:37:20 1563
原创 利用SM30表维护事件实现保存校验
表维护经常遇到需要对数据进行校验的情况,文章用以下场景为例,讲述表维护事件用法。场景:配置表存的是公司某个期间的持股比例。校验一个公司的期间不能交叉重合。数据如:效果:新建一个AAA,和原来202002-202005期间有交叉时,不能保存。实现:FORM check_period.*-检查是否有重复期间 DATA:lt_in TYPE zbpctt001, ls_in LIKE LINE OF lt_in. DATA:lt_return TYPE
2020-11-12 14:51:09 4695
原创 ABAP 隐藏状态栏的应用程序工具栏(Application Toolbar)
效果:隐藏红圈的工具栏:隐藏后:设置方法:把无应用程序工具栏勾上
2020-10-27 10:12:56 1258
原创 ABAP 年月搜索帮组(自定义财务期间)
时间格式可自己处理,样例格式是YYYY.MM效果:实现过程:*&---------------------------------------------------------------------**& Form FRM_VALUEHELP_PERIOD*&---------------------------------------------------------------------**& text*&------------
2020-10-26 15:20:29 347
原创 ABAP SQL INNER JOIN 内表或FROM 内表
新版本ABAP已支持从一个内表中select ,或者join 一个内表。仅允许使用一次,不允许同时join两个内表,或者from内表又jon内表
2020-07-28 17:34:33 6300 3
原创 ABAP 替换字符串中最后一次出现的字符
场景:需要将最后一个出现的字符替换成某个字符,如A23A3,将最后一次出现的A替换为01.DATA: text TYPE char100, moff TYPE i, mlen TYPE i, mcnt TYPE i.text = `A23A3`.WRITE / '转换前:' && text.FIND ALL OCCURRENCES OF 'A' IN text MATCH OFFSET moff MATC
2020-07-06 20:06:00 1744
原创 Eclipse 安装ABAP/HANA/BW等插件
官网:https://tools.hana.ondemand.com/20200513:This site allows you to install various SAP development tools.The downloads are provided under the terms of theSAP DEVELOPER LICENSE AGREEMENT.Eclipse Software SitesTo install some or all of the Eclip..
2020-05-13 11:33:33 2851
原创 ODATA入门:CREATE_DEEP_ENTITY方法实现PO抬头和明细一起创建
重定义实现CREATE_DEEP_ENTITY方法,我们可以实现一起更新Navigation属性。比如前台创建PO 抬头和相应的行项目,传到后台可以通过此方法将抬头和行项目一起创建。实现过程重定义/IWBEP/IF_MGW_APPL_SRV_RUNTIME~CREATE_DEEP_ENTITY方法我们首先要定义结构用来接收前天post过来的参数:*-定义传入结构TY...
2020-01-17 10:13:59 4541
原创 Adobe Form 简单例子
题外话,SAP提供了很多测试程序:FP_TEST*创建Adobe form主要有以下几个步骤:1.创建需要显示的结构以及表类型2.创建接口:定义传入参数,以及一些全局变量。和Smartforms类似3.绘制表单: 3.1设置上下文,将第二步的接口参数传入到表单中 3.2 拖拽相应的控件,并做相应的数据绑定下面是过程:创建接口创建相应的结构...
2020-01-07 18:27:18 2586
原创 SFP 无法启动布局设计器 FPUIFB086
现象Tcode:SFP 进入一个表单,点击布局时不能打开布局设计器b:原因:系统缺少Adobe LiveCycle Designer解决办法:下载Adobe LiveCycle Designer并安装安装完成后:...
2020-01-07 11:38:00 1344 2
原创 ODATA入门:UPDATE方法实现
和Create类似,重定义实现ZPOHEADERSET的UPDATE_ENTITY方法即可。测试:运行前:执行测试
2019-12-13 09:55:35 1564
原创 ODATA入门:实现CREATE方法创建数据
重定义实现ZPOHEADERSET的CREATE_ENTITY方法即可:IO_DATA_PROVIDER有方法获取需要新建的数据前台请求:
2019-12-12 17:51:55 1812
原创 ODATA入门:注意事项
一、我们要实现DPC_EXT或者MPC_EXT里面的方法时,不能直接在方法里编写代码,否则重新生成对象时会将代码删除掉。正确方法应该是右键相应的方法,选择重定义(redefine),在重定义里面写代码。先前文章是直接写的没有用重定义是错误的...
2019-12-12 16:42:26 847
原创 ODATA入门:Association 和 Navigation实现(GET_EXPANDED_ENTITY)
Association 和 Navigation主要是用来关联两个entity,比如先前例子中的header和item,我们想在获取header数据的同时,还获取其item的数据,那么:Association 和 Navigation就能实现我们这个需求。示例如下:也可以用expandAssociation和Navigation的创建参考先前文章:https://blog.csdn...
2019-12-12 15:40:58 2865
原创 ODATA入门:$inlinecount,$top,$skip实现
$inlinecount,$top,$skip实际是用来实现分页功能的,当top和skip一起用的时候是先筛选条件,skip再top。直接贴代码吧:测试:设置参数前:设置参数后:...
2019-12-12 11:02:29 1912
原创 ODATA入门:$filter实现
在Odata中,我们可以指定某些字段值的筛选。如:/sap/opu/odata/sap/ZDEMO_PO_SRV/ZPOHEADERSet?$filter=EBELN eq '4500000002'语法:$filter=<fieldname><operator><value>其中操作符支持:eq, ne, le, lt, ge, gt...
2019-12-12 10:04:11 3539 1
原创 ODATA入门:$orderby排序方法实现
描述如何实现http://<server>:<port>/sap/opu/odata/sap/<service_name>/XXSet?$orderby= 排序字段名desc/asc实现前debug看一下前台如何传参的:发现IT_ORDER有如下值:我们根据传参实现排序即可我们来对比看结果排序前:排序后:...
2019-12-11 15:27:25 1911
原创 ODATA入门:GetEntity和GetEntitySet方法基本实现
一、为后续demo搭建简单的基础信息:一个Odata服务ZDEMO_PO,三个数据库表及模型ZPOHEADER、ZPOITEM、ZVENDOR,相应的Association,后续文章基本使用ZDEMO_PO项目创建项目创建相应的entity创建entity的属性,我这里手工创建,实际可以通过导入数据库表的方式来创建同理创建POTIEM和VENDOR创建抬头和明...
2019-12-11 11:17:44 4468 3
原创 ODATA入门:基于搜索帮助创建一个ODATA服务
本文将介绍如何通过把搜索帮助发布为odata服务一、Tcode:segw创建项目二、通过Search help创建数据模型Next,输入Entity Type名称以及要参考的搜说帮助勾选需要的字段勾选相应的Key完成后会自动生成的Data Model,然后点击红色宝马,会自动生成Runtime Artifact等等内容三、Tcode:/IWFND...
2019-12-06 15:00:02 1852
原创 调用PI生成代理类需要输入PI用户名密码进行认证
调用代理类时,弹出对话框需要输入pi的账号和密码进行验证:处理办法:SM59:为INTEGRATION_ENGINE_JAVA_POD维护PI用户名密码:
2019-08-02 16:48:41 1644
原创 ABAP 类:静态方法与属性
在一个程序中,直接调用静态方法设置一个静态属性后,那么此程序后面如再次调用,那么此静态属性为先前被初始化的值。静态变量的存储方式能保证静态变量一旦申明,它的生存期就能扩展到整个程序运行期间,其生命周期就相当于全局变量 ...
2018-09-27 10:44:20 4413
原创 ABAP_DEBUG时通过文件上传数据到内表
有时候我们调试的时候需要给某个内表添加很多行数据,SAP提供上传文件的方式将数据更新到内表。举例如下:要给内表gt_aufnr 调试时上传数据1.2.建一个文本文件,填入数据,列字段顺序需和内表一致3.4.5....
2018-06-28 16:57:47 1481
原创 ABAP INSERT ACCEPTING DUPLICATE KEYS
使用ACCEPTING DUPLICATE KEYS时,当插入时发现这条记录已存在时,那么这条记录将不会被insert,后续记录继续执行insert
2017-12-28 11:24:33 6081
原创 ABAP HASH TABLE 主键重复时
当定义内表为hashed table, unique key的时候,如果表里已经存在一条记录,你再insert相同主键的记录进去的时候,结果是insert失败,SY-SUBRC = 4. 记录也不会被覆盖/增加,原数据不变.START-OF-SELECTION. DATA:BEGIN OF gs_mard, matnr TYPE matnr,
2017-12-11 09:34:17 2217
原创 COGI生成的261凭证不能被取消(自动倒冲)
matdoc(S4)的字段强制修改成vgart = 'WA' tcode2 = 'MIGO_GI'
2017-09-28 15:44:06 1705
原创 S4 更新MSEG失败sy-subrc = 4
S4之后MSEG已经废弃,改用MATDOC.虽然SE11还能看到MSEG数据,但实际已是视图NSDM_V_MSEG显示的内容.
2017-09-25 17:00:54 1978
原创 DYNPRO: FIELD
在示例程序demo_dynpro_field中,屏幕PAI:PROCESS AFTER INPUT. MODULE USER_COMMAND_0100. MODULE MODULE_1. FIELD BOX2. MODULE MODULE_2. FIELD: BOX1, BOX3. MODULE MODULE_3.程序屏幕有4个复选框BOX1,BOX2,
2016-12-30 16:51:07 1043
原创 SOAMANAGER 无反应/打不开
输入SOAMANGER左下角提示正在启动..一闪而过,并没有弹出浏览器。因:某些版本不支持Chrome。。。 解决: 提前打开ie,然后输入事务码即可..或者打打补丁
2016-10-26 10:55:16 11480 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人