µ±Ç°Î»ÖãºÊ×Ò³ > µÚ006Õ ´¦ÀíÊý¾Ý
£¹ Óï·¨
ADD
Èç¹û
Ìí¼Ó×ֶΠ˳Ðò²¢½«½á ¹ûÌí¼Óµ½Áí Ò»¸ö×Ö¶ÎµÄ ÄÚÈÝÖÐ
Óï·¨
ADD
¸ÃÓï¾ä³ýÁË ½«×Ö¶Î×ÜºÍ Ìí¼Óµ½
ÓÐ¹ØÆäËüÏà ËÆ±äÌåµÄЊϢ£¬²Î¼ûÓÐ ¹Ø ADD Óï¾äµÄ¹Ø¼ü ×ÖÎĵµ¡£ DATA: BEGIN OF SERIES, N1 TYPE I VALUE 10, N2 TYPE I VALUE 20, N3 TYPE I VALUE 30, N4 TYPE I VALUE 40, N5 TYPE I VALUE 50, N6 TYPE I VALUE 60, END OF SERIES. DATA SUM TYPE I. ADD SERIES-N1 THEN SERIES-N2 UNTIL SERIES-N5 GIVING SUM. WRITE SUM. ADD SERIES-N2 THEN SERIES-N3 UNTIL SERIES-N6 TO SUM. WRITE / SUM. Êä³öÈçÏ£º 150 350 ÔÚ´Ë£¬½« N1 µ½ N5 ×é¼þÄÚÈÝÇó ºÍ²¢½«ÆäÖµ ¸³¸ø×Ö¶Î SUM¡£È» ºó£¬½« N2 µ½ N6×é¼þÇó ºÍ²¢½«ÆäÌí ¼Óµ½ SUM µÄÖµÖС£
ʹÓÃÊýѧº¯ Êý
ÒªÖ¸¶¨Êýѧ ±í´ïʽ£¬¿É ÒÔ´Ó ABAP/4 ÄÚ²¿º¯Êý¼¯ ÖÐÑ¡ÔñÔËËã ¡£ Óï·¨
[COMPUTE]
½«µ÷ÓõIJΠÊýΪ
ËùÓÐÊýÖµÊý ¾ÝÀàÐ͵ĺ¯ Êý
ÒÔÏÂÄÚ²¿º¯ ÊýʹÓÃËùÓÐ ÈýÖÖÊýÖµÊý ¾ÝÀàÐÍ£¨F¡¢ I ºÍ P£©×÷Ϊ²Î Êý¡£
ËùÓÐÊýÖµÊý ¾ÝÀàÐ͵ĺ¯ Êý º¯Êý ABS SIGN ½á¹û ²Î ÊýµÄ¾ø¶ÔÖµ ¡£ ²Î Êý·ûºÅ£º 1 X > 0 SIGN( X) = 0 if X = 0 -1 X < 0 ²» СÓÚ²ÎÊýµÄ ×îСÕûÊýÖµ ¡£ ²» ´óÓÚ²ÎÊýµÄ ×î´óÕûÊýÖµ ¡£ ²Î ÊýµÄÕûÊý²¿ ·Ö¡£ CEIL FLOOR TRUNC £±£° FRAC
²Î ÊýµÄ·ÖÊý²¿ ·Ö¡£ DATA N TYPE P DECIMALS 2. DATA M TYPE P DECIMALS 2 VALUE '-5.55'. N = ABS( M ). WRITE: 'ABS: ', N. N = SIGN( M ). WRITE: / 'SIGN: ', N. N = CEIL( M ). WRITE: / 'CEIL: ', N. N = FLOOR( M ). WRITE: / 'FLOOR:', N. N = TRUNC( M ). WRITE: / 'TRUNC:', N. N = FRAC( M ). WRITE: / 'FRAC: ', N. Êä³öÈçÏ£º ABS: 5.55 SIGN: 1.00- CEIL: 5.00- FLOOR: 6.00- TRUNC: 5.00- FRAC: 0.55- ÕâЩº¯ÊýµÄ ²ÎÊý²»±ØÎª ÊýÖµÊý¾ÝÀà ÐÍ¡£Èç¹ûÑ¡ ÔñÆäËüÀàÐÍ £¬Ôò±»×ª»» ΪÊýÖµÀàÐÍ ¡£È»¶ø£¬ÓÉ ÓÚÐÔÄÜÔÒò £¬Ó¦¾¡¿ÉÄÜ Ê¹ÓÃÕýÈ·Àà ÐÍ¡£ DATA: T1(10), T2(10) VALUE '-100'. T1 = ABS( T2 ). WRITE T1. Êä³öΪ£º 100 Ö´ÐÐÁËÁ½ÖÖ ×ª»»¡£Ê×ÏÈ £¬½«ÀàÐÍ C ×ֶεÄÄÚÈÝ T2 ת»»ÎªÀàÐÍ P ²¢ÇÒϵͳÓà ת»»½á¹û´¦ Àíº¯Êý ABS¡£È» ºó£¬ÔÚÀàÐÍ C ×Ö¶Î T1 µÄ¸³ÖµÆÚ¼ä £¬½«º¯Êý½á ¹ûת»»»ØÀà ÐÍ C¡£ ¸¡µãº¯Êý
ÒÔÏÂÄÚ²¿º¯ ÊýÓø¡µãÊý ¾ÝÀàÐÍ£¨F£© ×÷Ϊ²ÎÊý¡£
¸¡µãÊý¾ÝÀà Ð͵ĺ¯Êý
º¯Êý ACOS¡¢ ASIN¡¢ ATAN£» COS¡¢SIN¡¢ TAN COSH¡¢ SINH¡¢ TANH EXP LOG LOG10 ½âÊÍ Èý½Çº¯Êý¡£ ·´Èý½Çº¯Êý ¡£ »ù ÊýΪ e µÄÇóÃݺ¯Êý £¨e=2.7182818285£© ¡£ »ù ÊýΪ e µÄ×ÔÈ»¶ÔÊý ¡£ »ù ÊýΪ 10 µÄ¶ÔÊý¡£ SQRT ƽ ·½¸ù¡£ ¶ÔÓÚ ËùÓк¯Êý£¬ Õý³£ÊýѧԼ Êø£¨ÀýÈç Æ½·½¸ùÖ»ÊÊ ÓÃÓÚÕýÊý£© ÊÊÓ᣷ñÔò £¬»á²úÉúÔË ÐдíÎó¡£ £±£± ÕâЩº¯ÊýµÄ ²ÎÊý²»±ØÎª ¸¡µãÊý¡£Èç ¹ûÑ¡ÔñÆäËü ÀàÐÍ£¬Ôò±» ת»¯ÎªÀàÐÍ F£¬ÈçÀàÐÍת»» (Ò³ £²£²) ÖÐËù Êö¡£ DATA: RESULT TYPE F, PI(10) VALUE '3.141592654'. RESULT = COS( PI ). WRITE RESULT. Êä³öΪ -1.00000000000000E+00¡£ ÔÚ½øÐмÆËã ֮ǰ£¬×Ô¶¯ ½«×Ö·û×Ö¶Î PI ת»»ÎªÀàÐÍ F ×ֶΡ£ ´¦ÀíѹËõÊý
Èç¹ûδÉèÖà ³ÌÐòÊôÐÔ¡° ¶¨µãËã·¨¡± £¬Ôò½«ÀàÐÍ P ×ֶνâÊÍΪ ÎÞСÊýλµÄ ÕýÊý¡£DATA Óï¾äµÄ²ÎÊý DECIMALS Ö»Ó°Ïì WRITE Êä³öµÄ¸ñʽ ¡£
Òò´Ë£¬SAP ½¨ÒéÔÚʹÓà ÀàÐÍ P ×Ö¶Îʱ£¬×Ü ÊÇÉèÖóÌÐò ÊôÐÔ¡°¶¨µã Ëã·¨¡±£¨²Î ¼ûÖ¸¶¨³ÌÐòÊôÐÔ (Ò³ ´íÎó£¡Á´½ÓÎÞЧ¡£) £©¡£
È»ºó£¬ÔÚ½« ÀàÐÍ P ×Ö¶ÎÊä³öµ½ Êä³öÁбíÖРʱ£¬¹Ø¼ü×Ö DECIMALS ²»½öָСÊý µãλÖ㬶ø ÇÒ¿¼ÂÇËãÊõ ÔËËãÖеÄС Êýλ¡£ ¶ÔÓÚÖмä½á ¹û£¬ABAP/4 ¼ÆËã²»³¬¹ý 31 루ÔÚСÊý µã֮ǰºÍÖ® ºó£©¡£Èç¹û ÉèÖá°¶¨µã Ëã·¨¡±£¬Ôò ABAP/4 ÖжÔÓÚѹËõ ÊýµÄ¼ÆËãÓë ÐäÕ伯ËãÆ÷ ¼ÆË㷽ʽÏà ͬ¡£ DATA: P TYPE P. P = 1 / 3 * 3. WRITE P. Èç¹ûδÉèÖà ³ÌÐòÊôÐÔ¡° ¶¨µãËã·¨¡± £¬Ôò½á¹ûΪ 0£¬ÕâÊÇÒò Ϊ³ý·¨½á¹û ±»ÄÚ²¿È¡Õû Ϊ 0¡£ Èç¹ûÉèÖÃ³Ì ÐòÊôÐÔ¡°¶¨ µãËã·¨¡±£¬ Ôò½á¹ûΪ 1£¬ÕâÊÇÒò Ϊ³ý·¨½á¹û ±»ÄÚ²¿´æ´¢ 0.333333333333333333333333333333£¬ ¾«¶È´ï 31 λÊý×Ö¡£ ´¦ÀíÈÕÆÚºÍ Ê±¼ä×Ö¶Î
ÈÕÆÚºÍʱ¼ä ×Ö¶ÎÊý¾ÝÀà ÐͲ»ÊÇÊýÖµ ÐÍ¡£µ«ÊÇ£¬ ÓÉÓÚ½øÐÐ×Ô ¶¯ÀàÐÍת»» £¬¿ÉÒÔ²ÉÓà ÀàËÆÓÚÊýÖµ ÐÍ×ֶεĴ¦ Àí·½·¨£¬´¦ ÀíÈÕÆÚºÍʱ ¼ä×ֶΣ¨²Î ¼û»ù±¾Êý¾ÝÀà Ð͵ĿÉת»» ÐÔ (Ò³ £²£²) £©
ÔÚ´¦ÀíÈÕÆÚ ºÍʱ¼ä×ֶΠʱ£¬Ê¹ÓÃÆ« ÒÆÁ¿Ö¸¶¨³£ ³£Ê®·ÖÓÐÓà £¨²Î¼ûÖ¸¶¨Êý¾Ý¶Ô ÏóµÄÆ«ÒÆÁ¿ (Ò³ £²£±) £©¡£
DATA: ULTIMO TYPE D. ULTIMO = SY-DATUM. ULTIMO+6(2) = '01'. \ ULTIMO = ULTIMO - 1. \ÔÚ´Ë£¬½«ÉÏ ÔµÄ×îºóÒ» Ì츳¸øÈÕÆÚ ×Ö¶Î ULTIMO¡£ Ϊ´Ë£º 1. Óõ± ǰÈÕÆÚÌî³ä ULTIMO¡£ 2. ÓÃÖ¸ ¶¨Æ«ÒÆÁ¿£¬ ½«ÈÕÆÚ¸ü¸Ä Ϊµ±Ç°Ô嵀 µÚÒ»Ìì¡£ 3. ´Ó ULTIMO ¼õ1£¬½«Æä ÄÚÈݸü¸ÄΪ ÉÏÔµÄ×îºó Ò»Ìì¡£ÔÚ½ø Ðмõ·¨Ö®Ç° £¬ÏµÍ³½« ULTIMO ת»»Îª´Ó 01.01.0001 ÆðµÄÌìÊý²¢ ½«½á¹ûת»» ΪÈÕÆÚ¡£ £±£² DATA: DIFF TYPE I, SECONDS TYPE I, HOURS TYPE I. DATA: T1 TYPE T VALUE '200000', T2 TYPE T VALUE '020000'. DIFF = T2 - T1. SECONDS = DIFF MOD 86400. HOURS = SECONDS / 3600. ×îºóÈýÐÐ¿É ÓÉÒÔÏÂÐÐÌæ »» HOURS = ( ( T2 - T1 ) MOD 86400 ) / 3600. ¼ÆËã 02:00:00 ºÍ 20:00:00 Ö®¼äµÄСʱ Êý¡£ Ê×ÏÈ£¬¼ÆËã ʱ¼ä×Ö¶ÎÖ® ²î£¬½á¹ûΪ £64800¡£ ÕâÊÇÒòΪ T1 ±»ÄÚ²¿×ª»» Ϊ 72000£¬ T2 ±»ÄÚ²¿×ª»» Ϊ 7200¡£ Æä´Î£¬½èÖú ÔËËã MOD£¬½« ¸Ã¸º²îת»» Ϊ×ܵÄÃëÊý ¡£Çë×¢Ò⣬ Èç¹û¸Ã²îΪ ÕýÊý£¬Ôò½ø ÐÐ MOD ÔËËãºó½á¹û ±£³Ö²»±ä¡£ µÚÈý¡¢½«Ãë Êý³ýÒÔ 3600£¬ ¼ÆËãСʱÊý ¡£ ÔÚijЩÇé¿ö Ï£¨ÀýÈç°´ µÝ¼õ˳Ðò¶Ô ÈÕÆÚ½øÐÐÅÅ Ðò£©£¬ÓÃ¹Ø ¼ü×Ö CONVERT ½«ÈÕÆÚ´Ó¸ñ ʽ D ת»»ÎªÏà·´ ÈÕÆÚ·Ç³£ÓÐ Óá£
Óï·¨
CONVERT DATE
ÕâЩÓï¾ä½« ×Ö¶Î
¶ÔÓÚ¸Ãת»» £¬ ABAP/4 ÐÎ³É 9 µÄ²¹Êý¡£ DATA: ODATE TYPE D VALUE '19955011', IDATE LIKE ODATE. DATA FIELD(8). FIELD = ODATE. WRITE / FIELD. CONVERT DATE ODATE INTO INVERTED-DATE IDATE. FIELD = IDATE. WRITE / FIELD. CONVERT INVERTED-DATE IDATE INTO DATE ODATE. FIELD = ODATE. WRITE / FIELD. Êä³öÈçÏ£º 19955011 80049488 19955011
´¦Àí×Ö·û´®
ABAP/4 Ìṩ¶à¸ö´¦ ÀíÀàÐÍ C µÄÊý¾Ý¶ÔÏó µÄ¹Ø¼ü×Ö£¬ ¼´×Ö·û´®¡£ ÔÚ×Ö·û´®ÔË ËãÆÚ¼ä£¬Ïµ ͳ²»½øÐÐÀà ÐÍת»»¡£Óà ÏÂÊöÖ÷ÌâÖÐ ËùÊöµÄ×Ö·û ´®´¦Àí¹Ø¼ü ×Ö£¬ÏµÍ³½« ËùÓÐÔËËãÊý ¶¼µ±×÷ÀàÐÍ C ×ֶΣ¬¶ø²» ¿¼ÂÇËüÃÇµÄ Êµ¼ÊÀàÐÍ¡£ ´¦Àí×Ö·û´® µÄ·½·¨ÓУº
¹²·ÖÏí92ƪÏà¹ØÎĵµ