Home

Support

Contact

Our Blog

Email

 

Visual FoxExpress | AFP | CrystalVFE | Xcase | Orders | Training | Consulting | Support | Forums | Contact | About

 Contents of CD 1

01 - Introduction(7.5 minutes)

 

An overview of the Invoice Application.

 

( No zip file )

 

02 - Setting up to work in VFE ( 9 minutes )

Using \tools\options in VFP to configure the environment for VFE development

Creating the config.fpw file

Creating a VFEStarter.prg to load utilities onto the menu

 

( No zip file )

 

03 - Setting up the DBCX ( 30 minutes )

 

Creating a New VFE project

Introducing the Application Builder

Introducing the DBCX Explorer

Using an existing DBC and bringing it into the DBCX Explorer

Naming conventions

Basic data design

Setting up primary key generation

Setting up other properties including Search Index Tags

Input masks

UI classes

Lookups and using the Lookup builder

 

03 - Setting up the DBCX.zip

 

04 - Creating the First Application Classes ( 27 minutes )

 

Introducing the A layer, the I layer and the C layer

The Properties sheet

Creating Cursor Classes

Creating Data Environment Classes

Creating Business Object Classes

Creating a multi—page Presentation Object

Creating a Presentation Object form with a List Page

Creating a Toolbar

Building the project – when and why

Running the app for the first time

 

04 - Creating the First Application Classes.zip

 

05 - First Changes and a SRMAF ( 47 minutes )

 

Options dialog

Editing the presobj

Replacing tabs with buttons to change pages

Using the object list in writing code

Working with option groups

Comboboxes vs. Dropdown Listboxes

Adding a field

Introducing the Checkbox Builder

Introducing the Grid Builder

Adding a checkbox to the grid

Creating a Single Record Modal Add Form

Attaching the SRMAF to the Lookup

Creating a grid based presobj with editbox

Introducing the Editbox Builder

 

05 - First Changes and a SRMAF.zip

 

06 - Finishing the Table-based Forms ( 18.5 minutes )

 

Introducing the Cursor Builder

Setting the default order

Introducing the Toolbar Handler

Creating a Grid Toolbar

Creating the Products maintenance form

Creating the Sales Reps maintenance form

 

06 - Finishing the Table-based Forms.zip

 

07 - Adding Views ( 33 minutes )

 

Introducing the View Designer

Calculated Expressions in the view

Using Joins

Parameterizing a child view against a parent’s primary key

Setting the Order by

Setting the Update Properties

Examining the SQL code

Preventing problems when changing the underlying tables

Setting DBCX properties for the views

Generating keys for the views

Setting interface properties for the views

Creating Cursors, Data environments, and business objects

 

07 - Adding Views.zip

 

08 - View-based Presentation Objects ( 30 minutes )

 

Creating a presobj with a read-only grid

Adding text boxes to be bound to properties

Creating the Parent-child presentation object with the Wizard

Setting the relationship

Creating the data entry presobj

Creating the line items grid presobj

Creating the invoice parent-child presobj

( establishing a parent-child-grandchild relationship)

 

08 - View-based Presentation Objects.zip

 

09 - Forms for View-based Presentation Objects ( 20 minutes )

 

SRMAF for the Invoice Data Form

Setting the ceditform property

Creating an Edit button

Dropping a presentation object onto a form as one object

 

09 - Forms for the View-based Presentation Objects.zip

 

Contents of CD #2

 

09 - Forms for the View-based Presentation Objects.zip

(repeated as it is the starting point for Screencam #10)

 

10 - Payment Module - the Parent Child Form ( 17 minutes )

 

Creating the v_Paymentspresobj

Creating the Parent-Child Form with the Wizard

Moving the DoChildform button to the presentation object

 

10 - Payments Module - Parent Child Form.zip

 

11 - First Code - Field Behavior Classes ( 25.5 minutes )

 

Introducing Field Behavior Classes

Introducing the validate_post() method

Introducing the checklookup_post() method

Using the fields array of the cursor class

Using the getvalues() method to create record objects

Getting values from the lookup cursor to use in calculations

Setting the field object in the DBCX to use the subclass.

 

11 - First Code - Field Behavior Classes.zip

 

12 - Introduction to Access Methods ( 11 minutes )

 

Creating new properties and methods

Introducing Access Methods

Introducing the calculatesum() method of the cursor class

Binding to a business object property

 

12 - Introduction to Access Methods.zip

 

13 - Bizobj communication through object references ( 26 minutes )

 

Storing object references in properties

Putting defensive code in the Destroy() method of the bizobj

Introducing the registerchild() method

Business object communication

 

13 - Bizobj communication through object references.zip

 

14 - Making changes to the Presentation Layer ( 30 minutes )

 

Duplicating information on second page

Creating a FBC to refresh looked up values in views

Refreshing labels on the presentation object

Introducing the Globalhook

Using Lostfocus()

Setting the Default Cursor Class in the DBCX

Setting the cStartform property of the application object

 

14 - Making changes to the Presentation Layer.zip

 

15 - Simple Report Output Object - Customer List( 7.5 minutes )

 

Introducing the Output Object

Introducing the treeview and data-driving from Repolist.dbf

 

15 - Simple Report Output Object - Customer List.zip

 

16 - Parameterized Report - Singe Invoice ( 26 minutes )

 

Designing a complex parameterized report view

Creating a lookup view

Introducing View Parameter containers

Creating an Output Object using a view parameter container

Desiging complex report forms

 

16 - Parameterized Report - Single Invoice.zip

 

17 - Introduction to the Debugger( 27 minutes )

 

Using debugmode()

Exploring the object model in the Watch Window

Examining objects created in code

Debugging and using the Command Window

Correcting errors on the fly in order to complete a method

 

( No zip file )

 

Conclusion

Copyright (c) 2008, F1 Technologies