<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>程序员实验室 &#187; SAP/ABAP</title>
	<atom:link href="http://www.prglab.com/blog/p/category/abap/feed" rel="self" type="application/rss+xml" />
	<link>http://www.prglab.com/blog</link>
	<description>多读书，读好书</description>
	<lastBuildDate>Fri, 25 Nov 2011 04:20:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>SAP Transaction Codes</title>
		<link>http://www.prglab.com/blog/p/211</link>
		<comments>http://www.prglab.com/blog/p/211#comments</comments>
		<pubDate>Wed, 23 Feb 2011 15:24:11 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/?p=211</guid>
		<description><![CDATA[ABAPer 工作中常用到的SAP transaction code SM36 &#8211; Define back ground job AL11 &#8211; SAP Directories 服务器文件目录列表 SM50 &#8211; Process Overview 进程列表(可以kill process) SM51 &#8211; SAP Servers 服务器列表 SM59 &#8211; Configuration of RFC connections 配置远程功能 RFC 链接 SICF &#8211; Maintain Service 服务项目维护 (可以维护Web Services) SE91 &#8211; Message Maintenance 维护提示信息内容 SE93 &#8211; Maintain Transaction 维护事务代码 ST22 &#8211; ABAP [...]]]></description>
			<content:encoded><![CDATA[<p>ABAPer 工作中常用到的SAP transaction code</p>
<p><strong>SM36</strong> &#8211; Define back ground job<br />
<strong>AL11</strong> &#8211; SAP Directories 服务器文件目录列表</p>
<p><strong>SM50</strong> &#8211; Process Overview 进程列表(可以kill process)</p>
<p><strong>SM51</strong> &#8211; SAP Servers 服务器列表</p>
<p><strong>SM59</strong> &#8211; Configuration of RFC connections 配置远程功能 RFC 链接</p>
<p><strong>SICF</strong> &#8211; Maintain Service 服务项目维护 (可以维护Web Services)</p>
<p><strong>SE91</strong> &#8211; Message Maintenance 维护提示信息内容</p>
<p><strong>SE93</strong> &#8211; Maintain Transaction 维护事务代码</p>
<p><strong>ST22</strong> &#8211; ABAP Runtime Error (Short Dumps)</p>
<p><strong>&#8212;&#8212;&#8212;  HR 模块</strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><strong>PA20</strong> &#8211; display HR master data 显示人力资源主数据</p>
<p><strong>&#8212;&#8212;&#8212;  EHS 模块</strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><strong>CBIH102</strong> &#8211; Edit Incident / Claim Management  编辑管理事故/索赔</p>
<p><strong>CBIH02</strong> &#8211; Edit Work Area 编辑工作区域</p>
<p><strong>CG12</strong> &#8211; Edit Phrase 定义短语</p>
<p><strong>CT04</strong> &#8211; Characteristics 特征定义</p>
<p><strong>&#8212;&#8212;&#8212;- Security &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</strong></p>
<p><strong>SU01</strong> &#8211; User master record 用户主数据</p>
<p><strong>SU21</strong> &#8211; authorization object</p>
<p>&nbsp;</p>
<p>不断更新中。。。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/211/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP 几种用户界面解决方案的比较</title>
		<link>http://www.prglab.com/blog/p/203</link>
		<comments>http://www.prglab.com/blog/p/203#comments</comments>
		<pubDate>Fri, 31 Dec 2010 05:14:59 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/?p=203</guid>
		<description><![CDATA[上WebDynpro课时问了SAP的老师，一位经验丰富的老师，简单的总结如下： ITS &#8211; 可以便捷的实现将某个ＳＡＰ的transaction发布到web上，适合特殊情况(ad-hoc)使用。 Portal &#8211; 适于开发单点登录的应用，例如与windows用户绑定。 WebDynpro &#8211; 适用于开发给内网(intranet)专业用户使用的界面应用，界面元素比较固定，有一定限制，SAP的标准界面风格，做出的界面比较朴素，开发速度快。 BSP &#8211; 专注于网页界面的设计，可实现各种界面风格和网页元素，适用于开发面向非专业用户的internet网页应用，也就是适合设计比较花哨的网页界面。我觉得这个跟jsp, asp,php等属于一类。]]></description>
			<content:encoded><![CDATA[<p>上WebDynpro课时问了SAP的老师，一位经验丰富的老师，简单的总结如下：</p>
<p><strong>ITS</strong> &#8211; 可以便捷的实现将某个ＳＡＰ的transaction发布到web上，适合特殊情况(ad-hoc)使用。</p>
<p><strong>Portal</strong> &#8211; 适于开发单点登录的应用，例如与windows用户绑定。</p>
<p><strong>WebDynpro</strong> &#8211; 适用于开发给内网(intranet)专业用户使用的界面应用，界面元素比较固定，有一定限制，SAP的标准界面风格，做出的界面比较朴素，开发速度快。</p>
<p><strong>BSP</strong> &#8211; 专注于网页界面的设计，可实现各种界面风格和网页元素，适用于开发面向非专业用户的internet网页应用，也就是适合设计比较花哨的网页界面。我觉得这个跟jsp, asp,php等属于一类。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/203/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP/ABAP 程序员“不”常用的表</title>
		<link>http://www.prglab.com/blog/p/208</link>
		<comments>http://www.prglab.com/blog/p/208#comments</comments>
		<pubDate>Thu, 23 Dec 2010 15:58:25 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/?p=208</guid>
		<description><![CDATA[自己工作中碰到的，记在这里。其实也不常用，但是偶尔用到时不用满世界找了。 表名 英文描述 中文描述 TTZZ Time zones 时区列表 ADRC Addresses (Business Address Services) 地址列表 DD02L All SAP Table Names 列出SAP中所有表名 DD02T Description of table names 列出SAP中所有表名和不同语言的描述 DD03L Fields in a table 表域列表 TSTC SAP Transaction Code table SAP所有事务代码表 TSTCT SAP Transaction Code Text table SAP事务代码描述表 THOL Public Holidays 公共假日列表 DEVACCESS Table for development user 开发人员Access [...]]]></description>
			<content:encoded><![CDATA[<p>自己工作中碰到的，记在这里。其实也不常用，但是偶尔用到时不用满世界找了。</p>
<table>
<tbody>
<tr>
<th>表名</th>
<th>英文描述</th>
<th>中文描述</th>
</tr>
<tr>
<td><strong>TTZZ</strong></td>
<td>Time zones</td>
<td>时区列表</td>
</tr>
<tr>
<td><strong>ADRC</strong></td>
<td>Addresses (Business Address Services)</td>
<td>地址列表</td>
</tr>
<tr>
<td><strong>DD02L</strong></td>
<td>All SAP Table Names</td>
<td>列出SAP中所有表名</td>
</tr>
<tr>
<td><strong>DD02T</strong></td>
<td>Description of table names</td>
<td>列出SAP中所有表名和不同语言的描述</td>
</tr>
<tr>
<td><strong>DD03L</strong></td>
<td>Fields in a table</td>
<td>表域列表</td>
</tr>
<tr>
<td><strong>TSTC</strong></td>
<td>SAP Transaction Code table</td>
<td>SAP所有事务代码表</td>
</tr>
<tr>
<td><strong>TSTCT</strong></td>
<td>SAP Transaction Code Text table</td>
<td>SAP事务代码描述表</td>
</tr>
<tr>
<td><strong>THOL</strong></td>
<td>Public Holidays</td>
<td>公共假日列表</td>
</tr>
<tr>
<td><strong>DEVACCESS</strong></td>
<td>Table for development user</td>
<td>开发人员Access Key</td>
</tr>
</tbody>
</table>
<p>不断更新中。。。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/208/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP 表结构定义 migration 中数据内容丢失</title>
		<link>http://www.prglab.com/blog/p/205</link>
		<comments>http://www.prglab.com/blog/p/205#comments</comments>
		<pubDate>Wed, 22 Dec 2010 17:35:17 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/?p=205</guid>
		<description><![CDATA[测试过程中发现某数据库表结构定义需要修改（需要将一个字段的名称和数据元素，底层数据类型定义不变，比如长20的字符型还是长20的字符型，只是对应的数据元素名称变了）。 从开发环境migrate到测试环境中后，发现被修改的字段内容原有数据内容全部都被抹掉了。 不知道这其实是不是可控的。 还好只是测试数据。以后要小心了。]]></description>
			<content:encoded><![CDATA[<p>测试过程中发现某数据库表结构定义需要修改（需要将一个字段的名称和数据元素，底层数据类型定义不变，比如长20的字符型还是长20的字符型，只是对应的数据元素名称变了）。<br />
从开发环境migrate到测试环境中后，发现被修改的字段内容原有数据内容全部都被抹掉了。<br />
不知道这其实是不是可控的。<br />
还好只是测试数据。以后要小心了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/205/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ABAP调用UNIX命令显示服务器文件列表</title>
		<link>http://www.prglab.com/blog/p/177</link>
		<comments>http://www.prglab.com/blog/p/177#comments</comments>
		<pubDate>Sun, 26 Sep 2010 02:13:32 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[ABAP程序库]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/?p=177</guid>
		<description><![CDATA[*---------------------------------------------------------------------* *Report  READ_DIRECTORY *---------------------------------------------------------------------* *调用UNIX命令 ls -l 显示指定服务器路径下的文件列表 *---------------------------------------------------------------------* REPORT  READ_DIRECTORY. selection-screen begin of block ucmd with frame title text-001. parameters: unixdir like   rlgrap-filename.   &#34; 输入服务器路径 selection-screen end of block ucmd. data: begin of tabl occurs 500, line(400), end of tabl. data: wa_line(400) type c. *---------------------------------------------------------------------- start-of-selection. refresh tabl. * 调UNIX命令读取路径，结果写到内表中 concatenate &#039;ls&#039; &#039;-l&#039; unixdir [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush: java">

*---------------------------------------------------------------------*
*Report  READ_DIRECTORY
*---------------------------------------------------------------------*
*调用UNIX命令 ls -l 显示指定服务器路径下的文件列表
*---------------------------------------------------------------------*

REPORT  READ_DIRECTORY.

selection-screen begin of block ucmd with frame title text-001.
parameters: unixdir like   rlgrap-filename.   &quot; 输入服务器路径
selection-screen end of block ucmd.

data: begin of tabl occurs 500,
line(400),
end of tabl.

data: wa_line(400) type c.

*----------------------------------------------------------------------
start-of-selection.
refresh tabl.

* 调UNIX命令读取路径，结果写到内表中
concatenate &#039;ls&#039; &#039;-l&#039; unixdir into unixdir
separated by space.

call &#039;SYSTEM&#039; id &#039;COMMAND&#039; field unixdir
id &#039;TAB&#039;  field tabl[].

* 结果写到屏幕
loop at tabl into wa_line.
write: / wa_line.
endloop.
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/177/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ABAP中如何检查字母数字类型(alpha numeric)的变量</title>
		<link>http://www.prglab.com/blog/p/72</link>
		<comments>http://www.prglab.com/blog/p/72#comments</comments>
		<pubDate>Sat, 12 Apr 2008 03:02:50 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/p/72</guid>
		<description><![CDATA[Business requirment经常要求某个ID的值只能包含26个字母和10个数字字符，这就要求ABAP程序能够检查相应变量内容，辨别特殊字符。sap-img上的一个例子提供了这样的功能： REPORT ZCHECK_ALPHA_NUMERIC. * Declare the variable * For Length data: serial_length type i. * For Alpha numeric data: str type string. data: valid_characters type string. * Fill in those valid characters you need to check concatenate &#8217;0123456789&#8242; &#8216;ABCDEFGHIJKLMNOPQRSTUVWXYZ&#8217; &#8216;abcdefghijklmnopqrstuvwxyz&#8217; into valid_characters. * User Input parameters testchar(10) default &#8217;12345abc&#8217;. * Get User Input str [...]]]></description>
			<content:encoded><![CDATA[<p>Business requirment经常要求某个ID的值只能包含26个字母和10个数字字符，这就要求ABAP程序能够检查相应变量内容，辨别特殊字符。<a href="http://www.sap-img.com/abap/check-length-and-alpha-numeric-variable.htm" target="_blank">sap-img上的一个例子</a>提供了这样的功能：</p>
<p>REPORT ZCHECK_ALPHA_NUMERIC.</p>
<p><font color="#3366ff">* Declare the variable</font></p>
<p><font color="#3366ff">* For Length </font><br />
data: serial_length type i.</p>
<p><font color="#3366ff">* For Alpha numeric </font><br />
data: str type string.<br />
data: valid_characters type string.</p>
<p><font color="#3366ff">* Fill in those valid characters you need to check </font><br />
concatenate &#8217;0123456789&#8242; &#8216;ABCDEFGHIJKLMNOPQRSTUVWXYZ&#8217;<br />
&#8216;abcdefghijklmnopqrstuvwxyz&#8217; into valid_characters.</p>
<p><font color="#3366ff">* User Input </font><br />
parameters testchar(10) default &#8217;12345abc&#8217;.</p>
<p><font color="#3366ff">* Get User Input </font><br />
str = testchar.</p>
<p><font color="#3366ff">* The Checks </font><br />
if str co valid_characters.<br />
write: / str, &#8216;Characters are OK&#8217;.<br />
else.<br />
write: / str, &#8216;Characters are NOT OK&#8217;.<br />
endif.</p>
<p>*&#8211; End Program</p>
<p>基于同样的原理，下面这个subroutine可以去掉一个字符串中的所有特殊字符</p>
<p><font color="#3366ff">*&amp;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;*<br />
*&amp;      Form  convert_character_entities<br />
*&amp;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;*<br />
*  This form removes all non-alpha-numeric characters from a string<br />
*&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-*<br />
*      &lt;&#8211;<br />
*&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-*</font><br />
FORM remove_non_alpha_numeric_char.<br />
DATA: l_teststr       TYPE string,<br />
l_alpha_numeric TYPE string.<br />
DATA: l_strlen TYPE i.</p>
<p>DATA: l_char TYPE c.</p>
<p>l_teststr = &#8216;ref0 0@2$45*8&#8242;.<br />
l_strlen = strlen( l_teststr ).<br />
WRITE: / l_teststr, &#8216;length:&#8217;, l_strlen.</p>
<p>l_alpha_numeric = &#8217;0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ&#8217;.</p>
<p>WHILE l_strlen &lt;&gt; 0.<br />
l_strlen = l_strlen &#8211; 1.<br />
l_char = l_teststr+l_strlen(1).<br />
IF l_alpha_numeric NA l_char.<br />
REPLACE SECTION OFFSET l_strlen LENGTH 1 OF l_teststr WITH &#8221;.<br />
ENDIF.<br />
ENDWHILE.<br />
l_strlen = strlen( l_teststr ).<br />
WRITE: / l_teststr, &#8216;length:&#8217;, l_strlen.</p>
<p>ENDFORM.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/72/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP中国家代码和国家名称对应查询</title>
		<link>http://www.prglab.com/blog/p/71</link>
		<comments>http://www.prglab.com/blog/p/71#comments</comments>
		<pubDate>Fri, 28 Mar 2008 18:17:16 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/p/71</guid>
		<description><![CDATA[SAP中的国家代码表是T005T. 另外 ADRC表的COUNTRY字段的帮助视图(Help View)，也可以看到country code 和 country name的对应表。]]></description>
			<content:encoded><![CDATA[<p>SAP中的国家代码表是T005T.</p>
<p>另外 ADRC表的COUNTRY字段的帮助视图(Help View)，也可以看到country code 和 country name的对应表。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/71/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ABAP字符串比较操作中空格的影响</title>
		<link>http://www.prglab.com/blog/p/70</link>
		<comments>http://www.prglab.com/blog/p/70#comments</comments>
		<pubDate>Wed, 26 Mar 2008 17:50:34 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/p/70</guid>
		<description><![CDATA[ABAP对字符串有很多隐形的操作，有时更方便程序员，有时又比较容易使人困惑。 比如在比较字符串的值时，ABAP会自动忽视有效字符后面的空格，而如果在字符前面有空格，则会影响比较的结果。 比如： &#8216;X&#8217; 和 &#8216;X__&#8217; 比较的结果是相等；而&#8217;X'和&#8217;__X&#8217;比较的结果则是不相等。 （这里下划线__代表空格） 运行下面的程序可以看到效果： DATA: l_string1 TYPE string, l_string2 TYPE string, l_string3 TYPE string. l_string1 = &#8216;X&#8217;. &#8220;No space l_string2 = &#8216;X &#8216;. &#8220;Space after X l_string3 = &#8216; X&#8217;. &#8220;Space before X IF l_string1 EQ l_string2. WRITE: / &#8216;String 1 and String 2 are identical.&#8217;. ELSE. WRITE: / &#8216;String [...]]]></description>
			<content:encoded><![CDATA[<p>ABAP对字符串有很多隐形的操作，有时更方便程序员，有时又比较容易使人困惑。</p>
<p>比如在比较字符串的值时，ABAP会自动忽视有效字符后面的空格，而如果在字符前面有空格，则会影响比较的结果。</p>
<p>比如： &#8216;X&#8217; 和 &#8216;X__&#8217; 比较的结果是相等；而&#8217;X'和&#8217;__X&#8217;比较的结果则是不相等。 （这里下划线__代表空格）</p>
<p>运行下面的程序可以看到效果：</p>
<p>DATA: l_string1 TYPE string,<br />
l_string2 TYPE string,<br />
l_string3 TYPE string.<br />
l_string1 = &#8216;X&#8217;. &#8220;No space<br />
l_string2 = &#8216;X &#8216;. &#8220;Space after X<br />
l_string3 = &#8216; X&#8217;. &#8220;Space before X<br />
IF l_string1 EQ l_string2.<br />
WRITE: / &#8216;String 1 and String 2 are identical.&#8217;.<br />
ELSE.<br />
WRITE: / &#8216;String 1 and String 2 are NOT identical.&#8217;.<br />
ENDIF.<br />
IF l_string1 EQ l_string3.<br />
WRITE: / &#8216;String 1 and String 3 are identical.&#8217;.<br />
ELSE.<br />
WRITE: / &#8216;String 1 and String 3 are NOT identical.&#8217;.<br />
ENDIF.</p>
<p>运行结果是输出:</p>
<blockquote><p>String 1 and String 2 are identical.</p>
<p>String 1 and String 3 are NOT identical.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/70/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>简单话内表(internal table)</title>
		<link>http://www.prglab.com/blog/p/69</link>
		<comments>http://www.prglab.com/blog/p/69#comments</comments>
		<pubDate>Thu, 13 Mar 2008 04:44:01 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/p/69</guid>
		<description><![CDATA[内表是一个运行状态下存在的实例，它在程序开始运行时才生成，在程序结束运行时被销毁。 内表包含两个部分，可有可无的标题行(HeaderLine)，和必需的表身。进出内表的值都必须通过标题行。 程序例子： * 声明 data: begin of itab occurs 0, x type c, y type i, end of itab. * 初始化标题行 headerline itab-x = &#8216;d&#8217;. itab-y = 34. * 向内表中存入值 append itab. append itab. append itab. * 读取内表中的值 loop at itab . write: / itab-x, itab-y. &#8220;输出列表 endloop.]]></description>
			<content:encoded><![CDATA[<p><span style="color: #000000;">内表是一个运行状态下存在的实例，它在程序开始运行时才生成，在程序结束运行时被销毁。</span></p>
<p><span style="color: #000000;">内表包含两个部分，可有可无的标题行(HeaderLine)，和必需的表身。</span>进出内表的值都必须通过标题行。</p>
<p><span style="color: #000000;">程序例子：</span></p>
<p><span style="color: #000000;">* 声明</span><br />
<span style="color: #000000;">data: begin of itab occurs 0,</span><br />
<span style="color: #000000;">x type c,</span><br />
<span style="color: #000000;">y type i,</span><br />
<span style="color: #000000;"> end of itab.</span></p>
<p><span style="color: #000000;">* 初始化标题行 headerline</span><br />
<span style="color: #000000;"> itab-x = &#8216;d&#8217;.</span><br />
<span style="color: #000000;"> itab-y = 34.</span><br />
<span style="color: #000000;"> </span><br />
<span style="color: #000000;">* 向内表中存入值</span><br />
<span style="color: #000000;">append itab. </span><br />
<span style="color: #000000;">append itab.</span><br />
<span style="color: #000000;">append itab.</span></p>
<p><span style="color: #000000;">* 读取内表中的值</span><br />
<span style="color: #000000;">loop at itab .</span><br />
<span style="color: #000000;">write: / itab-x, </span><span style="color: #000000;">itab</span><span style="color: #000000;">-y.  &#8220;输出列表</span><br />
<span style="color: #000000;">endloop.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/69/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>ABAP内表(internal table)有关的系统变量</title>
		<link>http://www.prglab.com/blog/p/68</link>
		<comments>http://www.prglab.com/blog/p/68#comments</comments>
		<pubDate>Thu, 13 Mar 2008 04:32:34 +0000</pubDate>
		<dc:creator>Aqua</dc:creator>
				<category><![CDATA[SAP/ABAP]]></category>

		<guid isPermaLink="false">http://www.prglab.com/blog/p/68</guid>
		<description><![CDATA[SY-TABIX &#8211; 内表当前行的索引号。SY-TABIX 的值可以被以下命令修改，但是只适用于索引表(index table)。对于哈希表(Hashed table)，这个系统变量的值为空或0。 APPEND 将 SY-TABIX 的值置为表最后一行的索引号，也就是说它将等于内表的行数。 COLLECT 将 SY-TABIX 的值置为现有或刚刚插入的行的索引号。如果内表为哈希(hashed table)表的话，SY-TABIX 被置为0。 LOOP AT 将 SY-TABIX 的值置为每一次循环开始时的当前行索引号，在整个循环的结束时 SY-TABIX 被恢复为它在进入循环之前的值。对于哈希表(hashed table)，它的值为0。 READ TABLE 将 SY-TABIX 的值置为被读取的行的索引号。如果使用二分查找(binary search)，而没有找到的话，SY-TABIX 将等于所有行数或行数加1。如果是使用顺序查找而没有找到的话，SY-INDEX 没有定义。 SEARCH &#60;itab&#62; FOR 将 SY-TABIX 的值置为找到要查找字符串所在的行的索引号。 SY-TFILL &#8212; 在使用命令 DESCRIBE TABLE、LOOP AT、 和 READ TABLE之后，SY-TFILL 的值为相应内表的行数。 SY-TLENG &#8212; 在使用命令 DESCRIBE TABLE、LOOP AT、和 READ [...]]]></description>
			<content:encoded><![CDATA[<p><strong>SY-TABIX </strong>&#8211; 内表当前行的索引号。SY-TABIX 的值可以被以下命令修改，但是只适用于索引表(index table)。对于哈希表(Hashed table)，这个系统变量的值为空或0。</p>
<ol>
<li>APPEND 将 SY-TABIX 的值置为表最后一行的索引号，也就是说它将等于内表的行数。</li>
<li>COLLECT 将 SY-TABIX 的值置为现有或刚刚插入的行的索引号。如果内表为哈希(hashed table)表的话，SY-TABIX 被置为0。</li>
<li>LOOP AT 将 SY-TABIX 的值置为每一次循环开始时的当前行索引号，在整个循环的结束时 SY-TABIX 被恢复为它在进入循环之前的值。对于哈希表(hashed table)，它的值为0。</li>
<li>READ TABLE 将 SY-TABIX 的值置为被读取的行的索引号。如果使用二分查找(binary search)，而没有找到的话，SY-TABIX 将等于所有行数或行数加1。如果是使用顺序查找而没有找到的话，SY-INDEX 没有定义。</li>
<li>SEARCH &lt;itab&gt; FOR 将 SY-TABIX 的值置为找到要查找字符串所在的行的索引号。</li>
</ol>
<p><strong>SY-TFILL</strong> &#8212; 在使用命令 DESCRIBE TABLE、LOOP AT、 和 READ TABLE之后，SY-TFILL 的值为相应内表的行数。</p>
<p><strong>SY-TLENG</strong> &#8212; 在使用命令 DESCRIBE TABLE、LOOP AT、和 READ TABLE之后，SY-TLENG 的值为相应内表的行的长度。</p>
<p><strong>SY-TOCCU</strong> &#8211; 在使用命令  DESCRIBE TABLE、LOOP AT、和 READ TABLE之后，SY-TLENG 的值为相应内表所占用的内存。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.prglab.com/blog/p/68/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

