01 2013 档案

摘要:对内表的定义,我只说下有没occurs的区别。**DATA: BEGIN OF itab OCCURS 0,* matnr LIKE mara-matnr,* maktx LIKE makt-maktx,* END OF itab.**SELECT * FROM makt INTO CORRESPONDING FIELDS OF TABLE itab .**LOOP AT itab.* WRITE:/* itab-matnr,* itab-maktx.*ENDLOOP.DATA: BEGIN OF itab, matnr LIKE mara-matnr, maktx LIKE makt-mak 阅读全文
posted @ 2013-01-31 23:57 hanmos 阅读(7364) 评论(0) 推荐(0)
摘要:用自定义关键字读取单行要从有自定义关键字的内表中读取单行,请使用READ语句的WITH KEY选项,用法如下:语法READ TABLE <itab> [INTO <wa>] WITH KEY <key> [BINARY SEARCH].用 INTO 选项可以指定目标区域 。如果表格有表头行,则可以忽略 INTO 选项。这样,表格工作区域就成了目标区域。系统读取 <itab> 中匹配 <key> 中所定义的关键字的第一个条目。关于二分法搜索选项的详细信息,参见二分法搜索。如果找到有适当关键字的条目,则将系统字段 SY-SUBRC设置为0 阅读全文
posted @ 2013-01-31 23:21 hanmos 阅读(470) 评论(0) 推荐(0)
摘要:1. sy-repid is the name of the current program. sy-cprog is the name of the calling program.比如在一个Function里面设置断点,sy-repid的这个FM所在FunctionPool的名字,sy-cprog是调用这个FM的Report的程序名。2. sy-repid 不可以人为更改,sy-cprog可以 阅读全文
posted @ 2013-01-31 18:33 hanmos 阅读(557) 评论(0) 推荐(0)
摘要:Description:SY-SUBRC:语句执行后的返回值,0表示成功SY-DATUM:当前服务器日期SY-UZEIT:当前服务器时间SY-ULINE:255长度的水平线SY-VLINE:垂直线 SY-INDEX:循环说执行的次数SY-TABIX:内表循环的次数SY-DYNNR:当前Screen号SY-MANDT:当前登录的Client号SY-STEPL:返回当前操作的屏幕行号(Table Control)SY-LOOPC:当前表格控件在屏幕中的总行数(Table Control)SY-UCOMM:PAI所出发的功能代码 SY-DYNNR:当前屏幕号SY-MSGID:Message Clas 阅读全文
posted @ 2013-01-31 18:32 hanmos 阅读(7038) 评论(0) 推荐(0)
摘要:函数名描述ABAP_DOCU_DOWNLOAD Download ABAP documentation in HTML format.ARFC_GET_TID – 以十六进制形式返回终端的IP地址。ADDR_GET_COMPLETE_ALL_TYPES 功能:获得地址的相关信息BP_EVENT_RAISE –在 ABAP/4 程序中触发一个事件。BKK_ADD_MONTH_TO_DATE 日期的加减BAPI_COMPANYCODE_GET_PERIOD功能:获得公司的会计年度以及过账日期CONVERT_OTFSPOOLJOB_2_PDF - converts a OTF spool to PD 阅读全文
posted @ 2013-01-31 18:29 hanmos 阅读(2549) 评论(0) 推荐(0)
摘要:clear itab,仅清空HEADER LINE,对内表数据存储空间不影响,保留内存区。 refresh itab,不清空HEADER LINE,清除内表数据存储空间,但保存内存区。 free itab,不清空HEADER LINE,清空内表数据存储空间。clear itab[],清空内表数据存储空间里的内容。例子:REPORT ZZZZZZZZZ.types:begin of head, mantr(10) type c, id(10) type c, end of head. data gt_head type table of head with header line.gt_head 阅读全文
posted @ 2013-01-31 18:27 hanmos 阅读(10458) 评论(0) 推荐(0)
摘要:分配字段串 组件可以用 ASSIGN 语句将字段 串的特殊组 件分配给字 段符号,过 程如下:语法ASSIGN COMPONENT <comp> OF STRUCTURE <s> TO <FS>.系统将字符 串 <s> 的组件 <comp> 分配给字段 符号 <FS>。 可以指定 <comp> 为文字或变 量。如果 <comp> 属于类型 C 或字段串( 象组件一样 没有内表) ,它指定组 件的名称。 如果 <comp> 有任何其它 基本数据类 型,将被转 化为类型 I(参见 类型转换) 阅读全文
posted @ 2013-01-30 10:58 hanmos 阅读(1210) 评论(0) 推荐(1)
摘要:================= FUNCTION MODULE (或RFC中) SY-SUBRC 的含义 ================ 使用SELECT语句选择查询: SY-SUBRC = 0: 至少有一行数据,当ENDSELECT语句执行完,SY-DBCNT中保存着记录的个数。 SY-SUBRC = 4: 没有数据。 SY-SUBRC = 8: 只有使用“SELECT SINGLE FOR UPDATE”时才会有, 表示: WHERE条件指定的记录不止一行,结果是没有记录被选中。 使用INSERT语句,向表中插入一行,必须注意INSERT的顺序与表中字段的顺序一致: SY-SUBRC 阅读全文
posted @ 2013-01-30 10:42 hanmos 阅读(468) 评论(0) 推荐(0)
摘要:英文好的可以直接看下面2个链接,第三个是经过翻译的,本文中很多也是直接从第三篇拷贝过来的。http://help.sap.com/saphelp_nw70ehp1/helpdata/en/1d/ca10d858c2e949ba4a152c44f8128a/content.htmhttp://help.sap.com/saphelp_nw04s/helpdata/EN/1d/ca10d858c2e949ba4a152c44f8128a/frameset.htm用户出口增强,定义方法:1.在query designer中,右键单击要建立变量的characteristic,选择New variabl 阅读全文
posted @ 2013-01-10 11:33 hanmos 阅读(4570) 评论(0) 推荐(0)
摘要:最近在做PI和BW的一个接口,从其他数据源发送数据到BW的“直接更新”类型的CUBE,确切的说应该是BCS单户数据。当中,遇到了2个问题: 1. DSO的最多只能设置16个主键,而我们的模型需要设置超过16个主键? 2. 上载数据如何实现增量上载? 解决方法: 1. 自定义一个字段,作为主键,其他字段都作为数据字段。在开始例程中判断数据是否已经存在,存在,取原数据的主键;不存在,取时间戳和数据包上载记录的顺序号做为DSO的主键。 2. 利用DSO的增量机制,KEY FIGURE的Aggregation属性设置为OVERWRITE,上载数据默认为后镜像数据,每次上载的数据覆盖以前的数据,这样,对 阅读全文
posted @ 2013-01-10 11:20 hanmos 阅读(725) 评论(0) 推荐(0)
摘要:在调优项目中,特别是针对数据量大并且需要新建模型的项目,对历史数据的处理需要重点关注。庞大的数据量对数据的历史数据上载到新模型产生的冲击要能提前预判到,因此前期的调研和方案的设计需要重点关注,细节的处理同样左右调优的质量。1、使用组合模型(标准DSO+写优化DSO)对于数据量庞大,并对数据需要进行多次调整的企业需求是,SAP标准Multiprovider+CUBE+DSO方法很难完全满足客户需求。例如,在保证历史数据的一致性的同时,还需要不定期调整和删除历史数据,同时随着历史数据不断增长,标准DSO的激活将带来极大的风险。智扬信达BI团队通过实践,建议在新建调优模型时,采用Multiprovi 阅读全文
posted @ 2013-01-10 11:17 hanmos 阅读(924) 评论(0) 推荐(0)
摘要:sap的反记账功能类似于通常说的红冲,以红字的方式显示,但是在凭证制作时是不能指定红字的。SAP系统对于总帐凭证的借贷方金额是通过借方使用正数,贷方使用负数的方式在数据库中存储,凭证的每个行项目都会有一个记账码,这个记账码又对应一个借贷方向,所以凭证的行项目又会同时记录一个借贷方向,这些可以直接通过BSEG表查看,例如:正常的业务凭证:借:1001现金 4000 贷: 1002银行存款 4000在SAP系统中存储的数据为: 记账码 借贷标识 科目 金额 40 S 1001 4000 50 H 1002 4000如果用户需要制作一张反记账凭证,例如需要制作一张上面的凭证的反记账凭证,需要在凭证制 阅读全文
posted @ 2013-01-10 11:12 hanmos 阅读(16619) 评论(0) 推荐(2)
摘要:在BW Query变量处理类型中,有替换路径一项,本文介绍一下替换路径变量的使用步骤。替换路径的作用与量Query之间,将第一个Query运行的结果(某一个特征),做为第二个Query的该特征的限制条件输入。即第二个Query的输入参数有第一个Query的运行结果决定。使用替换变量方法并不复杂:1、创建Query1,Query1的创建没有任何要求(就是一个最普通的Query),其中包含需要使用的特征即可2、创建替换路径变量。在需要创建替换路径变的特征值上创建新变量,处理由选择:替换路径,在替换路径页签中输入Query13、创建Query2,将该替换路径变量拉到过滤器,或者行列限制即可。4、执行 阅读全文
posted @ 2013-01-10 10:35 hanmos 阅读(2407) 评论(0) 推荐(0)
摘要:本人做项目经理工作多年,感到做这个工作最要紧的就是要明白什么是因地制宜、因势利导,只有最合适的,没有什么叫对的,什么叫错的,项目经理最忌讳的就是完美主义倾向,尤其是做技术人员出身的,喜欢寻找标准答案,耽误了工作进度,也迷茫了自己。以下是本人一些做项目的个人体会,写出来供大家指点,在讨论过程中共同提高水平。 项目开始阶段是一个最重要的阶段。项目经理在接手一个新项目的时候,首先要尽可能地多从各个方面了解项目的情况,如: 1.这个项目是什么项目,具体大概做什么事情,是谁提出来的,目的是解决什么问题。在国内很多客户都很不成熟的情况下,千万不要根据项目的名称望文生义地去想象项目的目标。一个名为“办... 阅读全文
posted @ 2013-01-10 10:34 hanmos 阅读(3639) 评论(2) 推荐(0)
摘要:两个特性在什么情况下可以放在一个dimesion中?customer与material可以放在一个维度中吗?从技术上来说,放在一个dimesion与分别放在不同的dimesion中都是可以的,但是从业务的角度来说,我们就需要考虑哪种方式更好。一般来说,当特性是1:N的关系时,可以放在一个dimesion中,当特性之间的关系时M:N时,放在一个维度中可能就不是那么好,这主要体现在性能方面。因为这样放置,维度表可能会很大。这要从cube的多维结构来分析。我们知道 cube是一种多维存储的数据结构,它的实现是基于多张关系表格,而维度表就是其中的一张关系表格。我们在设计cube的维度的时候,实际上设计 阅读全文
posted @ 2013-01-10 10:14 hanmos 阅读(608) 评论(0) 推荐(0)
摘要:Enhancement : RSR00001EXIT_SAPLRRS0_001 INCLUDE ZXRSRU01 .增强代码如下:ATA: L_S_RANGE TYPE RSR_S_RANGESID. DATA: LOC_VAR_RANGE LIKE RRRANGEEXIT.CASE I_VNAM."变量名称 WHEN 'ZVPRENYU'. IF I_STEP = 1.输入前(QUERY里定义的变量为"用户出口" "单一值" "强制输入" "准备输入-否")重要 DATA: zcurmo 阅读全文
posted @ 2013-01-10 10:09 hanmos 阅读(1071) 评论(0) 推荐(0)
摘要:前言本文的目的是讲述如何在BW中使用ABAP编程。在每一个项目中,正确使用ABAP编程会对正确的业务建模起到积极作用。在设计和蓝图阶段,一个核心的功能流程是类比于如何在BW中完成类似于R3中的业务流程。SAP提供了多种路径来实施这样的业务流程。本文就会讲述哪里、如何在BW中进行ABAP编程。同时,也会给出一些基本的SAP推荐,对于如何改善ABAP代码的执行。文中的例子会包括R3数据源的变换,创建通用的R3数据抽取器。在BW中,大部分对象都是内部关联的,我们可以在多个目标数据中共享数据。因此,我们需要知道我们是如何处理数据、更新记录和在哪里使用ABAP程序控制这些更新。在BW中我们可以用ABAP 阅读全文
posted @ 2013-01-10 10:07 hanmos 阅读(1036) 评论(0) 推荐(0)
摘要:SAP 用户权限 用户权限解剖:通常basis会使用PFCG做权限管理,时你保存时会产生一个系统外的prifile name, 记得SU01时用户有profile 和role两栏位吗?它们的关系如何呢?首先明白几个概念. 1.activity 这样说吧,我们从activity谈起,activity是什么意思这个你查下 字典也就知道了,对就是规定可做什么动作,比如说不能吸烟只能喝酒,不能多于2两, 不对,这是我老婆讲的,SAP不是这样子的,是只能insert, update,display什么的. 这些东西当年德国佬是写在tobj表中的. activity 也是可分activity group的 阅读全文
posted @ 2013-01-10 10:01 hanmos 阅读(4988) 评论(0) 推荐(0)
摘要:由于要求在打开报表的时候,弹出一个对话框来输入日期(用于计算)。在“过滤限制”中添加日期特征,右击选择 ,然后在“显示”输入框处选择“变量”,点击“新增”变量按钮。在“处理由”处选择“用户出口”。替换路径功能区为默认.明细处如果你做的变量是不可输入的话就不对任何复选框做选择,如果是可输入性的,则选中变量已准备输入。其他的功能区就保持默认状态即可,然后点击OK按钮。在BW系统中运行CMOD进行做增强。使用"RSR00001" BI: Enhancements for Global Variables in Reporting.代码,双击:ZXRSRU01 进行编写代码:dat 阅读全文
posted @ 2013-01-09 17:26 hanmos 阅读(1409) 评论(0) 推荐(0)
摘要:写在前面的话:有人问起过我关于报表变量的内容,由于没接触过,当时有点懵;特转载此文章,以备学习只用。About Variable:1.Variable 是和InfoObject绑定的,可用于任何含有该IO的query中。2.Variable有以下几种类型:Characteristic:用于限制Char。Text:用于在报表动态显示文本。Hierarchy:用于限制Hierarchy。Hieararchy Node:用于限制Hierarchy Node。Formula: 可以在公式中使用变量,让用户输入一个数,读取某个Char.的属性(例如Prduct的price属性)等来用于计算。Offset 阅读全文
posted @ 2013-01-09 16:52 hanmos 阅读(638) 评论(0) 推荐(0)