- \MyProjects\
  INFO465
+ gs9191.db

. //Detailed in an attached ERD & Data Dictionary
+ Extended
  Database

  Attributes


+ Validation Rules

- validate_ledger_id

. //Requires number 
  in the range 1000-5999
- validate_activity_id

. //Requires number 
  in the range 100-999
- others_you_may_have
. //
+ Edit Styles
- gs_classes

. //DropDownList
  Contains valid class for

  gs table
- gs_lookup

. DDDW
  Uses dw_gs_lookup to select everything
- gs_sales_lookup

. DDDW
  Uses dw_gs_sales_lookup

  to display only PriceListed

  Goods & Services
- gs_supplier_lookup

. DDDW
  Uses Retrieval Argument passed

  to DataWindow Child to only

  display Goods & Services offered

  by the selected enterprise
- ledger_lookup

. //DropDownDataWindow
  Uses dw_ledger_lookup

  returns id from ledger table
- other_lookups

. //What's in your application
.

.
+ enterprise.def

. //An ASCII file Containing
  enterprise id, name, email addres, and description of trade

  in asterisc-delimited fields
+ gs9191.pbl
+ Application Object
  gs9191


- Global Variables

. //Each student please detail these 
  and comment them to describe their use
- @open
. //Setup ODBC DSN

. open(w_main_panel)
+ Functions

- parseline

. to be detailed by each student
. others as used in the application
+ Windows

+ w_main_panel

+ @open

- Process enterprise.def
. //To be detailed by each student
+ Table maintenance
  Buttons


- cb_ldet

- @getfocus

. this.default <--true
  st_helper.text <-- Helpful prompt
- @click
. open w_ldet_maint
- cb_activity

. //
- cb_entity

. //
- cb_gs
. //
+ Order Entry
  Buttons


- cb_order_entry

. //
- cb_change_order

. //
- cb_psx12_inbound
  receive psX12 orders


. //look to details about
  to Ledger Engine for syntax

  and logic you might adopt
- cb_send_psX12

. //Report any orders queued for psX12 and
  //provide option for sending them
- cb_psx12_send_cat

. //script posted on website
  //1 point penalty

  //for false advertising
- cb_psx12_request_cat
  request psX12 catalog
. to be detailed later
+ Report
  Buttons


- cb_customer_labels
 


. open w_customer_labels
- cb_report_others_
  in_your_application
. //
+ Buttons for
  Journals & 

  Financials
- cb_adate_maint 

. open w_adate_maint
- cb_display_jv

. //
- cb_email_jv

. //
- cb_net_zero

.
- cb_trial_balance

.
- cb_financials
.
+ Table Maintenance

+ w_gs_maint

+ Instance 
  Variables


. boolean FirstPass <-- TRUE
  integer TheId

  long TheRow
+ Event 
  Scripts


- @open

. Connect with SQLCA

- SQLCA.SQLCODE <> 0 and 
  SQLCA.SQLCODE <> -1


. MessageBox "SQLCODE ->" + 
     STRING(SQLCA.SQLCODE) + "<-",

     SQLCA.SQLERRTEXT

  Halt
. //Get lookup window & buttons set for first use
  dwc_lookup.SetTransObject(SQLCA)

  dwc_lookup.Retrieve()

  dwc_lookup.SetRow(1)

  Enable Buttons for first use

  dwc_maint.Enabled <-- false

  cb_delete.Enabled <-- false

  cb_save.Enabled <-- false

  cb_update.Enabled <-- true

  cb_new.Enabled <-- true

  cb_cancel.Enabled <-- false

 
- @close
. Disconnect from SQLCA
+ Controls
- dwc_lookup

. DataObject is dw_gs_lookup

- @click
 


. //
- @double
  click
. //
- dwc_maint

. DataObject is dw_gs_maint
- st_helper

. //Text is used to display prompts for User
- cb_update

. //
- cb_new

. //
- cb_save

- @getfocus

. this.default <-- true
- @click
. dwc_maint.update

- SQLCode = 1

. COMMIT
  //Set buttons and controls for next use

  //
or

- else
. messagebox with SQLError
  Halt
- cb_delete

. //
- cb_cancel

. //
- cb_close
. //
+ w_activity_maint

. inherited from w_ldet_maint
  dwc_lookup DataObject is dw_activity_lookup
+ w_entity_maint

. //Describe yours
+ w_gs_maint
. //Describe yours
+ Order Entry

+ w_order_entry

+ Instance 
  Variables


. //
+ Event 
  Scripts


- @open

. //
- @close
. //
+ Controls
- dwc_anorder

. //
- dwc_adetail

- @itemchange
.
- dwc_ordered_details

.
- cb_go2order

- @gotfocus

.
- @click
. //This does several things, 
  detail them very clearly
- cb_detail_ok

- @gotfocus

.
- @click
. //This does lots, too, including
  inserting the new Detail into the database

  detail it carefully
- cb_tender
- @click
. //Make sure to show how it 'flips the sign' &c
+ w_salesorder_entry
. This should show clearly
+ Reports

- w_customer_labels

. //
- w_others

. to be detailed later as appropriate for your Enterprise
.

.

.
+ Journals &
  Financials
- w_adate_maint

. inherited from w_ldet_maint

. modify local scripts dwc_lookup Clicked and cb_save to handle 
  date for id instead of integer

  as in the rest of the series, see posted at website


- @open

. Connect
- @close

. //edit that the date's details net zero
  //select sum(qty*each) into net


- net <> 0

. messagebox No can do, gotta net zero

. make sure status is O
or

- net <> 0

. change status to C

. messagebox thanks & congratulations
. COMMIT

. DISCONNECT
- dwc_lookup

. DataObject is dw_adate_lookup

- @click

.
- @double-click
.
- dwc_maint
. dw_adate_maint
- w_display_jv

. //
- w_psX12_JV
. //Hack together Email a CAT & Display a JV
  //Make it email the JV instead of, along with,

  //displaying it
+ Data Windows
+ Table Maintenance

- dw_gs_lookup

. Supplies gs id & name for Lookup
- dw_gs_maint

. Supplies fields in gs record that user can edit
- dw_other_lookup

. //Make yours as complete as the system tree
- dw_other_maint
.
+ Order Entry

- dw_anorder

. //
- dw_adetail

- gs_id
. Uses Selects all G&S
 
- dw_sales_detail

. //Only selects Price Listed G&S
- dw_ordered_details
. //tabular datawindow with Order's header info
  in Header Band, Details in the Details band, 

  and a running total in the Summary band


. Uses Retrieval Argument id2get to select
  Details for the current order
+ Reports

. //Detail yours

.

.

.
+ Journals &
  Financial

  Statements
. //Detail any in your application

.