frmClient.frm
Upload User: hsw357
Upload Date: 2015-09-29
Package Size: 389k
Code Size: 29k
Category:

ADO-ODBC

Development Platform:

Visual Basic

  1. VERSION 5.00
  2. Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "mscomct2.ocx"
  3. Object = "{C932BA88-4374-101B-A56C-00AA003668DC}#1.1#0"; "MSMASK32.OCX"
  4. Object = "{BDC217C8-ED16-11CD-956C-0000C04E4C0A}#1.1#0"; "tabctl32.ocx"
  5. Begin VB.Form frmClient 
  6.    Caption         =   "Client"
  7.    ClientHeight    =   5490
  8.    ClientLeft      =   1110
  9.    ClientTop       =   345
  10.    ClientWidth     =   7470
  11.    Icon            =   "frmClient.frx":0000
  12.    KeyPreview      =   -1  'True
  13.    LinkTopic       =   "Client"
  14.    MDIChild        =   -1  'True
  15.    ScaleHeight     =   5490
  16.    ScaleWidth      =   7470
  17.    Begin VB.Label lblLabels 
  18.       Caption         =   "Address:"
  19.       BeginProperty Font 
  20.          Name            =   "Tahoma"
  21.          Size            =   8.25
  22.          Charset         =   0
  23.          Weight          =   700
  24.          Underline       =   0   'False
  25.          Italic          =   0   'False
  26.          Strikethrough   =   0   'False
  27.       EndProperty
  28.       Height          =   255
  29.       Index           =   0
  30.       Left            =   150
  31.       TabIndex        =   2
  32.       Top             =   510
  33.       Width           =   1815
  34.    End
  35.    Begin VB.TextBox Address
  36.       Alignment       =   0 
  37.       Height          =   315
  38.       Left            =   2070
  39.       TabIndex        =   1
  40.       Top             =   510
  41.       Width           =   3375
  42.    End  
  43.    Begin VB.Label lblLabels 
  44.       Caption         =   "City:"
  45.       BeginProperty Font 
  46.          Name            =   "Tahoma"
  47.          Size            =   8.25
  48.          Charset         =   0
  49.          Weight          =   700
  50.          Underline       =   0   'False
  51.          Italic          =   0   'False
  52.          Strikethrough   =   0   'False
  53.       EndProperty
  54.       Height          =   255
  55.       Index           =   1
  56.       Left            =   150
  57.       TabIndex        =   4
  58.       Top             =   835
  59.       Width           =   1815
  60.    End
  61.    Begin VB.TextBox City
  62.       Alignment       =   0 
  63.       Height          =   315
  64.       Left            =   2070
  65.       TabIndex        =   3
  66.       Top             =   835
  67.       Width           =   3375
  68.    End  
  69.    Begin VB.Label lblLabels 
  70.       Caption         =   "Client ID(Auto):"
  71.       BeginProperty Font 
  72.          Name            =   "Tahoma"
  73.          Size            =   8.25
  74.          Charset         =   0
  75.          Weight          =   700
  76.          Underline       =   0   'False
  77.          Italic          =   0   'False
  78.          Strikethrough   =   0   'False
  79.       EndProperty
  80.       Height          =   255
  81.       Index           =   2
  82.       Left            =   150
  83.       TabIndex        =   6
  84.       Top             =   1160
  85.       Width           =   1815
  86.    End
  87.    Begin VB.TextBox ClientID
  88.       BackColor       =   &H8000000F&
  89.       Enabled         =   0   'False 
  90.       Alignment       =   1 
  91.       Height          =   315
  92.       Left            =   2070
  93.       TabIndex        =   5
  94.       Top             =   1160
  95.       Width           =   3375
  96.    End  
  97.    Begin VB.Label lblLabels 
  98.       Caption         =   "Client Name:"
  99.       BeginProperty Font 
  100.          Name            =   "Tahoma"
  101.          Size            =   8.25
  102.          Charset         =   0
  103.          Weight          =   700
  104.          Underline       =   0   'False
  105.          Italic          =   0   'False
  106.          Strikethrough   =   0   'False
  107.       EndProperty
  108.       Height          =   255
  109.       Index           =   3
  110.       Left            =   150
  111.       TabIndex        =   8
  112.       Top             =   1485
  113.       Width           =   1815
  114.    End
  115.    Begin VB.TextBox CompanyName
  116.       Alignment       =   0 
  117.       Height          =   315
  118.       Left            =   2070
  119.       TabIndex        =   7
  120.       Top             =   1485
  121.       Width           =   3375
  122.    End  
  123.    Begin VB.Label lblLabels 
  124.       Caption         =   "Contact First Name:"
  125.       BeginProperty Font 
  126.          Name            =   "Tahoma"
  127.          Size            =   8.25
  128.          Charset         =   0
  129.          Weight          =   700
  130.          Underline       =   0   'False
  131.          Italic          =   0   'False
  132.          Strikethrough   =   0   'False
  133.       EndProperty
  134.       Height          =   255
  135.       Index           =   4
  136.       Left            =   150
  137.       TabIndex        =   10
  138.       Top             =   1810
  139.       Width           =   1815
  140.    End
  141.    Begin VB.TextBox ContactFirstName
  142.       Alignment       =   0 
  143.       Height          =   315
  144.       Left            =   2070
  145.       TabIndex        =   9
  146.       Top             =   1810
  147.       Width           =   3375
  148.    End  
  149.    Begin VB.Label lblLabels 
  150.       Caption         =   "Contact Last Name:"
  151.       BeginProperty Font 
  152.          Name            =   "Tahoma"
  153.          Size            =   8.25
  154.          Charset         =   0
  155.          Weight          =   700
  156.          Underline       =   0   'False
  157.          Italic          =   0   'False
  158.          Strikethrough   =   0   'False
  159.       EndProperty
  160.       Height          =   255
  161.       Index           =   5
  162.       Left            =   150
  163.       TabIndex        =   12
  164.       Top             =   2135
  165.       Width           =   1815
  166.    End
  167.    Begin VB.TextBox ContactLastName
  168.       Alignment       =   0 
  169.       Height          =   315
  170.       Left            =   2070
  171.       TabIndex        =   11
  172.       Top             =   2135
  173.       Width           =   3375
  174.    End  
  175.    Begin VB.Label lblLabels 
  176.       Caption         =   "Contact Title:"
  177.       BeginProperty Font 
  178.          Name            =   "Tahoma"
  179.          Size            =   8.25
  180.          Charset         =   0
  181.          Weight          =   700
  182.          Underline       =   0   'False
  183.          Italic          =   0   'False
  184.          Strikethrough   =   0   'False
  185.       EndProperty
  186.       Height          =   255
  187.       Index           =   6
  188.       Left            =   150
  189.       TabIndex        =   14
  190.       Top             =   2460
  191.       Width           =   1815
  192.    End
  193.    Begin VB.TextBox ContactTitle
  194.       Alignment       =   0 
  195.       Height          =   315
  196.       Left            =   2070
  197.       TabIndex        =   13
  198.       Top             =   2460
  199.       Width           =   3375
  200.    End  
  201.    Begin VB.Label lblLabels 
  202.       Caption         =   "Country:"
  203.       BeginProperty Font 
  204.          Name            =   "Tahoma"
  205.          Size            =   8.25
  206.          Charset         =   0
  207.          Weight          =   700
  208.          Underline       =   0   'False
  209.          Italic          =   0   'False
  210.          Strikethrough   =   0   'False
  211.       EndProperty
  212.       Height          =   255
  213.       Index           =   7
  214.       Left            =   150
  215.       TabIndex        =   16
  216.       Top             =   2785
  217.       Width           =   1815
  218.    End
  219.    Begin VB.TextBox Country
  220.       Alignment       =   0 
  221.       Height          =   315
  222.       Left            =   2070
  223.       TabIndex        =   15
  224.       Top             =   2785
  225.       Width           =   3375
  226.    End  
  227.    Begin VB.Label lblLabels 
  228.       Caption         =   "Fax:"
  229.       BeginProperty Font 
  230.          Name            =   "Tahoma"
  231.          Size            =   8.25
  232.          Charset         =   0
  233.          Weight          =   700
  234.          Underline       =   0   'False
  235.          Italic          =   0   'False
  236.          Strikethrough   =   0   'False
  237.       EndProperty
  238.       Height          =   255
  239.       Index           =   8
  240.       Left            =   150
  241.       TabIndex        =   18
  242.       Top             =   3110
  243.       Width           =   1815
  244.    End   
  245.    Begin MSMask.MaskEdBox FaxNumber 
  246.       Height          =   315
  247.       Left            =   2070
  248.       TabIndex        =   17
  249.       Top             =   3110
  250.       Width           =   3375
  251.       _ExtentX        =   2990
  252.       _ExtentY        =   503
  253.       _Version        =   393216
  254.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  255.          Name            =   "Tahoma"
  256.          Size            =   8.25
  257.          Charset         =   0
  258.          Weight          =   400
  259.          Underline       =   0   'False
  260.          Italic          =   0   'False
  261.          Strikethrough   =   0   'False
  262.       EndProperty
  263.       PromptChar      =   "_"
  264.    End 
  265.    Begin VB.Label lblLabels 
  266.       Caption         =   "Notes:"
  267.       BeginProperty Font 
  268.          Name            =   "Tahoma"
  269.          Size            =   8.25
  270.          Charset         =   0
  271.          Weight          =   700
  272.          Underline       =   0   'False
  273.          Italic          =   0   'False
  274.          Strikethrough   =   0   'False
  275.       EndProperty
  276.       Height          =   255
  277.       Index           =   9
  278.       Left            =   150
  279.       TabIndex        =   20
  280.       Top             =   3435
  281.       Width           =   1815
  282.    End
  283.    Begin VB.TextBox Notes
  284.       Alignment       =   0 
  285.       Height          =   315
  286.       Left            =   2070
  287.       TabIndex        =   19
  288.       Top             =   3435
  289.       Width           =   3375
  290.    End  
  291.    Begin VB.Label lblLabels 
  292.       Caption         =   "Phone:"
  293.       BeginProperty Font 
  294.          Name            =   "Tahoma"
  295.          Size            =   8.25
  296.          Charset         =   0
  297.          Weight          =   700
  298.          Underline       =   0   'False
  299.          Italic          =   0   'False
  300.          Strikethrough   =   0   'False
  301.       EndProperty
  302.       Height          =   255
  303.       Index           =   10
  304.       Left            =   150
  305.       TabIndex        =   22
  306.       Top             =   3760
  307.       Width           =   1815
  308.    End
  309.    Begin VB.TextBox PhoneNumber
  310.       Alignment       =   0 
  311.       Height          =   315
  312.       Left            =   2070
  313.       TabIndex        =   21
  314.       Top             =   3760
  315.       Width           =   3375
  316.    End  
  317.    Begin VB.Label lblLabels 
  318.       Caption         =   "Postal Code:"
  319.       BeginProperty Font 
  320.          Name            =   "Tahoma"
  321.          Size            =   8.25
  322.          Charset         =   0
  323.          Weight          =   700
  324.          Underline       =   0   'False
  325.          Italic          =   0   'False
  326.          Strikethrough   =   0   'False
  327.       EndProperty
  328.       Height          =   255
  329.       Index           =   11
  330.       Left            =   150
  331.       TabIndex        =   24
  332.       Top             =   4085
  333.       Width           =   1815
  334.    End   
  335.    Begin MSMask.MaskEdBox PostalCode 
  336.       Height          =   315
  337.       Left            =   2070
  338.       TabIndex        =   23
  339.       Top             =   4085
  340.       Width           =   3375
  341.       _ExtentX        =   2990
  342.       _ExtentY        =   503
  343.       _Version        =   393216
  344.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  345.          Name            =   "Tahoma"
  346.          Size            =   8.25
  347.          Charset         =   0
  348.          Weight          =   400
  349.          Underline       =   0   'False
  350.          Italic          =   0   'False
  351.          Strikethrough   =   0   'False
  352.       EndProperty
  353.       PromptChar      =   "_"
  354.    End 
  355.    Begin VB.Label lblLabels 
  356.       Caption         =   "State:"
  357.       BeginProperty Font 
  358.          Name            =   "Tahoma"
  359.          Size            =   8.25
  360.          Charset         =   0
  361.          Weight          =   700
  362.          Underline       =   0   'False
  363.          Italic          =   0   'False
  364.          Strikethrough   =   0   'False
  365.       EndProperty
  366.       Height          =   255
  367.       Index           =   12
  368.       Left            =   150
  369.       TabIndex        =   26
  370.       Top             =   4410
  371.       Width           =   1815
  372.    End
  373.    Begin VB.TextBox StateOrProvince
  374.       Alignment       =   0 
  375.       Height          =   315
  376.       Left            =   2070
  377.       TabIndex        =   25
  378.       Top             =   4410
  379.       Width           =   3375
  380.    End  
  381.    Begin TabDlg.SSTab tabListview 
  382.       Height          =   2895
  383.       Left            =   0
  384.       TabIndex        =   0
  385.       Top             =   4735
  386.       Width           =   7395
  387.       _ExtentX        =   13044
  388.       _ExtentY        =   5106
  389.       _Version        =   393216
  390.       TabOrientation  =   1
  391.       Tabs            =   1
  392.       TabHeight       =   520 
  393.       TabCaption(0)   =   "Projects"
  394.       Tab(0).ControlEnabled=   -1  'True
  395.       Tab(0).Control(0)=   "DataEditGrid1(0)"
  396.       Tab(0).Control(0).Enabled=   0   'False
  397.       Tab(0).ControlCount=   1       
  398.       Begin TimeBillingUI.DataEditGrid DataEditGrid1 
  399.          Height          =   2145
  400.          Index           =   0
  401.          Left            =   150
  402.          TabIndex        =   1
  403.          Top             =   180
  404.          Width           =   6900
  405.          _extentx        =   12171
  406.          _extenty        =   3784
  407.          AllowAddNew     =   -1
  408.          Grouped         =   0   'False
  409.       End
  410.    End
  411.    Begin TimeBillingUI.CaptionBar CaptionBar1 
  412.       Align           =   1  'Align Top
  413.       Height          =   435
  414.       Left            =   0
  415.       TabIndex        =   5
  416.       Top             =   0
  417.       Width           =   7470
  418.       _extentx        =   13176
  419.       _extenty        =   767
  420.       border          =   4
  421.       forecolor       =   -2147483643
  422.       Caption         =   "ok i am here"
  423.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  424.          Name            =   "Tahoma"
  425.          Size            =   10.5
  426.          Charset         =   0
  427.          Weight          =   700
  428.          Underline       =   0   'False
  429.          Italic          =   0   'False
  430.          Strikethrough   =   0   'False
  431.       EndProperty
  432.       BeginProperty SubCaptionFont {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  433.          Name            =   "Tahoma"
  434.          Size            =   8.25
  435.          Charset         =   0
  436.          Weight          =   700
  437.          Underline       =   0   'False
  438.          Italic          =   0   'False
  439.          Strikethrough   =   0   'False
  440.       EndProperty
  441.    End   
  442. End
  443. Attribute VB_Name = "frmClient"
  444. Attribute VB_GlobalNameSpace = False
  445. Attribute VB_Creatable = False
  446. Attribute VB_PredeclaredId = True
  447. Attribute VB_Exposed = False
  448. Option Explicit
  449. Implements iForm
  450. Private Const mcstrMod$ = "frmClient"
  451. Private m_Client As COMEXDataSourceSingle, m_Store As COMEXDataSourceSingle
  452. Private m_flgLoading As Boolean
  453. Private m_EnableAttr As ToolBarItems
  454. Private m_Guid As String
  455. Public Sub Component(vClient As COMEXDataSourceSingle)
  456.     Set m_Client = vClient
  457.     Set m_Store = m_Client.CopyMe
  458.     LoadRecords
  459. End Sub
  460. Private Sub EnableToolbar(ByVal Dirty As Boolean)
  461.     On Error Resume Next
  462.     If Not Dirty Then
  463.         If m_EnableAttr And tbSave Then m_EnableAttr = m_EnableAttr Xor tbSave
  464.         If m_EnableAttr And tbCancel Then m_EnableAttr = m_EnableAttr Xor tbCancel
  465.         If Not (m_EnableAttr And tbRefresh) Then m_EnableAttr = m_EnableAttr Or tbRefresh
  466.     Else
  467.         If Not (m_EnableAttr And tbSave) Then m_EnableAttr = m_EnableAttr Or tbSave
  468.         If Not (m_EnableAttr And tbCancel) Then m_EnableAttr = m_EnableAttr Or tbCancel
  469.         If m_EnableAttr And tbRefresh Then m_EnableAttr = m_EnableAttr Xor tbRefresh
  470.     End If
  471.     m_Toolbar.RefreshEnabledState
  472. End Sub
  473. Private Sub LoadRecords()
  474.     On Error GoTo Err_LoadRecords
  475.     
  476.     Dim ctl As Control, i As Long 
  477.     
  478.     m_flgLoading = True
  479.     
  480.     Dim aClient As Client
  481.     Set aClient = m_Client
  482.     
  483.     
  484.     Dim vClientProjects As COMEXDataSource
  485.     Set vClientProjects = aClient.ClientProjects
  486.     
  487.     
  488.     With m_Client
  489.         For i = 1 To .GetFieldCount
  490.             On Error Resume Next
  491.             Set ctl = Controls(.GetFieldName(i))
  492.             If Err = 0 Then
  493.                 Select Case TypeName(ctl)
  494.                     Case "Label"
  495.                     Case "TextBox", "ComboBox", "MaskEdBox"
  496.                         ctl = .GetData(i)
  497.                     Case "CheckBox"
  498.                      ctl.Value = abs(.GetData(i))
  499.                     Case "DTPicker"
  500.                         ctl.Value = .GetData(i)
  501.                 End Select
  502.             End If
  503.         Next
  504.     End With
  505.     
  506.     Set Me.DataEditGrid1(0).DataSource = vClientProjects
  507.     m_EnableAttr = iForm_Attributes
  508.     EnableToolbar False
  509.     m_flgLoading = False
  510. Done_LoadRecords:
  511.     Exit Sub
  512. Err_LoadRecords:
  513.     ErrorMsg Err.Number, Err.Description, "LoadRecords", mcstrMod
  514.     Resume Done_LoadRecords
  515. End Sub
  516.  
  517. Private Sub Address_Change()
  518.     On Error GoTo Err_Address_Change
  519.     If m_flgLoading Then Exit Sub
  520.     m_Client.SetDatabyname Address.Name, Address
  521.     EnableToolbar True
  522.     Exit Sub
  523. Err_Address_Change:
  524.     With Address
  525.         .SelStart = 0
  526.         .SelLength = Len(.Text)
  527.         .SelText = m_Client.GetDataByName(Address.Name)
  528.     End With
  529. End Sub
  530. Private Sub Address_LostFocus()
  531.     On Error Resume Next
  532.     Address = m_Client.GetDataByName(Address.Name)
  533. End Sub
  534.  
  535. Private Sub City_Change()
  536.     On Error GoTo Err_City_Change
  537.     If m_flgLoading Then Exit Sub
  538.     m_Client.SetDatabyname City.Name, City
  539.     EnableToolbar True
  540.     Exit Sub
  541. Err_City_Change:
  542.     With City
  543.         .SelStart = 0
  544.         .SelLength = Len(.Text)
  545.         .SelText = m_Client.GetDataByName(City.Name)
  546.     End With
  547. End Sub
  548. Private Sub City_LostFocus()
  549.     On Error Resume Next
  550.     City = m_Client.GetDataByName(City.Name)
  551. End Sub
  552.  
  553. Private Sub ClientID_Change()
  554.     On Error GoTo Err_ClientID_Change
  555.     If m_flgLoading Then Exit Sub
  556.     m_Client.SetDatabyname ClientID.Name, ClientID
  557.     EnableToolbar True
  558.     Exit Sub
  559. Err_ClientID_Change:
  560.     With ClientID
  561.         .SelStart = 0
  562.         .SelLength = Len(.Text)
  563.         .SelText = m_Client.GetDataByName(ClientID.Name)
  564.     End With
  565. End Sub
  566. Private Sub ClientID_LostFocus()
  567.     On Error Resume Next
  568.     ClientID = m_Client.GetDataByName(ClientID.Name)
  569. End Sub
  570.  
  571. Private Sub CompanyName_Change()
  572.     On Error GoTo Err_CompanyName_Change
  573.     If m_flgLoading Then Exit Sub
  574.     m_Client.SetDatabyname CompanyName.Name, CompanyName
  575.     EnableToolbar True
  576.     Exit Sub
  577. Err_CompanyName_Change:
  578.     With CompanyName
  579.         .SelStart = 0
  580.         .SelLength = Len(.Text)
  581.         .SelText = m_Client.GetDataByName(CompanyName.Name)
  582.     End With
  583. End Sub
  584. Private Sub CompanyName_LostFocus()
  585.     On Error Resume Next
  586.     CompanyName = m_Client.GetDataByName(CompanyName.Name)
  587. End Sub
  588.  
  589. Private Sub ContactFirstName_Change()
  590.     On Error GoTo Err_ContactFirstName_Change
  591.     If m_flgLoading Then Exit Sub
  592.     m_Client.SetDatabyname ContactFirstName.Name, ContactFirstName
  593.     EnableToolbar True
  594.     Exit Sub
  595. Err_ContactFirstName_Change:
  596.     With ContactFirstName
  597.         .SelStart = 0
  598.         .SelLength = Len(.Text)
  599.         .SelText = m_Client.GetDataByName(ContactFirstName.Name)
  600.     End With
  601. End Sub
  602. Private Sub ContactFirstName_LostFocus()
  603.     On Error Resume Next
  604.     ContactFirstName = m_Client.GetDataByName(ContactFirstName.Name)
  605. End Sub
  606.  
  607. Private Sub ContactLastName_Change()
  608.     On Error GoTo Err_ContactLastName_Change
  609.     If m_flgLoading Then Exit Sub
  610.     m_Client.SetDatabyname ContactLastName.Name, ContactLastName
  611.     EnableToolbar True
  612.     Exit Sub
  613. Err_ContactLastName_Change:
  614.     With ContactLastName
  615.         .SelStart = 0
  616.         .SelLength = Len(.Text)
  617.         .SelText = m_Client.GetDataByName(ContactLastName.Name)
  618.     End With
  619. End Sub
  620. Private Sub ContactLastName_LostFocus()
  621.     On Error Resume Next
  622.     ContactLastName = m_Client.GetDataByName(ContactLastName.Name)
  623. End Sub
  624.  
  625. Private Sub ContactTitle_Change()
  626.     On Error GoTo Err_ContactTitle_Change
  627.     If m_flgLoading Then Exit Sub
  628.     m_Client.SetDatabyname ContactTitle.Name, ContactTitle
  629.     EnableToolbar True
  630.     Exit Sub
  631. Err_ContactTitle_Change:
  632.     With ContactTitle
  633.         .SelStart = 0
  634.         .SelLength = Len(.Text)
  635.         .SelText = m_Client.GetDataByName(ContactTitle.Name)
  636.     End With
  637. End Sub
  638. Private Sub ContactTitle_LostFocus()
  639.     On Error Resume Next
  640.     ContactTitle = m_Client.GetDataByName(ContactTitle.Name)
  641. End Sub
  642.  
  643. Private Sub Country_Change()
  644.     On Error GoTo Err_Country_Change
  645.     If m_flgLoading Then Exit Sub
  646.     m_Client.SetDatabyname Country.Name, Country
  647.     EnableToolbar True
  648.     Exit Sub
  649. Err_Country_Change:
  650.     With Country
  651.         .SelStart = 0
  652.         .SelLength = Len(.Text)
  653.         .SelText = m_Client.GetDataByName(Country.Name)
  654.     End With
  655. End Sub
  656. Private Sub Country_LostFocus()
  657.     On Error Resume Next
  658.     Country = m_Client.GetDataByName(Country.Name)
  659. End Sub
  660. Private Sub FaxNumber_Change()
  661.     On Error GoTo Err_FaxNumber_Change
  662.     If m_flgLoading Then Exit Sub
  663.     m_Client.SetDatabyname FaxNumber.Name, FaxNumber
  664.     EnableToolbar True
  665.     Exit Sub
  666. Err_FaxNumber_Change:
  667.     FaxNumber = m_Client.GetDatabyname(FaxNumber.Name)
  668. End Sub 
  669. Private Sub FaxNumber_LostFocus()
  670.     On Error Resume Next
  671.     FaxNumber = m_Client.GetDataByName(FaxNumber.Name)
  672. End Sub
  673.  
  674. Private Sub Notes_Change()
  675.     On Error GoTo Err_Notes_Change
  676.     If m_flgLoading Then Exit Sub
  677.     m_Client.SetDatabyname Notes.Name, Notes
  678.     EnableToolbar True
  679.     Exit Sub
  680. Err_Notes_Change:
  681.     With Notes
  682.         .SelStart = 0
  683.         .SelLength = Len(.Text)
  684.         .SelText = m_Client.GetDataByName(Notes.Name)
  685.     End With
  686. End Sub
  687. Private Sub Notes_LostFocus()
  688.     On Error Resume Next
  689.     Notes = m_Client.GetDataByName(Notes.Name)
  690. End Sub
  691.  
  692. Private Sub PhoneNumber_Change()
  693.     On Error GoTo Err_PhoneNumber_Change
  694.     If m_flgLoading Then Exit Sub
  695.     m_Client.SetDatabyname PhoneNumber.Name, PhoneNumber
  696.     EnableToolbar True
  697.     Exit Sub
  698. Err_PhoneNumber_Change:
  699.     With PhoneNumber
  700.         .SelStart = 0
  701.         .SelLength = Len(.Text)
  702.         .SelText = m_Client.GetDataByName(PhoneNumber.Name)
  703.     End With
  704. End Sub
  705. Private Sub PhoneNumber_LostFocus()
  706.     On Error Resume Next
  707.     PhoneNumber = m_Client.GetDataByName(PhoneNumber.Name)
  708. End Sub
  709. Private Sub PostalCode_Change()
  710.     On Error GoTo Err_PostalCode_Change
  711.     If m_flgLoading Then Exit Sub
  712.     m_Client.SetDatabyname PostalCode.Name, PostalCode
  713.     EnableToolbar True
  714.     Exit Sub
  715. Err_PostalCode_Change:
  716.     PostalCode = m_Client.GetDatabyname(PostalCode.Name)
  717. End Sub 
  718. Private Sub PostalCode_LostFocus()
  719.     On Error Resume Next
  720.     PostalCode = m_Client.GetDataByName(PostalCode.Name)
  721. End Sub
  722.  
  723. Private Sub StateOrProvince_Change()
  724.     On Error GoTo Err_StateOrProvince_Change
  725.     If m_flgLoading Then Exit Sub
  726.     m_Client.SetDatabyname StateOrProvince.Name, StateOrProvince
  727.     EnableToolbar True
  728.     Exit Sub
  729. Err_StateOrProvince_Change:
  730.     With StateOrProvince
  731.         .SelStart = 0
  732.         .SelLength = Len(.Text)
  733.         .SelText = m_Client.GetDataByName(StateOrProvince.Name)
  734.     End With
  735. End Sub
  736. Private Sub StateOrProvince_LostFocus()
  737.     On Error Resume Next
  738.     StateOrProvince = m_Client.GetDataByName(StateOrProvince.Name)
  739. End Sub
  740. Private Sub tabListview_Click(PreviousTab As Integer)
  741.   Me.DataEditGrid1(0).Visible =(tabListview.tab = 0)
  742.   Me.Refresh
  743. End Sub
  744. Private Sub DataEditGrid1_Dirty(Index As Integer)
  745.     EnableToolbar True
  746. End Sub
  747. Private Sub DataEditGrid1_FetchColumnSetup(Index As Integer, ColName As String, ControlType As FieldControlType, ComboMaskList As String, Alignment As FieldControlAlign, Hidden As Boolean, AutoNumber As Boolean)
  748.     Select Case Index    
  749.         Case 0
  750.             Select Case ColName
  751.                 Case "ClientID"
  752.                     Hidden = True
  753.             End Select
  754.             Dim vClientProject As New ClientProject
  755.             Select Case ColName 
  756.                 Case "ClientID"
  757.                     ColName = "Client ID"
  758.                     AutoNumber = False
  759.                     Alignment = 0
  760.                     ControlType = fcComboBx
  761.                     ComboMaskList = vClientProject.GetClientsList
  762.                 Case "EmployeeID"
  763.                     ColName = "Employee"
  764.                     AutoNumber = False
  765.                     Alignment = 0
  766.                     ControlType = fcComboBx
  767.                     ComboMaskList = vClientProject.GetEmployeesList
  768.                 Case "ProjectDescription"
  769.                     ColName = "Project Description"
  770.                     AutoNumber = False
  771.                     Alignment = 0
  772.                 Case "ProjectEndDate"
  773.                     ColName = "Project End Date"
  774.                     AutoNumber = False
  775.                     Alignment = 1
  776.                     ControlType = fcDateTimePick
  777.                 Case "ProjectID"
  778.                     ColName = "Project ID"
  779.                     AutoNumber = True
  780.                     Alignment = 2
  781.                 Case "ProjectName"
  782.                     ColName = "Project Name"
  783.                     AutoNumber = False
  784.                     Alignment = 0
  785.                 Case "ProjectTotalBillingEstimate"
  786.                     ColName = "Total Billing Estimate"
  787.                     AutoNumber = False
  788.                     Alignment = 2
  789.                 Case "PurchaseOrderNumber"
  790.                     ColName = "Purchase Order Number"
  791.                     AutoNumber = False
  792.                     Alignment = 0
  793.                 Case "ProjectBeginDate"
  794.                     ColName = "Project Begin Date"
  795.                     AutoNumber = False
  796.                     Alignment = 1
  797.                     ControlType = fcDateTimePick
  798.             End Select
  799.     End Select
  800. End Sub
  801. Private Sub Form_Activate()
  802.     m_Toolbar.Activate m_Guid
  803. End Sub
  804. Private Sub Form_Load()
  805. Dim vClient As New Client, strCombo As String
  806.     m_Guid = GUID
  807.     m_Toolbar.Attach Me, m_Guid
  808.     tabListview_Click 0 
  809. ThinBorder DataEditGrid1(0).hwnd, False 
  810.     CaptionBar1.Caption = Caption
  811.     Set CaptionBar1.Picture = Me.Icon
  812. FaxNumber.mask = "(###)###-####"
  813. PostalCode.mask = "#####"
  814.     
  815. End Sub
  816. Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  817.     If m_EnableAttr And tbSave Then
  818.         Select Case MsgBox("Record has been changed. Do you want To save it?" _
  819.             , vbYesNoCancel + vbQuestion)
  820.             Case vbYes
  821.                 m_Client.Save
  822.             Case vbNo
  823.             Case vbCancel
  824.                 Cancel = True
  825.         End Select
  826.     End If
  827. End Sub
  828. Private Sub Form_Resize()    
  829. On Error Resume Next
  830. If Me.WindowState <> vbMinimized Then
  831.     With CaptionBar1
  832.         .Move 0, .Top, Me.ScaleWidth, .Height
  833.     End With 
  834.     With tabListview
  835.         .Left = 0
  836.         .Top = (StateOrProvince.Top + StateOrProvince.Height + 100)
  837.         .Height = Me.ScaleHeight - .Top
  838.         .Width = Me.ScaleWidth
  839.         DataEditGrid1(0).Move 100, 100, .Width - 200, .Height - 450
  840.     End With          
  841. End If
  842. End Sub
  843. Private Sub Form_Unload(Cancel As Integer)
  844.     m_Toolbar.Detach m_Guid
  845. End Sub
  846. Private Sub LoadFormView()
  847.     On Error GoTo Err_LoadFormView
  848.     Dim vItem As Object, frmX As Object , aClient As Client
  849.     
  850.     Set aClient = m_Client
  851.     Select Case tabListview.Tab
  852.         Case 0      
  853.         Dim vClientProject As ClientProject
  854.         Set vItem = New ClientProject
  855.         Set frmX = New frmClientProject                                            
  856.         Set vClientProject = aClient.ClientProjects(DataEditGrid1(tabListview.Tab).CurrentRecord)
  857.         vItem.Load vClientProject.ProjectID, True    
  858.     End Select    
  859.     frmX.Component vItem
  860.     frmX.Show
  861. Done_LoadFormView:
  862.     Exit Sub
  863. Err_LoadFormView:
  864.     If err <> 91 Then ErrorMsg Err.Number, Err.Description, "LoadFormView", mcstrMod
  865.     Resume Done_LoadFormView
  866. End Sub
  867. Private Sub iForm_MainMenu()
  868.     'n/a
  869. End Sub
  870. Private Property Get iForm_Attributes() As ToolBarItems
  871.     iForm_Attributes = tbCancel + tbCloseMe + tbRefresh + tbSave   + tbDeleteRow + tbShowFormView
  872. End Property
  873. Private Sub iForm_Cancel()
  874.     Set m_Client = m_Store.CopyMe
  875.     LoadRecords
  876. End Sub
  877. Private Sub iForm_CloseMe()
  878.     Unload Me
  879. End Sub
  880. Private Sub iForm_delete()
  881.     'n/a
  882. End Sub
  883. Private Property Get iForm_EnableAttributes() As ToolBarItems
  884.     iForm_EnableAttributes = m_EnableAttr
  885. End Property
  886. Private Sub iForm_Find(ByVal Key As String)
  887.     'n/a
  888. End Sub
  889. Private Sub iForm_Refresh()
  890.     Dim aClient As Client
  891.     Set aClient = m_Client
  892.     aClient.Load aClient.ClientID, True
  893.     Set m_Client = aClient
  894.     LoadRecords
  895. End Sub
  896. Private Function iForm_Save() As Boolean
  897.     DataEditGrid1(tabListview.Tab).Update
  898.     If m_Client.Save Then 
  899.      Set m_Store = m_Client.CopyMe
  900.      iForm_Refresh
  901.     End If
  902. End Function
  903. Private Sub iForm_AddNew()
  904.     'n/a
  905. End Sub
  906. Private Sub iForm_ShowFormView()   
  907. LoadFormView
  908. End Sub
  909. Private Property Get iForm_FindSubTools() As cFindSubTools
  910.     'n/a
  911. End Property
  912. Private Sub iForm_HelpAbout()
  913.     'n/a
  914. End Sub
  915. Private Function iForm_OpenDB() As Boolean
  916.     'n/a
  917. End Function
  918. Private Sub iForm_DeleteRow()
  919.     DataEditGrid1(tabListview.Tab).delete    
  920. End Sub
  921. Private Sub iForm_PrintOut()
  922.     'n/a
  923. End Sub