ƒRƒ“ƒeƒ“ƒcƒtƒŒ[ƒ€‹N“Ž

ƒrƒbƒg—ņ‚É‚æ‚éW‡‰‰ŽZ •ļ‘‚đ SAP ƒ‰ƒCƒuƒ‰ƒŠƒXƒgƒ‰ƒNƒ`ƒƒ‚É‘g‚Ũž‚Ū

m —v‘f‚ĖW‡‚Ē‚ ‚éę‡A‚Į‚ņ‚Č•”•ĒW‡‚Å‚āƒrƒbƒg—ņ‚Æ‚ĩ‚Ä•\Œģ‚ˇ‚邹‚Æ‚Ē‚Å‚Ģ‚Ü‚ˇBW‡‚Ė n ”Ô–Ú‚Ė—v‘f‚Ē•”•ĒW‡‚É‚ ‚éę‡An ”Ô–Ú‚Ėƒrƒbƒg‚Í 1 ‚ɐŨ’肺‚ę‚Ü‚ˇB•”•ĒW‡‚ɂȂĸę‡A‚ą‚Ėƒrƒbƒg‚Í 0 ‚ɐŨ’肺‚ę‚Ü‚ˇB‚ĩ‚Ŋ‚Ē‚Á‚āA‘S‘ĖW‡‚Ƀ[ƒ‚͊܂܂ę‚Ü‚š‚ņB

ABAP ‚ł́AŒ^‚Ē X ‚Å’ˇ‚ŗ‚ĒÅ’á m/8 ‚Ė€–Ú‚đŽg—p‚ĩ‚āAm —v‘f‚ĖW‡‚đ•\Œģ‚ˇ‚邹‚Æ‚Ē‚Å‚Ģ‚Ü‚ˇB‘S‘ĖW‡‚Ė 1 ƒƒ“ƒo‚đW‡‚Ɋ܂߂é‚ɂ́ASET BIT –Ŋ—ß‚đŽg—p‚ĩ‚Ü‚ˇB‘S‘ĖW‡‚Ė‚Į‚Ėƒƒ“ƒo‚Ē“Á’čW‡‚Ɋ܂܂ę‚Ä‚ĸ‚邊‚đƒ`ƒFƒbƒN‚ˇ‚é‚ɂ́AGET BIT –Ŋ—ß‚đŽg—p‚ĩ‚Ü‚ˇBˆČ‰ē‚ĖW‡‰‰ŽZ‚ɑ΂ĩ‚ărƒbƒg‰‰ŽZ‚đŽg—p‚ˇ‚邹‚Æ‚Ē‚Å‚Ģ‚Ü‚ˇB

W‡‰‰ŽZ

ƒrƒbƒg‰‰ŽZ

‹¤’Ę•”•Ē

BIT-AND

Œ‹‡

BIT-OR

‘ÎĖˇ

BIT-XOR

“Á’čW‡‚Ē•ĘW‡‚Ė•”•ĒW‡‚Š‚Į‚¤‚Š‚đ”ģ’f‚ˇ‚é‚Ŋ‚߂Ƀrƒbƒg—ņ‚Ė”äŠr‚đs‚¤‚Æ‚ĢAO ‰‰ŽZŽq‚đŽg—p‚ˇ‚邹‚Æ‚ā‚ł̂܂ˇB

—á

DATA: FRANKFURT(4) TYPE X,
      FRISCO(4)    TYPE X,
      INTERSECT(4) TYPE X,
      UNION(4)     TYPE X,
      BIT          TYPE I.

DATA: CARRID TYPE SPFLI-CARRID,
      CARRIER LIKE SORTED TABLE OF CARRID
                          WITH UNIQUE KEY TABLE LINE.

DATA WA TYPE SPFLI.

SELECT CARRID FROM SCARR INTO TABLE CARRIER.

SELECT CARRID CITYFROM FROM SPFLI
                       INTO CORRESPONDING FIELDS OF WA.

   WRITE: / WA-CARRID, WA-CITYFROM.

   READ TABLE CARRIER FROM WA-CARRID TRANSPORTING NO FIELDS.

   CASE WA-CITYFROM.
     WHEN 'FRANKFURT'.
       SET BIT SY-TABIX OF FRANKFURT.
     WHEN 'SAN FRANCISCO'.
       SET BIT SY-TABIX OF FRISCO.
   ENDCASE.

ENDSELECT.

INTERSECT = FRANKFURT BIT-AND FRISCO.
UNION     = FRANKFURT BIT-OR  FRISCO.

SKIP.

WRITE 'Airlines flying from Frankfurt and San Francisco:'.
DO 32 TIMES.
   GET BIT SY-INDEX OF INTERSECT INTO BIT.
     IF BIT = 1.
      READ TABLE CARRIER INDEX SY-INDEX INTO CARRID.

       WRITE CARRID.
     ENDIF.
ENDDO.

SKIP.

WRITE 'Airlines flying from Frankfurt or San Francisco:'.
DO 32 TIMES.
   GET BIT SY-INDEX OF UNION INTO BIT.
     IF BIT = 1.
      READ TABLE CARRIER INDEX SY-INDEX INTO CARRID.

       WRITE CARRID.
     ENDIF.
ENDDO.

‚ą‚ę‚É‚æ‚čAo—Íˆę——‚ĒˆČ‰ē‚Ė‚æ‚¤‚ɐļŦ‚ŗ‚ę‚Ü‚ˇB

‚ą‚ĖƒOƒ‰ƒtƒBƒbƒN‚Í“Y•t‚ĖƒeƒLƒXƒg‚Éā–ž‚ŗ‚ę‚Ä‚ĸ‚Ü‚ˇ

‚ą‚ĖƒvƒƒOƒ‰ƒ€‚ł́AFRANKFURT AFRISCO AINTERSECT A‚¨‚æ‚Ņ UNION ‚Æ‚ĸ‚¤A’ˇ‚ŗ‚Ē 4 ‚Ė 4 ‚Â‚Ė 16 i€–Ú‚đŽg—p‚ĩ‚Ü‚ˇB‚ą‚ę‚į‚ĖŠe€–ڂŁAÅ‘å 32 —v‘f‚ĖW‡‚đ•\Œģ‚ˇ‚邹‚Æ‚Ē‚Å‚Ģ‚Ü‚ˇBŠî–{W‡‚́Aƒf[ƒ^ƒx[ƒXƒe[ƒuƒ‹SCARR ‚Š‚į‚Ė‘Sq‹ķ‰īŽĐ‚ĖW‡‚Å‚ˇB‘Ήž‚ˇ‚éƒrƒbƒg—ņ‚ĖŠeƒrƒbƒg‚ǁA1 ‚Â‚Ėq‹ķ‰īŽĐ‚đ•\‚ĩ‚Ü‚ˇBõˆø‚đ€”õ‚ˇ‚é‚Ŋ‚߂ɁAŠO•”õˆøƒe[ƒuƒ‹CARRIER ‚đėŦ‚ĩA‚ģ‚ą‚Ƀe[ƒuƒ‹SCARR ‚Ėq‹ķ‰īŽĐƒR[ƒh‚đ“ü—Í‚ĩ‚Ü‚ˇB‚ą‚ę‚É‚æ‚čAƒe[ƒuƒ‹CARRIER ‚˓╔õˆø‚đŽg—p‚ĩ‚āAq‹ķ‰īŽĐ‚Ė“Á’č‚Ē‰Â”\‚ɂȂč‚Ü‚ˇB

ƒf[ƒ^ƒx[ƒXƒe[ƒuƒ‹ SPFLI ‚Ė SELECT ƒ‹[ƒv‚ł́Ao”­’n‚Ė“sŽs‚É‚ĩ‚Ŋ‚Ē‚ĸA€–ÚFRANKFURT ‚Ü‚Ŋ‚ÍFRISCO ‚ŁAq‹ķ‰īŽĐ‚ɑΉž‚ˇ‚éƒrƒbƒg‚ǐŨ’肺‚ę‚Ü‚ˇBs”ԍ†SY-TABIX ‚ĒREAD –Ŋ—߂ɂæ‚Á‚ĐŨ’肺‚ę‚Ü‚ˇB‚ą‚Ė–Ŋ—߂ō€–Ú‚Í“]‘—‚ŗ‚ę‚Ü‚š‚ņB

FRANKFURT ‚Æ FRISCO ‚Ė‹¤’Ę•”•ǂ܂Ŋ‚ÍŒ‹‡‚ǁAƒrƒbƒg‰‰ŽZ BIT-AND ‚¨‚æ‚Ņ BIT-OR ‚É‚æ‚Á‚čėŦ‚ŗ‚ę‚Ü‚ˇB

INTERSECT ‚¨‚æ‚Ņ UNION ‚ĖŠeƒrƒbƒg‚́A 2 ‚Â‚Ė DO ƒ‹[ƒv“ā‚Å 1 ƒrƒbƒg‚¸‚“Į‚Ũž‚Ü‚ę‚Ä•]‰ŋ‚ŗ‚ę‚Ü‚ˇB€–Ú“ā‚Å’l‚Ē 1 ‚Å‚ ‚錅‚˛‚ƂɁAREAD –Ŋ—߂ɂæ‚Á‚ăe[ƒuƒ‹ CARRIER ‚Š‚įq‹ķ‰īŽĐƒR[ƒh‚Ē“Į‚Ũo‚ŗ‚ę‚Ü‚ˇB

 

 

 

 

ƒRƒ“ƒeƒ“ƒcƒtƒŒ[ƒ€I—š