بسم اهلل الرحمن الرحيم / a_alyahawi@hotmail.com 1
فهرس حماضرات Developer 6i 1... (SQL, PL/SQL) يمذيت ع 1 2 ان ستخذيى وانصالحياث وعاللته ا بان( Role )... إ شاء يستخذو خذيذ وي حه انصالحياث... 1 3 إ شاء اندذاول وانميىد انتابعت نها... 4...Form Builder تشغيم 7 7 انشاشاث انشئيسيت نه( Builder (From... بزة ي بسطت ع يحتىياث... Object Navigator 2 8... Developer 6i انحفظ وانت فيز في بشايح 9... MODULE ي خصائص 10... Triggers األحذاث 10 12 انشسائم Alert) (Message &... ك تم انبيا اث... Data Blocks 3 13... Visual Attribute انخصائص ان شئيت 13... Items(Input & Non_Input) انع اصش 15... (Window & Block & Item) انتحكى بانخصائص بشيديا 16 ان تحىالث انعايت وان تحىالث ان حهيت... 4 16 انتحكى بانخصائص بشيديا ع طشيك ان تحىالث انعايت... 18... Relations انعاللاث 20 22 انحمىل انحسابيت Summary) (Formula &... سبط اندذاول... 6-5 23... Program Units(Procedure & Function) انىحذاث انبشيديت 2
25 27 32 33 34 ع صش Dynamic)... List Item(Static & انمائ ت ان شكبت Wizrad) LOVs(Static & Dynamic _ Manually & عصش اإلختياس انفشيذ Buttons)... Radio Group(Radio ع صش اإلختياس ان تعذد... Check Box... Canvases أ ىاع انم اشيت (Content & Stacked & Tab & Vertical _ Horizontal Toolbar) 7 8 37 40 40 41 44 45 46 47 48 49 51 52 53 55 57 58 تشغيم... Report Builder انشاشاث انشئيسيت نه( Builder (Report... بزة ي بسطت ع يحتىياث... Object Navigator ىرج انبيا اث Parameters) Data Model(System Parameters & User ىرج ان سك Footer)... Layout Editor(Header & Body & ان داييع...Groups اإلضافت بإستخذاو )حمم صيغت )Formula... اإلضافت بإستخذاو ( إلا ستعالو )SQL Query... حمىل انتد يع... Summary انمىائى... Menu انمىائى ان بثمت بزس انفأسة األي... Popup Menu طشق انشبط بي أكثش ي (Forms( أو بي ان) Form ) وان) Report )... ان عايالث... Parameters انتعايم يع يهفاث انصىسة... انتعايم يع يهفاث انصىث... اإلستيشاد وانتصذيش... يهحك انصيغ انعايت ند م... SQL 9 10 11 12 3
احملاضرة األوىل Developer 6i اىث ح األعاع ح ىثش ا ح (SQL ذؼرثش اى) PL/SQL, : DML ىغح ؼاىسح اىث ا اخ ا ز رزؼب غ ؾز ٠ بد ا غذا ي ز ه ٠ ى ا زشاعغ ػ ب ثؼذ ر ف ١ ز رؼ ١ بر ب أل ب ال رزؼب غ ا ١ ى فغ رؾ ا زؼ ١ بد ( select إلعزؼشاك ا ج ١ ب بد - insert إلدخب ب - update زؼذ ٠ ب - delete ؾزف ب( : DDL ىغح ذؼش ف اىث ا اخ ا ز رزؼب غ ث ١ خ ا ) Database ( ز ه ال ٠ ى ا زشاعغ ثؼذ ر ف ١ ز رؼ ١ بر ب رؾ ا زؼ ١ بد create( إل ؾبء ا ىبئ - alter زؼذ ٠ اففبد ا ىبئ - drop ؾزف ا ىبئ بئ ١ ب ( : DCL ىغح اىرسن تاىث ا اخ رؾ ا زؼ ١ بد grant( ؼ ا قالؽ ١ خ - revoke غؾت ا قالؽ ١ خ(. Functions اىذ اه اىسغات ح : Sum( ) Max( ) Min( ) Avg ( ) Count( ) Abs( ) Mod( ) Sqrt( ) Power( ) Floor( ) Ceil( ) Round( ) Nvl(, ) اىذ اه اى سشف ح : Lower( ) Upper( ) Initcap( ) Concat(, ) Substar(,, ) Length( ) Instr(, ) Lpad(,, ) Rpad(,, ) Ltrim( ) Rtrim( ) د اه اىراس خ اى قد : Sysdate Months_Between(, ) Add_Months( ) Next_Day(, ) Last_Day( ) *, /, +, -, Not, And, Or, =,!=, >, >=, <, <=,,.., In, Not In, Is Null, Is Not Null, Between X And Y, Not Between X And Y, X Like Y, X Not Like Y ======================================================================= ========= Role 4
ػ ئفزشاك أ أسثؼخ ؾبعج ١ ٠ ؼ ف غب ثؾجىخ ػ ؽذح فا األفن ػذ ئػيبئ ع ١ ؼب ئع User ؽ ١ ذ و خ ا ش س ا زبثؼخ ر ه ثغشك ؼشفخ األخيبء ئسرىجذ ا غئ ي ا جبؽش ػ ب ز ه ؾذد ى ؽخ ئع User و خ ش س خبفخ ث أ ؾ وز ه ا قالؽ ١ بد رار ب ز ه غذ أ رغ ١ غ فالؽ ١ بد ا غزخذ ١ داخ )Role( اؽذح م ثا ؾبئ ب ٠ فش ػ ١ ب ا ىض ١ ش ا غ ذ ا لذ ا الص ١ ػ ذ رىشاس فظ ا ؼ... فؼ افزشاك أ ٠ عذ ذ ٠ ب 20 عذ ي أسد ب ؼ و عذ ي )فالؽ ١ خ اإلعزؼشاك - select فالؽ ١ خ اإلدخبي - insert فالؽ ١ خ ا زؼذ ٠ - update فالؽ ١ خ ا ؾزف ٠)deleteؼ أ ب ع ؾزبط ئ ؼ 4 طالز اخ * 20 خذ ه = 80 طالز ح غزخذ ا اؽذ أ 320 طالز ح غزخذ ١ األسثؼخ... ى ئرا ل ب ثزغ ١ غ ز ا ) 80 اىظالز ح( ػ ا غذا ي داخ )Role( اؽذح فا ب ع ؾزبط فمو ئ ؼ 84 طالز ح ث الغ 80 فالؽ ١ خ ئ داخ )Role( ص 4 فالؽ ١ بد غزخذ ١ ) ؼ فالؽ ١ خ ا ) )Role ى غزخذ ( ا زفبف ١ فغ ب ر يجك ػ ذ ػ ١ خ عؾت ا قالؽ ١ بد. ======================================================================= ========= PL / SQL ؽى ا جش ب ظ ف ١ ب وب زب : Declare ف زا ا غضء ٠ ز اإلػال ػ ا زؾ الد ا إؽشاد Cursor ا ض اثذ الؽظ ب ػ ذ اعزخذا ب إؽشاد أ ع خ Select ز ال رؾز ػ ؼب اإلع بد into أل ىج ١ ؼخ ػ ا إؽشاد ٠ ؼز ذ ػ ئؽنبس ع ١ غ ا غغالد دفؼخ اؽذح )ثذ رضا ( ص ؼب غز ب ػ عغ عغ. Begin ف زا ا غضء ٠ ز وزبثخ ا جش ب ظ ثأ ا ش ا ) PL/SQL )SQL, الؽظ ب أ ع خ Select ز رؾز ػ ؼب اإلع بد ٠ ؾزشه into ف ١ ب وزبثخ ؽش ه ا شثو ث ١ ا غذا ي Where إلسعبع عغ ؽ ١ ذ. Exception ف زا ا غضء رز ؼب غخ األخيبء ا ز لغ ؽذ ص ب أص بء ر ف ١ ز ا جش ب ظ ر ه األخيبء ا ز ال رىزؾف أص بء ا زشع خ ( Compile ١ غذ أخيبء ف ١ غخ ) Syntax ز األخيبء )االعزض بءاد( : : no_data_found رغزخذ ػ ذ ب ال د ٠ ؼ اإلعزؼال أ ث ١ ب بد ؽغت ا ؾشه : too_many_rows رغزخذ ػ ذ ب ٠ ؼ ١ ذ اإلعزؼال أوضش عغ ؽغت ا ؾشه : zero_devided رغزخذ ػ ذ ب رز ا مغ خ ػ ففش : cursor_already_open رغزخذ ػ ذ ب ٠ ى ا إؽش فز ؽب شح أخش د ئغالل : others رغزخذ أع أال ٠ ز ئ ٠ مبف ا جش ب ظ أل خيأ وب ) ا فزشك وزبثز ب دائ ب (. End ; Start Programs Oracle - oracle Application Development SQL Plus 5
ؼ ر ه م أ ال ثب ذخ ي ئ ثش ب ظ SQL Plus ؽغت ا خي اد ا غبثمخ الؽظ ظ س ؽبؽخ ريب ت SYSTEM مي ح )زاى ا نرة ئع اى غرخذ ثادخبي ئع غزخذ و خ ا ش س ا خبفخ ث اى ش س )MANAGER SYSTEM زأوذ ا غزخذ ا ؾب ذ ٠ ش ا ظب SQL م ثىزبثخ زا األ ش أ ب ؾش SQL> show user ; user is "SYSTEM" TAIZ و خ ا غش UST م ثا ؾبء غزخذ عذ ٠ ذ اع SQL> create user ust identified by taiz ; User created. UST غزخذ (Role [connect, ؼ ا ([ resource SQL> grant connect, resource to ust ; Grant succeeded. UST غزخذ (Role [exp_full_database, ؼ ا ([ imp_full_database SQL> grant exp_full_database, imp_full_database to ust ; Grant succeeded. UST م ا ٢ ثبالرقبي ثب غزخذ SQL> connect ust ; Enter password : **** Connected. زأوذ أ ب داخ ا غزخذ UST فؼ ١ ب SQL> show user ; user is "UST" 6
م ثا ؾبء ا غذا ي ا زب ١ خ غزخذ UST )ثؾغت ا اففبد ا م ١ د ا زو سح ى ؽم ( Table name Fields Name Section Sec_No number(2) (P. K) Sec_Name varchar2(50) (Not Null) Lvl Lvl_No number(1) (P. K) Lvl_Name varchar2(50) (Not Null) Stu Stu_No number(3) (P. K) Stu_Add varchar2(50) Stu_Name varchar2(50) (Not Null) Stu_BrthDt date Stu_Sec number(2) (F.K) Stu_Avg number(5,2) Stu_Lvl number(1) (F.K) Stu_CertType number(1) Subject Sub_No number(3) (P. K) Sub_Name varchar2(50) (Not Null) Sub_Sec number(2) (F.K) Sub_Lvl number(1) (F.K) Mark Mark_Sec number(2) (F.K) Mark_Yj number(5,2) (Check 0.. 20) Mark_Lvl number(1) (F.K) Mark_Ht number(5,2) (Check 0.. 20) Mark_Stu number(3) (F.K) Mark_Ft number(5,2) (Check 0.. 60) Mark_Sub number(3) (F.K) SQL> create table Section(Sec_No number(2) primary key, Sec_Name varchar2(50) not null) ; Table created. SQL> create table Lvl(Lvl_No number(1) primary key, Lvl_Name varchar2(50) not null) ; Table created. 7
SQL> create table Stu(Stu_No number(3) primary key, Stu_Name varchar2(50) not null, Stu_Sec number(2) constraint stusecfk references Section(Sec_no), Stu_Lvl number(1) constraint stulvlfk references Lvl(Lvl_no), Stu_Add varchar2(50), Stu_BrthDt date, Stu_Avg number(5,2), Stu_CertType number(1)) ; Table created. SQL> create table Subject(Sub_No number(2) primary key, Sub_Name varchar2(50) not null, Sub_Sec number(2) constraint subsec references Section(Sec_No), Sub_Lvl number(1) constraint sublvl references Lvl(Lvl_No), Sub_Stu number(3) constraint substu references stu(stu_no) ) ; Table created. SQL> create table Mark( Mark_Sec number(2) constraint marksec references Section(Sec_No), Mark_Lvl number(1) constraint marklvl references Lvl(Lvl_No), Mark_Stu number(3) constraint markstu references stu(stu_no), Mark_Sub number(2) constraint marksub references subject(sub_no),,, ; Mark_Yj number(5,2) constraint chkyj check(mark_yj between 0 and 20) Mark_Ht number(5,2) constraint chkht check(mark_ht between 0 and 20) Mark_Ft number(5,2) constraint chkft check(mark_ft between 0 and 60)) Table created. 8
======================================================================= ========= الزظاخ ا ح : ػ ذ ئ ؾبء أ غزخذ عذ ٠ ذ فا ر ه ٠ ى داخ ا غزخذ SYSTEM ر ه أل لبدس ػ اإل ؾبء خالي فالؽ ١ خ ا )[ DBA ] )Role ا ز ٠ ز ى ب. ز ى ئر ب ػ ١ خ اإلرقبي ثب غزخذ UST ث غبػ ٠ غت ؾ فالؽ ١ خ ئ ؾبء ا غ غخ Create Session خالي ا )[ connect ] )Role أل ز ا قالؽ ١ خ ن خ ف ١ ب. ػ ذ ئ ؾبء ا غذا ي فا ب م ثبإلرقبي ثب غزخذ UST ر ه أع أ رى ا غذا ي ا ؾئخ ربثؼخ..a.b.c 9
احملاضرة الثانية : Developer 6i ا اع خ ا ز ر ى ب ػ ثشا ظ ٠ زخبىت ث ب ا ) )User غ لبػذح ا ج ١ ب بد ٠ ؾز ا ؼذ ٠ ذ ا جشا ظ )األد اد( ا غبػذح ف أ ساو ض : Graphics Builder Report Builder Form Builder... ئ خ. ===================================== ========= )User : Form Builder أداح رغزخذ ج بء ا برط ا ز ٠ غزخذ ب ا ) ثى ػ بفش ب. ============================================== Form Builder Start Programs Oracle Forms 6i-orantf Form Builder فزظ ش أ ال ؽبؽخ رشؽ ١ ج ١ خ ٠ ى خال ب رؾذ ٠ ذ ب ئرا وب ا ي ة ا جذء ثب زق ١ أ ثب زؼ ١ فب زق ١ أسثغ خ ١ بساد : Data Block ئعزخذا ؼب ظ وز خ ا ج ١ ب بد ث بء رط عذ ٠ ذ ٠ ذ ٠ ب فزؼ رط ع د غجمب ث بء رط ٠ ؼز ذ ػ لب ت. زؼ ١ خ ١ بسا ب : ػشك ا غ خ ا غش ٠ ؼخ ) فب ١ ( ئعزىؾبف وش د ا ز ١ ؾبد ) ب (. )زاى ا ع خراس اىثذء تاىرظ تاعرخذا ؼاىح مريح اىث ا اخ Data )OK ث ؼغط Block زظ ش ثؼذ ر ه ؽبؽخ رشؽ ١ ج ١ خ خبفخ ث ؼب ظ وز خ ا ج ١ ب بد Data Block )ف ؼغط اىراى ( ص رظ ش ؽبؽخ رؾذ ٠ ذ ع وز خ ا ج ١ ب بد : عذ ي أ ؾ ذ 10
ئعشاء خض. )زاى ا ع خراس خذ ه أ ش ذ ث ؼغط اىراى ( ثؼذ ر ه ٠ ي ت ئع ا غذ ي أ ا ؾ ذ ا ز عزإخز وز خ ا ج ١ ب بد Data Block ؼ ر ه الثذ اإلسرجبه أ ال ثمبػذح ا ج ١ ب بد رىل تاىؼغط ػي اىضس Browse وزبثخ ئع ا ) )User ا ) )Password ثؾى فؾ ١ ؼ ث اىؼغط ػي اىضس connect فزؾذ ٠ ذ ىش ٠ مخ ا ؼشك : عزى ب ٠ زؼ ك ثب غزخذ ا ؾب )ا ز ر اإلسرجبه خال ( أ غزخذ ١ آخش ٠ أ ى ١ ب رؾذ ٠ ذ ب ش ٠ ذ رن ١ ا غذا ي ا ؾب ذ ا شادفبد فاخز ١ بس ا غذ ي أ ا ؾ ذ أ ا شادف ا ي ة. )زاى ا ع خراس ئع اى غرخذ UST مي ح اىغش TAIZ خذا ه زا اى غرخذ اىساى خراس اىدذ ه )STU ثب زب رظ ش ا ؾم ي ف ا )List( ف خزبس ب ا ؾم ي ا ي ة ا زؼب ؼ ب ث اعيخ األصساس > << < >> )زاى ا ع خراس << ث ؼغط اىراى ( 11
رظ ش ؽبؽخ ا ز ب ا زجش ٠ ىبد congratulations زؼ ػ ئر ب ؼب ظ وز خ ا ج ١ ب بد Data Block ث غبػ لج أ نغو Finish ش ع د ا خ ١ بس ٠ ا زب ١١ : ئ ؾبء وز خ ا ج ١ ب بد Data Block ثؼذ اإلرقبي ث ؼب ظ ا زق ١ )ا خيو )Layout ئ ؾبء وز خ ا ج ١ ب بد فمو. )زاى ا ع خراس ئ شاء مريح اىث ا اخ تؼذ اإلذظاه ت ؼاىح اىرظ Layout ث ؼغط ا ح( زظ ش ثؼذ ر ه ؽبؽخ رشؽ ١ ج ١ خ خبفخ ث ؼب ظ ا زق ١ )ا خيو )Layout )ف ؼغط اىراى ( فزظ ش ؽبؽخ رؾذ ٠ ذ ع ا ) ا سلخ أ ا م بػ )Canvas بن خ غخ أ اع : )ع ذسع ب الؽمب ثب زفق ١ [ا ؾبمشح ا ضب خ]( Content Stacked Vertical Toolbar Horizontal Toolbar Tab )زاى ا دؼي ا ػي اى ع اإلفرشاػ Content ث ؼغط اىراى ( ف ا ؾبؽخ ا زب ١ خ ب رظ ش ا ؾم ي ف ا ث اعيخ األصساس > >> < << ) فؼو ا ئخر اس خ غ اىسق ه ئرا أسدخ ف ا تؼذ ئخفاء أزذ ز اىسق ه ف ر رىل ػ طش ق ئػطاء اىق ح No ىخاط ح اىشؤ ح Visible اىراتؼح ى ث ؼغط اىراى ( )List( ف خزبس ب ا ؾم ي ا ي ة ئظ بس ب ف ا رط 12
٠ ى ب ف ز ا ؾبؽخ رغ ١١ ش ا ؼ ب ٠ ا ظب شح ألع بء ا ؾم ي Prompt وز ه ػشم ب W ى ب H )ث ؼغط اىراى ( رظ ش ؽبؽخ رؾذ ٠ ذ ىش ٠ مخ ػشك وز خ ا ج ١ ب بد عزى : : Form ػ ذ ب ش ٠ ذ أ ٠ ؾز ا رط ػ ػذد ا ىبئ بد ض List item Display item Text... Radio Group Image item ئ خ : Tabular ػ ذ ب ش ٠ ذ أ رظ ش ا ج ١ ب بد ػ ؽى عغالد. )زاى ا ع خراس Tabular ث ؼغط اىراى ( ف ز ا ؾبؽخ ؾذد : ئع ) Frame ( ػذد ا غغالد ا ظب شح )اإلفزشام 1( ا غبفخ ث ١ ا غغالد مذسح ثب ج ١ ىغ Pixcel )اإلفزشام 0(. Students ماع ىإلطاس ش ٠ ذ ػشك ؽش ٠ و ا ز ش ٠ ش ثغ اس ا ج ١ ب بد أ ال ( زاى ا ع ق تنراتح ) 2 ت نغو ذ ش ط ذسذ ذ ػذد عدالخ ظا شج ت) ) 5 ذسذ ذ اى غافح ت اىغدالخ ت) ػشع شش ط اىر ش ش ث ؼغط اىراى ( ثؼذ ب رظ ش ؽبؽخ ا ز ب ا زجش ٠ ىبد congratulations زؼ ػ ئر ب ؼب ظ ا زق ١ )ا خيو( ث غبػ )ف ؼغط ا ح( تزىل ن قذ ق ا ترشغ و Form. Builder 13
Form Builder : Object Navigator.1 ٠ ؾز ػ بفش ا رط وب خ Form وز ه ا ىبئ بد Objects ا ى ا ؾق ي ػ ز ا ؾبؽخ خالي ا نغو ػ ا ضس F3 أ ا مبئ خ Tools خزبس األ ش. Object Navigator : Layout Editor.2 Canvas ا ؼ بفش ا ز مؼخ ٠ ؾز ا سلخ أ ا م بػ ػ ١ ا ى ا ؾق ي ػ ز ا ؾبؽخ Tools خزبس F2 أ ا مبئ خ خالي ا نغو ػ ا ضس األ ش. Layout Editor : Property Palette.3 رؾز خقبئ ا ؼ بفش ا ىبئ بد Objects ا ى ا ؾق ي ػ ز ا ؾبؽخ خالي ا نغو ػ ا ضس F4 أ ا مبئ خ Tools خزبس األ ش. Property Palette ======================================================================= ========= Object Navigator Forms )Form) اإلفزشام ٠ أخز ئع [ MODULE1 : ئع ا [زاى ا 1. ا جش ب ظ د ب PL/SQL( (SQL, ٠ فز ػ ذ ؽذس Triggers : ػجبسح ػ.2 ؼ ١ Alerts : ػجبسح ػ ا شعبئ.3 PL/SQL ػجبسح ػ ىزجبد : Attached Libraries.4 DB رؾز ا ىز ا ز ئ ب أ رى : Data block.5 ا ز رؼز ذ ػ عذا ي أ ؾب ذ ا ) )Database أ لذ رى وز ا زؾى ا ز ال رؼز ذ ػ ا ) Database ( NonDB Canvases : ا خ ف ١ خ أ ا م بؽ ١ خ )ا سلخ ا ز رشع ػ ١ ب 6. ا ؼ بفش( Editor : ٠ ى ه خال ئخز ١ بس ؾشس ا ق ؿ ا ز رش ٠ ذ 7. ئعزخذا LOVs : ػجبسح ػ لبئ خ شوجخ رم ١ ؽم ؼ ١ 8. ا ) Database ( Groups : Object ػجبسح ػ رغ ١ غ ىبئ بد ف غ ػخ 9. اؽذح زغ ت ثز ه ا زىشاس أص بء ا ؼ خبفخ ف ػ ١ بد ا غخ ا قك 10. Parameters : عذا ػ ذ ئسعبي ل ١ غ )ا رط )Form ئ رط آخش 11. Menus : Popup خق م ائ ا جضمخ ثضس ا فأسح األ ٠ Package أ Function أ Procedure ئ ب أ رى : Programs Units.12 13. Classes : Property ػجبسح ػ رغ ١ غ خقبئ ف غ ػخ اؽذح 14
LOVs ؾزبط إلعزخذا ب غ : Record Groups.14.15 Reports : إل ؾبء ا زمبس ٠ ش 16. Attributes : Visual ٠ غزخذ إل ؾبء غ ػخ خقبئ شئ ١ خ.17 Windows : ٠ غزخذ زؾى ثب افز Menus ؾزبع ب ػ ذ ا زؼب غ ا م ائ )ؽ ١ ش رخض ف ف غزم ( ػجبسح ػ ىزجبد PL/SQL ػجبسح ػ ىزجبد رزجغ ا ىبئ بد ا ع دح ف Oracle PL/SQL Libraries Object Libraries ػجبسح ػ ا ؾض ا ذ غخ غ ا ) Oracle ( ؽ ١ ش رم ثؼشك ع ١ غ غزخذ لبػذح ا ج ١ ب بد Developer 6i Built in Packages Database Objects Form Builder Forms Runtime *.FMB *.FMX Save ا ؾفظ Compileا زشع خ Formsاى ارج Source قذس Executeر ف ١ ز Form Builder Forms Runtime *.MMB *.MMX Save ا ؾفظ Compileا زشع خ Menuاىق ائ Source قذس Executeر ف ١ ز Report Builder Reports Runtime *.RDF *.REP Source قذس Executeر ف ١ ز Save ا ؾفظ Compileا زشع خ Reports اىرقاس ش ىجؼب ٠ ؼي ا ضث ا ف ا ز ف ١ ز ٠ جم Execute ا ف ا قذس Source غ ا جش ظ ؽ ١ ش ٠ غزي ١ غ ا زؼذ ٠ ف ا جش ب ظ ال ع ٠ غزي ا زؼذ ٠ ف ا ز ف ١ ز. 15
الزظاخ ا ح : ػ ذ سع أ أداح )وبئ ( الث ذ أ ٠ مغ ػ Canvas ئال فا ا زشع ع ١ ؼي سعب خ خيأ ثأ غ ١ ش لبدس ػ ا ز ف ١ ز. ػ ذ ر ف ١ ز ا جش ب ظ الؽظ ع د ؽبؽز ١ : Forms Runtime. WINDOW1 ف مغ ا ز ف ١ ز ٠ ى ئعشاء )ئدخبي اإلعزؼال ( وز ه )ر ف ١ ز اإلعزؼال ( ا ز م ث ١ ا غغالد. زشع خ ا جش ب ظ زجغ ا خي اد ا زب ١ خ : File Administration Compile File.a.b.c.d ثب زب ٠ ز ا ؾق ي ػ ا غخخ ا ز ف ١ ز ٠ خ [ فبد ا ) FMX.*(]. 16
احملاضرة الثالثة MODULE : Menu Module.1 رؼ رؾذ ٠ ذ ا مبئ خ ا شئ ١ غ ١ خ ا ز رش ٠ ذ ئعزخذا ب ػ ذ ر ف ١ ز ا جش ب ظ )ف ا ؼ أ ا م ائ ف Oracle رأخز فب غزمال و ب روش ب ر ه عبثمب ( ا م ١ خ اإلفزشام ١ خ ز ا خبف ١ خ DEFAULT&SMARTBAR أ ا مبئ خ ا ز رظ ش ف ؽبؽخ. Forms Runtime : Defer Required Enforcement.2 رأخز ا م ١ خ اإلفزشام ١ خ No ػ ذ عؼ ب Yes فا ب رم ثزغب ص ا م ١ د ا ؾئخ ػ ا ؾم ي. Items Form رأخز : Direction.3 رؼ رؾذ ٠ ذ ئرغب ا مشاءح ا ىزبثخ رط ز ا خبف ١ خ ا م ١ ا ضالس ا ٢ ر ١ خ : Registry رى ؽغت ا غخ ا ؾذدح ف : Default a.. Start Run RegEdit ثؼذ ا ذخ ي ئ ؾشس ا ) Registry ( زجغ ا زغ غ ا ٢ ر : HKEY_LOCAL_MACHINE SOFTWARE ORACLE 17
HOME0 NLS_LANG [National Language Standard_LANG] فم ١ خ ا ) Data )Value ا زبثؼخ ) )NLS_LANG عزأخز أؽذ ا م ١ ز ١ ا زب ١ ز ١ : )Right To Left( ARABIC_UNITED ARAB EMIRATES.AR8MSWI N1256 ARABIC_SAUDI ARABIA.AR8MSWIN1 256 ب ٠ ؼ أ ا غخ اإلفزشام ١ خ ا ؼشث ١ خ ثب زب رقجؼ ا م ١ خ اإلفزشام ١ خ غ الؽظخ أ ٠ ز رؾذد ع ا غخ ا ؼشث ١ خ ا زمبح )ئ بسار عؼ د... ئ خ( أص بء ػ ١ خ رضج ١ ذ Oracle أ ا م ١ خ ا زب ١ خ : AMERICAN_AMERICA.WE8ISO8859PI ب ٠ ؼ أ ا غخ اإلفزشام ١ خ اإل غ ١ ض ٠ خ ثب زب رقجؼ ا م ١ خ اإلفزشام ١ خ Right( )Left To. : Left To Right ا ١ غبس ئ ا ١ ١. : Right To Left ا ١ ١ ئ ا ١ غبس. Triggers.b.c ػجبسح ػ ؽفشح قذس ٠ خ Code رىزت ث) PL/SQL (SQL ; ػ صالصخ غز ٠ بد : غر اى رج ) Module ب: 1. : WHEN-NEW-FORM-INSTANCE ٠ فز ػ ذ ثذا ٠ خ رؾ ١ ا ) Form ( ئ ا زاوشح. غر مريح اىث ا اخ ) Data Block ب :.2 ٠ فز ػ ذ ثذا ٠ خ ا ذخ ي ػ ا ) Block ( : WHEN-NEW-BLOCK-INSTANCE : WHEN-NEW-RECORD-INSTANCE ٠ فز ػ ذ ثذا ٠ خ ا ذخ ي ػ و عغ ٠ فز لج ا ذخ ي ػ ا ) Block ( : PRE-BLOCK. ٠ فز ثؼذ ا ذخ ي ػ ا ) Block ( : POST-BLOCK غر اىؼ ظش ) Item ب :.3 ٠ فز ػ ذ ثذا ٠ خ ا ذخ ي ػ ا ) Item ( : WHEN-NEW-ITEM-INSTANCE PUSH BUTTON ٠ فز ػ ذ ا مش ػ ا ؼ قش : WHEN-BUTTON-PRESSED List Item ٠ فز ػ ذ ا زؼذ ٠ ػ ا ؼ قش : WHEN_LIST_CHANGED. Image ػ ذ ا مش ػ ا ؼ قش : ٠ فز WHEN_IMAGE_PRESSED ======================================================================= ========= 18
ثب يجغ ١ ظ ا أ ىزت ا شعب خ ى ا ؼشفخ : )Alert أ message ب غشك ا شعب خ ) زؾذ ٠ ذ ػ ب. )Trigger أ ٠ ع ىزج ب )ف أ ؽذس أ اع اىشعائو : message ) ا شعبئ ا ز رخز ثب ظ س ػ ؽش ٠ و ا ؼ بد )ؽش ٠ و ا ؾب خ( رأخز ا ق ١ غخ 1. ا ؼب خ ا زب ١ خ ') message ض اىشعاىح; (' ؼ ر ه ؾزبط أ ال ؼشفخ ا )Trigger( ا ز ش ٠ ذ ر ف ١ ز أ ش ئظ بس ا شعب خ ػ ذ فجؼذ رؾذ ٠ ذ اىؼ ظش WHEN-NEW- ا ؾذس Smart Trigger م ثب مش ػ صس ا فأسح األ ٠ خزبس األ ش STU_NAME message(' Please Enter Name of Student? ىزت ف ١ أ ش ا شعب خ ITEM-INSTANCE ; (' ص نغو ػ ا ضس Compile زأوذ أ ر رشع خ األ ش ثؾى فؾ ١ ؼ زا ا ؾذس الؽظ ػ ذ رىشاس ػ ا شعب خ ا خبفخ ثب ) message ( شر ١ أ لذ ر رؾ ٠ ا شعب خ ا ضب ١ خ ر مبئ ١ ب ئ ب ٠ غ ثب ) Alert (. 2. )Alert ا شعبئ ا ز رظ ش ثؾى ف ذ ق ؽ اس ا ز لذ رى سعب خ ا ع )ئ ٠ مبف Stop أ رؾز ٠ ش Caution أ الؽظخ )Note لذ رؾز ػ ( صس أ صس ٠ أ صالصخ ػ األوضش( ئ غ ١ ش ر ه خقبئ ف بد ٠ ك ا ؾ اس... ر ه : و ضبي ػ 19
ف ٠ ى Oracle ػ ض ز ا شعبئ ى ػ شؽ ز ١ : a. شزيح ئ شاء اىشعاىح : ؽ ١ ش م ثزؾذ ٠ ذ ا ) )Alert ا ع د ف ؽبؽخ ا ) )Object Navigator ص ١ ؾئ Create ب ئع ب ئفزشام ١ ب شعب خ ا ؾئخ ف ؾذد ب ص نغو F4 زؾى ثم ١ ا خقبئ ا ب خ ا زبثؼخ ب وب زب : Property Value 1 Name Del 2 Title ؽزف عغ 3 Message رش ٠ ذ ؽزف ا غغ ثب زأو ١ ذ 4 Alert Style Stop 5 Button 1 Label افك 6 Button 2 Label ئ غبء األ ش 7 Default Alert Button Button2 شزيح طية اىشعاىح اى ؼاىدح: b. ؼ ر ه ؾزبط ؼشفخ ا ) Trigger ( ا ز ش ٠ ذ ر ف ١ ز أ ش ئظ بس ا شعب خ ػ ذ فجؼذ رؾذ ٠ ذاى) Data Data أل و ب ؼ أ ػ ١ خ ؽزف ا غغ رى ػ غز وز خ ا ج ١ ب بدBlock STU )Block م ثب مش ػ صس ا فأسح األ ٠ خزبس األ شTrigger Smart ا ؾذس KEY-DELREC ىزت ف ١ أ ا ش ؼب غخ ا شعب خ وب زب : Declare N Number ; Begin N := Show_Alert('Del') ; If N = Alert_Button1 Then Delete_Record ; Commit ; Else Null ; End If ; End ; 20
ص نغو ػ ا ضس Compile زأوذ أ ر رشع خ األ ش ثؾى فؾ ١ ؼ زا ا ؾذس ١ ز ا ز ف ١ ز خالي ا مبئ خ ا ز رظ ش ف ؽبؽخ Form Runtime ى ئرا أسد ب ر ف ١ ز أ ش ا ؾزف زا خالي صس ق تؼ ي ح اىسزف ف زجغ ا خي اد ا زب ١ خ : ؾئ صس ١ م ثؼ ١ خ ا ؾزف ر ه ثشع ػ ا ) Canvas ( ؼي ١ ا خقبئ : Property Value.1 1 Name DL ؽزف 2 Label 3 Number of item displayed 1 م ث غخ ب وزج ب ف ا ؾذس KEY-DELREC ئ ا ؾذس ا خبؿ ثب ) )Push-Button ػ ىش ٠ ك ئخز ١ بس األ ش Smart Trigger ا ؾذس WHEN-BUTTON-PRESSED خالي : رؾذ ٠ ذ ا ؼ قش DL ؽبؽخ Object Navigator ا مش ػ صس ا فأسح األ ٠ رؾذ ٠ ذ ا ضس ؽزف ف ؽبؽخ Layout Editor ا مش ػ صس ا فأسح األ ٠ ػ ذ رؾذ ٠ ذ ا ؼ قش DL أ رؾذ ٠ ذ ا ضس ؽزف ا مبئ خ. Program.2.a.b.c Data Blocks ن اخ اى) Block )Data األعاع ح : ا ضب ا ( Triggers )] [ا غز )Data األؽذاس ا زؼ مخ ثب ) Block : Triggers.a : Items ر ض ا ؼ بفش ا زبثؼخ زا ا ) Block )Data [ ضال : ؽم ي ا غذ ي ػ بفش ا زؾى ا زبثؼخ ] b. : Relations شثو زا ا ) Block )Data غ أ Block( )Data آخش [ ضال : سثو عذ ي غ عذ ي آخش]. c. : )Data Block خظائض اى) ا نش س رؾذ ٠ ذ خقبئ أ Data Block ع د ذ ٠ ب ف ا جش ب ظ ر ه : زؾذ ٠ ذ فالؽ ١ خ و غزخذ 21
١ ى ا ؼ أوضش أ ١ خ. ا ز ع ١ ز ا زؼب خال غ ا ) Block )Data ثش غ ١ ب رؾذ ٠ ذ و ١ ف ١ خ ئ زمبي ا إؽش ب صالصخ ل ١ : Name 1 : Same Record (A )B رؼ ا ز م ث ١ ؽم ي فظ ا غغ أ ي ؽم ئ آخش ؽم ثؾ ١ ش ٠ ظ ا إؽش ػ فظ ا غغ ١ ز ا ز م ث ١ ؽم ي زا ا غغ ثنغو Enter : Change Record رؼ رغ ١ ش ا غغ ا ؾب ثؾ ١ ش ٠ ز ا زمبي ا إؽش آخش ؽم غغ ا ؾب ئ أ ي ؽم غغ ا زب ثنغو Enter Navigation Style 2 : Change Data Block رؼ رغ ١ ش ا ) Block ( ا ؾب )C ثؾ ١ ش ٠ ز ا زمبي ا إؽش أخش ؽم غغ ا ؾب ف ا ) Block ( ا ؾب ئ أ ي ؽم ف ا ) Block ( ا زب. رؾذ ٠ ذ ا ) Block ( ا غبثك F3 ا زشر ١ ت اإلفزشام ؽغت ؽبؽخ رؾذ ٠ ذ ا ) Block ( ا زب رؾذ ٠ ذ ػذد ا غغالد ا ؼش مخ ػ ا ) Canvas ( رؾذ ٠ ذ ئرغب ا غغالد ػ د أ أفم )اإلفزشام ػ د ( رؾذ ٠ ذ ع ا ) Block )Data ر ز ه ا م ١ No) (Yes, )Yes( : Database.1 أ ا شرجو غ لبػذح ا ج ١ ب بد )ا غذا ي ا ؾب ذ ا شادفبد...ئ خ( )No( : Non Database.2 أ ا ؼز ذ ػ ػ بفش ا زؾى فمو ال ٠ ؼز د ػ لبػذح ا ج ١ ب بد )DUMMY(. ع بؽ ١ خ اإلعزؼال ػ ا ج ١ ب بد أص بء ا ز ف ١ ز ر ز ه ا م ١ (Yes, No) Previous Navigation Data Block Next Navigation Data Block Number of Record display Records Orientation Database Data Block Query Allowed 3 4 5 6 7 8 22
ع بؽ ١ خ اإلدخبي ج ١ ب بد أص بء ا ز ف ١ ز ر ز ه ا م ١, (Yes No) ع بؽ ١ خ ا زؼذ ٠ ػ ا ج ١ ب بد أص بء ا ز ف ١ ز ر ز ه ا م ١ (Yes, No) ع بؽ ١ خ ا ؾزف ا ج ١ ب بد أص بء ا ز ف ١ ز ر ز ه ا م ١, (Yes No) الزظح ا ح : فالؽ ١ خ ا ) SQL ( أل فالؽ ١ خ Developer و ضبي ػ ر ه : SQL> revoke delete on STU.Lvl from UST ; رؼ ١ خ ا ) SQL ( ز عزغؾت فالؽ ١ خ ا ؾزف ػ ا غذ ي Developer ف أ ثش ب ظ أ ب ف ust ا غزخذ Lvl فا ئرا ر ئػيبء ا م ١ خ No خبف ١ خ Delete Allowed فغز غ ا ؾزف ا غذ ي Lvl م ا جش ب ظ ا ؾب فمو ػ ذ ئ ؾبء ثش ب ظ آخش فا ٠ ى ا ؾزف ا غذ ي Lvl ئرا ب ر ئػيبء ا م ١ خ Yes خبف ١ خ Delete Allowed ب رىزت رؼ ١ خ ا ) SQL ( أػال ئال فال عذ ل ١ ز ا خبف ١ خ ع بؽ ١ خ ؾزف ث) Yes ( أ ؼ ب ث) No (. ؽشه ع ت ا غغالد ا غذا ي رؾذ ٠ ذ ا ؾم ا شاد ا زشر ١ ت خال و ١ ف ١ خ ا زشر ١ ت أ ض خ ر ه : : Lvl_Name ٠ ز ا زشر ١ ت ؽغت ا ؾم ئع ا غز رقبػذ ٠ ب )اإلفزشام ( : Lvl_Name desc ٠ ز ا زشر ١ ت ؽغت ا ؾم ئع ا غز ر بص ١ ب : Lvl_Name Asc ٠ ز ا زشر ١ ت ؽغت ا ؾم ئع ا غز رقبػذ ٠ ب Insert Allowed Update Allowed Delete Allowed WHERE Clause ORDER BY Clause 9 10 11 12 13 23
Stu Visual Attribute Current Record Red 12 Arial Cyan ١ ز ر ه ال ثذ ا ش س ث شؽ ز ١ : a. شزيح ئ شاء اىخظائض اى شئ ح : ؽ ١ ش م ثزؾذ ٠ ذ ا ) Attribute )Visual ا ع د ف ؽبؽخ ا ) Navigator )Object ص ١ ؾئ Create ب ئع ب ئفزشام ١ ب خقبئ ا شئ ١ خ ا ؾئخ ف ؾذد ب ص نغو F4 زؾى ثم ١ ا خقبئ ا ي ثخ وب زب : Property Value 1 Name VA1 2 Visual Attribute Type Common 3 Foreground Color Red 4 Background Color Cyan 5 Font Name Arial 6 Font Size 12 شزيح طية اىخظائض اى شئ ح : b. ؼ ر ه ؾذد اى) Block STU )Data ص نغو F4 زؾى ثب خقبئ ا شئ ١ خ وب زب : Property Current Record Visual Attribute Group Value VA1 ======================================================================= ========= Items ر مغ ئ ػ ١ : ض : Text_item. Radio_Group Check_box List_Item ض : Display_Item. Images Push_Button Input Items Non_Input Items ذشرشك ز اىؼ اطش تثؼغ اىخظائض ذخريف ف اىخظائض األخش a b 24
Text_Item Name ا ز ع ١ ز ا زؼب خال غ ا ) Text_item ( ثش غ ١ ب 1 رؾذ ٠ ذ ع ا ؼ قش ا ؼش ك ؾو أ ج ذ No) (Yes, لغ ظ س ا ىزبثخ,End) (Left,Right,Center,Start ع ا ج ١ ب بد ى ي ا ج ١ ب بد ا م ١ خ اإلثزذائ ١ خ ؼ قش ل ١ خ ا ؼ قش ي ة ئدخب ب )ئعجبس ( ر غ ١ ك ا ؼ قش ا شل ؽغبث ١ ب ) ضال :999.99( ا ؼ قش شرجو ثمبػذح ا ج ١ ب بد أ غ ١ ش شرجو( No (Yes, ا غ بؽ ١ خ ثبإلعزؼال No) (Yes, ا غ بؽ ١ خ ثبإلمبفخ No) (Yes, ا غ بؽ ١ خ ثب زؼذ ٠ No) (Yes, شئ أ خف ( No (Yes, رؾذ ٠ ذ ا م بؽ ١ خ ا ز مغ ػ ١ ب ا ؼ قش رؾذ ٠ ذ لغ ا ؼ قش األفم رؾذ ٠ ذ لغ ا ؼ قش ا ؼ د رؾذ ٠ ذ ا ؼشك رؾذ ٠ ذ اإلسرفبع ا زؾى ثب خو األ ا ا زؾى ثب ( Label ) ا خبؿ ثب ( Text_item ) ا زؾى ثأ ا خي ه ا (Label) ا خبؿ ثب ( Text_item ) ئظ بس أعف ا ( Form ) ػ ذ رفؼ ١ ا ؼ قش ئظ بس م ئىبس ػ ذ ف ي إؽش ا ب ط ئ ١ Item Type Enabled Justification Data Type Maximum Length Initial Value Required Format Mask Database Item Query Allowed Insert Allowed Update Allowed Visible Canvas X Position Y Position Width Height Font & Color Prompt Prompt Font & Color Hint Tooltip 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 21 23 24 25
List_Item زؾذ ٠ ذ ا ؼ بفش ا ؾز اح غ ل ١ ب ػ ذ ع د ل ١ خ غب ٠ شح م ١ ا ؼ بفش ا ؾز اح Element in List Mapping of Other Values 1 2 ثم ١ خ ا خقبئ و ب ش عبثمب ======================================================================= ========= Check_Box ل ١ خ ا ؼ قش ػ ذ ب ٠ ى ؾذد ) ؾو( ل ١ خ ا ؼ قش ػ ذ ب ال ٠ ى ؾذدا ػ ذ ع د ل ١ خ غب ٠ شح م ١ ز ١ ا غبثمز ١ Value When Checked Value When Unchecked Check box Mapping of Other Value 1 2 3 رى ا م ١ خ ا غب ٠ شح ػبدح م ػخ فValue Initial ثم ١ خ ا خقبئ و ب ش عبثمب ======================================================================= ========= Radio_Group ذس اىؼذ ذ Radio_Button أ أ ا ت ثاتح اىسا حContainer ىيخ اساخ اى فشدج ػ ذ ع د ل ١ خ غب ٠ شح م ١ ا ؼ بفش ا ؾز اح ا م ١ خ اإلثزذائ ١ خ ؼ قش Mapping of Other Values Initial Value 1 2 ثم ١ خ ا خقبئ و ب ش عبثمب Radio_Button Label ا ؼ ا ا ظب ش أ ب ا غزخذ 1 26
Radio Button Value ا م ١ خ ا خبفخ ثب ؼ قش 2 ثم ١ خ ا خقبئ و ب ش عبثمب ======================================================================= ========= Display_Item و ا خقبئ لذ شد عبثمب ى غزف ١ ذ زا ا ؼ قش أ ال ٠ ى ا زؼذ ٠ ف ١ ال ٠ زم ئ ١ ا زشو ١ ض Focus ======================================================================= ========= Push_Button ا ؼ ا ا ظب ش أ ب ا غزخذ رؾذ ٠ ذ ر ؾ ١ و ع د األ ٠ م بد ػ ا ضس( No (Yes, رؾذ ٠ ذ ا ف ا ز عزى أ ٠ م ز ػ ا ضس ثم ١ خ ا خقبئ و ب ش عبثمب Label Iconic Icon Filename 1 2 3 ======================================================================= ========= Image ع ا ق سح ػ ك ا ق سح رؾذ ٠ ذ و ا زؾغ ١ )ليغ الئ خ( Image Format Image Depth Sizing Style 1 2 3 ثم ١ خ ا خقبئ و ب ش عبثمب 27
احملاضرة الرابعة ػ ىش ٠ ك ا زؼ ١ خSet غزي ١ غ ا زؾى ثخقبئ ا (Window) أ ا ( Block ) أ ا ( Item ) أص بء ر ف ١ ز ا جش ب ظ ث ١ ب ف ؽخ ا خقبئ Property Palette غزي ١ غ ا زؾى ثب خقبئ ف شؽ خ رق ١ ا جش ب ظ. ا ق ١ غخ ا ؼب خ و ب ٠ : زؾى ثخقبئ ا بفزح ثش غ ١ ب ) Set_Window_Propertyئع اى افزج, ; ئع ا خبف ١ خ,ل ١ خ ا خبف ١ خ ) زؾى ثخقبئ ا ىز خ ثش غ ١ ب Set_Block_Property( ئع اىنريح, ئع ا خبف ١ خ,ل ١ خ ا خبف ١ خ ; ) زؾى ثخقبئ ا ؼ قش ثش غ ١ ب ) Set_Item_Propertyئع اىؼ ظش, ئع ا خبف ١ خ,ل ١ خ ا خبف ١ خ ; ) ثب يجغ ز ا خقبئ رؼذي ف ا ؾذس ا بعت ا ز ٠ ؾذد ا ي ت ا ؾبعخ ف ضال : ػ ذ رؾ ١ ا جش ب ظ : ؽذس WHEN_NEW_FORM_INSTANCE ف صس... : ؽذس... WHEN_BUTTON_PRESSED ئ خ. Window 1 مأ ثيح ػي رىل : (Forms Runtime) Set_Window_Property(Forms_Mdi_Window, Window_State, Maximize); الؽظ أ ئع بفزح ا ( Runtime (Forms ئع صبثذ دائ ب ف ٠ ىزت Forms_Mdi_Window غ ١ ش ئؽبساد اإللزجبط. (Forms Runtime) Set_Window_Property('Window1', Window_State, Maximize); الؽظ أ ئع بفزح ا جش ب ظ ئع زغ ١ ش ف ٠ ىزت ؽغت ئع ا بفزح ا جش غ غ ع د ئؽبساد اإللزجبط. 800 600 Set_Window_Property('Window1', Height, 600, Width, 800); الؽظ ع د ز ا ؾب خ ا خبفخ ي ي ا ؼشك ف ػذد ا ( argument ) ا شع. 28
(Forms Runtime) ' ' ', Title Set_Window_Property(Forms_Mdi_Windowثش ب ظ, ا يالة;(' الؽظ أ ا خقبئ ػ ذ ب ٠ ى ذ ٠ ب ل ١ ؾشف ١ خ فال ثذ ع د ئؽبساد اإللزجبط. ' ' ',,Title ' Set_Window_Property('Window1 ث ١ ب بد ا غز ;(' (Forms Runtime) Set_Window_Property('Window1', Window_State, Minimize); Set_Window_Property(Forms_Mdi_Window, Window_State, Minimize); Block 2 مأ ثيح ػي رىل : Lvl Set_Block_Property('Lvl', Query_Allowed, Property_True); الؽظ ئػيبء ا م ١ خ property_true ػ ذ ب رى ل ١ خ ا خبف ١ خ. Yes Lvl Set_Block_Property('Lvl', Query_Allowed, Property_False); الؽظ ئػيبء ا م ١ خ property_false ػ ذ ب رى ل ١ خ ا خبف ١ خ. No Set_Block_Property('Lvl', Order_By, 'Lvl_No'); Set_Block_Property('Lvl', Order_By, 'Lvl_Name'); Lvl Lvl مزىل اىساه تاى غثح ىثق ح خظائض اىنريح Block ثو : : Insert_Allowed ا خبفخ ثبإلمبفخ : Update_Allowed ا خبفخ ثب زؼذ ٠ : Delete_Allowed ا خبفخ ثب ؾزف Where ا خبفخ ثب ؾشه : Defalut_Where Set_Block_Property('Stu', Defalut_Where, 'Stu_Sec >= 1'); Visual Attribute ا خبفخ ثب خقبئ ا شئ ١ خ ىز خ : Current_Record_Attribute Set_Block_Property('Stu', Current_Record_Attribute, 'VA1');... ئ خ. Item 3 مأ ثيح ػي رىل : 29
Lvl Set_Item_Property('Lvl_Name', Visible, Property_True); Lvl Set_Item_Property('Lvl_Name', Visible, Property_False); Lvl Set_Item_Property('Lvl_Name', Enabled, Property_True); Lvl Set_Item_Property('Lvl_Name', Enabled, Property_False); مزىل اىساه تاى غثح ىثق ح خظائض اىنريح Block ثو : X), ا خبفخ ثزؾذ ٠ ذ لغ ا ؼ قش ػ بفزح ا جش ب ظ ث( Y : Position, 100, 100); Set_Item_Property('MyButton', Position : Visual_Attribute ا خبفخ ثب خقبئ ا شئ ١ خ ؼ قش, 'VA1'); Set_Item_Property('Stu_No', Visual_Attribute... ئ خ. ======================================================================= ========= Global Variables 1 رجذأ ث). Global :( زؼش ٠ ف زؾ الد ػب خ ثؾ ١ ش غزي ١ غ ا زؼب ؼ ب ثأ Trigger أ أ Procedure أ أ Function ؼشف ا زؾ ي ا ؼب ف ا ؾذس ا ) Forms (. WHEN_NEW_FORM_INSTANCE ؽز ٠ قجؼ ؼش فب ىب ا ق ١ غخ ا ؼب خ زؼش ٠ ف و ب ٠ : ػ ذ ب رى ا م ١ خ اإلثزذائ ١ خ سل ب ; Value :global.variable =: ػ ذ ب رى ا م ١ خ اإلثزذائ ١ خ قب ؾشف ١ ب ; 'Value' :global.variable =: تاىطثغ فؼو دائ ا أ ؼط ق ا ئترذائ ح ىي رس الخ ذالف ا ىسذ ز أ ح شامو وأ ض خ ػ ر ه : :Global.MyNo := 1 ; :Global.MyName := 'Amerah'; Local Variable 2 رى ز ا زؾ الد ؼشفخ م ا ( Trigger ) أ ا ( Procedure ) أ ا ( Function ) ا ز ػشفذ ثذاخ فمو 30
٠ ؼ م ا ( Begin ) ا ( End ) ا ؼشف م ب. ا ق ١ غخ ا ؼب خ زؼش ٠ ف و ب ٠ : ػ ذ ب رى ا م ١ خ اإلثزذائ ١ خ سل ب ; Value Variable DataType =: وأ ض خ ػ ر ه : ػ ذ ب رى ا م ١ خ اإلثزذائ ١ خ قب ؾشف ١ ب ; 'Value' Variable DataType =: تاىطثغ فؼو دائ ا أ ؼط ق ا ئترذائ ح ىي رس الخ ذالف ا ىسذ ز أ ح شامو MyNo Number := 2 ; MyName Varchar2(20) := 'Gawaher'; ======================================================================= ========= ' ' ' ' ' ' ' ' ' ' ر ١ ؼ : )ل ثشثو ل ١ ا خقبئ ا جش غ ١ خ ث زؾ الد ػب خ( ىؼ و رىل ال تذ : رؼش ٠ ف زؾ ي ػب )ػ غز ا رط )Form ١ ى X ؽ ١ ش م ثاع بد ا م ١ خ ' ئخفبء' ئ ١ وم ١ خ ئثزذائ ١ خ زؾى ثىزبثخ ػ ا ا ضس خالي ل ١ خ ا زؾ ي ا ؼب فؾ ل ١ خ ا زؾ ي ا ؼب ف ؽذس )ا نغو ػ ا ضس( خالي ع خ IF ا ؾشى ١ خ فارا وب ذ ل ١ خ ا زؾ ي ' ئخفبء' فا ب ع خف زا ا ؼ قش ثخبف ١ خ Visible غ ذ ا م ١ خ ا غب ٠ شح ' ئظ بس ' ئ ا زؾ ي ا ؼب ا ؼىظ فؾ ١ ؼ ص زؾى ثىزبثخ ػ ا ا ضس خالي ل ١ خ ا زؾ ي ا ؼب ا غذ ٠ ذح. WHEN_NEW_FORM_INSTANCE.1 31
Set_Item_Property('MyButton', Label, :Global.X) ; ' := Global.X :ئخفبء; ' WHEN_BUTTON_PRESSED.2 ' Ifئخفبءthen :Global.X = ' Set_Item_Property('Lvl_Name', Visible, Property_False); ' := :Global.X ئظ بس; ' Else Set_Item_Property('Lvl_Name', Visible, Property_True); ' := :Global.X ئخفبء; ' End if ; Set_Item_Property('MyButton', Label, :Global.X); ======================================================================= ========= الزظاخ ا ح : رغزخذ زخق ١ رغزخذ مبس خ رغزخذ لج ا ؼ قش زؼ أ ب ل ١ ز. := = : ======================================================================= ========= Trigger STU Stu_No ر ١ ؼ : ) ٠ ز ئفزشاك أ ل ١ خ ا ؾم غغ األ ي ١ ئخ ثم ١ خ ذخ خ ا غزخذ ( زو اى طي ب : ا ؼ أ ٠ ى ػ رشل ١ ر مبئ ػ ؽم ع Number زى ا ؾفشح ا قذس ٠ خ وب زب : 32
(Trigger : KEY_CREREC) زذز ئ شاء اىغدو Declare Counter number ; تؼشف يتحىل انؼذاد ي ىع سق Begin Select Max(Stu_No) into Counter From Stu ; إخت اس انق ت انؼظ ى ي حقم انطانب وإس ادها إىل يتحىل انؼذاد :Stu_No := Counter + 1 ; تشق ى حقم انطانب بق ت املتحىل يضافا إن ه واحذ End ; 33
احملاضرة اخلامسة والسادسة Master ا ٢ خش ا غذ ي Relations رؼج ١ ش ٠ ي ك ػ ػاللخ ث ١ عذ ١ أؽذ ب ا غذ ي ا شئ ١ غ ا زفق ١ Details 1. رؾذ ٠ ذ ا غذ ي ا شئ ١ غ Master ا غذ ي ا زفق ١ Details 2. رؾذ ٠ ذ ؽم ي ا شثو ث ١ ا غذ ١ ) رغ ا ؾم ي ا خف ١ خ( 3. رؾذ ٠ ذ ؽش ه ا شثو ث ١ ا غذ ١. Join Condition ---------------------------------------------------------------------------------------------------------------------- -------------- Master Details STU الؽظ خال ب أ ع ١ غ ؽم ي ا غذ ي ا شئ ١ غ ز فشح ف عذ ي ث ١ ب غذ أ ع ١ غ ؽم ي ا غذ ي ا زفق ١ ز فشح ف عذ ي. MARK ( ٠ ز ا شثو خالي ا ؾم ي )سق اىطاىة سق اىقغ سق اى غر ( ؽش ه سثو ا غذ ١ ٠ ؾذد خالي ػذد ا غذا ي ز ه ع ؾزبط ئ ؽشه سثو اؽذ ػ أل رمذ ٠ ش ) 1-n ى ب ب غذ أ ؽش ه ا شثو : Mark.Mark_Sec = Stu.Stu_Sec And Mark.Mark_Lvl = Stu.Stu_Lvl And Mark.Mark_Stu = Stu.Stu_No :.1 طش قح ؼاىح Data Block Wizard ؽ ١ ش م ثا ؾبء Form رى ف ١ ا Data Block ؼز ذح ػ ا غذ ي ١ ى STU ثؾى ٠ ؾ Tabular عغال ؽ ١ ذا وز ه ئ ؾبء Data Block ؼز ذح ػ ا غذ ي ١ ى MARK ثؾى Tabular ٠ ؾ خ غخ عغالد أص بء ئ ؾبء Data Block ا خبؿ ثب MARK ػ ىش ٠ ك ؼب ظ 34
وز خ ا ج ١ ب بد Data Block Wizard الؽظ ظ س ا ؾبؽخ ا زب ١ خ : ف م أ ال ثا غبء ا شثو ا ز مبئ ث ١ ا غذ ١ Auto-join Data Blocks ص ز ت ضس Relationship Create ؾذد خال ا غذ ي ا شئ ١ غ STU أ ب ا غذ ي ا زفق ١ MARK ف ؾذد ر مبئ ١ ب ثغجت أ ب ل ب ثزؾذ ٠ ذ ا ؼاللخ خال ؾذد ؽش ه ا شثو خالي ئ زمبء ػ قش ا غذ ي ا زفق ١ Detail Item ب ا ؼ قش ا ز ٠ مبث ا غذ ي ا شئ ١ غ Master Item ش ا ؾش ه رىزت جبؽشح أص بء ػ ١ خ ا زؾذ ٠ ذ. ) ؼغط اىراى ن و تق ح رطيثاخ اى ؼاىح اىخاص تWizard ) Data Block ششذ ثغط : ل ب ثزؾذ ٠ ذ ػ قش ا ؼاللخ ا غذ ٠ ذ Relation )غب جب ٠ ؾئ ثاع ئفزشام ٠ أخز ف ١ ئع ا غذ ١ ( ص مغي ب F4 ش أ ا خقبئ ع غذ أ ب : خبف ١ خ ؽشه ا شثو : Join Condition ب رغزي ١ غ ا زؼذ ٠ ػ ؽشه ا شثو ا ز لذ أ ؾئ ف ١ ب عجك خبف ١ خ ع ن ؽزف ا غغالد Delete Record Behavior ا ز ر ز ه ا ضالصخ ا م ١ ا ٢ ر ١ خ :.1 Non_Isolated : )ا ال ػضي اإلفزشام ( ٠ ؼ أ غزي ١ غ ا ؾزف ا غذ ي ا Master ئال ثؼذ ؽزف و ب ٠ زؼ ك ث ف ا غذ ي ا Details : Isolated.2 ٠ ؼ ع د ػضي ث ١ ا غذ ي ا Master ا غذ ي ا Details ثؾ ١ ش ٠ ى ا ؾزف أؽذ ا غذ ١ د رأصش ا ٢ خش : Cascading.3 فارا ؽزف ب عغ ا غذ ي ا Master فا ع ١ ؾزف و ب ٠ زؼ ك ث زا ا غغ ا غذ ي ا Details. 35
اىطش قح اى ذ ح : 2. ؽ ١ ش م ثا ؾبء Form رى ف ١ ا Data ١ ى STU Block ؼز ذح ػ ا غذ ي ٠ ؾ Tabular عغال ؽ ١ ذا ثؾى Data Block ؼز ذح ػ وز ه ئ ؾبء Tabular ١ ى MARK ثؾى ا غذ ي ٠ ؾ خ غخ عغالد )Relations ا ع د ص م ثزؾذ ٠ ذ ا ) ف ؽبؽخ ا ) Navigator )Object اىراتغ Create STU ص ىيدذ ه اىشئ غ زظ ش ا ؾبؽخ ا زب ١ خ : ؽ ١ ش ؾب ذ ف ١ ب أ ا غذ ي ا شئ ١ غ STU ؾذد ر مبئ ١ ب ثغجت أ ب ل ب ثزؾذ ٠ ذ ا ؼاللخ خال ث ١ ب رز ا يب جخ ثاخز ١ بس ا غذ ي ا زفق ١ خالي ا ضس Select خزبس LOVs ا ز رظ ش ا غذ ي MARK الؽظ ع ن ؽزف ا غغالد خالي Master Deletes ؽ ١ ش غذ ا ضالس ا خ ١ بساد : Non_Isolated )a Isolated )b. Cascading )c ا ز ر ؽشؽ ب ف ا فمشح ا غبثمخ ىزت ؽش ه ا شثو ف Join Condition ا ز لذ ل ب ثزوش ب لج ر ه. اىرسذ ثاخ ػي اىثش ا ح تؼذ ئ شاء اىؼالقح : Relation ٠ نبف Trigger ػ غز ا Form 1.. Triggers) ( 2 ػ غز ٠ نبف.2 Data Block غذ ي وز خ ا ج ١ ب بد ا شئ ١ غ. Master Relation ئ وز خ ر نبف ػاللخ 3. ا ج ١ ب بد. Master غذ ي ا شئ ١ غ Data Block.4 ٠ نبف ) Procedure ( 3 ئ ؽذاد ا جش ب ظ. Program Units 36
الزظح ا ح : ال غ ئخفبء ؽم ي ا شثو ث ١ ا غذ ١ ( رىل ىؼذ اخ ح شنيح ذنشاس اىث ا اخ( ر ه خالي ئػيبء ا م ١ خ NULL خبف ١ خ Canvas ى ػ قش سثو زخف ا ؼ بفش أص بء ا زق ١ ا ز ف ١ ز أ ب ئرا ل ب ثاػيبء ا م ١ خ No خبف ١ خ Visible فا ب عزخف ا ؼ بفش أص بء ا ز ف ١ ز فمو. سق اىقغ Sec_NO سق اى غر Lvl_No سق اىطاىة Stu_No.1.2.3 37
رى ا ؾم ي ا ؾغبث ١ خ ػبدح ػ ىش ٠ ك شرجو ثمبػذح ا ج ١ ب بدDB DataBlock ػ غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB Item ػ قش a( غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB DataBlock ػ غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB Item ػ قش b( ا ز ػبدح ب ٠ غ ثب ( Dummy ). Mark Formula ف ١ غخ س ٠ بم ١ خ ر زظ ػ ب ل ١ خ ػذد ٠ خ. ؾئ ػ قش غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB ١ ى TDeg ػ عذ ي ا ذسعبد Mark ثب خقبئ ا ٢ ر ١ خ : Property Value 1 Name TDeg 2 Item Type Text Item 3 Enabled No 4 Data Type Number 5 Calculation Mode Formula 6 Formula NVL(:Mark_Yj, 0) + NVL(:Mark_Ht, 0) + NVL(:Mark_Ft, 0) 7 Database Item No 8 Canvas Canvas2 9 Prompt ا ذسعخ ا بئ ١ خ 3 Summary 4 م ثا ؾبء Block غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB ١ ى (Dummy) ثب خقبئ ا ٢ ر ١ خ : Property Value 1 Name Dummy 2 Database Data Block No.a ص ؾئ ػ قش غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB ١ ى Total ثب خقبئ ا ٢ ر ١ خ : Property Value 1 Name Total 2 Item Type Text Item 3 Enabled No 4 Data Type Number 5 Calculation Mode Summary.b 38
6 Summarized Block Stu 7 Summarized Item TDeg 8 Summary Function Sum 9 Database Item No 10 Canvas Canvas2 11 ز عو ا ذسعبد Prompt c. ١ ز ا ز ف ١ ز ثزغ ت أ سعب خ خيأ م ثزغ ١ ش ل ١ خ ا خبف ١ خRecord Query All ا زبثؼخ ( Block ) ثب ذسعبد Mark ا ( Block ) ا زؾى ا ز ٠ ؾ ػ قش ا زغ ١ غDummy غ ١ ش ل ١ خ ا خبف ١ خ. Single Record Data Block Property Value 1 Mark Query All Record Yes 2 Dummy Single Record Yes 39
م ثا ؾبء ػ قش ف وز خ ا ج ١ ب بد MARK خقبئق وب زب : Property Value 1 Name VALUATION 2 Database Item No 3 Canvas Canvas2 4 Prompt ا زمذ ٠ ش 5 Prompt Justification Center 6 Prompt Attachment Edge Top 7 Prompt Alignment Center )a ث ب أ ا زمذ ٠ ش ٠ ؼز ذ ػ ؼذي ا ذسعبد ز ه ٠ غت أ ٠ زأصش زا ا زمذ ٠ ش ئرا ل ب ثزؼذ ٠ أ ا ذسعبد ز ه م ثىزبثخ ز ا ؾفشح ا قذس ٠ خ Code ف ؽذس Post_Change ى ( أػ اه اىغ ح اى ظف اى ائ ( وب زب : )b Declare N Number; Begin N := NVL(:Mark_Yj, 0) + NVL(:Mark_Ht, 0) + NVL(:Mark_Ft, 0); If N Between 90 And 100 Then ' := :Mark_Valuation ممتاص;' Elsif N Between 80 And 89 Then ' := :Mark_Valuation ج ذجذا ;' Elsif N Between 70 And 79 Then ج ذ;' :Mark_Valuation := ' Elsif N Between 50 And 69 Then يقبىل;' :Mark_Valuation := ' Else 40
ضؼ ف;' :Mark_Valuation := ' End If ; End ; 41
ؾزبط ف وض ١ ش األؽ ١ ب ا شثو ث ١ عذ ١ ١ ظ ثؾى Master & Details ئ ب ثؾى سثو ىج ١ ؼ أع ئعزخالؿ ؼ بد ؼ ١ خ ف ضال عذ ي ا يالة ٠ ؾز STU ػ )سل ا مغ )Stu_Sec ا ز ٠ ؼزجش ؽمال ضال فزبػ غش ٠ ت Foreign Key ربثغ غذ ي األلغب SECTION ػ ىش ٠ ك ػ ١ خ ا شثو ز ش ٠ ذ ع ت أع بء األلغب أ أ ب ش ٠ ذ ئظ بس أع بء األلغب ف وز خ ا ج ١ ب بد STU خالي ؽم سل ا مغ Stu_Sec ثؾشه أ ئرا ر ئدخبي ل ١ خ خبىئخ فا ا جش ب ظ ٠ ز لف ؽز ٠ ذخ ا غزخذ ا م ١ خ ا قؾ ١ ؾخ. ىؼ و رىل ع سراج ئى : ئ ؾبء ػ قش ف وز خ ا ج ١ ب بد STU خقبئق وب زب : a. Property Value 1 Name SEC_NAME 2 Database Item No 3 Canvas Canvas2 4 Prompt ئع ا مغ 5 Prompt Justification Center 6 Prompt Attachment Edge Top 7 Prompt Alignment Center سثو زا ا ؼ قش )ئع ا مغ ( خالي ا ؾذس ثؼذ ا زؼذ ٠ Post_Change ا زبثغ شل ا مغ ا خبؿ b. ثىز خ ا ج ١ ب بد STU أ ا ؾم STU_SEC وب زب : Declare Begin Select Sec_Name Into :Sec_Name From Section Where Sec_No = :Stu_Sec; Exception When No_Data_Found Then 42
ث فظ ا يش ٠ مخ ٠ ز ئ ٠ غبد ئع ا غز ا ؼز ذ ػ سل ا غز... ئ خ. ') Messageانشقى غري صح ح;(' Raise Form_Trigger_Failure; End ; ======================================================================= ========= ذي ر : ا ى ئ ؾبء سعب خ Alert ثذال سعب خ Message زى خقبئق ب وب زب : Property Value 1 Name Msgbox 2 Title ر ج ١ 3 Message ا شل غ ١ ش فؾ ١ ؼ 4 Alert Style Caution 5 Button 1 Label افك 6 Default Alert Button Button1 ص ثؼذ ر ه م ثاعزذػبء ا شعب خ أص بء ؼب غخ األخيبء Exception وب زب : N := Show_Alert('Msgbox') ; ر ه ثؼذ رؼش ف ا زؾ ي ف عضء Declare وب زب : N Number ; أع أ األ ساو رزي ت ئع بد ا ذ اي زؾ ي أص بء ئعزذػبئ ب. 43
الزظح ا ح : ٠ فن د ب ا زؾى ثىز خ ث ١ ب بد DB ػ ىش ٠ ك ػ بفش Non_DB ثؾ ١ ش رى آر ١ خ وز خ ث ١ ب بد Non_DB ا ز ب ش ض ب ػبدح ثب ش ض Dummy أ وز خ رؾى ف ضبي سثو ا غذا ي ا غبثك فا ٠ فن أ ؾئ ػ قش ئع ا مغ SEC_Name ف وز خ ث ١ ب بد Non_DB زى Dummy ا ز خقبئق : Property Value Database Data Block No ئرا أ ؾئ ب ئع ا مغ زا ع ١ ى List Item ئع List_Item_Sec )ساعغ و ١ ف ر ؾئ ا مبئ خ ا ؾبمشح ا غبثؼخ( أسد ب أ رى ا ج ١ ب بد ا ؼش مخ ف ١ رإصش ػ ب ٠ ؼشك ف وز خ ا ج ١ ب بد STU ثؾى فؼبي فا ب م ثىزبثخ ا ؾفشح ا قذس ٠ خ ف ؽذس )رؼذ ٠ ا مبئ خ( وب زب : (Trigger : WHEN_LIST_CHANGED) Set_Block_Property('Stu', 'Default_Where', 'Stu_Sec = :Dummy.List_Item_Sec') ; أع أال خزبس ػ قش ا مبئ خ List_Item_SEC ص نيش ئ ا ز بة ئ وز خ ا ج ١ ب بد STU ز ف ١ ز اإلعزؼال أ غؼ ظ س ا ج ١ ب بد ف وز خ ا ج ١ ب بد STU شرجيب ثاخز ١ بس ا م ١ خ List_Item_SEC ف ن ١ ف ف ؽذس )رؼذ ٠ ا مبئ خ( ثؼذ ا زؼ ١ خ ا غبثمخ ب ٠ : Go_Block('Stu') ; Execute_Query ; ======================================================================= ========= Program Units رغزخذ ا ؽذاد ا جش غ ١ خ إل ؾبء اإلعشاءاد Procedure أ ا ذ اي Function أ ا ؾض ا جش غ ١ خ Package Spec ر ه خالي ثزؾذ ٠ ذ ا ) Units )Program ا ع د ف ؽبؽخ ا ) Object )Navigator ص Create زظ ش ا ؾبؽخ ا زب ١ خ : ف ىزت ئع ا ؽذح ا جش غ ١ خ ا شاد ئ ؾبئ ب داخ ا (Name) ص خزبس ع ا ؽذح ا جش غ ١ خ : 44 Procedure ئخشاء Function داىح Package Spec ) ؾذد ف ١ ب أع بء زض ح تش د ح ا ؽذاد ا جش غ ١ خ( Package Body خغ اىسض ح ) ا ز ٠ ز ف ١ وزبثخ ا ؾفشح ا قذس ٠ خ Code إلعشاءاد ا ذ اي ا ز ر رغ ١ ؼ ب ف )Package Spec. ---------------------------------------------------------------------------------------------------------------------- --------------
Mark a Procedure Function Stu b ---------------------------------------------------------------------------------------------------------------------- -------------- حل المطلوب األول أ ال ) ؾئ ػ قش غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB ١ ى TDeg ثب خقبئ ا ٢ ر ١ خ : Property Value 1 Name TDeg 2 Item Type Text Item 3 Enabled No 4 Data Type Number 5 Database Item No 6 Canvas Canvas2 7 Prompt غ ع ا ذسعبد ثا ا ( ؾذد ا ) Units )Program ا ع د ف ؽبؽخ ا ) )Object Navigator ص Create زظ ش ؽبؽخ ا ؽذاد ا جش غ ١ خ ف ىزت ف ا Name ئع اإلعشاء ١ ى ProTDeg خزبس ع ا ؽذح ا جش غ ١ خ ئعشاء Procedure ص نغو Ok ف ١ ظ ش ؾشس وزبثخ ا ؾفشح ا قذس ٠ خ ىزت ا زب : PROCEDURE ProTDeg IS BEGIN :Tdeg := NVL(:Mark_Yj, 0) + NVL(:Mark_Ht, 0) + NVL(:Mark_Ft, 0); END; ثاىثأ ( ث ب أ ا غ ع ٠ زأصش ئرا ل ب ثزؼذ ٠ أ ا ذسعبد ز ه م ثاعزذػبء اإلعشاء Procedure خالي وزبثخ ز ا ؾفشح ا قذس ٠ خ Code ف ؽذس Post_Change ى )أػ اه اىغ ح اى ظف اى ائ ( وب زب : ProTDeg ; ---------------------------------------------------------------------------------------------------------------------- -------------- حل المطلوب الثاني أ ال ) ؾئ ػ قش غ ١ ش شرجو ثمبػذح ا ج ١ ب بدNon_DB ١ ى SEC_NAME ثب خقبئ ا ٢ ر ١ خ :. 45
Property Value 1 Name SEC_NAME 2 Item Type Text Item 3 Enabled No 4 Data Type Char 5 Database Item No 6 Canvas Canvas2 7 Prompt ئع ا مغ ثا ا ( ؾذد ا ) Units )Program ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create زظ ش ؽبؽخ ا ؽذاد ا جش غ ١ خ ف ىزت ف ا Name ئع اإلعشاء ١ ىFunSec خزبس ع ا ؽذح ا جش غ ١ خ ئعشاء Function ص نغو Ok ف ١ ظ ش ؾشس وزبثخ ا ؾفشح ا قذس ٠ خ ىزت ا زب : FUNCTION FunSec RETURN Char IS X Varchar2(50); BEGIN Select Sec_Name Into X From Section Where Sec_No = :Stu_Sec ; Return X ; END; ثاىثأ ( ص م ثاعزذػبء ا ذا خ Function خالي وزبثخ ز ا ؾفشح ا قذس ٠ خ ا ذخ ي ػ ا غغ وب زب : Code ف ؽذس ثذا ٠ خ (Trigger : WHEN_NEW_RECORD_INSTANCE) :Sec_Name := FunSec ; ======================================================================= الزظاخ ا ح : ٠ ى ئعزذػبء اإلعشاء ثىزبثز جبؽشح أ ب ا ذا خ ف ١ غت أ رغ ذ زؾ ي أص بء ئعزذػبئ ب أل ا ى أ ٠ غزخذ ئع ا ذا خ غ ا ؼ ١ بد ا ؾغبث ١ خ ال ٠ زي ت اإلعشاء ئسعبع أ ل ١ خ ث ١ ب ٠ غت أ رؼ ١ ذ ا ذا خ ل ١ خ ز ه فا ػ ذ رؾش ٠ ش ا ؾفشح ا قذس ٠ خ ذ اي ع ش ثذا ٠ خ ؾشس ا ؾفشح ا قذس ٠ خ ث ز ا يش ٠ مخ : FUNCTION FunSec RETURN _ IS ف م ثىزبثخ ب رشعؼ ا ذا خ ثؾ ١ ش ؼذي ؾشس ا ؾفشح ا قذس ٠ خ ث ز ا يش ٠ مخ : FUNCTION FunSec RETURN Char IS احملاضرة السابعة 46
List Item لج ئ ؾبء ٠ غت List Item ؼشفخ ش ٠ ذ أ رى ا م ١ ا ظب شح ف ١ ب : ثاترح )ئعراذ ن ح( : Static ثب زب ف ر ز ه ل ١ صبثزخ ال ٠ ى رؼذ ٠ ب رغ شج )د ا ن ح( : Dynamic ثب زب ف ر ز ه ل ١ زغ ١ شح رؼىظ ف سح ا غغالد ف لبػذح ا ج ١ ب بد ع ت ا ج ١ ب بد ف ١ ب ع ١ ى ث اعيخ اإلعزؼال. Query غ الؽظخ أ ئ ؾبء ا ( Item (List ٠ ى ذ دائ ا. ---------------------------------------------------------------------------------------------------------------------- -------------- Stu List Item a b ---------------------------------------------------------------------------------------------------------------------- -------------- حل المطلوب األول ثؼذ ئ ؾبء Form رى ف ١ ا Block Data ؼز ذح ػ ا غذ ي Stu الؽظ ر فش ا ؾم ي : ( سل ا يب ت Stu_No ئع ا يب ت Stu_Name سل ا مغ Stu_Sec سل ا غز Stu_Lvl ا ؼذي ) Stu_Certtype ع ا ؾ بدح Stu_Avg ب ٠ غز عت ر ف ١ ش ؽم ئع ا غز ر ه خالي ئ ؾبء ػ قش عذ ٠ ذ Item خقبئق و ب ٠ : Property Value 1 Name LVL_NAME 2 Item Type List Item 3 Element in List More 4 Mapping of Other Values 4 5 Initial Value 2 6 Copy Value from Item STU_LVL 7 Synchronize with Item STU_LVL 8 Database Item No 9 Canvas Canvas2 47
زظ ش ا ؾبؽخ أػال ا ز خال ب : LVL_Name ف ذخ ل ١ ا ؾم List Elements ؾذد ا م ١ ا مبث خ ب ف ؽم سل List Item Values ا غز غ ع ة أ ٠ ى ئدخبي ا م ١ ز بظش ف ع ١ غ األػ ذح )ا ؾم ي( ف ضال : األ ه ف ٠ مبث ب List Elements ا م ١ خ ا م ١ خ 1 ف. List Item Values ======================================================================= ========= ششذ ثغط : )ئ Copy Value from Item الؽظ ػ خبف ١ خ غخ ا م ١ خ ؼ قش ئ داخ لبػذح ا ج ١ ب بد )STU_LVL رىل ف ذ خذا ػ ذ ئػافح عدو خذ ذ )غب جب ب ٠ ز ئخفبء ؽم STU_LVL ث اعيخ ا خبف ١ خ Canvas اإلػز بد ػ LVL_NAME و ذخالد ؼيبح ا غزخذ ب رأر ا فبئذح ا ؼظ ز ا خبف ١ خ( List ا ز رؼ ػ ئظ بس ل ١ ا Synchronize with Item الؽظ ػ خبف ١ خ ا زضا غ ا ؼ قش (Trigger : ف ىش ٠ مخ ا ؼ )ؽج ١ خ STU_LVL Item ثؼذ ا زؼذ ٠ ػ ل ١ خ ؽم سل ا غز Post_Change) ػ ؽم )STU_LVL. SQL PLUS ف ث ١ ئخ Decode ؽج ١ خ ف ىش ٠ مخ ا ؼ ذا خ List Item الؽظ أ حل المطلوب الثاني 48
أ ال ) ر ف ١ ش ؽم ئع ا مغ ر ه خالي ئ ؾبء ػ قش عذ ٠ ذ Item خقبئق و ب ٠ : Property Value 1 Name LVL_NAME 2 Item Type List Item 3 Element in List More 4 Mapping of Other Values 5 Initial Value 6 Copy Value from Item STU_SEC 7 Synchronize with Item STU_SEC 8 Database Item No 9 Canvas Canvas2 الزظ م ف ق ا ترفش غ مو : ع ١ غ ا م ١ Element In List خبف ١ ز. Mapping of Other Values & Initial Value )a )b ثا ا ( ؾئ غ ػخ عغ Record Group زغ ١ شح )د ٠ ب ١ ى ١ خ( Dynamic ؽ ١ ش م ثزؾذ ٠ ذ ا ) Record Based زظ ش ا ؾبؽخ ا زب ١ خ ف خزبس خ ١ بس Create ص )Object ا ع د ف ؽبؽخ ا ) Navigator )Group OK ىزت اإلعزؼال ص نغو ػ ا ضس on the Query Below select Sec_Name, to_char(sec_no) from section ; ئر م ثغ ت ا ج ١ ب بد ا خبفخ ثاع ا مغ سل ا مغ )ثؼذ رؾ ٠ سل ئ ػجش ا ذا خ to_char() ر ه ١ ى غ ػخ عغ Record Group لبدسا ػ اإلعزؼال ( ٠ غت أ ٠ نأ أ غؼ ع ا ج ١ ب بد شل ا مغ Char زز ػ ١ خ ا زيبثك Property Value Data Type Char غ زا ا ) )Record Group ثش غ ١ ب خالي ا نغو ػ F4 رؾذ ٠ ذ ل ١ خ ا خبف ١ خ Name ث RG_SEC_DYNAMIC. 49 ١ ز List Item ئ ا Form ػ ذ ؽذس رؾ ١ ا رط Code ثاىثا ( ك ثىزبثخ ا ؾفشح ا قذس ٠ خ لبػذح ا ج ١ ب بد : (Trigger : WHEN_NEW_FORM_INSTANCE)
Declare N Number; Begin N := Populate_Group('RG_SEC_DYNAMIC'); Populate_List('Sec_Name','RG_SEC_DYNAMIC'); End ; (Form) رز ١ ض LOVs (List Of Values) ػجبسح ػ لبئ خ رؾز غ ػخ ل ١ م ثا زمبء ئؽذا ب ئػبدر ب ئ ؽم ي ف ا ثأ ب : رظ ش ف Form عذ ٠ ذ غزي ١ غ ا زؾى ثب ؼذ ٠ ذ خقبئق ض ىب ظ س ؽغ ػ ا... ئ خ رظ ش أوضش ػ د )a )b 50
. Filter ا زقف ١ خ )ا ف زشح( Search ئ ىب ١ خ ا جؾش c( ======================================================================= ========= LOVs (List Of Values) لج ئ ؾبء لبئ خ شوجخ ٠ غت LOVs ؼشفخ ش ٠ ذ أ رى ا م ١ ا ظب شح ف ١ ب : ثاترح )ئعراذ ن ح( : Static ثب زب ف ر ز ه ل ١ صبثزخ ال ٠ ى رؼذ ٠ ب رغ شج )د ا ن ح( : Dynamic ثب زب ف ر ز ه ل ١ زغ ١ شح رؼىظ ف سح ا غغالد ف لبػذح ا ج ١ ب بد ع ت ا ج ١ ب بد ف ١ ب ع ١ ى ث اعيخ اإلعزؼال. Query غ الؽظخ أ ا ( LOVs ) ال ريجك ػبدح ئال ػ ػ قش Text Item ئ ؾبئ ب ئ ب أ ٠ ى ذ ا أ ػ ىش ٠ ك ا ؼب ظ ا خبؿ ث ب LOVs Wizard [عذ ٠ ذ ) 6i (] Form Builder. تشنو ػا فا ئ شاء أLOVs رطية ئ شاء د ػح عدوGroup Record تسغة ع د ػح عدوGroup Record رسذد ع اىLOVs ---------------------------------------------------------------------------------------------------------------------- -------------- Mark LOVs Manually c Wizard d ---------------------------------------------------------------------------------------------------------------------- -------------- حل المطلوب األول ثؼذ ئ ؾبء Form رى ف ١ ا Block Data ؼز ذح ػ ا غذ ي Mark الؽظ ر فش ا ؾم ي : ( سل ا مغ Mark_Sec سل ا غز Mark_Lvl سل ا يب ت Mark_Stu سل ا بدح Mark_Sub أػ بي ا غ خ Mark_Yj ا قف Mark_Ht ا بئ ) Mark_Ft ب ٠ غز عت : أ ال ) ر ف ١ ش ؽم ئع ا غز ر ه خالي ئ ؾبء ػ قش عذ ٠ ذ Item خقبئق و ب ٠ : Record Static Property Value 1 Name Lvl_Name 2 Database Item No 3 Canvas Canvas2 4 Prompt ئع ا غز Static ؽ ١ ش م ثزؾذ ٠ ذ ا ) ثا ا ) ؾئ غ ػخ عغ Record Group صبثزخ )ئعزبر ١ ى ١ خ( )Group ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create زظ ش ا ؾبؽخ ا زب ١ خ ف خزبس خ ١ بس Values ص نغو ػ ا ضس OK زظ ش ؽبؽخ ئدخبي ا ج ١ ب بد ا ضبثزخ ا ز خال ب : 51
Data Type أ ب ى Column [1,2,3,4] ( ذخ ئع ا ؾم LVL_NO ف Column Names ؾذد ػ Number ف Length ف ؾذد ر مبئ ١ ب ألسلب ص ذخ ع ١ غ ا م ١ ا ى خ زا ا ؾم ) Values ىشس ر ه غ ؽم ئع ا غز ؽ ١ ش : Cheterar ف Data Type ى ( ذخ ئع ا ؾم LVL_NAME ف Column Names ؾذد ػ Column ] ا شاثغ,ا ضب ش,ا ضب,األ ي] 30 ص ذخ ع ١ غ ا م ١ ا ى خ زا ا ؾم Length ) Values غ ع ة أ ٠ ى ئدخبي ا م ١ ز بظش ف ع ١ غ األػ ذح )ا ؾم ي( ف ضال ا م ١ خ 1 ف سل ا غز ٠ مبث ب األ ه ف ئع ا غز ا م ١ خ غ زا ا ) )Record Group ثش غ ١ ب F4 رؾذ ٠ ذ ل ١ خ خالي ا نغو ػ ا خبف ١ خ Name ثRG_LVL_STATIC Build a new LOV manually زى ا خقبئ ثاىثا ) ؾئ لبئ خ شوجخ LOVs ؼز ذح ػ ع Record Group ا غبثك [صبثزخ )ئعزبر ١ ى ١ خ( [Static ؽ ١ ش م ثزؾذ ٠ ذ ا ) LOVs ( ا ع د ف ؽبؽخ ا ) Object )Navigator ص Create زظ ش ؽبؽخ رؾذ ٠ ذ ىش ٠ مخ اإل ؾبء ثاعزخذا ا ؼب ظ أ ٠ ذ ٠ ب ف خزبس )ا خ ١ بس ا ١ ذ ( ف ١ ب و ب ٠ : Property Value 1 Name LOV_LVL_STATIC 2 Title أسلب ا غز ٠ بد غ أع بئ ب 3 Record Group RG_LVL_STATIC 52
زظ ش ا ؾبؽخ ا غب سح ا ز 4 Column Mapping Properties More 5 Filter before Display Yes 6 Automatic Display Yes 7 Automatic Skip Yes خال ب : ( ذخ ئع ا ؾم LVL_NO ف Column Names ؾذد ئسعبػ ئ ؽمMARK.MARK_LVL Return Item ػ ىشق ا ضس Browse ػشم 50 أص بء ػشك ا م ١ ف LOVs ػ ا زا ا ؾم سل ا غز ) Column Title ىشس ر ه غ ؽم ئع ا غز ؽ ١ ش : ( ذخ ئع ا ؾم LVL_NAME ف Column Names ؾذد ئسعبػ ئ ؽم MARK.LVL_NAME Return Item ػ ىشق ا ضس Browse ػشم 100 أص بء ػشك ا م ١ ف LOVs ػ ا زا ا ؾم ئع ا غز ) Column Title. ساتؼا ) ثؼذ رق ١ ا LOVs ؾذد ظ س ب ػ زقو سق اى غر MARK_LVL و ب ٠ : Property List of Values Value LOV_LVL_STATIC حل المطلوب الثاني أ ال ) ر ف ١ ش ؽم ئع ا مغ ر ه خالي ئ ؾبء ػ قش عذ ٠ ذ Item خقبئق و ب ٠ : Property Value 1 Name Sec_Name 2 Database Item No 3 Canvas Canvas2 4 Prompt ئع ا مغ ثا ا ( ئ ؾبء ا ( Trigger ) ا ز ٠ مشأ ئع ا مغ خالي سل ا مغ Post_Change) (Trigger : ػ ؽم Mark_Sec وب زب : 53
Declare Begin Select Sec_Name Into :Sec_Name From Section Where Sec_No = :Mark_Sec; Exception When No_Data_Found Then ') Messageانشقى غري صح ح;(' Raise Form_Trigger_Failure; End ; ثاىثا ( ؾئ غ ػخ عغ Record Group زغ ١ شح )د ٠ ب ١ ى ١ خ( Dynamic ؽ ١ ش م ثزؾذ ٠ ذ ا ) Record Based زظ ش ا ؾبؽخ ا زب ١ خ ف خزبس خ ١ بس Create ص )Object ا ع د ف ؽبؽخ ا ) Navigator )Group OK ىزت اإلعزؼال ص نغو ػ ا ضس on the Query Below select Sec_Name, to_char(sec_no) from section ; ئر م ثغ ت ا ج ١ ب بد ا خبفخ ثاع ا مغ سل ا مغ )ثؼذ رؾ ٠ سل ئ ػجش ا ذا خ to_char() ر ه ١ ى غ ػخ عغ Record Group لبدسا ػ اإلعزؼال ( ٠ غت أ ٠ نأ أ غؼ ع ا ج ١ ب بد شل ا مغ Char زز ػ ١ خ ا زيبثك Property Value Data Type Char غ زا ا ) )Record Group ثش غ ١ ب خالي ا نغو ػ F4 رؾذ ٠ ذ ل ١ خ ا خبف ١ خ Name ث RG_SEC_DYNAMIC. ثاىثا ) ؾئ لبئ خ شوجخ LOVs ؼز ذح ػ ع Record Group ا غبثك [ زغ ١ شح )د ٠ ب ١ ى ١ خ( [ Dynamic ؽ ١ ش م ثزؾذ ٠ ذ ا ) LOVs ( ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create زظ ش ؽبؽخ رؾذ ٠ ذ ىش ٠ مخ اإل ؾبء ثاعزخذا ا ؼب ظ أ ٠ ذ ٠ ب ف خزبس )خ ١ بس ا ؼب ظ( 54
Use the LOV Wizard زظ ش ا ؾبؽخ األ ف ؼب ظ Record Group ف : LOVs ا ز رم ثب غإاي ػ ر فش ئؽذ زي جبر ب غ ػخ عغ ث ؼغط رش ٠ ذ ئ ؾبء غ ػخ عغ عذ ٠ ذح رؼز ذ ػ اإلعزؼال ٠ عذ غ ػخ عغ ؾئخ غجمب. )زاى ا ع خراس اىخ اس اىثا [ا ؾئخ غجمب [ ا تاىرسذ ذ RG_SEC_DYNAMIC اىراى ( لذ رزغبءي برا غذ ا ؾبؽخ ا زشؽ ١ ج ١ خ و ب ا ؼبدح ف ثم ١ خ Wizards ا غجت ف ر ه ٠ ؼ د ئ ػذ ر ؾ ١ ي ب فارا أسدد ر ه فم ثب خي اد ا زب ١ خ ) خالي لبئ خ األد اد( : Tools Preference Wizard LOV Wizard Welcome Page ص رظ ش ؽبؽخ رخجشن ثأ ه : Record رش ٠ ذ ا زؼذ ٠ ػ غ ػخ عغ ا ؾئخGroup رش ٠ ذ ئ ؾبء غ ػخ عغ عذ ٠ ذح. )زاى ا ع خراس اىخ اس األ ه ث ؼغط اىراى ( زظ ش ثؼذ ب ؽبؽخ رأو ١ ذ غ ػخ ا غغ Record Group ؽ ١ ش ٠ ى ه رؾش ٠ ش ب جبؽشح ف SQL Query Statement أ ث بء ب عذ ٠ ذ خالي ثش ب ظ ثب اإلعزؼال Query Build SQL أ ئعز ١ شاد ب ف Query Import SQL بن أ ٠ نب صس اإلرقبي ئ رى زقال ثب مبػذح Connect صس فؾ ا ق ١ غخ ا ز ر ذ وزبثز ب )ال رنف ا فبف خ ا م ىخ( Syntax Check )زاى ا ؼغط اىراى ( 55
ثؼذ ب رظ ش ؽبؽخ زخزبس ا ؾم ي ا ز ع جز ب ئعزؼال غ ػخ عغ Record Group ب ا ز رش ٠ ذ ع ج ئظ بس ػ ا مبئ خ ا شوجخ LOVs )زاى ا ع خراس خية اىنو اىضس << ث ؼغط اىراى ( ص رظ ش أ ؽبؽخ ؽبؽبد ا ؼب ظ ؽبؽخ رؾذ ٠ ذ ا ؼ ب ٠ ا ظب شح ؾم ي ف ا مبئ خ ا شوجخ Title ا ؾغ ا خبؿ ثب ؼشك Width األ سثو ا ؾم ي ا ز ع جذ ثبإلعزؼال ئسعبػ ب ؾم ي ا شاد ئسعبع ا ج ١ ب بد ئ ١ ب Item Lock Up Return )زاى ا ع ق تاسخاع SEC_NAME ئى & MARK.SEC_NAME اىسقو ICRGGQ_0 ئى MARK.MARK_SEC ث ؼغط اىراى ( زظ ش ثؼذ ر ه ؽبؽخ ؾذد خال ب ا ؼ ا ا ؼب لبئ خ ا شوجخ Title وز ه ػشك ا مبئ خ width ئسرفبػ ب height رؾذ ٠ ذ ب ئرا و ذ رش ٠ ذ ئظ بس ا مبئ خ ا شوجخ ف ئؽذاص ١ بد أر بر ١ ى ١ خ أ رم ثزؾذ ٠ ذ اإلؽذاص ١ بد ٠ ذ ٠ ب, )زاى ا ع ؼط اىؼ ا أسلب األلغب غ أع بئ ب ث ؼغط اىراى ( ص رظ ش ؽبؽخ زؾذ ٠ ذ ئ ىب ١ بد : ػذد ا قف ف ا ظب شح ئ ىب ١ خ رؾذ ٠ ش ا ج ١ ب بد لج ػشم ب ف LOVs ئ ىب ١ خ ا ف زشح غزخذ ػ ذ ثذا ٠ خ ػ. LOVs )زاى ا ؼغط اىراى ( زظ ش ؽبؽخ ا زأو ١ ذ ػ ؽم ي اإلسعبع زأؽ ١ ش ػ ١ ب )زاى ا ع خراس خية اىنو اىضس << ث ؼغط اىراى ( ف ١ ز ثز ه ؼب ظ ا مبئ خ ا شوجخ ) ؼغط ا ح( 56
57
Name غ زا ا ) )LOVs ثش غ ١ ب خالي ا نغو ػ ثLOV_LVL_STATIC. الزظ أ قذ ذ خاله اى ؼاىح ا ي : F4 رؾذ ٠ ذ ل ١ خ ا خبف ١ خ ا م ١ خ أسقا األقغا غ أع ائ اف ا LOVs Title خبف ١ خ ف ا LOVs RG_SEC_DYNAMIC ا م ١ خ Record Group خبف ١ خ خبف ١ خ Column Mapping Properties ف ا LOVs ر ئسخاع اىق ؾم ي ا ؼ ١ خ ثز ه. ف ا MARK_SEC LOV_SEC_DYNAMIC ا م ١ خ List of Values ئػيبء خبف ١ خ وز ه ف ا SEC_NAME ) ززغ ت ظ س ا مبئ خ شذ ئعؼ ل ١ خ ا خبف ١ خ ف ا SEC_NAME رغب. )NULL ======================================================================= ========= LOVs (List Of Values) 1. اىخاط ح : Filter before Display رغزخذ ػ ذ ب رى ا غغالد وض ١ شح ؽ ١ ش رظ شLOVs ػ ذ ا ز ف ١ ز عب ضح إلدخبي عضء ل ١ ا ؾم ا شاد ئظ بس ر ه ػ ذ عؼ ا خبف ١ خYes..2 اىخاط ح : Automatic Display ئرا عؼ ب ب Yes فا ع ١ ز ئظ بس ا LOVs جبؽشح ػ ذ ف ي ا إؽش ئ ا ؾم MARK_SEC ضال ر ه ثذ : (Trigger : WHEN_NEW_ITEM_INSTANCE) Declare J Boolean; Begin J := Show_Lov('LOV_SEC_DYNAMIC'); End ; ا نغو ػ F9 إلظ بس ا مبئ خ ا شوجخ وزبثخ ؽفشح قذس ٠ خ Code و ب ف زا ا ضبي : 3. اىخاط ح : Automatic Skip ئرا وب ذ Yes فا ا إؽش ٠ زم ؾم ا ز ثؼذ ؽم ا LOVs ثؼذ اإلخز ١ بس ئرا وب ذ ٠ ظ No ف فظ ا ؾم ثؼذ اإلخز ١ بس )ثب يجغ ا ض ػب ف ل اػذ ا ج ١ ب بد(. ======================================================================= ========= الزظاخ ا ح : Find ا خبف ١ خ ث ع د ى رز ١ ض ا LOVs List Item LOVs ٠ عذ رؾبث ث ١ a( ا ز رغ ئ ٠ غبد ل ١ خ ؼ ١ خ ئرا وب ذ ا م ١ وض ١ شح. Static Values ئرا وب ذ ا م ١ صبثزخ List ٠ فن ئعزخذا ا Item b( ث ١ ب ٠ فن ئعزخذا ا LOVs ئرا وب ذ ا م ١ زغ ١ شح. Dynamic Values ا Values Static أعشع ا Query ر ه ثغجت أ ا Query ٠ م ثغ ت ا ج ١ ب بد لبػذح ا ج ١ ب بد Database ػبدح ب رى ػ ا Server ف ا ؾجىخ. )c 58
احملاضرة الثامنة Radio Group & Radio Button ا ؼ أ ػ بفش اإلخز ١ بس ا فشد ال رى ئال م ١ صبثزخ ض )ا غ ظ ا ؾب خ اإلعز بػ ١ خ... ئ خ( ز ا ؼ بفش ٠ غت أ رغ ؼ ب ؽب ٠ خ Container Oracle ؽز ٠ ى ئخز ١ بس خ ١ بس اؽذ و غ ػخ ب ف لذ ر عت رق ١ ا ؾب ٠ خ Container أ ال ص ئ ؾبء ا ؼ بفش ا زبثؼخ ب أ أ : ر ئ شاء Radio Gruop أ ال ث اىؼ اطش اىراتؼح ى اButtons Radio Stu Form ؼ ر ه ال ثذ أ ال ئمبفخ زا ا ؾم ثأ ش SQL وب زب : SQL> alter Table Stu Add(Stu_Sex number(1)); )ئرا ل ذ ثا ؾبء ا ؾم ثؼذ ع ت ا ج ١ ب بد ئ ا Form فم ثزؾذ ٠ ذ ا Data Block (STU) ص ئ مش ػ صس ا فأسح األ ٠ زخزبس Data Block Wizard ا زج ٠ ت STU_SEX ثؼذ ب ل ثغ ت ا ؼ قش Refresh ص ئمغو ا ضس Table ص ئمغو ا ح( STU_SEX لذ Radio Group أ م ثا ؾبء Form رى ف ١ ا Block Data ؼز ذح ػ ا غذ ي STU الؽظ أ ا ؾم أخز ا ؾى اإلفزشام ؼ بفش Text Item غؼ ثؾى Radio Buttons ز ١ ب ئ م ثزؼذ ٠ ل ١ ا خقبئ ا زب ١ خ : Property Value 1 Name STU_SEX 2 Item Type Radio Group 3 Mapping of Other Values 1 59
4 Initial Value 1 الؽظ ثؼذ ر ه ئخزفبء ا ؾم ؽبؽخ ا زق ١ Layout Editor أل لذ ر رى ٠ Radio Group ٠ زى أ ػ بفش ئخز ١ بس Radio Buttons ؽز ا ٢ ز ه م ثزؾذ ٠ ذ ا (STU_SEX) Radio Group Radio Buttons ص Create ؼ قش ٠ خقبئق ب وب ٢ ر : Property Value Property Value 1 Name MALE روش 2 Label 1 Name FEMALE أ ض 2 Label ئرا ٠ ز ظ س ا ؼ قش ٠ فار ت ئ خقبئ Radio Group أػي ا م ١ خ Canvas2 خبف ١ خ Canvas الؽظ ثؼذ ب ر ف ١ ز ا جش ب ظ ظ س ا م ١ ػ ؽى ئخز ١ بساد فشدح ثذال ا م ١ ا ذخ خ و ب ف Text. Item 60
Check Box ا ؼ أ ػ بفش اإلخز ١ بس ا زؼذد ال رى ئال م ١ صبثزخ ض ( ا غ غ ١ خ ا ؾب خ اإلعز بػ ١ خ... ئ خ( ا ى ئخز ١ بس أوضش خ ١ بس اؽذ. Stu Form ؼ ر ه ال ثذ أ ال ئمبفخ زا ا ؾم ثأ ش SQL وب زب : SQL> alter Table Stu Add(Stu_Nat number(1)); )ئرا ل ذ ثا ؾبء ا ؾم ثؼذ ع ت ا ج ١ ب بد ئ ا Form فم ثزؾذ ٠ ذ ا Data Block (STU) ص ئ مش ػ صس ا فأسح األ ٠ زخزبس Data Block Wizard ا زج ٠ ت STU_NAT ثؼذ ب ل ثغ ت ا ؼ قش Refresh ص ئمغو ا ضس Table ص ئمغو ا ح( أ م ثا ؾبء Form رى ف ١ ا Block Data ؼز ذح ػ ا غذ ي STU الؽظ أ ا ؾم STU_NAT لذ أخز ا ؾى اإلفزشام ؼ بفش Text Item غؼ ثؾى Check Box م ثزؼذ ٠ ل ١ ا خقبئ ا زب ١ خ : Property Value 1 Name STU_NAT 2 Item Type Check Box 3 Label ٠ 4 Value when Checked 1 5 Value when Unchecked 0 6 Check Box Mapping of Other Values Checked 7 Initial Value 1 61
الؽظ ثؼذ ر ه أ لذ ر رى ٠ Check Box وز ه ر ف ١ ز ا جش ب ظ ظ س ا م ١ ػ ؽى ئخز ١ بساد زؼذدح ثذال ا م ١ ا ذخ خ و ب ف. Text Item الزظ ػ و مو : خبف ١ خ Value when Checked ا ز عزم ثاػيبء اإلخز ١ بس ا ؾو ئرا وب ذ ا م ١ خ غب ٠ خ ؾم STU_NAT خبف ١ خ Value when Unchecked ا ز عزم ثاػيبء اإلخز ١ بس ا غ ١ ش ؾو ئرا وب ذ ا م ١ خ غ ١ ش غب ٠ خ ا م ١ خ ؾم STU_NAT خبف ١ خ Check Box Mapping of Other Values ا ز عزم ثاػيبء ا خ ١ بس ا ؾو Checked أ اإلخز ١ بس غ ١ ش ا ؾو Unchecked )ؽغت رؾذ ٠ ذ ا جش ظ( ئرا عذد ل ١ خ ف ؽم STU_NAT غب ٠ شح ب روش ف ا خبف ١ ز ١ ا غبثمز ١. 62
Canvases ا م بؽ ١ خ رؼ ا خ ف ١ خ )ا سلخ( أ األسم ١ خ ا ز رز مغ ػ ١ ب ا ؼ بفش Items ب ػذح أ اع : Content : ػ غبؽخ ا بفزح ا ز رؾز ٠ ب ا ع اإلفزشام ؽ ١ ش ٠ ؾأ ػ ذ ئ ؾبء 1. ا رط ٠ غت Form رؼش ٠ ف اؽذ زا ا ع ػ األل ى بفزح. Window Stacked : ٠ ظ ش ف ق ا ٠ ى Content Canvas ا زؾى ثؾغ وز ه ئظ بس ئخفبؤ ر مبئ ١ ب. 2. Toolbar : Vertical رظ ش ثؾى ؽش ٠ و أد اد ػ د. 3. Toolbar : Horizontal رظ ش ثؾى ؽش ٠ و أد اد أفم. 4. :Tab ٠ ظ ش ثؾى ففؾبد ؾزبط ف ثؼل األؽ ١ ب ؾقش ا ؼ بفش ف غ ػبد. 5. ---------------------------------------------------------------------------------------------------------------------- -------------- م ثا ؾبء Form عذ ٠ ذ ٠ ؼز ذ ػ Data Block ا غذ ي STU الؽظ أ ع ١ م ثا ؾبء ا Content Canvas )ئفزشام ١ ب ( عزظ ش ا ؼ بفش ػ ١ ئع ا (Canvas2) Canvas ١ ى رغ ١ ز ا جش غ ١ خ CANVAS_CONTENET ثؼذ ر ه م ثزؾذ ٠ ذ ا ) )Canvases ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create ص نغو F4 زؾى ثم ١ ا خقبئ ا زب ١ خ : Property Value 1 Name CANVAS_STACKED_SEC 2 Canvas Type Stacked 3 Viewport X Position 25 4 Viewport Y Position 150 5 Viewport Width 375 6 Viewport Height 150 Canvas ر ه ثزؾذ ٠ ذ ا ) )Data Block Section ئ داخ زا ا ص م ا ٢ ثغ ت ث ١ ب بد األلغب ا ع د ف ؽبؽخ ا ) Navigator )Object ص ثضس ا فأسح األ ٠ خزبس Data Block Wizard زجغ فظ CANVAS_STACKED_SEC الؽظ ثؼذ ب ر مغ ا خي اد ا ؼ دح ئال خي ح ر مغ ا ؼ بفش ف خزبس ا ا ؼ بفش ػ زا ا. Canvas 63
ث فظ ا خي اد ا غبثمخ ؾئ ا Canvas ا خبؿ ثج ١ ب بد ا غز ٠ بد غ ئخزالف : ا زغ ١ خ ا جش غ ١ خ a( CANVAS_STACKED_LVL Lvl ع ت وز خ ا ج ١ ب بد b( Canvas ر مغ ا ؼ بفش ػ زا ا c( ا غذ ٠ ذ. م ا ٢ ثا ؾبء ػ قش ٠ ع Content ػ ا Canvas Push_Button غ شاػبح ػذ مؼ ب ف أ ى خ ا Canvases ا شاد ئظ بس )أل اى Canvas ع Satcked ر ػغ ػي اى Canvas ع Content م ا سد رىل عاتقا ( ر ه أع ا زؾى ثاظ بس أؽذ ا م بؽ ١ ز ١ أ ئخفبؤ ب ؽب ١ ب غؼ خبف ١ خ Label ضس األ ي ( األقغا ( ضس ا ضب )اى غر اخ( لج وزبثخ ا ؾفشح ا خبفخ ثى ب فا ب م ئؽز ١ بىب ثاخفبء ب ػ ذ ثذا ٠ خ رؾ ١ ا جش ب ظ ؾ ١ ا ي ت وب زب : ص ىزت ا جش غخ ا خبفخ ثى صس ب فف صس األلغب ىزت : (Trigger : WHEN_NEW_FORM_INSTANCE) Hide_View('CANVAS_STACKED_SEC') ; Hide_View('CANVAS_STACKED_LVL') ; Execute_Query; (Trigger : WHEN_BUTTON_PRESSED) Hide_View('CANVAS_STACKED_LV L') ; Show_View('CANVAS_STACKED_SE C') ; Go_Block('Section'); ف صس ا غز ٠ بد ىزت : (Trigger : WHEN_BUTTON_PRESSED) Hide_View('CANVAS_STACKED_SEC') ; Show_View('CANVAS_STACKED_LVL') ; 64
Go_Block('Lvl'); Execute_Query; ثب يجغ ثؼذ ئظ بس ا Canvas ا ز ش ٠ ذ ز ت ئ Data Block ا زبثغ ص غ ت ا ج ١ ب بد ثبإلعزؼال. ا ثؼذ ئ غبص ز ا شؽ خ ش ٠ ذ ئ ؾبء ػ بفش رؾى )أصساس( ػ ؽش ٠ و األد اد ا ؼ د وز ه ؽش ٠ و األد اد األفم ] اىر فؼو ئ شاؤ ا ف مريح ت ا اخ غ ش ؼر ذج ػي قاػذج اىث ا اخNon_DB [ خبفخ ثب غذ ي STU ثب يجغ ٠ ز زا أ ران ئال ثزؾذ ٠ ذ ا ) Canvases ( ا ع د ف ؽبؽخ ا ) Object )Navigator ص Create شر ١ غ شاػبح ا خقبئ ا زب ١ خ : Property Value Property Value 1 Name CANVAS_VERTICAL 2 Canvas Type Vertical Toolbar 1 Name CANVAS_HORIZONTAL 2 Canvas Type Vertical Toolbar ف ضال غؼ أصساس ؽش ٠ و األد اد ا ؼ د ( زفظ ئعرؼال - خش ج ) غؼ أصساس ؽش ٠ و األد اد األفم )األ ه اىراى اىغاتق األخ ش( ثؼذ رغ ١١ ش Label ا خبؿ ثى صس ثبإلع ا ظب ش ػ ١ ىزت ا ؾفشح ا خبفخ ف ؽذس WHEN_BUTTON_PRESSED ثبألصساس وب زب : (PUSH_BUTTON_SAVE) Commit_Form ; (PUSH_BUTTON_QUERY) Go_Block('Stu') ; Execute_Query ; (PUSH_BUTTON_FIRST) Go_Block('Stu') ; First_Record ; (PUSH_BUTTON_NEXT) Go_Block('Stu') ; Next_Record ; (PUSH_BUTTON_PREVIOUS) Go_Block('Stu') ; Previous_Record ; (PUSH_BUTTON_LAST) Go_Block('Stu') ; Last_Record ; 65
(PUSH_BUTTON_EXIT) Exit_Form ; ا ع األخ ١ ش أ اع ا Canvas ا ع Tab ف زا ا ع ٠ ز أ ال رؾذ ٠ ذ ا ) )Canvases ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create ص نغو F4 زؾى ثم ١ ا خقبئ ا زب ١ خ : Property Value 1 Name CANVAS_TAB 2 Canvas Type Tab 3 Tab Attachment Edge Top ا ى عؼ ٠ زى ػذح ففؾبد )م غ ػخ( ز ه ئرا الؽظ ئ ؾبء صالصخ ففؾبد ئفزشام ١ خ )Object Navigator أسد ب ئ ؾبء ففؾخ عذ ٠ ذح ف م ثزؾذ ٠ ذ ا ) )Canvases ا ع د ف ؽبؽخ ا ) ] ا زغ ١ خ ثش غ ١ خ - F4 زؾى ثم ١ أ ا خقبئ ض Create ص نغو ؾذد ا ( Pages (Tab ص ا ز ى ١ ػذ ا ز ى ١ - ا ؼ ا - اإلظ بس اإلخفبء [. Property 1 Name 2 Enabled 66
ص م ا ٢ ثغ ت ث ١ ب بد األلغب Section ئ داخ زا ا Canvas ر ه ثزؾذ ٠ ذ ا ) )Data Block ا ع د ف ؽبؽخ ا ) )Object Navigator ص ثضس ا فأسح األ ٠ خزبس Data Block Wizard زجغ فظ ا خي اد ا ؼ دح ئال خي ح ر مغ ا ؼ بفش ف خزبس ا CANVAS_TAB ث ب أ ب ػجبسح ػ ففؾبد ف ١ غت أ ؾذد PAGE_SECTION ثب م ١ خ Tab Pages ) اإلع ا جش غ ز ا قفؾخ( الؽظ ثؼذ ب ر مغ ا ؼ بفش ػ زا ا. Canvas ث فظ ا خي اد ا غبثمخ غ ت ا Data Block ا خبفخ ثجم ١ خ ا غذا ي ئ ا قفؾخ ا ؾئخ غجمب ػ ا Tab Canvas و ث ب ٠ بعج ب. الؽظ أ ا Data Block لذ ٠ ز ع ج ب أوضش شح ػ ئػزجبس ع ة ر مغ ػ بفش ب ػ Canvas عذ ٠ ذح ز ه لذ ٠ زغ ١ ش ئع ا Data Block ضال SECTION ئ SECTION1 زا ال ٠ ؼ أ ا Data Block ا غ بح ١ غذ SECTION1 ع دح ف لبػذح ا ج ١ ب بد ف ز أع بء ئخز ١ بس ٠ خ ى ا أ رى ا خقبئ ب وب زب : Property Value 1 Database Data Block Yes 2 Query Data Source Name SECTION وز ه ؽم ي ز ا ٠ غت Data Block أ رى ا خقبئ ب وب زب : Property Value Property Value 1 Database Item Yes 1 Database Item Yes ت ؼشفر ا ى ز اىخظائض ظثر اى ن ئ شاءBlock Data ذؼر ذ ػي قاػذج اىث ا اخDB ذ ا ) زا ب زؾذس ػ ف دسط ع ت ث ١ ب بد ا Block Data أع ب ؽز س د ز ا فمشح( ======================================================================= ========= 67
الزظاخ ا ح : ا ى ا زؾى ثخقبئ ا Canvas ثش غ ١ ب خالي ا زؼ ١ خ ا زب ١ خ : ' ) Set_Canvas_Propertyئع اىق اش ح, 'ئع اىخاط ح, اىق ح; ) ٠ ى ا زؾى ثخقبئ ا قفؾبد ثش غ ١ ب خبفخ ئرا أسد ب غ ئظ بس ففؾخ ب ػ غزخذ ؼ ١ ر ه خالي ا زؼ ١ خ ا زب ١ خ : ' ) Set_Tab_Page_Propertyئع اىظفسح, 'ئع اىخاط ح, اىق ح; ) ضبي : Set_Tab_Page_Property( 'PAGE_MARK', Visible, Property_False ); ف ز اىرؼي ح ئشاسج ئى أ ال ن أ رنشس ئع طفسح ا زر ئرا ما د فTab Canvas خذ ذج. أخش ع ١ ظ ش ب ؽز ئرا ىزت أ ش اإلظ بس ػ ا Canvas Canvas ػ Data Block ئعزذػبء ا ػ ذ ا ز ف ١ ز رز مغ أ ال Toolbar Canvas ص رأر ثم ١ خ ا ؼ بفش ف ا غضء ا زجم ا بفزح ز ه ٠ غت شاػبح Width ف ا Vertical Toolbar وز ه ا Height ف ا. Horizontal Toolbar ئرا أ ؾئذ أ ػ قش Item ف Canvas ؼ ١ خ أسدد م ب ئ Canvas أخش ف ب ػ ١ ه ع رغ ١١ ش خبف ١ خ ا Canvas ز ه ا ؼ قش ثغؼ ب رؾ ١ ش ئ ا Canvas ا ز رش ٠ ذ. ا ى سع أ ٠ م خ Icon ػ و صس Push_Button ثؼذ رؼذ ٠ خقبئق ثؾ ١ ش : Iconic خبف ١ خ Yes رؼي ا م ١ خ a.. Icon Filename خبف ١ خ *.ico ٠ ؼي ئع ف األ ٠ م خ ر اإل زذاد b. خبف ١ خ Tab Attachment Edge رؼ ػ رؾذ ٠ ذ ا لغ ا ز عزظ ش ف ١ ا زج ٠ جبد ا خبفخ ثذخ ي ا قفؾبد ر ز ه ا م ١ End) (Top _ Bottom _ Left _ Right _ Start _. 68
احملاضرة التاسعة : Report Builder أداح رغزخذ ج بء ا زمبس ٠ ش ا ز ٠ غزخذ ب ا ) User ( ثى ػ بفش ب ض ب ل ب ثىزبثخ ا جشا ظ ا زؾى ثقالؽ ١ بد ا غزخذ ١ ئ زمبء أفن ا اع بد األعب ١ ت ىزبثخ ا جشا ظ أداء ا ؼ ١ بد ا خز فخ ػ ١ ب فا ا ض شح ا ز ٠ غت أ ٠ غ ١ ب ا جش ب ظ ا زمبس ٠ ش ا ز ال ثذ أ رى ثجش ب ظ ا Report Builder لذ روش ب عبثمب أ ػ ذ ػ ١ ز : Report Builder ٠ ؾغ ثش ب ظ *.RDF ر ئ زذاد Source ٠ ز ذ ف قذس Save ؽفظ ا زمش ٠ ش. Reports Runtime ٠ ؾغ ثش ب ظ *.REP ر ئ زذاد Execute ٠ ز ذ ف ر ف ١ ز Compile ا زشع خ ======================================================================= ========= Report Builder Start Programs Oracle Reports 6i-orantr Report Builder فزظ ش أ ال ؽبؽخ رشؽ ١ ج ١ خ ٠ ى خال ب رؾذ ٠ ذ ب ئرا وب ا ي ة ا جذء ثب زق ١ أ ثب زؼ ١ فب زق ١ صالس خ ١ بساد : ئعزخذا ؼب ظ ا زمبس ٠ ش ث بء رمش ٠ ش عذ ٠ ذ ٠ ذ ٠ ب فزؼ رمش ٠ ش ع د غجمب زؼ ١ خ ١ بسا ب : ػشك ا غ خ ا غش ٠ ؼخ ) فب ١ ( ئعزىؾبف وش د ا ز ١ ؾبد ) ب (. )زاى ا ع خراس اىثذء تاىرظ تاعرخذا ؼاىح اىرقاس ش ث ؼغط )OK زظ ش ثؼذ ر ه ؽبؽخ رشؽ ١ ج ١ خ خبفخ ث ؼب ظ ا زمبس ٠ ش اىراى ( )ف ؼغط ص رظ ش ؽبؽخ ؼي ف ١ ب ا ؼ ا ا ؼب ا ز ع ١ ظ ش ػ ا زمش ٠ ش وز ه م ثزؾذ ٠ ذ ع ا زمش ٠ ش : عذ ٠ ؾج ا رط ػ ا ثش ٠ ذ خيبة رط رغ ١ غ ١ غبس رغ ١ غ ألػ قف فخ قف فخ غ غ ػخ. 69
)زاى ا ع خراس ع نرة اىؼ ا ذقش ش ت ا اخ اىطالب خراس ع اىرقش ش خذ ى ث ؼغط اىراى ( ص رظ ش ؽبؽخ رؾذ ٠ ذ ع اإلعزؼال : SQL ع خ ئعزؼال Express )ػ ذ ب ٠ ى ػ ؽجىخ )Server/Client. )زاى ا ع خراس ع اإلعرؼال خ يح SQL ث ؼغط اىراى ( زظ ش ثؼذ ب ؽبؽخ ىزت خال ب ع خ اإلعزؼال ا ز ث بءا ػ ١ ب عزظ ش ا ج ١ ب بد ف ا زمش ٠ ش ٠ ى ه رؾش ٠ ش ب جبؽشح ف SQL Query Statement أ ث بء ب عذ ٠ ذ خالي ثش ب ظ ثب اإلعزؼال Query Build SQL أ ئعز ١ شاد ب ف Query Import SQL بن أ ٠ نب صس اإلرقبي ئ رى زقال ثب مبػذح Connect ؽ ١ ش )زاى ا ع ق تث اء خ يح اإلعرؼال خاله اىؼغط ػي اىثش ا ح اى ظغش تا اإلعرؼال...( ؽ ١ ش الثذ اإلسرجبه أ ال ثمبػذح ا ج ١ ب بد وزبثخ ئع ا ) )User ا ) )Password ثؾى فؾ ١ ؼ ث اىؼغط ػي اىضس طو زظ ش ا ؾبؽخ ا خبفخ ثجش ب ظ ثب اإلعزؼال ب ؽبؽخ ئخز ١ بس عذا ي ا ج ١ ب بد ا شاد ا زؼب ؼ ب )زاى ا ع رخراس اىدذ ه ) STU م ثب زأؽ ١ ش أ ب و ؽم ش ٠ ذ ع ج أ ب ئرا أسد ب ع ت ع ١ غ ا ؾم ي ف إؽش ػ ا خ ١ بس ا زؼذد أػ ا غذ ي الؽظ ػ ؽش ٠ و األفم جش ب ظ ثب اإلعزؼال ع د األ ٠ م بد : ئخر اس خذ ه اىث ا اخ : ػ ذ ب ش ٠ ذ ئظ بس ز ا ؾبؽخ شح أخش إلمبفخ عذ ي آخش 70
ئظ اس : SQL ؾب ذ خال ب رى أ ش اإلعزؼال. ) ؼغط افق ى ش ذن خ يح اإلعرؼال ثاششج ف SQL Query Statement ف ؼغط اىراى ( ثب زب رظ ش ا ؾم ي ف ا ) List ( ف خزبس ب ا ؾم ي ا ي ة ا زؼب ؼ ب ث اعيخ األصساس > << < << )زاى ا ع خراس << ث ؼغط اىراى ( زظ ش ؽبؽخ زغاب ئخ اى اخ اىسق ها ز رشغت ثا ٠ غبد ب ض )ا غ ع ا ز عو ا ؼذ ا ؾذ األد ا ؾذ األلق اإلع ب ( ر ه خالي رؾذ ٠ ذ ا ؾم ص مغو ا ضس ا ز رش ٠ ذ ريج ١ ك ا ؾغبة ا شاد ئعشائ ػ ١ )زاى ا ؼغط اىراى ( ص رظ ش ؽبؽخ ر ى ب رغ ١١ ش ا ؼ ب ٠ ا ظب شح ألع بء ا ؾم يPrompt وز ه ػشم ب W ى ب H )زاى ا ؼغط اىراى ( 71
زظ ش ؽبؽخ رؾذ ٠ ذ ا مب ت Template ا ز رش ٠ ذ ػشك ا زمش ٠ ش ث ف ١ ى ه أ رخزبس : لب ت ؾذد غجمب رؾذ ٠ ذ لب ت ف خض ػ ع بص ا ى ج ١ رش ا خبؿ ثه ظ س ا زمش ٠ ش ثذ أ لب ت. )زاى ا دؼي ػي اىقاىة اإلفرشاػ ث ػغط اىراى ( ثؼذ ب رظ ش ؽبؽخ ا ز ب ا زجش ٠ ىبد congratulations زؼ ػ ئر ب ؼب ظ ا زق ١ )ا خيو( ث غبػ )ف ؼغط ا ح( تزىل ن قذ ق ا ترشغ و. Report Builder ======================================================================= ========= 72
الزظاخ ا ح : ٠ ز رؾغ ١ ا زمش ٠ ش خالي ع ت ا ج ١ ب بد ا Database ع اء أوب ذ لبػذح ا ج ١ ب بد ع دح ػ ا Server أ ػ ا Client )الزظ ا ذ ش ط اى Client Activity اىز ؼ خية اىث ا اخ قاػذج اىث ا اخ اى خ دج ػي اى )Client ف ؽب خ ػذ ظ س ا خو ثب ؼشث ل ثزغ ١١ ش ا خو ر ه ثب نغو ػ Ctrl+A زؾذ ٠ ذ ا ى ص ؽش ٠ و األد اد األفم ل ثاخز ١ بس ع ا خو ١ ى Arial(Arabic) ؽغ خو ١ ى 12 ثبإل ىب رغ ١١ ش ا ق سح ا ظب شح ف زا ا مب ت ثق سح أخش ) ضال ؽؼبس ا غب ؼخ( ر ه ثاخز ١ بس ب األ ش ئعر شاد ط سج ا مبئ خ يف. 73
Report Builder : Object Navigator.1 ٠ ؾز ػ بفش ا زمش ٠ ش وب خ Report وز ه ا ىبئ بد Objects ا ى ا ؾق ي ػ ز ا ؾبؽخ خالي ا نغو ػ ا ضس F3 أ ا مبئ خ Tools خزبس األ ش. Object Navigator : Data Model.2 رط ا ج ١ ب بد ع أر ئ ؽشؽ ثب زفق ١ ثا ىب ه ئػزجبس ؽج ١ ا Data Block Wizard ف ثش ب ظ Form. Builder Form : Layout Model.3 رط ا غك ع أر ئ ؽشؽ ثب زفق ١ ثا ىب ه ئػزجبس ؽج ١ ا Layout Wizard ف ثش ب ظ. Builder : Property Palette.4 رؾز خقبئ ا ؼ بفش ا ىبئ بد Objects ا ى ا ؾق ي ػ ز ا ؾبؽخ خالي ا نغو ػ ا ضس F4 أ ا مبئ خ Tools خزبس األ ش. Property Palette الزظح ا ح : رط ا ج ١ ب بد Data Model رط ا غك Layout Model ب ى ب ٠ غ ثب. Report Editor ======================================================================= ========= Object Navigator Reports [زاى ا [ MODULE1 : ئع ا )Report) اإلفزشام ٠ أخز ئع ا جش ب ظ د ب : Live Preview ؼب ٠ خ ا زمش ٠ ش لج ا يجبػخ : Data Model رط ا ج ١ ب بد ع أر ئ ؽشؽ ثب زفق ١ : Layout Model رط ا غك ع أر ئ ؽشؽ ثب زفق ١ : Parameter Form رط ا ؼب الد ػجبسح ػ ٠ ظ ش Form لج ا زمش ٠ ش ث ؼب الد ؾئخ ا غزخذ أ أ ب ؾئخ ا ظب. : Reports Trigger ػجبسح ػ PL/SQL( (SQL, ٠ فز ػ ذ ؽذس ؼ ١ لذ ٠ ى ز ا ؾذس : Before Parameter Form لج رط ا ؼب الد After Parameter Form ثؼذ رط ا ؼب الد Before Report لج ا زمش ٠ ش Between Pages ث ١ ففؾبد ا زمش ٠ ش. After Report ثؼذ ا زمش ٠ ش Package أ Function أ Procedure ئ ب أ رى : Programs Units.1.2.3.4.5.6.7 74
PL/SQL ػجبسح ػ ىزجبد : Attached Libraries.8 Templates ػ ذ ب ر ؾئ رمش ٠ شا ثؾى لب ت External SQL Queries ئعزؼال بد SQL ا خبسع ١ خ ػجبسح ػ ىزجبد PL/SQL PL/SQL Libraries Debug Actions ز م ١ ؼ Stack ئعزخذا ا ىذط ػجبسح ػ ا ؾض ا ذ غخ غ ا ) Oracle ( ؽ ١ ش رم ثؼشك ع ١ غ غزخذ لبػذح ا ج ١ ب بد. Built in Packages Database Objects ======================================================================= ========= الزظاخ ا ح : أص بء ػ ١ خ ا ؾفظ File Save رظ ش ؽبؽخ خ ١ بساد ا ؾفظ ا ز خال ب ٠ ى ه رؾذ ٠ ذ ئرا ب و ذ رش ٠ ذ ا ؾفظ ف لبػذح ا ج ١ ب بد أ ف ف )اإلفزشام ( وز ه رش ٠ ذ ا ؾفظ ؼشك ا زمبس ٠ ش )اإلفزشام ( أ ا م ا ت أ اإلعزؼال بد أ ا ىزجبد ا زبثؼخ PL/SQL أ ؽفظ ا ى )زاى ا ؼغط افق ى ر زفظ اىرقش ش ػي يف سذد غاس ( ث فظ ا اي رظ ش ؽبؽخ ؽج ١ خ أص بء ػ ١ خ ا فزؼ Open زمش ٠ ش ب. 75
Data Model ؽ ١ ش م ثزؾذ ٠ ذ ا ) )Data Model ا ع د ف ؽبؽخ ا ) Object )Navigator نغو F2 زظ ش بفزح ف ١ ب اإلعزؼال بد ا ع دح زمش ٠ ش )ؽب ١ ب 1_Q( ئرا مش ب ػ ١ ب مشا ضد عب ٠ ظ ش اإلعزؼال ا شرجو ث غ ػخ ا ؾم ي ز اعذح ػ ؽى غ ػخ. Group Data Model System Parameters a ؽ ١ ش ٠ ز ا زؼب ؼ ب ػ ىش ٠ ك ا خقبئ ا خبفخ ى ؼب ظب ) ؾذد ؼب ا ظب ص نغو ػ F4( خبفخ خبف ١ خ ا م ١ خ اإلثزذائ ١ خ Initial Value ؼب الد ا ظب : ػ ذ ب رى Yes فا ب غؼ ا زمش ٠ ش ٠ يجغ ف ا خ ف ١ خ ث ١ ب.1 اىخيف ح : Background )ئفزشام ١ ب ل ١ خ خبف ١ خ ا م ١ خ اإلثزذائ ١ خ )No ؾ اف ا ؼ ف ثشا ظ أخش.2 ػذد اى غخ : Copies رؼ رؾذ ٠ ذ ػذد غخ ا زمش ٠ ش ا يج ع )ئفزشام ١ ب ل ١ خ خبف ١ خ ا م ١ خ اإلثزذائ ١ خ 1(.3 اىؼ يح : Currency رؼ ب ا ش ض ا ز رش ٠ ذ ئمبفز ثغب ت األسلب أص بء ىجبػخ ا زمش ٠ ش ) ضال ىزت Y.R أ س ٠ بي ٠ (.4 اىف اطو اىؼشش ح : Decimal رؼ رؾذ ٠ ذ ا ش ض ا غزخذ غ ا ف اف ا ؼؾش ٠ خ ) ضال ىزت ا ش ض, أ ا ش ض أ ا ش ض.( html أ ف Pdf أ ف.5 ذ غ ق اى ذف : DesFormat رؼ رؾذ ٠ ذ ع ا ف ا ز ع ١ شع ئ ١ ا زمش ٠ ش )ف ضال رش ٠ ذ ثؾى ف... Rtf ئ خ( 76
.6 ئع اى ذف : DesName رؼ رؾذ ٠ ذ ئع ا ف ا ز ع ١ شع ئ ١ ا زمش ٠ ش ) ف ١ ذح عذا ئرا رى بن ىبثؼخ شرجيخ ثغ بص ا ى ج ١ رش(.7 ع اى ذف : DesType رؼ رؾذ ٠ ذ ع خ ا يجبػخ ئ ا ؾبؽخ Screen أ ئ ا يبثؼخ Printer...ئ خ )ثب يجغ ا يجبػخ ئ ا ؾبؽخ أعشع ا يجبػخ ػ ا يبثؼخ ثغجت أ ظ س ا قفؾخ األ ا زمش ٠ ش ػ ا ؾبؽخ ال ٠ غزغشق لزب ى ٠ ال ث ١ ب ظ س ا قفؾخ األ ف سق ا يبثؼخ ٠ زي ت أ ال ر غ ١ ك ع ١ غ ا قفؾبد لج ا جذء ثؼ ١ خ ا يجبػخ(.8 اى ط : Mode رؼ رؾذ ٠ ذ ب ئرا و ذ رش ٠ ذ أ ٠ يجغ رمش ٠ شن ثؾى ف سح Bitmap أ أؽشف Character.9 اإلذدا : Orientation رؼ رؾذ ٠ ذ ئرغب ىجبػخ ا زمش ٠ ش أفم ١ خ Landscape أ ػ د ٠ خ Portrait.10 ظ فح اىطاتؼح : PrintJob رؼ رؾذ ٠ ذ ش ٠ ذ ئظ بس ؽبؽخ خقبئ ا يبثؼخ لج ا زمش ٠ ش أ ال )ئفزشام ١ ب ل ١ خ خبف ١ خ ا م ١ خ اإلثزذائ ١ خ )Yes.11 ا الف : Thousands رؼ رؾذ ٠ ذ ر غ ١ ك ا ٢ الف ) ضال 99.999(. SQL Query Statement User Parameters.b ىش ٠ مخ ئ ؾبء ؼب غزخذ ٠ ؼز ذ ئػز بدا و ١ ب ػ ع خ اإلعزؼال ا ز ق ئ ١ ب ثزؾذ ٠ ذ ا ) )Data Model ا ع د ف ؽبؽخ ا ) Object )Navigator ص : نغو F2 زظ ش بفزح ف ١ ب اإلعزؼال بد ا ع دح زمش ٠ ش )ؽب ١ ب 1_Q( ف مش ػ ١ ب مشا ضد عب ١ ظ ش اإلعزؼال أ ؾذد اإلعزؼال بد Queries ص نغو F2 ث فظ ا يش ٠ مخ. م ثامبفخ ؼب غزخذ ر ه ثزؼذ ٠ ع خ اإلعزؼال )ؽب ١ ب 1_Q( ىزت ف ١ ب ر ه ثؼذ ظ س سعب خ ا زأو ١ ذ ا ز رخجش ب ثأ لذ ر ئ ؾبء ١ قجؼ Where STU_SEC = :SECN ذ ٠ ب ا ٢ ؼب غزخذ عذ ٠ ذ SECN ؼب ل ج ا غزخذ!!.. 77
م ا ٢ ثزؾذ ٠ ذ ؼب ا غزخذ ا غذ ٠ ذSECN ؾ ا خقبئ ا زب ١ خ : Property Value 1 Data Type Number 2 Initial Value 4 ؽ ١ ش ؼي ع ا ج ١ ب بد Data Type ؼب ا غزخذ SECN ا م ١ خ ١ ئ Number ثم ١ خ ئثزذائ ١ خ 4 Initial Value وز ه ؾذد ل ١ خ خبف ١ خ ا مبئ خ ا شوجخ List of Value خالي ا ؾبؽخ ا ز ؾذد ث اعيز ب أ ا مبئ خ ا شوجخ رغ ت ل ١ ب لبػذح ا ج ١ ب بد أ د ٠ ب ١ ى ١ خ )خ يح )Select ص م ثغ ت ع خ اإلعزؼال ػ ىش ٠ ك صس ثش ب ظ ثب اإلعزؼال ثب يش ٠ مخ ا مؾخ ذ ٠ ب غجمب أ وزبثز ب جبؽشح ف ؾشس ع اإلعزؼال ; Section Select * From ا ٢ الؽظ ػ ذ ر ف ١ ز ا زمش ٠ ش و ١ ف رظ ش ؽبؽخ ئػذاداد ا يجبػخ ؾز ٠ خ ػ ؼب ا غزخذ ا خبؿ ثبأللغب Section ا غ SECN خزبس ا م ١ خ ا ز ش ٠ ذ ص نغو Enter الؽظ رط ا ؼب الد Parameter Form ػ ذ ب م ثزؾذ ٠ ذ ص نغو F2 ؾب ذ ا ؾبؽخ ا ز رظ ش ؼب الد ا زمش ٠ ش وب خ. Form ث فظ ا يش ٠ مخ ئرا أسد ب ئمبفخ ؼب غزخذ خبؿ ا خي اد وب زب : تاى غر رى 1. ئمبفخ ا ؼب ػ ىش ٠ ك رؼذ ٠ ع خ اإلعزؼال ف ىزت ف ١ ب ١ قجؼ Where LVL_SEC = :LVLN ذ ٠ ب ا ٢ ؼب غزخذ عذ ٠ ذ LVLN رؼذ ٠ خقبئ ا ؼب ) ع ا ج ١ ب بد ا م ١ خ اإلثزذائ ١ خ ا مبئ خ ا شوجخ ا ز غؼ ب ئعزبر ١ ى ١ خ ] ل ١ صبثزخ [ ػ ىش ٠ ك وزبثخ ا م ١ خ ص ا نغو ػ ا ضس ئمبفخ ىزا ثب غجخ جم ١ خ ا م ١ (..2 78
System Parameters لبئ خ أد اخ خزبس األ ش تا رج ؼا و... Builder Tools Parameter Form ؾب ذ ع د ع ١ غ ؼب الد ا ظب System Parameters ؼب الد ا غزخذ ا ؾئخ User Parameters ف م ثزؾذ ٠ ذ ا ؼب ا ز ش ٠ ذ ظ س ( ظثر ظيال أع د اىي ( ىزت أ ب و ؼب ا ؼ ا ا ز شغت ف ئظ بس ف ضال ثذال ظ س ؼب ا غزخذ )ا مغ ( ثب ؼ ا SECN غؼ سل ا مغ زظ ش سعب خ رأو ١ ذ ئخز ١ بس ا ؼب الد ؾب ذ ف رط ا ؼب الد Parameter Form و ١ ف ر نبف ئ ١ ثم ١ خ ا ؼب الد ا ز ل ب ثا زمبئ ب. 79
======================================================================= ========= ذي ر : ئرا أسد ب أ ؾئ رمش ٠ ش ٠ ؼ ػ ئ ٠ غبد ث ١ ب بد سل ئ سل ؼ ١ أ ربس ٠ خ ئ ربس ٠ خ ؼ ١ فا ٠ غت ػ ١ ب أ م ثزؼش ٠ ف ؼب غزخذ ث اعيخ رؼذ ٠ ع خ اإلعزؼال ص رؼذ ٠ خقبئ ا مبئ خ ا م ١ خ اإلثزذائ ١ خ ا ؼب ١ ) ع ا ج ١ ب بد ا شوجخ(. ؼ ر ه فا ب ع م ث ب ٠ : SQL Query Statement ئمبفخ ؼب غزخذ ػ ىش ٠ ك رؼذ ٠ ع خ اإلعزؼال a. ر ه ثىزبثخ And STU_Lvl Between :No1 and :No2 ١ قجؼ ذ ٠ ب ؼب غزخذ عذ ٠ ذ ٠ ب No2 No1 ر ه ثؼذ ظ س سعب خ ا زأو ١ ذ ا ز رخجش ب ثأ لذ ر ئ ؾبء ا ؼب ١ ل ج ا غزخذ!!.. b. ؼي ا ؼب األ ي ا ؼب ا ضب ا خقبئ ا زب ١ خ : Property Value Property Value 1 Data Type Number 1 Data Type Number ظ ش ػجبسح ) غر سق ( أ ب ا ؼب No1 ػجبسح )ئى غر سق ( أ ب ا ؼب No2 ر ه خالي لبئ خ أد اخ خزبس األ ش تا رج ؼا و... Builder Tools Parameter Form ؾب ذ ع د ع ١ غ ؼب الد ا ظب System Parameters ؼب الد ا غزخذ ا ؾئخ User Parameters ف ىزت أ ب ا ؼب No1 ا ؼ ا ) غر سق ( أ ب ا ؼب No2 ا ؼ ا )ئى غر سق (. Layout Model 80
ؽ ١ ش م ثزؾذ ٠ ذ ا ) Model )Layout ا ع د ف ؽبؽخ ا ) Navigator )Object نغو F2 زظ ش ا ؾبؽخ ا ؾز ٠ خ ػ ١ ى ١ خ ا ؼشك )اى نو اىشئ غ ىيرقش ش ) أ ا ؾز ػ ا ؾم ي Fields ا ؼ ب ٠ Label ٠ ى أ ززجغ ى بد رط ا غك Layout Model خالي ؽبؽخ ا ) )Object Navigator أ ؽش ٠ و األد اد األفم ا خبؿ ثؾبؽخ ا ) )Layout Model ؽ ١ ش ر عذ األسثغ األ ٠ م بد ا زب ١ خ :.1 قطغ اىشأط : Header رظ ش أ ي ففؾخ فمو رزى عغ ب ؼ.2 اى قطغ اىشئ غ : Body رظ ش ففؾبد ا زمش ٠ ش رزى عغ ب ؼ ؽ ١ ش ٠ زى ميغ ا غغ غ ػبد Groups و غ ػخ ب ث ١ ب بد غ ١ ش رىشاس ٠ خ Frame وب ؼ ب ٠ ث ١ ب بد رىشاس ٠ خ Repeating Frame وب ؾم ي ز ا غ ػبد ػذد ب شرجو ث ع ا زمش ٠ ش ف ضال )اىدذ ى ريل د ػح ازذج فقط ) Group ف ا ذسط ا مبد ثار اهلل ع زؾذس ػ ز ا ميخ ا ب خ ثؾى رفق ١ أوضش..3 قطغ اى إخشج : Footer رظ ش آخش ففؾخ فمو رزى عغ ب ؼ.4 ذسش ش اى ا ش : Margin رظ ش ا ؼ ا زمش ٠ ش. ======================================================================= ========= الزظاخ ا ح : ئرا أسدد ئظ بس ا ؼ ب ٠ ػ و ففؾخ ف ا زمش ٠ ش )سل ا يب ت ئع ا يب ت -... ئ خ( ف ١ غت ئػيبء ا م ١ خ All Pages خبف ١ خ Print Job On ر ه ف خقبئ ا ج ١ ب بد ا غ ١ ش زىشسح. ر ز ه ا خبف ١ خ Print Job On ا م ١ ا زب ١ خ : : All Pages ٠ غ ؼ ثب ظ س ف ع ١ غ ا قفؾبد : All But First Page ٠ غ ؼ ثب ظ س ف ع ١ غ ا قفؾبد ػذا ا قفؾخ األ : All But Last Page ٠ غ ؼ ثب ظ س ف ع ١ غ ا قفؾبد ػذا ا قفؾخ األخ ١ شح Registry ٠ أخز ا م ١ خ ا ؾذدح ف ؾشس ا زغغ ١ : Default : First Page ٠ غ ؼ ثب ظ س ف ا قفؾخ األ فمو : Last Page ٠ غ ؼ ثب ظ س ف ا قفؾخ األخ ١ شح فمو..1.2.3.4.5.6 ثا ىب ه وزبثخ ب رش ٠ ذ ػجبساد ر م ١ ؾ ١ خ أ رشؽ ١ ج ١ خ خالي ميغ ا شأط ضال وب زب : ؾذد ) رج اى غق( ا ع د ف ؽبؽخ ا ) Navigator )Object قطغ اىشأط اىدغ ص نغو ػ ١ ظ ش F2 ا رط ا خبؿ ثب غغ Form ف م ثاخز ١ بس ا ؼ قش Display Item ؽش ٠ و األد اد ىزت )عب ؼخ ا ؼ ا زى ع ١ ب فشع رؼض( غ ١ ش ب ٠ ض ئػذاداد ض ع ا خو ؽغ األ ب ١ خ ا خ ف ١ خ... ئ خ الؽظ ثؼذ ب ظ س ز ا قفؾخ ػ ذ ثذا ٠ خ ر ف ١ ز ا زمش ٠ ش أل ب ف عضء ا غغ ميغ ا شأط. 81
82
احملاضرة العاشرة Groups لج ا خ ك ث فب ١ ا غب ١ غ ٠ غت أ ؼشف برا رؼ اإلىبساد ف ا زمبس ٠ ش وب زب : 1. اإلطاس اىغ ش ذنشاسFrame : ؽ ١ ش رظ ش ف ١ ا ج ١ ب بد ا غ ١ ش رىشاس ٠ خ وب ؼ ب ٠ ا ز ٠ ز ع ت ث ١ ب بر ب شح اؽذح أص بء ػ ١ خ رؾغ ١ ا زمش ٠ ش ٠ ش ض ثش ض اإلىبس ا مو.2 اإلطاس اىرنشاسFrame : Repeating ؽ ١ ش رظ ش ف ١ ا ج ١ ب بد ا زىشاس ٠ خ وب ؾم ي ا ز ٠ ز ع ت ث ١ ب بر ب أوضش شح أص بء ػ ١ خ رؾغ ١ ا زمش ٠ ش ٠ ش ض ثش ض اإلىبس ا مو ا ؾز ػ ع ر ه ذال خ ػ ا زىشاس )ػذد ا زىشاس ٠ ى ثؼذد ا غغالد(. ثاه ثغط : ئر ففؾبد ا زمش ٠ ش رزى سأط عغ إخشح ى ب عغ ب ؼ ف عغ ا زمش ٠ ش ٠ زى ميغ ا غغ غ ػبد Groups و غ ػخ ب ث ١ ب بد غ ١ ش رىشاس ٠ خ Frame وب ؼ ب ٠ ث ١ ب بد رىشاس ٠ خ Repeating Frame وب ؾم ي ٠ غت أ ف ا مبػذح ا زب ١ خ أص بء رق ١ رمش ٠ ش ب : مو د ػح Group ى ا ئطاس ذنشاس Repeating Frame خاص ت ا أ أ ػذد اى د ػاخ = ػذد اإلطاساخ اىرنشاس ح 83
---------------------------------------------------------------------------------------------------------------------- -------------- ؾئ رمش ٠ ش ٠ مؼ ا ؼاللخ Relation ث ١ ا بدح ا يالة ا ذاسع ١ ب ثؾ ١ ش غ ت ا ؾم ي )سل ا بدح ئع ا بدح سل ا مغ ئع ا مغ ( عذ ي Subject ا ؾم ي )سل ا يب ت ئع ا يب ت( عذ ي Stu ث اعيخ ؼب ظ ا زمبس ٠ ش غؼ ع ا زمش ٠ ش )ذد غ ىي غاس( زى ع خ اإلعزؼال وب زب : Select Sub_No, Sub_Name, Sub_Sec, Sub_Lvl, Stu_No, Stu_Name From Subject, Stu Where Sub_Sec = Stu_Sec And Sub_Lvl = Stu_Lvl ; الؽظ ثؼذ ب ظ س ؽبؽخ عذ ٠ ذح ريب ت ثزؾذ ٠ ذ ا غ ػبد ا ز ش ٠ ذ ئظ بس ا ج ١ ب بد ف ١ ب ر ه ثغجت ئخز ١ بس ب ع رمش ٠ ش غ ١ ش اى ع اىدذ ى اىز رن د ػح ازذج فقط أ ب ؽب ١ ب ثاخز ١ بس ب ع ا زغ ١ غ ١ غبس فغ م ث م ا ؾم ي )سل ا بدح ئع ا بدح سل ا مغ ئع ا مغ ( و غ ػخ أ أ ب ثم ١ خ ا ؾم ي فغز ذسط جبؽشح رؾذ ظ خ ا غ ػخ األخ ١ شح ب ا ضب ١ خ ص ى ثم ١ خ زي جبد ؼب ظ ا زمش ٠ ش ؾب ذ ثؼذ ب ىش ٠ مخ ػشك زا ا زمش ٠ ش. ذي ر : ئرا أسدد ئ ؾبء غ ػخ أخش فؾذد ا غ ػخ األ ثاع غر 1 ص أمف ثم ١ خ ا ؾم ي زشا ب لذ أم ١ فذ جبؽشح ئ غ ػخ عذ ٠ ذح ثاع غر 2 ال ر غ أ رجم ؽم ال ززجغ جبؽشح ا غ ػخ األخ ١ شح. 84
زأوذ ػذد ا غ ػبد ا ز رى ذ ؾذد ( رج اىث ا اخ ) ا ع د ف ؽبؽخ ا ) Object )Navigator د ػاخ ؾب ذ أ ا غ ػبد ا ز رى ذ ذ ٠ ب ؽب ١ ب غ ػز ١ : ا غ ػخ األ : )سل ا بدح ئع ا بدح سل ا مغ ئع ا مغ ( ا غ ػخ ا ضب ١ خ : )سل ا يب ت ئع ا يب ت(. ى ب الؽظ أ ٠ نب أ : ا غ ػخ األ G_SUB_NO أة غ ػخ ا ضب ١ خ G_STU_NO ثب زب ٠ غت ػ ١ ب رؾذ ٠ ذ ا قذس ا شئ ١ غ )ا غ ػخ ا جبؽشح( ى ئىبس رىشاس خالي ا خبف ١ خ Source ر ه ز مغ ؽم ي ا ج ١ ب بد ػ ١ أل ر ه ف ١ ذ عذا خبفخ ػ ذ ػ ١ بد ئمبفخ ؽم ي عذ ٠ ذح ػ ا زمش ٠ ش ٠ ذ ٠ ب Manually أل اإلىبس ا زىشاس ثب غجخ ؾم ي ا ج ١ ب بد ا ز مؼخ ػ ١ ث ضبثخ اىق اش ح Canvas فال ٠ ى أ ٠ فز ا زمش ٠ ش ػ ذ ب رز مغ ا ؾم ي خبسع. ======================================================================= ========= Formula ئرا أسد ب ف ا زمش ٠ ش ا غبثك أ ظ ش ئع اى غر ثغ اس سل ا غز ع الؽظ أ غ ١ ش ز فش ف عذ ي Subject ال ف عذ ي Stu أ ع د ف عذ ي آخش م ثغ ج عذ ي Lvl ز ه ع ن ١ ف ئع ا غز ثاعزخذا ؽم ف ١ غخ Formula وب زب : أ ال ( م ثزؾذ ٠ ذ ( رج اىث ا اخ ) ا ع د ف ؽبؽخ ا ) )Object Navigator نغو F2 زظ ش بفزح ف ١ ب اإلعزؼال بد ا ع دح زمش ٠ ش )ؽب ١ ب 1_Q( ؽش ٠ و األد اد ا ؼ د ن ١ ف ػ د ط غح ئ داخ ا غ ػخ األ G_SUB_NO ش أ لذ رى ؽش ٠ و ر ش ٠ ش ػ ذ ئمبفز ف م ثز عؼخ ػشك ػ بفش ا غ ػخ ) الؽظ أ ئع ػ د ا ق ١ غخ اإلفزشام )CF_1 ثا ا ( م ثزؾذ ٠ ذ ػ قش ػ د ا ق ١ غخ CF_1 نغو F4 ؼذي خقبئق وب زب : Property Value 85 1 Data Type Char
١ ى ع ا ج ١ ب بد Data Type ا ع ا ؾشف Char ىزت ف خبف ١ خ PL/SQL Formula ا زب : FUNCTION CF_1FORMULA RETURN CHAR IS X Varchar2(50); BEGIN Select Lvl_Name Into X From Lvl Where Lvl_No = :Sub_Lvl ; Return X ; END; ثاىثا ( ؾئ ؽش ٠ و األد اد ا ؼ د ا زبثغ ) رج اى غق )Layout Model ب ٠ : : Field ػ ظش زقو ؼشك ا ج ١ ب بد داخ ص غؼ ف اإلىبس ا زىشاس األة G_SUB_NO ثؼذ فزؼ لف ى س اإلؽز اء ؽش ٠ و األد اد األفم غ بػ ثامبفخ ا ؾم ال غ سثي غ ػ د ف ١ غخ خالي ا خبف ١ خ Source ر ه ثؼذ رؾذ ٠ ذ مغو F4 Property Source Value CF_1 : Display ػ ظش ض ١ مؼ ػ ا ػ د ا ق ١ غخ ١ ى )ئع ا غز (. 86
SQL Query ئرا أسد ب ف ا زمش ٠ ش ا غبثك أ ظ ش ئع اىقغ ثغ اس سل ا مغ ع الؽظ أ غ ١ ش ز فش ف عذ ي Subject ال ف عذ ي Stu أ ع د ف عذ ي آخش م ثغ ج عذ ي Section ز ه ع ن ١ ف ئع ا مغ ثاعزخذا اإلعزؼال SQL Query وب زب : أ ال ( م ثزؾذ ٠ ذ ) رج اىث ا اخ( ا ع د ف ؽبؽخ ا ) )Object Navigator نغو F2 زظ ش بفزح ف ١ ب اإلعزؼال بد ا ع دح زمش ٠ ش )ؽب ١ ب 1_Q( ؽش ٠ و األد اد ا ؼ د ن ١ ف ئعرؼال ١ ؾئ SQL ئعزؼال عذ ٠ ذ (2_Q) زظ ش لج ر ه ؽبؽخ ا ز ٠ ى ه خال ب رؾش ٠ ش ع خ اإلعزؼال جبؽشح ف SQL Query Statement أ ث بء ب عذ ٠ ذ خالي ثش ب ظ ثب اإلعزؼال Query Build SQL أ ئعز ١ شاد ب ف Query Import SQL بن أ ٠ نب صس اإلرقبي ئ رى زقال ثب مبػذح Connect ف ىزت : Select * From Section ; ثا ا ( ؾئ ؽش ٠ و األد اد ا ؼ د ا زبثغ ) رج اى غق )Layout Model ب ٠ : صالس غ ػبد : Field ػ ظش زقو ؼشك ا ج ١ ب بد داخ ص غؼ ف ئىبس ا زىشاس ى أ ٠ ئىبس ا زىشاس ف ذ ٠ ب ا ٢ : ا غ ػخ األ G_SUB_NO أة غ ػخ ا ضب ١ خ )Q_1 ( G_STU_NO ا غ ػخ ا ضب ضخ 2_Q( ) G_SEC_NO ثؾغت ا مبػذح ا ز رم ي أ : ػذد اى د ػاخ = ػذد اإلطاساخ اىرنشاس ح ف ١ غت ػ ١ ب أ ؾئ لج و ؽ ء ب ٠ غ ت)اإلطاس اىرنشاس )Repeating Frame ر ه ؽش ٠ و األد اد ا ؼ د ا زبثغ ) رج اى غق )Layout Model ص مغ ػ قش ؽم Filed داخ ١ ز ئ ١ ال غ سثي غ ئع ا مغ خالي ا خبف ١ خ Source ر ه ثؼذ رؾذ ٠ ذ مغو F4 Property Source Value SEC_NAME : Display ػ ظش ض ١ مؼ ػ ا ػ د ا ق ١ غخ ١ ى )ئع ا مغ (. ثاىثا ( م ثزؾذ ٠ ذ ) رج اىث ا اخ( ا ع د ف ؽبؽخ ا ) Navigator )Object نغو F2 زظ ش بفزح ف ١ ب اإلعزؼال بد ا ع دح زمش ٠ ش )ؽب ١ ب 2_Q 1_Q( & ؽش ٠ و األد اد ا ؼ د ن ١ ف ستط اىث ا اخ Data Link ث ١ سل ا مغ ا غ ػخ ا ضب ضخ )ا ز ١ خ إلعزؼال 2_Q( سل ا مغ ا غ ػخ األ )ا ز ١ خ إلعزؼال 1_Q( خالي ػ ١ خ ا غؾت اإلفالد ثؾ ١ ش ٠ ز ا غؾت أؽذ ا غ ػز ١ اإلفالد ئ ا غ ػخ األخش )تاىطثغ ىسقو سق اىقغ )SEC_NO & SUB_SEC و ر ه أع أ ٠ ز ر ف ١ ز اإلعزؼال ١ ع ٠ خ ال ٠ فز و ئعزؼال فقال ػ اإلعزؼال ا ٢ خش. 87
الؽظ ف رج اىث ا اخ أ لذ أم ١ ف غ ػخ ئعزؼال عذ ٠ ذح ف عضء )اإلعزؼال بد( غ ػخ عذ ٠ ذح ف عضء )ا غ ػبد( ساثو ث ١ ب بد عذ ٠ ذ ف عضء )س اثو ا ج ١ ب بد(. ======================================================================= ========= الزظح ا ح : رفن اإلمبفخ ثاعزخذا ؽم ف ١ غخ Formula رزي ت ئ ؾبء : ئعرؼال SQL ئطاس ذنشاس Repeating Frame ستط اىث ا اخ. Data Link أل ب أعشع ثب ز ف ١ ز أع أع أ ب.1.2.3 Summary ف وض ١ ش األؽ ١ ب ؾزبط ئ ئمبفخ ر اثغ رغ ١ ؼ ١ خ زمش ٠ ش )اى د ع اى ر عط اىسذ أد اىسذ أقظ اىؼذد أ ه أخ ش اإلخ اى % - اإل سشاف اى ؼ اس اىرفا خ( ر ه ثغشك ػ ر خ ١ ر م ١ ؾ ج ١ ب بد ا غغالد خبفخ ػ ذ ب ٠ ى ؽغ ا ج ١ ب بد ف ا زمش ٠ ش وج ١ ش عذا و ضبي ػ ر ه أسد ب ف ا زمش ٠ ش ا غبثك أ ظ ش ػذد اى اد اىر ذ ذذس غ ا فغزى ا خي اد و ب ٠ : أ ال ( م ثزؾذ ٠ ذ ) رج اىث ا اخ( ا ع د ف ؽبؽخ ا ) )Object Navigator نغو F2 زظ ش بفزح ف ١ ب اإلعزؼال بد ا ع دح زمش ٠ ش )ؽب ١ ب 2_Q 1_Q( & ؽش ٠ و األد اد ا ؼ د ن ١ ف ػ د يخض ئ داخ ا غ ػخ األ G_SUB_NO ش أ لذ رى ؽش ٠ و ر ش ٠ ش ػ ذ ئمبفز ف م ثز عؼخ ػشك ػ بفش ا غ ػخ ) الؽظ أ ئع ػ د خ اإلفزشام )CS_1 88
ثا ا ( م ثزؾذ ٠ ذ ػ قش ػ د خ CS_1 نغو F4 ؼذي خقبئق وب زب : Property Value ا ؼذد 1 Function 2 Source Sub_No 3 Reset act Page ١ ى ا زبثغ ا زغ ١ ؼ ا ؼذد ١ ى Counter قذس سل ا بدح Sub_No غؼ ئػبدح رؼ ١١ ػ د خ زا ف و ففؾخ ١ ظ Page و رمش ٠ ش Report )أ ف مو طفسح ر اىرد غ ىيؼذاد ث ف تذا ح اىظفسح اىدذ ذج ر ذظف ش اىؼذاد ى ثذأ اىؼذاد تؼ ي ح اىرد غ خذ ذ مو طفسح ػي زذ ( ثاىثا ( ؾئ ؽش ٠ و األد اد ا ؼ د ا زبثغ ) رج اى غق )Layout Model ب ٠ : : Field ػ ظش زقو ؼشك ا ج ١ ب بد داخ ص غؼ ف اإلىبس ا زىشاس األة G_SUB_NO ثؼذ فزؼ لف ى س اإلؽز اء ؽش ٠ و األد اد األفم غ بػ ثامبفخ ا ؾم ال غ سثي غ ػ د خ خالي ا خبف ١ خ Source ر ه ثؼذ رؾذ ٠ ذ مغو F4 Property Source Value CS_1 : Display ػ ظش ض ١ مؼ ػ ا ػ د ا ق ١ غخ ١ ى )ػذد ا اد(. ======================================================================= ذي ر : ا ى أ ٠ نب ئمبفخ ػ قش ٠ مؼ ػذد ا يالة ا ذاسع ١ ى بدح ث فظ ا يش ٠ مخ. 89
احملاضرة احلادية عشر Menus ا م ائ ا غذ خ ف ثذا ٠ خ رؾغ ١ ا جش ب ظ ا ؼ أ ا م ائ ف Oracle رأخز فب غزمال ثؾ ١ ش غزي ١ غ ئعزذػبء ف ب ا ز ف ١ ز أ ثش ب ظ لذ روش ب عبثمب أ ػ ذ ػ ١ ز : Form Builder ٠ ؾغ ثش ب ظ *.MMB ر ئ زذاد Source ٠ ز ذ ف قذس Save ؽفظ ا م ائ Forms Runtime ٠ ؾغ ثش ب ظ *.MMX ر ئ زذاد Execute ٠ ز ذ ف ر ف ١ ز Compile ا زشع خ ى ظ رىل فسغة تو دة أ ذن اى غخح اىر ف ز ح ر ح ئىMODULE ؼ إلذ ا ػ ي ح اىر ف ز ---------------------------------------------------------------------------------------------------------------------- -------------- م ثزؾذ ٠ ذ ا ) Menus ( ا ع د ف ؽبؽخ ا ) Navigator )Object ص ١ ؾئ Create ب ئع ب ئفزشام ١ ب مبئ خ ا ؾئخ ف ؾذد ب ص مش مشا ضد عب زق ١ ا مبئ خ وب زب : 90
ىزت ف ؾشس ا م ائ ػ ا ا مبئ خ األ ( اىثشا ح( ص ؾئ ا ؼ بفش ا زبثؼخ ز ا مبئ خ خالي ئخز ١ بس األ ش Create Down ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي األ ٠ م خ ا ع دح ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت ( تش ا ح اىؼالقح ) ث فظ ا يش ٠ مخ ؾئ ا ؼ قش ا ضب ىزت )تش ا ح اىقائ ح اى شمثح( فب ؼ قش ا ضب ش ثىزبثخ )تش ا ح اىق اش ح( فب ؼ قش األخ ١ ش )خش ج( م ا ٢ ثب شع ع ئ ا ؼ قش ا شئ ١ ظ مبئ خ األ )ا جشا ظ( ؾذد ب ص ؾئ ا مبئ خ ا غب سح ز ا مبئ خ خالي ئخز ١ بس األ ش Create Right ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي األ ٠ م خ ا ع دح ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت )اىرقاس ش( ص ؾئ ا ؼ بفش ا زبثؼخ ز ا مبئ خ خالي ئخز ١ بس األ ش Create Down ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي ا ضس ا ع د ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت )ذقش ش اىطالب( ث فظ ا يش ٠ مخ ؾئ ا ؼ قش ا ضب ىزت ( ذقش ش األقغا ( ثز ه ى لذ ئ ز ١ ب فمو شؽ خ رق ١ ا مبئ خ الؽظ ف ا (Menus) رى لبئ ز ا جشا ظ ا زمبس ٠ ش ثبإلمبفخ ئ لبئ خ ؽب ٠ خ مبئ ز ١ ا ؾئز ١. زر ا ال ن أ ىذ اى يف اىر ف ز ىؼذ ئزر اء اىقائ ح ػي أ ح شفشج ظذس حCode ======================================================================= ========= Menu Items Property Value 1 Enabled Yes 2 Menu Item Type Plain 3 Magic Item None 4 Menu Item Code More 5 Visible in Menu Yes 6 Visible in Horizontal Menu Toolbar No 7 Visible in Vertical Menu Toolbar No 8 Icon in Menu No 9 Icon Filename ششذ ثغط : ر ز ه خبف ١ خ Menu Item Type خ غخ ل ١ و ل ١ خ ب ظ ١ فخ ؼ ١ خ وب زب : : Plain a. ا خبف ١ خ اإلفزشام ١ خ )ر ف ١ ز ؽفشح قذس ٠ خ Code فمو( : Check b. رظ ش اإلؽبسح ( ) زؼجش ػ اإلخز ١ بس ا زؼذد ر ه ثغب ت ر ف ١ ز ا ؾفشح ا قذس ٠ خ Code : Radio c. رظ ش اإلؽبسح ( ) زؼجش ػ اإلخز ١ بس ا فشد ر ه ثغب ت ر ف ١ ز ا ؾفشح ا قذس ٠ خ Code Code ٠ ذ خو فبف فمو ثذ وزبثخ أ ؽفشح قذس ٠ خ : Separator d. : Magic e. رأر شرجيخ غ ا خبف ١ خ Magic Item زم ثز ف ١ ز ئعزذػبءاد ؼشفخ ف ا غخ غجمب ض Window) (Cut, Copy, Paste, Clear, Undo, Help, About, Quit, ف ١ ذح ػ ذ ب ش ٠ ذ رق ١ ػ بفش مبئ خ ؽج ١ خ ثب. Edit 91
ثب ؼ دح مبئ خ األ ( اىثشا ح( ن ١ ف ف ؾشس ا م ائ ػ قش فبف SEPARATOR_ITEM لج ا ؼ قش األخ ١ ش )خش ج( ثؾ ١ ش غؼ زا ا ؼ قش ٠ ز ه ا م ١ خSeparator ا زبثؼخ خبف ١ خ Menu Item Type. أ ا خقبئ خبف ١ خ Menu Item Code ث ضبثخ ا Trigger ا ز ع ١ ىزت خال ا ؾفشح ا قذس ٠ خ Code ثذ ب ال ٠ ى أ ٠ ز ذ أ ف ر ف ١ ز م ائ ل ؽب ١ ب ثىزبثخ ا زؼ ١ خ Execute_Query; وؾفشح ى ػ بفش ا مبئ خ أل ب ذسط ؽز ا ٢ فمشح ا شثو غ ا برط األخش. Forms ػ ذ ئػيبء ا م ١ خ No خبف ١ خ Visible in Menu فا ا ؼ قش ا ؾذد ا مبئ خ ال ٠ ظ ش ز ا يش ٠ مخ ف ١ ذح ف ؼ ا قالؽ ١ بد غزخذ ١ ؼ ١ ١. ف وض ١ ش األؽ ١ ب ؾزبط ئ ئظ بس األ ٠ م بد ػ ؽش ٠ و األد اد األفم أ ا ؼ د زغش ٠ غ ػ ا جش ب ظ ز لغ اإلعزخذا ثىضشح )أششطح األد اخ اىراتؼح ىيقائ ح ى ظ ىي )Canvas Visible in Horizontal Menu Toolbar ا خبف ١ خ.a Visible in Vertical Menu Toolbar ا خبف ١ خ.b Icon in Yes خبف ١ خ ػ ذ ئػيبئ ب ا م ١ خ ٠ ؼ ال Yes ػ ئظ بس األ ٠ م خ ثب يجغ ثؼذ ئػيبء ا م ١ خ. Menu ثبإل ىب رق ١ أ ٠ م خ خبفخ ثب ؼ قش ا ز ٠ زجغ ا مبئ خ خالي ا خبف ١ خ Icon Filename ر ه ثؼذ ئػيبء ا م ١ خ Yes خبف ١ خ. Icon in Menu ػ ذ رق ١ ثش ب ظ Form Builder أسد ب ئػيبء ا مبئ خ ا ؾئخ ف ١ ى ر ه خالي ؼ ا ف ا ز ف ١ ز مبئ خ وم ١ خ خبف ١ خ Menu Module ا زبثؼخ MODULE وب زب : Property Value Menu Module C:\MAIN_MENU.MMX الؽظ ف ؾشس ا م ائ صس Switch Orientation ا ز ٠ ؼ ػ رؾ ٠ ا ؾئ ثضس ا Create. Create Down ئ Create Right وز ه رؾ ٠ ا ؾئ ثضس ا Create Right ئ Down ئرا ل ذ ثزؼذ ٠ ب ػ ا مبئ خ ف ١ غت أ رؾفظ ر هSave File ا ز ف ١ ز ا غذ ٠ ذ. File Administration Compile File رزشع أع أ ٠ ز ذ ا ف الؽظ ػ ذ ا ز ف ١ ز ع د لبئ خ رغ ) افزج ) Window رأر ئفزشام ١ ب غ ا م ائ ح ا ؾئ. Close_Form('') ; ٠ ى ا زؾى ثاغالق ا رط ا زاوشح خالي رؼ ١ خ ؽ ١ ش ىزت ف ا ؼب ا شع argument ئع ا جش ب ظ جبؽشح ثذ روش ا غبس أل ع د ثب زاوشح. 92
Popup Menus ا م ائ ا ز ر جضك ػ ذ ب م ثب مش ػ صس ا فأسح األ ٠ ر ه ػ ا ىبئ ا ز ف ذ ا مبئ خ ا جضمخ رخز ف ئخزالفب ع ش ٠ ب ػ ا م ائ Menus ف أ ب : Form Builder ال رؾزبط ئ ف غزم إل ؾبئ ب ثب زب رق داخ ثش ب ظ ا a. b. ا زق ١ ف ١ ب ؼى ط فب ضس Create Down ال ٠ ذ ػ قشا شؤ عب ئ ب ٠ ذ ػ قشا ص ١ ال ا ضس Create Right ال ٠ ذ ػ قشا ص ١ ال ئ ب ٠ ذ ػ قشا شؤ عب ا غجت ف ر ه ٠ ؼ د ئ ىج ١ ؼخ ػ ؽى ا م ائ ا جضمخ ف عب ج ١ خ ١ غذ ػ د ٠ خ.. Form Builder ر فز ا مبئ خ ا جضمخ خالي ثش ب ظ ا c. ---------------------------------------------------------------------------------------------------------------------- -------------- م ثزؾذ ٠ ذ ا ) Menus )Popup ا ع د ف ؽبؽخ ا ) Navigator )Object ص ئفزشام ١ ب مبئ خ ا ؾئخ ف ؾذد ب ص مش مشا ضد عب زق ١ ا مبئ خ وب زب : ١ ؾئ Create ب ئع ب ىزت ف ؾشس ا م ائ ػ ا ا مبئ خ األ )اىثشا ح( ص ؾئ ا ؼ بفش ا زبثؼخ ز ا مبئ خ خالي ئخز ١ بس األ ش Create Right ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي األ ٠ م خ ا ع دح ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت ( تش ا ح اىؼالقح ) ث فظ ا يش ٠ مخ ؾئ ا ؼ قش ا ضب ىزت )تش ا ح اىقائ ح اى شمثح( فب ؼ قش ا ضب ش ثىزبثخ )تش ا ح اىق اش ح( 93
فب ؼ قش األخ ١ ش )خش ج( م ا ٢ ثب شع ع ئ ا ؼ قش ا شئ ١ ظ مبئ خ األ )ا جشا ظ( ؾذد ب ص ؾئ ا مبئ خ ا غب سح ز ا مبئ خ خالي ئخز ١ بس األ ش Create Down ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي األ ٠ م خ ا ع دح ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت )اىرقاس ش( ص ؾئ ا ؼ بفش ا زبثؼخ ز ا مبئ خ خالي ئخز ١ بس األ ش Create Right ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي ا ضس األ ٠ م خ ا ع دح ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت )ذقش ش اىطالب( ث فظ ا يش ٠ مخ ؾئ ا ؼ قش ا ضب ىزت )ذقش ش األقغا ( ثز ه ى لذ ئ ز ١ ب فمو شؽ خ رق ١ ا مبئ خ الؽظ ف ا (Menus) رى لبئ ز ا جشا ظ ا زمبس ٠ ش ثبإلمبفخ ئ لبئ خ ؽب ٠ خ مبئ ز ١ ا ؾئز ١. ا ن أ فز اىثش ا ح غ ػذ ئزر اء اىقائ ح ػي أ ح شفشج ظذس حCode ======================================================================= ========= Popup Menu Items فظ ا خقبئ ا ؾش ؽخ ف ا م ائ Menu ظ س ا مبئ خ ا جضمخ ٠ ى خالي ؾ ب خبف ١ خ Popup Menu ا ن خ ف خقبئ )ا ؼ بفش a. Items أ ا م بؽ ١ خ )Canvas ف ضال إلظ بس ا مبئ خ ا ؾب ٠ خ مبئ ز ا جشا ظ ا زمبس ٠ ش ف ػ قش Display Item فا ب غؼ خقبئق وب زب : Property Value 1 Popup Menu SECONDARY_MENU 2 Database Item No ال ر عذ أ ٠ م بر ب ػ أؽشىخ األد اد األفم ١ خ أ ا ؼ د ٠ خ b. Visible in Vertical Menu Visible in Horizontal Menu Toolbar أ ال ر عذ ث ب خقبئ Toolbar ثب يجغ ال ع د ف ا ز ف ١ ز ا غزم أ لبئ خ رغ ا ز ف ١ ز. ( افزج ) Window رأر ئفزشام ١ ب أص بء.c ا ئرا أسد ب ئ ؾبء ػ قش ٠ ا ع Display Item ثؾ ١ ش غؼ أؽذ ب ٠ ظ ش لبئ خ ا جشا ظ ا جضمخ ا ٢ خش ٠ ظ ش لبئ خ ا زمبس ٠ ش ا جضمخ ف ب ػ ١ ب ع أ غؼ خقبئق ب وب زب : Property Value 1 Popup Menu MENU _ا جشا ظ 2 Database Item No Property Value 1 Popup Menu MENU _ا زمبس ٠ ش 2 Database Item No 94
(Report( (Form( (Forms( ػ ذ ا زؾذس ػ ىشق سثو أوضش رط ٠ زجبدس ئ ا ز جبؽشح م ع ا رط األة Parent ا رط اإلث Child فبألة ٠ غزذػ اإلث Calling رؾذ ظ خ ب ٠ ذػ ث اع خ ا غز ذاد ا زؼذدح MDI(Multi Interface) Documents ثب زب فا ىش ٠ مخ ئظ بس رط آخش رط ؽب رخز ف ثش ب ظ ئ آخش ؽغت ىج ١ ؼخ ػ ا جش ب ظ ز ا يشق ب ئخز فذ ف ز ١ غخ نغو ػ صس أ لبئ خ سئ ١ غ ١ خ أ لبئ خ جضمخ ىشق ا شثو و ب ٠ : 1. OPEN_FORM(Form_Name, Active_Mode, Session_Mode, Data_Mode, Paramlist_Name Or Paramlist_Id) ; 2. CALL_FORM(FormModule_Name, Display, Switch_Menu, Query_Mode, Data_Mode, Paramlist_Name Or Paramlist_Id) ; 3. RUN_PRODUCT(Product, Module, Comm_Mode, Exec_Mode, Location, Paramlist_Name Or Paramlist_Id, Display ) ; الزظح ا ح :. ػ ثيش ٠ مخ ا شثوRun_Product ئال ا ) Report ) ال ٠ ى ا شثو ث ١ ا ) Form ) ======================================================================= ========= Open_Form ر ز ه ا arguments ا زب ١ خ :.1 ئع اى رج : Form_name ؽ ١ ش ىزت ب غبس ا جش ب ظ اإلث ا شاد فزؾ.2 ط اىر ش ط : Active_Mode ل ١ ز ١ ئ ب Activate أ أ ثؼذ فزؼ ا رط اإلث ع ١ زم ا إؽش جبؽشح ئ و ز ا رط اإلث ) اإلفزشام ( أ Non_ Activate أ أ ثؼذ فزؼ ا رط اإلث ع ١ جم ا إؽش ف ا رط األة.3 ط اىديغح : Session_Mode ب ل ١ ز ١ ئ ب NO_Session رؼ أ ا رط اإلث ا رط األة ١ غ ا ف ع غخ اؽذح ثب زب ئرا ر ػ رضج ١ ذ أ رشاعغ فا ع ١ ز ؽفظ ا زغ ١١ شاد ا ز ؽذصذ ػ ا رط اإلث فمو ) اإلفزشام ( أ Session رؼ أ ا رط اإلث ا رط األة ف ع غخ اؽذح ثب زب ئرا ر ػ رضج ١ ذ أ رشاعغ فا ع ١ ز ؽفظ ا زغ ١١ شاد ا ز ؽذصذ ػ ا رط اإلث ا رط األة ؼب..4 ط اىث ا اخ : Data_Mode ب ل ١ ز ١ ئ ب No_Share_Library_Data رؼ ػذ ؾبسوخ ا ج ١ ب بد رط األة اإلث ف ىزجخ ث ١ ب بد اؽذح ) اإلفزشام ( أ Share_Library_Data رؼ ؾبسوخ ا ج ١ ب بد رط األة اإلث ف ىزجخ ث ١ ب بد اؽذح. 5. ئع اى ؼا و أ سق اى ؼا و : Paramlist_Name Or Paramlist_Id ا ز ٠ غزخذ ز ش ٠ ش )ئسعبي( زؾ الد ا رط األة ئ ا رط اإلث. 95
Examples : Open_Form('C:\Prog4.Fmx'); Open_Form('C:\Prog4.Fmx',,,, PL_ID); ======================================================================= ========= Call_Form ر ز ه ا arguments ا زب ١ خ :.1 ئع اى رج : FormModule_name و ب ؽشػ عبثمب..2 اىؼشع : Display ل ١ ز ١ ئ ب Hide أ أ ٠ غزذػ ا رط اإلث ٠ خف ا رط األة ) اإلفزشام ( أ No_Hide أ أ ٠ غزذػ ا رط اإلث ٠ غؼ ا رط األة ع دا خ ف ا رط اإلث ى غ ١ ش ؾفض )غ ١ ش ؾو(.3 قائ ح اىرس و : Switch_Menu ب ل ١ ز ١ ئ ب No_Replace رؼ ػذ رجذ ٠ لبئ خ ا رط األة ئ م ب رط اإلث ػ ذ اإلعزذػبء ) اإلفزشام ( أ Do_Replace رؼ رجذ ٠ لبئ خ ا رط اإلث ث ب ذ ٠ ل ائ..4 ط اإلعرؼال : Query_Mode ب ل ١ ز ١ ئ ب NO_Query_Only رؼ فزؼ ا رط اإلث ثغشك ريج ١ ك ا ؼ ١ بد ا خز فخ ئمبفخ رؼذ ٠ ؽزف ئعزفغبس... ئ خ ) اإلفزشام ( أ Query_Only رؼ فزؼ ا رط اإلث ثغشك اإلعزفغبس فمو..5 ط اىث ا اخ : Data_Mode و ب ؽشؽذ عبثمب. 6. ئع اى ؼا و أ سق اى ؼا و : Paramlist_Name Or Paramlist_Id و ب ؽشؽذ عبثمب. Examples : Call_Form('C:\Prog4.Fmx'); Call_Form('C:\Prog4.Fmx', Hide, No_Replace, No_Query_Only); Run_Product ر ز ه ا arguments ا زب ١ خ : ] 1 أ 2 أ [ 3 ث فظ.1 ئع اى رح : Product صالس ل ١ ئ ب ] Forms أ Reports أ [ Graphics أ ثبإل ىب وزبثخ ا م ١ ا ؼب ا غبثمخ 96
: Module.2 ؽ ١ ش ىزت ب غبس ا جش ب ظ اإلث ا شاد فزؾ.3 ط اإلذظاه : Comm_Mode ب ل ١ ز ١ ئ ب Synchronous رؼ ا غ بؽ ١ خ ثب ؼ ػ ا رط األة ثغ اس ا ؼ غ ا رط اإلث أ Asynchronous رؼ ا ؼ غ ا رط اإلث فمو..4 ط اىر ف ز : Exec_Mode ل ١ ز ١ ئ ب Runtime ) رغزخذ غ ) Form Builder & Report Builder & Graphics Builder أ Batch ) رغزخذ غ ) Builder & Graphics Builder فمو..5 اى قغ : Location ل ١ ز ١ ئ ب أ ٠ ى ف ظب File System أ ف خض ػ لبػذح ا ج ١ ب بد. Database 6. ئع اى ؼا و أ سق اى ؼا و : Paramlist_Name Or Paramlist_Id و ب ؽشؽذ عبثمب..7 اىؼشع : Display رغزخذ غ ا شع ا ج ١ ب ر ه إلخز ١ بس ع ا خيو. Graphics Examples : Run_Product(1, 'C:\Prog4.Fmx', Synchronous, Runtime, Filesystem, '', ''); Run_Product(2, 'C:\Rep4.Rep'); ======================================================================= ========= الزظح ا ح : و ب لذ أؽش ب ف فمشح ا م ائ ئ فمشح ا شثو غ ا برط األخشForms أع ب آ زان وزبثخ ا ؾفشح ا قذس ٠ خ Code ؼ بفش ا مبئ خ ب ؾ ا ٢ ثؼذ ئر ب ز ا فمشح ؼب د وزبثخ ا ؾفشح ز ه ا ؼ بفش ثؼذ رؾذ ٠ ذ ا ؼ قش مغو F4 ب خبف ١ خ Menu item Code ىزت و ب مؼ ب ٠ : Open_Form('C:\Prog1.Fmx'); )تش ا ح اىؼالقح( )تش ا ح اىقائ ح اى شمثح( Call_Form('C:\Prog2.Fmx', Hide, No_Replace, Query_Only); )تش ا ح اىق اش ح( Call_Form('C:\Prog3.Fmx', Hide, Do_Replace, No_Query_Only); )ذقاس ش اىطالب( Run_Product(2, 'C:\Rep1.Rep', Synchronous, Runtime, Filesystem, '', ''); 97
)ذقاس ش األقغا ( Run_Product(2, 'C:\Rep2.Rep', Synchronous, Runtime, Filesystem, '', ''); ======================================================================= ========= Parameters أؽ ١ ب ب لج فزؼ ا رط اإلث ش ٠ ذ أ شع عبئو ؼ ١ خ ) زؾ الد( ى زؾى ثيش ٠ مخ ػشم ف ضال لذ ؾزبط ز ه ف ثشا ظ : )ا يالة دسعبر ا ذ ائش ظف ١ ب... ئ خ( أؽج ثجشا ظ ا Relations ؼ ر ه ال ثذ ب أ ال ؼشفخ ا خي اد ا زب ١ خ : ف اى رج األب : Parameter ؼشف ا ؼ ػ رؾ ١ ثب م ١ خ شع ا م ١ خ. ف اى رج اإلت : ؾئ Parameter ز افك غ ا Parameter ا شع ؼ ػ ئعزمجبي ا م ١ خ ا ز ٠ ؾ ب ا Parameter ا شع غزخذ ا م ١ خ..1.2 MARK Form STU Form Parameters Push_Button Forms Parameter 98
ؼ ر ه م ثب خي اد ا زب ١ خ : ف ا رط األة ؼشف ا Parameter ؼ ػ رؾ ١ ثب م ١ خ ئسعب ب ر ه ث اعيخ ؽذس (WHEN_BUTTON_PRESSED) ا زبثغ ضس ا ذسعبد وب زب : Declare.1 PL_ID Paramlist; تؼش ف يتحىل ي ىع انباسايرت Begin PL_ID := Get_Parameter_List('Student_Number'); إحضاس انباسايرت إ وجذ إىل داخم املتحىل If Id_Null(PL_ID) Then فحص املتحىل هم انباسايرت ي شئ أو ال PL_ID := Create_Parameter_List('Student_Number'); إ شاء باسايرت جذ ذ إ مل ك قذ أ شئ ي قبم Else Delete_Parameter(PL_ID,'Student_Number'); حزف انق ت انيت كا انباسايرت حم ال إ اها End If ; Add_Parameter(PL_ID,'Student_Number',Text_Parameter,:Stu.Stu_No); حت م انباسايرت ان ص بانق ت )سقى انطانب ) Run_Product(1,'C:\Mark\Module1.Fmx',Synchronous,Runtime,Filesystem,PL_I D); فتح ان ىرج اإلب يغ إسسال ق ت انباسايرت يؼه End ; 99
2. ف ا رط اإلث م ثزؾذ ٠ ذ ا ) Parameters ( ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create ١ ؾئ ب ئع ب ئفزشام ١ ب ؼب الد ف ؾذد ص نغو F4 غ ١ ش ل ١ خ خبف ١ خ اإلع ا جش غ و ب ٠ : Property Value Name Student_Number ف ؽذس رؾ ١ ا رط (WHEN_NEW_FORM_INSTANCE) ىزت ا زب : Set_Block_Property('MARK',Default_Where,'Mark_Stu:=Parameter.Student_Nu mber'); إ تقاء سجالث جذول انذسجاث ػ ذيا كى سقى انطانب يساو ا نهباسايرت انزي مت إستقبال انق ت املشسهت به Execute_Query; إستخذاو انق ت باإلستؼالو ======================================================================= ========= الزظاخ ا ح : ئرا أسدد رؾ ١ ا م ١ )سل ا مغ سل ا غز سل ا يب ت( ف ب ػ ١ ه ع وزبثخ رؼ ١ خ ا زؾ ١ صالس شاد ٠ م ١ خز فخ شح ثشل ا مغ شح ثشل ا غز شح ثشل ا يب ت. Add_Parameter ٠ عذ ع آخش ا Parameters غ ١ ش ا Parameters) (Text ا Parameters) (Data ٠ غزخذ إلسعبي غ ػخ عغ. Record Group ػ ذ ئسعبي Parameter ثش ب ظ ق ثب Form Builder رش ٠ ذ ئعزمجب ف ثش ب ظ ق ثب Report Builder فا ه عزغزخذ User Parameters إلعزمجبي ا م ١ خ. 100
احملاضرة الثانية عشر ٠ ى ا زؼب غ فبد ا ق سح ثاؽذ ىش ٠ مز ١ : رى ا ق س ع دح ػ فبد ظب System File ز ا يش ٠ مخ ال رؼز ذ ػ لبػذح ا ج ١ ب بد Non_DB رى ا ق س خض خ داخ لبػذح ا ج ١ ب بد Database ز ا يش ٠ مخ رؼز ذ ػ لبػذح ا ج ١ ب بد. DB ) اىطش قح اىثا ح األفؼو أخو ػ ي اخ اإلعر شاد اىرظذ ش األ ح(.1.2 ---------------------------------------------------------------------------------------------------------------------- -------------- System File ن ١ ف ؽبؽخ ا Layout Editor ػ قش ف سح Image Item زى ذ ٠ ا خقبئ ا زب ١ خ : Property Value 1 Name TEST_IMAGE 2 Image Format BMP 3 Image Depth Original 4 Compression Quality Minimum 5 Display Quality High 6 Popup Menu 7 Show Palette Yes 8 Sizing Style Adjust 9 Popup Menu 10 Database Item No Image Depth أف BMP ػ ك ا ق سح Image Format ف سح مي ١ خ ؽ ١ ش زم ر غ ١ ك ا ق سح Display Quality ع دح ا ؼشك Minimum زذ ١ خ Compression Quality ث ١ ب غؼ ع دح ا نغو Original ػب ١ خ High ٠ فن أ ظ ش ػ ػ قش ا ق سح أصساس )رؾذ ٠ ذ ا ق سح رىج ١ ش ب ٠ ذ ا زؾش ٠ ه اإلرغب ( خالي Crop Sizing Style ش ٠ ذ ئلزيبع ؼ ا م ١ خ Yes خبف ١ خ Show Palette أخ ١ شا خزبس د ٠ ا ؾغ 101
ثؾ ١ ش ئرا وب ؽغ ا ق سح وج ١ ش ٠ م ثامبفخ ؽش ٠ و ر ش ٠ ش شؤ ٠ خ ا ق سح أ ش ٠ ذ ائ خ ا ق سح ػ ؽغ اإلىبس ا ز ٠ ؾز ٠ ب. Adjust ثؾ ١ ش ٠ ائ ثؼذ ر ه ؾذد ا ؾذس ا بعت مشاءح ا ق سح ١ ى ػ ذ مش ػ قش ا ق سح ىزت ا ؾفشح ا قذس ٠ خ ا زب ١ خ : (Trigger : WHEN_IMAGE_PRESSED) Declare FileName Varchar2(50); تؼش ف يتحىل ي ىع حمشيف ن خض يساس انصىسة Begin FileName := 'C:\Img_Stu\Amerah.Bmp' ; إس اد يهف صىسة قط ت إىل املتحىل Read_Image_File(FileName,'Bmp','Test_Image') ; قشاءة يهف انصىسة ورنك ي املتحىل بإيتذاد قط إىل داخم انؼ صش انزي تؼشض به انصىسة ى ب الؽظ أ ا ق سح أفجؾذ ط سج ثاترح غ ١ غ ا يالة ) ضبي ريج ١ م ( End; ز ه م ثزؼذ ٠ ل ١ خ ا زؾ ي وب زب : FileName := Get_File_Name ; اتج إستذػاء دانت جهب املهف )يؼاجل انفتح( خيض إىل املتحىل FileName := Get_File_Name('C:\Img_Stu\', 'Amerah.Bmp','Bitmap Files(*.Bmp) *.Bmp '); إستذػاء دانت جهب املهف يغ ي حها يساس إفرتاض وق ت إبتذائ ت و ىع يهفاث صىسة قط ت FileName := Get_File_Name('C:\Img_Stu\', 'Amerah.Bmp','Bitmap Files(*.Bmp) *.Bmp ', 'Jpg Files(*.Jpg) *.Jpg ','Gif Files(*.Gif) *.Gif ','All Files(*.*) *.* '); : 'Bitmap Files(*.Bmp) *.Bmp ' الزظ ارا ذؼ اىرؼي ح اى فيرشج 102
فى خ Bitmap Files ػجبسح ر م ١ ؾ ١ خ ئخز ١ بس ا جش ظ ا ( Bmp.*) ا م ١ خ ا ز عزؼشك داخItem List ا خبؿ ثأ اع ا فبد ا ( Bmp.* ) ا م ١ خ اإلثزذائ ١ خ ف لظ ثم ١ خ ا زؼ ١ بد ػ غشاس ب. اىرؼي ح Get_File_Name ذ ريل اى arguments اىراى ح ئع ا غ ذ Directory_File.6 ئع ا ف اإلثزذائ File_Name 7. رؼ ١ خ ف زشح ا فبد ا ؼش مخ Filter 8. سعب خ ر م ١ ؾ ١ خ Message.9.10 ع ا ؼب ظ OPEN أ. SAVE AS ١ ى ذ ٠ ب ا ٢ صس م خال ثاعزؼشاك فبد ا ق س ص ؽفظ ب ذ ٠ ب ف ا جش ب ظ وب زب : (Trigger : WHEN_BUTTON_PRESSED) Declare FileName Varchar2(50); Begin FileName := Get_File_Name('C:\Img_Stu\', 'Amerah.Bmp','Bitmap Files(*.Bmp) *.Bmp ', Save_File); اتج إستذػاء دانت جهب املهف خيض إىل املتحىل بؼذ فتح يؼاجل احلفظ بإسى Write_Image_File(FileName,'Bmp','Test_Image') ; كتابت يهف انصىسة ورنك ي املتحىل بإيتذاد قط ي داخم انؼ صش انزي تؼشض به انصىسة End; ى األفن أ ال ؼي غزخذ فشفخ ا ؾفظ ف غ ذاد أخش ز ه م ثزؼذ ٠ ل ١ خ ا زؾ ي ١ ى ا فزشك ا م ١ ب ثغؾت ا ق س ئ غ ذ م ثا ؾبء ١ زؼب ؼ ثش ب غ ب غ ا ق س ثاع فش ٠ ذ ٠ فن أ ٠ ى Primary Key وب زب : 103
FileName := Get_File_Name('C:\Img\' :Stu_Sec :Stu_Lvl :Stu_No '.Bmp'); األفن را ران أ غ ؽذس مش ا ق سح غؼ ػ ذ ا ذخ ي ػ عغ عذ ٠ ذ وب زب : (Trigger : WHEN_NEW_RECORD_INSTANCE) Declare FileName Varchar2(50); Begin FileName := Get_File_Name('C:\Img\' :Stu_Sec :Stu_Lvl :Stu_No '.Bmp') ; Read_Image_File(FileName,'Bmp',' Test_Image ') ; ز ا ؾفشح ا قذس ٠ خ ا ؼز ذح ػ ذ ا زؼب غ ا ق س ث اعيخ فبد ا ظبFile. System End ; ---------------------------------------------------------------------------------------------------------------------- -------------- Database 1. ؼ ر ه ال ثذ ئمبفخ زا ا ؾم ثأ ش SQL وب زب : SQL> alter Table Stu Add(Stu_Img Long Row); )ئرا ل ذ ثا ؾبء ا ؾم ثؼذ ع ت ا ج ١ ب بد ئ ا Form فم ثزؾذ ٠ ذ ا (STU) Data Block ص ئ مش ػ صس ا فأسح األ ٠ زخزبس Data Block Wizard ا زج ٠ ت Table ص ئمغو ا ضس Refresh ثؼذ ب ل ثغ ت ا ؼ قش STU_IMG ص ئمغو ا ح(.2 ئ ؼ ا خقبئ ا ز ر روش ب عبثمب ؼ قش ا ق سح STU_IMG ى الؽظ أ ب ب ؼز ذح ػ لبػذح ا ج ١ ب بد Property Value.3 Database Item Yes م ثىزبثخ ا ؾفشح ا قذس ٠ خ ف ؽذس )ا ذخ ي ػ ػ قش عذ ٠ ذ( ا زبثغ ؾم STU_IMG وب زب : (Trigger : WHEN_NEW_ITEM_INATANCE).4 Declare FileName Varchar2(50); 104
Begin FileName := Get_File_Name('C:\Img\' :Stu_Sec :Stu_Lvl :Stu_No '.Bmp') ; Read_Image_File(FileName,'Bmp',' Stu.Stu_Img ') ; End ; ٠ ى ا زؼب غ فبد ا ق د ثاؽذ ىش ٠ مز ١ : ٠ ى ا ق د ع د ػ فبد ظبFile System ز ا يش ٠ مخ ال رؼز ذ ػ لبػذح ا ج ١ ب بدNon_DB رى ا ق د خض داخ لبػذح ا ج ١ ب بد Database ز ا يش ٠ مخ رؼز ذ ػ لبػذح ا ج ١ ب بد. DB ) اىطش قح اىثا ح األفؼو أخو ػ ي اخ اإلعر شاد اىرظذ ش األ ح(.1.2 ---------------------------------------------------------------------------------------------------------------------- -------------- System File ن ١ ف ؽبؽخ ا Layout Editor ػ قش ف د Sound Item زى ذ ٠ ا خقبئ ا زب ١ خ : Property Value 1 Sound Format WAV 2 Audio Channels Automatic 3 Compress Automatic 4 Sound Quality Automatic 5 Popup Menu 6 Database Item No 7 Show Play Button Yes 8 Show Record Button No 9 Show Rewind Button No 10 Show Fast Forward No 11 Show Volume Control Yes 12 Show Time Indicator Yes 105
13 Show Slider Yes ؽ ١ ش زم ر غ ١ ك ا ق د Sound Format ث WAV ل اد ا ق د Audio Channels ثبألر بر ١ ى ١ خ Automatic ث ١ ب غؼ ا نغو Compress أر بر ١ ى Automatic ع دح ا ق د Sound Quality أر بر ١ ى ١ خ Automatic ٠ فن أ ظ ش ػ ػ قش ا ق د أصساس )ثذا ٠ خ رؾغ ١ ا زغغ ١ ا زؾى ثؾغ ا ق د... ئ خ( خالي ؼ ا م ١ خ Yes خقبئ ( Button Show Time Show Volume Control Show Play. )Show Slider Indicator ص ؾذد ا ؾذس ا بعت مشاءح ا ق د ١ ى ػ ذ ا ذخ ي ػ عغ عذ ٠ ذ ىزت ا ؾفشح ا قذس ٠ خ ا زب ١ خ : (Trigger : WHEN_NEW_RECORD_INSTANCE) Declare FileName Varchar2(50); Begin FileName := Get_File_Name('C:\Snd\' :Stu_Sec :Stu_Lvl :Stu_No '.Wav') ; Read_Sound_File(FileName,'Wav',' Test_Sound ') ; End ; ---------------------------------------------------------------------------------------------------------------------- -------------- Database 1. ؼ ر ه ال ثذ ئمبفخ زا ا ؾم ثأ ش SQL وب زب : SQL> alter Table Stu Add(Stu_Snd Long Row); )ئرا ل ذ ثا ؾبء ا ؾم ثؼذ ع ت ا ج ١ ب بد ئ ا Form فم ثزؾذ ٠ ذ ا (STU) Data Block ص ئ مش ػ صس ا فأسح األ ٠ زخزبس Data Block Wizard ا زج ٠ ت Table ص ئمغو ا ضس Refresh ثؼذ ب ل ثغ ت ا ؼ قش STU_SND ص ئمغو ا ح(.2 ئ ؼ ا خقبئ ا ز ر روش ب عبثمب ؼ قش ا ق د STU_SND ى الؽظ أ ب ب ؼز ذح ػ لبػذح ا ج ١ ب بد Property Value.3 Database Item Yes 106
م ثىزبثخ ا ؾفشح ا قذس ٠ خ ف ؽذس )ا ذخ ي ػ ػ قش عذ ٠ ذ( ا زبثغ ؾم STU_SND وب زب : (Trigger : WHEN_NEW_ITEM_INATANCE).4 Declare FileName Varchar2(50); Begin FileName := Get_File_Name('C:\Snd\' :Stu_Sec :Stu_Lvl :Stu_No '.Wav') ; Read_Sound_File(FileName,'Wav', ' Stu.Stu_Snd ') ; End ; 107
م ثزؾذ ٠ ذ ا ) Menus )Popup ا ع د ف ؽبؽخ ا ) Navigator )Object ص Create ؾئ لبئ خ جضمخ ثضس ا فأسح األ ٠ ؽ ١ ش ىزت ف ؾشس ا م ائ ػ ا ا مبئ خ )ذسد اىظ سج( ص ؾئ ا ؼ بفش ا زبثؼخ ز ا مبئ خ خالي ئخز ١ بس األ ش Create Right ا مبئ خ Menu ا ع دح ف بفزح ؾشس ا م ائ أ خالي األ ٠ م خ ا ع دح ف ؽش ٠ و األد اد األفم ف بفزح ؾشس ا م ائ ىزت ( ذنث ش ) ث فظ ا يش ٠ مخ ؾئ ا ؼ قش ا ضب ىزت )ذظغ ش( فب ؼ قش ا ضب ش ثىزبثخ ) ائ ح( خالي خبف ١ خ Menu Item Code ا زبثؼخ ى ػ قش ف ا مبئ خ ىزت ا ؾفشح ا قذس ٠ خ وب زب : (ذنث ش : (Item Image_Zoom('Stu_Img', Zoom_In_Factor, 3) ; تكبري مبقذاس ثالث يشاث (ذظغ ش : (Item Image_Zoom('Stu_Img', Zoom_Out_Factor, 2) ; تصغري مبقذاس يشتني ( ائ ح : (Item Image_Zoom('Stu_Img', Adjust_To_Ft) ; ؾذد ظ س ز ا مبئ خ ا جضمخ ػ ػ قش ف سح ا يب ت Stu_Img وب زب : Property Popup Menu Value رؾغ ١ ا ق سحMENU _ الزظاخ ا ح : Long Row ال ٠ ى أ ٠ ؾز ا غذ ي ػ أوضش ؽم ا ع ا فشق ا غ ش ث ١ ا زؼب )ث اعيخ فبد ا ظب أ ث اعيخ لبػذح ا ج ١ ب بد( أ : فبد ا ظب ػ ذ ا خش ط ا جش ب ظ )ئ بء ا جش ب ظ( ريب ت ا غزخذ ثب ؾفظ زإصش ػ لبػذح ا ج ١ ب بد. Database 108