- 博客(26)
- 收藏
- 关注
原创 函数READ_TEXT_INLINE
在采购订单中,我们经常用Read_text_inline函数来读取文本信息,主要分为头文本信息,和明细文本信息; 下面是对头文本信息的读取,文本ID号是维护在表TTXID中,每一个文本对象对应一个文本ID号,‘F01’下文本对象有EKKO,EKPO,正是采购订单头与明细的文本对象, INLINE_COUNT指定读取的行数,决定了IT_INLINES中文本行,Language是系统语言符号,Name是订单号,如果是头文本信息,则这里直接是采购订单号,之后object为EKKO;如果是明细文本信息
2010-12-20 21:59:00
2112
原创 OLE系统简述与方法
<br />Excel的操作目前一般两种方式:OLE,DOI;这里简单介绍一下OLE;<br />ABAP支持基于开放对象数据接口自动连接技术,提供了调用功能的桌面应用程序被整合到ABAP系统作为OLE2的自动服务器(如:excel, word)。 当一个ABAP程序调用OLE的时候,SAPGUI充当OLE的客户端,桌面应用程序为OLE(如Excel,word等)的服务器端;<br /><br />所有的ABAP操作都将写入表TOLE中维护视图:T_code: SOLE ;<br /> TOLE表
2010-12-13 22:38:00
6175
转载 SAP数据按格式保存到EXCEL(OLE)
<br />REPORT ZZBGS700 MESSAGE-ID Z1.<br />*----------------------------------------------------------------------*<br />* Topic: Example: Calling up Microsoft Excel. *<br />*
2010-12-08 15:06:00
4256
原创 read table ..... binary search问题
Read Table 的语法很多,这里说一种特殊情况,Read Table 中查询的时候对标准内表经常有一种二分优化查找,用Binary search的时候首先必须要有查询条件;但如果查询条件满足的项目不至一条时,这时得到的是这些数据中索引排在最前面的数据; 如: 001 0001 20100101 001 0001 20100103 001 0001 20100105 READ TABLE itab into wa with key
2010-11-09 21:23:00
5071
原创 增强方式、方法总结
增强(enhancement)的概念其实很广,SAP标准系统之上的所有二次开发,我们都可以理解为增强,做增强的目的就是标准的sap正常的业务系统不能满足实际需求,所以我们在标准的系统基础进行增加不同的功能来达到不同企业的要求,换句话说我们今天开发过程中所有的ADD-ON都可以说是增强开发。 但作为开发人员所说的增强主要是标准系统事先预留好的接口,根据不同业务需求,进行开发,我们称为增强,又叫出口。比如:1:在业务检查时,比如在某个工厂发货,可以设定在某个库位的出货只能使用某种移动类型。2:在需要界面增强时
2010-11-04 15:17:00
4155
原创 SHD0为系统屏幕定义变式
<br /> 今天碰到有人需要将采购订单中明细中的免费项隐藏,解决这个问题下面举两种方法:<br /> 1。当然是后台配置了,在“IMG-物料管理-采购-采购订单-定义凭证层的屏幕格式 ” 路径的GR/IR控制那一屏中,将字段“GR/IR控制”由可选变为显示即可达到不能随便勾选“免费”项的目的。<br /> 2。SHD0,这是一个开发事务码,用来定义事务变式,除了对于采购订单,其它系统事务都可以用此来做。用这个事务,为采购订单定义新的变式,并将新的变式在SE93中创建对应的事务
2010-11-03 22:53:00
4518
原创 DYNP_VALUES_READ 获取屏幕动态值
<br /> 在网上看到这样一个问题:获得选择屏幕上checkbox的值,如果值为x,则F4弹出保存文件前台窗口,若checkbox为空,则F4弹出打开文件前台窗口,但在ON VALUE-REQUEST的块中得不到最新的checkbox值,很显然这是屏幕流逻辑的问题,逻辑没有走到PAI,下面提供两种方法:1.在CHECKBOX 后面加USER COMMAND让它触发屏幕流逻辑;2.由于方法1要跑PAI就有可能带来需求上的不便,这时可在VALUE-REQUEST中使用FM:DYNP_VALUES_READ
2010-11-01 19:41:00
6002
原创 表格增强 FIELD ENHANCEMENT
<br /> BC425原文描述表格增强如下:<br />* SAP provides two ways to enhance tables and structures with fields.<br />* Structures<br />* Customizing includes ("CI includes")<br />* Both techniques allow you to attach fields to a table without actually having t
2010-10-29 22:29:00
1857
原创 计算内表字节数
<br /> 最近看到论坛上有个问题,在实际SAP与外部系统传递数据时,监控内表数据字节大小的问题,下面写了个小程序,可能存在误差,但不大。误差可能在数字型累加其最大字节上。<br />REPORT ZLC_TABLE_SIZE.<br /><br />DATA: BEGIN OF WA_DATA,<br /> MATNR TYPE MARD-MATNR,<br /> WERKS TYPE MARD-WERKS,<br /> LGORT TYPE MARD-LGORT,<
2010-10-29 22:14:00
1218
原创 物料删除标记
<br /> <br />在SAP系统中的系统表数据一般是不能手动直接添加、删除,所以在系统中会有一个标记字段记录。这里讲物料号的删除。<br />T-CODE:MM06 归档T_code: SARA 其它删除如销售伙伴(VD06)等都差不多。<br />删除标记:可以对物料在不同层次级别上进行删除标记. 它与归档不同,删除标记后是可以改变的,而归档是对物料进行彻底的删除,归档以后将不可用,相当于在数据内存中将数据记录进行删除.<br /><br /><br /><br />编辑---》选择开关<br
2010-09-16 20:22:00
19095
原创 内、外部号码范围配置
<br /> 在SAP中号码范围是比较重要的概念,前面《利用Number_Get_Next产生流水号(採番)》文章提到过,SAP中的很多商业对象都是以编号来操作定义的。同时涉及到外部编号、内部编号,内部编号只能是数值,没有字母;外部编号范围广,可以有字母;这里以简单的客户为列:<br /> 维护方式很多,这里我就提了,T_CODE: SNRO 如下:<br /><br /><br />客户对象“DEBITOR”,显示号码范围,如下:<br /><br /><br /> <br />添加自定义范围,后面的
2010-09-05 23:30:00
9464
1
转载 MM模块形象化描述
<br /> 物料(Material)的含义极广,任何看得见看不见的东西几乎都可以称之为物料。在SAP中,将重点关注用来直接或间接为企业增值的物品,如原材料、半成品、成品、水、电、蒸汽、空气、设备、仪器仪表等等。同时,也可以把用于销售的、非物质形态的“服务”作为物料来管理。<br /> 我们将这些实物或者非实物的东西纳入物料管理,为其编码、分类、收集并记录它们的一般或者特殊属性(如形态、颜色、规格、重量、基本单位、销售单位、运输单位、存放条件、生产批次等),这些工作将有利于企业对自有资源的统一管理,也是日
2010-08-29 11:12:00
1317
转载 SAP MM 评估类型 评估类别
<br /> 同一物料的使用,既有“自制品”,又有“外购品”,并且其来源不同,如同一外购品由不同的供应商提供,价格也不相同。也就是说:同一物料有不同的价值指派,即在不同的条件下,同一物料可能有不同的价值。<br /> <br /> 将“自制品”和“外购品”分成两个物料编码进行管理,将是显而易见的成本控制方法。却违背ERP系统中的重要原则——“一物一码”原则。<br />SAP系统提供的“分割评估”(Split Valuation)功能是解决此类问题的完美解决方案。<br />什么情况下将启用“分割评估”
2010-08-26 23:01:00
17169
原创 SY-REPID 与 SY-CPROG
今天,两位同事在说这个问题,问到SY-REPID是不是废弃了,都用SY-CPROG。 首先,它两的解释为 sy-repid is the name of the current program. sy-cprog is the name of the calling program. 写个简单的程序,调个FM ,你就知道区别了,当程序进入FM的时候SY-REPID将变成了F-Pools的名了,SY-CPROG是没有变
2010-08-26 21:11:00
5780
3
原创 销售凭证与发货凭证
在SD模块中,销售订货单主要关系到表VBAK(头),VBAP(明细),同时订货单在发货时发货单关系到表LIKP(头),LIPS(明细)。 订货单与发货单是1:N即一对多的关系,在SAP中没有订货单对发货单N:1。一张订货单下可能对应多张发货单,这根据订货单发往的point. 订货单和发货单连接是通过VBFA(销售凭证flow)来的, 先前的销售和分销凭证与后续的销售与分销凭证由字段VBTYP_N决定,下面是VBTYP_N值范围: 这个值决定先前和后续的凭证,如果值为‘交货’,那对应的就是订货单与发
2010-08-25 21:49:00
6933
原创 SAP 版本查看方法
英文版: click menu-->sysztem-->status-->system data-->Component version 中文版: 点击菜单-->系统-->状态-->SAP系统数据-->组件版本 就可以看到你用的SAP是什么版本了,如SAP ERP Central Component 5.0就是SAP ECC 5.0,同时也可以看到你的Database system版本。
2010-08-24 20:30:00
19826
原创 BAPI与业务对象的创建
做SAP技术的可能最开始接触过BAPI,它在SAP内部组件以及SAP与非SAP内部组件之间的技术整合和业务数据交换过程中起着非常重要的作用。做技术的一听到概念性的东西就头大,这里我将用一个实例来描述一下BAPI的主要用途与诞生,希望对大家有帮助。 BAPI是SAP业务对象中提供给外界的一个接口,用来与外界通信,外界可以通过这个接口对此业务对象进行操作;这里例子业务对象为公司员工;1. 业务对象数据的创建,维护;在数据字典中维护一张员工表ZLC_EMPLOYEE,包含工号、姓名、电话、邮件信息维
2010-08-24 19:09:00
2281
2
原创 表格维护生成器
在SAP中的数据维护有很多种方式,这里把刚试过的一种方式----表格维护生成器创建自己想要的数据维护视图来维护数据的过程与大家分享,希望有用。1、SE11自建表或者找个可维护的表。这里用自建的一张表ZLC_EMPLOYEE2、实用程序—》表格维护生成器(T_code : SE55) 表/视图:输入要维护数据的表名/视图名 输入权限组/权限对象 函数组(定制的维护程序生成一个函数模块,所以要选定函数组)。 维护类型:首先要根据自己维护数据的要求是批量维护,还是单个维护。“一步”代表是批量维护,此时
2010-08-19 23:16:00
9511
1
原创 SAP 测试技巧
在一些项目中,客户要求写完整的文档,令人烦的就是贴图,将测试点结果截图下来以方便顾问查看。 今天遇到几个问题,不管有无用处,下面将解决办法分享一下。 1、遇到一个更改采购订单凭证的BAPI,要求测试BAPI出现ERROR的时候; 解决:前台ME22N编辑更改的采购订单凭证,这时候,这张采购订单将被物理锁定,其它操作都无效。此时再去跑这本程序,就会得到ERROR信息! 2、对于加锁和解锁函数的调试,就更好解决了,另开一个SESSION运行或者直接SE37锁定,再调试程
2010-08-19 21:03:00
4698
1
原创 成本中心 成本要素
成本中心是产生成本的实体(如公司内的部门或者车间等),而成本要素是对成本的一种分类,即这笔钱(成本)花来做什么了,如付了水电费了,则水电费就是一个成本要素,成本要素分为初级成本要素(主要成本要素)和次级成本要素(辅助成本要素),大家的翻译可能不同,英文分别是primary cost element 和secondary cost element 。 举个最简单的例子来讲,人事部新买了一批办公用品,则人事部可以定义为一个成本中心,而 管理费用--办公用品 可以定义为一个成本要素。 初级成本要素
2010-08-17 20:45:00
6591
原创 利用Number_Get_Next产生流水号(採番)
今天做了一个采购订单的採番,“採番”是日语词,通俗的讲就是按自己定义的规则生成流水号 。下面分享一下产生流水号的步骤: 大家可以试试!1. 系统中设定流水号使用T-Code SNRO来创建一个流水号标识对象输入Object ZLC_001,然后单击,然后输入Short text, Long text, Number length domain在写程序的时候应该会另外创建,这里测试就使用料号的Domain来做,其他的参数使用默认值就可以了,然后保存输入的资料。系统提示创建
2010-08-16 20:56:00
5094
原创 SAP中动态LABEL实现
在一般的WINDOWS应用程序开发工具里,LABEL控件所显示的文本是可以在程序运行过程中通过代码来修改的。但在SAP中的LABEL控件是不行的,它只能显示设计时赋予它的文本,不能通过程序动态的改变。但一般情况下,项目有对这样的需求。怎么来做呢?在SAP中,大多是采用文本框TEXT控件来实现的,在将文本框控件的属性设为“输出专用”状态,这样文本框就变灰色,看起来与LABEL标签一样!
2010-07-14 23:41:00
1235
原创 调试SAP中弹出式窗口
有的时候我们会通过调试系统屏幕来查看屏幕流程,普通的屏幕我们可以直接通过/h来调试,但当出现为对话框时,如上传/下载屏幕CG3Z/CG3Y。 那么该如何才能够做到这点呢? 只好借助gui的特性,在操作系统级别做一些事情来实现了。具体实现方法: 在本地机器上新建一个文本文档,命名为“debugger.dat”; 如果需要调试弹出式窗口的话,把这个文件拖到这个弹出式
2010-04-26 22:22:00
2498
转载 MSN导致SAP不能正常登陆解决
msn导致sap不能登陆 装了sapgui,能够ping通sap服务器,可是就是不能登陆sap,原来只要装了gui,连上vpn就可以登陆了。问题出在哪里呢?昨天查了好多才找到原因,罪魁祸首就是msn 7.5,安装之后会修改注册表的一个键值的类型,导致了sap不能登陆。解决方法如下: 修改注册表的键值: HKLMSystemCurrentControlSetServicesT
2010-04-26 22:16:00
1267
原创 ALV中调用Excel inplace时没能传递数据实例解决
在很多用到ALV的项目开发中,会有调用Excel inplace功能直接在excel中查看数据(sy-ucomm = &VEXCEL), 可是当我们点该按钮是, excel是成功出现了,可是alv grid的数据却没有写到excel中. 下面通过一则简单的实例程序,来介绍问题的解决:*&-------------------- ----------------------------
2010-04-16 22:41:00
1235
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人