MSTC Logo

Programming Logic - Intermediate
Last revised: February 2, 2012

Syllabus

Instructor's Notes  
Text Files
     Basics of Classes
     Standard Dialog Boxes
Instructor's notes for processing text files.
Notes for how to create a basic, custom class
Notes for how to implement VB's standard dialog boxes
Data Validation Instructor's notes for thorough data validation techniques
Database Basics

     Database Access Concepts (PowerPoint)
     Database Access Concepts (PDF)
 
Instructor's notes for accessing SQL Server databases using Visual Basic

PowerPoint/Visio diagrams of Form-to-Database connectivity concepts.

Database Basics II

Creating a Database Access Form

Instructor's notes for how to add a professional touch to your database applications.

Comprehensive list of steps for creating data access forms.
 

Crystal Reports   Instructor's notes for creating Crystal Reports and displaying/printing them from Visual Basic
 
Arrays and Collections Instructor's notes for implementing arrays and collections
Menus, Toolbars and Status Bars Instructor's notes for implementing menus, toolbars and status bars.
Printing in VB.Net How to create custom reports in VB.Net
Visual Basic: How To How to accomplish tasks that I always seem to forget how to do and can never find again in my resources.


Recorded Lectures
Unit 1 - Text File Processing and Classes
  Part 1  MP4 Uses of text files; Text file processing overview; Creating an input file pointer; Opening a file for input; Closing a file
  Part 2  MP4 Review; Opening a file for reading; Checking for file existence; Sensing End-of-File; Writing to a file; Closing a file after writing
  Part 3  MP4 Class concepts; Creating a class file; Defining data members; Creating a Region; Defining properites
  Part 4  MP4 Constructors; Custom methods (behaviors); Instantiating a class (creating a class "instance"); Transferring class data to a form
  Part 5  MP4 Classes review; Transferring data from the class to a form; Instantiating using parameters; Tranferring data from the form to the class; Calling (invoking) custom class methods
  Part 6  MP4 Calculating Pizza Shop order total; Creating Private class functions; Using Public class constants in the GUI; Overriding ToString
Unit 2 - Validation
  Part 1  MP4 Validation concepts; Selecting the proper control; Using the Business Class to designate maximum text box lengths and min/max date picker values; Key-level validation: KeyPress event
  Part 2  MP4 Currency and Decimal KeyPress events; Transfering data from form to Business Class; Validating new values in the Business Class; Throwing exceptions from the Business Class to GUI
  Part 3  MP4 Review; Error Providers and GUI validation; Handling null values (empty text boxes)
  Part 4  MP4 Fixing the Save error; Saving check box values to the Business class; Validating to ensure a value is in a list of values; Load GUI combo boxes with a list of values from the Business class
  Part 5  MP4 Review; Function and procedure concepts; Get GUI to check for error markers (NoErrors function); Have Business class check for remaining errors (InvalidFields function)
  Part 6  MP4 The rest of InvalidFields; Technique 2 for NoErrors (visit every field); Adding a consistency check to InvalidFields; MakeStringFromArray
Unit 3 - Database Basics
  Part 1  MP4 Database connectivity (3-Tier Model) concepts; Creating a connection and a Dataset Class to an Access database
  Part 2  MP4 Adding a selection grid to the form; Adding a binding source; why we need both; Creating a custom table adapter for the selection grid; Creating a Business Class function to get the selection grid data from the database; Linking the grid, the binding source and a data table; Customizing the grid appearance; Filtering the grid
  Part 3  MP4 grdSelect and txtSearch review; Sensing which row was clicked in the grid; Capturing the ID number of the selected record; Modifying the main table adapter to only retrieve one record; GetRecord (business class)
  Part 4  MP4 Displaying the current business record in the GUI (DisplayRecord); Saving changes to the current record (SaveRecord); Creating an Update query in the table adapter; Canceling changes to the current record.
  Part 5  MP4 Saving and canceling changes (review); Deleting records (including creating a new table adapterquery); Updating grdSelect to reflect changes; Refresing grdSelect sort; Keeping the current record selected in grdSelect if it moves
  Part 6  MP4 Handling Null values in GetRecord; Handling Null values in DisplayRecord (GUI), Handling Null values in SaveRecord; Determining maximum text box length using database max lengths
Unit 4 - Database Phase II
  Part 1  MP4 Redoing the XSD to accommodate new table layouts; Creating a lookup query for the second table; Creating a business class for the second table; Updating the original business and GUI to accommodate a lookup field
  Part 2  MP4 Loading a combo box from a database lookup; Setting the combo DisplayMember and ValueMember properties; Using the combo box SelectedValue property
  Part 3  MP4 Using linking tables to fill a combo box (review); Modifying the GUI to display a new record; Modifying SaveRecord (business class) to handle new records; Creating a LastID query
  Part 4  MP4 Creating lookup fields (review); Allowing users to insert new records (review); Updating the grid to add a new record; Allowing the user to click Delete to cancel the addition of a new record; Sensing duplicate records; Determining "logical keys"; Sensing if the logical keys have changed; Adding duplicate record validation (consistency check)
  Part 5  MP4 (Optional Lecture) Allowing the user to override the duplicate record error (enter duplicate logical keys into the database)
  Part 6  MP4 Making the application more professional; Enabling/disabling the form buttons, the grid and the search box as appropriate; Sensing when text boxes, combo boxes, check boxes, date pickers and radio buttons change (and enabling form objects as appropriate); Sensing when the record returns to its orginal state
  Part 7  MP4 Preventing CheckRecordChanged from recalculating RecordState while a new (different) record is being displayed; Hiding the details (panel) if there are no records in the grid; Displaying and removing a "Save Successful" message; Displaying an "Adding new record" message; Forcing the user to save/cancel changes before closing a form
Unit 5 - Crystal Reports
  Part 1  MP4 Installing Crystal Reports (where to get it); Configuring a project for Crystal Reports compatibility;Creating a report using the wizard; Creating a form to view Crystal Reports; Linking a data source to a Crystal Report to a report viewer
  Part 2  MP4 Customizing reports; Changing headers; selecting multiple objects; Moving objects; Resizing objects; Aligning objects; Deleting objects; Setting object formats; Customizing groups; Changing sort order
  Part 3  MP4 Crystal Reports review; Adding images to reports; Creating mailing labels; Creating a calculated field; Creating a chart report with visible totals but suppressed details.
  Part 4  MP4 Multi-column reports; Implementing report menus
  Part 5  MP4 Calculated fields, using user-defined values in the report query and as report parameters
Unit 6 - Arrays
  Part 1  MP4 Array concepts; Defining arrays; Array indexes; Filling an array; Managing a partially filled array (counter); Displaying an arrays contents; For Loops and arrays; Saving an arrays contents; For Each loops and partially-filled arrays.
  Part 2  MP4 Arrays review; Sorting an array; Resizing an array; Creating statistics from an array of numbers (total, average, min, max); Using the VB list class

Assignments  
Tickets Daily mini-assignments required to get into the next class period.
Pseudocode Standards Standards for pseudocode used in this class
Programming Standards Course programming standards to be applied to all projects
String Function Journal Create a journal documenting the String functions demonstrated in class
Unit 1 : Text File Processing Update the Assignment Tracker program to save assignments to a file.
Unit 2 : Business Class Validation Create a validating business class for the Gas Mileage program.
Unit 2 : GUI Validation Update the Gas Mileage program to validate all inputs.
Unit 3 : Database Basics
            Part 1
            Part 2
            Part 3

     Assignment Databases:
     Students
     DVDs
     Members
     Car Maintenance
 
Assignment to create a data entry form.

 



Access 2007 databases used for the assignments.
(Right-Click, Save Target As)

Unit 4: Database Applications-Phase II
            Part 4
            Part 5
            Part 6
 
    Assignment Databases:
     Students
     Courses
     DVDs
     Members
     Car Maintenance
 
Assignment to add insert record and duplicate record check capabilities (among others)

 

 

Access 2007 databases used for the assignments.
(Right-Click, Save Target As)

Unit 5: Crystal Reports Assignment to create Crystal Reports
Unit 6: Arrays and Lists Assignment to create an on-line quiz or a matching game.

Labs Guided Learning Exercises
Unit 1 - Standard Dialog Boxes Lab to demonstrate and experiment with Open and Save dialog boxes.
Unit 2 - GUI Validation Programming Lab to demonstrate how to use Error Providers to display business class errors in the GUI.

Evaluation Sheets Evaluate your own programs before turning them in.
Unit 1 - Text File Processing Evaluation sheet for the Assignment Tracker project.
Unit 2 - Business Class Validation Evaluation sheet for the Enhanced Gas Mileage project (business class).
Unit 2 - GUI Class Validation Evaluation sheet for the Enhanced Gas Mileage project (GUI class).
Unit 3 DVD Part 1 Evaluation sheet for the DVD database project (Part 1).
Unit 3 DVD Part 2 Evaluation sheet for the DVD database project (Part 2).
Unit 3 DVD Part 3 Evaluation sheet for the DVD database project (Part 3).
Unit 3 Car Maintenance Part 1 Evaluation sheet for the Car Maintenance database project (Part 1).
Unit 3 Car Maintenance Part 2 Evaluation sheet for the Car Maintenance database project (Part 2).
Unit 3 Car Maintenance Part 3 Evaluation sheet for the Car Maintenance database project (Part 3).
Unit 3 Club Member Part 1 Evaluation sheet for the Club Member database project (Part 1).
Unit 3 Club Member Part 2 Evaluation sheet for the Club Member database project (Part 2).
Unit 3 Club Member Part 3 Evaluation sheet for the Club Member database project (Part 3).
Unit 3 Student Part 1 Evaluation sheet for the Student database project (Part 1).
Unit 3 Student Part 2 Evaluation sheet for the Student database project (Part 2).
Unit 3 Student Part 3 Evaluation sheet for the Student database project (Part 3).
Unit 3 Student Select Part 1 Evaluation sheet for a student selected database project (Part 1).
Unit 3 Student Select Part 2 Evaluation sheet for a student selected database project (Part 2).
Unit 3 Student Select Part 3 Evaluation sheet for a student selected database project (Part 3).
Unit 4 DVD Part 4 Evaluation sheet for the DVD database project (Part 4).
Unit 4 DVD Part 5 Evaluation sheet for the DVD database project (Part 5).
Unit 4 DVD Part 6 Evaluation sheet for the DVD database project (Part 6).
Unit 4 Car Maintenance Part 4 Evaluation sheet for the Car Maintenance database project (Part 4).
Unit 4 Car Maintenance Part 5 Evaluation sheet for the Car Maintenance database project (Part 5).
Unit 4 Car Maintenance Part 6 Evaluation sheet for the Car Maintenance database project (Part 6).
Unit 4 Club Member Part 4 Evaluation sheet for Club Member database project (Part 4).
Unit 4 Club Member Part 5 Evaluation sheet for Club Member database project (Part 5).
Unit 4 Club Member Part 6 Evaluation sheet for Club Member database project (Part 6).
Unit 4 Student Part 4 Evaluation sheet for the Student database project (Part 4).
Unit 4 Student Part 5 Evaluation sheet for the Student database project (Part 5).
Unit 4 Student Part 6 Evaluation sheet for the Student database project (Part 6).
Unit 4 Student Select Part 4 Evaluation sheet for a student selected database project (Part 4).
Unit 4 Student Select Part 5 Evaluation sheet for a student selected database project (Part 5).
Unit 4 Student Select Part 6 Evaluation sheet for a student selected database project (Part 6).
Unit 5 Crystal Reports - DVD Evaluation sheet for the DVD Crystal Reports project.
Unit 5 Crystal Reports - Student Evaluation sheet for the Student database Crystal Reports project.
Unit 5 Crystal Reports - Car Maintenance Evaluation sheet for the Car Maintenance Crystal Reports project.
Unit 5 Crystal Reports - Members Evaluation sheet for the Members Crystal Reports projects.
Unit 5 Crystal Reports - Student Select Evaluation sheet for the Student Select Crystal Reports project.

Handouts  
Visio Instructions Quick and dirty instructions for using Visio to create flowcharts
Registering for Free Software How to register to get free program development software from the Microsoft Developers Network Academic Alliance.
Installing Visual Studio 2010 Tips on how to install Visual Studio 2008 using the least amount of hard drive space and in the quickest time possible.
ASCII Table Web page showing the ASCII value of each character
Image Manipulation How to change existing images: format, size, cropping, transparency. Demo using Paint.Net
3-Tier Architecture Visual diagram of the the 3-tier architecture of program design
Creating SQL Server Databases Instructor's notes for creating SQL Server databases, tables and queries.

Programming Tips
http://www.inquiry.com/techtips/thevbpro/ A Ton of Help from the VB Pro
Interface Hall of Shame What NOT to include in your interface.

Visual Basic Links Pages
http://www.vb-web-directory.com/ Huge, categorized list of VB sites
http://www.planet-source-code.com More code than I have time to look at. Code ratings and categories.
http://www.vbexplorer.com
http://www.vbworld.com/
http://www.vbcode.com

Icons, Clip Art and Other Graphics
Lots of Icons Icons (zipped) from the MSTC server
Icon Archives Well organized, lots of icons
Cool Archives 4000 colorful icons. Thanks Kathy S.

 
MSTC Stevens Point