နိဒါန္း
အရင်ဆောင်းပါးတွေမှာလည်း ဆွေးနွေးထားပါတယ်။ Odata ဆိုတာဘာလဲ နှင့် SAP တွင် OData ဖန်တီးနည်း. ကျွန်ုပ်တို့သည် OData အလုပ်လုပ်ပုံ ကောင်းမွန်ခြင်း ရှိ၊ မရှိ စမ်းသပ်နည်းကိုလည်း ပြသထားပါသည်။ ယခု ကျွန်ုပ်တို့သည် OData Query ကို အသုံးပြု၍ ဇယားတစ်ခုကို မည်သို့ဖတ်ရမည်ကို လေ့လာပြီး ထိုဇယားပေါ်တွင် ထည့်သွင်းခြင်း၊ အပ်ဒိတ်နှင့် ဖျက်ခြင်းကဲ့သို့ လုပ်ဆောင်ချက်များကို လုပ်ဆောင်ရန် လိုအပ်ပါသည်။ ဤဆောင်းပါးတွင် ကျွန်ုပ်တို့သည် အချက်အလက်ဖတ်ရှုခြင်း၏ အခြေခံမေးခွန်းများကိုလည်း လေ့လာပါမည်။
ဘယ်လိုအလုပ်လုပ်လဲ
OData တွင်၊ ဒေတာလွှဲပြောင်းမှု အဆင့်သုံးဆင့်ရှိသည်။ ဤအရာများသည်:
1. Frontend မှ Data ပို့ခြင်း။
ဒေတာကို UI မှပို့သည် (ဖောက်သည်) မှ OData (ဆာဗာ) မေးမြန်းမှုပုံစံ
2. Frontend မှ Data ကိုရယူခြင်း။
OData တွင် ကျွန်ုပ်တို့သည် data provider ကိုအသုံးပြု၍ Frontend မှဒေတာကိုလက်ခံရရှိသည် (CRUD လည်ပတ်မှုအပိုင်းတွင်အသုံးပြုထားသောကုဒ်)
io_data_provider->read_entry_data(တင်သွင်းခြင်း es_data= ls_entity)။
3. Frontend သို့ Data ပို့ခြင်း။
OData မှကျွန်ုပ်တို့သည်အသုံးပြု၍ UI သို့ဒေတာပေးပို့သည်။ et_entityset သို့မဟုတ် er_entity ဒေတာခြယ်လှယ်ပြီးနောက် (CRUD လုပ်ဆောင်ချက်အပိုင်းတွင် ကုဒ်ကို အကောင်အထည်ဖော်သည်)
အထက်ပါ အဆင့်များကို အောက်ပါပုံတွင် ပြထားသည်။
ODATA တွင် လုပ်ဆောင်မှုများ
ဤကဏ္ဍတွင်၊ သင် OData ကိုထုတ်ပေးသည်နှင့်တစ်ပြိုင်နက် အလိုအလျောက်ထုတ်ပေးသည့်နည်းလမ်းအားလုံးကို ကျွန်ုပ်တို့စူးစမ်းပါမည်။ နောက်ဆုံးဆောင်းပါးတွင်၊ ကျွန်ုပ်တို့သည် DPC_EXT အတန်းတွင် သင်၏ CRUD လုပ်ဆောင်မှုများနှင့်ဆိုင်သော ကုဒ်အားလုံးကို ရေးသားရန် ညွှန်ကြားထားပြီးဖြစ်သည်။ ထို့ကြောင့် ဤနေရာတွင် တူညီသောသဘောတရားကို လိုက်နာပါမည်။
SAP ABAP OData သည် CRUD လုပ်ဆောင်ချက်များအတွက် မတူညီသောနည်းလမ်းများကို ပံ့ပိုးပေးသည်၊ ၎င်းတို့မှာ-
နည်းလမ်း | SQL လုပ်ဆောင်ချက် | ဖေါ်ပြချက် |
GET_ENTITY | ကို Select လုပ်ပါ | ဇယားကီးများကို အခြေခံ၍ ဒေတာတစ်ခုတည်းကို ဖတ်ရန် ဤနည်းလမ်းကို အသုံးပြုသည်။ |
GET_ENTITYSET | ကို Select လုပ်ပါ | ဤနည်းလမ်းကို ဇယားတစ်ခု၏ အချက်အလက်တစ်ခုလုံးကို ဖတ်ရန် အသုံးပြုသည်။ |
CREATE_ENTITY | ထည့်သွင်း | ဤနည်းလမ်းကို ဇယားတွင် ဒေတာအသစ်တစ်ခု ဖန်တီး/ထည့်သွင်းရန် အသုံးပြုသည်။ |
UPDATE_ENTITY | အပ်ဒိတ်/မွမ်းမံပါ။ | ဇယားရှိ ရှိပြီးသားဒေတာကို အပ်ဒိတ်လုပ်ရန် ဤနည်းလမ်းကို အသုံးပြုသည်။ |
DELETE_ENTITY | ဖျက်ပစ်ပါ | ဇယားရှိ ရှိပြီးသားဒေတာကို ဖျက်ရန် ဤနည်းလမ်းကို အသုံးပြုသည်။ |
SAP OData တွင် မေးမြန်းမှု
ဤကဏ္ဍတွင်၊ OData မှဒေတာကိုဖတ်နေစဉ် ကျွန်ုပ်တို့လုပ်ဆောင်နိုင်သည့်မေးခွန်းအားလုံးကို ရှာဖွေပါမည်။ အထက်ဖော်ပြပါကဏ္ဍတွင်၊ GET_ENTITY နှင့် GET_ENTITYSET ကို အသုံးပြု၍ ဖုန်းခေါ်ဆိုမှုများကို ဖတ်ရှုနည်းကို လေ့လာထားပါသည်။ တစ်ခါတစ်ရံတွင်၊ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏လိုအပ်ချက်အရ ဒေတာကို စစ်ထုတ်ရန် သို့မဟုတ် ဒေတာစုစုပေါင်းအရေအတွက်ကို ရယူရန် သို့မဟုတ် တိကျသောအစီအစဥ်အတိုင်း ဒေတာရရှိရန် လိုအပ်ပါသည်။ ဤ SAP OData Queries အားလုံးကို အောက်တွင် ရှင်းပြထားပါသည်။
ဤတွင်၊ ယူဆကြပါစို့ = https://isd.sap.com/
မေးခွန်း | ဖေါ်ပြချက် | နမူနာ |
$ မက်တာဒေတာ | ၎င်းသည် သင့်ဝန်ဆောင်မှု၏ မက်တာဒေတာအသေးစိတ်ကို ပေးသည်။ မက်တာဒေတာအားဖြင့် ကျွန်ုပ်တို့ဆိုလိုသည်မှာ ၎င်းသည် ၎င်းတို့၏နယ်ပယ်အမည်များနှင့် ၎င်းတို့၏ရည်ညွှန်းချက်များဖြင့် entity set များအားလုံးအကြောင်း အချက်အလက်ကို ပေးဆောင်မည်ဖြစ်သည်။ | /$ မက်တာဒေတာ |
$FILTER | Read Entity Set ခေါ်ဆိုမှုအတွင်း ၎င်းကို အဓိကအားဖြင့် အသုံးပြုသည်။ ဖတ်ရှုနေစဉ်အတွင်း၊ ရွေးချယ်ရန်မေးခွန်းများ၏ အခြေအနေတွင် နောက်ပိုင်းတွင်အသုံးပြုနိုင်သည့် နောက်ကွယ်တွင် အသုံးပြုနိုင်သည့် စစ်ထုတ်မှုတန်ဖိုးအချို့ကို ကျွန်ုပ်တို့ ပေးပို့နိုင်ပါသည်။ | /$FILTER |
$top နှင့် $skip | ဒေတာအားလုံးကိုဖတ်နေပြီး ဇယားတွင် အလွန်ကြီးမားသောဒေတာရှိသည့်အခါတွင် ၎င်းကို UI တွင် အကန့်အသတ်ရှိသောဒေတာရရှိရန် အဓိကအသုံးပြုသည် | /$top နှင့် $skip |
$ အော်ဒါမှာပါတယ်။ | သီးခြားသော့တစ်ခုအတွက် ဒေတာကို ကြီးစဉ်ကြီးလိုက် သို့မဟုတ် ကြီးစဉ်ငယ်လိုက် မှာယူရန် ၎င်းကို အသုံးပြုသည်။ | /$ အော်ဒါမှာပါတယ်။ |
$format=json | ၎င်းသည် ဒေတာကို JSON ဖော်မတ်ပုံစံဖြင့် ပြန်ပေးသည်။ မူရင်းအားဖြင့်၊ ရလဒ်သည် XML ဖော်မတ်ဖြစ်သည်။ | /$format=json |
$inlinecount | ၎င်းသည် UI တွင်ပေါ်လာမည့် ဇယားတစ်ခု၏ဒေတာအရေအတွက်ကို ပြန်ပေးသည်။ | /$inlinecount |
$ ချဲ့ | အသင်းအဖွဲ့နှင့် လမ်းကြောင်းပြဒေတာကို ပေါင်းစည်းရန် ၎င်းကို အသုံးပြုသည်။ | /$ ချဲ့ထွင်ပါ။ |
$တန်ဖိုး | မီဒီယာဒေတာကို ပြန်ပေးရန်အတွက် ၎င်းကို အသုံးပြုသည်။ | /$တန်ဖိုး |