0概念使用准确时期
发布网友
发布时间:2022-05-03 07:08
我来回答
共3个回答
懂视网
时间:2022-05-03 11:30
可以通过下图看到report category中的设置和报表选择画面的关系,其中2是决定哪些字段作为条件显示在选择画面中。
创建一个自定义的report category ’ZEMPLOY‘完后保存,然后输入新创建的CATEGORY名字保存退出。
然后se38创建一个程序,输入下面的代码运行就可以看到选择画面了
运行就可以看到效果。
3, 程序编写
3.1 HR数据表定义
由于用到了LDB及HR的表结构与其它模块的不同,所以程序的编写也略有不同,但要比其它模块的更简单。
1
2
3
4
|
REPORT ztest_hr.
TABLES:pernr.
INFOTYPES:0000,0001,0002,0015,0041,0185.
|
程序头部要定义将要用到的HR数据表(如PA0000,PA0001)就是
INFOTYPES:0000,0001.
如果不定义,而在后面使用了该表程序会报语法错误。
而定义好之后在程序中使用时表名是P0000,P0001(而不是pa0000,pa0001)
3.2 get语句
然后用get语句就可以将逻辑数据库中的数据取出来,
Get pernr.
这句是逻辑数据库的专用语法,功能是根据用户输入的选择条件从逻辑数据库PNP中取出相应的数据然后循环,此时的PERNR是一个结构体,会在每次循环时自动赋值。且要注意该句不能写在FORM内部.
1
2
3
4
|
START-OF-SELECTION.
GET pernr.
PERFORM frm_get_data.
|
程序运行时有一个结构体PN,存放的是屏幕上输入的日期及一些基本参数,常用到的是PN-BEGDA及PN-ENDDA。
3.3 宏Rp_provide_from_last
下面介绍一个HR开发中常用的宏,Rp_provide_from_last,标准用法如下:
它的意思是根据PERNR当前的NO.号找表P0000中字段SUBTY = P0000-SUBTY且字段BEGDA及ENDDA在PN-BEGDA和PN-ENDDA之间的数据的最后一条。
如 p0000:
P0000
|
BEGDA
|
ENDDA
|
1
|
2012.05.01
|
2012.05.30
|
2
|
2012.06.01
|
2012.06.30
|
当PN-BEGDA =2012.04.01,PN-ENDDA = 2012.05.03
该语法只会得到第1条,因为第2条的时间不在PN内。
如果PN-BEGDA = 2012.04.01, PN-ENDDA = 2012.06.02.
那么该语法会取第2条,1和2 都在时间内,取最后一条。
下面是一段用到了Rp_provide_from_last的代码。
3.4 DO ..VARYIING OBJ FORM XXX NTEXT XXX
HR的表中有的表的结构如P0041中的DAR01/DAT01,DAR02/DAT02,DAR03/DAT03…
DT是TYPE的类型,如果要取某个类型的DATE时,由于不确定是存放在哪个DT(DAT01/DAT02/…),所以可用语法
DO ..VARYIING OBJ FORM XXX NTEXT XXX来方便解决这个问题。如下:
3.5 provide语句
还有一种常用的语法,PROVIDE * FROM P0000 BETWEEN PN-BEGDA AND PN-ENDDA.
其功能等于一个LOOP AT P0000 WHERE BEGDA LT PN-ENDDA AND ENDDA GTPN-ENDDA. ENDLOOP.
掌握以上几点,基本上可以写出一个基于逻辑数据库PNP的报表了。
以上。
◆◆0使用逻辑数据库PNP开发HR报表
标签:保存 用户 tran ace one 字段 复制 程序编写 baidu
热心网友
时间:2022-05-03 08:38
一般认为“0”这个符号始于古印度,但仍有争议。
以下为各种说法。
公元前3000年,巴比伦人就已经懂得使用零来避免混淆。古埃及早在公元前2千年就有人在记帐时用特别符号来记载零。玛雅文明最早发明特别字体的0。玛雅数字中0 以贝壳模样的象形符号代表。
标准的0这个数字由古印度人在约公元5世纪时发明。他们最早用黑点“·”表示零,后来逐渐变成了“0”。在东方国家由于数学是以运算为主(西方当时以几何并在开头写了“印度人的9个数字,加上阿拉伯人发明的0符号便可以写出所有数字。由于一些原因,在初引入0这个符号到西方时,曾经引起西方人的困惑, 因当时西方认为所有数都是正数,而且0这个数字会使很多算式、逻辑不能成立(如除以0),甚至认为是魔鬼数字,而被禁用。直至约公元15,16世纪0和负数才逐渐给西方人所认同,才使西方数学有快速发展。
0的另一个历史:0的发现始于印度。公元前2000年左右,古印度婆罗门教最古老的文献《吠陀》已有“0”这个符号的应用,当时的0在印度婆罗门教表示无(空)的位置。约在6世纪初,印度开始使用命位记数法。7世纪初印度大数学家葛拉夫.玛格蒲达首先说明了0的0是0,任何数加上0或减去0得任何数。遗憾的是,他并没有提到以命位记数法来进行计算的实例。也有的学者认为,0的概念之所以在印度产生并得以发展,是因为印度佛教中存在着“绝对无”这一哲学思想。公元733年,印度一位天文学家在访问现伊拉克首都巴格达期间,将印度的这种记数法介绍给了阿拉伯人,因为这种方法简便易行,不久就取代了在此之前的阿拉伯数字。这套记数法后来又传入西欧。
以上仅供参考,希望对您有所帮助。
热心网友
时间:2022-05-03 09:56
在中国很早便有0这个概念,许多文献中均有记载。中国古代使用算筹进行计算,在算筹和算盘上,以空位表示0。公元前4世纪,中国数学家就已经了解负数和零的概念了。(在我国远古时代的结绳记数法中,〇是在对“有”的否定中出现的,意思是“没有”。)
公元1世纪的《九章算术》说:“正负术曰:同名相除,异名相益,正无入负之,负无入正之。其异名相除,同名相益,正无入正之,负无入负之。”(这段话的大意是“减法:遇到同符号数字应相减其数值,遇到异符号数字应相加其数值,零减正数的差是负数,零减负数的差是正数。”)以上文字里的“无入”通常被数学历史家认为是零的概念。(全文见维基文库的《九章算术》)虽然如此,但是当时并没有使用符号来表示零。筹算数码中开始没有“零”的符号,遇到"零"就空位。比如“6708”就可以表示为"┴ ╥ "。数字中没有"零",是很容易发生错误的。所以后来有人把铜钱摆在空位上,以免弄错,这或许与"〇"的出现有关。
不过多数人认为,“0”这一数学符号的发明应归功于公元6世纪的印度人。他们最早用黑点(·)表示零,后来逐渐变成了“0”。但是据说公元前2500年左右,印度婆罗门教最古老的文献《吠陀》已有“0”这个符号的应用,当时的0在印度婆罗门教表示空的位置。---个人对最后这段存疑问,如果是真的;那么为何公元六世纪印度人还在用黑点作为"0"的符号,至于何时由点转为圆,具体时间已无从考证。(公元718年出书的《开元占经》104卷算法,1089页,译制印度的《九执历》;那个时候印度人的零依然是黑点。)。
大约在公元前三世纪,古印度人完成了数字符号1到9的发明创造,但此时还没有“0”。“0”的符号出现,,是在1到9数字符号发明一千多年后的印度笈多王朝。刚出现时,它还不是用圆圈;而是用点来表示。至于何时由点转为圆,具体时间已无从考证。直到公元876年,人们在印度的瓜廖尔这个地方;发现了一块刻有“270”这个数字的石碑。这也是人们发现的有关“0”的最早的记载。
但是如果说符号的话,中国算筹里早已经有空格;后来更是用铜钱在算筹里表示零的符号。此后铜钱演变为〇,作为零的符号;是很正常的事情。在690年时;武则天颁布了则天文字,其中一个字就是“〇”了(比印度的0的符号早出现186年);虽然当时不是零的意思。中国古代数学上记录“〇”时是用“□”来表示的,一方面为了将数字区别开来;更重要的是由于我国古代用毛笔书写。用毛笔写“〇”比写“□”要方便得多,所以零逐渐变成按逆时针方向画“〇”。
但据英国著名科学史专家李•约瑟博士的考证,“0”产生于中印文化,是中国首先使用的位值制促进了零的出现。印度是在中国筹算和位值制的影响下才创造“0”的。中国远在三千多年前的殷商时期,就采用了位值制,甲骨文中有“六百又五十又九(659)”等数字,明确地使用了十进位。
而印度一个黑点,又如何演化成〇的符号呢?不知道有没有演变过程的证据?但是中文文献中〇的符号最早出现时间,也是无法考据的。宋代蔡沈《律率新书》(1135一1198)中用方格表示空缺。1180年金朝《大明历》中有“四百〇三”,“三百〇九”等数字。公元1247年,秦九韶在其著作数书九章中使用符号“〇”来表示零的概念。李冶《测圆海镜》(1248)第十四问中就有“0”图像。