PWCT 1.9 Art Documentation ( http://doublesvsoop.sourceforge.net )

2006-2013, Mahmoud Fayed ( msfclipper@users.sourceforge.net )

_____________________________________________________________________________________

Table of contents

1 - Introduction

2 - Implementation steps

3 - Final Steps Tree

1 - Introduction

In this lesson we are going to create the (Access Report - Child Class) template.

2 - Implementation Steps

s1.JPG

Fig. (1) Goal Desginer - Steps Tree

Select the step (Set Class Name & Window Name)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (PWCT - Code Generator)

                3 - Select the component (CG Replace String)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (CG Replace String)

                Note : Stop typing when you see the required component is selected

s2.JPG

Fig. (2) Component Browser Select the component (CG Replace String)

After selecting the component click Ok or press ENTER

s3.JPG

Fig. (3) Interaction page - Set the properties and enter the required data as in the image above

s4.JPG

Fig. (4) Goal Desginer - Steps Tree

Select the step (Set Class Name & Window Name)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (PWCT - Code Generator)

                3 - Select the component (CG Replace String)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (CG Replace String)

                Note : Stop typing when you see the required component is selected

s5.JPG

Fig. (5) Component Browser Select the component (CG Replace String)

After selecting the component click Ok or press ENTER

s6.JPG

Fig. (6) Interaction page - Set the properties and enter the required data as in the image above

s7.JPG

Fig. (7) Goal Desginer - Steps Tree

Select the step (Class)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Define Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Define Class)

                Note : Stop typing when you see the required component is selected

s8.JPG

Fig. (8) Component Browser Select the component (Define Class)

After selecting the component click Ok or press ENTER

s9.JPG

Fig. (9) Interaction page - Set the properties and enter the required data as in the image above

s10.JPG

Fig. (10) Goal Desginer - Steps Tree

Select the step (Declare Class Data)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Declare Class Data)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Declare Class Data)

                Note : Stop typing when you see the required component is selected

s11.JPG

Fig. (11) Component Browser Select the component (Declare Class Data)

After selecting the component click Ok or press ENTER

s12.JPG

Fig. (12) Interaction page - Set the properties and enter the required data as in the image above

s13.JPG

Fig. (13) Goal Desginer - Steps Tree

Select the step (Declare Class Data)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Declare Class Data)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Declare Class Data)

                Note : Stop typing when you see the required component is selected

s14.JPG

Fig. (14) Component Browser Select the component (Declare Class Data)

After selecting the component click Ok or press ENTER

s15.JPG

Fig. (15) Interaction page - Set the properties and enter the required data as in the image above

s16.JPG

Fig. (16) Goal Desginer - Steps Tree

Select the step (Declare Class Methods)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Declare Class Method)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Declare Class Method)

                Note : Stop typing when you see the required component is selected

s17.JPG

Fig. (17) Component Browser Select the component (Declare Class Method)

After selecting the component click Ok or press ENTER

s18.JPG

Fig. (18) Interaction page - Set the properties and enter the required data as in the image above

s19.JPG

Fig. (19) Goal Desginer - Steps Tree

Select the step (Declare Class Methods)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Declare Class Method)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Declare Class Method)

                Note : Stop typing when you see the required component is selected

s20.JPG

Fig. (20) Component Browser Select the component (Declare Class Method)

After selecting the component click Ok or press ENTER

s21.JPG

Fig. (21) Interaction page - Set the properties and enter the required data as in the image above

s22.JPG

Fig. (22) Goal Desginer - Steps Tree

Select the step (Declare Class Methods)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Declare Class Method)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Declare Class Method)

                Note : Stop typing when you see the required component is selected

s23.JPG

Fig. (23) Component Browser Select the component (Declare Class Method)

After selecting the component click Ok or press ENTER

s24.JPG

Fig. (24) Interaction page - Set the properties and enter the required data as in the image above

s25.JPG

Fig. (25) Goal Desginer - Steps Tree

Select the step (Class Methods)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Define Class Method)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Define Class Method)

                Note : Stop typing when you see the required component is selected

s26.JPG

Fig. (26) Component Browser Select the component (Define Class Method)

After selecting the component click Ok or press ENTER

s27.JPG

Fig. (27) Interaction page - Set the properties and enter the required data as in the image above

s28.JPG

Fig. (28) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Define New Window)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Define New Window)

                Note : Stop typing when you see the required component is selected

s29.JPG

Fig. (29) Component Browser Select the component (Define New Window)

After selecting the component click Ok or press ENTER

s30.JPG

Fig. (30) Interaction page - Set the properties and enter the required data as in the image above

s31.JPG

Fig. (31) Form Designer

s32.JPG

Fig. (32) Goal Desginer - Steps Tree

Select the step (Window Events)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Events)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Events)

                Note : Stop typing when you see the required component is selected

s33.JPG

Fig. (33) Component Browser Select the component (Window Events)

After selecting the component click Ok or press ENTER

s34.JPG

Fig. (34) Interaction page - Set the properties and enter the required data as in the image above

s35.JPG

Fig. (35) Form Designer

s36.JPG

Fig. (36) Goal Desginer - Steps Tree

Select the step (Window Events)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Events)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Events)

                Note : Stop typing when you see the required component is selected

s37.JPG

Fig. (37) Component Browser Select the component (Window Events)

After selecting the component click Ok or press ENTER

s38.JPG

Fig. (38) Interaction page - Set the properties and enter the required data as in the image above

s39.JPG

Fig. (39) Form Designer

s40.JPG

Fig. (40) Goal Desginer - Steps Tree

Select the step (Window Events)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Events)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Events)

                Note : Stop typing when you see the required component is selected

s41.JPG

Fig. (41) Component Browser Select the component (Window Events)

After selecting the component click Ok or press ENTER

s42.JPG

Fig. (42) Interaction page - Set the properties and enter the required data as in the image above

s43.JPG

Fig. (43) Form Designer

s44.JPG

Fig. (44) Goal Desginer - Steps Tree

Select the step (Window Controls)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Controls)

                3 - Select the component (Button)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button)

                Note : Stop typing when you see the required component is selected

s45.JPG

Fig. (45) Component Browser Select the component (Button)

After selecting the component click Ok or press ENTER

s46.JPG

Fig. (46) Interaction page - Set the properties and enter the required data as in the image above

s47.JPG

Fig. (47) Form Designer

s48.JPG

Fig. (48) Goal Desginer - Steps Tree

Select the step (Button Events)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Events)

                3 - Select the component (Button Events)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button Events)

                Note : Stop typing when you see the required component is selected

s49.JPG

Fig. (49) Component Browser Select the component (Button Events)

After selecting the component click Ok or press ENTER

s50.JPG

Fig. (50) Interaction page - Set the properties and enter the required data as in the image above

s51.JPG

Fig. (51) Goal Desginer - Steps Tree

Select the step (Window Controls)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Controls)

                3 - Select the component (Button)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button)

                Note : Stop typing when you see the required component is selected

s52.JPG

Fig. (52) Component Browser Select the component (Button)

After selecting the component click Ok or press ENTER

s53.JPG

Fig. (53) Interaction page - Set the properties and enter the required data as in the image above

s54.JPG

Fig. (54) Form Designer

s55.JPG

Fig. (55) Goal Desginer - Steps Tree

Select the step (Button Events)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Events)

                3 - Select the component (Button Events)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button Events)

                Note : Stop typing when you see the required component is selected

s56.JPG

Fig. (56) Component Browser Select the component (Button Events)

After selecting the component click Ok or press ENTER

s57.JPG

Fig. (57) Interaction page - Set the properties and enter the required data as in the image above

s58.JPG

Fig. (58) Goal Desginer - Steps Tree

Select the step (Window Controls)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Controls)

                3 - Select the component (Button)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button)

                Note : Stop typing when you see the required component is selected

s59.JPG

Fig. (59) Component Browser Select the component (Button)

After selecting the component click Ok or press ENTER

s60.JPG

Fig. (60) Interaction page - Set the properties and enter the required data as in the image above

s61.JPG

Fig. (61) Form Designer

s62.JPG

Fig. (62) Goal Desginer - Steps Tree

Select the step (Button Events)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Events)

                3 - Select the component (Button Events)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button Events)

                Note : Stop typing when you see the required component is selected

s63.JPG

Fig. (63) Component Browser Select the component (Button Events)

After selecting the component click Ok or press ENTER

s64.JPG

Fig. (64) Interaction page - Set the properties and enter the required data as in the image above

s65.JPG

Fig. (65) Goal Desginer - Steps Tree

Select the step (Window Controls)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (ActiveX)

                3 - Select the component (Define ActiveX control)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Define ActiveX control)

                Note : Stop typing when you see the required component is selected

s66.JPG

Fig. (66) Component Browser Select the component (Define ActiveX control)

After selecting the component click Ok or press ENTER

s67.JPG

Fig. (67) Interaction page - Set the properties and enter the required data as in the image above

s68.JPG

Fig. (68) Form Designer

s69.JPG

Fig. (69) Goal Desginer - Steps Tree

Select the step (Define New Window ( MyWindowName ) , Title : "Report")

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Class)

                Note : Stop typing when you see the required component is selected

s70.JPG

Fig. (70) Component Browser Select the component (Window Class)

After selecting the component click Ok or press ENTER

s71.JPG

Fig. (71) Interaction page - Set the properties and enter the required data as in the image above

s72.JPG

Fig. (72) Interaction page - Set the properties and enter the required data as in the image above

s73.JPG

Fig. (73) Interaction page - Set the properties and enter the required data as in the image above

s74.JPG

Fig. (74) Form Designer

s75.JPG

Fig. (75) Goal Desginer - Steps Tree

Select the step (Class Methods)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Define Class Method)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Define Class Method)

                Note : Stop typing when you see the required component is selected

s76.JPG

Fig. (76) Component Browser Select the component (Define Class Method)

After selecting the component click Ok or press ENTER

s77.JPG

Fig. (77) Interaction page - Set the properties and enter the required data as in the image above

s78.JPG

Fig. (78) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Class)

                Note : Stop typing when you see the required component is selected

s79.JPG

Fig. (79) Component Browser Select the component (Window Class)

After selecting the component click Ok or press ENTER

s80.JPG

Fig. (80) Interaction page - Set the properties and enter the required data as in the image above

s81.JPG

Fig. (81) Interaction page - Set the properties and enter the required data as in the image above

s82.JPG

Fig. (82) Interaction page - Set the properties and enter the required data as in the image above

s83.JPG

Fig. (83) Goal Desginer - Steps Tree

Select the step (Class Methods)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Object Oriented Programming (OOP))

                3 - Select the component (Define Class Method)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Define Class Method)

                Note : Stop typing when you see the required component is selected

s84.JPG

Fig. (84) Component Browser Select the component (Define Class Method)

After selecting the component click Ok or press ENTER

s85.JPG

Fig. (85) Interaction page - Set the properties and enter the required data as in the image above

s86.JPG

Fig. (86) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Structure Programming)

                3 - Select the component (Scope of Variable)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Scope of Variable)

                Note : Stop typing when you see the required component is selected

s87.JPG

Fig. (87) Component Browser Select the component (Scope of Variable)

After selecting the component click Ok or press ENTER

s88.JPG

Fig. (88) Interaction page - Set the properties and enter the required data as in the image above

s89.JPG

Fig. (89) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Class)

                Note : Stop typing when you see the required component is selected

s90.JPG

Fig. (90) Component Browser Select the component (Window Class)

After selecting the component click Ok or press ENTER

s91.JPG

Fig. (91) Interaction page - Set the properties and enter the required data as in the image above

s92.JPG

Fig. (92) Interaction page - Set the properties and enter the required data as in the image above

s93.JPG

Fig. (93) Interaction page - Set the properties and enter the required data as in the image above

s94.JPG

Fig. (94) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Windows)

                3 - Select the component (Window Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Window Class)

                Note : Stop typing when you see the required component is selected

s95.JPG

Fig. (95) Component Browser Select the component (Window Class)

After selecting the component click Ok or press ENTER

s96.JPG

Fig. (96) Interaction page - Set the properties and enter the required data as in the image above

s97.JPG

Fig. (97) Interaction page - Set the properties and enter the required data as in the image above

s98.JPG

Fig. (98) Interaction page - Set the properties and enter the required data as in the image above

s99.JPG

Fig. (99) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (ActiveX)

                3 - Select the component (ActiveX Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (ActiveX Class)

                Note : Stop typing when you see the required component is selected

s100.JPG

Fig. (100) Component Browser Select the component (ActiveX Class)

After selecting the component click Ok or press ENTER

s101.JPG

Fig. (101) Interaction page - Set the properties and enter the required data as in the image above

s102.JPG

Fig. (102) Interaction page - Set the properties and enter the required data as in the image above

s103.JPG

Fig. (103) Interaction page - Set the properties and enter the required data as in the image above

s104.JPG

Fig. (104) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (ActiveX)

                3 - Select the component (ActiveX Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (ActiveX Class)

                Note : Stop typing when you see the required component is selected

s105.JPG

Fig. (105) Component Browser Select the component (ActiveX Class)

After selecting the component click Ok or press ENTER

s106.JPG

Fig. (106) Interaction page - Set the properties and enter the required data as in the image above

s107.JPG

Fig. (107) Interaction page - Set the properties and enter the required data as in the image above

s108.JPG

Fig. (108) Interaction page - Set the properties and enter the required data as in the image above

s109.JPG

Fig. (109) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Classes)

                3 - Select the component (Button Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button Class)

                Note : Stop typing when you see the required component is selected

s110.JPG

Fig. (110) Component Browser Select the component (Button Class)

After selecting the component click Ok or press ENTER

s111.JPG

Fig. (111) Interaction page - Set the properties and enter the required data as in the image above

s112.JPG

Fig. (112) Interaction page - Set the properties and enter the required data as in the image above

s113.JPG

Fig. (113) Interaction page - Set the properties and enter the required data as in the image above

s114.JPG

Fig. (114) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Classes)

                3 - Select the component (Button Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button Class)

                Note : Stop typing when you see the required component is selected

s115.JPG

Fig. (115) Component Browser Select the component (Button Class)

After selecting the component click Ok or press ENTER

s116.JPG

Fig. (116) Interaction page - Set the properties and enter the required data as in the image above

s117.JPG

Fig. (117) Interaction page - Set the properties and enter the required data as in the image above

s118.JPG

Fig. (118) Interaction page - Set the properties and enter the required data as in the image above

s119.JPG

Fig. (119) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (Classes)

                3 - Select the component (Button Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (Button Class)

                Note : Stop typing when you see the required component is selected

s120.JPG

Fig. (120) Component Browser Select the component (Button Class)

After selecting the component click Ok or press ENTER

s121.JPG

Fig. (121) Interaction page - Set the properties and enter the required data as in the image above

s122.JPG

Fig. (122) Interaction page - Set the properties and enter the required data as in the image above

s123.JPG

Fig. (123) Interaction page - Set the properties and enter the required data as in the image above

s124.JPG

Fig. (124) Goal Desginer - Steps Tree

Select the step (Start Here)

We will start now new interaction process to generate new steps to our steps tree.

The slow way (Using Mouse):

                1 - Click Interact to open the components browser

                2 - Select the domain (ActiveX)

                3 - Select the component (ActiveX Class)

The fast way (Using Keyboard shortcuts):

                1 - Get the component using its name by typing (ActiveX Class)

                Note : Stop typing when you see the required component is selected

s125.JPG

Fig. (125) Component Browser Select the component (ActiveX Class)

After selecting the component click Ok or press ENTER

s126.JPG

Fig. (126) Interaction page - Set the properties and enter the required data as in the image above

s127.JPG

Fig. (127) Interaction page - Set the properties and enter the required data as in the image above

s128.JPG

Fig. (128) Interaction page - Set the properties and enter the required data as in the image above

s129.JPG

Fig. (129) Goal Desginer - Final Steps Tree

3 - Final Steps Tree

Set Class Name & Window Name

                PWCT-Code Generator: Replace String (MyClassName) with (ReportClass)

                PWCT-Code Generator: Replace String (MyWindowName) with (&(self:cWindowName))

Class

                Define Class MyClassName From Report_Base

                                Declare Class Data

                                                Data ReportName Init Value "ReportName"

                                                Data cWindowName Init Value "ReportWindow"

                                Declare Class Methods

                                                Method showwindow

                                                Method closewindow

                                                Method SizeReport

                                End of Class

                                Class Methods

                                                Define Method ShowWindow Class MyClassName

                                                                Start Here

                                                                                Define New Window ( MyWindowName ) , Title : "Report"

                                                                                                Window Events

                                                                                                                Event: ON INIT : Action self:ShowReport()

                                                                                                                Event: ON SIZE : Action self:SizeReport()

                                                                                                                Event: ON MAXIMIZE : Action self:SizeReport()

                                                                                                Window Properties

                                                                                                Window Controls

                                                                                                                Define New Button ( btn1 ) , Caption : "Close"

                                                                                                                                Button Events

                                                                                                                                                Event: ON CLICK : Action self:CloseWindow()

                                                                                                                                Button Properties

                                                                                                                Define New Button ( btn2 ) , Caption : "Print"

                                                                                                                                Button Events

                                                                                                                                                Event: ON CLICK : Action self:PrintReport()

                                                                                                                                Button Properties

                                                                                                                Define New Button ( btn3 ) , Caption : "Refresh"

                                                                                                                                Button Events

                                                                                                                                                Event: ON CLICK : Action self:ShowReport()

                                                                                                                                Button Properties

                                                                                                                Active Control ( self:oActiveX )

                                                                                                End Of Window

                                                                                                MyWindowName.Maximize ( )

                                                                                                Activate window

                                                                End of Method (Return 0)

                                                Define Method CloseWindow Class MyClassName

                                                                Start Here

                                                                                MyWindowName.Release ( )

                                                                End of Method (Return 0)

                                                Define Method SizeReport Class MyClassName

                                                                Start Here

                                                                                Local tempvar1,tempvar2

                                                                                tempvar1 = MyWindowName.Width

                                                                                tempvar2 = MyWindowName.Height

                                                                                self:oactivex.nWidth := tempvar1 - 84

                                                                                self:oactivex.nHeight := tempvar2 - 125

                                                                                MyWindowName.btn1.Row := tempvar2-88

                                                                                MyWindowName.btn2.Row := tempvar2-88

                                                                                MyWindowName.btn3.Row := tempvar2-88

                                                                                self:oactivex.Show ( )

                                                                End of Method (Return 0)