6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder...

115
ديفلوبر أوراكل ضرات ا 6i 1 ن الرحيم الرحم بسم ا/ [email protected]

Transcript of 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder...

Page 1: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

1

بسم اهلل الرحمن الرحيم

/

[email protected]

Page 2: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

2

Developer 6iفهرس حماضرات

1

يـمـذيـت عـ(SQL , PL/SQL) ........................................................... 1

انــسـتـخـذيـى وانـصـالحـيـاث وعـاللـتـهــا بانـ(Role) .............................. 1

إـشـاء يـسـتـخـذو خـذيـذ ويــحـه انـصـالحـيـاث ..........................................2

إـشـاء انـدـذاول وانـمـيـىد انـتـابـعـت نـهـا ....................................................3

2

تـشـغـيـمForm Builder ......................................................................4

انـشـاشـاث انـشئـيـسـيـت نهـ(From Builder) .............................................. 7

ـبـزة يـبـسـطـت عـ يـحـتـىيـاثObject Navigator ................................. 7

انـحـفـظ وانـتــفـيـز فـي بـشايـحDeveloper 6i ..................................... 8

3

يـ خـصـائـصMODULE ................................................................ 9

األحـذاثTriggers ............................................................................. 10

انـشسـائـم(Message & Alert) ...........................................................10

كـتـم انـبـيـاـاثData Blocks .............................................................. 12

انـخـصـائـص انــشئـيـتVisual Attribute .............................................. 13

انـعــاصـش Items(Input & Non_Input) ............................................. 13

4

انـتـحـكـى بـانـخـصـائـص بـشيـدـيـا(Window & Block & Item) ..............15

انــتـحـىالث انـعـايـت وانــتـحـىالث انــحـهـيـت ..........................................16

انـتـحـكـى بـانـخـصـائـص بـشيـدـيـا عـ طـشيـك انــتـحـىالث انـعـايـت ...............16

5 - 6

انـعـاللـاثRelations ......................................................................... 18

انـحـمـىل انحـسـابـيـت(Formula & Summary)....................................... 20

سبـط انـدـذاول ....................................................................................22

انـىحـذاث انـبـشيـدـيـتProgram Units(Procedure & Function)............ 23

Page 3: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

3

7 عـصـشList Item(Static & Dynamic) .............................................

25

انـمـائـت انــشكـبـتLOVs(Static & Dynamic _ Manually & Wizrad) 27

8

عـصـش اإلخـتـيـاس انـفـشيـذRadio Group(Radio Buttons) ......................32

عــصـش اإلخـتـيـاس انــتـعـذدCheck Box ..............................................33

أـىاع انـمــاشـيـتCanvases ................................................................ (Content & Stacked & Tab & Vertical _ Horizontal Toolbar)

34

9

تـشـغـيـمReport Builder ..................................................................37

انـشـاشـاث انـشئـيـسـيـت نهـ(Report Builder) ............................................ 40

ـبـزة يـبـسـطـت عـ يـحـتـىيـاثObject Navigator ................................. 40

ــىرج انـبـيـاـاثData Model(System Parameters & User Parameters) 41

ــىرج انــسـكLayout Editor(Header & Body & Footer).................. 44

10

انــدـايـيـعGroups............................................................................ 45

اإلضـافـت بـإسـتـخـذاو( حـمـم صـيـغـتFormula ........................................ ) 46

اإلضـافـت بـإسـتـخـذاو(سـتـعالو اإلSQL Query........................................ ) 47

حـمـىل انـتـدــيـعSummary............................................................... 48

11

انـمـىائـىMenu .................................................................................. 49

انـمـىائـى انـــبـثـمـت بـزس انـفـأسة األيــPopup Menu .............................. 51

طـشق انـشبـط بـيـ أكـثـش يـ((Formsأو بـيـ انـ ((Formوانـ ((Report ....... 52

انـعـايـالثParameters ..................................................................... 53

12

انـتـعـايـم يـع يـهـفـاث انـصـىسة ..............................................................55

انـتـعـايـم يـع يـهـفـاث انـصـىث ..............................................................57

اإلسـتـيـشاد وانتـصـذيـش .........................................................................58

..................................................................................... SQLيـهـحـك انـصـيـغ انـعـايـت نـدــم

Page 4: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

4

احملاضرة األوىل

،Developer 6i اىثح األعاعح ىثشاح PL/SQL (SQL ,)ذؼرثش اىـ

ىغح ؼاىسح اىثااخDML : از رزؼب غ ؾز٠بد اغذاي زه ٠ى ازشاعغ ػب ثؼذ رف١ز رؼ١برب ألب ال رزؼب غ

ا١ى فغ ،

، ( ؾزفبdelete- زؼذ٠ب update- إلدخبب insert- إلعزؼشاك اج١ببد select)رؾ ازؼ١بد

ىغح ذؼشف اىثااخDDL :

زه ال ٠ى ازشاعغ ثؼذ رف١ز رؼ١برب ، (Database)از رزؼب غ ث١خ اـ

، ( ؾزف اىبئ بئ١بdrop- زؼذ٠ اففبد اىبئ alter- إلؾبء اىبئ create)رؾ ازؼ١بد

ىغح اىرسن تاىثااخDCL : . ( غؾت اقالؽ١خrevoke- ؼ اقالؽ١خ grant)رؾ ازؼ١بد

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

Page 5: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

5

ػ ئفزشاك أ أسثؼخ ؾبعج١ ٠ؼ ف غب ثؾجىخ ػ ؽذح فا األفن ػذ ئػيبئ

ؽ١ذ وخ اشس ازبثؼخ ره ثغشك ؼشفخ األخيبء ئسرىجذ اغئي Userع١ؼب ئع

وخ شس خبفخ ث أؾ وزه اقالؽ١بد رارب ، Userاجبؽش ػب زه ؾذد ى ؽخـ ئع

اؽذح م ثاؾبئب ٠فش ػ١ب اىض١ش اغذ (Role)زه غذ أ رغ١غ فالؽ١بد اغزخذ١ داخ

... الذ االص١ ػذ رىشاس فظ اؼ

عذي أسدب ؼ و عذي 20فؼ افزشاك أ ٠عذ ذ٠ب

فالؽ١خ اؾزف - updateفالؽ١خ ازؼذ٠ - insertفالؽ١خ اإلدخبي - selectفالؽ١خ اإلعزؼشاك )

delete) 320 غزخذ ااؽذ ، أ طالزح80= خذه 20* طالزاخ ٠4ؼ أب عؾزبط ئ ؼ

.... غزخذ١ األسثؼخ ،طالزح

اؽذح فاب عؾزبط فمو ئ ؼ (Role)ػ اغذاي داخ ( اىظالزح80)ى ئرا لب ثزغ١غ ز اـ

( Role)ؼ فالؽ١خ اـ) فالؽ١بد غزخذ١ 4 ص (Role) فالؽ١خ ئ داخ 80ثالغ طالزح 84

. ، ازفبف١ فغب ريجك ػذ ػ١خ عؾت اقالؽ١بد (ى غزخذ

=======================================================================

=========

PL / SQLؽى اجشبظ ف١ب وبزب :

Declare

اضاثذ الؽظ ب ػذ اعزخذاب Cursor ف زا اغضء ٠ز اإلػال ػ ازؾالد اإؽشاد

أل ىج١ؼخ ػ اإؽشاد ٠ؼزذ ػ into ػ ؼب اإلعبد ز ال رؾزSelectإؽشاد أ عخ

. ص ؼبغزب ػ عغ عغ (ثذ رضا)ئؽنبس ع١غ اغغالد دفؼخ اؽذح

Begin

ػ ز رؾزSelectالؽظ ب أ عخ (SQL, PL/SQL)ف زا اغضء ٠ز وزبثخ اجشبظ ثأاش اـ

. إلسعبع عغ ؽ١ذ Where ٠ؾزشه ف١ب وزبثخ ؽشه اشثو ث١ اغذاي intoؼب اإلعبد

Exception

ف زا اغضء رز ؼبغخ األخيبء ازلغ ؽذصب أصبء رف١ز اجشبظ ره األخيبء از ال رىزؾف

: (االعزضبءاد) ز األخيبء ( ١Syntaxغذ أخيبء ف١غخ ) Compileأصبء ازشعخ

no_data_found : اإلعزؼال أ ث١ببد ؽغت اؾشه ،درغزخذ ػذب ال ٠ؼ too_many_rows : ، رغزخذ ػذب ٠ؼ١ذ اإلعزؼال أوضش عغ ؽغت اؾشه zero_devided : ، رغزخذ ػذب رز امغخ ػ ففش cursor_already_open : ، رغزخذ ػذب ٠ى اإؽش فزؽب شح أخش د ئغالل others : ( افزشك وزبثزب دائب)رغزخذ أع أال ٠ز ئ٠مبف اجشبظ أل خيأ وب . End ;

Start Programs Oracle - oracle

Application Development SQL Plus

Page 6: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

6

ؽغت اخياد اغبثمخ الؽظ ظس ؽبؽخ ريبت SQL Plusؼ ره م أال ثبذخي ئ ثشبظ

ميح SYSTEMزاىا نرة ئع اىغرخذ )ثادخبي ئع غزخذ وخ اشس اخبفخ ث ،

( MANAGERاىشس

م ثىزبثخ زا األش أب ؾشSQL زأوذ اغزخذ اؾب ذ٠ش اظب SYSTEM SQL> show user ;

user is "SYSTEM"

م ثاؾبء غزخذ عذ٠ذ اعUST وخ اغش TAIZ SQL> create user ust identified by taiz ;

User created.

ؼ اـ(Role [connect , resource]) غزخذ UST SQL> grant connect , resource to ust ;

Grant succeeded.

ؼ اـ(Role [exp_full_database , imp_full_database]) غزخذ UST 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"

Page 7: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

7

م ثاؾبء اغذاي ازب١خ غزخذ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_Name varchar2(50)

(Not Null)

Stu_Sec number(2)

(F.K)

Stu_Lvl number(1)

(F.K)

Stu_Add varchar2(50)

Stu_BrthDt date

Stu_Avg number(5,2)

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_Lvl number(1)

(F.K)

Mark_Stu number(3)

(F.K)

Mark_Sub number(3)

(F.K)

Mark_Yj number(5,2)

(Check 0 .. 20)

Mark_Ht number(5,2)

(Check 0 .. 20)

Mark_Ft

number(5,2)

(Check 0 .. 60)

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.

Page 8: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

8

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.

Page 9: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

9

=======================================================================

=========

الزظاخ اح :

a. ػذ ئؾبء أ غزخذ عذ٠ذ فا ره ٠ى داخ اغزخذSYSTEM ره أل لبدس ػ .از ٠زىب (Role [DBA])اإلؾبء خالي فالؽ١خ اـ

b. زى ئرب ػ١خ اإلرقبي ثبغزخذUST ثغبػ ٠غت ؾ فالؽ١خ ئؾبء اغغخ

Create Sessionخالي اـ (Role [connect]) أل ز اقالؽ١خ نخ ف١ب . c. ػذ ئؾبء اغذاي فاب م ثبإلرقبي ثبغزخذUST ره أع أ رى اغذاي اؾئخ

. ربثؼخ

Page 10: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

10

احملاضرة الثانية

Developer 6i : ااعخ از رىب ػ ثشاظ ٠زخبىت ثب

غ لبػذح اج١ببد ٠ؾز اؼذ٠ذ (User)اـ

:اغبػذح ف أساو ض (األداد)اجشاظ

Form Builder – Report Builder – Graphics Builder

. ئخ ...

=====================================

=========

Form Builder : ( User)أداح رغزخذ جبء ابرط از ٠غزخذب اـ

. ثى ػبفشب

==============================================

Form Builder Start Programs Oracle Forms 6i-orantf Form Builder

فبزق١ فزظش أال ؽبؽخ رشؽ١ج١خ ٠ى خالب رؾذ٠ذ ب ئرا وب اية اجذء ثبزق١ أ ثبزؼ١ ،

:أسثغ خ١بساد

ئعزخذا ؼبظ وزخ اج١ببدData Block ،

، ثبء رط عذ٠ذ ٠ذ٠ب ، فزؼ رط عد غجمب ثبء رط ٠ؼزذ ػ لبت .

:زؼ١ خ١بسا ب

(فب١)ػشك اغخ اغش٠ؼخ ، (ب)ئعزىؾبف وشد از١ؾبد

.

زاىا عخراس اىثذء تاىرظ )

Dataتاعرخذا ؼاىح مريح اىثااخ

Block ث ؼغط OK )

زظش ثؼذ ره ؽبؽخ رشؽ١ج١خ خبفخ ثؼبظ

(فؼغط اىراى) Data Blockوزخ اج١ببد

: ص رظش ؽبؽخ رؾذ٠ذ ع وزخ اج١ببد

، عذي أ ؾذ

Page 11: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

11

ئعشاء خض. زاىا عخراس خذه أ شذ ث )

(ؼغط اىراى

ثؼذ ره ٠يت ئع اغذي أ اؾذ

Dataاز عزإخز وزخ اج١ببد

Block ،

ؼ ره الثذ اإلسرجبه أال ثمبػذح

رىل تاىؼغط ػي اىضس اج١ببد

Browse…

( Password)اـ (User)وزبثخ ئع اـ

ث اىؼغط ػي اىضس ثؾى فؾ١ؼ

connect

:فزؾذ٠ذ ىش٠مخ اؼشك

عزى ب ٠زؼك از ر )ثبغزخذ اؾب

أ (اإلسرجبه خالغزخذ١ آخش٠ أ ى١ب ،

رؾذ٠ذ ب ش٠ذ رن١ اغذاي اؾبذ اشادفبد ،

فاخز١بس اغذي أ اؾذ أ

.اشادف اية ، TAIZ ميح اىغش USTزاىا عخراس ئع اىغرخذ )

( STU خذاه زا اىغرخذ اىساى خراس اىدذه

فخزبس ب اؾمي (List)ثبزب رظش اؾمي ف اـ

( ث ؼغط اىراى<<زاىا عخراس ) >> ، > ، << ، <اية ازؼب ؼب ثاعيخ األصساس

Page 12: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

12

زؼ congratulationsرظش ؽبؽخ ازب ازجش٠ىبد

ثغبػ ، لج أ Data Blockػ ئرب ؼبظ وزخ اج١ببد

:اخ١بس٠ ازب١١ ش عد Finishنغو

ئؾبء وزخ اج١ببدData Block ثؼذ اإلرقبي ، (Layoutاخيو )ثؼبظ ازق١

ئؾبء وزخ اج١ببد فمو .زاىا عخراس ئشاء مريح اىثااخ تؼذ اإلذظاه )

( ث ؼغط احLayoutتؼاىح اىرظ

زظش ثؼذ ره ؽبؽخ رشؽ١ج١خ خبفخ ثؼبظ ازق١

اخيو )

Layout )

فؼغط )

(اىراى

فزظش ؽبؽخ

)رؾذ٠ذ ع اـ

اسلخ أ

امبػ

Canvas) بن

خغخ أاع

:

( ]اؾبمشح اضبخ[عذسعب الؽمب ثبزفق١ )

Content Stacked Vertical Toolbar Horizontal Toolbar

Tab ( ث ؼغط اىراىContentزاىا دؼيا ػي اىع اإلفرشاػ )

فخزبس ب اؾمي اية ئظبسب ف ارط (List)ف اؾبؽخ ازب١خ ب رظش اؾمي ف اـ

فؼو ) >> ، > ، << ، <ثاعيخ األصساس

ا ئخراس خغ اىسقه ئرا أسدخ

فا تؼذ ئخفاء أزذ ز اىسقه فر

Noرىل ػ طشق ئػطاء اىقح

اىراتؼح ى ث Visibleىخاطح اىشؤح

(ؼغط اىراى

Page 13: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

13

٠ىب ف ز اؾبؽخ رغ١١ش اؼب٠

وزه Promptاظبشح ألعبء اؾمي

(ث ؼغط اىراى) H ىب Wػشمب

رظش ؽبؽخ رؾذ٠ذ ىش٠مخ ػشك وزخ

: عزى اج١ببد

Form : ػذب ش٠ذ أ ٠ؾزارط ػ ػذد اىبئبد ض

Text ، Display item ، List item ، Image item ، Radio Group ، ...

ئخ

Tabular : ػذب ش٠ذ أ رظش .اج١ببد ػ ؽى عغالد

ث ؼغط Tabularزاىا عخراس )

(اىراى

:ؾذد ف ز اؾبؽخ

ئع ـ(Frame) ،

(1اإلفزشام )ػذد اغغالد اظبشح ، اغبفخ ث١ اغغالد مذسح ثبج١ىغPixcel ( 0اإلفزشام. )

ماع ىإلطاس ، Studentsزاىا عق تنراتح ) ش٠ذ ػشك ؽش٠و ازش٠ش ثغاس اج١ببد أ ال ؟

تنغو ، ذشط ( 2 )، ذسذذ اىغافح ت اىغدالخ تـ ( 5 )ذسذذ ػذد عدالخ ظاشج تـ

ػشع ششط اىرشش ، ث ؼغط

(اىراى

ثؼذب رظش ؽبؽخ ازب ازجش٠ىبد

congratulations زؼ ػ ئرب ؼبظ

فؼغط )ثغبػ ، (اخيو)ازق١

(اح

Formتزىل ن قذ قا ترشغو

Builder.

Page 14: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

14

Form

Builder1. Object Navigator:

وزه اىبئبد ٠Formؾز ػبفش ارط وبخ

Objects اى اؾقي ػ ز اؾبؽخ ،

خزبس Toolsأ امبئخ F3خالي انغو ػ اضس

. Object Navigatorاألش

2. Layout Editor: اؼبفش ازمؼخ ٠Canvasؾز اسلخ أ امبػ

ػ١ ، اى اؾقي ػ ز اؾبؽخ

خزبس Tools أ امبئخ F2خالي انغو ػ اضس

.Layout Editorاألش

3. Property Palette: ، اى اؾقي ػ ز اؾبؽخ خالي انغو Objectsرؾز خقبئـ اؼبفش اىبئبد

. Property Palette خزبس األش Tools أ امبئخ F4ػ اضس

=======================================================================

=========

Object

Navigator

Forms

اإلفزشام ٠أخز ئع ((Formئع اـ : ] MODULE1زاىا [ .1اجشبظ دب ،

2. Triggers: ػجبسح ػ (, PL/SQL (SQL ٠فز ػذ ؽذس ؼ١ ،

3. Alerts: ، ػجبسح ػ اشعبئ 4. Attached Libraries: ػجبسح ػ ىزجبد PL/SQL ، 5. Data block: رؾز اىز از ئب أ رى DB

أ لذ رى (Database)از رؼزذ ػ عذاي أ ؾبذ اـ

NonDBوز ازؾى از ال رؼزذ ػ اـ (Database) ،6. Canvases: اسلخ از رشع ػ١ب ) أ امبؽ١خ اخف١خ

، (اؼبفش7. Editor: ٠ىه خال ئخز١بس ؾشس اقؿ از رش٠ذ

ئعزخذا ،

8. LOVs: ػجبسح ػ لبئخ شوجخ رم١ ؽم ؼ١ ، (Database)اـ

9. Object Groups: ػجبسح ػ رغ١غ ىبئبد ف غػخ اؽذح زغت ثزه ازىشاس أصبء اؼ خبفخ ف ػ١بد اغخ

اقك ، 10. Parameters: عذا ػذ ئسعبي ل١ غ ( ارطForm) ئ

رط آخش ، 11. Popup Menus: ، خقـ مائ اجضمخ ثضس افأسح األ٠

12. Programs Units: ئب أ رى Procedure أ Function أ Package ، 13. Property Classes: ، ػجبسح ػ رغ١غ خقبئـ ف غػخ اؽذح

Page 15: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

15

14. Record Groups: ؾزبط إلعزخذاب غ LOVs ، 15. Reports: ، إلؾبء ازمبس٠ش 16. Visual Attributes: ، ٠غزخذ إلؾبء غػخ خقبئـ شئ١خ 17. Windows: ، ٠غزخذ زؾى ثبافز

Menus (ؽ١ش رخض ف ف غزم) ؾزبعب ػذ ازؼب غ امائ ،

PL/SQL Libraries ػجبسح ػ ىزجبد PL/SQL ،

Object Libraries ػجبسح ػ ىزجبد رزجغ اىبئبد اعدح ف Oracle ،

Built–in Packagesػجبسح ػ اؾض اذغخ غ اـ (Oracle) ،

Database Objects ؽ١ش رم ثؼشك ع١غ غزخذ لبػذح اج١ببد

Developer 6i

Forms اىارجSave اؾفظ Source قذس*.FMB Form Builder

Compile ازشعخExecute رف١ز*.FMX Forms Runtime

Menu اىقائSave اؾفظ Source قذس*.MMB Form Builder

Compile ازشعخExecute رف١ز*.MMX Forms Runtime

Reports اىرقاسش Save اؾفظ Source قذس*.RDF Report Builder

Compile ازشعخExecute رف١ز*.REP Reports Runtime

غ اجشظ ، Source ٠جم اف اقذس Executeىجؼب ٠ؼي اضث اف ازف١ز

. ازؼذ٠ ف ازف١ز عؽ١ش ٠غزي١غ ازؼذ٠ ف اجشبظ ال ٠غزي

Page 16: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

16

الزظاخ اح :

a. الثذ أ ٠مغ ػ (وبئ)ػذ سع أ أداحCanvas ئال فا ازشع ع١ؼي سعبخ خيأ ثأ غ١ش . لبدس ػ ازف١ز

b. الؽظ عد ؽبؽز١ ػذ رف١ز اجشبظ: Forms Runtime،

WINDOW1 . c. ازم ث١ اغغالد (رف١ز اإلعزؼال)وزه (ئدخبي اإلعزؼال)ف مغ ازف١ز ٠ى ئعشاء. d. زشعخ اجشبظ زجغ اخياد ازب١خ :

File Administration Compile File

. ](FMX.*)فبد اـ[ثبزب ٠ز اؾقي ػ اغخخ ازف١ز٠خ

Page 17: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

17

احملاضرة الثالثة

MODULE1. Menu Module :

رؾذ٠ذ امبئخ اشئ١غ١خ از رش٠ذ ئعزخذاب ػذ رؼ

رأخز Oracleف اؼ أ امائ ف )رف١ز اجشبظ ،

، ام١خ اإلفزشام١خ (فب غزمال وب روشب ره عبثمب

أ امبئخ DEFAULT&SMARTBARز اخبف١خ

. Forms Runtimeاز رظش ف ؽبؽخ

2. Defer Required Enforcement : فاب رم Yes ػذ عؼب Noرأخز ام١خ اإلفزشام١خ

. Itemsثزغبص ام١د اؾئخ ػ اؾمي

3. Direction : رأخز Formرؼ رؾذ٠ذ ئرغب امشاءح اىزبثخ رط

:ز اخبف١خ ام١ اضالس ا٢ر١خ

a. Default : رى ؽغت اغخ اؾذدح فRegistry .

Start Run RegEdit

زجغ ازغغ ا٢ر (Registry)ثؼذ اذخي ئ ؾشس اـ

:

HKEY_LOCAL_MACHINE

SOFTWARE

ORACLE

Page 18: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

18

HOME0

NLS_LANG

[National Language

Standard_LANG]

ازبثؼخ (Value Data)فـم١خ اـ

عزأخز أؽذ ( NLS_LANG)ـ

:ام١ز١ ازب١ز١

ARABIC_UNITED ARAB

EMIRATES.AR8MSWIN1256

ARABIC_SAUDI ARABIA.AR8MSWIN1

256

، (Right To Left)ب ٠ؼ أ اغخ اإلفزشام١خ اؼشث١خ ثبزب رقجؼ ام١خ اإلفزشام١خ

، Oracleأصبء ػ١خ رضج١ذ (ئخ... عؼد –ئبسار )غ الؽظخ أ ٠ز رؾذد ع اغخ اؼشث١خ ازمبح

:أ ام١خ ازب١خ

AMERICAN_AMERICA.WE8ISO8859PI

( . Left To Right)ب ٠ؼ أ اغخ اإلفزشام١خ اإلغ١ض٠خ ثبزب رقجؼ ام١خ اإلفزشام١خ

b. Left To Right : ا١غبس ئ ا١١ . c. Right To Left : ا١١ ئ ا١غبس .

Triggers : ػ صالصخ غز٠بد PL/SQL (SQL ;)رىزت ثـ Code ػجبسح ػ ؽفشح قذس٠خ

:ب ( Moduleغر اىرج .1

WHEN-NEW-FORM-INSTANCE : ٠فز ػذ ثذا٠خ رؾ١ اـ(Form) ئ ازاوشح . : ب ( Data Blockغر مريح اىثااخ .2 WHEN-NEW-BLOCK-INSTANCE : ٠فز ػذ ثذا٠خ اذخي ػ اـ(Block) ، WHEN-NEW-RECORD-INSTANCE : ، ٠فز ػذ ثذا٠خ اذخي ػ و عغ PRE-BLOCK : ٠فز لج اذخي ػ اـ(Block) ، POST-BLOCK : ٠فز ثؼذ اذخي ػ اـ(Block. ) :ب ( Itemغر اىؼظش .3 WHEN-NEW-ITEM-INSTANCE : ٠فز ػذ ثذا٠خ اذخي ػ اـ(Item) ،

WHEN-BUTTON-PRESSED : ٠فز ػذ امش ػ اؼقشPUSH BUTTON، WHEN_LIST_CHANGED : ٠فز ػذ ازؼذ٠ ػ اؼقشList Item، WHEN_IMAGE_PRESSED: ٠فز ػذ امش ػ اؼقشImage .

=======================================================================

=========

Page 19: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

19

: ثبيجغ ١ظ ا أ ىزت اشعبخ ى ا ؼشفخ

ب غشك اشعبخ( زؾذ٠ذ ػبmessage أ Alert) ، أ٠ عىزجب( ف أ ؽذسTrigger. ) أاع اىشعائو :1. message) رأخز اق١غخ (ؽش٠و اؾبخ) اشعبئ از رخزـ ثبظس ػ ؽش٠و اؼبد ،

اؼبخ ازب١خ message(' ض اىشعاىح ') ;

اىؼظش از ش٠ذ رف١ز أش ئظبس اشعبخ ػذ فجؼذ رؾذ٠ذ (Trigger)ؼ ره ؾزبط أال ؼشفخ اـ

STU_NAME م ثبمش ػ صس افأسح األ٠ خزبس األش Smart Trigger اؾذس WHEN-NEW-

ITEM-INSTANCE ىزت ف١ أش اشعبخ message(' Please… Enter Name of Student?

زأوذ أ ر رشعخ األش ثؾى فؾ١ؼ زا اؾذس ، Compileص نغو ػ اضس ; ('

شر١ أ لذ ر رؾ٠ اشعبخ اضب١خ رمبئ١ب ئ ب (message)الؽظ ػذ رىشاس ػ اشعبخ اخبفخ ثبـ

( . Alert)٠غ ثبـ

2. Alert ) اشعبئ از رظش ثؾى فذق ؽاس

( Note أ الؽظخ Caution أ رؾز٠ش Stopئ٠مبف )از لذ رى سعبخ اع

وضبي ػ ... ئ غ١ش ره خقبئـ فبد٠ك اؾاس (صس أ صس٠ أ صالصخ ػ األوضش )لذ رؾز ػ

: ره

Page 20: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

20

:ى ػ شؽز١ ٠ى ػ ض ز اشعبئ Oracleف

a. شزيح ئشاء اىشعاىح : ١ؾئ ب ئعب Createص (Object Navigator)اعد ف ؽبؽخ اـ (Alert)ؽ١ش م ثزؾذ٠ذ اـ

: زؾى ثم١ اخقبئـ ابخ ازبثؼخ ب وبزب 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. شزيح طية اىشعاىح اىؼاىدح: Data)اىـ از ش٠ذ رف١ز أش ئظبس اشعبخ ػذ فجؼذ رؾذ٠ذ (Trigger)ؼ ره ؾزبط ؼشفخ اـ

Block )STU أل وب ؼ أ ػ١خ ؽزف اغغ رى ػ غز وزخ اج١ببد Data Block ،

ىزت ف١ أاش KEY-DELREC اؾذس Smart Triggerم ثبمش ػ صس افأسح األ٠ خزبس األش

: ؼبغخ اشعبخ وبزب

Declare

N Number ;

Begin

N := Show_Alert('Del') ;

If N = Alert_Button1 Then

Delete_Record ;

Commit ;

Else

Null ;

End If ;

End ;

Page 21: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

21

زأوذ أ ر رشعخ األش ثؾى فؾ١ؼ زا اؾذس ، ١ز ازف١ز Compileص نغو ػ اضس

صس ، ى ئرا أسدب رف١ز أش اؾزف زا خالي Form Runtimeخالي امبئخ از رظش ف ؽبؽخ

: فزجغ اخياد ازب١خ ق تؼيح اىسزف

: ؼي١ اخقبئـ (Canvas)ؾئ صس ١م ثؼ١خ اؾزف ره ثشع ػ اـ .1

Property Value

1 Name DL

2 Label ؽزف

3 Number of item displayed 1

ػ ىش٠ك (Push-Button) ئ اؾذس اخبؿ ثبـKEY-DELRECم ثغخ ب وزجب ف اؾذس .2 : خالي WHEN-BUTTON-PRESSED اؾذس Smart Triggerئخز١بس األش

a. رؾذ٠ذ اؼقشDL ؽبؽخ Object Navigator ، امش ػ صس افأسح األ٠

b. رؾذ٠ذ اضس ؽزف ف ؽبؽخLayout Editor، امش ػ صس افأسح األ٠ c. ػذ رؾذ٠ذ اؼقشDL أ رؾذ٠ذ اضس ؽزف امبئخ Program.

Data Blocks ناخ اىـ(Data Block) األعاعح :a. Triggers : األؽذاس ازؼمخ ثبـ (Data Block )]اغز اضب اـ[(Triggers) ،

b. Items : رض اؼبفش ازبثؼخ زا اـ(Data Block )] ؽمي اغذي ػبفش ازؾى ازبثؼخ : ضال[ ، c. Relations : شثو زا اـ(Data Block) غ أ(Data Block) سثو عذي غ عذي آخش: ضال [آخش[. خـظـائـض اىـ( Data Block: )

: عد ذ٠ب ف اجشبظ ره Block Data انشس رؾذ٠ذ خقبئـ أ

، زؾذ٠ذ فالؽ١خ و غزخذ

Page 22: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

22

١ى اؼ أوضش أ١خ .

1 Name از ع١ز ازؼب خال غ اـ(Data Block) ثشغ١ب

2 Navigation Style

:رؾذ٠ذ و١ف١خ ئزمبي اإؽش ب صالصخ ل١

(A Same Record :

رؼ ازم ث١ ؽمي فظ اغغ أي ؽم ئ آخش

ؽم

ثؾ١ش ٠ظ اإؽش ػ فظ اغغ ١ز ازم ث١ ؽمي

، Enterزا اغغ ثنغو

B )Change Record : رؼ رغ١ش اغغ اؾب

ثؾ١ش ٠ز ازمبي اإؽش آخش ؽم غغ اؾب ئ

،Enterأي ؽم غغ ازب ثنغو

C )Change Data Block : رؼ رغ١ش اـ(Block) اؾب

ثؾ١ش ٠ز ازمبي اإؽش أخش ؽم غغ اؾب ف

. ازب (Block)اؾب ئ أي ؽم ف اـ (Block)اـ

3 Previous Navigation Data

Block

اغبثك (Block)رؾذ٠ذ اـ

4 Next Navigation Data Block رؾذ٠ذ اـ(Block) ازب

5 Number of Record display رؾذ٠ذ ػذد اغغالد اؼشمخ ػ اـ(Canvas )

6 Records Orientation (اإلفزشام ػد)رؾذ٠ذ ئرغب اغغالد ػد أ أفم

7 Database Data Block

(Yes , No)رزه ام١ (Data Block)رؾذ٠ذ ع اـ

1. Database( : Yes)

اغذاي اؾبذ اشادفبد )أ اشرجو غ لبػذح اج١ببد

، (ئخ...

2. Non Database( : No) ػ لبػذح دأ اؼزذ ػ ػبفش ازؾى فمو ال ٠ؼز

( .DUMMY )داج١بب

8 Query Allowed عبؽ١خ اإلعزؼال ػ اج١ببد أصبء ازف١ز رزه ام١

(Yes , No)

F3ازشر١ت اإلفزشام ؽغت ؽبؽخ

Page 23: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

23

9 Insert Allowed , Yes)عبؽ١خ اإلدخبي ج١ببد أصبء ازف١ز رزه ام١

No)

10 Update Allowed Yes)عبؽ١خ ازؼذ٠ ػ اج١ببد أصبء ازف١ز رزه ام١

, No)

11 Delete Allowed

, Yes)عبؽ١خ اؾزف اج١ببد أصبء ازف١ز رزه ام١

No)

الزظح اح :

وضبي ػ Developerأل فالؽ١خ (SQL)فالؽ١خ اـ

:ره

SQL> revoke delete on STU.Lvl from UST ;

ز عزغؾت فالؽ١خ اؾزف ػ اغذي (SQL)رؼ١خ اـ

Lvl اغزخذ ust ف أ ثشبظ ، أب ف Developer

Delete Allowed خبف١خ Noفا ئرا ر ئػيبء ام١خ

م اجشبظ اؾب فمو Lvlفغزغ اؾزف اغذي

ئرا ب Lvlػذ ئؾبء ثشبظ آخش فا ٠ى اؾزف اغذي

ب رىزت Delete Allowed خبف١خ Yesر ئػيبء ام١خ

أػال ئال فال عذ ل١ ز اخبف١خ (SQL)رؼ١خ اـ

( . No)أ ؼب ثـ (Yes)عبؽ١خ ؾزف ثـ

12 WHERE Clause ؽشه عت اغغالد اغذاي

13 ORDER BY Clause

أضخ رؾذ٠ذ اؾم اشاد ازشر١ت خال و١ف١خ ازشر١ت ،

:ره

Lvl_Name : ٠ز ازشر١ت ؽغت اؾم ئع اغز رقبػذ٠ب

(اإلفزشام)

Lvl_Name desc :

٠ز ازشر١ت ؽغت اؾم ئع اغز ربص١ب

Lvl_Name Asc : ٠ز ازشر١ت ؽغت اؾم ئع اغز رقبػذ٠ب

Page 24: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

24

Visual Attribute Current RecordStu

Cyan Arial12Red

: ١ز ره ال ثذ اشس ثشؽز١

a. شزيح ئشاء اىخظائض اىشئح : ١ؾئ ب Createص (Object Navigator)اعد ف ؽبؽخ اـ (Visual Attribute)ؽ١ش م ثزؾذ٠ذ اـ

: زؾى ثم١ اخقبئـ ايثخ وبزب 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. شزيح طية اىخظائض اىشئح: : زؾى ثبخقبئـ اشئ١خ وبزب F4 ص نغو STU( Data Block)اىـؼ ره ؾذد

Property Value

Current Record Visual Attribute Group VA1

=======================================================================

=========

Items : رمغ ئ ػ١

a Input Items ض :Text_item ، List_Item ، Check_box ، Radio_Group .

b Non_Input Items ض :Display_Item ، Push_Button ، Images .

ذشرشك ز اىؼاطش تثؼغ اىخظائض ذخريف ف اىخظائض األخش

Page 25: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

25

Text_Item

1 Name از ع١ز ازؼب خال غ اـ(Text_item) ثشغ١ب

2 Item Type رؾذ٠ذ ع اؼقش اؼشك

3 Enabled ؾو أ جذ(Yes , No)

4 Justification لغ ظس اىزبثخ(Left ,Right ,Center ,Start ,End)

5 Data Type ع اج١ببد

6 Maximum Length ىي اج١ببد

7 Initial Value ام١خ اإلثزذائ١خ ؼقش

8 Required (ئعجبس)ل١خ اؼقش ية ئدخبب

9 Format Mask ( 999.99: ضال )رغ١ك اؼقش اشل ؽغبث١ب

10 Database Item اؼقش شرجو ثمبػذح اج١ببد أ غ١ش شرجو (Yes , No)

11 Query Allowed اغبؽ١خ ثبإلعزؼال(Yes , No)

12 Insert Allowed اغبؽ١خ ثبإلمبفخ(Yes , No)

13 Update Allowed اغبؽ١خ ثبزؼذ٠(Yes , No)

14 Visible شئ أ خف (Yes , No)

15 Canvas رؾذ٠ذ امبؽ١خ ازمغ ػ١ب اؼقش

16 X Position رؾذ٠ذ لغ اؼقش األفم

17 Y Position رؾذ٠ذ لغ اؼقش اؼد

18 Width رؾذ٠ذ اؼشك

19 Height رؾذ٠ذ اإلسرفبع

20 Font & Color ازؾى ثبخو األا

21 Prompt ازؾى ثبـ(Label)اخبؿ ثبـ (Text_item)

21 Prompt Font & Color ازؾى ثأا خيه اـ(Label)اخبؿ ثبـ (Text_item)

23 Hint ئظبس ـ أعف اـ(Form) ػذ رفؼ١ اؼقش

24 Tooltip ئظبس ـ م ئىبس ػذ في إؽش ابط ئ١

Page 26: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

26

List_Item

1 Element in List زؾذ٠ذ اؼبفش اؾزاح غ ل١ب

2 Mapping of Other Values ػذ عد ل١خ غب٠شح م١ اؼبفش اؾزاح

ثم١خ اخقبئـ وب ش عبثمب

=======================================================================

=========

Check_Box

1 Value When Checked (ؾو)ل١خ اؼقش ػذب ٠ى ؾذد

2 Value When Unchecked ل١خ اؼقش ػذب ال ٠ى ؾذدا

3 Check box Mapping of Other Value ػذ عد ل١خ غب٠شح م١ز١ اغبثمز١

Initial Valueرى ام١خ اغب٠شح ػبدح مػخ ف

ثم١خ اخقبئـ وب ش عبثمب

=======================================================================

=========

Radio_Group ىيخاساخ اىفشدج Container أ أا تثاتح اىساح Radio_Button ذس اىؼذذ

1 Mapping of Other Values ػذ عد ل١خ غب٠شح م١ اؼبفش اؾزاح

2 Initial Value ام١خ اإلثزذائ١خ ؼقش

ثم١خ اخقبئـ وب ش عبثمب

Radio_Button

1 Label اؼا اظبش أب اغزخذ

Page 27: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

27

2 Radio Button Value ام١خ اخبفخ ثبؼقش

ثم١خ اخقبئـ وب ش عبثمب

=======================================================================

=========

Display_Itemو اخقبئـ لذ شد عبثمب ى غزف١ذ زا اؼقش أ ال ٠ى ازؼذ٠ ف١ ال ٠زم ئ١ ازشو١ض

Focus

=======================================================================

=========

Push_Button

1 Label اؼا اظبش أب اغزخذ

2 Iconic رؾذ٠ذ رؾ١و عد األ٠مبد ػ اضس (Yes , No)

3 Icon Filename رؾذ٠ذ اف از عزى أ٠مز ػ اضس

ثم١خ اخقبئـ وب ش عبثمب

=======================================================================

=========

Image

1 Image Format ع اقسح

2 Image Depth ػك اقسح

3 Sizing Style ( الئخ–ليغ )رؾذ٠ذ و ازؾغ١

ثم١خ اخقبئـ وب ش عبثمب

Page 28: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

28

احملاضرة الرابعة

أصبء رف١ز اجشبظ (Item) أ اـ(Block) أ اـ(Window) غزي١غ ازؾى ثخقبئـ اـSetػ ىش٠ك ازؼ١خ

ث١ب

. غزي١غ ازؾى ثبخقبئـ ف شؽخ رق١ اجشبظ Property Palette ف ؽخ اخقبئـ

: اق١غخ اؼبخ وب ٠

Set_Window_Property(ل١خ اخبف١خ , ئع اخبف١خ , ئع اىافزج)

;

زؾى ثخقبئـ ابفزح

ثشغ١ب

Set_Block_Property( ل١خ اخبف١خ , ئع اخبف١خ ,ئع اىنريح) ; زؾى ثخقبئـ اىزخ ثشغ١ب

Set_Item_Property(ل١خ اخبف١خ , ئع اخبف١خ , ئع اىؼظش) ; زؾى ثخقبئـ اؼقش

ثشغ١ب

: ثبيجغ ز اخقبئـ رؼذي ف اؾذس ابعت از ٠ؾذد ايت اؾبعخ فضال

ؽذس : ػذ رؾ١ اجشبظ ؟WHEN_NEW_FORM_INSTANCE ، ؽذس : ؟ ... ف صسWHEN_BUTTON_PRESSED ... ئخ.

1 Window :مأثيح ػي رىل

(Forms Runtime)Set_Window_Property(Forms_Mdi_Window , Window_State , Maximize);

غ١ش ئؽبساد Forms_Mdi_Window ئع صبثذ دائب ف ٠ىزت (Forms Runtime)الؽظ أ ئع بفزح اـ

. اإللزجبط

(Forms Runtime)Set_Window_Property('Window1' , Window_State , Maximize);

الؽظ أ ئع بفزح اجشبظ ئع زغ١ش ف ٠ىزت ؽغت ئع ابفزح اجشغ غ عد ئؽبساد اإللزجبط

.

600800Set_Window_Property('Window1' , Height , 600 , Width , 800);

. اشع (argument)الؽظ عد ز اؾبخ اخبفخ يي اؼشك ف ػذد اـ

Page 29: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

29

''(Forms Runtime)Set_Window_Property(Forms_Mdi_Window , Title , 'ثشبظ ايالة');

. الؽظ أ اخقبئـ ػذب ٠ى ذ٠ب ل١ ؾشف١خ فال ثذ عد ئؽبساد اإللزجبط

''Set_Window_Property('Window1' ,Title , 'ث١ببد اغز');

(Forms Runtime)Set_Window_Property('Window1' , Window_State, Minimize);

Set_Window_Property(Forms_Mdi_Window , Window_State, Minimize);

2 Block :مأثيح ػي رىل

LvlSet_Block_Property('Lvl' , Query_Allowed , Property_True);

. Yes ػذب رى ل١خ اخبف١خ property_Trueالؽظ ئػيبء ام١خ

LvlSet_Block_Property('Lvl' , Query_Allowed , Property_False);

. No ػذب رى ل١خ اخبف١خ property_Falseالؽظ ئػيبء ام١خ

LvlSet_Block_Property('Lvl' , Order_By , 'Lvl_No');

LvlSet_Block_Property('Lvl' , Order_By, 'Lvl_Name');

: ثو Blockمزىل اىساه تاىغثح ىثقح خظائض اىنريح

Insert_Allowed : ، اخبفخ ثبإلمبفخ

Update_Allowed : ، اخبفخ ثبزؼذ٠

Delete_Allowed : ، اخبفخ ثبؾزف

Defalut_Where : اخبفخ ثبؾشهWhere

Set_Block_Property('Stu' , Defalut_Where , 'Stu_Sec >= 1');

Current_Record_Attribute : ثبخقبئـ اشئ١خ ىزخ اخبفخVisual Attribute Set_Block_Property('Stu' , Current_Record_Attribute , 'VA1');

. ئخ .. .

3 Item :مأثيح ػي رىل

Page 30: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

30

LvlSet_Item_Property('Lvl_Name' , Visible , Property_True);

LvlSet_Item_Property('Lvl_Name' , Visible , Property_False);

LvlSet_Item_Property('Lvl_Name' , Enabled , Property_True);

LvlSet_Item_Property('Lvl_Name' , Enabled , Property_False);

: ثو Blockمزىل اىساه تاىغثح ىثقح خظائض اىنريح

Position : اؼقش ػ بفزح اجشبظ ثـاخبفخ ثزؾذ٠ذ لغ(X , Y)

Set_Item_Property('MyButton' , Position , 100 , 100);

Visual_Attribute : ثبخقبئـ اشئ١خ ؼقش اخبفخ Set_Item_Property('Stu_No' , Visual_Attribute , 'VA1');

. ئخ .. .

=======================================================================

=========

1 Global Variables ( .Global:)رجذأ ثـ

Function أ أ Procedure أ أ Triggerزؼش٠ف زؾالد ػبخ ثؾ١ش غزي١غ ازؼب ؼب ثأ

ؽز ٠قجؼ ؼشفب ىب WHEN_NEW_FORM_INSTANCEؼشف ازؾي اؼب ف اؾذس

( . Forms)اـ

: اق١غخ اؼبخ زؼش٠ف وب ٠

:global.Variable := Value ; ػذب رى ام١خ اإلثزذائ١خ سلب

:global.Variable := 'Value' ; ػذب رى ام١خ اإلثزذائ١خ قب ؾشف١ب

تاىطثغ فؼو دائا أ ؼط قا ئترذائح ىيرسالخ ذالفا ىسذز أح شامو

: وأضخ ػ ره

:Global.MyNo := 1 ;

:Global.MyName := 'Amerah';

2 Local Variable از ػشفذ ثذاخ فمو (Function) أ اـ(Procedure) أ اـ(Trigger)رى ز ازؾالد ؼشفخ م اـ

Page 31: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

31

. اؼشف مب (End) اـ(Begin)٠ؼ م اـ

: اق١غخ اؼبخ زؼش٠ف وب ٠

Variable DataType := Value ; ػذب رى ام١خ اإلثزذائ١خ سلب

Variable DataType := 'Value' ; ػذب رى ام١خ اإلثزذائ١خ قب ؾشف١ب

تاىطثغ فؼو دائا أ ؼط قا ئترذائح ىيرسالخ ذالفا ىسذز أح شامو

: وأضخ ػ ره

MyNo Number := 2 ;

MyName Varchar2(20) := 'Gawaher';

=======================================================================

=========

''

'

'

''

''''

: ر١ؼ

(ل ثشثو ل١ اخقبئـ اجشغ١خ ثزؾالد ػبخ)

: ىؼو رىل ال تذ

رؼش٠ف زؾي ػب( ػ غز ارطForm) ١ىX ئ١ وم١خ ' ئخفبء' ؽ١ش م ثاعبد ام١خ

ئثزذائ١خ زؾى ثىزبثخ ػا اضس خالي ل١خ ازؾي اؼب ،

خالي عخ (انغو ػ اضس)فؾـ ل١خ ازؾي اؼب ف ؽذس IF اؾشى١خ فارا وبذ ل١خ ئ ' ئظبس' غذ ام١خ اغب٠شح Visible فاب عخف زا اؼقش ثخبف١خ ' ئخفبء'ازؾي

. ص زؾى ثىزبثخ ػا اضس خالي ل١خ ازؾي اؼب اغذ٠ذح ازؾي اؼب اؼىظ فؾ١ؼ

1. WHEN_NEW_FORM_INSTANCE

Page 32: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

32

:Global.X := 'ئخفبء' ;

Set_Item_Property('MyButton' , Label , :Global.X) ;

2. WHEN_BUTTON_PRESSED If :Global.X = 'ئخفبء' then

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);

=======================================================================

=========

الزظاخ اح :

رغزخذ زخق١ـ ، =:

رغزخذ مبسخ ، =

. رغزخذ لج اؼقش زؼ أب ل١ز :

=======================================================================

=========

Stu_NoSTUTrigger

: ر١ؼ

؟ (٠ز ئفزشاك أ ل١خ اؾم غغ األي ١ئخ ثم١خ ذخخ اغزخذ)

: زو اىطيب

: زى اؾفشح اقذس٠خ وبزب Number اؼ أ ٠ى ػ رشل١ رمبئ ػ ؽم ع

Page 33: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

33

(Trigger : KEY_CREREC)

زذز ئشاء اىغدو

Declare

Counter number ;

تؼشف يتحىل انؼذاد ي ىع سق

Begin

Select Max(Stu_No) into Counter From Stu ;

إختاس انقت انؼظى ي حقم انطانب وإسادها إىل يتحىل انؼذاد

:Stu_No := Counter + 1 ;

تشقى حقم انطانب بقت املتحىل يضافا إنه واحذ

End ;

Page 34: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

34

احملاضرة اخلامسة والسادسة

Relations ا٢خش اغذي Master رؼج١ش ٠يك ػ ػاللخ ث١ عذ١ أؽذب اغذي اشئ١غ

، Detailsازفق١

، Details اغذي ازفق١ Masterرؾذ٠ذ اغذي اشئ١غ .1

، (رغ اؾمي اخف١خ)رؾذ٠ذ ؽمي اشثو ث١ اغذ١ .2 .Join Conditionرؾذ٠ذ ؽشه اشثو ث١ اغذ١ .3

----------------------------------------------------------------------------------------------------------------------

--------------

Master

Details

الؽظ خالب أ ع١غ ؽمي اغذي اشئ١غ زفشح ف عذيSTU ، . MARKث١ب غذ أ ع١غ ؽمي اغذي ازفق١ زفشح ف عذي

( سق اىغر– سق اىقغ –سق اىطاىة )٠ز اشثو خالي اؾمي ، ؽشه سثو اغذ١ ٠ؾذد خالي ػذد اغذاي زه عؾزبط ئ ؽشه سثو اؽذ ػ أل رمذ٠ش(

n-1 ) ىب ب غذ أ ؽشه اشثو : Mark.Mark_Sec = Stu.Stu_Sec And

Mark.Mark_Lvl = Stu.Stu_Lvl And

Mark.Mark_Stu = Stu.Stu_No

:Data Block Wizardطشقح ؼاىح .1 Data رى ف١ اـFormؽ١ش م ثاؾبء

Block ؼزذح ػ اغذي STU ١ى

٠ؾ عغال ؽ١ذا ، Tabularثؾى

ؼزذح ػ Data Blockوزه ئؾبء

Tabular ١ى ثؾى MARKاغذي

٠Dataؾ خغخ عغالد ، أصبء ئؾبء

Block اخبؿ ثبـ MARK ػ ىش٠ك ؼبظ

Page 35: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

35

: الؽظ ظس اؾبؽخ ازب١خ Data Block Wizardوزخ اج١ببد

فم أال ثاغبء اشثو ازمبئ ث١ اغذ١

Auto-join Data Blocks

أب اغذي ازفق١ STU ؾذد خال اغذي اشئ١غ …Create Relationshipص زت ضس

MARK ف ؾذد رمبئ١ب ثغجت أب لب ثزؾذ٠ذ اؼاللخ خال ؾذد ؽشه اشثو خالي ئزمبء ػقش

Master Item ب اؼقش از ٠مبث اغذي اشئ١غ Detail Item اغذي ازفق١

. ش اؾشه رىزت جبؽشح أصبء ػ١خ ازؾذ٠ذ

( Data Block Wizardؼغط اىراى نو تقح رطيثاخ اىؼاىح اىخاص تـ )

ششذ ثغط :

(غبجب ٠ؾئ ثاع ئفزشام ٠أخز ف١ ئع اغذ١) Relation لب ثزؾذ٠ذ ػقش اؼاللخ اغذ٠ذ

: ش أ اخقبئـ عغذ أب F4ص مغيب

خبف١خ ؽشه اشثوJoin Condition : ب رغزي١غ ازؼذ٠ ػ ؽشه اشثو از لذ أؾئ ف١بعجك ،

خبف١خ عن ؽزف اغغالدDelete Record Behavior از رزه اضالصخ ام١ ا٢ر١خ:

1. Non_Isolated : (اال ػضي اإلفزشام) ،Details ئال ثؼذ ؽزف و ب ٠زؼك ث ف اغذي اـ ٠Masterؼ أ غزي١غ اؾزف اغذي اـ

2. Isolated: ثؾ١ش ٠ى اؾزف أؽذ اغذ١ د رأصش Details اغذي اـ ٠Masterؼ عد ػضي ث١ اغذي اـ

ا٢خش ،

3. Cascading :

. Details فا ع١ؾزف و ب ٠زؼك ثزا اغغ اغذي اـ Masterفارا ؽزفب عغ اغذي اـ

Page 36: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

36

: اىطشقح اىذح .2 Data رى ف١ اـFormؽ١ش م ثاؾبء

Block ؼزذح ػ اغذي STU ١ى

٠ؾ عغال ؽ١ذا ، Tabularثؾى

ؼزذح ػ Data Blockوزه ئؾبء

Tabular ١ى ثؾى MARKاغذي

٠ؾ خغخ عغالد ،

اعد (Relations)م ثزؾذ٠ذ اـص

اىراتغ ( Object Navigator)ف ؽبؽخ اـ

Createص STUىيدذه اىشئغ

: زظش اؾبؽخ ازب١خ

ؽ١ش ؾبذ ف١ب أ اغذي اشئ١غ

STU ؾذد رمبئ١ب ثغجت أب لب ثزؾذ٠ذ

اؼاللخ خال ، ث١ب رز ايبجخ

ثاخز١بس اغذي ازفق١ خالي اضس

Select… خزبسLOVs از رظش

: ؽ١ش غذ اضالس اخ١بساد Master Deletes ؛ الؽظ عن ؽزف اغغالد خالي MARKاغذي

a) Non_Isolated ، b) Isolated ، c) Cascading .

از ر ؽشؽب ف افمشح اغبثمخ ؛

Join Conditionىزت ؽشه اشثو ف

. از لذ لب ثزوشب لج ره

ىرسذثاخ ػي اىثشاح تؼذ ئشاء ا

:Relationاىؼالقح

Form ػ غز اـ ٠Triggerنبف .1.

ػ غز (Triggers 2 )٠نبف .2 غذي Data Blockوزخ اج١ببد

.Masterاشئ١غ ئ وزخ Relationرنبف ػاللخ .3

اج١ببد

Data Block غذي اشئ١غ Master.

. Program Units ئ ؽذاد اجشبظ ( Procedure 3 )٠نبف .4

Page 37: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

37

الزظح اح :

ره خالي (رىل ىؼذ اخح شنيح ذنشاس اىثااخ)ال غ ئخفبء ؽمي اشثو ث١ اغذ١

ى ػقش سثو زخف اؼبفش أصبء ازق١ ازف١ز ، أب ئرا لب Canvas خبف١خ NULLئػيبء ام١خ

. فاب عزخف اؼبفش أصبء ازف١ز فمو Visible خبف١خ Noثاػيبء ام١خ

، Sec_NOسق اىقغ .1 ، Lvl_Noسق اىغر .2 ، Stu_Noسق اىطاىة .3

Page 38: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

38

رى اؾمي اؾغبث١خ ػبدح ػ ىش٠ك

a) ػقشItem غ١ش شرجو ثمبػذح اج١ببد Non_DB ػ DataBlock شرجو ثمبػذح اج١ببد DB، b) ػقشItem غ١ش شرجو ثمبػذح اج١ببد Non_DB ػ DataBlock غ١ش شرجو ثمبػذح اج١ببد Non_DB

. (Dummy)از ػبدح ب ٠غ ثبـ

3 Formula . ف١غخ س٠بم١خ رزظ ػب ل١خ ػذد٠خ

Mark

ثبخقبئـ ا٢ر١خ Mark ػ عذي اذسعبد TDeg ١ى Non_DBؾئ ػقش غ١ش شرجو ثمبػذح اج١ببد

:

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 اذسعخ ابئ١خ

4 Summary

a. م ثاؾبءBlock غ١ش شرجو ثمبػذح اج١ببد Non_DB ١ى (Dummy) ثبخقبئـ ا٢ر١خ :

Property Value

1 Name Dummy

2 Database Data Block No

b. ص ؾئ ػقش غ١ش شرجو ثمبػذح اج١ببدNon_DB ١ى Total ثبخقبئـ ا٢ر١خ :

Property Value

1 Name Total

2 Item Type Text Item

3 Enabled No

4 Data Type Number

5 Calculation Mode Summary

Page 39: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

39

6 Summarized Block Stu

7 Summarized Item TDeg

8 Summary Function Sum

9 Database Item No

10 Canvas Canvas2

11 Prompt زعو اذسعبد

c. ١ز ازف١ز ثزغت أ سعبخ خيأ ، Markثبذسعبد (Block) ازبثؼخ ـQuery All Recordم ثزغ١ش ل١خ اخبف١خ

. Single Record غ١ش ل١خ اخبف١خ Dummy ازؾى از ٠ؾ ػقش ازغ١غ (Block) اـ

Data Block Property Value

1 Mark Query All Record Yes

2 Dummy Single Record Yes

Page 40: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

40

a) م ثاؾبء ػقش ف وزخ اج١ببد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

b) ثب أ ازمذ٠ش ٠ؼزذ ػ ؼذي اذسعبد زه ٠غت أ ٠زأصش زا ازمذ٠ش ئرا لب ثزؼذ٠ أأػاه ) ى Post_Change ف ؽذس Codeاذسعبد زه م ثىزبثخ ز اؾفشح اقذس٠خ

: وبزب ( اىائ– اىظف –اىغح

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

Page 41: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

41

:Mark_Valuation := 'ضؼف';

End If ;

End ;

Page 42: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

42

ئب ثؾى سثو ىج١ؼ Master & Detailsؾزبط ف وض١ش األؽ١ب اشثو ث١ عذ١ ١ظ ثؾى

از ٠ؼزجش (Stu_Secسل امغ ) ٠ؾز ػ STUأع ئعزخالؿ ؼبد ؼ١خ فضال عذي ايالة

ػ ىش٠ك ػ١خ اشثو ز ش٠ذ SECTION ربثغ غذي األلغب Foreign Keyؽمال ضال فزبػ غش٠ت

خالي ؽم سل امغ STUعت أعبء األلغب أ أب ش٠ذ ئظبس أعبء األلغب ف وزخ اج١ببد

Stu_Sec ثؾشه أ ئرا ر ئدخبي ل١خ خبىئخ فا اجشبظ ٠زلف ؽز ٠ذخ اغزخذ ام١خ اقؾ١ؾخ .

: ىؼو رىل عسراج ئى

a. ئؾبء ػقش ف وزخ اج١ببدSTU خقبئق وبزب :

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

b. خالي اؾذس ثؼذ ازؼذ٠ (ئع امغ)سثو زا اؼقش Post_Change ازبثغ شل امغ اخبؿ :وبزب STU_SEC أ اؾم STUثىزخ اج١ببد

Declare

Begin

Select Sec_Name Into :Sec_Name From Section

Where Sec_No = :Stu_Sec;

Exception

When No_Data_Found Then

Page 43: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

43

Message('انشقى غري صحح');

Raise Form_Trigger_Failure;

End ;

. ئخ ... ثفظ ايش٠مخ ٠ز ئ٠غبد ئع اغز اؼزذ ػ سل اغز

=======================================================================

=========

ذير :

: خقبئقب وبزب زى Message ثذال سعبخ Alertسعبخ اى ئؾبء

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 ;

. أع أ األساو رزيت ئعبد اذاي زؾي أصبء ئعزذػبئب

Page 44: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

44

الزظح اح :

Non_DB ثؾ١ش رى آر١خ وزخ ث١ببد Non_DB ػ ىش٠ك ػبفش ٠DBفن دب ازؾى ثىزخ ث١ببد

أ وزخ رؾى ، ف ضبي سثو اغذاي اغبثك فا ٠فن أ ؾئ Dummyاز ب شض ب ػبدح ثبشض

: از خقبئق Dummy زى Non_DB ف وزخ ث١ببد SEC_Nameػقش ئع امغ

Property Value

Database Data Block No

ساعغ و١ف رؾئ امبئخ ) List_Item_Sec ١ى ئع List Itemئرا أؾئب ئع امغ زا ع

STUأسدب أ رى اج١ببد اؼشمخ ف١ رإصش ػ ب ٠ؼشك ف وزخ اج١ببد ( اؾبمشح اغبثؼخ

: وبزب (رؼذ٠ امبئخ)ثؾى فؼبي فاب م ثىزبثخ اؾفشح اقذس٠خ ف ؽذس

(Trigger : WHEN_LIST_CHANGED)

Set_Block_Property('Stu' , 'Default_Where' , 'Stu_Sec =

:Dummy.List_Item_Sec') ;

زف١ز STU ص نيش ئ ازبة ئ وزخ اج١ببد List_Item_SEC أع أال خزبس ػقش امبئخ

فن١ف List_Item_SEC شرجيب ثاخز١بس ام١خ STUاإلعزؼال أ غؼ ظس اج١ببد ف وزخ اج١ببد

: ثؼذ ازؼ١خ اغبثمخ ب ٠ (رؼذ٠ امبئخ)ف ؽذس

Go_Block('Stu') ;

Execute_Query ;

=======================================================================

=========

Program Units أ اذاي Procedureرغزخذ اؽذاد اجشغ١خ إلؾبء اإلعشاءاد

Function أ اؾض اجشغ١خ Package Spec ره خالي ،

Object)اعد ف ؽبؽخ اـ (Program Units)ثزؾذ٠ذ اـ

Navigator) صCreate زظش اؾبؽخ ازب١خ :

(Name)فىزت ئع اؽذح اجشغ١خ اشاد ئؾبئب داخ اـ

: ص خزبس ع اؽذح اجشغ١خ

ئخشاءProcedure ، داىحFunction ، زضح تشدحPackage Spec، ( ؾذد ف١ب أعبء

(اؽذاد اجشغ١خ خغ اىسضحPackage Body ،

( .Package Spec إلعشاءاد اذاي از ر رغ١ؼب ف Codeاز ٠ز ف١ وزبثخ اؾفشح اقذس٠خ )

----------------------------------------------------------------------------------------------------------------------

--------------

Page 45: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

45

a Mark

Procedureb StuFunction

----------------------------------------------------------------------------------------------------------------------

--------------

حـل الـمـطـلـوب األول

: ثبخقبئـ ا٢ر١خ TDeg ١ى Non_DB ؾئ ػقش غ١ش شرجو ثمبػذح اج١ببد (أال

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 غع اذسعبد

زظش ؽبؽخ Createص (Object Navigator)اعد ف ؽبؽخ اـ (Program Units)ؾذد اـ (ثاا

ع اؽذح اجشغ١خ ئعشاء خزبس ProTDeg ئع اإلعشاء ١ى Nameاؽذاد اجشغ١خ فـىزت ف اـ

Procedure ص نغوOk ف١ظش ؾشس وزبثخ اؾفشح اقذس٠خ ىزت ازب ، :

PROCEDURE ProTDeg IS

BEGIN

:Tdeg := NVL(:Mark_Yj , 0) + NVL(:Mark_Ht , 0) + NVL(:Mark_Ft , 0);

END;

Procedureثب أ اغع ٠زأصش ئرا لب ثزؼذ٠ أ اذسعبد زه م ثاعزذػبء اإلعشاء (ثاىثأ

اىظف –أػاه اىغح ) ى Post_Change ف ؽذس Codeخالي وزبثخ ز اؾفشح اقذس٠خ

: وبزب ( اىائ–

ProTDeg ;

----------------------------------------------------------------------------------------------------------------------

--------------

حـل الـمـطـلـوب الثاني

. : ثبخقبئـ ا٢ر١خ SEC_NAME ١ى Non_DB ؾئ ػقش غ١ش شرجو ثمبػذح اج١ببد (أال

Page 46: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

46

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 ئع امغ

زظش ؽبؽخ Createص (Object Navigator)اعد ف ؽبؽخ اـ (Program Units)ؾذد اـ (ثاا

ع اؽذح اجشغ١خ ئعشاء خزبس FunSec ئع اإلعشاء ١ى Nameاؽذاد اجشغ١خ فـىزت ف اـ

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;

ف ؽذس ثذا٠خ Code خالي وزبثخ ز اؾفشح اقذس٠خ Functionص م ثاعزذػبء اذاخ (ثاىثأ

: اذخي ػ اغغ وبزب

(Trigger : WHEN_NEW_RECORD_INSTANCE)

:Sec_Name := FunSec ;

=======================================================================

الزظاخ اح :

٠ى ئعزذػبء اإلعشاء ثىزبثز جبؽشح ، أب اذاخ ف١غت أ رغذ زؾي أصبء ئعزذػبئب ألاى أ ٠غزخذ ئع اذاخ غ اؼ١بد اؾغبث١خ ،

ال ٠زيت اإلعشاء ئسعبع أ ل١خ ث١ب ٠غت أ رؼ١ذ اذاخ ل١خ زه فا ػذ رؾش٠ش اؾفشح: اقذس٠خ ذاي عش ثذا٠خ ؾشس اؾفشح اقذس٠خ ثز ايش٠مخ

FUNCTION FunSec RETURN _ IS

: فم ثىزبثخ ب رشعؼ اذاخ ثؾ١ش ؼذي ؾشس اؾفشح اقذس٠خ ثز ايش٠مخ

FUNCTION FunSec RETURN Char IS

احملاضرة السابعة

Page 47: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

47

List Item: ٠غت ؼشفخ ش٠ذ أ رى ام١ اظبشح ف١ب List Itemلج ئؾبء

(ئعراذنح)ثاترح Static: ثبزب ف رزه ل١ صبثزخ ال ٠ى رؼذ٠ب ؛ (دانح)رغشج Dynamic: ثبزب ف رزه ل١ زغ١شح رؼىظ فسح اغغالد ف لبػذح

.Queryاج١ببد عت اج١ببد ف١ب ع١ى ثاعيخ اإلعزؼال .ذ دائا ٠ى (List Item)غ الؽظخ أ ئؾبء اـ

----------------------------------------------------------------------------------------------------------------------

--------------

List ItemStu

a

b

----------------------------------------------------------------------------------------------------------------------

--------------

حـل الـمـطـلـوب األول

:الؽظ رفش اؾمي Stu ؼزذح ػ اغذي Data Block رى ف١ اـFormثؼذ ئؾبء

، اؼذي Stu_Lvl ، سل اغز Stu_Sec ، سل امغ Stu_Name ، ئع ايبت Stu_Noسل ايبت )

Stu_Avg ع اؾبدح ، Stu_Certtype )

: خقبئق وب ٠ 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

Page 48: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

48

: خالب زظش اؾبؽخ أػال از

ذخ ل١ اؾمLVL_Name ف List Elements

ؾذد ام١ امبثخ ب ف ؽم سل ، List Item Valuesاغز

غ عة أ ٠ى ئدخبي ام١ زبظش ف

: فضال (اؾمي)ع١غ األػذح

٠مبثب List Elements ف األهام١خ

. List Item Values ف 1ام١خ

=======================================================================

=========

ششذ ثغط :

الؽظ ػ خبف١خ غخ ام١خ ؼقش ئ داخ لبػذح اج١ببدCopy Value from Item ( ئSTU_LVL)

Canvasثاعيخ اخبف١خ STU_LVLغبجب ب ٠ز ئخفبء ؽم ) رىل فذ خذا ػذ ئػافح عدو خذذ

، ( وذخالد ؼيبح اغزخذ ب رأر افبئذح اؼظ ز اخبف١خLVL_NAMEاإلػزبد ػ

الؽظ ػ خبف١خ ازضا غ اؼقشSynchronize with Itemاز رؼ ػ ئظبس ل١ اـ List Item

: Trigger)ؽج١خ ف ىش٠مخ اؼ ـ ) STU_LVLثؼذ ازؼذ٠ ػ ل١خ ؽم سل اغز

Post_Change)

، (STU_LVLػ ؽم

الؽظ أList Item ؽج١خ ف ىش٠مخ اؼ ذاخ Decode ف ث١ئخ SQL PLUS .

حـل الـمـطـلـوب الـثـانـي

Page 49: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

49

: خقبئق وب ٠ 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

: الزظ مف قا ترفشغ مو

a) ع١غ ام١Element In List ، b) خبف١زMapping of Other Values & Initial Value.

Record)ؽ١ش م ثزؾذ٠ذ اـ Dynamic (د٠ب١ى١خ) زغ١شح Record Group ؾئ غػخ عغ (ثاا

Group) اعد ف ؽبؽخ اـ(Object Navigator) صCreate زظش اؾبؽخ ازب١خ فخزبس خ١بسBased

on the Query Below… ىزت اإلعزؼال ص نغو ػ اضس OK

select Sec_Name , to_char(Sec_No) from section ;

ئر م ثغت اج١ببد اخبفخ ثاع

ثؼذ رؾ٠ سل )امغ سل امغ

ره ١ى ()to_charئ ـ ػجش اذاخ

لبدسا ػ Record Groupغػخ عغ

، ٠غت أ٠نأ أ غؼ ع (اإلعزؼال

زز ػ١خ Charاج١ببد شل امغ

ازيبثك ،

Property Value

Data Type Char

ثشغ١ب (Record Group)اـغ زا

رؾذ٠ذ ل١خ F4 خالي انغو ػ

RG_SEC_DYNAMIC ثـNameاخبف١خ

.

ثىزبثخ اؾفشح اقذس٠خ ك (ثاىثا Code Form ػذ ؽذس رؾ١ ارط List Item ١ز ئ اـ

:لبػذح اج١ببد

(Trigger : WHEN_NEW_FORM_INSTANCE)

Page 50: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

50

Declare

N Number;

Begin

N := Populate_Group('RG_SEC_DYNAMIC');

Populate_List('Sec_Name','RG_SEC_DYNAMIC');

End ;

LOVs (List Of Values)رز١ض ، (Form) ػجبسح ػ لبئخ رؾز غػخ ل١ م ثازمبء ئؽذاب ئػبدرب ئ ؽمي ف اـ

:ثأب

a) رظش فForm ئخ ؛ ... عذ٠ذ غزي١غ ازؾى ثبؼذ٠ذ خقبئق ض ىب ظس ؽغ ػاb) رظش أوضش ػد ؛

Page 51: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

51

c) ئىب١خ اجؾشSearch (افزشح)ازقف١خ Filter . =======================================================================

=========

LOVs (List Of Values) : ٠غت ؼشفخ ش٠ذ أ رى ام١ اظبشح ف١ب LOVsلج ئؾبء لبئخ شوجخ

(ئعراذنح)ثاترح Static: ثبزب ف رزه ل١ صبثزخ ال ٠ى رؼذ٠ب ؛ (دانح)رغشج Dynamic: ثبزب ف رزه ل١ زغ١شح رؼىظ فسح اغغالد ف لبػذح

.Queryاج١ببد عت اج١ببد ف١ب ع١ى ثاعيخ اإلعزؼال ، Text Item ال ريجك ػبدح ئال ػ ػقش (LOVs)غ الؽظخ أ اـ

. ](( Form Builder 6i عذ٠ذ [ LOVs Wizard أ ػ ىش٠ك اؼبظ اخبؿ ثب ذائؾبئب ئب أ ٠ى

Record Group رطية ئشاء دػح عدو LOVsتشنو ػا فا ئشاء أ

LOVs رسذد ع اىـRecord Groupتسغة ع دػح عدو

----------------------------------------------------------------------------------------------------------------------

--------------

LOVsMark

c Manually

d Wizard

----------------------------------------------------------------------------------------------------------------------

--------------

حـل الـمـطـلـوب األول

:الؽظ رفش اؾمي Mark ؼزذح ػ اغذي Data Block رى ف١ اـFormثؼذ ئؾبء

، Mark_Sub ، سل ابدح Mark_Stu ، سل ايبت Mark_Lvl ، سل اغز Mark_Secسل امغ )

: ب ٠غزعت ( Mark_Ft ، ابئ Mark_Ht ، اقف Mark_Yjأػبي اغخ

: خقبئق وب ٠ Item رف١ش ؽم ئع اغز ره خالي ئؾبء ػقش عذ٠ذ ( أال

Property Value

1 Name Lvl_Name

2 Database Item No

3 Canvas Canvas2

4 Prompt ئع اغز

Record)ؽ١ش م ثزؾذ٠ذ اـ Static (ئعزبر١ى١خ) صبثزخ Record Group ؾئ غػخ عغ (ثاا

Group) اعد ف ؽبؽخ اـ(Object Navigator) صCreate زظش اؾبؽخ ازب١خ فخزبس خ١بسStatic

Values ص نغو ػ اضس OK خالب زظش ؽبؽخ ئدخبي اج١ببد اضبثزخ از :

Page 52: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

52

أب ى Data Type ف Number ؾذد ػ Column Names ف LVL_NOذخ ئع اؾم )

Length[1,2,3,4] ف ؾذد رمبئ١ب ألسلب ص ذخ ع١غ ام١ اىخ زا اؾم Column

Values ) ،

:ؽ١ش ىشس ره غ ؽم ئع اغز

ى Data Type ف Cheterar ؾذد ػ Column Names ف LVL_NAMEذخ ئع اؾم )

Length 30األي,اضب,اضبش, اشاثغ[ ص ذخ ع١غ ام١ اىخ زا اؾم[ Column

Values ) غ عة أ ٠ى ئدخبي ،

(اؾمي)ام١ زبظش ف ع١غ األػذح

ف سل اغز ٠مبثب 1فضال ام١خ

ف ئع اغز ، األهام١خ

ثشغ١ب (Record Group)اـغ زا

رؾذ٠ذ ل١خ F4 خالي انغو ػ

RG_LVL_STATIC ثـNameاخبف١خ

ؼزذح ػ ع LOVs ؾئ لبئخ شوجخ (ثاىثا

Record Group (ئعزبر١ى١خ)صبثزخ [ اغبثك [Static ؽ١ش

Object)اعد ف ؽبؽخ اـ (LOVs)م ثزؾذ٠ذ اـ

Navigator) ص

Create زظش ؽبؽخ

رؾذ٠ذ ىش٠مخ اإلؾبء

ثاعزخذا

اؼبظ أ ٠ذ٠ب

، زى اخقبئـ Build a new LOV manually (اخ١بس ا١ذ)فخزبس

: ف١ب وب ٠

Property Value

1 Name LOV_LVL_STATIC

2 Title أسلب اغز٠بد غ أعبئب

3 Record Group RG_LVL_STATIC

Page 53: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

53

4 Column Mapping Properties More…

5 Filter before Display Yes

6 Automatic Display Yes

7 Automatic Skip Yes

: خالب زظش اؾبؽخ اغبسح از

MARK.MARK_LVL Return ؾذد ئسعبػ ئ ؽم Column Names ف LVL_NOذخ ئع اؾم )

Item ػ ىشق اضس Browse… أصبء ػشك ام١ ف 50 ػشم LOVs ػا زا اؾم سل اغز

Column Title ) ؽ١ش ، ىشس ره غ ؽم ئع اغز:

MARK.LVL_NAME ؾذد ئسعبػ ئ ؽم Column Names ف LVL_NAMEذخ ئع اؾم )

Return Item ػ ىشق اضس Browse… أصبء ػشك ام١ ف 100 ػشم LOVs ػا زا اؾم ئع

( . Column Titleاغز

:وب ٠ MARK_LVLزقو سق اىغر ؾذد ظسب ػ LOVsاـ ثؼذ رق١ (ساتؼا

Property Value

List of Values 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ػ ؽم

Page 54: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

54

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)ؽ١ش م ثزؾذ٠ذ اـ Dynamic (د٠ب١ى١خ) زغ١شح Record Groupؾئ غػخ عغ (ثاىثا

Group) اعد ف ؽبؽخ اـ(Object Navigator) صCreate زظش اؾبؽخ ازب١خ فخزبس خ١بسBased

on the Query Below… ىزت اإلعزؼال ص نغو ػ اضس OK

select Sec_Name , to_char(Sec_No) from section ;

ئر م ثغت اج١ببد اخبفخ ثاع

ثؼذ رؾ٠ سل )امغ سل امغ

ره ١ى ()to_charئ ـ ػجش اذاخ

لبدسا ػ Record Groupغػخ عغ

، ٠غت أ٠نأ أ غؼ ع (اإلعزؼال

زز ػ١خ Charاج١ببد شل امغ

ازيبثك ،

Property Value

Data Type Char

ثشغ١ب (Record Group)اـغ زا

رؾذ٠ذ ل١خ F4 خالي انغو ػ

RG_SEC_DYNAMIC ثـNameاخبف١خ

.

] Dynamic (د٠ب١ى١خ)زغ١شح [ اغبثك Record Group ؼزذح ػ ع LOVs ؾئ لبئخ شوجخ (ثاىثا

ص (Object Navigator)اعد ف ؽبؽخ اـ (LOVs)ؽ١ش م ثزؾذ٠ذ اـ

Create زظش ؽبؽخ رؾذ٠ذ ىش٠مخ اإلؾبء ثاعزخذا اؼبظ أ

(خ١بس اؼبظ)٠ذ٠ب فخزبس

Page 55: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

55

Use the LOV Wizard ،

از رم ثبغإاي ػ رفش ئؽذ زيجبرب غػخ عغ LOVsزظش اؾبؽخ األ ف ؼبظ

Record Group ف :

، رش٠ذ ئؾبء غػخ عغ عذ٠ذح رؼزذ ػ اإلعزؼال ٠عذ غػخ عغ ؾئخ غجمب. ، ث ؼغط RG_SEC_DYNAMIC ا تاىرسذذ ]اؾئخ غجمب[زاىا عخراس اىخاس اىثا )

(اىراى

لذ رزغبءي برا غذ اؾبؽخ ازشؽ١ج١خ وب اؼبدح ف

اغجت ف ره ٠ؼد ئ ػذ رؾ١يب فارا Wizardsثم١خ

: ( خالي لبئخ األداد)أسدد ره فم ثبخياد ازب١خ

Tools Preference… Wizard

LOV Wizard Welcome Page

: ص رظش ؽبؽخ رخجشن ثأه

رش٠ذ ازؼذ٠ ػ غػخ عغ اؾئخRecord Group ، رش٠ذ ئؾبء غػخ عغ عذ٠ذح . (زاىا عخراس اىخاس األه ث ؼغط اىراى)

SQL Query ؽ١ش ٠ىه رؾش٠شب جبؽشح ف Record Groupزظش ثؼذب ؽبؽخ رأو١ذ غػخ اغغ

Statement أ ثبءب عذ٠ذ خالي ثشبظ ثب اإلعزؼال Build SQL Query… أ ئعز١شادب ف

Import SQL Query… بن أ٠نب صس اإلرقبي ئ رى زقال ثبمبػذح Connect… صس فؾـ اق١غخ از

(زاىا ؼغط اىراى) …Check Syntax (ال رنف افبفخ امىخ)رذ وزبثزب

Page 56: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

56

ب از رش٠ذ Record Groupثؼذب رظش ؽبؽخ زخزبس اؾمي از عجزب ئعزؼال غػخ عغ

( ث ؼغط اىراى <<زاىا عخراس خية اىنو اىضس ) LOVsعج ئظبس ػ امبئخ اشوجخ

ص رظش أ ؽبؽخ ؽبؽبد اؼبظ ؽبؽخ رؾذ٠ذ اؼب٠ اظبشح ؾمي ف امبئخ اشوجخ

Title اؾغ اخبؿ ثبؼشك Width األ سثو اؾمي از عجذ ثبإلعزؼال ئسعبػب ؾمي اشاد

ئى SEC_NAMEزاىا عق تاسخاع ) …Lock Up Return Itemئسعبع اج١ببد ئ١ب

MARK.SEC_NAME & اىسقوICRGGQ_0 ئى MARK.MARK_SECث ؼغط اىراى )

width وزه ػشك امبئخ Titleلبئخ اشوجخ زظش ثؼذ ره ؽبؽخ ؾذد خالب اؼا اؼب

رؾذ٠ذ ب ئرا وذ رش٠ذ ئظبس امبئخ اشوجخ ف ئؽذاص١بد أربر١ى١خ أ رم ثزؾذ٠ذ heightئسرفبػب

زاىا عؼط اىؼا ), اإلؽذاص١بد ٠ذ٠ب

ث ؼغط أسلب األلغب غ أعبئب

(اىراى

:زؾذ٠ذ ئىب١بد ص رظش ؽبؽخ

، ػذد اقفف اظبشح ئىب١خ رؾذ٠ش اج١ببد لج ػشمب ف

LOVs، ئىب١خ افزشح غزخذ ػذ ثذا٠خ

.LOVsػ

(زاىا ؼغط اىراى)

زظش ؽبؽخ ازأو١ذ ػ ؽمي اإلسعبع

زأؽ١ش ػ١ب

( ث ؼغط اىراى <<زاىا عخراس خية اىنو اىضس )

(ؼغط اح)ف١ز ثزه ؼبظ امبئخ اشوجخ

Page 57: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

57

Page 58: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

58

Name رؾذ٠ذ ل١خ اخبف١خ F4 ثشغ١ب خالي انغو ػ (LOVs)اـغ زا

. LOV_LVL_STATICثـ

الزظ أ قذ ذ خاله اىؼاىح ا ي :

خبف١خTitle ف اـأسقا األقغا غ أعائا ام١خ LOVs، خبف١خRecord Group ام١خ RG_SEC_DYNAMIC ف اـLOVs، خبف١خColumn Mapping Propertiesف اـ LOVs ؾمي اؼ١خ ثزه ئسخاع اىقر . ئػيبء خبف١خList of Values ام١خLOV_SEC_DYNAMIC ف اـMARK_SEC،

رغب SEC_NAME ئعؼ ل١خ اخبف١خ ف اـ شذززغت ظس امبئخ ) SEC_NAMEوزه ف اـ

NULL . )

=======================================================================

=========

LOVs (List Of Values) ػذ LOVsرغزخذ ػذب رى اغغالد وض١شح ؽ١ش رظش : Filter before Displayاىخاطح .1

.Yesازف١ز عبضح إلدخبي عضء ل١ اؾم اشاد ئظبس ره ػذ عؼ اخبف١خ : Automatic Displayاىخاطح .2

ره ضال MARK_SEC جبؽشح ػذ في اإؽش ئ اؾم LOVs فا ع١ز ئظبس اـYesئرا عؼبب

:ثذ

انغو ػF9 ، إلظبس امبئخ اشوجخ وزبثخ ؽفشح قذس٠خCode وب ف زا اضبي :

(Trigger : WHEN_NEW_ITEM_INSTANCE)

Declare

J Boolean;

Begin

J := Show_Lov('LOV_SEC_DYNAMIC');

End ;

ثؼذ LOVs فا اإؽش ٠زم ؾم از ثؼذ ؽم اـYesئرا وبذ : Automatic Skipاىخاطح .3 .(ثبيجغ اض ػب ف لاػذ اج١ببد) ٠ظ ف فظ اؾم ثؼذ اإلخز١بس ، Noاإلخز١بس ئرا وبذ

=======================================================================

=========

الزظاخ اح :

a) ٠عذ رؾبث ث١LOVs List Itemى رز١ض اـ LOVs ثعد اخبف١خ Find .از رغ ئ٠غبد ل١خ ؼ١خ ئرا وبذ ام١ وض١شح

b) ٠فن ئعزخذا اـList Item ئرا وبذ ام١ صبثزخ Static Values . Dynamic Valuesئرا وبذ ام١ زغ١شح LOVsث١ب ٠فن ئعزخذا اـ

c) ـ ٠م ثغت اج١ببد لبػذح اج١ببد Query ره ثغجت أ اـQuery أعشع اـStatic Valuesا

Databaseػبدح ب رى ػ اـ Server ف اؾجىخ .

Page 59: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

59

احملاضرة الثامنة

Radio Group & Radio Button ، (ئخ... اغظ ، اؾبخ اإلعزبػ١خ ) اؼ أ ػبفش اإلخز١بس افشد ال رى ئال م١ صبثزخ ض

ؽز ٠ى ئخز١بس خ١بس اؽذ و غػخ ب ف Containerز اؼبفش ٠غت أ رغؼب ؽب٠خ

Oracle

: أال ص ئؾبء اؼبفش ازبثؼخ ب أ أ Containerلذ ر عت رق١ اؾب٠خ

Radio Buttons أال ث اىؼاطش اىراتؼح ىا Radio Gruopر ئشاء

Stu

Form

ؼ ره ال ثذ أال ئمبفخ زا اؾم

: وبزب SQLثأش

SQL> alter Table Stu

Add(Stu_Sex number(1));

ئرا لذ ثاؾبء اؾم ثؼذ عت اج١ببد )

Data Block فم ثزؾذ٠ذ اـ Formئ اـ

(STU) ص ئمش ػ صس افأسح األ٠ زخزبس

Data Block Wizard ازج٠ت

Table ص ئمغو اضس Refresh ثؼذب ل ثغت اؼقش STU_SEX اح ص ئمغو )

لذ STU_SEX الؽظ أ اؾم STU ؼزذح ػ اغذي Data Block رى ف١ اـFormأ م ثاؾبء

Radio Group ز١ب ئ Radio Buttons ، غؼ ثؾى Text Itemأخز اؾى اإلفزشام ؼبفش

: م ثزؼذ٠ ل١ اخقبئـ ازب١خ

Property Value

1 Name STU_SEX

2 Item Type Radio Group

3 Mapping of Other Values 1

Page 60: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

60

4 Initial Value 1

، Radio Group أل لذ ر رى٠ Layout Editorالؽظ ثؼذ ره ئخزفبء اؾم ؽبؽخ ازق١

Radio Group (STU_SEX) ؽز ا٢ زه م ثزؾذ٠ذ اـ٠Radio Buttonsزى أ ػبفش ئخز١بس

Radio Buttons ص Create ؼقش٠ خقبئقب وب٢ر :

، Canvas خبف١خ Canvas2 أػي ام١خ Radio Groupئرا ٠ز ظس اؼقش٠ فارت ئ خقبئـ

Textالؽظ ثؼذب رف١ز اجشبظ ظس ام١ ػ ؽى ئخز١بساد فشدح ثذال ام١ اذخخ وب ف

Item .

Property Value

1 Name MALE

2 Label روش

3 Radio Button Value 1

Property Value

1 Name FEMALE

2 Label أض

3 Radio Button Value 0

Page 61: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

61

Check Box ، (ئخ... اغغ١خ ، اؾبخ اإلعزبػ١خ ) اؼ أ ػبفش اإلخز١بس ازؼذد ال رى ئال م١ صبثزخ ض

. اى ئخز١بس أوضش خ١بس اؽذ

Stu

Form

ؼ ره ال ثذ أال ئمبفخ زا اؾم

: وبزب SQLثأش

SQL> alter Table Stu

Add(Stu_Nat number(1));

ئرا لذ ثاؾبء اؾم ثؼذ عت اج١ببد )

Data Block فم ثزؾذ٠ذ اـ Formئ اـ

(STU) ص ئمش ػ صس افأسح األ٠ زخزبس

Data Block Wizard ازج٠ت

Table ص ئمغو اضس Refresh ثؼذب ل ثغت اؼقش STU_NAT اح ص ئمغو )

لذ STU_NAT الؽظ أ اؾم STU ؼزذح ػ اغذي Data Block رى ف١ اـFormأ م ثاؾبء

م ثزؼذ٠ ل١ اخقبئـ Check Box ، غؼ ثؾى Text Itemأخز اؾى اإلفزشام ؼبفش

: ازب١خ

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

Page 62: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

62

، Check Boxالؽظ ثؼذ ره أ لذ ر رى٠

. Text Itemوزه رف١ز اجشبظ ظس ام١ ػ ؽى ئخز١بساد زؼذدح ثذال ام١ اذخخ وب ف

الزظ ػو مو:

خبف١خValue when Checked از عزم ثاػيبء اإلخز١بس اؾو

ئرا وبذ ام١خ غب٠خ ؾم STU_NAT ،

خبف١خValue when Unchecked از عزم ثاػيبء اإلخز١بس اغ١ش ؾو ئرا وبذ ام١خ غ١ش غب٠خ

، STU_NATام١خ ؾم

خبف١خCheck Box Mapping of Other Values از عزم ثاػيبء

أ اإلخز١بس Checkedاخ١بس اؾو ؽغت ) Uncheckedغ١ش اؾو

ئرا عذد ل١خ ف (رؾذ٠ذ اجشظ غب٠شح ب روش ف STU_NATؽم

. اخبف١ز١ اغبثمز١

Page 63: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

63

Canvases ، Itemsأ األسم١خ از رزمغ ػ١ب اؼبفش (اسلخ)امبؽ١خ رؼ اخف١خ

:ب ػذح أاع

1. Content : ػ غبؽخ ابفزح از رؾز٠ب اع اإلفزشام ؽ١ش ٠ؾأ ػذ ئؾبء . Window ٠غت رؼش٠ف اؽذ زا اع ػ األل ى بفزح Formارط

2. Stacked : ٠ظش فق اـContent Canvas ٠ى ازؾى ثؾغ وزه ئظبس ئخفبؤ رمبئ١ب . 3. Vertical Toolbar : رظش ثؾى ؽش٠و أداد ػد .4. Horizontal Toolbar : رظش ثؾى ؽش٠و أداد أفم .5. Tab : ٠ظش ثؾى ففؾبد ؾزبط ف ثؼل األؽ١ب ؾقش اؼبفش ف غػبد.

----------------------------------------------------------------------------------------------------------------------

--------------

Content الؽظ أ ع١م ثاؾبء اـ STU اغذي Data Block عذ٠ذ ٠ؼزذ ػ Formم ثاؾبء

Canvas (ئفزشام١ب) عزظش اؼبفش ػ١ ئع اـCanvas (Canvas2) ١ى رغ١ز اجشغ١خ

CANVAS_CONTENET،

اعد ف ؽبؽخ (Canvases)ثؼذ ره م ثزؾذ٠ذ اـ

زؾى ثم١ F4ص نغو Createص (Object Navigator)اـ

: اخقبئـ ازب١خ

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

( Data Block)ثزؾذ٠ذ اـ ره Canvas ئ داخ زا اـ Section ص م ا٢ ثغت ث١ببد األلغب

زجغ فظ Data Block Wizardص ثضس افأسح األ٠ خزبس (Object Navigator)اعد ف ؽبؽخ اـ

، الؽظ ثؼذب رمغ CANVAS_STACKED_SECاخياد اؼدح ئال خيح رمغ اؼبفش فخزبس اـ

. Canvasاؼبفش ػ زا اـ

Page 64: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

64

ثفظ اخياد اغبثمخ ؾئ اـ

Canvas اخبؿ ثـج١ببد اغز٠بد غ

: ئخزالف

a) ازغ١خ اجشغ١خCANVAS_STACKED_LVL ،

b) عت وزخ اج١ببدLvl ، c) رمغ اؼبفش ػ زا اـCanvas

. اغذ٠ذ م ا٢ ثاؾبء ػقش٠ ع

Push_Buttonػ اـ Content Canvas

غ شاػبح ػذ مؼب ف أىخ

اشاد ئظبس ، Canvasesاـ

( ما سد رىل عاتقاContent ع Canvas رػغ ػي اىـ Satcked ع Canvasأل اىـ )

،

( األقغا) ضس األي Labelره أع ازؾى ثاظبس أؽذ امبؽ١ز١ أ ئخفبؤب ، ؽب١ب غؼ خبف١خ

لج وزبثخ اؾفشح اخبفخ ثى ب فاب م ئؽز١بىب ثاخفبءب ػذ ثذا٠خ (اىغراخ)ضس اضب

: رؾ١ اجشبظ ؾ١ ايت وبزب

(Trigger : WHEN_NEW_FORM_INSTANCE)

Hide_View('CANVAS_STACKED_SEC') ;

Hide_View('CANVAS_STACKED_LVL') ;

ص ىزت اجشغخ اخبفخ ثى صس ب

: فف صس األلغب ىزت

(Trigger :

WHEN_BUTTON_PRESSED)

Hide_View('CANVAS_STACKED_LV

L') ;

Show_View('CANVAS_STACKED_SE

C') ;

Go_Block('Section');

Execute_Query;

: ف صس اغز٠بد ىزت

(Trigger : WHEN_BUTTON_PRESSED)

Hide_View('CANVAS_STACKED_SEC') ;

Show_View('CANVAS_STACKED_LVL') ;

Page 65: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

65

Go_Block('Lvl');

Execute_Query;

. ازبثغ ص غت اج١ببد ثبإلعزؼال Data Block از ش٠ذ زت ئ Canvasثبيجغ ثؼذ ئظبس اـ

ػ ؽش٠و األداد اؼد وزه ؽش٠و (أصساس) ثؼذ ئغبص ز اشؽخ ش٠ذ ئؾبء ػبفش رؾى ا

Non_DBاىر فؼو ئشاؤا ف مريح تااخ غش ؼرذج ػي قاػذج اىثااخ [األداد األفم

Object)اعد ف ؽبؽخ اـ (Canvases)ثزؾذ٠ذ اـ ثبيجغ ٠ز زا أ ران ئال STU خبفخ ثبغذي ]

Navigator) صCreate شر١ غ شاػبح اخقبئـ ازب١خ :

غؼ أصساس ؽش٠و األداد األفم (خشج- ئعرؼال –زفظ )فضال غؼ أصساس ؽش٠و األداد اؼد

اخبؿ ثى صس ثبإلع اظبش ػ١ ىزت Labelثؼذ رغ١١ش ( األخش– اىغاتق – اىراى –األه )

: ثبألصساس وبزب WHEN_BUTTON_PRESSEDاؾفشح اخبفخ ف ؽذس

(PUSH_BUTTON_PREVIOUS)

Go_Block('Stu') ;

Previous_Record ;

(PUSH_BUTTON_LAST)

Go_Block('Stu') ;

Last_Record ;

(PUSH_BUTTON_FIRST)

Go_Block('Stu') ;

First_Record ;

(PUSH_BUTTON_NEXT)

Go_Block('Stu') ;

Next_Record ;

(PUSH_BUTTON_SAVE)

Commit_Form ;

(PUSH_BUTTON_QUERY)

Go_Block('Stu') ;

Execute_Query ;

Property Value

1 Name CANVAS_VERTICAL

2 Canvas Type Vertical Toolbar

3 Width 50

Property Value

1 Name CANVAS_HORIZONTAL

2 Canvas Type Vertical Toolbar

3 Height 50

Page 66: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

66

(PUSH_BUTTON_EXIT)

Exit_Form ;

اعد ف (Canvases)رؾذ٠ذ اـ ف زا اع ٠ز أال Tab اع Canvasاع األخ١ش أاع اـ

: زؾى ثم١ اخقبئـ ازب١خ F4ص نغو Createص (Object Navigator)ؽبؽخ اـ

Property Value

1 Name CANVAS_TAB

2 Canvas Type Tab

3 Tab Attachment Edge Top

زه ئرا (م غػخ) اى عؼ ٠زى ػذح ففؾبد الؽظ ئؾبء صالصخ ففؾبد ئفزشام١خ

(Object Navigator)اعد ف ؽبؽخ اـ (Canvases)أسدب ئؾبء ففؾخ عذ٠ذح فم ثزؾذ٠ذ اـ

- ازغ١خ ثشغ١خ [ زؾى ثم١ أ اخقبئـ ض F4ص نغو Createص (Tab Pages)ؾذد اـ

.]اإلظبس اإلخفبء - اؼا - ازى١ ػذ ازى١

Property

1 Name

2 Enabled

3 Label

4 Visible

Page 67: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

67

ص م ا٢ ثغت ث١ببد األلغب

Section ئ داخ زا اـ Canvas ره

اعد ف (Data Block)ثزؾذ٠ذ اـ

ص ثضس (Object Navigator)ؽبؽخ اـ

Data Block Wizardافأسح األ٠ خزبس

زجغ فظ اخياد اؼدح ئال خيح

، CANVAS_TABرمغ اؼبفش فخزبس اـ

ثب أب ػجبسح ػ ففؾبد ف١غت أ ؾذد

Tab Pages ثبم١خ PAGE_SECTION

( اإلع اجشغ ز اقفؾخ)

الؽظ ثؼذب رمغ اؼبفش ػ زا اـ

Canvas .

اخبفخ ثجم١خ اغذاي ئ اقفؾخ اؾئخ غجمب ػ اـ Data Blockثفظ اخياد اغبثمخ غت اـ

Tab Canvas ثب ٠بعجب . و

عذ٠ذح Canvas لذ ٠ز عجب أوضش شح ػ ئػزجبس عة رمغ ػبفشب ػ Data Blockالؽظ أ اـ

Data Block زا ال ٠ؼ أ اـ SECTION1 ئ SECTION ضال Data Blockزه لذ ٠زغ١ش ئع اـ

١غذ عدح ف لبػذح اج١ببد فز أعبء ئخز١بس٠خ ى ا أ رى SECTION1اغبح

: اخقبئـ ب وبزب

Property Value

1 Database Data Block Yes

2 Query Data Source Name SECTION

: ٠غت أ رى اخقبئـ ب وبزب Data Blockوزه ؽمي ز اـ

DB ذؼرذ ػي قاػذج اىثااخ Data Blockتؼشفرا ىز اىخظائض ظثر اىن ئشاء

ذا

( أعب ؽز سد ز افمشحData Blockزا ب زؾذس ػ ف دسط عت ث١ببد اـ )

=======================================================================

=========

Property Value

1 Database Item Yes

2 Column Name SEC_NAME

Property Value

1 Database Item Yes

2 Column Name SEC_NO

Page 68: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

68

الزظاخ اح :

اى ازؾى ثخقبئـ اـ Canvas ثشغ١ب خالي ازؼ١خ ازب١خ :

Set_Canvas_Property( 'اىقح , ئع اىخاطح , 'ئع اىقاشح ) ;

٠ى ازؾى ثخقبئـ اقفؾبد ثشغ١ب خبفخ ئرا أسدب غ ئظبس ففؾخ ب ػ غزخذ ؼ١ ره: خالي ازؼ١خ ازب١خ

Set_Tab_Page_Property( 'اىقح , ئع اىخاطح , 'ئع اىظفسح ) ;

: ضبي

Set_Tab_Page_Property( 'PAGE_MARK' , Visible , Property_False );

Tabف ز اىرؼيح ئشاسج ئى أ ال ن أ رنشس ئع طفسح ا زر ئرا ماد ف

Canvasخذذج

ئعزذػبء اـData Block ػ Canvas أخش ع١ظشب ؽز ئرا ىزت أش اإلظبس ػ اـ Canvas .

ػذ ازف١ز رزمغ أالToolbar Canvas ص رأر ثم١خ اؼبفش ف اغضء ازجم ابفزح زه ٠غت .Horizontal Toolbar ف اـ Height وزه اـ Vertical Toolbar ف اـ Widthشاػبح

ئرا أؾئذ أ ػقشItem ف Canvas ؼ١خ أسدد مب ئ Canvas أخش فب ػ١ه ع رغ١١ش . از رش٠ذ Canvas زه اؼقش ثغؼب رؾ١ش ئ اـ Canvasخبف١خ اـ

اى سع أ٠مخ Icon ػ و صس Push_Button ثؾ١ش ثؼذ رؼذ٠ خقبئق: a. رؼي ام١خYes خبف١خ Iconic b. ٠ؼي ئع ف األ٠مخ ر اإلزذادico *. خبف١خIcon Filename .

خبف١خ Tab Attachment Edge رؼ ػ رؾذ٠ذ الغ از عزظش ف١ ازج٠جبد اخبفخ ثذخي . (Top _ Bottom _ Left _ Right _ Start _ End) رزه ام١ اقفؾبد

Page 69: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

69

احملاضرة التاسعة

Report Builder : ، ض ب لب ثىزبثخ اجشاظ ازؾى ثى ػبفشب (User)أداح رغزخذ جبء ازمبس٠ش از ٠غزخذب اـ

ثقالؽ١بد اغزخذ١ ئزمبء أفن ااعبد األعب١ت ىزبثخ اجشاظ أداء اؼ١بد اخزفخ ػ١ب فا

لذ ، Report Builderاضشح از ٠غت أ ٠غ١ب اجشبظ ازمبس٠ش از ال ثذ أ رى ثجشبظ اـ

:روشب عبثمب أ ػذ ػ١ز

ؽفظ ازمش٠شSave ٠زذ ف قذسSource ر ئزذاد *.RDF ٠ؾغ ثشبظ Report Builder ازشعخCompile ٠زذ ف رف١ز Execute ر ئزذاد *.REP ٠ؾغ ثشبظ Reports Runtime .

=======================================================================

=========

Report Builder Start Programs Oracle Reports

6i-orantr Report Builder

فزظش أال ؽبؽخ رشؽ١ج١خ ٠ى خالب

رؾذ٠ذ ب ئرا وب اية اجذء ثبزق١ أ

:فبزق١ صالس خ١بساد ثبزؼ١ ،

، ئعزخذا ؼبظ ازمبس٠ش ، ثبء رمش٠ش عذ٠ذ ٠ذ٠ب ، فزؼ رمش٠ش عد غجمب

:زؼ١ خ١بسا ب

(فب١)ػشك اغخ اغش٠ؼخ ، (ب)ئعزىؾبف وشد از١ؾبد.

زاىا عخراس اىثذء تاىرظ تاعرخذا ؼاىح اىرقاسش ث )

( OKؼغط

فؼغط )زظش ثؼذ ره ؽبؽخ رشؽ١ج١خ خبفخ ثؼبظ ازمبس٠ش

(اىراى

ص رظش ؽبؽخ ؼي ف١ب اؼا اؼب از ع١ظش ػ

: ازمش٠ش وزه م ثزؾذ٠ذ ع ازمش٠ش

، عذ ، ٠ؾج ارط ، ػا ثش٠ذ

، خيبة رط ، رغ١غ ١غبس ، رغ١غ ألػ ، قففخ قففخ غ غػخ.

Page 70: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

70

(زاىا عخراس عنرة اىؼا ذقشش تااخ اىطالب خراس ع اىرقشش خذى ث ؼغط اىراى)

ص رظش ؽبؽخ رؾذ٠ذ ع اإلعزؼال

:

عخSQL ،

ئعزؼالExpress ( ػذب ٠ى ػ( . Server/Clientؽجىخ

زاىا عخراس ع اإلعرؼال )

(ث ؼغط اىراى SQLخيح

ؽ١ش ىزت خالب عخ اإلعزؼال از ثبءا ػ١ب عزظش اج١ببد ف ازمش٠ش زظش ثؼذب ؽبؽخ

٠SQL Queryىه رؾش٠شب جبؽشح ف

Statement أ ثبءب عذ٠ذ خالي

…Build SQL Queryثشبظ ثب اإلعزؼال

…Import SQL Queryأ ئعز١شادب ف

بن أ٠نب صس اإلرقبي ئ رى زقال

…Connectثبمبػذح

زاىا عق تثاء خيح اإلعرؼال خاله اىؼغط )

(...ػي اىثشاح اىظغش تا اإلعرؼال

ث ثؾى فؾ١ؼ (Password)اـ (User)ؽ١ش الثذ اإلسرجبه أال ثمبػذح اج١ببد وزبثخ ئع اـ

زظش اؾبؽخ اخبفخ ثجشبظ ثب اإلعزؼال ب ؽبؽخ ئخز١بس عذاي اىؼغط ػي اىضس طو

م ثبزأؽ١ش أب و ؽم ش٠ذ عج أب ئرا (STUزاىا عرخراس اىدذه )اج١ببد اشاد ازؼب ؼب

أسدب عت ع١غ اؾمي فإؽش ػ اخ١بس ازؼذد أػ اغذي ، الؽظ ػ ؽش٠و األفم جشبظ ثب

:عد األ٠مبد اإلعزؼال

ػذب ش٠ذ ئظبس ز اؾبؽخ شح أخش إلمبفخ عذي آخش ، : ئخراس خذه اىثااخ

Page 71: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

71

ئظاسSQL : ؾبذ خالب رى أش اإلعزؼال.

ؼغط افق ىش ذن خيح )

SQL Queryثاششج ف اإلعرؼال

Statementفؼغط اىراى )

، > ، << ، < فخزبس ب اؾمي اية ازؼب ؼب ثاعيخ األصساس (List)ثبزب رظش اؾمي ف اـ

<<

( ث ؼغط اىراى<<زاىا عخراس )

اؾذ – اؼذ – ازعو –اغع ) از رشغت ثا٠غبدب ض زغاب ئخاىاخ اىسقهزظش ؽبؽخ

ره خالي رؾذ٠ذ اؾم ص مغو اضس از رش٠ذ ريج١ك اؾغبة ( اإلعب– اؾذ األلق –األد

اشاد ئعشائ ػ١ ،

(زاىا ؼغط اىراى)

H ىب W وزه ػشمب Promptص رظش ؽبؽخ رىب رغ١١ش اؼب٠ اظبشح ألعبء اؾمي

(زاىا ؼغط اىراى)

Page 72: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

72

از Templateزظش ؽبؽخ رؾذ٠ذ امبت

: رش٠ذ ػشك ازمش٠ش ث ف١ىه أ رخزبس

، لبت ؾذد غجمب ، رؾذ٠ذ لبت ف خض ػ عبص اىج١رش اخبؿ ثه

(زاىا دؼي ػي اىقاىة اإلفرشاػ ث ػغط اىراى). ظس ازمش٠ش ثذ أ لبت

ثغبػ ، (اخيو) زؼ ػ ئرب ؼبظ ازق١ congratulationsثؼذب رظش ؽبؽخ ازب ازجش٠ىبد

.Report Builderتزىل ن قذ قا ترشغو (فؼغط اح)

=======================================================================

=========

Page 73: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

73

الزظاخ اح :

٠ز رؾغ١ ازمش٠ش خالي عت اج١ببد اـDatabase عاء أوبذ لبػذح اج١ببد عدح ػ اـ

Server أ ػ اـ Client ( الزظ ا ذشط اىـClient Activity اىز ؼ خية اىثااخ ، (Clientقاػذج اىثااخ اىخدج ػي اىـ

ف ؽبخ ػذ ظس اخو ثبؼشث ل ثزغ١١ش اخو ره ثبنغو ػCtrl+A زؾذ٠ذ اى ص ، 12 ؽغ خو ١ى Arial(Arabic)ؽش٠و األداد األفم ل ثاخز١بس ع اخو ١ى

ره ثاخز١بسب األش (ضال ؽؼبس اغبؼخ)ثبإلىب رغ١١ش اقسح اظبشح ف زا امبت ثقسح أخش

. يف امبئخطسج ئعرشاد

Page 74: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

74

Report

Builder1. Object Navigator:

وزه اىبئبد ٠Reportؾز ػبفش ازمش٠ش وبخ

Objects اى اؾقي ػ ز اؾبؽخ ،

خزبس Toolsأ امبئخ F3خالي انغو ػ اضس

. Object Navigatorاألش

2. Data Model: رط اج١ببد عأر ئ ؽشؽ ثبزفق١ ، ثاىبه

Form ف ثشبظ Data Block Wizardئػزجبس ؽج١ اـ

Builder .

3. Layout Model: Form ف ثشبظ Layout Wizardرط اغك عأر ئ ؽشؽ ثبزفق١ ، ثاىبه ئػزجبس ؽج١ اـ

Builder .

4. Property Palette:

، اى اؾقي ػ ز اؾبؽخ خالي انغو Objectsرؾز خقبئـ اؼبفش اىبئبد

. Property Palette خزبس األش Tools أ امبئخ F4ػ اضس

الزظح اح :

. Report Editor ب ى ب ٠غ ثبـ Layout Model رط اغك Data Modelرط اج١ببد

=======================================================================

=========

Object

Navigator

Reports

اإلفزشام ٠أخز ئع ((Reportئع اـ : ] MODULE1زاىا [ .1

اجشبظ دب ،2. Live Preview: ، ؼب٠خ ازمش٠ش لج ايجبػخ 3. Data Model: رط اج١ببد عأر ئ ؽشؽ ثبزفق١، 4. Layout Model: ، رط اغك عأر ئ ؽشؽ ثبزفق١

5. Parameter Form: رط اؼبالد ػجبسح ػForm ٠ظش لج ازمش٠ش ثؼبالد ؾئخ اغزخذ أ أب ؾئخ

. اظب 6. Reports Trigger: ػجبسح ػ (, PL/SQL (SQL ٠فز ػذ

:ؽذس ؼ١ لذ ٠ى ز اؾذس

لج رط اؼبالدBefore Parameter Form ، ثؼذ رط اؼبالدAfter Parameter Form، لج ازمش٠شBefore Report، ث١ ففؾبد ازمش٠شBetween Pages، ثؼذ ازمش٠ش After Report.

7. Programs Units: ئب أ رى Procedure أ Function أ Package ،

Page 75: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

75

8. Attached Libraries: ػجبسح ػ ىزجبد PL/SQL ، Templatesػذب رؾئ رمش٠شا ثؾى لبت

External SQL Queries ئعزؼالبد SQL ، اخبسع١خ

PL/SQL Libraries ػجبسح ػ ىزجبد PL/SQL ،

Debug Actions ، زم١ؼ

Stack، ئعزخذا اىذط

Built–in Packagesػجبسح ػ اؾض اذغخ غ اـ (Oracle) ،

Database Objects ؽ١ش رم ثؼشك ع١غ غزخذ لبػذح اج١ببد .

=======================================================================

=========

الزظاخ اح :

أصبء ػ١خ اؾفظFile Save رظش ؽبؽخ خ١بساد اؾفظاز خالب ٠ىه رؾذ٠ذ ئرا ب وذ رش٠ذ اؾفظ ف

وزه رش٠ذ اؾفظ (اإلفزشام)لبػذح اج١ببد أ ف ف

أ امات أ اإلعزؼالبد أ (اإلفزشام)ؼشك ازمبس٠ش أ ؽفظ اى ، PL/SQLاىزجبد ازبثؼخ ـ

زاىا ؼغط افق ىر زفظ اىرقشش ػي يف سذد )

(غاس

ثفظ ااي رظش ؽبؽخ ؽج١خ أصبء ػ١خ افزؼOpen . زمش٠ش ب

Page 76: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

76

Data Model Object)اعد ف ؽبؽخ اـ (Data Model)ؽ١ش م ثزؾذ٠ذ اـ

Navigator) نغوF2 ؽب١ب )زظش بفزح ف١ب اإلعزؼالبد اعدح زمش٠ش

Q_1) ئرا مشب ػ١ب مشا ضدعب ٠ظش اإلعزؼال اشرجو ثغػخ

اؾمي

زاعذح ػ

ؽى غػخ

Group .

Data Model

a System Parameters ؾذد ؼب اظب ص نغو )ؽ١ش ٠ز ازؼب ؼب ػ ىش٠ك اخقبئـ اخبفخ ى ؼب ظب

: ؼبالد اظب Initial Valueخبفخ خبف١خ ام١خ اإلثزذائ١خ (F4ػ

: Backgroundاىخيفح .1 فاب غؼ ازمش٠ش ٠يجغ ف اخف١خ ث١ب Yesػذب رى (Noئفزشام١ب ل١خ خبف١خ ام١خ اإلثزذائ١خ )

ؾ اف اؼ ف ثشاظ أخش ،

: Copiesػذد اىغخ .2 ، (1ئفزشام١ب ل١خ خبف١خ ام١خ اإلثزذائ١خ )رؼ رؾذ٠ذ ػذد غخ ازمش٠ش ايجع

: Currencyاىؼيح .3 ، ( أ س٠بي Y.R٠ضال ىزت )رؼ ب اشض از رش٠ذ ئمبفز ثغبت األسلب أصبء ىجبػخ ازمش٠ش

:Decimalاىفاطو اىؼششح .4، (. أ اشض ، أ اشض ,ضال ىزت اشض )رؼ رؾذ٠ذ اشض اغزخذ غ افاف اؼؾش٠خ

:DesFormatذغق اىذف .5 أ ف Pdf أ ف htmlفضال رش٠ذ ثؾى ف )رؼ رؾذ٠ذ ع اف از ع١شع ئ١ ازمش٠ش

Rtf ... ئخ) ،

Page 77: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

77

:DesNameئع اىذف .6ف١ذح عذا ئرا رى بن ىبثؼخ شرجيخ ثغبص )رؼ رؾذ٠ذ ئع اف از ع١شع ئ١ ازمش٠ش

، (اىج١رش

:DesTypeع اىذف .7ثبيجغ ايجبػخ )ئخ ...Printer أ ئ ايبثؼخ Screenرؼ رؾذ٠ذ عخ ايجبػخ ئ اؾبؽخ

ئ اؾبؽخ أعشع ايجبػخ ػ ايبثؼخ ثغجت أ ظس اقفؾخ األ ازمش٠ش ػ اؾبؽخ

ال٠غزغشق لزب ى٠ال ث١ب ظس اقفؾخ األ ف سق ايبثؼخ ٠زيت أال رغ١ك ع١غ اقفؾبد لج

، (اجذء ثؼ١خ ايجبػخ

:Modeاىط .8 ، Character أ أؽشف Bitmapرؼ رؾذ٠ذ ب ئرا وذ رش٠ذ أ ٠يجغ رمش٠شن ثؾى فسح

:Orientationاإلذدا .9

، Portrait أ ػد٠خ Landscapeرؼ رؾذ٠ذ ئرغب ىجبػخ ازمش٠ش أفم١خ

:PrintJobظفح اىطاتؼح .10ئفزشام١ب ل١خ خبف١خ ام١خ )رؼ رؾذ٠ذ ش٠ذ ئظبس ؽبؽخ خقبئـ ايبثؼخ لج ازمش٠ش أ ال

، (Yesاإلثزذائ١خ

:Thousandsاالف .11( . 99.999ضال )رؼ رؾذ٠ذ رغ١ك ا٢الف

b. User Parameters

، SQL Query Statementىش٠مخ ئؾبء ؼب غزخذ ٠ؼزذ ئػزبدا و١ب ػ عخ اإلعزؼال

( Data Model)از ق ئ١ب ثزؾذ٠ذ اـ

Object)اعد ف ؽبؽخ اـ

Navigator ) ص :

نغوF2 زظش بفزح ف١بؽب١ب )اإلعزؼالبد اعدح زمش٠ش

Q_1) فمش ػ١ب مشا ضدعب ١ظش اإلعزؼال ،

أ ؾذد اإلعزؼالبدQueries ص . ثفظ ايش٠مخ F2نغو

م ثامبفخ ؼب غزخذ ره ثزؼذ٠

ىزت ف١ب (Q_1ؽب١ب )عخ اإلعزؼال

Where STU_SEC = :SECN ١قجؼ

، ره ثؼذ ظس سعبخ ازأو١ذ از رخجشب ثأ لذ ر ئؾبء SECNذ٠ب ا٢ ؼب غزخذ عذ٠ذ

!!.. ؼب لج اغزخذ ؟

Page 78: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

78

: ؾ اخقبئـ ازب١خ SECNم ا٢ ثزؾذ٠ذ ؼب اغزخذ اغذ٠ذ

ام١خ SECN ؼب اغزخذ Data Typeؽ١ش ؼي ع اج١ببد

Number ١ئ ثم١خ ئثزذائ١خ Initial Value 4 وزه ؾذد ل١خ

خالي اؾبؽخ از ؾذد List of Valueخبف١خ امبئخ اشوجخ

ثاعيزب أ امبئخ اشوجخ رغت ل١ب لبػذح اج١ببد أ د٠ب١ى١خ

ص م ثغت عخ اإلعزؼال ػ ىش٠ك صس ثشبظ (Selectخيح )

ثب اإلعزؼال ثبيش٠مخ امؾخ ذ٠ب غجمب أ وزبثزب جبؽشح ف

، ; Select * From Sectionؾشس ع اإلعزؼال

ا٢ الؽظ ػذ رف١ز ازمش٠ش و١ف رظش ؽبؽخ ئػذاداد ايجبػخ

اغ Sectionؾز٠خ ػ ؼب اغزخذ اخبؿ ثبأللغب

SECN خزبس ام١خ از ش٠ذ ص نغو ، Enter الؽظ رط ،

ؾبذ F2 ػذب م ثزؾذ٠ذ ص نغو Parameter Formاؼبالد

. Formاؾبؽخ از رظش ؼبالد ازمش٠ش وبخ

رى تاىغرثفظ ايش٠مخ ئرا أسدب ئمبفخ ؼب غزخذ خبؿ

: اخياد وبزب

ئمبفخ اؼب ػ ىش٠ك رؼذ٠ عخ اإلعزؼال فـىزت ف١ب .1

Where LVL_SEC = :LVLN ١قجؼ ذ٠ب ا٢ ؼب غزخذ عذ٠ذ

LVLN ،

[ امبئخ اشوجخ از غؼب ئعزبر١ى١خ – ام١خ اإلثزذائ١خ –ع اج١ببد )رؼذ٠ خقبئـ اؼب .2 . ( ػ ىش٠ك وزبثخ ام١خ ص انغو ػ اضس ئمبفخ ىزا ثبغجخ جم١خ ام١]ل١ صبثزخ

Property Value

1 Data Type Number

2 Initial Value 4

3 List of Values More…

Page 79: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

79

System Parameters

... تا رج ؼاو خزبس األش أداخ لبئخ

Tools Parameter Form Builder… ؾبذ

System Parametersعد ع١غ ؼبالد اظب

، User Parametersؼبالد اغزخذ اؾئخ

ظثر )فم ثزؾذ٠ذ اؼب از ش٠ذ ظس

ىزت أب و ؼب اؼا (ظيال أعد اىي

از شغت ف ئظبس فضال ثذال ظس ؼب

غؼ سل SECNثبؼا (امغ)اغزخذ

امغ ، زظش سعبخ رأو١ذ ئخز١بس اؼبالد

Parameter Formؾبذ ف رط اؼبالد

. و١ف رنبف ئ١ ثم١خ اؼبالد از لب ثازمبئب

Page 80: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

80

=======================================================================

=========

ذير :

ئرا أسدب أ ؾئ رمش٠ش ٠ؼ ػ ئ٠غبد ث١ببد سل ئ سل ؼ١ أ ربس٠خ ئ ربس٠خ ؼ١ فا

٠غت ػ١ب أ م ثزؼش٠ف ؼب غزخذ ثاعيخ رؼذ٠ عخ اإلعزؼال ص رؼذ٠ خقبئـ

امبئخ – ام١خ اإلثزذائ١خ –ع اج١ببد )اؼب١

. (اشوجخ

: ؼ ره فاب عم ثب ٠

a. ئمبفخ ؼب غزخذ ػ ىش٠ك رؼذ٠ عخ اإلعزؼالSQL Query Statement And STU_Lvl Between :No1 and :No2ره ثىزبثخ

، ره ثؼذ ظس سعبخ ازأو١ذ از رخجشب ثأ No1 No2 ١قجؼ ذ٠ب ؼب غزخذ عذ٠ذ٠ ب

!!.. لذ ر ئؾبء اؼب١ لج اغزخذ ؟

b. ؼي اؼب األي اؼب اضب اخقبئـ ازب١خ:

ره No2أب اؼب (ئى غر سق) ػجبسح No1أب اؼب ( غر سق)ظش ػجبسح

…Tools Parameter Form Builder ... تا رج ؼاو خزبس األش أداخ خالي لبئخ

User ؼبالد اغزخذ اؾئخ System Parametersؾبذ عد ع١غ ؼبالد اظب

Parameters فىزت أب اؼب ، No1 أب اؼب ( غر سق)اؼاNo2 ئى )اؼا

( . غر سق

Layout Model

Property Value

1 Data Type Number

2 Initial Value 1

Property Value

1 Data Type Number

2 Initial Value 4

Page 81: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

81

زظش اؾبؽخ F2نغو (Object Navigator)اعد ف ؽبؽخ اـ (Layout Model)ؽ١ش م ثزؾذ٠ذ اـ

اؼب٠ Fieldsأ اؾز ػ اؾمي (اىنو اىشئغ ىيرقشش)اؾز٠خ ػ ١ى١خ اؼشك

Label ٠ى أ ززجغ ىبد رط اغك ، Layout Model اـ خالي ؽبؽخ(Object Navigator) أ

ؽ١ش (Layout Model)اـؽش٠و األداد األفم اخبؿ ثؾبؽخ

: األسثغ األ٠مبد ازب١خ رعذ

: Headerقطغ اىشأط .1

رظش أي ففؾخ فمو رزى عغ بؼ ،

: Bodyاىقطغ اىشئغ .2رظش ففؾبد ازمش٠ش رزى عغ بؼ ، ؽ١ش ٠زى

و غػخ ب ث١ببد غ١ش Groupsميغ اغغ غػبد

Repeating Frame وبؼب٠ ث١ببد رىشاس٠خ Frameرىشاس٠خ

وبؾمي ز اغػبد ػذدب شرجو ثع ازمش٠ش فضال

ف اذسط امبد ثار اهلل عزؾذس ػ ز اميخ ( Groupاىدذى ريل دػح ازذج فقط )

. ابخ ثؾى رفق١ أوضش

: Footerقطغ اىإخشج .3رظش آخش ففؾخ فمو رزى عغ بؼ ،

: Marginذسشش اىاش .4 .رظش اؼ ازمش٠ش

=======================================================================

=========

الزظاخ اح :

(ئخ- ... ئع ايبت –سل ايبت )ئرا أسدد ئظبس اؼب٠ ػ و ففؾخ ف ازمش٠ش . ره ف خقبئـ اج١ببد اغ١ش زىشسح Print Job On خبف١خ All Pagesف١غت ئػيبء ام١خ

رزه اخبف١خPrint Job On ام١ ازب١خ: 1. All Pages : ، ٠غؼ ثبظس ف ع١غ اقفؾبد 2. All But First Page : ، ٠غؼ ثبظس ف ع١غ اقفؾبد ػذا اقفؾخ األ 3. All But Last Page : ، ٠غؼ ثبظس ف ع١غ اقفؾبد ػذا اقفؾخ األخ١شح 4. Default : ٠أخز ام١خ اؾذدح ف ؾشس ازغغ١Registry ، 5. First Page : ، ٠غؼ ثبظس ف اقفؾخ األ فمو 6. Last Page : ٠غؼ ثبظس ف اقفؾخ األخ١شح فمو.

ثاىبه وزبثخ ب رش٠ذ ػجبساد رم١ؾ١خ أ رشؽ١ج١خ خالي ميغ اشأط ضال وبزب: ص اىدغ قطغ اىشأط (Object Navigator)اعد ف ؽبؽخ اـ (رج اىغق)ؾذد

ؽش٠و Display Item فم ثاخز١بس اؼقش ١Formظش ارط اخبؿ ثبغغ F2نغو ػ

غ١ش ب ٠ض ئػذاداد ض ع اخو ؽغ (عبؼخ اؼ ازىع١ب فشع رؼض)األداد ىزت

ئخ ، الؽظ ثؼذب ظس ز اقفؾخ ػذ ثذا٠خ رف١ز ازمش٠ش ألب ف عضء اغغ ... األب١خ اخف١خ

. ميغ اشأط

Page 82: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

82

Page 83: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

83

احملاضرة العاشرة

Groups : وبزب لج اخك ثفب١ اغب١غ ٠غت أ ؼشف برا رؼ اإلىبساد ف ازمبس٠ش

:Frameاإلطاس اىغش ذنشاس .1ؽ١ش رظش ف١ اج١ببد اغ١ش رىشاس٠خ وبؼب٠ از ٠ز عت ث١ببرب شح اؽذح أصبء ػ١خ رؾغ١ ازمش٠ش

،

٠شض ثشض اإلىبس امو ،

: Repeating Frameاإلطاس اىرنشاس .2

ؽ١ش رظش ف١ اج١ببد ازىشاس٠خ وبؾمي از ٠ز عت ث١ببرب أوضش شح أصبء ػ١خ رؾغ١ ازمش٠ش ،

ػذد ازىشاس ٠ى ثؼذد )٠شض ثشض اإلىبس امو اؾز ػ ع ره ذالخ ػ ازىشاس ،

. (اغغالد

ثاه ثغط :

ئر ففؾبد ازمش٠ش رزى سأط عغ إخشح ى ب عغ بؼ ، ف عغ ازمش٠ش ٠زى

وبؼب٠ ث١ببد رىشاس٠خ Frame و غػخ ب ث١ببد غ١ش رىشاس٠خ Groupsميغ اغغ غػبد

Repeating Frame وبؾمي ، ٠غت أ ف امبػذح ازب١خ أصبء رق١ رمش٠ش ب :

خاص تا أ أ Repeating Frame ىا ئطاس ذنشاس Groupمو دػح

ػذد اإلطاساخ اىرنشاسح = ػذد اىدػاخ

Page 84: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

84

----------------------------------------------------------------------------------------------------------------------

--------------

–سل ابدح ) ث١ ابدح ايالة اذاسع١ ب ثؾ١ش غت اؾمي 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غرلذ أم١فذ جبؽشح ئ غػخ عذ٠ذح ثاع

. اغػخ األخ١شح

Page 85: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

85

Object)اعد ف ؽبؽخ اـ (رج اىثااخ)زأوذ ػذد اغػبد از رىذ ؾذد

Navigator) ؾبذ أ اغػبد از رىذ ذ٠ب ؽب١ب دػاخ

: غػز١

، ( ئع امغ– سل امغ – ئع ابدح –سل ابدح ): اغػخ األ

. ( ئع ايبت–سل ايبت ): اغػخ اضب١خ

: ىب الؽظ أ٠نب أ

، ثبزب ٠غت ػ١ب رؾذ٠ذ G_STU_NO أة غػخ اضب١خ G_SUB_NOاغػخ األ

ره زمغ ؽمي Sourceى ئىبس رىشاس خالي اخبف١خ (اغػخ اجبؽشح)اقذس اشئ١غ

، أل Manuallyاج١ببد ػ١ أل ره ف١ذ عذا خبفخ ػذ ػ١بد ئمبفخ ؽمي عذ٠ذح ػ ازمش٠ش ٠ذ٠ب

فال ٠ى أ ٠فز ازمش٠ش Canvasاىقاشح اإلىبس ازىشاس ثبغجخ ؾمي اج١ببد ازمؼخ ػ١ ثضبثخ

. ػذب رزمغ اؾمي خبسع

=======================================================================

=========

Formula ثغاس سل اغز عالؽظ أ غ١ش زفش ف عذي ئع اىغرئرا أسدب ف ازمش٠ش اغبثك أ ظش

Subject ال ف عذي Stu أ عد ف عذي آخش م ثغج عذي Lvl زه عن١ف ئع

: وبزب Formulaاغز ثاعزخذا ؽم ف١غخ

( رج اىثااخ) م ثزؾذ٠ذ (أال

( Object Navigator)اعد ف ؽبؽخ اـ

زظش بفزح ف١ب اإلعزؼالبد F2نغو

ؽش٠و (Q_1ؽب١ب )اعدح زمش٠ش

ئ ػد طغحاألداد اؼد ن١ف

ش G_SUB_NOداخ اغػخ األ

أ لذ رى ؽش٠و رش٠ش ػذ ئمبفز فم

الؽظ أ ) ثزعؼخ ػشك ػبفش اغػخ

، (CF_1ئع ػد اق١غخ اإلفزشام

CF_1 م ثزؾذ٠ذ ػقش ػد اق١غخ (ثاا

: ؼذي خقبئق وبزب F4نغو

Property Value

1 Data Type Char

2 PL/SQL Formula More…

Page 86: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

86

: ازب PL/SQL Formula ىزت ف خبف١خ Char اع اؾشف ١Data Typeى ع اج١ببد

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 Value

Source CF_1

ػظش ضDisplay : . (ئع اغز)١مؼ ػا ػد اق١غخ ١ى

Page 87: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

87

SQL Query ثغاس سل امغ عالؽظ أ غ١ش زفش ف عذي ئع اىقغئرا أسدب ف ازمش٠ش اغبثك أ ظش

Subject ال ف عذي Stu أ عد ف عذي آخش م ثغج عذي Section زه عن١ف

: وبزب SQL Queryئع امغ ثاعزخذا اإلعـزـؼال

زظش بفزح F2نغو (Object Navigator)اعد ف ؽبؽخ اـ (رج اىثااخ) م ثزؾذ٠ذ (أال

١ؾئ SQLئعرؼال ؽش٠و األداد اؼد ن١ف (Q_1ؽب١ب )ف١ب اإلعزؼالبد اعدح زمش٠ش

از ٠ىه خالب رؾش٠ش عخ اإلعزؼال جبؽشح لج ره ؽبؽخ زظش (Q_2)ئعزؼال عذ٠ذ

أ …Build SQL Query أ ثبءب عذ٠ذ خالي ثشبظ ثب اإلعزؼال SQL Query Statementف

…Connect بن أ٠نب صس اإلرقبي ئ رى زقال ثبمبػذح …Import SQL Queryئعز١شادب ف

: فىزت

Select * From Section ;

:ب ٠ ( Layout Modelرج اىغق )ؾئ ؽش٠و األداد اؼد ازبثغ ـ (ثاا

ػظش زقوField : صالس غػبد ؼشك اج١ببد داخ ص غؼ ف ئىبس ازىشاس ى أ٠ ئىبس ازىشاس فذ٠ب ا٢

:

، G_STU_NO ( Q_1) أة غػخ اضب١خ G_SUB_NOاغػخ األ

: ، ثؾغت امبػذح از رمي أ G_SEC_NO ( Q_2)اغػخ اضبضخ

ػذد اإلطاساخ اىرنشاسح = ػذد اىدػاخ

ره (Repeating Frameاإلطاس اىرنشاس ) تـف١غت ػ١ب أ ؾئ لج و ؽء ب ٠غ

داخ Filed، ص مغ ػقش ؽم (Layout Modelرج اىغق )ؽش٠و األداد اؼد ازبثغ ـ

، F4 ره ثؼذ رؾذ٠ذ مغو ١Sourceز ئ١ ، ال غ سثي غ ئع امغ خالي اخبف١خ

Property Value

Source SEC_NAME

ػظش ضDisplay :

. (ئع امغ)١مؼ ػا ػد اق١غخ ١ى

زظش بفزح F2نغو (Object Navigator)اعد ف ؽبؽخ اـ (رج اىثااخ)م ثزؾذ٠ذ (ثاىثا

ستط اىثااخ ؽش٠و األداد اؼد ن١ف (Q_1 & Q_2ؽب١ب )ف١ب اإلعزؼالبد اعدح زمش٠ش

Data Link ث١ سل امغ اغػخ اضبضخ ( از١خ إلعزؼالQ_2) سل امغ اغػخ

خالي ػ١خ اغؾت اإلفالد ثؾ١ش ٠ز اغؾت أؽذ اغػز١ (Q_1از١خ إلعزؼال )األ

، و ره أع (SEC_NO & SUB_SECتاىطثغ ىسقو سق اىقغ )اإلفالد ئ اغػخ األخش

. أ ٠ز رف١ز اإلعزؼال١ ع٠خ ال ٠فز و ئعزؼال فقال ػ اإلعزؼال ا٢خش

Page 88: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

88

غػخ عذ٠ذح (اإلعزؼالبد) أ لذ أم١ف غػخ ئعزؼال عذ٠ذح ف عضء رج اىثااخالؽظ ف

. (ساثو اج١ببد)ساثو ث١ببد عذ٠ذ ف عضء (اغػبد)ف عضء

=======================================================================

=========

الزظح اح :

رفن اإلمبفخ ثـاعـزـخـذا ؽـمـ فـ١ـغـخFormula ألب أعشع ثبزف١ز أع أع أب : رزيت ئؾبء

، SQLئعرؼال .1 ، Repeating Frameئطاس ذنشاس .2

. Data Linkستط اىثااخ .3

Summary اىسذ – اىسذ أد – اىرعط –اىدع )ف وض١ش األؽ١ب ؾزبط ئ ئمبفخ راثغ رغ١ؼ١خ زمش٠ش

ره ثغشك ػ ( اىرفاخ–اإلسشاف اىؼاس % - اإلخاى – أخش – أه – اىؼذد –أقظ

رخ١ـ رم١ؾ ج١ببد اغغالد خبفخ ػذب ٠ى ؽغ اج١ببد ف ازمش٠ش وج١ش عذا ، وضبي ػ ره

:فغزى اخياد وب ٠ ػذد اىاد اىر ذ ذذسغا أسدب ف ازمش٠ش اغبثك أ ظش

زظش بفزح F2نغو (Object Navigator)اعد ف ؽبؽخ اـ (رج اىثااخ)م ثزؾذ٠ذ (أال

ػد يخض ؽش٠و األداد اؼد ن١ف (Q_1 & Q_2ؽب١ب )ف١ب اإلعزؼالبد اعدح زمش٠ش

ش أ لذ رى ؽش٠و رش٠ش ػذ ئمبفز فم ثزعؼخ ػشك G_SUB_NOئ داخ اغػخ األ

، (CS_1الؽظ أ ئع ػد خـ اإلفزشام ) ػبفش اغػخ

Page 89: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

89

: ؼذي خقبئق وبزب F4 نغو CS_1 م ثزؾذ٠ذ ػقش ػد خـ (ثاا

Property Value

1 Function اؼذد

2 Source Sub_No

3 Reset act Page

غؼ ئػبدح رؼ١١ ػد Sub_No ١ى قذس سل ابدح ١Counterى ازبثغ ازغ١ؼ اؼذد

أ ف مو طفسح ر اىردغ ىيؼذاد ث )Report ١ظ و رمش٠ش Pageخـ زا ف و ففؾخ

ف تذاح اىظفسح اىدذذج ر ذظفش اىؼذاد ىثذأ اىؼذاد تؼيح اىردغ خذذ مو طفسح

، (ػي زذ

:ب ٠ ( Layout Modelرج اىغق )ؾئ ؽش٠و األداد اؼد ازبثغ ـ (ثاىثا

ػظش زقوField :

ثؼذ فزؼ لف ىس اإلؽزاء ؽش٠و G_SUB_NOؼشك اج١ببد داخ ص غؼ ف اإلىبس ازىشاس األة

ره Sourceاألداد األفم غبػ ثامبفخ اؾم ، ال غ سثي غ ػد خـ خالي اخبف١خ

، F4ثؼذ رؾذ٠ذ مغو

Property Value

Source CS_1

ػظش ضDisplay : . (ػذد ااد)١مؼ ػا ػد اق١غخ ١ى

=======================================================================

ذير :

. اى أ٠نب ئمبفخ ػقش ٠مؼ ػذد ايالة اذاسع١ ى بدح ثفظ ايش٠مخ

Page 90: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

90

احملاضرة احلادية عشر

Menus رأخز فب غزمال Oracle امائ اغذخ ف ثذا٠خ رؾغ١ اجشبظ اؼ أ امائ ف

:لذ روشب عبثمب أ ػذ ػ١ز ثؾ١ش غزي١غ ئعزذػبء فب ازف١ز أ ثشبظ

ؽفظ امائSave ٠زذ ف قذسSource ر ئزذاد *.MMB ٠ؾغ ثشبظ Form Builder ازشعخCompile ٠زذ ف رف١ز Execute ر ئزذاد *.MMX ٠ؾغ ثشبظ Forms Runtime ،

ؼ إلذا ػيح MODULEىظ رىل فسغة تو دة أ ذن اىغخح اىرفزح رح ئى

اىرفز

----------------------------------------------------------------------------------------------------------------------

--------------

١ؾئ ب ئعب ئفزشام١ب Createص (Object Navigator)اعد ف ؽبؽخ اـ (Menus)م ثزؾذ٠ذ اـ

مبئخ اؾئخ فؾذدب ص مش مشا ضدعب زق١ امبئخ

: وبزب

Page 91: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

91

ص ؾئ اؼبفش ازبثؼخ ز امبئخ خالي (اىثشاح)ىزت ف ؾشس امائ ػا امبئخ األ

اعدح ف بفزح ؾشس امائ أ خالي األ٠مخ Menu امبئخ Create Downئخز١بس األش

ثفظ ايش٠مخ (تشاح اىؼالقح)اعدح ف ؽش٠و األداد األفم ف بفزح ؾشس امائ ىزت

فبؼقش (تشاح اىقاشح)فبؼقش اضبش ثىزبثخ (تشاح اىقائح اىشمثح)ؾئ اؼقش اضب ىزت

ؾذدب ص ؾئ امبئخ (اجشاظ)م ا٢ ثبشعع ئ اؼقش اشئ١ظ مبئخ األ ، (خشج)األخ١ش

اعدح ف بفزح ؾشس Menu امبئخ Create Rightاغبسح ز امبئخ خالي ئخز١بس األش

ص ( اىرقاسش)امائ أ خالي األ٠مخ اعدح ف ؽش٠و األداد األفم ف بفزح ؾشس امائ ىزت

اعدح ف Menu امبئخ Create Downؾئ اؼبفش ازبثؼخ ز امبئخ خالي ئخز١بس األش

ذقشش )بفزح ؾشس امائ أ خالي اضس اعد ف ؽش٠و األداد األفم ف بفزح ؾشس امائ ىزت

، ثزه ى لذ ئز١ب فمو ( ذقشش األقغا)ثفظ ايش٠مخ ؾئ اؼقش اضب ىزت (اىطالب

رى لبئز اجشاظ ازمبس٠ش ثبإلمبفخ ئ لبئخ ؽب٠خ (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 خغخ ل١ و ل١خ ب ظ١فخ ؼ١خ وبزب:

a. Plain : اخبف١خ اإلفزشام١خ ( رف١ز ؽفشح قذس٠خCodeفمو ) ، b. Check : رظش اإلؽبسح( ) زؼجش ػ اإلخز١بس ازؼذد ره ثغبت رف١ز اؾفشح اقذس٠خ

Code ، c. Radio : رظش اإلؽبسح( ) زؼجش ػ اإلخز١بس افشد ره ثغبت رف١ز اؾفشح اقذس٠خ

Code، d. Separator : ٠ذ خو فبف فمو ثذ وزبثخ أ ؽفشح قذس٠خCode، e. Magic : رأر شرجيخ غ اخبف١خMagic Item زم ثزف١ز ئعزذػبءاد ؼشفخ ف اغخ

(Cut , Copy , Paste , Clear , Undo , Help , About , Quit , Window)غجمب ض .Editف١ذح ػذب ش٠ذ رق١ ػبفش مبئخ ؽج١خ ثبـ

Page 92: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

92

ن١ف ف ؾشس امائ ػقش فبف (اىثشاح)ثبؼدح مبئخ األSEPARATOR_ITEM لج اؼقش Menu Item Type ازبثؼخ خبف١خ Separatorثؾ١ش غؼ زا اؼقش ٠زه ام١خ (خشج)األخ١ش

.

أ اخقبئـ خبف١خ Menu Item Codeثضبثخ اـ Trigger از ع١ىزت خال اؾفشح ثذب ال ٠ى أ ٠زذ أ ف رف١ز مائ ، ل ؽب١ب ثىزبثخ ازؼ١خ Codeاقذس٠خ

Execute_Query; وؾفشح ى ػبفش امبئخ ألب ذسط ؽز ا٢ فمشح اشثو غ ابرط األخش

Forms .

ػذ ئػيبء ام١خNo خبف١خ Visible in Menu فا اؼقش اؾذد امبئخ ال ٠ظش ز ايش٠مخ

. ف١ذح ف ؼ اقالؽ١بد غزخذ١ ؼ١١

ف وض١ش األؽ١ب ؾزبط ئ ئظبس األ٠مبد ػ ؽش٠و األداد األفم أ اؼد زغش٠غ ػ ( Canvasأششطح األداخ اىراتؼح ىيقائح ىظ ىيـ )اجشبظ زلغ اإلعزخذا ثىضشح

a. اخبف١خVisible in Horizontal Menu Toolbar b. اخبف١خVisible in Vertical Menu Toolbar

Icon in خبف١خ Yes ٠ؼال ػ ئظبس األ٠مخ ثبيجغ ثؼذ ئػيبء ام١خ Yesػذ ئػيبئب ام١خ

Menu .

ثبإلىب رق١ أ٠مخ خبفخ ثبؼقش از ٠زجغ امبئخ خالي اخبف١خIcon Filename ره ثؼذ

. Icon in Menu خبف١خ Yesئػيبء ام١خ

ػذ رق١ ثشبظForm Builder أسدب ئػيبء امبئخ اؾئخ ف١ى ره خالي ؼ اف : وبزب MODULE ازبثؼخ ـ Menu Moduleازف١ز مبئخ وم١خ خبف١خ

Property Value

Menu Module C:\MAIN_MENU.MMX

الؽظ ف ؾشس امائ صسSwitch Orientation از ٠ؼ ػ رؾ٠ اؾئ ثضس اـCreate Down ئ Create Right وزه رؾ٠ اؾئ ثضس اـ Create Right ئ Create Down .

ئرا لذ ثزؼذ٠ ب ػ امبئخ ف١غت أ رؾفظ ره File Save رزشع أع أ ٠زذ اف . File Administration Compile Fileازف١ز اغذ٠ذ

الؽظ ػذ ازف١ز عد لبئخ رغ( افزجWindow ) ح رأر ئفزشام١ب غ امائ اؾئ .

٠ى ازؾى ثاغالق ارط ازاوشح خالي رؼ١خClose_Form('') ; ،

. ئع اجشبظ جبؽشح ثذ روش اغبس أل عد ثبزاوشح argumentؽ١ش ىزت ف اؼب اشع

Page 93: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

93

Popup Menus امائ از رجضك ػذب م ثبمش ػ صس افأسح األ٠ ره ػ اىبئ از فذ امبئخ

: ف أب Menusاجضمخ رخزف ئخزالفب عش٠ب ػ امائ

a. ال رؾزبط ئ ف غزم إلؾبئب ثبزب رق داخ ثشبظ اـForm Builder ،

b. ازق١ ف١ب ؼىط فبضسCreate Down ال ٠ذ ػقشا شؤعب ئب ٠ذ ػقشا ص١ال اضس Create Right ال ٠ذ ػقشا ص١ال ئب ٠ذ ػقشا شؤعب ، اغجت ف ره ٠ؼد ئ ىج١ؼخ

. ػ ؽى امائ اجضمخ ف عبج١خ ١غذ ػد٠خ c. رفز امبئخ اجضمخ خالي ثشبظ اـForm Builder.

----------------------------------------------------------------------------------------------------------------------

--------------

١ؾئ ب ئعب Createص (Object Navigator)اعد ف ؽبؽخ اـ (Popup Menus)م ثزؾذ٠ذ اـ

ئفزشام١ب مبئخ اؾئخ فؾذدب ص مش مشا ضدعب زق١

: امبئخ وبزب

ىزت ف ؾشس امائ ػا امبئخ األ

ص ؾئ اؼبفش ازبثؼخ ز امبئخ (اىثشاح)

اعدح ف بفزح ؾشس امائ أ خالي Menu امبئخ Create Right خالي ئخز١بس األش

ثفظ (تشاح اىؼالقح)األ٠مخ اعدح ف ؽش٠و األداد األفم ف بفزح ؾشس امائ ىزت

( تشاح اىقاشح)فبؼقش اضبش ثىزبثخ (تشاح اىقائح اىشمثح)ايش٠مخ ؾئ اؼقش اضب ىزت

Page 94: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

94

ؾذدب ص ؾئ (اجشاظ)م ا٢ ثبشعع ئ اؼقش اشئ١ظ مبئخ األ ، (خشج)فبؼقش األخ١ش

اعدح ف بفزح Menu امبئخ Create Downامبئخ اغبسح ز امبئخ خالي ئخز١بس األش

ؾشس امائ أ خالي األ٠مخ اعدح ف ؽش٠و األداد األفم ف بفزح ؾشس امائ ىزت

Menu امبئخ Create Rightص ؾئ اؼبفش ازبثؼخ ز امبئخ خالي ئخز١بس األش ( اىرقاسش)

اعدح ف بفزح ؾشس امائ أ خالي اضس األ٠مخ اعدح ف ؽش٠و األداد األفم ف بفزح

، ثزه ( ذقشش األقغا)ثفظ ايش٠مخ ؾئ اؼقش اضب ىزت (ذقشش اىطالب)ؾشس امائ ىزت

رى لبئز اجشاظ ازمبس٠ش (Menus)ى لذ ئز١ب فمو شؽخ رق١ امبئخ الؽظ ف اـ

. ثبإلمبفخ ئ لبئخ ؽب٠خ مبئز١ اؾئز١

Codeا ن أ فز اىثشاح غ ػذ ئزراء اىقائح ػي أح شفشج ظذسح

=======================================================================

=========

Popup Menu Items ، Menuفظ اخقبئـ اؾشؽخ ف امائ

a. ظس امبئخ اجضمخ ٠ى خالي ؾب خبف١خPopup Menu اؼبفش ) انخ ف خقبئـItems أ امبؽ١خCanvas) فضال إلظبس امبئخ اؾب٠خ مبئز اجشاظ ازمبس٠ش ف ػقش

Display Item فاب غؼ خقبئق وبزب :

Property Value

1 Popup Menu SECONDARY_MENU 2 Database Item No

b. ال رعذ أ٠مبرب ػ أؽشىخ األداد األفم١خ أ اؼد٠خ Visible in Horizontal Menu Toolbar Visible in Vertical Menuأ ال رعذ ثب خقبئـ

Toolbar ،

c. ثبيجغ ال عد ف ازف١ز اغزم أ لبئخ رغ( افزجWindow ) رأر ئفزشام١ب أصبء. ازف١ز

ثؾ١ش غؼ أؽذب ٠ظش لبئخ اجشاظ اجضمخ Display Item ئرا أسدب ئؾبء ػقش٠ اع ا

: ا٢خش ٠ظش لبئخ ازمبس٠ش اجضمخ فب ػ١ب ع أ غؼ خقبئقب وبزب

Property Value

1 Popup Menu اجشاظ_MENU

2 Database Item No

Property Value

1 Popup Menu ازمبس٠ش_MENU

2 Database Item No

Page 95: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

95

((Forms((Form((Report ارط Parentػذ ازؾذس ػ ىشق سثو أوضش رط ٠زجبدس ئ از جبؽشح مع ارط األة

MDI(Multi ، رؾذ ظخ ب ٠ذػ ثاعخ اغزذاد ازؼذدح Calling فبألة ٠غزذػ اإلث Childاإلث

Documents Interface) ثبزب فا ىش٠مخ ئظبس رط آخش رط ؽب رخزف ثشبظ ئ آخش

ؽغت ىج١ؼخ ػ اجشبظ ز ايشق ب ئخزفذ ف ز١غخ نغو ػ صس أ لبئخ سئ١غ١خ أ لبئخ

:جضمخ ، ىشق اشثو وب ٠

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 ) ;

الزظح اح :

ال ٠ى اشثو ث١ اـ((Formاـ ((Report ئال ػ ثيش٠مخ اشثو Run_Product . =======================================================================

=========

Open_Form

: ازب١خ argumentsرزه اـ

: Form_nameئع اىرج .1 ؽ١ش ىزت ب غبس اجشبظ اإلث اشاد فزؾ ،

: Active_Modeط اىرشط .2 ) أ أ ثؼذ فزؼ ارط اإلث ع١زم اإؽش جبؽشح ئ وز ارط اإلث Activate ل١ز١ ئب

أ أ ثؼذ فزؼ ارط اإلث ع١جم اإؽش ف ارط األة ،Non_ Activateأ (اإلفزشام

: Session_Modeط اىديغح .3رؼ أ ارط اإلث ارط األة ١غا ف عغخ اؽذح ثبزب ئرا NO_Sessionب ل١ز١ ئب

، ( اإلفزشام)ر ػ رضج١ذ أ رشاعغ فا ع١ز ؽفظ ازغ١١شاد از ؽذصذ ػ ارط اإلث فمو

رؼ أ ارط اإلث ارط األة ف عغخ اؽذح ثبزب ئرا ر ػ رضج١ذ أ رشاعغ Sessionأ

. فا ع١ز ؽفظ ازغ١١شاد از ؽذصذ ػ ارط اإلث ارط األة ؼب

: Data_Modeط اىثااخ .4 رؼ ػذ ؾبسوخ اج١ببد رط األة اإلث ف ىزجخ No_Share_Library_Dataب ل١ز١ ئب

رؼ ؾبسوخ اج١ببد رط األة اإلث ف Share_Library_Dataأ ( اإلفزشام)ث١ببد اؽذح

. ىزجخ ث١ببد اؽذح

: Paramlist_Name Or Paramlist_Idئع اىؼاو أ سق اىؼاو .5 .زؾالد ارط األة ئ ارط اإلث (ئسعبي)از ٠غزخذ زش٠ش

Page 96: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

96

Examples :

Open_Form('C:\Prog4.Fmx');

Open_Form('C:\Prog4.Fmx' , , , , PL_ID);

=======================================================================

=========

Call_Form

: ازب١خ argumentsرزه اـ

:FormModule_nameئع اىرج .1 .وب ؽشػ عبثمب

:Displayاىؼشع .2 No_Hideأ ( اإلفزشام)أ أ ٠غزذػ ارط اإلث ٠خف ارط األة Hide ل١ز١ ئب

(غ١ش ؾو)أ أ ٠غزذػ ارط اإلث ٠غؼ ارط األة عدا خف ارط اإلث ى غ١ش ؾفض

،

:Switch_Menuقائح اىرسو .3رؼ ػذ رجذ٠ لبئخ ارط األة ئمب رط اإلث ػذ اإلعزذػبء No_Replace ب ل١ز١ ئب

. رؼ رجذ٠ لبئخ ارط اإلث ثب ذ٠ لائ Do_Replaceأ ( اإلفزشام)

:Query_Modeط اإلعرؼال .4رؼ فزؼ ارط اإلث ثغشك ريج١ك اؼ١بد اخزفخ ئمبفخ NO_Query_Only ب ل١ز١ ئب

رؼ فزؼ ارط اإلث ثغشك Query_Onlyأ ( اإلفزشام)ئخ ... رؼذ٠ ؽزف ئعزفغبس

. اإلعزفغبس فمو

:Data_Modeط اىثااخ .5 .وب ؽشؽذ عبثمب

:Paramlist_Name Or Paramlist_Idئع اىؼاو أ سق اىؼاو .6 .وب ؽشؽذ عبثمب

Examples :

Call_Form('C:\Prog4.Fmx');

Call_Form('C:\Prog4.Fmx' , Hide , No_Replace , No_Query_Only);

Run_Product

: ازب١خ argumentsرزه اـ

:Productئع اىرح .1 ثفظ ] 3 أ 2 أ 1 [ أ ثبإلىب وزبثخ ام١ ] Graphics أ Reports أ Forms [ صالس ل١ ئب

اؼب اغبثمخ ،

Page 97: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

97

2. Module: ؽ١ش ىزت ب غبس اجشبظ اإلث اشاد فزؾ ،

:Comm_Modeط اإلذظاه .3رؼ اغبؽ١خ ثبؼ ػ ارط األة ثغاس اؼ غ ارط اإلث Synchronous ب ل١ز١ ئب

. رؼ اؼ غ ارط اإلث فمو Asynchronousأ

:Exec_Modeط اىرفز .4 Batchأ ( Form Builder & Report Builder & Graphics Builderرغزخذ غ ) Runtime ل١ز١ ئب

. فمو ( Builder & Graphics Builderرغزخذ غ )

:Locationاىقغ .5 . Database أ ف خض ػ لبػذح اج١ببد File System ل١ز١ ئب أ ٠ى ف ظب

:Paramlist_Name Or Paramlist_Idئع اىؼاو أ سق اىؼاو .6

.وب ؽشؽذ عبثمب

:Displayاىؼشع .7 . Graphicsرغزخذ غ اشع اج١ب ره إلخز١بس ع اخيو

Examples :

Run_Product(1 , 'C:\Prog4.Fmx' , Synchronous , Runtime , Filesystem ,

'' , '');

Run_Product(2 , 'C:\Rep4.Rep');

=======================================================================

=========

الزظح اح :

أعب آزان وزبثخ اؾفشح اقذس٠خ Formsوب لذ أؽشب ف فمشح امائ ئ فمشح اشثو غ ابرط األخش

Code ؼبفش امبئخ ب ؾ ا٢ ثؼذ ئرب ز افمشح ؼبد وزبثخ اؾفشح زه اؼبفش ثؼذ رؾذ٠ذ اؼقش

: ىزت وب مؼ ب ٠ Menu item Code ب خبف١خ F4مغو

(تشاح اىؼالقح)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 , ''

, '');

Page 98: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

98

(ذقاسش األقغا)Run_Product(2 , 'C:\Rep2.Rep' , Synchronous , Runtime , Filesystem , ''

, '');

=======================================================================

=========

Parametersى زؾى ثيش٠مخ ػشم فضال لذ (زؾالد)أؽ١بب لج فزؼ ارط اإلث ش٠ذ أ شع عبئو ؼ١خ

، Relationsأؽج ثجشاظ اـ (ئخ... ايالة دسعبر ، اذائش ظف١ب ، ): ؾزبط زه ف ثشاظ

: ؼ ره ال ثذ ب أال ؼشفخ اخياد ازب١خ

:ف اىرج األب .1 ؼشف اـParameter ، ، ؼ ػ رؾ١ ثبم١خ شع ام١خ .

:ف اىرج اإلت .2 ؾئParameter زافك غ اـ Parameter ، اشع

ؼ ػ ئعزمجبي ام١خ از ٠ؾب اـParameter ، اشع غزخذ ام١خ .

FormSTUFormMARK

FormsPush_ButtonParameters

Parameter

Page 99: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

99

ؼ ره م ثبخياد ازب١خ :

ؼ ػ رؾ١ ثبم١خ ئسعبب ره ثاعيخ ؽذس Parameterف ارط األة ؼشف اـ .1(WHEN_BUTTON_PRESSED) ازبثغ ضس اذسعبد وبزب :

Declare

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 ;

Page 100: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

100

Createص (Object Navigator)اعد ف ؽبؽخ اـ (Parameters)م ثزؾذ٠ذ اـف ارط اإلث .2 : غ١ش ل١خ خبف١خ اإلع اجشغ وب ٠ ١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 غ١ش اـ (Text Parameters) اـ (Data Parameters) ٠غزخذ . Record Groupإلسعبي غػخ عغ

ػذ ئسعبيParameter ثشبظ ق ثبـ Form Builder رش٠ذ ئعزمجب ف ثشبظ ق ثبـ Report Builder فاه عزغزخذ User Parameters إلعزمجبي ام١خ .

Page 101: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

101

احملاضرة الثانية عشر

:ثاؽذ ىش٠مز١ ٠ى ازؼب غ فبد اقسح

ز ايش٠مخ ال رؼزذ ػ لبػذح اج١ببد System Fileرى اقس عدح ػ فبد ظب .1Non_DB ،

.DB ز ايش٠مخ رؼزذ ػ لبػذح اج١ببد Databaseرى اقس خضخ داخ لبػذح اج١ببد .2 (اىطشقح اىثاح األفؼو أخو ػياخ اإلعرشاد اىرظذش األح)

----------------------------------------------------------------------------------------------------------------------

--------------

System File

: زى ذ٠ اخقبئـ ازب١خ Image Item ػقش فسح Layout Editorن١ف ؽبؽخ اـ

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ؽ١ش زم رغ١ك اقسح

Original ث١ب غؼ عدح انغو ، Compression Quality زذ١خ Minimum عدح اؼشك Display Quality

خالي (رؾذ٠ذ اقسح رىج١شب ٠ذ ازؾش٠ه اإلرغب) ، ٠فن أ ظش ػ ػقش اقسح أصساس Highػب١خ

Crop ش٠ذ ئلزيبع Sizing Style ، أخ١شا خزبس د٠ اؾغ Show Palette خبف١خ Yesؼ ام١خ

Page 102: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

102

ثؾ١ش ٠ائ 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|' :

Page 103: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

103

ػجبسح رم١ؾ١خ ئخز١بس اجشظ ، Bitmap Filesفىخ

اخبؿ ثأاع افبد ، List Item ام١خ از عزؼشك داخ (Bmp.*)اـ

. ام١خ اإلثزذائ١خ ف ، لظ ثم١خ ازؼ١بد ػ غشاسب (Bmp.*|)اـ

اىرؼيح Get_File_Name ذريل اىـ

arguments اىراىح

،Directory_Fileئع اغذ .6 ،File_Nameئع اف اإلثزذائ .7 ،Filterرؼ١خ فزشح افبد اؼشمخ .8 ،Messageسعبخ رم١ؾ١خ .9

.SAVE AS أ OPENع اؼبظ .10

: ١ى ذ٠ب ا٢ صس م خال ثاعزؼشاك فبد اقس ص ؽفظب ذ٠ب ف اجشبظ وبزب

(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فش٠ذ ٠فن أ ٠ى

Page 104: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

104

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 ') ;

End ;

. System Fileز اؾفشح اقذس٠خ اؼزذح ػذ ازؼب غ اقس ثاعيخ فبد اظب

----------------------------------------------------------------------------------------------------------------------

--------------

Database

: وبزب SQLؼ ره ال ثذ ئمبفخ زا اؾم ثأش .1SQL> alter Table Stu Add(Stu_Img Long Row);

ص ئمش Data Block (STU) فم ثزؾذ٠ذ اـ Formئرا لذ ثاؾبء اؾم ثؼذ عت اج١ببد ئ اـ) .2 Refresh ص ئمغو اضس Table ازج٠ت Data Block Wizardػ صس افأسح األ٠ زخزبس

( اح ص ئمغو STU_IMGثؼذب ل ثغت اؼقش

ى الؽظ أب ب ؼزذح ػ لبػذح STU_IMGئؼ اخقبئـ از ر روشب عبثمب ؼقش اقسح .3

اج١ببد ،

Property Value

Database Item Yes

: وبزب STU_IMGازبثغ ؾم (اذخي ػ ػقش عذ٠ذ)م ثىزبثخ اؾفشح اقذس٠خ ف ؽذس .4

(Trigger : WHEN_NEW_ITEM_INATANCE)

Declare

FileName Varchar2(50);

Page 105: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

105

Begin

FileName := Get_File_Name('C:\Img\' ||:Stu_Sec ||:Stu_Lvl ||:Stu_No

||'.Bmp') ;

Read_Image_File(FileName,'Bmp',' Stu.Stu_Img ') ;

End ;

:ثاؽذ ىش٠مز١ ٠ى ازؼب غ فبد اقد

Non_DB ز ايش٠مخ ال رؼزذ ػ لبػذح اج١ببد ٠System Fileى اقد عد ػ فبد ظب .1 ،

.DB ز ايش٠مخ رؼزذ ػ لبػذح اج١ببد Databaseرى اقد خض داخ لبػذح اج١ببد .2 (اىطشقح اىثاح األفؼو أخو ػياخ اإلعرشاد اىرظذش األح)

----------------------------------------------------------------------------------------------------------------------

--------------

System File

: زى ذ٠ اخقبئـ ازب١خ Sound Item ػقش فد Layout Editorن١ف ؽبؽخ اـ

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

Page 106: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

106

13 Show Slider Yes

ثبألربر١ى١خ Audio Channels ، لاد اقد WAV ثـSound Formatؽ١ش زم رغ١ك اقد

Automatic ث١ب غؼ انغو ، Compress أربر١ى Automatic عدح اقد Sound Quality أربر١ى١خ

Automatic (ئخ... ثذا٠خ رؾغ١ ازغغ١ ازؾى ثؾغ اقد ) ، ٠فن أ ظش ػ ػقش اقد أصساس

Show Play Button ، Show Volume Control ، Show Time) خقبئـ Yes خالي ؼ ام١خ

Indicator ، Show Slider . )

ص ؾذد اؾذس ابعت مشاءح اقد ١ى ػذ اذخي ػ عغ عذ٠ذ ىزت اؾفشح اقذس٠خ

: ازب١خ

(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

: وبزب SQLؼ ره ال ثذ ئمبفخ زا اؾم ثأش .1SQL> alter Table Stu Add(Stu_Snd Long Row);

ص ئمش Data Block (STU) فم ثزؾذ٠ذ اـ Formئرا لذ ثاؾبء اؾم ثؼذ عت اج١ببد ئ اـ) .2

Refresh ص ئمغو اضس Table ازج٠ت Data Block Wizardػ صس افأسح األ٠ زخزبس ( اح ص ئمغو STU_SNDثؼذب ل ثغت اؼقش

ى الؽظ أب ب ؼزذح ػ لبػذح STU_SNDئؼ اخقبئـ از ر روشب عبثمب ؼقش اقد .3

اج١ببد ،

Property Value

Database Item Yes

Page 107: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

107

: وبزب STU_SNDازبثغ ؾم (اذخي ػ ػقش عذ٠ذ)م ثىزبثخ اؾفشح اقذس٠خ ف ؽذس .4(Trigger : WHEN_NEW_ITEM_INATANCE)

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 ;

Page 108: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

108

ص (Object Navigator)اعد ف ؽبؽخ اـ (Popup Menus)م ثزؾذ٠ذ اـ

Create ؾئ لبئخ جضمخ ثضس افأسح األ٠ ؽ١ش ىزت ف ؾشس امائ

ص ؾئ اؼبفش ازبثؼخ ز امبئخ (ذسد اىظسج)ػا امبئخ

اعدح ف بفزح ؾشس Menu امبئخ Create Rightخالي ئخز١بس األش

امائ أ خالي األ٠مخ اعدح ف ؽش٠و األداد األفم ف بفزح

ثفظ ايش٠مخ ؾئ اؼقش اضب ىزت (ذنثش)ؾشس امائ ىزت

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 Value

Popup Menu رؾغ١ اقسح_MENU

الزظاخ اح :

ال ٠ى أ ٠ؾز اغذي ػ أوضش ؽم اعLong Row، أ (ثاعيخ فبد اظب أ ثاعيخ لبػذح اج١ببد)افشق اغش ث١ ازؼب :

ريبت اغزخذ ثبؾفظ زإصش ػ لبػذح اج١ببد (ئبء اجشبظ)فبد اظب ػذ اخشط اجشبظ

Database .

Page 109: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

109

غبجب ب م ثبإلعز١شاد ازقذ٠ش خالي أ صس أ ػقش لبئخ جضمخ ىزت ف١ب اؾفشح اقذس٠خ

:ازب١خ

(التصدير)

Host('Exp UserId = Ust/Taiz File = C:\Expdat.Dmp') ;

تصذش قاػذة بااث املستخذو إىل يهف حمذد

Host('Exp UserId = Ust/Taiz File = C:\Expdat.Dmp Full = Y') ;

تصذش قاػذة بااث كايهت إىل يهف حمذد

(اإلسترياد)

Host('Imp UserId = Ust/Taiz File = C:\Expdat.Dmp') ;

إسترياد قاػذة بااث املستخذو ي يهف حمذد

Host('Imp UserId = Ust/Taiz File = C:\Expdat.Dmp Full = Y') ;

إسترياد قاػذة بااث كايهت ي يهف حمذد

=======================================================================

=========

ذير :

ازؼ١خHost رم ثاعزذػبء أش ظب ازؾغ١ Start Run ص رغزذػ أؽذ اجشبغ١ EXP أ IMP (ؽغت ايت) ص رؼي ؼبالرب وبخ جشبظ الؽظ ػذ وزبثزب ئزالوب فبفز١

. ػ٠ز١ ئؽذاب ثبجذا٠خ األخش ثبب٠خ بن أ٠نب رقذ٠ش أ ئعز١شاد غذي ؼ١ غزخذ ؾذد لبػذح اج١ببد .

Page 110: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

110

SQLالصيغ العامة جلمل ملحق

(( DML & DDL & DCL ))

select…from…;

select…from…where…;

select…from…order by…;

select…from…group by…;

select…from…having…group by…;

select…from…where…[in or =] select…from…where…;

-------------------------------------------------

insert into...values...;

insert into...select...;

-------------------------------------------------

update...set...;

update...set...where...;

-------------------------------------------------

delete from...;

delete from...where...;

-------------------------------------------------

create...;

create...as select...;

-------------------------------------------------

alter...add...;

alter...modify...;

Page 111: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

111

alter...drop...;

-------------------------------------------------

drop...;

drop...cascade;

-------------------------------------------------

grant...to...;

grant...on...to...;

-------------------------------------------------

revoke...from...;

revoke...on...from...;

Fields of Emp Table Empno Ename Job Mgr Hiredate Sal Comm Deptno

Fields of Dept Table Deptno Dname Loc

Fields of Bonus Table Ename Job Sal Comm

Fields of Salgrade Table Grade LoSal HiSal

Page 112: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

112

- select * from Tables_name ;

- select Fileds_name from Tables_name ;

- select Fileds_name from Tables_name where Conditions ;

- select Fileds_name from Tables_name order by Filed_name Sort type [Asc or Desc] ;

- select Fileds_name from Tables_name order by Filed_name i Sort type , … ,

Filed_name n Sort type ;

- select Fileds_name from Tables_name group by Fileds_name ;

- select Fileds_name from Tables_name group by Fileds_name having Conditions ;

- select Fileds_name from Tables_name

where Conditions [in or =] select Fileds_name from Tables_name where Conditions ;

------------------------------------------------------------------------------------------------------------------------

- insert into Table_name (Fileds_name) values (Values by Fields Sort [Serial] ) ;

- insert into Table_name values (Values by Table Description) ;

- insert into Table_name (Fileds_name) values (& message ,'& message (string)' , … ) ;

- insert into Table_name select Fileds_name from Tables_name where Conditions ;

- insert into Table_name (Fileds_name) select Fileds_name from Tables_name

where Condition ;

------------------------------------------------------------------------------------------------------------------------

- update Table_name set Filed_name = New value ;

- update Table_name set Filed_name = New value where Conditions ;

Page 113: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

113

------------------------------------------------------------------------------------------------------------------------

- delete from Table_name ;

- delete from Table_name where Conditions ;

------------------------------------------------------------------------------------------------------------------------

- create user User_name identified by Password ;

- create role Role_name ;

- create role Role_name identified by Password ;

- create table Table_name (Filed_name i Filed_type i constraint Constraint_type , … ,

Filed_name n Filed_type n constraint Constraint_type) ;

- create table Table_name (Filed_name i Filed_type i constraint Constraint_type references

Table_name(Filed_name i), … ,

Filed_name n Filed_type n constraint Constraint_type references Table_name(Filed_name n))

;

- create view View_name as select Fileds_name from Tables_name where Conditions ;

- create synonym Synonym_name for User_name.Table_name ;

- create index Index_name on Table_name (Filed_name i , … ,Filed_name n) ;

- create unique index Index_name on Table_name (Fileds_name) ;

- alter table Table_name add (Filed_name Filed_type) ;

Page 114: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

114

- alter table Table_name modify (Filed_name Filed_type) ;

- alter table Table_name drop (Filed_name Filed_type) ;

- alter user User_name identified by New Password ;

------------------------------------------------------------------------------------------------------------------------

- drop user user_name cascade ;

- drop role role_name ;

- drop table table_name ;

- drop view view_name ;

- drop synonym synonym_name ;

- drop index index_name ;

- drop unique index index_name ;

------------------------------------------------------------------------------------------------------------------------

- truncate table Table_name ;

------------------------------------------------------------------------------------------------------------------------

- grant Role_name to User_name ;

- grant Role_name to Role_name ;

- grant privileges on Table_name to User_name ;

- grant privileges to Role_name ;

------------------------------------------------------------------------------------------------------------------------

- revoke Role_name from User_name ;

- revoke Role_name from Role_name ;

Page 115: 6i ربولفيد لكاروأ في تارضامحStart Programs Oracle Forms 6i-orantf Form Builder ١ قز بف ، ١ ز بث أ ١ قز بث ءذج ا ة ي ا بو ارئ ب ذ٠ذ

6iحماضرات يف أوراكل ديفلوبر

115

- revoke privileges on Table_name from User_name ;

- revoke privileges from Role_name ;

- revoke privileges on Table_name from public ;

- revoke all on Table_name from public ;