




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内赋 用MOVE赋 用WRITETO赋 将值重置为默认 数值运 执行算术运 使用数学函 处理压缩 处理日期和时间字 处理字符 移动字段内 替换字段内 转换大/小写并替换字 转换为可排序格 覆盖字符字 搜索字符 获得字符串长 压缩字段内 连接字符 拆分字符 分配字符串部 指定数据对象的偏移 类型转 基本数据类型的可转换 字段串的可转换 内表的可转换 对齐数据对 本节描述如何使用(处理)数据对象。涉及到以下赋在ABAP/4中,可以 语句和操作语句中给数据对象赋值在语句中,将初始值赋给的数据对象。为此,可以在DATA、常量或STATICS语句中使用VALUE参数(创建数据对象和数据类型(页错误!无效。))。要在操作语句中给数据对象赋值,可以使用:MOVE(=)WRITETO语句字段的操作时,参照相对于一般字段,而并非仅是内部字MOVE本节描述如何使用MOVE语句或赋值运算符(=。其中包括:基本赋值操作要将值()MOVE运算符(=MOVEMOVE<F1>TOMOVEF1F2>。<F1F2F1持不变。赋值运算符(=)<F2>=MOVE如下所示,可以多重赋值:<F4>=<F3>=<F2>=ABAP/4MOVE<F1>TO<F2>.MOVE<F2>TO<F3>.MOVE<F3>TO(.)ABAP/4类型转换。段(DT。ABAP/4化数据和基本数据对象之间或结构不同的数据对象之间的赋值。(用MOVE述以及在ABAP/4中是如何定义的等信息,请参见类型转换(页22)。DATA:DATA:NUMBERTYPEPDECIMALST=MOVETYPEPDECIMALSTOCOUNT=赋值结果是字段T、NUMBER和COUNT ’、5.3和5.3。请注意,当赋值数值时,系统将它转换为长度为10符号。因此无法使用MOVE语句(或赋值运算符)。用指定偏赋可以在每条ABAP/4(指定数据对象的偏移量(页21)。在这种情况下,MOVE语句语法如下:MOVE<F1>[+<o1>][(<l1>)]TO<F2>[+<o2>][(<l2>)]F1>[+<o1>][(<l1>)F1<o1>+1<l1>F2覆盖从<o2>+1位置开始且长度为<l2>的段。在MOVE语句中,所有偏移量和长度指定都可为变量。这同样适用于采用赋值运算符的语句,只要也可以写做MOVE语在MOVE语句中,所有偏移量和长度指定都可为变量。这同样适用于采用赋值运算符的语句,只要也可以写做MOVE语,(),值。详细信息,参见数值运算(页6))。SAP段,结果毫无意义。DATA:DATA:F1(8)VALUE'ABCDEFGH',F2+6(5)=DATA:DATA:F1(8)VALUEDATA:OTYPEIVALUE2,LTYPEIVALUEMOVETO MOVEF1+O(L)TO WRITE/MOVE TOF2+O(L).WRITE/CLEARCLEARMOVETOF2+O(L).WRITE/MOVEF1+O(L)TOF2+O(L).WRITE/F1F2MOVE2.F2源类型字符F2在字段串组件之间MOVE还有一种MOVE语句变体,允许将源字段串组件内容到目标字段串组件中。语法如下:MOVE-CORRESPONDING<string1>TO该语句将字段串<string1>组件的内容赋给有相同名称的字段串<string2>对于每对名称,系统都执行MOVEMOVESTRING1-<component>TOSTRING2-不兼容的字串和基本字段(页25)所述的转换DATA:DATA:BEGINOFFIRSTNAME(20)VALUESURNAME(20)VALUE'Flintstone',INITIALS(4)VALUE'FF',STREET(20)VALUE'CaveAvenue,NUMBERTYPEIVALUE'11'.POSTCODETYPENVALUECITY(20)CITY(20)VALUE'Bedrock',ENDOFADDRESS.DATA:BEGINOFTITLE(10)VALUE'Mister',ENDOFNAME.MOVECORRESPONDINGADDRESSTO在该示例中,将NAME-SURNAME、NAME-FIRSTNAME和INITIALS之值设置为Flintstone、Fred和FF。NAME-仍为值MisterWRITETO用WRITETO给数据对象赋值时,可以用WRITE语句的格式化选项(WRITE语句(页错误!无效。)本节描述WRITETO句的基要将值(文字)或源字段内容写入目标字段,可以使用WRITETOWRITE<F1>TO<F2>WRITETOF1F2>。<F1>可以是任何F2F1不变。对于<option>,WRITE(UNDER和NO-除外(参见格式选项(页错误!无效。)WRITETO数点显示为句号(.,还是逗号(,)。WRITETO类型转换CC用数值数据类型的目标字段。DATA:DATA:NUMBERTYPEFVALUE'4.3',FLOATTYPEPACKTYPEPDECIMALSWRITEWRITENUMBERTOTEXTEXPONENT2.WRITE/TEXT.WRITENUMBERTOFLOAT.WRITE/FLOAT.WRITENUMBERTOPACK.WRITE/PACK.MOVENUMBERTOPACK.WRITE/PACK.1.50454551753894E-第一输出行以类型F字段的标准输出格式显示字段NUMBER项EXPONENT2将字段NUMBER写入长度为10的类型C字段标字段。第五输出行显示MOVE语句不同于WRITETO语句在于将类型F字段正确地转换为类型P(有关该转换的详细信息,参见源类型浮点数(页23))。运行时指字WRITETO段名的数据对象名括起来,并将其放在源字段位置:WRITE(<f>)TO系统将赋给<f>的数据对象值放到<g>用字段符号。DATA:DATA:NAME(10)VALUE'SOURCE',SOURCE(10)VALUE'Antony',WRITE(NAME)TOTARGET.WRITE:TARGET.用指定偏写入可以指定每条ABAP/4(参见指定数据对象的偏移量(页21))。WRITETO语句语法如下:WRITE<F1>[+<o1>][(<l1>)]TOF1<o1>+1<l1>F2>,覆盖从<o2>+1位置开始且长度为<l2>的段。WRITETOSAP结果毫无意义。DATA:DATA:NUMBER(8)TYPECVALUE'123456',OFFSETTYPEIVALUE8,LENGTHTYPEIVALUEWRITENUMBER+(6)TOSTRING+OFFSET(LENGTH)LEFT-WRITE:/STRING.CLEARSTRING.WRITENUMBER+(6)TOSTRING+OFFSET(LENGTH)CENTERED.WRITE:/STRING.CLEARWRITENUMBERTOSTRING+OFFSET(LENGTH)RIGHT-JUSTIFIED.WRITE:/STRING.CLEARWRITENUMBER6段STRING的后12个位置。WRITENUMBER6STRING后12个位置。最后,第三条WRITE语句将右对齐的NUMBER的前6个位置写入STRING的后12个位置。将值重置认CLEARCLEAR<f>基本数据类型预定义的基本数据类型(页错误!无效。)中的表。系统将变量值重置为它们的初始默认值,而不是用DATA语句的VALUE参数所赋的初始值。无法重置常量。CLEAR为它们的初始默认值。CLEAR初始化内表(页Error!Notavalidlink.)。DATADATANUMBERTYPEIVALUE'10'.WRITENUMBER.CLEARNUMBER.WRITE/NUMBER.0CLEAR语句将字段NUMBER的内容从10重置为默认值0数值运COMPUTE语句或赋值运算符(=COMPUTECOMPUTE<n>=关键字COMPUTE<n>=在<expression>中指定的数算结果赋给字段<n>。赋值运算符(=)的作用如基本赋值操作(页1)中所述。如果运算结果与<n>的数据类型不同,则系统自动进行类型转换(参见类型转换(页22)求值顺序是:**(求幂*、/、MOD、DIV(乘法、除法5.(加法、减法以下对<expression>中指定的数算加以描述:处理以下数据类型特别重要:执行算术基本算术ABAP/4指定以下算术运算符:+-*/ADD、SUBTRACT、MULTIPLYDIVIDE而不使用数学表达式中的运算符。下表说明如何表示ABAP/4运用数达式的语用关键字<p>=<n>+ADD<n>TO<p>=<m>-SUBTRACT<n>FROM<p>=<m>*MULTIPLY<m>BY<p>=<m>/DIVIDE<m>BY<p>=<m>DIV--<p>=<m>MOD--<p>=<m>**--在用关键字的语句中,将运算结果赋给<m>运算数<m>、<n>、<p>(类型转换(页22)***ABAP/4格。除,用运算符DIV或MOD代替/。用DIV获得整数商并用MOD获得余数。(<n>**<m>**<p>与<n>**(<m>**<p>)相同,但与(<n>**<m>)**<p>不同。DATA:DATA:COUNTERTYPECOMPUTECOUNTER=COUNTER+1.COUNTER=COUNTER+1.ADD1TO1段COUNTER内容上并将结果赋给COUNTER。DATA:DATA:PACKTYPEPDECIMALS4,NTYPEFVALUE'+5.2',MTYPEFVALUE'+1.1'.PACK=N/M.WRITEPACK.PACK=NDIVM.WRITE/PACK.PACK=NMODM.WRITE/PACK.执行字段算术运类似于用MOVE-CORRESPONDING语句在字段串之间值(参见在字段串组件之间值(页3))可以用以下关键字,执行字段串的算术运算ABAP/4有关这些关键字的详细信息,参见ABAP/4DATA:DATA:BEGINOFUSATYPEFVALUE'0.6667',FRGTYPEFVALUE'1.0',AUTAUTTYPEFVALUE'7.0',ENDOFRATE.DATA:BEGINOFUSATYPEIVALUE100,FRGTYPEIVALUE200,AUTTYPEIVALUEENDOFMULTIPLY-CORRESPONDINGMONEYBYRATE.WRITE/MONEY-USA.WRITE/MONEY-FRG.WRITE/MONEY-RATE-USAMONEY-USA,添加字段除基本算术运,ADD用于添加字段顺序。例如:ADD<n1>THEN<n2>UNTIL<nz>GIVING<n1<n2<nz的等距字段序列,则进行求和计算并将结果赋给<m>ADD<n1>THEN<n2>UNTIL<nz>TO<m>面语句的工作方式相同。有关其它相似变体的信息,参见有关ADDDATA:DATA:BEGINOFN1TYPEIVALUEN2N2TYPEIVALUE20,N3TYPEIVALUE30,N4TYPEIVALUE40,N5TYPEIVALUE50,N6TYPEIVALUEENDOFSERIES.DATASUMTYPEI.ADDSERIES-N1THENSERIES-N2UNTILSERIES-N5GIVINGSUM.WRITESUM.ADDSERIES-N2THENSERIES-N3UNTILSERIES-N6TOSUM.WRITE/SUM.N1N5SUM。然后,将N2到N6组件求和并将其添加到SUM的值中。使用数学要指定数学表达式,可以从ABAP/4[COMPUTE]<n>=<func>(<m>在括号之间的空格和参数<m><m><func><n>。在以下中描述可用函数:所有数值类型的函函结 X>SIGN( 函结 X>SIGN( X=DATADATANTYPEPDECIMALSDATAMTYPEPDECIMALS2VALUE'-N=ABS(MN=SIGN(M).N=CEIL(M'ABS:',WRITE:/'SIGN:',WRITE:/'CEIL:',N=FLOOR(M).WRITE:/'FLOOR:',N=TRUNC(M).WRITE:/'TRUNC:',N=FRAC(M).WRITE:/'FRAC:',- X<正确类型。DATA:DATA:T2(10)VALUE'-T1=ABS(T2).WRITET1.CT2P并且系统用转换结果处理函数ABS。然后,在类型C字段T1的赋值期间,将函数结果转换回类型C。浮点函函解ACOSASINATAN;COS、SIN、TANCOSH、SINH、函解ACOSASINATAN;COS、SIN、TANCOSH、SINH、基数为e )基数为e基数为10平对于所有函数,正常数学约(例如平只适用于正数)适用否则,会产生运行错误。化为类型F,如类型转换(页22)中所述。DATA:DATA:RESULTTYPEPI(10)VALUERESULT=COS(PI).WRITERESULT.1.00000000000000E+00PIF处理压缩P数。DATA语句的参数DECIMALS只影响WRITE输出的格式。因此,SAPP(参见指定程序属性(页错误!无效。)PDECIMALS点位置,而且考虑算术运算中的小数位。ABAP/431(ABAP/4DATA:DATA:PTYPEP=1/3*3.WRITEP.0,除法结果被内部取整为0。如果设置程序属性“定点算法”,则结果为1,达31333333333333,处理日期间字(基本数据类型的可转换性(页22))(参见指定数据对象的偏移量(页21)DATA:DATA:ULTIMOTYPE=SY-ULTIMO+6(2)= =ULTIMO-"=firstdayofthis"=lastdayoflastULTIMO用当前日期填充ULTIMO从ULTIMO减1,将其内容更改为上月的最后一天。在进ULTIMO01.01.0001数并将结果转换为日期。DATA:DATA:DIFFTYPESECONDSTYPEI,HOURSTYPEI.DATA:T1TYPETVALUE'200000',T2TYPETVALUEDIFF=T2-SECONDS=DIFFMOD86400.HOURS=SECONDS/3600.HOURS=((T2-T1)MOD86400)/计算02:00:00和20:00:00-64800T1内部转换为72000,T2被内部转换为7200。MOD,如果该差为正数,则进行MOD运算后结果保持不变。第三、将秒数除以3600,(CONVERT将日期从格式D转换为相反日期非常有用。CONVERTDATE<d1>INTOINVERTED-DATECONVERTINVERTED-DATE<d1>INTODATE这些语句将字段<d1>从格式DATE或INVERTED-DATE转换为格式INVERTED-DATE或DATE并将其赋给<d2>对于该转换,ABAP/4形成9DATA:DATA:ODATETYPEDVALUEIDATELIKEDATAFIELD= WRITE/CONVERTDATEODATEINTOINVERTED-DATEIDATE.FIELD=IDATE. WRITE/FIELD.CONVERTINVERTED-DATEIDATEINTODATEODATE.FIELD=ODATE. WRITE/FIELD.处理字符ABAP/4提供多个处理类型C述的字符串处理关键字,系统将所有运算数都当作类型C有关MOVE语句变体(只使用字符串)移动字段要移动字段内容,请使用以下中所述的SHIFT语句的各种变体。SHIFT允许按字节移动字段内容(或在文本字段按字符移动。对于SHIFT按给定位移动字段要按给定位置数移动字段内容,请使用SHIFTSHIFT<c>[BY<n>CES]该语句将字段<c>移动<n>个位置。如果省略BY<n>CES,则将<n><n>是0或负值,则<c><n>超过<c>长度,则<c>用空格填充。<n>可为变量。对不同(<mode>)<c>:<n><n>(默认设置)。向右移动<n>位置,左边用<n>向左移动<n>位置,以便左边<n>DATA:DATA:T(10)VALUESTRINGLIKESTRING=T.WRITESHIFTSTRING.WRITE/STRING.STRING=SHIFTSTRINGBYWRITE/STRING=SHIFTSTRINGBY3WRITE/STRING.STRING=SHIFTSTRINGBY3WRITE/STRING.CESCESCES移动字段给定要移动字段内容以到给定串,则使用SHIFTSHIFT<c>UPTO<str>ABAP/4查找<c>字段内容直到找到字符串<str>并将字段<c>移动到字段边缘。<mode>按给定位置移动字段<str>如果<c>中找不到<str>,则将SY-SUBRC设置为4并且不移动<c>。否则,将SY-SUBRC0。DATA:DATA:T(10)VALUE'abcdefghij',STRINGLIKET,STR(2)VALUESTRING=WRITESHIFTSTRINGUPTOSTR.WRITE/STRING.STRING=SHIFTSTRINGUPTOSTRLEFT.WRITE/STRING.STRING=SHIFTSTRINGUPTOSTRRIGHT.WRITE/STRING.STRING=SHIFTSTRINGUPTOSTRCIRCULAR.WRITE/STRING.根据第一最后一个符移动字SHIFT语句将字段向左或向右移动。为此,请使用以下语法:语SHIFT<c>LEFTDELETINGLEADING<str>.SHIFT<c>RIGHTDELETINGTRAILING假设左边的第一个字符或右边的最后一个字符出现在<str>中,该语句将字<c>左或向右动。字段边或左边空格填充<str>DATA:T(14)VALUE' DATA:T(14)VALUE' STRINGLIKET,STR(6)VALUESTRING=WRITESHIFTSTRINGLEFTDELETINGLEADINGSPACE.WRITE/STRING.STRING=SHIFTSTRINGRIGHTDELETINGTRAILINGSTR.WRITE/STRING.替换字段要用其它字符串替换字段串的某些部分,请使用 CE语句RECE<str1>WITH<str2>INTO<c>[LENGTHABAP/4<c><str1><l>果未指定长度,按全长度搜索模式<str1>。<str1>在字段<c>中第一次出现的位置用字符串替换。如果指定长度<l>,如果将系统字段SY-SUBRC的返回代码设置为0,则说明在<c>中找到<str1>且已用<str2>替换。非0<str1>、<str2>和<len>DATA:DATA:T(10)VALUE'abcdefghij',STRINGLIKET,STR1(4)VALUE'cdef',STR2(4)VALUE'klmn',STR3(2)VALUE'kl',STR4(6)VALUE'klmnop',LENTYPEIVALUE2.STRING=T.WRITESTRING. CESTR1WITHSTR2INTOSTRING.WRITE/STRING.STRING= CESTR1WITHSTR2INTOSTRINGLENGTHLEN.WRITE/STRING.STRING= CESTR1WITHSTR3INTOSTRING.WRITE/STRING.STRING= CESTR1WITHSTR4INTOSTRING.WRITE/STRING.STRING长度为4的搜索模式‘cdef’用长度为6的‘klmnop’替STRING转换大并替换可以将字母转换大/要转换大/小写,请使用TRANSLATETRANSLATE<c>TOUPPERCASE.TRANSLATE<c>TOLOWER<c>使用替换规则时,请使用以下语法:TRANSLATE<c>USING该语句根据字段<r>中的替换规则替换字段<c>的所有字符。<r>包含成对字母其中每对的第一个字母用第二个字母替换<r>可为变量。有关包含更复杂替换规则的TRANSLATE语句的 变体参见关键字文档。DATA:DATA:T(10)VALUE'AbCdEfGhIj',STRINGLIKET,RULE(20)VALUESTRING=WRITETRANSLATESTRINGTOUPPERCASE.WRITE/STRING.STRING=TRANSLATESTRINGTOLOWERCASE.WRITE/STRING.STRING=TRANSLATESTRINGUSINGRULE.WRITE/STRING.转换为可格CONVERTTEXT<c>INTOSORTABLECODE该语句为字符字段<c>填充可排序目标字段<sc>。字段<c>必须是类型C<sc>必须是类型X,最小长度为<c>16<c><sc>,<c>的按字母顺(排序内表(页Error!Notavalidlink.)和排序抽象数据集CONVERTTEXT按MillerMollerMllerMuller’Miller、Moller、Muller、Mller’。转换方法依赖于运行ABAP/4程序的文本环境。文本环境在用户主记录中定义。例外的是可以使用如下语句,在程序中设置文本环境:SETLOCALELANGUAGE<lg>[COUNTRY<cy>][MODIFIER<lg>COUNTRY,MODIFIER,家内语言不同,就可以指定另一个标识符,例如,排序顺序在簿和词典之间不同。字段<lg>、<cy>和<m>必须是类型CTCP0C的关键字段TCP0CSETLOCALETCP0C部传送的平台特性之外,用SET语句指定表关键字。如果<lg>等于SPACE表中无条目,则系统将产生运行错误。文本环境影响ABAP/4有关该的详细信息,参见CONVERTTEXT和SETLOCALELANGUAGE的关键字文档。关于如何根据语言排序的示例,参见排序内表(页Error!Notavalidlink.)。覆盖字符字要用另一字符字段覆盖字符字段,请使用OVERLAYOVERLAY<c1>WITH<c2>[ONLY该语句用<c2>的内容覆盖字段<c1>中包含<str>中字母的所有位置。<c2>ONLY<str>,<c1>的位置。<c1>SY-SUBRC设置为0SY-SUBRC设置为4。如果<c1>比<c2><c2>DATA:DATA:T(10)VALUE'acegi',STRINGLIKET,OVER(10)VALUE'ABCDEFGHIJ',STR(2)VALUE'ai'.STRING=WRITEWRITE/OVERLAYSTRINGWITHOVER.WRITE/STRING.STRING=OVERLAYSTRINGWITHOVERONLYSTR.WRITE/STRING.acegiAcegI搜索字符要搜索特定模式的字符串,请使用SEARCHSEARCH<c>FOR<str><c><str>SY-SUBRC0SY-FDPOS设置为字段<c>否则将SY-SUBRC4。搜索串<str>搜索<pattern>(任何字符顺序)搜索<pattern>搜索以<pattern>搜索以<pattern>加号和等号等分隔。DATASTRING(30)VALUE'ThisisalittleWRITE:/'Searched','SY-SUBRC','SY-FDPOS'.ULINE/1(26).SEARCHSTRINGFORWRITE:/'X',SY-SUBRCUNDER'SY-SY-FDPOSUNDER'SY-SEARCHSTRINGFOR WRITE:/ ',SY-SUBRCUNDER'SY-SY-FDPOSUNDER'SY-SEARCHSTRINGFOR'.eWRITE:/'.e.',SY-SUBRCUNDER'SY-SY-FDPOSUNDER'SY-SEARCHSTRINGFORWRITE:/'*e',SY-SUBRCUNDER'SY-SY-FDPOSUNDER'SY-SEARCHSTRINGFORWRITE:/'s*',SY-SUBRCUNDER'SY-SY-FDPOSUNDER'SY-SY-SY-X400.e000搜索字符字段<c>的各种选项(<options>)<c><str>符可能被其它字符隔开。单词和字符串的第一个字母必须相同。STARTINGAT<c><n1><str>SY-FDPOS照相对于<n1>的偏移量而不是字段的开始。ENDINGAT<c><str><n2>。ANDMARK如果找到搜索串,则将搜索串中的所有字符(ABBREVIATED时的所有字符)DATA:DATA:STRING(30)VALUE'ThisisafastfirstPOSTYPEI,OFFTYPEWRITE/SEARCHSTRINGFOR'ft'ABBREVIATED.WRITE:/'SY-FDPOS:',SY-FDPOS.POS=SY-FDPOS+SEARCHSTRINGFOR'ft'ABBREVIATEDSTARTINGATPOSANDWRITE/WRITE:/'SY-FDPOS:',SY-FDPOS.OFF=POS+SY-FDPOS-1.WRITE:/'Off:',ThisisafastfirstSY-ThisisafastFIRSTSY-4fastftSY-FDPOS上加2POSfastfirstSTRINGPOSSY-FDPOS计算。获得字符要决定字符串到最后一个字符而不是SPACE的长度,请使用内部函数STRLEN[COMPUTE]<n>=STRLEN(<c>STRLEN<c>行转换。COMPUTE使用数学函(页9)。DATA:DATA:INTTYPEWORD1(20)VALUE'12345'.WORD3(20)VALUE INT=STRLEN(WORD1). INT=STRLEN(WORD2).WRITE/INT.INT=STRLEN(WORD3).WRITE/结果分别是5,0和4压缩字段要删除字符字段中多余空格,请使用CONDENSECONDENSE<c>[NO-该语句去除字段<c>NO-GAPS除所有空格。DATA:DATA:STRING(25)VALUE'LENTYPELEN=STRLEN(STRING).WRITE:STRING,'!'.WRITE:/'Length:',CONDENSELEN=STRLEN(STRING).WRITE:STRING,'!'.WRITE:/'Length:',CONDENSESTRINGNO-GAPS.LEN=STRLEN(STRING).WRITE:STRING,'!'.WRITE:/'Length:', fouronetwothree!!请注意,字段STRING的总长度保持不变(惊叹号!),连接字符要将单个字符串连接成一体,请使用CONCATENATECONCATENATE<c1>...<cn>INTO<c>[SEPARATEDBY<c1><cn><c>。该操作忽略尾部空格。附加SEPARATEDBY<s><s>,义的长度中。<c>,则将SY-SUBRC0断,则将SY-SUBRC4。DATA:DATA:'holiVALUE'-CONCATENATEC1C2C3C4INTOWRITECONCATENATEC1C2C3C4INTOC5SEPARATEDBYSEP.WRITE/C5.Sum-mer-holi-C1C5SEP拆分字符要将字符串拆分成两个或小串,请使用SPLIT语句,用法如下:SPLIT<c>AT<del>INTO<c1>...<c><del>,部分放到目标字段<c1>...<cn>中。段<c>的剩余部分填充最后目标字段并包含分界符。如果所有目标字段足够长且不必截断,则将SY-SUBRC设置为0。4。DATA:DATA:P1(20)VALUE'++++++++++++++++++++',P2(20)VALUE'++++++++++++++++++++',P3(20)VALUE'++++++++++++++++++++',P4(20)VALUE'++++++++++++++++++++',DEL(3)VALUE'***'.1***2***Part3***Part4***Part1234***5STRING='Part1***Part2***Part3***Part4STRING='Part1***Part2***Part3***Part4Part5'.WRITESTRING.SPLITSTRINGATDELINTOP1P2P3P4.WRITE/P1.WRITE/P2.WRITE/P3.WRITE/请注意,字段P1...P4SPLIT<c>AT<del>INTO(创建并处理内表(页Error!Notavalidlink.)分配字符MOVE语句的以下变体只使用类型CMOVE<c1>TO<c2>PERCENTAGE<p><c1>的百分比<p>(RIGHT选项指定,则为右对齐)到<c2>。<p>值可为0和100之间的任何数。将要从<F1>的长度取整为下一如果语句中某一参数不是类型C,则忽略参数PERCENTAGEDATADATAC1(10)VALUE'ABCDEFGHIJ',MOVEC1TOC2PERCENTAGE40.WRITEC2.MOVEC1TOC2PERCENTAGE40RIGHT.WRITE/C2.指定数据的偏移在ABAP/4移量值。对字段<f>中从<o>+1开始且长度<l>如果未指定长度<l>,则对该字段<o><o><l>够在以下例外情况下可以使用变量动态指定:用MOVE(参见用指定偏移赋值用WRITETO(用指定偏移写入值用ASSIGN(参见使用字段符号PERFORM(参见用参数传递数据)是有意义的。对于类型F、I和P的数值字段或字段串不要使用指定偏移量。它对于类型F、I和P的数值字段或字段串不要使用指定偏移量。它们不能与文字或文本符号一同使用(有关文本符号的详细信息,参见文本符号(页错误! 无效。))。DATADATATIMETYPETVALUE'172545'.WRITETIME.WRITE/TIME+2(2).CLEARTIME+2(4).WRITE/首先,在WRITE语句中通过指定偏移量选择分钟数。然后,类型转这种情况下,所涉及的数据类型必须是可转换的。(有关兼容数据类型的详细信息,参见数据类型兼容性(页 无效。))。所有技术属性都一样。ABAP/4型可相互转换。MOVE(=)ABAP/4操作(内表)MOVE统在语法检查告错误或产生运行错误。以下描述ABAP/4中定义的不兼容数据类型之间的转换规则对于不同对象之间传送数据的一些ABAP/4语句,数据对象的排列也起重要作用。有关数据对象排列的信息,参见基本数据的可转换预定义的基本数据类型(页错误!无效。)中的表列出ABAP/4中预定义的八种数据类型。64ABAP/4D(日期)T(时间)彼此无法转换。基本数据类型。总是按处理无小数位的类型P的相同方式处理类型I总是按处理无小数位的类型P的相同方式处理类型I以,提到类型P时,同样适用于类型I字段。如果为某一程序设置“定点算法”属性(指定程序属性(页错误! 效。效。),P源类型字源类C转换目转C行填充。如果太短,则在右边将其内容截断。D字符字段应包含YYYYMMDD格式的8F源字段内容必须是文字(页错
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年汽车尾气净化设备项目发展计划
- 生物技术在农业中的应用与效果试题及答案
- 供应链优化策略试题及答案
- CPSM考试在职人士的复习策略及试题及答案
- 深入学习2024国际物流师试题与答案
- Jetson Xavier NX Data Sheet 原版完整文件
- 值得关注的仓储管理员考点及答案
- 精准定位2024年CPSM考试试题及答案
- 理清思路备考2024年CPMM的试题及答案
- 策划复习:CPMM试题及答案重要性
- 2024年安庆迎江区招聘社区工作人员考试真题
- 事故隐患内部报告奖励制度
- 2025年广东省行测试题及答案
- 会计毕业论文范文:大数据时代的会计变革
- 中医养生知识培训课件
- 中央戏剧学院招聘真题2024
- 2025年安徽汽车职业技术学院单招综合素质考试题库汇编
- JJF 1183-2025 温度变送器校准规范
- 有研赵昌泰-干法电极卤化物电解质赋能高比能全固态电池
- (一统)昆明市2025届高三“三诊一模”摸底诊断测试 政治试卷(含官方答案)
- 广东省2024年中考数学试卷(含答案)
评论
0/150
提交评论