- 博客(26)
- 收藏
- 关注
原创 SAP-ABAP开发-DIALOG补充
执行顺序:执行MODULE A => 执行MODULE B => 将数据从ABAP/4工作区传到screen工作区 =>显示界面 => 点击回车 => 将数据从Screen工作区传到ABAP/4工作区 => 执行MODULE C => 执行MODULE D。
2024-11-08 17:34:36 429
原创 SAP-ABAP开发-ONLINE 程序、DIALOG屏幕开发
Report程序:1类型程序 制作报表,数据列表(Data List)输出Online程序:M类型程序 查询数据,录入、修改、删除等Module Pool 程序:以Module Pool形态进行业务流程的逻辑处理Online 程序,强调用Online Transaction来处理业务流程进行过程Screen 程序,主要使用Screen(及屏幕对象),并实现界面间Flow Logic(流逻辑)
2024-11-07 17:21:07 1070
原创 MRP元素数据
MRP 元素数据放的是行项目的来源,比如 “40021116314/001000/0001”,相对应的 MRP 元素是 CustOrd。则表示 MRP 清单的行项目来自于销售订单“40021116314“的 1000的项目;在开发报表的过程中,需要对MD04后边的表数据里面的不同MRP元素字段理解清楚对应的。49/000020/0000",相对应的 MRP 元素是 Delvry,则表示对应的是外向交货单的 8002192249 的 20 行。发现采购申请、采购凭证、采购订单都属于预留/相关需求。
2024-11-07 14:57:32 209
原创 LEFT JOIN和INNER JOIN 以及 FOR ALL ENTRIES IN
在ABAP开发中,JOIN、LEFT JOIN、INNER JOIN以及FOR ALL ENTRIES IN是用于将两个或多个表中的数据结合起来的不同方法。是一种特殊的循环结构,用于优化对内表的查询。它通常用于将一个主数据表与一个或多个从数据表进行连接,这种循环结构会为主表的每一行创建一个查询,并将这些查询合并成一个单一的数据库请求,这样可以显著提高性能。【在写开发报表的时候,遇到多表取数,重温数据库里面的集中多表取数的方法。如果某个表中的行在另一个表中没有匹配的行,那么这些行将不会出现在结果中。
2024-11-06 10:50:48 727
原创 SAP-ABAP开发-FUNCTION ALV 补充
可以使用超链接等方式增加内容较为复杂的表头增加子程序,传入参数参照(CL_DD_DOCUMENT ),使用方法实现增加表头内容修改ALV调用函数,向I_CALLBACK_HTML_TOP_O_ PAGE传值子程序名称可以使用事务代码SE24查看类CL_DD_DOCUMENT,以及定义的属性及方法。在获取数据时,对颜色字段进行赋值,例:GSMARD-COLOR='C300' ,设置layout,将INFO FIELDNAME字段,赋值为内表中颜色字段名称。'N' =既能选择标准布局,也可选择指定用户布局。
2024-10-30 15:53:41 580
原创 SAP-ABAP开发学习-FUNCTION ALV
存放自定义数据文件的数据,以及在ALV中显示。建立事件清单(Event Catalogs) 并需定义事件块,否则出错,并且函数ALV调用事件要在最后。因为事件块的执行是按照顺序的。在调用函数生成ALV过程中,可以进行用户操作使用回调函数(CALLBACK)的形式实现交互。事件块: FORM PAGE_HEADER. ENDFORM.字段说明调用ALV函数返回的程序设置ALV程序内的按钮设置按钮功能,传输FORM名称表头动态表头隐藏ALV基本按钮IT EVENTS。
2024-10-28 20:57:08 1473
原创 SAP-ABAP开发-按钮的三种调用方法
这里调整模板是指在系统基础上调整,里面原系统的按钮都在,也可以自己在里面添加。,在 功能组里面找到该状态名,右键复制,再回到自己的程序就已经存在了,直接调用。在程序包中右击创建GUI状态,创建使用自己需要的按钮。右键GUI状态点击创建到界面后,点。注意的是,这里调用后会覆盖掉原来的系统的按钮。2、不覆盖系统的情况下加上自己创建的按钮并调用。3、复制其他程序里面按钮调用。转到---》调整模板。
2024-10-28 20:25:50 275
原创 SAP-ABAP-宏
在程序里面需要重复使用同一组语句时,可以对程序进行封装,最常用的是PERFORM 关键字。也可以使用宏,如下例。可以一行一行传值,各参数值之间用空格分开;或者用一个抬头把需要传的合并起来。注意的是块语句的结束是最后一行 . 结尾。定义的时候也是在DEFINE END-OF-DEFINITON. 内。宏是基于占位符设计的 &1 &2...对应参数传值,每个宏最多定义9个参数。
2024-10-28 10:03:37 205
原创 物料删除后,依旧有MRP计划需求
一般情况MRP运行后会跟新系统里面的计划需求,覆盖掉之前的,但是物料已经打上删除标记,原来删除前的计划需求并不会随着MRP运行消失。起源于一个物料删除了,但是之前的计划需求在MD04里面依旧存在,并在系统表里面依旧存在。T-code: DB02 找到SQL编辑器,输入查询条件,找到对应的数据。解决方法:在系统表里面找出来删除物料的计划需求,手动删除计划订单。记录MRP操作过程中系统出现的问题:已经产生的计划订单如何删除。
2024-10-25 17:33:23 412
原创 SAP-ABAP开发-SMARTFORM设计2
创建,选择系统条形码 更改;将新的名字文本填写好后,选择QRcode 2005一路✔保存就好。创建后返回到SMARTFORM 样式 里面,在字符格式右键创建节点,将刚刚创建的条形码名称输入,激活保存,再返回SMARTFORM 表单。直接赋值:激活后进入调试界面,点击执行,进入参数赋值,返回即保存,调试打印预览。调用表的信息:分别在表格接口和全局定义里面定义变量关联表体和结构体。1、创建二维码:T-code SE73 创建系统二维码。以开始,以结束,变量以&开头。
2024-10-25 11:31:14 280
原创 SAP-ABAP开发-smart forms设计
在执行SMARTFORM时把内表中的数据填充到所画的表格当中,并显示出来。可以创建FORM的同时,生成该表单对应的功能块,从而为FORM和ABAP程序的交互提供参数接口。在%PAGE 右键创建需要的:注意这里插入的图片不是本地的图片,可以选择图片清单。注意的是这里的标准段落可能不是P1,这里可以修改,只是不能空,这里只是举个例子。创建好的样式回到表单,在全局设置里面的表格属性里面修改样式,激活。右键段落格式创建,并将创建好的格式附到表头数据里面,不然激活会报。注意这里导入的图片格式是.bmp格式。
2024-10-23 11:07:11 539
原创 SMARTFORMS创建/编辑文本时报错Object 12 does not exist
SAP系统是GUI 800版本,在SMARTFORMS创建/编辑文本时报错Object 12 does not exist,百度查询是缺少的补丁。按照上面这位博客的方法成功解决!*小计操作出现的问题。
2024-10-23 10:44:14 196
原创 SAP-ABAP开发-函数
注意的是,左侧一定是清单里面定义好的参数,右侧一定是对应函数传入的值即当前函数调用的参数。如果函数体的错误有了修改,把整个生成的函数删掉,然后重新调用。如果在处理函数模块时出现应用程序错误(例如,值不适于计算),函数模块就会提出相应的异常。EXCEPTIONS:函数中定义的异常自动分配不同数值,当异常被提出时,SUBRC被自动赋值为相应的数字。调用的EXCEPTIONS块中,且异常指定的返回代码输入到调用程序的sy-subrc系统字段中。SE37, 选择Goto,函数组,直接创建。函数名称为单引号+大写。
2024-10-22 11:07:37 509
原创 SAP-ABAP开发-屏幕按钮的创建和使用
打开功能键,在两个退出里面至少设置一个类型为E,该类型可以避免所有权限设置退出。双击进入功能属性选择功能类型。LEAVE TO SCREEN 0 . "返回到上一个界面。MESSAGE ES000 WITH '下载'.菜单栏里面加功能,展开的左边都是code,右边都是文本。把创建的功能键放到应用里面,填写对应的名字回车即可。激活保存,回到程序界面使用下面语句调用刚才的定义。LEAVE PROGRAM ."退出程序。可以设置一些功能键,输入文本后回车完善相关信息。在程序中使用程序包,把调用写进去。
2024-10-17 12:14:02 671
原创 SAP-ABAP开发-屏幕事件控制
这个事件是报表程序选择屏幕事件和初始化事件完成后默认进行的事件。在程序中在第一个FORM -ENDFORM之前的语并且没有声明相关事件的语句都会默认按照顺序插到Start-of-selection事件的开始位置。另在使用逻辑数据库时,这个事件也是逻辑数据库获取数据开始的事件,既该事件在单击按钮后触发。该事件应用于所有数据选择处理完成,即START-OF-SELECTION相关执行事件执行完成,但输出屏幕还未显示之前,在实际的应用于一些执行结果的检验等。
2024-10-16 19:56:06 398
原创 SAP-ABAP开发-界面基本绘制
选择屏幕用于输入数据选择的选择标准;选择屏幕也是屏幕,这些屏幕是根据源代码中的声明语句生成的。通过选择屏幕,ABAP为报表程序提供了一个交互元素,可以定义选择屏幕而不必设置具体对话编程细节。可以使用简单的语句创建字段、复选框或单选按钮,并设计屏幕布局。系统自动处理屏幕绘制器的实际任务。 包表程序执行后,总是先处理选择屏幕。用户可以在改屏幕中输入字段或选择标准,对于每个报表,输入的值可以通过屏幕便是存储。 用户可以通过PARAMETERS语句给变量分配值;通
2024-10-15 11:20:28 703
原创 SAP-ABAP开发-内表操作
DATA: BEGIN OF MYITAB OCCURS 0, "自带工作区的内表,工作区名称与内表名称相同 COL1 TYPE I,"定义带工作区的内表,工作区名称与内表名称相同。Sorted:排序表(有索引,有关键词,默认根据关键词升序)内表:内表是内存中建立的一个临时表,你可以在程序运行时对表中的数据进行,插入,修改,删除等操作,程序跑完了,就会被释放。将内表中相同的字段合并,若有类型为I的字段,则将其值加总。
2024-10-12 20:03:30 1124
原创 SAP-ABAP开发-变量创建及内表
DATA声明的是对象;结构是单行的,内表是多行多列的;SY-SUBRC :系统执行某指令后,表示执行成功与否的变量,'0' 表示成功。SY-TABIX:当前处理的是internal table 的第几笔。常量一定有VALUE,常量值一旦被定义,即被长期保存在内存,其值无法改变。SY-TCODE: 当前执行程序的Transaction code。SY-UNAME:当前使用者登入SAP的USERNAME。②标准类型:C,N,D,T,F,P,STRING...SY-INDEX:当前LOOP循环过的次数。
2024-10-11 20:14:09 892
原创 SAP-ABAP开发-数据类型与数据对象
数据类型可适用于定义屏幕字段、定义内存中的数据对象、定义子程序(Subroutine)的参数、定义面向对象中类方法的参数、定义Function Module中的参数。在ABAP语句中,使用变量之前,必须针对变量进行声明。3.C类型,可以赋值数值,也可以赋值字符,还可以混合,不过取值时如果是数值类型靠右取值。- 数据类型描述了数据对象的技术属性(类型和长度),用于定义数据对象。- 数据元素(DataElement):用于定义一个的字段类型的变量。- 内表类型(TableType):用于定义一个内存中的内表。
2024-10-10 15:08:13 179
原创 SAP-ABAP开发-数据字典
一张表的视图可以维护数据,维护了视图之后,表的数据也改变。3. Maintenance view:允许你进行对几个表的数据进行修改,参与连接的表必须存在外键,他们的连接条件是不能自定义的.要维护和显示数据必须要生成表格维护对话框(在“表格维护生成器”中维护),所有主键要在视图的字段里。外键类型:描述了外键字段在外键表中的类型,①非关键字/非基数:外键字段不是主键 ②关键字:是主键字段或者能够唯一确定记录 ③文本表关键字:外建表是主表的文本表,文本表中除了该字段和 语言码以外没有其他可以确定唯一性的字段了。
2024-10-08 20:08:11 624
原创 SAP-ABAP开发-基础知识
Module Pool(Type M——模块池) 执行Module Pool必须至少定义一个Tcode用来指定initial screen 可以通过screen attributes来静态指定screen的调用顺序,或者通过程序代码来动态指定screen的调用顺序 一些类型的程序并不能够被直接执行,它们用来作为modularization units的容器,被其他可执行程序调用。Tcode——SE38,创建程序,修改,激活等(一般不使用检查,检查只能检查单层)S: System Program 系统程序。
2024-10-08 15:51:31 928
原创 SAP学习-移动类型-应付账款
移动类型,在库存管理里中有主要作用,和其他影响因素决定了物料中哪些库存或者消耗的帐目中更新,当输入凭证和更新数量字段时,还决定了屏幕的结构。F-44付款清账,进去后点击处理未清项目,填写科目,双击金额,点击小太阳图标,输入账户和金额,再点击小太阳标志,再模拟凭证。T-code OMJJ 可以看到移动类型关联的科目分配。SAP中预付账款的T-code是F-48/F-02。标准清账就是借贷相等了,部分清就是还没有平账。MB5S 查询已收货未发票校验的采购订单。FBL1N 明细账查询。
2024-10-02 15:22:32 325
原创 SAP-FICO学习
应收账款【客户主数据层次】其主要的核心业务流程有客户主数据维护流程、信用额度维护流程、销售发票过账流程(集成|非集成)、预收款流程、收款流程、应收外币业务流程、应收模块月结年结流程。应付模块的核心任务有应付流程、供应商主数据维护流程、采购发票过账流程(集成|非集成)、预付款流程、应付外币业务流程、应付模块月结年结流程。总账核心业务流程:主数据维护流程、总账凭证过账流程、总账未清项处理流程、外币账户评估流程(资金账户)、总账月结年结流程。采购入库时,借:存货 贷:应付暂估。
2024-10-01 17:24:59 305
原创 SAP-PP-委外订单创建
委外件分两种:标准委外和工序委外。工序委外是指工厂生产产品A,需要经过多个工序,其中部分工序因为工厂的产能或其它原因需要外部加工商来完成,加工商完成该道工序后将产品送回工厂继续完成其它工序,然后公司需付给供应商加工费的方式。在创建委外工序的时候,控制码选择ZP02外协加工(没有自开发配置就选系统里面的标准外部加工控制码),标准文本码可以创建WX00,这里有个必要的维护栏填写完整保存就好。在发料的时候,工序委外是正常的工单领料,移动类型是261;创建生产订单,订单类型选择委外,在工序里面维护委外工序并。
2024-09-30 11:47:17 193
原创 SAP-PP-无价值工厂问题
基本上不会出现生产订单上的物料完全是无价值的业务场景,BOM也不能跨工厂挂在一起,可以在生产订单的组件上修改(增加)无价值工厂中的物料。从0开始学习SAP相关,负责PP模块,目前已经接触到测试新工厂业务流程,记录在学习过程中遇到的问题。有两种方式(一个是通过生产订单领料、一个是通过成本中心领料)输入需要成本中心领料对应的物料号,按回车键,会带出来文本。再输入成本中心和移动原因,保存,查看物料凭证。最后MB51 查看相应凭证流。1、无价值工厂物料领料。成本中心领料IMGO。
2024-09-27 18:01:11 262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人