The DejaVU Framework -- hush 3.1

include: basic-program-code-22-Ex22-05-DataSet1.h /cygdrive/d/www/media


- [up] [top] - index make include source logic grammar scripts html configure mx slides talks scenes reports projects
<body bgcolor="#FFFFFF" text="#000000">

#pragma once

#using <mscorlib.dll>
#using <System.dll>
#using 
#using 
#using 

using namespace System::Security::Permissions;
[assembly:SecurityPermissionAttribute(SecurityAction::RequestMinimum, SkipVerification=false)];
// 
// This source code was auto-generated by xsd, Version=2.0.50727.26.
// 
namespace Ex22_05 {
    using namespace System;
    
    using namespace System;
    ref
<h4 align=right text=red> DataSet1;</h4><hr>
   class DataSet1;
    
    
    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
    Serializable, 
    System::ComponentModel::DesignerCategoryAttribute(L"code"), 
    System::ComponentModel::ToolboxItem(true), 
    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedDataSetSchema"), 
    System::Xml::Serialization::XmlRootAttribute(L"DataSet1"), 
    System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.DataSet")]
    public ref
<hr>

DataSet1</h4>
   class DataSet1 : public System::Data::DataSet {
          public : ref

CustomersDataTable;</h4>
   class CustomersDataTable;
          public : ref

EmployeesDataTable;</h4>
   class EmployeesDataTable;
          public : ref

ProductsDataTable;</h4>
   class ProductsDataTable;
          public : ref

CustomersRow;</h4>
   class CustomersRow;
          public : ref

EmployeesRow;</h4>
   class EmployeesRow;
          public : ref

ProductsRow;</h4>
   class ProductsRow;
          public : ref

CustomersRowChangeEvent;</h4>
   class CustomersRowChangeEvent;
          public : ref

EmployeesRowChangeEvent;</h4>
   class EmployeesRowChangeEvent;
          public : ref

ProductsRowChangeEvent;</h4>
   class ProductsRowChangeEvent;
          
          private: Ex22_05::DataSet1::CustomersDataTable^  tableCustomers;
          
          private: Ex22_05::DataSet1::EmployeesDataTable^  tableEmployees;
          
          private: Ex22_05::DataSet1::ProductsDataTable^  tableProducts;
          
          private: System::Data::SchemaSerializationMode _schemaSerializationMode;
          
          public : delegate System::Void CustomersRowChangeEventHandler(System::Object^  sender, Ex22_05::DataSet1::CustomersRowChangeEvent^  e);
          
          public : delegate System::Void EmployeesRowChangeEventHandler(System::Object^  sender, Ex22_05::DataSet1::EmployeesRowChangeEvent^  e);
          
          public : delegate System::Void ProductsRowChangeEventHandler(System::Object^  sender, Ex22_05::DataSet1::ProductsRowChangeEvent^  e);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          DataSet1();
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          DataSet1(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context);
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
          System::ComponentModel::Browsable(false), 
          System::ComponentModel::DesignerSerializationVisibility(System::ComponentModel::DesignerSerializationVisibility::Content)]
           property Ex22_05::DataSet1::CustomersDataTable^  Customers {
              Ex22_05::DataSet1::CustomersDataTable^  get();
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
          System::ComponentModel::Browsable(false), 
          System::ComponentModel::DesignerSerializationVisibility(System::ComponentModel::DesignerSerializationVisibility::Content)]
           property Ex22_05::DataSet1::EmployeesDataTable^  Employees {
              Ex22_05::DataSet1::EmployeesDataTable^  get();
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
          System::ComponentModel::Browsable(false), 
          System::ComponentModel::DesignerSerializationVisibility(System::ComponentModel::DesignerSerializationVisibility::Content)]
           property Ex22_05::DataSet1::ProductsDataTable^  Products {
              Ex22_05::DataSet1::ProductsDataTable^  get();
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
          System::ComponentModel::BrowsableAttribute(true), 
          System::ComponentModel::DesignerSerializationVisibilityAttribute(System::ComponentModel::DesignerSerializationVisibility::Visible)]
          virtual  property System::Data::SchemaSerializationMode SchemaSerializationMode {
              System::Data::SchemaSerializationMode get() override;
              System::Void set(System::Data::SchemaSerializationMode value) override;
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
          System::ComponentModel::DesignerSerializationVisibilityAttribute(System::ComponentModel::DesignerSerializationVisibility::Hidden)]
           property System::Data::DataTableCollection^  Tables {
              System::Data::DataTableCollection^  get() new;
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
          System::ComponentModel::DesignerSerializationVisibilityAttribute(System::ComponentModel::DesignerSerializationVisibility::Hidden)]
           property System::Data::DataRelationCollection^  Relations {
              System::Data::DataRelationCollection^  get() new;
          }
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          virtual System::Void InitializeDerivedDataSet() override;
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          virtual System::Data::DataSet^  Clone() override;
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          virtual System::Boolean ShouldSerializeTables() override;
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          virtual System::Boolean ShouldSerializeRelations() override;
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          virtual System::Void ReadXmlSerializable(System::Xml::XmlReader^  reader) override;
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          virtual System::Xml::Schema::XmlSchema^  GetSchemaSerializable() override;
          
          internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitVars();
          
          internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitVars(System::Boolean initTable);
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitClass();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Boolean ShouldSerializeCustomers();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Boolean ShouldSerializeEmployees();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Boolean ShouldSerializeProducts();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void SchemaChanged(System::Object^  sender, System::ComponentModel::CollectionChangeEventArgs^  e);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          static System::Xml::Schema::XmlSchemaComplexType^  GetTypedDataSetSchema(System::Xml::Schema::XmlSchemaSet^  xs);
          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
          System::Serializable, 
          System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
          ref

CustomersDataTable</h4>
   class CustomersDataTable : public System::Data::DataTable, public System::Collections::IEnumerable {
              
              private: System::Data::DataColumn^  columnCustomerID;
              
              private: System::Data::DataColumn^  columnCompanyName;
              
              private: System::Data::DataColumn^  columnContactName;
              
              private: System::Data::DataColumn^  columnContactTitle;
              
              private: System::Data::DataColumn^  columnAddress;
              
              private: System::Data::DataColumn^  columnCity;
              
              private: System::Data::DataColumn^  columnRegion;
              
              private: System::Data::DataColumn^  columnPostalCode;
              
              private: System::Data::DataColumn^  columnCountry;
              
              private: System::Data::DataColumn^  columnPhone;
              
              private: System::Data::DataColumn^  columnFax;
              
              public: event Ex22_05::DataSet1::CustomersRowChangeEventHandler^  CustomersRowChanging;
              
              public: event Ex22_05::DataSet1::CustomersRowChangeEventHandler^  CustomersRowChanged;
              
              public: event Ex22_05::DataSet1::CustomersRowChangeEventHandler^  CustomersRowDeleting;
              
              public: event Ex22_05::DataSet1::CustomersRowChangeEventHandler^  CustomersRowDeleted;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              CustomersDataTable();
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              CustomersDataTable(System::Data::DataTable^  table);
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              CustomersDataTable(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CustomerIDColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CompanyNameColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ContactNameColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ContactTitleColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  AddressColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CityColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  RegionColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  PostalCodeColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CountryColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  PhoneColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  FaxColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
              System::ComponentModel::Browsable(false)]
               property System::Int32 Count {
                  System::Int32 get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property Ex22_05::DataSet1::CustomersRow^  default [System::Int32 ] {
                  Ex22_05::DataSet1::CustomersRow^  get(System::Int32 index);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void AddCustomersRow(Ex22_05::DataSet1::CustomersRow^  row);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::CustomersRow^  AddCustomersRow(
                          System::String^  CustomerID, 
                          System::String^  CompanyName, 
                          System::String^  ContactName, 
                          System::String^  ContactTitle, 
                          System::String^  Address, 
                          System::String^  City, 
                          System::String^  Region, 
                          System::String^  PostalCode, 
                          System::String^  Country, 
                          System::String^  Phone, 
                          System::String^  Fax);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::CustomersRow^  FindByCustomerID(System::String^  CustomerID);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Collections::IEnumerator^  GetEnumerator();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataTable^  Clone() override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataTable^  CreateInstance() override;
              
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void InitVars();
              
              private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void InitClass();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::CustomersRow^  NewCustomersRow();
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataRow^  NewRowFromBuilder(System::Data::DataRowBuilder^  builder) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Type^  GetRowType() override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowChanged(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowChanging(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowDeleted(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowDeleting(System::Data::DataRowChangeEventArgs^  e) override;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void RemoveCustomersRow(Ex22_05::DataSet1::CustomersRow^  row);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              static System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(System::Xml::Schema::XmlSchemaSet^  xs);
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
          System::Serializable, 
          System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
          ref

EmployeesDataTable</h4>
   class EmployeesDataTable : public System::Data::DataTable, public System::Collections::IEnumerable {
              
              private: System::Data::DataColumn^  columnEmployeeID;
              
              private: System::Data::DataColumn^  columnLastName;
              
              private: System::Data::DataColumn^  columnFirstName;
              
              private: System::Data::DataColumn^  columnTitle;
              
              private: System::Data::DataColumn^  columnTitleOfCourtesy;
              
              private: System::Data::DataColumn^  columnBirthDate;
              
              private: System::Data::DataColumn^  columnHireDate;
              
              private: System::Data::DataColumn^  columnAddress;
              
              private: System::Data::DataColumn^  columnCity;
              
              private: System::Data::DataColumn^  columnRegion;
              
              private: System::Data::DataColumn^  columnPostalCode;
              
              private: System::Data::DataColumn^  columnCountry;
              
              private: System::Data::DataColumn^  columnHomePhone;
              
              private: System::Data::DataColumn^  columnExtension;
              
              private: System::Data::DataColumn^  columnPhoto;
              
              private: System::Data::DataColumn^  columnNotes;
              
              private: System::Data::DataColumn^  columnReportsTo;
              
              public: event Ex22_05::DataSet1::EmployeesRowChangeEventHandler^  EmployeesRowChanging;
              
              public: event Ex22_05::DataSet1::EmployeesRowChangeEventHandler^  EmployeesRowChanged;
              
              public: event Ex22_05::DataSet1::EmployeesRowChangeEventHandler^  EmployeesRowDeleting;
              
              public: event Ex22_05::DataSet1::EmployeesRowChangeEventHandler^  EmployeesRowDeleted;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              EmployeesDataTable();
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              EmployeesDataTable(System::Data::DataTable^  table);
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              EmployeesDataTable(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  EmployeeIDColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  LastNameColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  FirstNameColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  TitleColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  TitleOfCourtesyColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  BirthDateColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  HireDateColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  AddressColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CityColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  RegionColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  PostalCodeColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CountryColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  HomePhoneColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ExtensionColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  PhotoColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  NotesColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ReportsToColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
              System::ComponentModel::Browsable(false)]
               property System::Int32 Count {
                  System::Int32 get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property Ex22_05::DataSet1::EmployeesRow^  default [System::Int32 ] {
                  Ex22_05::DataSet1::EmployeesRow^  get(System::Int32 index);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void AddEmployeesRow(Ex22_05::DataSet1::EmployeesRow^  row);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::EmployeesRow^  AddEmployeesRow(
                          System::String^  LastName, 
                          System::String^  FirstName, 
                          System::String^  Title, 
                          System::String^  TitleOfCourtesy, 
                          System::DateTime BirthDate, 
                          System::DateTime HireDate, 
                          System::String^  Address, 
                          System::String^  City, 
                          System::String^  Region, 
                          System::String^  PostalCode, 
                          System::String^  Country, 
                          System::String^  HomePhone, 
                          System::String^  Extension, 
                          System::String^  Photo, 
                          System::String^  Notes, 
                          System::Int32 ReportsTo);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::EmployeesRow^  FindByEmployeeID(System::Int32 EmployeeID);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Collections::IEnumerator^  GetEnumerator();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataTable^  Clone() override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataTable^  CreateInstance() override;
              
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void InitVars();
              
              private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void InitClass();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::EmployeesRow^  NewEmployeesRow();
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataRow^  NewRowFromBuilder(System::Data::DataRowBuilder^  builder) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Type^  GetRowType() override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowChanged(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowChanging(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowDeleted(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowDeleting(System::Data::DataRowChangeEventArgs^  e) override;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void RemoveEmployeesRow(Ex22_05::DataSet1::EmployeesRow^  row);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              static System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(System::Xml::Schema::XmlSchemaSet^  xs);
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
          System::Serializable, 
          System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
          ref

ProductsDataTable</h4>
   class ProductsDataTable : public System::Data::DataTable, public System::Collections::IEnumerable {
              
              private: System::Data::DataColumn^  columnProductID;
              
              private: System::Data::DataColumn^  columnProductName;
              
              private: System::Data::DataColumn^  columnSupplierID;
              
              private: System::Data::DataColumn^  columnCategoryID;
              
              private: System::Data::DataColumn^  columnQuantityPerUnit;
              
              private: System::Data::DataColumn^  columnUnitPrice;
              
              private: System::Data::DataColumn^  columnUnitsInStock;
              
              private: System::Data::DataColumn^  columnUnitsOnOrder;
              
              private: System::Data::DataColumn^  columnReorderLevel;
              
              private: System::Data::DataColumn^  columnDiscontinued;
              
              public: event Ex22_05::DataSet1::ProductsRowChangeEventHandler^  ProductsRowChanging;
              
              public: event Ex22_05::DataSet1::ProductsRowChangeEventHandler^  ProductsRowChanged;
              
              public: event Ex22_05::DataSet1::ProductsRowChangeEventHandler^  ProductsRowDeleting;
              
              public: event Ex22_05::DataSet1::ProductsRowChangeEventHandler^  ProductsRowDeleted;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              ProductsDataTable();
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              ProductsDataTable(System::Data::DataTable^  table);
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              ProductsDataTable(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ProductIDColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ProductNameColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  SupplierIDColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  CategoryIDColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  QuantityPerUnitColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  UnitPriceColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  UnitsInStockColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  UnitsOnOrderColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  ReorderLevelColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataColumn^  DiscontinuedColumn {
                  System::Data::DataColumn^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
              System::ComponentModel::Browsable(false)]
               property System::Int32 Count {
                  System::Int32 get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property Ex22_05::DataSet1::ProductsRow^  default [System::Int32 ] {
                  Ex22_05::DataSet1::ProductsRow^  get(System::Int32 index);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void AddProductsRow(Ex22_05::DataSet1::ProductsRow^  row);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::ProductsRow^  AddProductsRow(
                          System::String^  ProductName, 
                          System::Int32 SupplierID, 
                          System::Int32 CategoryID, 
                          System::String^  QuantityPerUnit, 
                          System::Decimal UnitPrice, 
                          System::Int16 UnitsInStock, 
                          System::Int16 UnitsOnOrder, 
                          System::Int16 ReorderLevel, 
                          System::Boolean Discontinued);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::ProductsRow^  FindByProductID(System::Int32 ProductID);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Collections::IEnumerator^  GetEnumerator();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataTable^  Clone() override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataTable^  CreateInstance() override;
              
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void InitVars();
              
              private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void InitClass();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              Ex22_05::DataSet1::ProductsRow^  NewProductsRow();
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Data::DataRow^  NewRowFromBuilder(System::Data::DataRowBuilder^  builder) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Type^  GetRowType() override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowChanged(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowChanging(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowDeleted(System::Data::DataRowChangeEventArgs^  e) override;
              
              protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              virtual System::Void OnRowDeleting(System::Data::DataRowChangeEventArgs^  e) override;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void RemoveProductsRow(Ex22_05::DataSet1::ProductsRow^  row);
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              static System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(System::Xml::Schema::XmlSchemaSet^  xs);
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0")]
          ref

CustomersRow</h4>
   class CustomersRow : public System::Data::DataRow {
              
              private: Ex22_05::DataSet1::CustomersDataTable^  tableCustomers;
              
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              CustomersRow(System::Data::DataRowBuilder^  rb);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  CustomerID {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  CompanyName {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  ContactName {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  ContactTitle {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Address {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  City {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Region {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  PostalCode {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Country {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Phone {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Fax {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsCompanyNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetCompanyNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsContactNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetContactNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsContactTitleNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetContactTitleNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsAddressNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetAddressNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsCityNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetCityNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsRegionNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetRegionNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsPostalCodeNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetPostalCodeNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsCountryNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetCountryNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsPhoneNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetPhoneNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsFaxNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetFaxNull();
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0")]
          ref

EmployeesRow</h4>
   class EmployeesRow : public System::Data::DataRow {
              
              private: Ex22_05::DataSet1::EmployeesDataTable^  tableEmployees;
              
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              EmployeesRow(System::Data::DataRowBuilder^  rb);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int32 EmployeeID {
                  System::Int32 get();
                  System::Void set(System::Int32 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  LastName {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  FirstName {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Title {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  TitleOfCourtesy {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::DateTime BirthDate {
                  System::DateTime get();
                  System::Void set(System::DateTime value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::DateTime HireDate {
                  System::DateTime get();
                  System::Void set(System::DateTime value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Address {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  City {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Region {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  PostalCode {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Country {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  HomePhone {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Extension {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Photo {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  Notes {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int32 ReportsTo {
                  System::Int32 get();
                  System::Void set(System::Int32 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsLastNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetLastNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsFirstNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetFirstNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsTitleNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetTitleNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsTitleOfCourtesyNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetTitleOfCourtesyNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsBirthDateNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetBirthDateNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsHireDateNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetHireDateNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsAddressNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetAddressNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsCityNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetCityNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsRegionNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetRegionNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsPostalCodeNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetPostalCodeNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsCountryNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetCountryNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsHomePhoneNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetHomePhoneNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsExtensionNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetExtensionNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsPhotoNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetPhotoNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsNotesNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetNotesNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsReportsToNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetReportsToNull();
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0")]
          ref

ProductsRow</h4>
   class ProductsRow : public System::Data::DataRow {
              
              private: Ex22_05::DataSet1::ProductsDataTable^  tableProducts;
              
              internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              ProductsRow(System::Data::DataRowBuilder^  rb);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int32 ProductID {
                  System::Int32 get();
                  System::Void set(System::Int32 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  ProductName {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int32 SupplierID {
                  System::Int32 get();
                  System::Void set(System::Int32 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int32 CategoryID {
                  System::Int32 get();
                  System::Void set(System::Int32 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::String^  QuantityPerUnit {
                  System::String^  get();
                  System::Void set(System::String^  value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Decimal UnitPrice {
                  System::Decimal get();
                  System::Void set(System::Decimal value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int16 UnitsInStock {
                  System::Int16 get();
                  System::Void set(System::Int16 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int16 UnitsOnOrder {
                  System::Int16 get();
                  System::Void set(System::Int16 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Int16 ReorderLevel {
                  System::Int16 get();
                  System::Void set(System::Int16 value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Boolean Discontinued {
                  System::Boolean get();
                  System::Void set(System::Boolean value);
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsProductNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetProductNameNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsSupplierIDNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetSupplierIDNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsCategoryIDNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetCategoryIDNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsQuantityPerUnitNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetQuantityPerUnitNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsUnitPriceNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetUnitPriceNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsUnitsInStockNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetUnitsInStockNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsUnitsOnOrderNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetUnitsOnOrderNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Boolean IsReorderLevelNull();
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              System::Void SetReorderLevelNull();
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0")]
          ref

CustomersRowChangeEvent</h4>
   class CustomersRowChangeEvent : public System::EventArgs {
              
              private: Ex22_05::DataSet1::CustomersRow^  eventRow;
              
              private: System::Data::DataRowAction eventAction;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              CustomersRowChangeEvent(Ex22_05::DataSet1::CustomersRow^  row, System::Data::DataRowAction action);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property Ex22_05::DataSet1::CustomersRow^  Row {
                  Ex22_05::DataSet1::CustomersRow^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataRowAction Action {
                  System::Data::DataRowAction get();
              }
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0")]
          ref

EmployeesRowChangeEvent</h4>
   class EmployeesRowChangeEvent : public System::EventArgs {
              
              private: Ex22_05::DataSet1::EmployeesRow^  eventRow;
              
              private: System::Data::DataRowAction eventAction;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              EmployeesRowChangeEvent(Ex22_05::DataSet1::EmployeesRow^  row, System::Data::DataRowAction action);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property Ex22_05::DataSet1::EmployeesRow^  Row {
                  Ex22_05::DataSet1::EmployeesRow^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataRowAction Action {
                  System::Data::DataRowAction get();
              }
          };


          
          public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0")]
          ref

ProductsRowChangeEvent</h4>
   class ProductsRowChangeEvent : public System::EventArgs {
              
              private: Ex22_05::DataSet1::ProductsRow^  eventRow;
              
              private: System::Data::DataRowAction eventAction;
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
              ProductsRowChangeEvent(Ex22_05::DataSet1::ProductsRow^  row, System::Data::DataRowAction action);
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property Ex22_05::DataSet1::ProductsRow^  Row {
                  Ex22_05::DataSet1::ProductsRow^  get();
              }
              
              public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
               property System::Data::DataRowAction Action {
                  System::Data::DataRowAction get();
              }
          };


      };


  }
  namespace Ex22_05 {
      
      
      inline DataSet1::DataSet1() {
          this->BeginInit();
          this->InitClass();
          System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler = gcnew System::ComponentModel::CollectionChangeEventHandler(this, &Ex22_05::DataSet1::SchemaChanged);
          __super::Tables->CollectionChanged += schemaChangedHandler;
          __super::Relations->CollectionChanged += schemaChangedHandler;
          this->EndInit();
      }
      
      inline DataSet1::DataSet1(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context) : 
              System::Data::DataSet(info, context, false) {
          if (this->IsBinarySerialized(info, context) == true) {
              this->InitVars(false);
              System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler1 = gcnew System::ComponentModel::CollectionChangeEventHandler(this, &Ex22_05::DataSet1::SchemaChanged);
              this->Tables->CollectionChanged += schemaChangedHandler1;
              this->Relations->CollectionChanged += schemaChangedHandler1;
              return;
          }
          System::String^  strSchema = (cli::safe_cast(info->GetValue(L"XmlSchema", System::String::typeid)));
          if (this->DetermineSchemaSerializationMode(info, context) == System::Data::SchemaSerializationMode::IncludeSchema) {
              System::Data::DataSet^  ds = (gcnew System::Data::DataSet());
              ds->ReadXmlSchema((gcnew System::Xml::XmlTextReader((gcnew System::IO::StringReader(strSchema)))));
              if (ds->Tables[L"Customers"] != nullptr) {
                  __super::Tables->Add((gcnew Ex22_05::DataSet1::CustomersDataTable(ds->Tables[L"Customers"])));
              }
              if (ds->Tables[L"Employees"] != nullptr) {
                  __super::Tables->Add((gcnew Ex22_05::DataSet1::EmployeesDataTable(ds->Tables[L"Employees"])));
              }
              if (ds->Tables[L"Products"] != nullptr) {
                  __super::Tables->Add((gcnew Ex22_05::DataSet1::ProductsDataTable(ds->Tables[L"Products"])));
              }
              this->DataSetName = ds->DataSetName;
              this->Prefix = ds->Prefix;
              this->Namespace = ds->Namespace;
              this->Locale = ds->Locale;
              this->CaseSensitive = ds->CaseSensitive;
              this->EnforceConstraints = ds->EnforceConstraints;
              this->Merge(ds, false, System::Data::MissingSchemaAction::Add);
              this->InitVars();
          }
          else {
              this->ReadXmlSchema((gcnew System::Xml::XmlTextReader((gcnew System::IO::StringReader(strSchema)))));
          }
          this->GetSerializationData(info, context);
          System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler = gcnew System::ComponentModel::CollectionChangeEventHandler(this, &Ex22_05::DataSet1::SchemaChanged);
          __super::Tables->CollectionChanged += schemaChangedHandler;
          this->Relations->CollectionChanged += schemaChangedHandler;
      }
      
      inline Ex22_05::DataSet1::CustomersDataTable^  DataSet1::Customers::get() {
          return this->tableCustomers;
      }
      
      inline Ex22_05::DataSet1::EmployeesDataTable^  DataSet1::Employees::get() {
          return this->tableEmployees;
      }
      
      inline Ex22_05::DataSet1::ProductsDataTable^  DataSet1::Products::get() {
          return this->tableProducts;
      }
      
      inline System::Data::SchemaSerializationMode DataSet1::SchemaSerializationMode::get() {
          return this->_schemaSerializationMode;
      }
      inline System::Void DataSet1::SchemaSerializationMode::set(System::Data::SchemaSerializationMode value) {
          this->_schemaSerializationMode = __identifier(value);
      }
      
      inline System::Data::DataTableCollection^  DataSet1::Tables::get() {
          return __super::Tables;
      }
      
      inline System::Data::DataRelationCollection^  DataSet1::Relations::get() {
          return __super::Relations;
      }
      
      inline System::Void DataSet1::InitializeDerivedDataSet() {
          this->BeginInit();
          this->InitClass();
          this->EndInit();
      }
      
      inline System::Data::DataSet^  DataSet1::Clone() {
          Ex22_05::DataSet1^  cln = (cli::safe_cast(__super::Clone()));
          cln->InitVars();
          cln->SchemaSerializationMode = this->SchemaSerializationMode;
          return cln;
      }
      
      inline System::Boolean DataSet1::ShouldSerializeTables() {
          return false;
      }
      
      inline System::Boolean DataSet1::ShouldSerializeRelations() {
          return false;
      }
      
      inline System::Void DataSet1::ReadXmlSerializable(System::Xml::XmlReader^  reader) {
          if (this->DetermineSchemaSerializationMode(reader) == System::Data::SchemaSerializationMode::IncludeSchema) {
              this->Reset();
              System::Data::DataSet^  ds = (gcnew System::Data::DataSet());
              ds->ReadXml(reader);
              if (ds->Tables[L"Customers"] != nullptr) {
                  __super::Tables->Add((gcnew Ex22_05::DataSet1::CustomersDataTable(ds->Tables[L"Customers"])));
              }
              if (ds->Tables[L"Employees"] != nullptr) {
                  __super::Tables->Add((gcnew Ex22_05::DataSet1::EmployeesDataTable(ds->Tables[L"Employees"])));
              }
              if (ds->Tables[L"Products"] != nullptr) {
                  __super::Tables->Add((gcnew Ex22_05::DataSet1::ProductsDataTable(ds->Tables[L"Products"])));
              }
              this->DataSetName = ds->DataSetName;
              this->Prefix = ds->Prefix;
              this->Namespace = ds->Namespace;
              this->Locale = ds->Locale;
              this->CaseSensitive = ds->CaseSensitive;
              this->EnforceConstraints = ds->EnforceConstraints;
              this->Merge(ds, false, System::Data::MissingSchemaAction::Add);
              this->InitVars();
          }
          else {
              this->ReadXml(reader);
              this->InitVars();
          }
      }
      
      inline System::Xml::Schema::XmlSchema^  DataSet1::GetSchemaSerializable() {
          System::IO::MemoryStream^  stream = (gcnew System::IO::MemoryStream());
          this->WriteXmlSchema((gcnew System::Xml::XmlTextWriter(stream, nullptr)));
          stream->Position = 0;
          return System::Xml::Schema::XmlSchema::Read((gcnew System::Xml::XmlTextReader(stream)), nullptr);
      }
      
      inline System::Void DataSet1::InitVars() {
          this->InitVars(true);
      }
      
      inline System::Void DataSet1::InitVars(System::Boolean initTable) {
          this->tableCustomers = (cli::safe_cast(__super::Tables[L"Customers"]));
          if (initTable == true) {
              if (this->tableCustomers != nullptr) {
                  this->tableCustomers->InitVars();
              }
          }
          this->tableEmployees = (cli::safe_cast(__super::Tables[L"Employees"]));
          if (initTable == true) {
              if (this->tableEmployees != nullptr) {
                  this->tableEmployees->InitVars();
              }
          }
          this->tableProducts = (cli::safe_cast(__super::Tables[L"Products"]));
          if (initTable == true) {
              if (this->tableProducts != nullptr) {
                  this->tableProducts->InitVars();
              }
          }
      }
      
      inline System::Void DataSet1::InitClass() {
          this->DataSetName = L"DataSet1";
          this->Prefix = L"";
          this->Namespace = L"http://tempuri.org/DataSet1.xsd";
          this->EnforceConstraints = true;
          this->SchemaSerializationMode = System::Data::SchemaSerializationMode::IncludeSchema;
          this->tableCustomers = (gcnew Ex22_05::DataSet1::CustomersDataTable());
          __super::Tables->Add(this->tableCustomers);
          this->tableEmployees = (gcnew Ex22_05::DataSet1::EmployeesDataTable());
          __super::Tables->Add(this->tableEmployees);
          this->tableProducts = (gcnew Ex22_05::DataSet1::ProductsDataTable());
          __super::Tables->Add(this->tableProducts);
      }
      
      inline System::Boolean DataSet1::ShouldSerializeCustomers() {
          return false;
      }
      
      inline System::Boolean DataSet1::ShouldSerializeEmployees() {
          return false;
      }
      
      inline System::Boolean DataSet1::ShouldSerializeProducts() {
          return false;
      }
      
      inline System::Void DataSet1::SchemaChanged(System::Object^  sender, System::ComponentModel::CollectionChangeEventArgs^  e) {
          if (e->Action == System::ComponentModel::CollectionChangeAction::Remove) {
              this->InitVars();
          }
      }
      
      inline System::Xml::Schema::XmlSchemaComplexType^  DataSet1::GetTypedDataSetSchema(System::Xml::Schema::XmlSchemaSet^  xs) {
          Ex22_05::DataSet1^  ds = (gcnew Ex22_05::DataSet1());
          System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew System::Xml::Schema::XmlSchemaComplexType());
          System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew System::Xml::Schema::XmlSchemaSequence());
          xs->Add(ds->GetSchemaSerializable());
          System::Xml::Schema::XmlSchemaAny^  any = (gcnew System::Xml::Schema::XmlSchemaAny());
          any->Namespace = ds->Namespace;
          sequence->Items->Add(any);
          type->Particle = sequence;
          return type;
      }
      
      
      inline DataSet1::CustomersDataTable::CustomersDataTable() {
          this->TableName = L"Customers";
          this->BeginInit();
          this->InitClass();
          this->EndInit();
      }
      
      inline DataSet1::CustomersDataTable::CustomersDataTable(System::Data::DataTable^  table) {
          this->TableName = table->TableName;
          if (table->CaseSensitive != table->DataSet->CaseSensitive) {
              this->CaseSensitive = table->CaseSensitive;
          }
          if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
              this->Locale = table->Locale;
          }
          if (table->Namespace != table->DataSet->Namespace) {
              this->Namespace = table->Namespace;
          }
          this->Prefix = table->Prefix;
          this->MinimumCapacity = table->MinimumCapacity;
      }
      
      inline DataSet1::CustomersDataTable::CustomersDataTable(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context) : 
              System::Data::DataTable(info, context) {
          this->InitVars();
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::CustomerIDColumn::get() {
          return this->columnCustomerID;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::CompanyNameColumn::get() {
          return this->columnCompanyName;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::ContactNameColumn::get() {
          return this->columnContactName;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::ContactTitleColumn::get() {
          return this->columnContactTitle;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::AddressColumn::get() {
          return this->columnAddress;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::CityColumn::get() {
          return this->columnCity;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::RegionColumn::get() {
          return this->columnRegion;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::PostalCodeColumn::get() {
          return this->columnPostalCode;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::CountryColumn::get() {
          return this->columnCountry;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::PhoneColumn::get() {
          return this->columnPhone;
      }
      
      inline System::Data::DataColumn^  DataSet1::CustomersDataTable::FaxColumn::get() {
          return this->columnFax;
      }
      
      inline System::Int32 DataSet1::CustomersDataTable::Count::get() {
          return this->Rows->Count;
      }
      
      inline Ex22_05::DataSet1::CustomersRow^  DataSet1::CustomersDataTable::default::get(System::Int32 index) {
          return (cli::safe_cast(this->Rows[index]));
      }
      
      inline System::Void DataSet1::CustomersDataTable::AddCustomersRow(Ex22_05::DataSet1::CustomersRow^  row) {
          this->Rows->Add(row);
      }
      
      inline Ex22_05::DataSet1::CustomersRow^  DataSet1::CustomersDataTable::AddCustomersRow(
                  System::String^  CustomerID, 
                  System::String^  CompanyName, 
                  System::String^  ContactName, 
                  System::String^  ContactTitle, 
                  System::String^  Address, 
                  System::String^  City, 
                  System::String^  Region, 
                  System::String^  PostalCode, 
                  System::String^  Country, 
                  System::String^  Phone, 
                  System::String^  Fax) {
          Ex22_05::DataSet1::CustomersRow^  rowCustomersRow = (cli::safe_cast(this->NewRow()));
          rowCustomersRow->ItemArray = gcnew cli::array< System::Object^  >(11) {CustomerID, CompanyName, ContactName, ContactTitle, 
              Address, City, Region, PostalCode, Country, Phone, Fax};


          this->Rows->Add(rowCustomersRow);
          return rowCustomersRow;
      }
      
      inline Ex22_05::DataSet1::CustomersRow^  DataSet1::CustomersDataTable::FindByCustomerID(System::String^  CustomerID) {
          return (cli::safe_cast(this->Rows->Find(gcnew cli::array< System::Object^  >(1) {CustomerID})));
      }
      
      inline System::Collections::IEnumerator^  DataSet1::CustomersDataTable::GetEnumerator() {
          return this->Rows->GetEnumerator();
      }
      
      inline System::Data::DataTable^  DataSet1::CustomersDataTable::Clone() {
          Ex22_05::DataSet1::CustomersDataTable^  cln = (cli::safe_cast(__super::Clone()));
          cln->InitVars();
          return cln;
      }
      
      inline System::Data::DataTable^  DataSet1::CustomersDataTable::CreateInstance() {
          return (gcnew Ex22_05::DataSet1::CustomersDataTable());
      }
      
      inline System::Void DataSet1::CustomersDataTable::InitVars() {
          this->columnCustomerID = __super::Columns[L"CustomerID"];
          this->columnCompanyName = __super::Columns[L"CompanyName"];
          this->columnContactName = __super::Columns[L"ContactName"];
          this->columnContactTitle = __super::Columns[L"ContactTitle"];
          this->columnAddress = __super::Columns[L"Address"];
          this->columnCity = __super::Columns[L"City"];
          this->columnRegion = __super::Columns[L"Region"];
          this->columnPostalCode = __super::Columns[L"PostalCode"];
          this->columnCountry = __super::Columns[L"Country"];
          this->columnPhone = __super::Columns[L"Phone"];
          this->columnFax = __super::Columns[L"Fax"];
      }
      
      inline System::Void DataSet1::CustomersDataTable::InitClass() {
          this->columnCustomerID = (gcnew System::Data::DataColumn(L"CustomerID", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCustomerID);
          this->columnCompanyName = (gcnew System::Data::DataColumn(L"CompanyName", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCompanyName);
          this->columnContactName = (gcnew System::Data::DataColumn(L"ContactName", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnContactName);
          this->columnContactTitle = (gcnew System::Data::DataColumn(L"ContactTitle", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnContactTitle);
          this->columnAddress = (gcnew System::Data::DataColumn(L"Address", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnAddress);
          this->columnCity = (gcnew System::Data::DataColumn(L"City", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCity);
          this->columnRegion = (gcnew System::Data::DataColumn(L"Region", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnRegion);
          this->columnPostalCode = (gcnew System::Data::DataColumn(L"PostalCode", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnPostalCode);
          this->columnCountry = (gcnew System::Data::DataColumn(L"Country", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCountry);
          this->columnPhone = (gcnew System::Data::DataColumn(L"Phone", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnPhone);
          this->columnFax = (gcnew System::Data::DataColumn(L"Fax", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnFax);
          this->Constraints->Add((gcnew System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< System::Data::DataColumn^  >(1) {this->columnCustomerID}, 
                  true)));
          this->columnCustomerID->AllowDBNull = false;
          this->columnCustomerID->Unique = true;
          this->columnCustomerID->MaxLength = 5;
          this->columnCompanyName->MaxLength = 40;
          this->columnContactName->MaxLength = 30;
          this->columnContactTitle->MaxLength = 30;
          this->columnAddress->MaxLength = 60;
          this->columnCity->MaxLength = 15;
          this->columnRegion->MaxLength = 15;
          this->columnPostalCode->MaxLength = 10;
          this->columnCountry->MaxLength = 15;
          this->columnPhone->MaxLength = 24;
          this->columnFax->MaxLength = 24;
      }
      
      inline Ex22_05::DataSet1::CustomersRow^  DataSet1::CustomersDataTable::NewCustomersRow() {
          return (cli::safe_cast(this->NewRow()));
      }
      
      inline System::Data::DataRow^  DataSet1::CustomersDataTable::NewRowFromBuilder(System::Data::DataRowBuilder^  builder) {
          return (gcnew Ex22_05::DataSet1::CustomersRow(builder));
      }
      
      inline System::Type^  DataSet1::CustomersDataTable::GetRowType() {
          return Ex22_05::DataSet1::CustomersRow::typeid;
      }
      
      inline System::Void DataSet1::CustomersDataTable::OnRowChanged(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowChanged(e);
          {
              this->CustomersRowChanged(this, (gcnew Ex22_05::DataSet1::CustomersRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::CustomersDataTable::OnRowChanging(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowChanging(e);
          {
              this->CustomersRowChanging(this, (gcnew Ex22_05::DataSet1::CustomersRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::CustomersDataTable::OnRowDeleted(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowDeleted(e);
          {
              this->CustomersRowDeleted(this, (gcnew Ex22_05::DataSet1::CustomersRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::CustomersDataTable::OnRowDeleting(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowDeleting(e);
          {
              this->CustomersRowDeleting(this, (gcnew Ex22_05::DataSet1::CustomersRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::CustomersDataTable::RemoveCustomersRow(Ex22_05::DataSet1::CustomersRow^  row) {
          this->Rows->Remove(row);
      }
      
      inline System::Xml::Schema::XmlSchemaComplexType^  DataSet1::CustomersDataTable::GetTypedTableSchema(System::Xml::Schema::XmlSchemaSet^  xs) {
          System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew System::Xml::Schema::XmlSchemaComplexType());
          System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew System::Xml::Schema::XmlSchemaSequence());
          Ex22_05::DataSet1^  ds = (gcnew Ex22_05::DataSet1());
          xs->Add(ds->GetSchemaSerializable());
          System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew System::Xml::Schema::XmlSchemaAny());
          any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
          any1->MinOccurs = System::Decimal(0);
          any1->MaxOccurs = System::Decimal::MaxValue;
          any1->ProcessContents = System::Xml::Schema::XmlSchemaContentProcessing::Lax;
          sequence->Items->Add(any1);
          System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew System::Xml::Schema::XmlSchemaAny());
          any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
          any2->MinOccurs = System::Decimal(1);
          any2->ProcessContents = System::Xml::Schema::XmlSchemaContentProcessing::Lax;
          sequence->Items->Add(any2);
          System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew System::Xml::Schema::XmlSchemaAttribute());
          attribute1->Name = L"namespace";
          attribute1->FixedValue = ds->Namespace;
          type->Attributes->Add(attribute1);
          System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew System::Xml::Schema::XmlSchemaAttribute());
          attribute2->Name = L"tableTypeName";
          attribute2->FixedValue = L"CustomersDataTable";
          type->Attributes->Add(attribute2);
          type->Particle = sequence;
          return type;
      }
      
      
      inline DataSet1::EmployeesDataTable::EmployeesDataTable() {
          this->TableName = L"Employees";
          this->BeginInit();
          this->InitClass();
          this->EndInit();
      }
      
      inline DataSet1::EmployeesDataTable::EmployeesDataTable(System::Data::DataTable^  table) {
          this->TableName = table->TableName;
          if (table->CaseSensitive != table->DataSet->CaseSensitive) {
              this->CaseSensitive = table->CaseSensitive;
          }
          if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
              this->Locale = table->Locale;
          }
          if (table->Namespace != table->DataSet->Namespace) {
              this->Namespace = table->Namespace;
          }
          this->Prefix = table->Prefix;
          this->MinimumCapacity = table->MinimumCapacity;
      }
      
      inline DataSet1::EmployeesDataTable::EmployeesDataTable(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context) : 
              System::Data::DataTable(info, context) {
          this->InitVars();
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::EmployeeIDColumn::get() {
          return this->columnEmployeeID;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::LastNameColumn::get() {
          return this->columnLastName;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::FirstNameColumn::get() {
          return this->columnFirstName;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::TitleColumn::get() {
          return this->columnTitle;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::TitleOfCourtesyColumn::get() {
          return this->columnTitleOfCourtesy;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::BirthDateColumn::get() {
          return this->columnBirthDate;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::HireDateColumn::get() {
          return this->columnHireDate;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::AddressColumn::get() {
          return this->columnAddress;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::CityColumn::get() {
          return this->columnCity;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::RegionColumn::get() {
          return this->columnRegion;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::PostalCodeColumn::get() {
          return this->columnPostalCode;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::CountryColumn::get() {
          return this->columnCountry;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::HomePhoneColumn::get() {
          return this->columnHomePhone;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::ExtensionColumn::get() {
          return this->columnExtension;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::PhotoColumn::get() {
          return this->columnPhoto;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::NotesColumn::get() {
          return this->columnNotes;
      }
      
      inline System::Data::DataColumn^  DataSet1::EmployeesDataTable::ReportsToColumn::get() {
          return this->columnReportsTo;
      }
      
      inline System::Int32 DataSet1::EmployeesDataTable::Count::get() {
          return this->Rows->Count;
      }
      
      inline Ex22_05::DataSet1::EmployeesRow^  DataSet1::EmployeesDataTable::default::get(System::Int32 index) {
          return (cli::safe_cast(this->Rows[index]));
      }
      
      inline System::Void DataSet1::EmployeesDataTable::AddEmployeesRow(Ex22_05::DataSet1::EmployeesRow^  row) {
          this->Rows->Add(row);
      }
      
      inline Ex22_05::DataSet1::EmployeesRow^  DataSet1::EmployeesDataTable::AddEmployeesRow(
                  System::String^  LastName, 
                  System::String^  FirstName, 
                  System::String^  Title, 
                  System::String^  TitleOfCourtesy, 
                  System::DateTime BirthDate, 
                  System::DateTime HireDate, 
                  System::String^  Address, 
                  System::String^  City, 
                  System::String^  Region, 
                  System::String^  PostalCode, 
                  System::String^  Country, 
                  System::String^  HomePhone, 
                  System::String^  Extension, 
                  System::String^  Photo, 
                  System::String^  Notes, 
                  System::Int32 ReportsTo) {
          Ex22_05::DataSet1::EmployeesRow^  rowEmployeesRow = (cli::safe_cast(this->NewRow()));
          rowEmployeesRow->ItemArray = gcnew cli::array< System::Object^  >(17) {nullptr, LastName, FirstName, Title, TitleOfCourtesy, 
              BirthDate, HireDate, Address, City, Region, PostalCode, Country, HomePhone, Extension, Photo, Notes, ReportsTo};


          this->Rows->Add(rowEmployeesRow);
          return rowEmployeesRow;
      }
      
      inline Ex22_05::DataSet1::EmployeesRow^  DataSet1::EmployeesDataTable::FindByEmployeeID(System::Int32 EmployeeID) {
          return (cli::safe_cast(this->Rows->Find(gcnew cli::array< System::Object^  >(1) {EmployeeID})));
      }
      
      inline System::Collections::IEnumerator^  DataSet1::EmployeesDataTable::GetEnumerator() {
          return this->Rows->GetEnumerator();
      }
      
      inline System::Data::DataTable^  DataSet1::EmployeesDataTable::Clone() {
          Ex22_05::DataSet1::EmployeesDataTable^  cln = (cli::safe_cast(__super::Clone()));
          cln->InitVars();
          return cln;
      }
      
      inline System::Data::DataTable^  DataSet1::EmployeesDataTable::CreateInstance() {
          return (gcnew Ex22_05::DataSet1::EmployeesDataTable());
      }
      
      inline System::Void DataSet1::EmployeesDataTable::InitVars() {
          this->columnEmployeeID = __super::Columns[L"EmployeeID"];
          this->columnLastName = __super::Columns[L"LastName"];
          this->columnFirstName = __super::Columns[L"FirstName"];
          this->columnTitle = __super::Columns[L"Title"];
          this->columnTitleOfCourtesy = __super::Columns[L"TitleOfCourtesy"];
          this->columnBirthDate = __super::Columns[L"BirthDate"];
          this->columnHireDate = __super::Columns[L"HireDate"];
          this->columnAddress = __super::Columns[L"Address"];
          this->columnCity = __super::Columns[L"City"];
          this->columnRegion = __super::Columns[L"Region"];
          this->columnPostalCode = __super::Columns[L"PostalCode"];
          this->columnCountry = __super::Columns[L"Country"];
          this->columnHomePhone = __super::Columns[L"HomePhone"];
          this->columnExtension = __super::Columns[L"Extension"];
          this->columnPhoto = __super::Columns[L"Photo"];
          this->columnNotes = __super::Columns[L"Notes"];
          this->columnReportsTo = __super::Columns[L"ReportsTo"];
      }
      
      inline System::Void DataSet1::EmployeesDataTable::InitClass() {
          this->columnEmployeeID = (gcnew System::Data::DataColumn(L"EmployeeID", System::Int32::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnEmployeeID);
          this->columnLastName = (gcnew System::Data::DataColumn(L"LastName", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnLastName);
          this->columnFirstName = (gcnew System::Data::DataColumn(L"FirstName", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnFirstName);
          this->columnTitle = (gcnew System::Data::DataColumn(L"Title", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnTitle);
          this->columnTitleOfCourtesy = (gcnew System::Data::DataColumn(L"TitleOfCourtesy", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnTitleOfCourtesy);
          this->columnBirthDate = (gcnew System::Data::DataColumn(L"BirthDate", System::DateTime::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnBirthDate);
          this->columnHireDate = (gcnew System::Data::DataColumn(L"HireDate", System::DateTime::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnHireDate);
          this->columnAddress = (gcnew System::Data::DataColumn(L"Address", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnAddress);
          this->columnCity = (gcnew System::Data::DataColumn(L"City", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCity);
          this->columnRegion = (gcnew System::Data::DataColumn(L"Region", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnRegion);
          this->columnPostalCode = (gcnew System::Data::DataColumn(L"PostalCode", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnPostalCode);
          this->columnCountry = (gcnew System::Data::DataColumn(L"Country", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCountry);
          this->columnHomePhone = (gcnew System::Data::DataColumn(L"HomePhone", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnHomePhone);
          this->columnExtension = (gcnew System::Data::DataColumn(L"Extension", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnExtension);
          this->columnPhoto = (gcnew System::Data::DataColumn(L"Photo", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnPhoto);
          this->columnNotes = (gcnew System::Data::DataColumn(L"Notes", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnNotes);
          this->columnReportsTo = (gcnew System::Data::DataColumn(L"ReportsTo", System::Int32::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnReportsTo);
          this->Constraints->Add((gcnew System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< System::Data::DataColumn^  >(1) {this->columnEmployeeID}, 
                  true)));
          this->columnEmployeeID->AutoIncrement = true;
          this->columnEmployeeID->AllowDBNull = false;
          this->columnEmployeeID->ReadOnly = true;
          this->columnEmployeeID->Unique = true;
          this->columnLastName->MaxLength = 20;
          this->columnFirstName->MaxLength = 10;
          this->columnTitle->MaxLength = 30;
          this->columnTitleOfCourtesy->MaxLength = 25;
          this->columnAddress->MaxLength = 60;
          this->columnCity->MaxLength = 15;
          this->columnRegion->MaxLength = 15;
          this->columnPostalCode->MaxLength = 10;
          this->columnCountry->MaxLength = 15;
          this->columnHomePhone->MaxLength = 24;
          this->columnExtension->MaxLength = 4;
          this->columnPhoto->MaxLength = 255;
          this->columnNotes->MaxLength = 1073741823;
      }
      
      inline Ex22_05::DataSet1::EmployeesRow^  DataSet1::EmployeesDataTable::NewEmployeesRow() {
          return (cli::safe_cast(this->NewRow()));
      }
      
      inline System::Data::DataRow^  DataSet1::EmployeesDataTable::NewRowFromBuilder(System::Data::DataRowBuilder^  builder) {
          return (gcnew Ex22_05::DataSet1::EmployeesRow(builder));
      }
      
      inline System::Type^  DataSet1::EmployeesDataTable::GetRowType() {
          return Ex22_05::DataSet1::EmployeesRow::typeid;
      }
      
      inline System::Void DataSet1::EmployeesDataTable::OnRowChanged(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowChanged(e);
          {
              this->EmployeesRowChanged(this, (gcnew Ex22_05::DataSet1::EmployeesRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::EmployeesDataTable::OnRowChanging(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowChanging(e);
          {
              this->EmployeesRowChanging(this, (gcnew Ex22_05::DataSet1::EmployeesRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::EmployeesDataTable::OnRowDeleted(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowDeleted(e);
          {
              this->EmployeesRowDeleted(this, (gcnew Ex22_05::DataSet1::EmployeesRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::EmployeesDataTable::OnRowDeleting(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowDeleting(e);
          {
              this->EmployeesRowDeleting(this, (gcnew Ex22_05::DataSet1::EmployeesRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::EmployeesDataTable::RemoveEmployeesRow(Ex22_05::DataSet1::EmployeesRow^  row) {
          this->Rows->Remove(row);
      }
      
      inline System::Xml::Schema::XmlSchemaComplexType^  DataSet1::EmployeesDataTable::GetTypedTableSchema(System::Xml::Schema::XmlSchemaSet^  xs) {
          System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew System::Xml::Schema::XmlSchemaComplexType());
          System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew System::Xml::Schema::XmlSchemaSequence());
          Ex22_05::DataSet1^  ds = (gcnew Ex22_05::DataSet1());
          xs->Add(ds->GetSchemaSerializable());
          System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew System::Xml::Schema::XmlSchemaAny());
          any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
          any1->MinOccurs = System::Decimal(0);
          any1->MaxOccurs = System::Decimal::MaxValue;
          any1->ProcessContents = System::Xml::Schema::XmlSchemaContentProcessing::Lax;
          sequence->Items->Add(any1);
          System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew System::Xml::Schema::XmlSchemaAny());
          any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
          any2->MinOccurs = System::Decimal(1);
          any2->ProcessContents = System::Xml::Schema::XmlSchemaContentProcessing::Lax;
          sequence->Items->Add(any2);
          System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew System::Xml::Schema::XmlSchemaAttribute());
          attribute1->Name = L"namespace";
          attribute1->FixedValue = ds->Namespace;
          type->Attributes->Add(attribute1);
          System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew System::Xml::Schema::XmlSchemaAttribute());
          attribute2->Name = L"tableTypeName";
          attribute2->FixedValue = L"EmployeesDataTable";
          type->Attributes->Add(attribute2);
          type->Particle = sequence;
          return type;
      }
      
      
      inline DataSet1::ProductsDataTable::ProductsDataTable() {
          this->TableName = L"Products";
          this->BeginInit();
          this->InitClass();
          this->EndInit();
      }
      
      inline DataSet1::ProductsDataTable::ProductsDataTable(System::Data::DataTable^  table) {
          this->TableName = table->TableName;
          if (table->CaseSensitive != table->DataSet->CaseSensitive) {
              this->CaseSensitive = table->CaseSensitive;
          }
          if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
              this->Locale = table->Locale;
          }
          if (table->Namespace != table->DataSet->Namespace) {
              this->Namespace = table->Namespace;
          }
          this->Prefix = table->Prefix;
          this->MinimumCapacity = table->MinimumCapacity;
      }
      
      inline DataSet1::ProductsDataTable::ProductsDataTable(System::Runtime::Serialization::SerializationInfo^  info, System::Runtime::Serialization::StreamingContext context) : 
              System::Data::DataTable(info, context) {
          this->InitVars();
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::ProductIDColumn::get() {
          return this->columnProductID;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::ProductNameColumn::get() {
          return this->columnProductName;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::SupplierIDColumn::get() {
          return this->columnSupplierID;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::CategoryIDColumn::get() {
          return this->columnCategoryID;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::QuantityPerUnitColumn::get() {
          return this->columnQuantityPerUnit;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::UnitPriceColumn::get() {
          return this->columnUnitPrice;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::UnitsInStockColumn::get() {
          return this->columnUnitsInStock;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::UnitsOnOrderColumn::get() {
          return this->columnUnitsOnOrder;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::ReorderLevelColumn::get() {
          return this->columnReorderLevel;
      }
      
      inline System::Data::DataColumn^  DataSet1::ProductsDataTable::DiscontinuedColumn::get() {
          return this->columnDiscontinued;
      }
      
      inline System::Int32 DataSet1::ProductsDataTable::Count::get() {
          return this->Rows->Count;
      }
      
      inline Ex22_05::DataSet1::ProductsRow^  DataSet1::ProductsDataTable::default::get(System::Int32 index) {
          return (cli::safe_cast(this->Rows[index]));
      }
      
      inline System::Void DataSet1::ProductsDataTable::AddProductsRow(Ex22_05::DataSet1::ProductsRow^  row) {
          this->Rows->Add(row);
      }
      
      inline Ex22_05::DataSet1::ProductsRow^  DataSet1::ProductsDataTable::AddProductsRow(
                  System::String^  ProductName, 
                  System::Int32 SupplierID, 
                  System::Int32 CategoryID, 
                  System::String^  QuantityPerUnit, 
                  System::Decimal UnitPrice, 
                  System::Int16 UnitsInStock, 
                  System::Int16 UnitsOnOrder, 
                  System::Int16 ReorderLevel, 
                  System::Boolean Discontinued) {
          Ex22_05::DataSet1::ProductsRow^  rowProductsRow = (cli::safe_cast(this->NewRow()));
          rowProductsRow->ItemArray = gcnew cli::array< System::Object^  >(10) {nullptr, ProductName, SupplierID, CategoryID, QuantityPerUnit, 
              UnitPrice, UnitsInStock, UnitsOnOrder, ReorderLevel, Discontinued};


          this->Rows->Add(rowProductsRow);
          return rowProductsRow;
      }
      
      inline Ex22_05::DataSet1::ProductsRow^  DataSet1::ProductsDataTable::FindByProductID(System::Int32 ProductID) {
          return (cli::safe_cast(this->Rows->Find(gcnew cli::array< System::Object^  >(1) {ProductID})));
      }
      
      inline System::Collections::IEnumerator^  DataSet1::ProductsDataTable::GetEnumerator() {
          return this->Rows->GetEnumerator();
      }
      
      inline System::Data::DataTable^  DataSet1::ProductsDataTable::Clone() {
          Ex22_05::DataSet1::ProductsDataTable^  cln = (cli::safe_cast(__super::Clone()));
          cln->InitVars();
          return cln;
      }
      
      inline System::Data::DataTable^  DataSet1::ProductsDataTable::CreateInstance() {
          return (gcnew Ex22_05::DataSet1::ProductsDataTable());
      }
      
      inline System::Void DataSet1::ProductsDataTable::InitVars() {
          this->columnProductID = __super::Columns[L"ProductID"];
          this->columnProductName = __super::Columns[L"ProductName"];
          this->columnSupplierID = __super::Columns[L"SupplierID"];
          this->columnCategoryID = __super::Columns[L"CategoryID"];
          this->columnQuantityPerUnit = __super::Columns[L"QuantityPerUnit"];
          this->columnUnitPrice = __super::Columns[L"UnitPrice"];
          this->columnUnitsInStock = __super::Columns[L"UnitsInStock"];
          this->columnUnitsOnOrder = __super::Columns[L"UnitsOnOrder"];
          this->columnReorderLevel = __super::Columns[L"ReorderLevel"];
          this->columnDiscontinued = __super::Columns[L"Discontinued"];
      }
      
      inline System::Void DataSet1::ProductsDataTable::InitClass() {
          this->columnProductID = (gcnew System::Data::DataColumn(L"ProductID", System::Int32::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnProductID);
          this->columnProductName = (gcnew System::Data::DataColumn(L"ProductName", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnProductName);
          this->columnSupplierID = (gcnew System::Data::DataColumn(L"SupplierID", System::Int32::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnSupplierID);
          this->columnCategoryID = (gcnew System::Data::DataColumn(L"CategoryID", System::Int32::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnCategoryID);
          this->columnQuantityPerUnit = (gcnew System::Data::DataColumn(L"QuantityPerUnit", System::String::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnQuantityPerUnit);
          this->columnUnitPrice = (gcnew System::Data::DataColumn(L"UnitPrice", System::Decimal::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnUnitPrice);
          this->columnUnitsInStock = (gcnew System::Data::DataColumn(L"UnitsInStock", System::Int16::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnUnitsInStock);
          this->columnUnitsOnOrder = (gcnew System::Data::DataColumn(L"UnitsOnOrder", System::Int16::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnUnitsOnOrder);
          this->columnReorderLevel = (gcnew System::Data::DataColumn(L"ReorderLevel", System::Int16::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnReorderLevel);
          this->columnDiscontinued = (gcnew System::Data::DataColumn(L"Discontinued", System::Boolean::typeid, nullptr, System::Data::MappingType::Element));
          __super::Columns->Add(this->columnDiscontinued);
          this->Constraints->Add((gcnew System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< System::Data::DataColumn^  >(1) {this->columnProductID}, 
                  true)));
          this->columnProductID->AutoIncrement = true;
          this->columnProductID->AllowDBNull = false;
          this->columnProductID->ReadOnly = true;
          this->columnProductID->Unique = true;
          this->columnProductName->MaxLength = 40;
          this->columnQuantityPerUnit->MaxLength = 20;
          this->columnDiscontinued->AllowDBNull = false;
      }
      
      inline Ex22_05::DataSet1::ProductsRow^  DataSet1::ProductsDataTable::NewProductsRow() {
          return (cli::safe_cast(this->NewRow()));
      }
      
      inline System::Data::DataRow^  DataSet1::ProductsDataTable::NewRowFromBuilder(System::Data::DataRowBuilder^  builder) {
          return (gcnew Ex22_05::DataSet1::ProductsRow(builder));
      }
      
      inline System::Type^  DataSet1::ProductsDataTable::GetRowType() {
          return Ex22_05::DataSet1::ProductsRow::typeid;
      }
      
      inline System::Void DataSet1::ProductsDataTable::OnRowChanged(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowChanged(e);
          {
              this->ProductsRowChanged(this, (gcnew Ex22_05::DataSet1::ProductsRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::ProductsDataTable::OnRowChanging(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowChanging(e);
          {
              this->ProductsRowChanging(this, (gcnew Ex22_05::DataSet1::ProductsRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::ProductsDataTable::OnRowDeleted(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowDeleted(e);
          {
              this->ProductsRowDeleted(this, (gcnew Ex22_05::DataSet1::ProductsRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::ProductsDataTable::OnRowDeleting(System::Data::DataRowChangeEventArgs^  e) {
          __super::OnRowDeleting(e);
          {
              this->ProductsRowDeleting(this, (gcnew Ex22_05::DataSet1::ProductsRowChangeEvent((cli::safe_cast(e->Row)), 
                      e->Action)));
          }
      }
      
      inline System::Void DataSet1::ProductsDataTable::RemoveProductsRow(Ex22_05::DataSet1::ProductsRow^  row) {
          this->Rows->Remove(row);
      }
      
      inline System::Xml::Schema::XmlSchemaComplexType^  DataSet1::ProductsDataTable::GetTypedTableSchema(System::Xml::Schema::XmlSchemaSet^  xs) {
          System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew System::Xml::Schema::XmlSchemaComplexType());
          System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew System::Xml::Schema::XmlSchemaSequence());
          Ex22_05::DataSet1^  ds = (gcnew Ex22_05::DataSet1());
          xs->Add(ds->GetSchemaSerializable());
          System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew System::Xml::Schema::XmlSchemaAny());
          any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
          any1->MinOccurs = System::Decimal(0);
          any1->MaxOccurs = System::Decimal::MaxValue;
          any1->ProcessContents = System::Xml::Schema::XmlSchemaContentProcessing::Lax;
          sequence->Items->Add(any1);
          System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew System::Xml::Schema::XmlSchemaAny());
          any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
          any2->MinOccurs = System::Decimal(1);
          any2->ProcessContents = System::Xml::Schema::XmlSchemaContentProcessing::Lax;
          sequence->Items->Add(any2);
          System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew System::Xml::Schema::XmlSchemaAttribute());
          attribute1->Name = L"namespace";
          attribute1->FixedValue = ds->Namespace;
          type->Attributes->Add(attribute1);
          System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew System::Xml::Schema::XmlSchemaAttribute());
          attribute2->Name = L"tableTypeName";
          attribute2->FixedValue = L"ProductsDataTable";
          type->Attributes->Add(attribute2);
          type->Particle = sequence;
          return type;
      }
      
      
      inline DataSet1::CustomersRow::CustomersRow(System::Data::DataRowBuilder^  rb) : 
              System::Data::DataRow(rb) {
          this->tableCustomers = (cli::safe_cast(this->Table));
      }
      
      inline System::String^  DataSet1::CustomersRow::CustomerID::get() {
          return (cli::safe_cast(this[this->tableCustomers->CustomerIDColumn]));
      }
      inline System::Void DataSet1::CustomersRow::CustomerID::set(System::String^  value) {
          this[this->tableCustomers->CustomerIDColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::CompanyName::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->CompanyNameColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'CompanyName\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::CompanyName::set(System::String^  value) {
          this[this->tableCustomers->CompanyNameColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::ContactName::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->ContactNameColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'ContactName\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::ContactName::set(System::String^  value) {
          this[this->tableCustomers->ContactNameColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::ContactTitle::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->ContactTitleColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'ContactTitle\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::ContactTitle::set(System::String^  value) {
          this[this->tableCustomers->ContactTitleColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::Address::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->AddressColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Address\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::Address::set(System::String^  value) {
          this[this->tableCustomers->AddressColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::City::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->CityColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'City\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::City::set(System::String^  value) {
          this[this->tableCustomers->CityColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::Region::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->RegionColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Region\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::Region::set(System::String^  value) {
          this[this->tableCustomers->RegionColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::PostalCode::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->PostalCodeColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'PostalCode\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::PostalCode::set(System::String^  value) {
          this[this->tableCustomers->PostalCodeColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::Country::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->CountryColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Country\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::Country::set(System::String^  value) {
          this[this->tableCustomers->CountryColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::Phone::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->PhoneColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Phone\' in table \'Customers\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::CustomersRow::Phone::set(System::String^  value) {
          this[this->tableCustomers->PhoneColumn] = value;
      }
      
      inline System::String^  DataSet1::CustomersRow::Fax::get() {
          try {
              return (cli::safe_cast(this[this->tableCustomers->FaxColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Fax\' in table \'Customers\' is DBNull.", e));
          }
      }
      inline System::Void DataSet1::CustomersRow::Fax::set(System::String^  value) {
          this[this->tableCustomers->FaxColumn] = value;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsCompanyNameNull() {
          return this->IsNull(this->tableCustomers->CompanyNameColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetCompanyNameNull() {
          this[this->tableCustomers->CompanyNameColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsContactNameNull() {
          return this->IsNull(this->tableCustomers->ContactNameColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetContactNameNull() {
          this[this->tableCustomers->ContactNameColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsContactTitleNull() {
          return this->IsNull(this->tableCustomers->ContactTitleColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetContactTitleNull() {
          this[this->tableCustomers->ContactTitleColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsAddressNull() {
          return this->IsNull(this->tableCustomers->AddressColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetAddressNull() {
          this[this->tableCustomers->AddressColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsCityNull() {
          return this->IsNull(this->tableCustomers->CityColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetCityNull() {
          this[this->tableCustomers->CityColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsRegionNull() {
          return this->IsNull(this->tableCustomers->RegionColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetRegionNull() {
          this[this->tableCustomers->RegionColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsPostalCodeNull() {
          return this->IsNull(this->tableCustomers->PostalCodeColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetPostalCodeNull() {
          this[this->tableCustomers->PostalCodeColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsCountryNull() {
          return this->IsNull(this->tableCustomers->CountryColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetCountryNull() {
          this[this->tableCustomers->CountryColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsPhoneNull() {
          return this->IsNull(this->tableCustomers->PhoneColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetPhoneNull() {
          this[this->tableCustomers->PhoneColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::CustomersRow::IsFaxNull() {
          return this->IsNull(this->tableCustomers->FaxColumn);
      }
      
      inline System::Void DataSet1::CustomersRow::SetFaxNull() {
          this[this->tableCustomers->FaxColumn] = System::Convert::DBNull;
      }
      
      
      inline DataSet1::EmployeesRow::EmployeesRow(System::Data::DataRowBuilder^  rb) : 
              System::Data::DataRow(rb) {
          this->tableEmployees = (cli::safe_cast(this->Table));
      }
      
      inline System::Int32 DataSet1::EmployeesRow::EmployeeID::get() {
          return (*cli::safe_cast(this[this->tableEmployees->EmployeeIDColumn]));
      }
      inline System::Void DataSet1::EmployeesRow::EmployeeID::set(System::Int32 value) {
          this[this->tableEmployees->EmployeeIDColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::LastName::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->LastNameColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'LastName\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::LastName::set(System::String^  value) {
          this[this->tableEmployees->LastNameColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::FirstName::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->FirstNameColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'FirstName\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::FirstName::set(System::String^  value) {
          this[this->tableEmployees->FirstNameColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Title::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->TitleColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Title\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Title::set(System::String^  value) {
          this[this->tableEmployees->TitleColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::TitleOfCourtesy::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->TitleOfCourtesyColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'TitleOfCourtesy\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::TitleOfCourtesy::set(System::String^  value) {
          this[this->tableEmployees->TitleOfCourtesyColumn] = value;
      }
      
      inline System::DateTime DataSet1::EmployeesRow::BirthDate::get() {
          try {
              return (*cli::safe_cast(this[this->tableEmployees->BirthDateColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'BirthDate\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::BirthDate::set(System::DateTime value) {
          this[this->tableEmployees->BirthDateColumn] = value;
      }
      
      inline System::DateTime DataSet1::EmployeesRow::HireDate::get() {
          try {
              return (*cli::safe_cast(this[this->tableEmployees->HireDateColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'HireDate\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::HireDate::set(System::DateTime value) {
          this[this->tableEmployees->HireDateColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Address::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->AddressColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Address\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Address::set(System::String^  value) {
          this[this->tableEmployees->AddressColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::City::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->CityColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'City\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::City::set(System::String^  value) {
          this[this->tableEmployees->CityColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Region::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->RegionColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Region\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Region::set(System::String^  value) {
          this[this->tableEmployees->RegionColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::PostalCode::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->PostalCodeColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'PostalCode\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::PostalCode::set(System::String^  value) {
          this[this->tableEmployees->PostalCodeColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Country::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->CountryColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Country\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Country::set(System::String^  value) {
          this[this->tableEmployees->CountryColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::HomePhone::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->HomePhoneColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'HomePhone\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::HomePhone::set(System::String^  value) {
          this[this->tableEmployees->HomePhoneColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Extension::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->ExtensionColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Extension\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Extension::set(System::String^  value) {
          this[this->tableEmployees->ExtensionColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Photo::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->PhotoColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Photo\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Photo::set(System::String^  value) {
          this[this->tableEmployees->PhotoColumn] = value;
      }
      
      inline System::String^  DataSet1::EmployeesRow::Notes::get() {
          try {
              return (cli::safe_cast(this[this->tableEmployees->NotesColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'Notes\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::Notes::set(System::String^  value) {
          this[this->tableEmployees->NotesColumn] = value;
      }
      
      inline System::Int32 DataSet1::EmployeesRow::ReportsTo::get() {
          try {
              return (*cli::safe_cast(this[this->tableEmployees->ReportsToColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'ReportsTo\' in table \'Employees\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::EmployeesRow::ReportsTo::set(System::Int32 value) {
          this[this->tableEmployees->ReportsToColumn] = value;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsLastNameNull() {
          return this->IsNull(this->tableEmployees->LastNameColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetLastNameNull() {
          this[this->tableEmployees->LastNameColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsFirstNameNull() {
          return this->IsNull(this->tableEmployees->FirstNameColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetFirstNameNull() {
          this[this->tableEmployees->FirstNameColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsTitleNull() {
          return this->IsNull(this->tableEmployees->TitleColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetTitleNull() {
          this[this->tableEmployees->TitleColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsTitleOfCourtesyNull() {
          return this->IsNull(this->tableEmployees->TitleOfCourtesyColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetTitleOfCourtesyNull() {
          this[this->tableEmployees->TitleOfCourtesyColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsBirthDateNull() {
          return this->IsNull(this->tableEmployees->BirthDateColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetBirthDateNull() {
          this[this->tableEmployees->BirthDateColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsHireDateNull() {
          return this->IsNull(this->tableEmployees->HireDateColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetHireDateNull() {
          this[this->tableEmployees->HireDateColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsAddressNull() {
          return this->IsNull(this->tableEmployees->AddressColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetAddressNull() {
          this[this->tableEmployees->AddressColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsCityNull() {
          return this->IsNull(this->tableEmployees->CityColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetCityNull() {
          this[this->tableEmployees->CityColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsRegionNull() {
          return this->IsNull(this->tableEmployees->RegionColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetRegionNull() {
          this[this->tableEmployees->RegionColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsPostalCodeNull() {
          return this->IsNull(this->tableEmployees->PostalCodeColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetPostalCodeNull() {
          this[this->tableEmployees->PostalCodeColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsCountryNull() {
          return this->IsNull(this->tableEmployees->CountryColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetCountryNull() {
          this[this->tableEmployees->CountryColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsHomePhoneNull() {
          return this->IsNull(this->tableEmployees->HomePhoneColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetHomePhoneNull() {
          this[this->tableEmployees->HomePhoneColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsExtensionNull() {
          return this->IsNull(this->tableEmployees->ExtensionColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetExtensionNull() {
          this[this->tableEmployees->ExtensionColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsPhotoNull() {
          return this->IsNull(this->tableEmployees->PhotoColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetPhotoNull() {
          this[this->tableEmployees->PhotoColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsNotesNull() {
          return this->IsNull(this->tableEmployees->NotesColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetNotesNull() {
          this[this->tableEmployees->NotesColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::EmployeesRow::IsReportsToNull() {
          return this->IsNull(this->tableEmployees->ReportsToColumn);
      }
      
      inline System::Void DataSet1::EmployeesRow::SetReportsToNull() {
          this[this->tableEmployees->ReportsToColumn] = System::Convert::DBNull;
      }
      
      
      inline DataSet1::ProductsRow::ProductsRow(System::Data::DataRowBuilder^  rb) : 
              System::Data::DataRow(rb) {
          this->tableProducts = (cli::safe_cast(this->Table));
      }
      
      inline System::Int32 DataSet1::ProductsRow::ProductID::get() {
          return (*cli::safe_cast(this[this->tableProducts->ProductIDColumn]));
      }
      inline System::Void DataSet1::ProductsRow::ProductID::set(System::Int32 value) {
          this[this->tableProducts->ProductIDColumn] = value;
      }
      
      inline System::String^  DataSet1::ProductsRow::ProductName::get() {
          try {
              return (cli::safe_cast(this[this->tableProducts->ProductNameColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'ProductName\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::ProductName::set(System::String^  value) {
          this[this->tableProducts->ProductNameColumn] = value;
      }
      
      inline System::Int32 DataSet1::ProductsRow::SupplierID::get() {
          try {
              return (*cli::safe_cast(this[this->tableProducts->SupplierIDColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'SupplierID\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::SupplierID::set(System::Int32 value) {
          this[this->tableProducts->SupplierIDColumn] = value;
      }
      
      inline System::Int32 DataSet1::ProductsRow::CategoryID::get() {
          try {
              return (*cli::safe_cast(this[this->tableProducts->CategoryIDColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'CategoryID\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::CategoryID::set(System::Int32 value) {
          this[this->tableProducts->CategoryIDColumn] = value;
      }
      
      inline System::String^  DataSet1::ProductsRow::QuantityPerUnit::get() {
          try {
              return (cli::safe_cast(this[this->tableProducts->QuantityPerUnitColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'QuantityPerUnit\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::QuantityPerUnit::set(System::String^  value) {
          this[this->tableProducts->QuantityPerUnitColumn] = value;
      }
      
      inline System::Decimal DataSet1::ProductsRow::UnitPrice::get() {
          try {
              return (*cli::safe_cast(this[this->tableProducts->UnitPriceColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'UnitPrice\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::UnitPrice::set(System::Decimal value) {
          this[this->tableProducts->UnitPriceColumn] = value;
      }
      
      inline System::Int16 DataSet1::ProductsRow::UnitsInStock::get() {
          try {
              return (*cli::safe_cast(this[this->tableProducts->UnitsInStockColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'UnitsInStock\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::UnitsInStock::set(System::Int16 value) {
          this[this->tableProducts->UnitsInStockColumn] = value;
      }
      
      inline System::Int16 DataSet1::ProductsRow::UnitsOnOrder::get() {
          try {
              return (*cli::safe_cast(this[this->tableProducts->UnitsOnOrderColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'UnitsOnOrder\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::UnitsOnOrder::set(System::Int16 value) {
          this[this->tableProducts->UnitsOnOrderColumn] = value;
      }
      
      inline System::Int16 DataSet1::ProductsRow::ReorderLevel::get() {
          try {
              return (*cli::safe_cast(this[this->tableProducts->ReorderLevelColumn]));
          }
          catch (System::InvalidCastException^ e) {
              throw (gcnew System::Data::StrongTypingException(L"The value for column \'ReorderLevel\' in table \'Products\' is DBNull.", 
                  e));
          }
      }
      inline System::Void DataSet1::ProductsRow::ReorderLevel::set(System::Int16 value) {
          this[this->tableProducts->ReorderLevelColumn] = value;
      }
      
      inline System::Boolean DataSet1::ProductsRow::Discontinued::get() {
          return (*cli::safe_cast(this[this->tableProducts->DiscontinuedColumn]));
      }
      inline System::Void DataSet1::ProductsRow::Discontinued::set(System::Boolean value) {
          this[this->tableProducts->DiscontinuedColumn] = value;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsProductNameNull() {
          return this->IsNull(this->tableProducts->ProductNameColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetProductNameNull() {
          this[this->tableProducts->ProductNameColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsSupplierIDNull() {
          return this->IsNull(this->tableProducts->SupplierIDColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetSupplierIDNull() {
          this[this->tableProducts->SupplierIDColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsCategoryIDNull() {
          return this->IsNull(this->tableProducts->CategoryIDColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetCategoryIDNull() {
          this[this->tableProducts->CategoryIDColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsQuantityPerUnitNull() {
          return this->IsNull(this->tableProducts->QuantityPerUnitColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetQuantityPerUnitNull() {
          this[this->tableProducts->QuantityPerUnitColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsUnitPriceNull() {
          return this->IsNull(this->tableProducts->UnitPriceColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetUnitPriceNull() {
          this[this->tableProducts->UnitPriceColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsUnitsInStockNull() {
          return this->IsNull(this->tableProducts->UnitsInStockColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetUnitsInStockNull() {
          this[this->tableProducts->UnitsInStockColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsUnitsOnOrderNull() {
          return this->IsNull(this->tableProducts->UnitsOnOrderColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetUnitsOnOrderNull() {
          this[this->tableProducts->UnitsOnOrderColumn] = System::Convert::DBNull;
      }
      
      inline System::Boolean DataSet1::ProductsRow::IsReorderLevelNull() {
          return this->IsNull(this->tableProducts->ReorderLevelColumn);
      }
      
      inline System::Void DataSet1::ProductsRow::SetReorderLevelNull() {
          this[this->tableProducts->ReorderLevelColumn] = System::Convert::DBNull;
      }
      
      
      inline DataSet1::CustomersRowChangeEvent::CustomersRowChangeEvent(Ex22_05::DataSet1::CustomersRow^  row, System::Data::DataRowAction action) {
          this->eventRow = row;
          this->eventAction = action;
      }
      
      inline Ex22_05::DataSet1::CustomersRow^  DataSet1::CustomersRowChangeEvent::Row::get() {
          return this->eventRow;
      }
      
      inline System::Data::DataRowAction DataSet1::CustomersRowChangeEvent::Action::get() {
          return this->eventAction;
      }
      
      
      inline DataSet1::EmployeesRowChangeEvent::EmployeesRowChangeEvent(Ex22_05::DataSet1::EmployeesRow^  row, System::Data::DataRowAction action) {
          this->eventRow = row;
          this->eventAction = action;
      }
      
      inline Ex22_05::DataSet1::EmployeesRow^  DataSet1::EmployeesRowChangeEvent::Row::get() {
          return this->eventRow;
      }
      
      inline System::Data::DataRowAction DataSet1::EmployeesRowChangeEvent::Action::get() {
          return this->eventAction;
      }
      
      
      inline DataSet1::ProductsRowChangeEvent::ProductsRowChangeEvent(Ex22_05::DataSet1::ProductsRow^  row, System::Data::DataRowAction action) {
          this->eventRow = row;
          this->eventAction = action;
      }
      
      inline Ex22_05::DataSet1::ProductsRow^  DataSet1::ProductsRowChangeEvent::Row::get() {
          return this->eventRow;
      }
      
      inline System::Data::DataRowAction DataSet1::ProductsRowChangeEvent::Action::get() {
          return this->eventAction;
      }
  }
  namespace Ex22_05 {
      namespace DataSet1TableAdapters {
      
      using namespace System;
      ref

CustomersTableAdapter;</h4>
   class CustomersTableAdapter;
      ref

EmployeesTableAdapter;</h4>
   class EmployeesTableAdapter;
      ref

ProductsTableAdapter;</h4>
   class ProductsTableAdapter;
      
      
      [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
      System::ComponentModel::DesignerCategoryAttribute(L"code"), 
      System::ComponentModel::ToolboxItem(true), 
      System::ComponentModel::DataObjectAttribute(true), 
      System::ComponentModel::DesignerAttribute(L"Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" 
  L", Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"), 
      System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
      public ref

CustomersTableAdapter</h4>
   class CustomersTableAdapter : public System::ComponentModel::Component {
          
          private: System::Data::Odbc::OdbcDataAdapter^  _adapter;
          
          private: System::Data::Odbc::OdbcConnection^  _connection;
          
          private: cli::array< System::Data::Odbc::OdbcCommand^  >^  _commandCollection;
          
          private: System::Boolean _clearBeforeFill;
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          CustomersTableAdapter();
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Data::Odbc::OdbcDataAdapter^  Adapter {
              System::Data::Odbc::OdbcDataAdapter^  get();
          }
          
          internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Data::Odbc::OdbcConnection^  Connection {
              System::Data::Odbc::OdbcConnection^  get();
              System::Void set(System::Data::Odbc::OdbcConnection^  value);
          }
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property cli::array< System::Data::Odbc::OdbcCommand^  >^  CommandCollection {
              cli::array< System::Data::Odbc::OdbcCommand^  >^  get();
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Boolean ClearBeforeFill {
              System::Boolean get();
              System::Void set(System::Boolean value);
          }
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitAdapter();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitConnection();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitCommandCollection();
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Fill, true)]
          virtual System::Int32 Fill(Ex22_05::DataSet1::CustomersDataTable^  dataTable);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Select, true)]
          virtual Ex22_05::DataSet1::CustomersDataTable^  GetData();
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(Ex22_05::DataSet1::CustomersDataTable^  dataTable);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(Ex22_05::DataSet1^  dataSet);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(System::Data::DataRow^  dataRow);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(cli::array< System::Data::DataRow^  >^  dataRows);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Delete, true)]
          virtual System::Int32 Delete(
                      System::String^  Original_CustomerID, 
                      System::String^  Original_CompanyName, 
                      System::String^  Original_ContactName, 
                      System::String^  Original_ContactTitle, 
                      System::String^  Original_Address, 
                      System::String^  Original_City, 
                      System::String^  Original_Region, 
                      System::String^  Original_PostalCode, 
                      System::String^  Original_Country, 
                      System::String^  Original_Phone, 
                      System::String^  Original_Fax);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Insert, true)]
          virtual System::Int32 Insert(
                      System::String^  CustomerID, 
                      System::String^  CompanyName, 
                      System::String^  ContactName, 
                      System::String^  ContactTitle, 
                      System::String^  Address, 
                      System::String^  City, 
                      System::String^  Region, 
                      System::String^  PostalCode, 
                      System::String^  Country, 
                      System::String^  Phone, 
                      System::String^  Fax);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Update, true)]
          virtual System::Int32 Update(
                      System::String^  CustomerID, 
                      System::String^  CompanyName, 
                      System::String^  ContactName, 
                      System::String^  ContactTitle, 
                      System::String^  Address, 
                      System::String^  City, 
                      System::String^  Region, 
                      System::String^  PostalCode, 
                      System::String^  Country, 
                      System::String^  Phone, 
                      System::String^  Fax, 
                      System::String^  Original_CustomerID, 
                      System::String^  Original_CompanyName, 
                      System::String^  Original_ContactName, 
                      System::String^  Original_ContactTitle, 
                      System::String^  Original_Address, 
                      System::String^  Original_City, 
                      System::String^  Original_Region, 
                      System::String^  Original_PostalCode, 
                      System::String^  Original_Country, 
                      System::String^  Original_Phone, 
                      System::String^  Original_Fax);
      };


      
      [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
      System::ComponentModel::DesignerCategoryAttribute(L"code"), 
      System::ComponentModel::ToolboxItem(true), 
      System::ComponentModel::DataObjectAttribute(true), 
      System::ComponentModel::DesignerAttribute(L"Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" 
  L", Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"), 
      System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
      public ref

EmployeesTableAdapter</h4>
   class EmployeesTableAdapter : public System::ComponentModel::Component {
          
          private: System::Data::Odbc::OdbcDataAdapter^  _adapter;
          
          private: System::Data::Odbc::OdbcConnection^  _connection;
          
          private: cli::array< System::Data::Odbc::OdbcCommand^  >^  _commandCollection;
          
          private: System::Boolean _clearBeforeFill;
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          EmployeesTableAdapter();
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Data::Odbc::OdbcDataAdapter^  Adapter {
              System::Data::Odbc::OdbcDataAdapter^  get();
          }
          
          internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Data::Odbc::OdbcConnection^  Connection {
              System::Data::Odbc::OdbcConnection^  get();
              System::Void set(System::Data::Odbc::OdbcConnection^  value);
          }
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property cli::array< System::Data::Odbc::OdbcCommand^  >^  CommandCollection {
              cli::array< System::Data::Odbc::OdbcCommand^  >^  get();
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Boolean ClearBeforeFill {
              System::Boolean get();
              System::Void set(System::Boolean value);
          }
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitAdapter();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitConnection();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitCommandCollection();
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Fill, true)]
          virtual System::Int32 Fill(Ex22_05::DataSet1::EmployeesDataTable^  dataTable);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Select, true)]
          virtual Ex22_05::DataSet1::EmployeesDataTable^  GetData();
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(Ex22_05::DataSet1::EmployeesDataTable^  dataTable);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(Ex22_05::DataSet1^  dataSet);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(System::Data::DataRow^  dataRow);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(cli::array< System::Data::DataRow^  >^  dataRows);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Delete, true)]
          virtual System::Int32 Delete(
                      System::Int32 Original_EmployeeID, 
                      System::String^  Original_LastName, 
                      System::String^  Original_FirstName, 
                      System::String^  Original_Title, 
                      System::String^  Original_TitleOfCourtesy, 
                      System::Nullable Original_BirthDate, 
                      System::Nullable Original_HireDate, 
                      System::String^  Original_Address, 
                      System::String^  Original_City, 
                      System::String^  Original_Region, 
                      System::String^  Original_PostalCode, 
                      System::String^  Original_Country, 
                      System::String^  Original_HomePhone, 
                      System::String^  Original_Extension, 
                      System::String^  Original_Photo, 
                      System::Nullable Original_ReportsTo);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Insert, true)]
          virtual System::Int32 Insert(
                      System::String^  LastName, 
                      System::String^  FirstName, 
                      System::String^  Title, 
                      System::String^  TitleOfCourtesy, 
                      System::Nullable BirthDate, 
                      System::Nullable HireDate, 
                      System::String^  Address, 
                      System::String^  City, 
                      System::String^  Region, 
                      System::String^  PostalCode, 
                      System::String^  Country, 
                      System::String^  HomePhone, 
                      System::String^  Extension, 
                      System::String^  Photo, 
                      System::String^  Notes, 
                      System::Nullable ReportsTo);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Update, true)]
          virtual System::Int32 Update(
                      System::String^  LastName, 
                      System::String^  FirstName, 
                      System::String^  Title, 
                      System::String^  TitleOfCourtesy, 
                      System::Nullable BirthDate, 
                      System::Nullable HireDate, 
                      System::String^  Address, 
                      System::String^  City, 
                      System::String^  Region, 
                      System::String^  PostalCode, 
                      System::String^  Country, 
                      System::String^  HomePhone, 
                      System::String^  Extension, 
                      System::String^  Photo, 
                      System::String^  Notes, 
                      System::Nullable ReportsTo, 
                      System::Int32 Original_EmployeeID, 
                      System::String^  Original_LastName, 
                      System::String^  Original_FirstName, 
                      System::String^  Original_Title, 
                      System::String^  Original_TitleOfCourtesy, 
                      System::Nullable Original_BirthDate, 
                      System::Nullable Original_HireDate, 
                      System::String^  Original_Address, 
                      System::String^  Original_City, 
                      System::String^  Original_Region, 
                      System::String^  Original_PostalCode, 
                      System::String^  Original_Country, 
                      System::String^  Original_HomePhone, 
                      System::String^  Original_Extension, 
                      System::String^  Original_Photo, 
                      System::Nullable Original_ReportsTo);
      };


      
      [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"2.0.0.0"), 
      System::ComponentModel::DesignerCategoryAttribute(L"code"), 
      System::ComponentModel::ToolboxItem(true), 
      System::ComponentModel::DataObjectAttribute(true), 
      System::ComponentModel::DesignerAttribute(L"Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" 
  L", Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"), 
      System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
      public ref

ProductsTableAdapter</h4>
   class ProductsTableAdapter : public System::ComponentModel::Component {
          
          private: System::Data::Odbc::OdbcDataAdapter^  _adapter;
          
          private: System::Data::Odbc::OdbcConnection^  _connection;
          
          private: cli::array< System::Data::Odbc::OdbcCommand^  >^  _commandCollection;
          
          private: System::Boolean _clearBeforeFill;
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          ProductsTableAdapter();
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Data::Odbc::OdbcDataAdapter^  Adapter {
              System::Data::Odbc::OdbcDataAdapter^  get();
          }
          
          internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Data::Odbc::OdbcConnection^  Connection {
              System::Data::Odbc::OdbcConnection^  get();
              System::Void set(System::Data::Odbc::OdbcConnection^  value);
          }
          
          protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property cli::array< System::Data::Odbc::OdbcCommand^  >^  CommandCollection {
              cli::array< System::Data::Odbc::OdbcCommand^  >^  get();
          }
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
           property System::Boolean ClearBeforeFill {
              System::Boolean get();
              System::Void set(System::Boolean value);
          }
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitAdapter();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitConnection();
          
          private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          System::Void InitCommandCollection();
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Fill, true)]
          virtual System::Int32 Fill(Ex22_05::DataSet1::ProductsDataTable^  dataTable);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Select, true)]
          virtual Ex22_05::DataSet1::ProductsDataTable^  GetData();
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(Ex22_05::DataSet1::ProductsDataTable^  dataTable);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(Ex22_05::DataSet1^  dataSet);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(System::Data::DataRow^  dataRow);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          virtual System::Int32 Update(cli::array< System::Data::DataRow^  >^  dataRows);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Delete, true)]
          virtual System::Int32 Delete(
                      System::Int32 Original_ProductID, 
                      System::String^  Original_ProductName, 
                      System::Nullable Original_SupplierID, 
                      System::Nullable Original_CategoryID, 
                      System::String^  Original_QuantityPerUnit, 
                      System::Nullable Original_UnitPrice, 
                      System::Nullable Original_UnitsInStock, 
                      System::Nullable Original_UnitsOnOrder, 
                      System::Nullable Original_ReorderLevel, 
                      System::Boolean Original_Discontinued);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Insert, true)]
          virtual System::Int32 Insert(
                      System::String^  ProductName, 
                      System::Nullable SupplierID, 
                      System::Nullable CategoryID, 
                      System::String^  QuantityPerUnit, 
                      System::Nullable UnitPrice, 
                      System::Nullable UnitsInStock, 
                      System::Nullable UnitsOnOrder, 
                      System::Nullable ReorderLevel, 
                      System::Boolean Discontinued);
          
          public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
          [System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.TableAdapter")]
          [System::ComponentModel::DataObjectMethodAttribute(System::ComponentModel::DataObjectMethodType::Update, true)]
          virtual System::Int32 Update(
                      System::String^  ProductName, 
                      System::Nullable SupplierID, 
                      System::Nullable CategoryID, 
                      System::String^  QuantityPerUnit, 
                      System::Nullable UnitPrice, 
                      System::Nullable UnitsInStock, 
                      System::Nullable UnitsOnOrder, 
                      System::Nullable ReorderLevel, 
                      System::Boolean Discontinued, 
                      System::Int32 Original_ProductID, 
                      System::String^  Original_ProductName, 
                      System::Nullable Original_SupplierID, 
                      System::Nullable Original_CategoryID, 
                      System::String^  Original_QuantityPerUnit, 
                      System::Nullable Original_UnitPrice, 
                      System::Nullable Original_UnitsInStock, 
                      System::Nullable Original_UnitsOnOrder, 
                      System::Nullable Original_ReorderLevel, 
                      System::Boolean Original_Discontinued);
      };


      }
  }
  namespace Ex22_05 {
      namespace DataSet1TableAdapters {
      
      
      inline CustomersTableAdapter::CustomersTableAdapter() {
          this->ClearBeforeFill = true;
      }
      
      inline System::Data::Odbc::OdbcDataAdapter^  CustomersTableAdapter::Adapter::get() {
          if (this->_adapter == nullptr) {
              this->InitAdapter();
          }
          return this->_adapter;
      }
      
      inline System::Data::Odbc::OdbcConnection^  CustomersTableAdapter::Connection::get() {
          if (this->_connection == nullptr) {
              this->InitConnection();
          }
          return this->_connection;
      }
      inline System::Void CustomersTableAdapter::Connection::set(System::Data::Odbc::OdbcConnection^  value) {
          this->_connection = __identifier(value);
          if (this->Adapter->InsertCommand != nullptr) {
              this->Adapter->InsertCommand->Connection = __identifier(value);
          }
          if (this->Adapter->DeleteCommand != nullptr) {
              this->Adapter->DeleteCommand->Connection = __identifier(value);
          }
          if (this->Adapter->UpdateCommand != nullptr) {
              this->Adapter->UpdateCommand->Connection = __identifier(value);
          }
          for (        System::Int32 i = 0; (i < this->CommandCollection->Length);         i = (i + 1)) {
              if (this->CommandCollection[i] != nullptr) {
                  (cli::safe_cast(this->CommandCollection[i]))->Connection = __identifier(value);
              }
          }
      }
      
      inline cli::array< System::Data::Odbc::OdbcCommand^  >^  CustomersTableAdapter::CommandCollection::get() {
          if (this->_commandCollection == nullptr) {
              this->InitCommandCollection();
          }
          return this->_commandCollection;
      }
      
      inline System::Boolean CustomersTableAdapter::ClearBeforeFill::get() {
          return this->_clearBeforeFill;
      }
      inline System::Void CustomersTableAdapter::ClearBeforeFill::set(System::Boolean value) {
          this->_clearBeforeFill = __identifier(value);
      }
      
      inline System::Void CustomersTableAdapter::InitAdapter() {
          this->_adapter = (gcnew System::Data::Odbc::OdbcDataAdapter());
          System::Data::Common::DataTableMapping^  tableMapping = (gcnew System::Data::Common::DataTableMapping());
          tableMapping->SourceTable = L"Table";
          tableMapping->DataSetTable = L"Customers";
          tableMapping->ColumnMappings->Add(L"CustomerID", L"CustomerID");
          tableMapping->ColumnMappings->Add(L"CompanyName", L"CompanyName");
          tableMapping->ColumnMappings->Add(L"ContactName", L"ContactName");
          tableMapping->ColumnMappings->Add(L"ContactTitle", L"ContactTitle");
          tableMapping->ColumnMappings->Add(L"Address", L"Address");
          tableMapping->ColumnMappings->Add(L"City", L"City");
          tableMapping->ColumnMappings->Add(L"Region", L"Region");
          tableMapping->ColumnMappings->Add(L"PostalCode", L"PostalCode");
          tableMapping->ColumnMappings->Add(L"Country", L"Country");
          tableMapping->ColumnMappings->Add(L"Phone", L"Phone");
          tableMapping->ColumnMappings->Add(L"Fax", L"Fax");
          this->_adapter->TableMappings->Add(tableMapping);
          this->_adapter->DeleteCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->DeleteCommand->Connection = this->Connection;
          this->_adapter->DeleteCommand->CommandText = L"DELETE FROM [Customers] WHERE (([CustomerID] = \?) AND ((\? = 1 AND [CompanyName] I" 
  L"S NULL) OR ([CompanyName] = \?)) AND ((\? = 1 AND [ContactName] IS NULL) OR ([Cont" 
  L"actName] = \?)) AND ((\? = 1 AND [ContactTitle] IS NULL) OR ([ContactTitle] = \?)) " 
  L"AND ((\? = 1 AND [Address] IS NULL) OR ([Address] = \?)) AND ((\? = 1 AND [City] IS" 
  L" NULL) OR ([City] = \?)) AND ((\? = 1 AND [Region] IS NULL) OR ([Region] = \?)) AND" 
  L" ((\? = 1 AND [PostalCode] IS NULL) OR ([PostalCode] = \?)) AND ((\? = 1 AND [Count" 
  L"ry] IS NULL) OR ([Country] = \?)) AND ((\? = 1 AND [Phone] IS NULL) OR ([Phone] = " 
  L"\?)) AND ((\? = 1 AND [Fax] IS NULL) OR ([Fax] = \?)))";
          this->_adapter->DeleteCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_CustomerID", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CustomerID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_CompanyName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CompanyName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_CompanyName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CompanyName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ContactName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ContactName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ContactTitle", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactTitle", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ContactTitle", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactTitle", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Address", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_City", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Region", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_PostalCode", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Country", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Phone", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Phone", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Phone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Phone", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Fax", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Fax", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Fax", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Fax", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->InsertCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->InsertCommand->Connection = this->Connection;
          this->_adapter->InsertCommand->CommandText = L"INSERT INTO [Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitl" 
  L"e], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES" 
  L" (\?, \?, \?, \?, \?, \?, \?, \?, \?, \?, \?)";
          this->_adapter->InsertCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"CustomerID", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CustomerID", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"CompanyName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CompanyName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ContactName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ContactTitle", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactTitle", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Phone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Phone", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Fax", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Fax", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->UpdateCommand->Connection = this->Connection;
          this->_adapter->UpdateCommand->CommandText = L"UPDATE [Customers] SET [CustomerID] = \?, [CompanyName] = \?, [ContactName] = \?, [C" 
  L"ontactTitle] = \?, [Address] = \?, [City] = \?, [Region] = \?, [PostalCode] = \?, [Co" 
  L"untry] = \?, [Phone] = \?, [Fax] = \? WHERE (([CustomerID] = \?) AND ((\? = 1 AND [Co" 
  L"mpanyName] IS NULL) OR ([CompanyName] = \?)) AND ((\? = 1 AND [ContactName] IS NUL" 
  L"L) OR ([ContactName] = \?)) AND ((\? = 1 AND [ContactTitle] IS NULL) OR ([ContactT" 
  L"itle] = \?)) AND ((\? = 1 AND [Address] IS NULL) OR ([Address] = \?)) AND ((\? = 1 A" 
  L"ND [City] IS NULL) OR ([City] = \?)) AND ((\? = 1 AND [Region] IS NULL) OR ([Regio" 
  L"n] = \?)) AND ((\? = 1 AND [PostalCode] IS NULL) OR ([PostalCode] = \?)) AND ((\? = " 
  L"1 AND [Country] IS NULL) OR ([Country] = \?)) AND ((\? = 1 AND [Phone] IS NULL) OR" 
  L" ([Phone] = \?)) AND ((\? = 1 AND [Fax] IS NULL) OR ([Fax] = \?)))";
          this->_adapter->UpdateCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"CustomerID", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CustomerID", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"CompanyName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CompanyName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ContactName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ContactTitle", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactTitle", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Phone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Phone", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Fax", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Fax", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_CustomerID", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CustomerID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_CompanyName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CompanyName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_CompanyName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CompanyName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ContactName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ContactName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ContactTitle", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactTitle", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ContactTitle", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ContactTitle", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Address", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_City", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Region", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_PostalCode", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Country", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Phone", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Phone", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Phone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Phone", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Fax", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Fax", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Fax", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Fax", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
      }
      
      inline System::Void CustomersTableAdapter::InitConnection() {
          this->_connection = (gcnew System::Data::Odbc::OdbcConnection());
          this->_connection->ConnectionString = L"Dsn=Northwind;dbq=D:\\Beginning Visual C++ 2005\\Model Access DB\\Northwind.mdb;driv" 
  L"erid=25;fil=MS Access;maxbuffersize=2048;pagetimeout=5";
      }
      
      inline System::Void CustomersTableAdapter::InitCommandCollection() {
          this->_commandCollection = gcnew cli::array< System::Data::Odbc::OdbcCommand^  >(1);
          this->_commandCollection[0] = (gcnew System::Data::Odbc::OdbcCommand());
          this->_commandCollection[0]->Connection = this->Connection;
          this->_commandCollection[0]->CommandText = L"SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region," 
  L" PostalCode, Country, Phone, Fax FROM Customers";
          this->_commandCollection[0]->CommandType = System::Data::CommandType::Text;
      }
      
      inline System::Int32 CustomersTableAdapter::Fill(Ex22_05::DataSet1::CustomersDataTable^  dataTable) {
          this->Adapter->SelectCommand = this->CommandCollection[0];
          if (this->ClearBeforeFill == true) {
              dataTable->Clear();
          }
          System::Int32 returnValue = this->Adapter->Fill(dataTable);
          return returnValue;
      }
      
      inline Ex22_05::DataSet1::CustomersDataTable^  CustomersTableAdapter::GetData() {
          this->Adapter->SelectCommand = this->CommandCollection[0];
          Ex22_05::DataSet1::CustomersDataTable^  dataTable = (gcnew Ex22_05::DataSet1::CustomersDataTable());
          this->Adapter->Fill(dataTable);
          return dataTable;
      }
      
      inline System::Int32 CustomersTableAdapter::Update(Ex22_05::DataSet1::CustomersDataTable^  dataTable) {
          return this->Adapter->Update(dataTable);
      }
      
      inline System::Int32 CustomersTableAdapter::Update(Ex22_05::DataSet1^  dataSet) {
          return this->Adapter->Update(dataSet, L"Customers");
      }
      
      inline System::Int32 CustomersTableAdapter::Update(System::Data::DataRow^  dataRow) {
          return this->Adapter->Update(gcnew cli::array< System::Data::DataRow^  >(1) {dataRow});
      }
      
      inline System::Int32 CustomersTableAdapter::Update(cli::array< System::Data::DataRow^  >^  dataRows) {
          return this->Adapter->Update(dataRows);
      }
      
      inline System::Int32 CustomersTableAdapter::Delete(
                  System::String^  Original_CustomerID, 
                  System::String^  Original_CompanyName, 
                  System::String^  Original_ContactName, 
                  System::String^  Original_ContactTitle, 
                  System::String^  Original_Address, 
                  System::String^  Original_City, 
                  System::String^  Original_Region, 
                  System::String^  Original_PostalCode, 
                  System::String^  Original_Country, 
                  System::String^  Original_Phone, 
                  System::String^  Original_Fax) {
          if (Original_CustomerID == nullptr) {
              this->Adapter->DeleteCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[0]->Value = (cli::safe_cast(Original_CustomerID));
          }
          if (Original_CompanyName == nullptr) {
              this->Adapter->DeleteCommand->Parameters[1]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[1]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[2]->Value = (cli::safe_cast(Original_CompanyName));
          }
          if (Original_ContactName == nullptr) {
              this->Adapter->DeleteCommand->Parameters[3]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[3]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[4]->Value = (cli::safe_cast(Original_ContactName));
          }
          if (Original_ContactTitle == nullptr) {
              this->Adapter->DeleteCommand->Parameters[5]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[5]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[6]->Value = (cli::safe_cast(Original_ContactTitle));
          }
          if (Original_Address == nullptr) {
              this->Adapter->DeleteCommand->Parameters[7]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[7]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[8]->Value = (cli::safe_cast(Original_Address));
          }
          if (Original_City == nullptr) {
              this->Adapter->DeleteCommand->Parameters[9]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[9]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[10]->Value = (cli::safe_cast(Original_City));
          }
          if (Original_Region == nullptr) {
              this->Adapter->DeleteCommand->Parameters[11]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[12]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[11]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[12]->Value = (cli::safe_cast(Original_Region));
          }
          if (Original_PostalCode == nullptr) {
              this->Adapter->DeleteCommand->Parameters[13]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[14]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[13]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[14]->Value = (cli::safe_cast(Original_PostalCode));
          }
          if (Original_Country == nullptr) {
              this->Adapter->DeleteCommand->Parameters[15]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[16]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[15]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[16]->Value = (cli::safe_cast(Original_Country));
          }
          if (Original_Phone == nullptr) {
              this->Adapter->DeleteCommand->Parameters[17]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[18]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[17]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[18]->Value = (cli::safe_cast(Original_Phone));
          }
          if (Original_Fax == nullptr) {
              this->Adapter->DeleteCommand->Parameters[19]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[20]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[19]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[20]->Value = (cli::safe_cast(Original_Fax));
          }
          System::Data::ConnectionState previousConnectionState = this->Adapter->DeleteCommand->Connection->State;
          if ((this->Adapter->DeleteCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->DeleteCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->DeleteCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->DeleteCommand->Connection->Close();
              }
          }
      }
      
      inline System::Int32 CustomersTableAdapter::Insert(
                  System::String^  CustomerID, 
                  System::String^  CompanyName, 
                  System::String^  ContactName, 
                  System::String^  ContactTitle, 
                  System::String^  Address, 
                  System::String^  City, 
                  System::String^  Region, 
                  System::String^  PostalCode, 
                  System::String^  Country, 
                  System::String^  Phone, 
                  System::String^  Fax) {
          if (CustomerID == nullptr) {
              this->Adapter->InsertCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[0]->Value = (cli::safe_cast(CustomerID));
          }
          if (CompanyName == nullptr) {
              this->Adapter->InsertCommand->Parameters[1]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[1]->Value = (cli::safe_cast(CompanyName));
          }
          if (ContactName == nullptr) {
              this->Adapter->InsertCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[2]->Value = (cli::safe_cast(ContactName));
          }
          if (ContactTitle == nullptr) {
              this->Adapter->InsertCommand->Parameters[3]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[3]->Value = (cli::safe_cast(ContactTitle));
          }
          if (Address == nullptr) {
              this->Adapter->InsertCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[4]->Value = (cli::safe_cast(Address));
          }
          if (City == nullptr) {
              this->Adapter->InsertCommand->Parameters[5]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[5]->Value = (cli::safe_cast(City));
          }
          if (Region == nullptr) {
              this->Adapter->InsertCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[6]->Value = (cli::safe_cast(Region));
          }
          if (PostalCode == nullptr) {
              this->Adapter->InsertCommand->Parameters[7]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[7]->Value = (cli::safe_cast(PostalCode));
          }
          if (Country == nullptr) {
              this->Adapter->InsertCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[8]->Value = (cli::safe_cast(Country));
          }
          if (Phone == nullptr) {
              this->Adapter->InsertCommand->Parameters[9]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[9]->Value = (cli::safe_cast(Phone));
          }
          if (Fax == nullptr) {
              this->Adapter->InsertCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[10]->Value = (cli::safe_cast(Fax));
          }
          System::Data::ConnectionState previousConnectionState = this->Adapter->InsertCommand->Connection->State;
          if ((this->Adapter->InsertCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->InsertCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->InsertCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->InsertCommand->Connection->Close();
              }
          }
      }
      
      inline System::Int32 CustomersTableAdapter::Update(
                  System::String^  CustomerID, 
                  System::String^  CompanyName, 
                  System::String^  ContactName, 
                  System::String^  ContactTitle, 
                  System::String^  Address, 
                  System::String^  City, 
                  System::String^  Region, 
                  System::String^  PostalCode, 
                  System::String^  Country, 
                  System::String^  Phone, 
                  System::String^  Fax, 
                  System::String^  Original_CustomerID, 
                  System::String^  Original_CompanyName, 
                  System::String^  Original_ContactName, 
                  System::String^  Original_ContactTitle, 
                  System::String^  Original_Address, 
                  System::String^  Original_City, 
                  System::String^  Original_Region, 
                  System::String^  Original_PostalCode, 
                  System::String^  Original_Country, 
                  System::String^  Original_Phone, 
                  System::String^  Original_Fax) {
          if (CustomerID == nullptr) {
              this->Adapter->UpdateCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[0]->Value = (cli::safe_cast(CustomerID));
          }
          if (CompanyName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[1]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[1]->Value = (cli::safe_cast(CompanyName));
          }
          if (ContactName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[2]->Value = (cli::safe_cast(ContactName));
          }
          if (ContactTitle == nullptr) {
              this->Adapter->UpdateCommand->Parameters[3]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[3]->Value = (cli::safe_cast(ContactTitle));
          }
          if (Address == nullptr) {
              this->Adapter->UpdateCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[4]->Value = (cli::safe_cast(Address));
          }
          if (City == nullptr) {
              this->Adapter->UpdateCommand->Parameters[5]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[5]->Value = (cli::safe_cast(City));
          }
          if (Region == nullptr) {
              this->Adapter->UpdateCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[6]->Value = (cli::safe_cast(Region));
          }
          if (PostalCode == nullptr) {
              this->Adapter->UpdateCommand->Parameters[7]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[7]->Value = (cli::safe_cast(PostalCode));
          }
          if (Country == nullptr) {
              this->Adapter->UpdateCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[8]->Value = (cli::safe_cast(Country));
          }
          if (Phone == nullptr) {
              this->Adapter->UpdateCommand->Parameters[9]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[9]->Value = (cli::safe_cast(Phone));
          }
          if (Fax == nullptr) {
              this->Adapter->UpdateCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[10]->Value = (cli::safe_cast(Fax));
          }
          if (Original_CustomerID == nullptr) {
              this->Adapter->UpdateCommand->Parameters[11]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[11]->Value = (cli::safe_cast(Original_CustomerID));
          }
          if (Original_CompanyName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[12]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[13]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[12]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[13]->Value = (cli::safe_cast(Original_CompanyName));
          }
          if (Original_ContactName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[14]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[15]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[14]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[15]->Value = (cli::safe_cast(Original_ContactName));
          }
          if (Original_ContactTitle == nullptr) {
              this->Adapter->UpdateCommand->Parameters[16]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[17]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[16]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[17]->Value = (cli::safe_cast(Original_ContactTitle));
          }
          if (Original_Address == nullptr) {
              this->Adapter->UpdateCommand->Parameters[18]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[19]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[18]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[19]->Value = (cli::safe_cast(Original_Address));
          }
          if (Original_City == nullptr) {
              this->Adapter->UpdateCommand->Parameters[20]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[21]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[20]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[21]->Value = (cli::safe_cast(Original_City));
          }
          if (Original_Region == nullptr) {
              this->Adapter->UpdateCommand->Parameters[22]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[23]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[22]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[23]->Value = (cli::safe_cast(Original_Region));
          }
          if (Original_PostalCode == nullptr) {
              this->Adapter->UpdateCommand->Parameters[24]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[25]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[24]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[25]->Value = (cli::safe_cast(Original_PostalCode));
          }
          if (Original_Country == nullptr) {
              this->Adapter->UpdateCommand->Parameters[26]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[27]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[26]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[27]->Value = (cli::safe_cast(Original_Country));
          }
          if (Original_Phone == nullptr) {
              this->Adapter->UpdateCommand->Parameters[28]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[29]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[28]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[29]->Value = (cli::safe_cast(Original_Phone));
          }
          if (Original_Fax == nullptr) {
              this->Adapter->UpdateCommand->Parameters[30]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[31]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[30]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[31]->Value = (cli::safe_cast(Original_Fax));
          }
          System::Data::ConnectionState previousConnectionState = this->Adapter->UpdateCommand->Connection->State;
          if ((this->Adapter->UpdateCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->UpdateCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->UpdateCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->UpdateCommand->Connection->Close();
              }
          }
      }
      
      
      inline EmployeesTableAdapter::EmployeesTableAdapter() {
          this->ClearBeforeFill = true;
      }
      
      inline System::Data::Odbc::OdbcDataAdapter^  EmployeesTableAdapter::Adapter::get() {
          if (this->_adapter == nullptr) {
              this->InitAdapter();
          }
          return this->_adapter;
      }
      
      inline System::Data::Odbc::OdbcConnection^  EmployeesTableAdapter::Connection::get() {
          if (this->_connection == nullptr) {
              this->InitConnection();
          }
          return this->_connection;
      }
      inline System::Void EmployeesTableAdapter::Connection::set(System::Data::Odbc::OdbcConnection^  value) {
          this->_connection = __identifier(value);
          if (this->Adapter->InsertCommand != nullptr) {
              this->Adapter->InsertCommand->Connection = __identifier(value);
          }
          if (this->Adapter->DeleteCommand != nullptr) {
              this->Adapter->DeleteCommand->Connection = __identifier(value);
          }
          if (this->Adapter->UpdateCommand != nullptr) {
              this->Adapter->UpdateCommand->Connection = __identifier(value);
          }
          for (        System::Int32 i = 0; (i < this->CommandCollection->Length);         i = (i + 1)) {
              if (this->CommandCollection[i] != nullptr) {
                  (cli::safe_cast(this->CommandCollection[i]))->Connection = __identifier(value);
              }
          }
      }
      
      inline cli::array< System::Data::Odbc::OdbcCommand^  >^  EmployeesTableAdapter::CommandCollection::get() {
          if (this->_commandCollection == nullptr) {
              this->InitCommandCollection();
          }
          return this->_commandCollection;
      }
      
      inline System::Boolean EmployeesTableAdapter::ClearBeforeFill::get() {
          return this->_clearBeforeFill;
      }
      inline System::Void EmployeesTableAdapter::ClearBeforeFill::set(System::Boolean value) {
          this->_clearBeforeFill = __identifier(value);
      }
      
      inline System::Void EmployeesTableAdapter::InitAdapter() {
          this->_adapter = (gcnew System::Data::Odbc::OdbcDataAdapter());
          System::Data::Common::DataTableMapping^  tableMapping = (gcnew System::Data::Common::DataTableMapping());
          tableMapping->SourceTable = L"Table";
          tableMapping->DataSetTable = L"Employees";
          tableMapping->ColumnMappings->Add(L"EmployeeID", L"EmployeeID");
          tableMapping->ColumnMappings->Add(L"LastName", L"LastName");
          tableMapping->ColumnMappings->Add(L"FirstName", L"FirstName");
          tableMapping->ColumnMappings->Add(L"Title", L"Title");
          tableMapping->ColumnMappings->Add(L"TitleOfCourtesy", L"TitleOfCourtesy");
          tableMapping->ColumnMappings->Add(L"BirthDate", L"BirthDate");
          tableMapping->ColumnMappings->Add(L"HireDate", L"HireDate");
          tableMapping->ColumnMappings->Add(L"Address", L"Address");
          tableMapping->ColumnMappings->Add(L"City", L"City");
          tableMapping->ColumnMappings->Add(L"Region", L"Region");
          tableMapping->ColumnMappings->Add(L"PostalCode", L"PostalCode");
          tableMapping->ColumnMappings->Add(L"Country", L"Country");
          tableMapping->ColumnMappings->Add(L"HomePhone", L"HomePhone");
          tableMapping->ColumnMappings->Add(L"Extension", L"Extension");
          tableMapping->ColumnMappings->Add(L"Photo", L"Photo");
          tableMapping->ColumnMappings->Add(L"Notes", L"Notes");
          tableMapping->ColumnMappings->Add(L"ReportsTo", L"ReportsTo");
          this->_adapter->TableMappings->Add(tableMapping);
          this->_adapter->DeleteCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->DeleteCommand->Connection = this->Connection;
          this->_adapter->DeleteCommand->CommandText = L"DELETE FROM [Employees] WHERE (([EmployeeID] = \?) AND ((\? = 1 AND [LastName] IS N" 
  L"ULL) OR ([LastName] = \?)) AND ((\? = 1 AND [FirstName] IS NULL) OR ([FirstName] =" 
  L" \?)) AND ((\? = 1 AND [Title] IS NULL) OR ([Title] = \?)) AND ((\? = 1 AND [TitleOf" 
  L"Courtesy] IS NULL) OR ([TitleOfCourtesy] = \?)) AND ((\? = 1 AND [BirthDate] IS NU" 
  L"LL) OR ([BirthDate] = \?)) AND ((\? = 1 AND [HireDate] IS NULL) OR ([HireDate] = \?" 
  L")) AND ((\? = 1 AND [Address] IS NULL) OR ([Address] = \?)) AND ((\? = 1 AND [City]" 
  L" IS NULL) OR ([City] = \?)) AND ((\? = 1 AND [Region] IS NULL) OR ([Region] = \?)) " 
  L"AND ((\? = 1 AND [PostalCode] IS NULL) OR ([PostalCode] = \?)) AND ((\? = 1 AND [Co" 
  L"untry] IS NULL) OR ([Country] = \?)) AND ((\? = 1 AND [HomePhone] IS NULL) OR ([Ho" 
  L"mePhone] = \?)) AND ((\? = 1 AND [Extension] IS NULL) OR ([Extension] = \?)) AND ((" 
  L"\? = 1 AND [Photo] IS NULL) OR ([Photo] = \?)) AND ((\? = 1 AND [ReportsTo] IS NULL" 
  L") OR ([ReportsTo] = \?)))";
          this->_adapter->DeleteCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_EmployeeID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"EmployeeID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_LastName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"LastName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_LastName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"LastName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_FirstName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"FirstName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_FirstName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"FirstName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Title", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Title", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Title", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Title", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_TitleOfCourtesy", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"TitleOfCourtesy", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_TitleOfCourtesy", 
                  System::Data::Odbc::OdbcType::NVarChar, 0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), 
                  L"TitleOfCourtesy", System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_BirthDate", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"BirthDate", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_BirthDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"BirthDate", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_HireDate", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HireDate", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_HireDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HireDate", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Address", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_City", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Region", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_PostalCode", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Country", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_HomePhone", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HomePhone", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_HomePhone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HomePhone", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Extension", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Extension", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Extension", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Extension", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Photo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Photo", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Photo", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Photo", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ReportsTo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReportsTo", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ReportsTo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReportsTo", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->InsertCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->InsertCommand->Connection = this->Connection;
          this->_adapter->InsertCommand->CommandText = L"INSERT INTO [Employees] ([LastName], [FirstName], [Title], [TitleOfCourtesy], [Bi" 
  L"rthDate], [HireDate], [Address], [City], [Region], [PostalCode], [Country], [Hom" 
  L"ePhone], [Extension], [Photo], [Notes], [ReportsTo]) VALUES (\?, \?, \?, \?, \?, \?, \?" 
  L", \?, \?, \?, \?, \?, \?, \?, \?, \?)";
          this->_adapter->InsertCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"LastName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"LastName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"FirstName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"FirstName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Title", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Title", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"TitleOfCourtesy", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"TitleOfCourtesy", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"BirthDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"BirthDate", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"HireDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HireDate", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"HomePhone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HomePhone", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Extension", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Extension", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Photo", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Photo", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Notes", System::Data::Odbc::OdbcType::NText, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Notes", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ReportsTo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReportsTo", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->UpdateCommand->Connection = this->Connection;
          this->_adapter->UpdateCommand->CommandText = L"UPDATE [Employees] SET [LastName] = \?, [FirstName] = \?, [Title] = \?, [TitleOfCour" 
  L"tesy] = \?, [BirthDate] = \?, [HireDate] = \?, [Address] = \?, [City] = \?, [Region] " 
  L"= \?, [PostalCode] = \?, [Country] = \?, [HomePhone] = \?, [Extension] = \?, [Photo] " 
  L"= \?, [Notes] = \?, [ReportsTo] = \? WHERE (([EmployeeID] = \?) AND ((\? = 1 AND [Las" 
  L"tName] IS NULL) OR ([LastName] = \?)) AND ((\? = 1 AND [FirstName] IS NULL) OR ([F" 
  L"irstName] = \?)) AND ((\? = 1 AND [Title] IS NULL) OR ([Title] = \?)) AND ((\? = 1 A" 
  L"ND [TitleOfCourtesy] IS NULL) OR ([TitleOfCourtesy] = \?)) AND ((\? = 1 AND [Birth" 
  L"Date] IS NULL) OR ([BirthDate] = \?)) AND ((\? = 1 AND [HireDate] IS NULL) OR ([Hi" 
  L"reDate] = \?)) AND ((\? = 1 AND [Address] IS NULL) OR ([Address] = \?)) AND ((\? = 1" 
  L" AND [City] IS NULL) OR ([City] = \?)) AND ((\? = 1 AND [Region] IS NULL) OR ([Reg" 
  L"ion] = \?)) AND ((\? = 1 AND [PostalCode] IS NULL) OR ([PostalCode] = \?)) AND ((\? " 
  L"= 1 AND [Country] IS NULL) OR ([Country] = \?)) AND ((\? = 1 AND [HomePhone] IS NU" 
  L"LL) OR ([HomePhone] = \?)) AND ((\? = 1 AND [Extension] IS NULL) OR ([Extension] =" 
  L" \?)) AND ((\? = 1 AND [Photo] IS NULL) OR ([Photo] = \?)) AND ((\? = 1 AND [Reports" 
  L"To] IS NULL) OR ([ReportsTo] = \?)))";
          this->_adapter->UpdateCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"LastName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"LastName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"FirstName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"FirstName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Title", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Title", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"TitleOfCourtesy", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"TitleOfCourtesy", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"BirthDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"BirthDate", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"HireDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HireDate", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"HomePhone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HomePhone", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Extension", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Extension", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Photo", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Photo", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Notes", System::Data::Odbc::OdbcType::NText, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Notes", System::Data::DataRowVersion::Current, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ReportsTo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReportsTo", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_EmployeeID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"EmployeeID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_LastName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"LastName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_LastName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"LastName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_FirstName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"FirstName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_FirstName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"FirstName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Title", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Title", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Title", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Title", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_TitleOfCourtesy", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"TitleOfCourtesy", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_TitleOfCourtesy", 
                  System::Data::Odbc::OdbcType::NVarChar, 0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), 
                  L"TitleOfCourtesy", System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_BirthDate", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"BirthDate", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_BirthDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"BirthDate", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_HireDate", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HireDate", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_HireDate", System::Data::Odbc::OdbcType::DateTime, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HireDate", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Address", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Address", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Address", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_City", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_City", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"City", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Region", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Region", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Region", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_PostalCode", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_PostalCode", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"PostalCode", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Country", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Country", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Country", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_HomePhone", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HomePhone", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_HomePhone", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"HomePhone", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Extension", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Extension", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Extension", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Extension", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_Photo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Photo", System::Data::DataRowVersion::Original, 
                  true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Photo", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Photo", System::Data::DataRowVersion::Original, 
                  false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ReportsTo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReportsTo", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ReportsTo", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReportsTo", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
      }
      
      inline System::Void EmployeesTableAdapter::InitConnection() {
          this->_connection = (gcnew System::Data::Odbc::OdbcConnection());
          this->_connection->ConnectionString = L"Dsn=Northwind;dbq=D:\\Beginning Visual C++ 2005\\Model Access DB\\Northwind.mdb;driv" 
  L"erid=25;fil=MS Access;maxbuffersize=2048;pagetimeout=5";
      }
      
      inline System::Void EmployeesTableAdapter::InitCommandCollection() {
          this->_commandCollection = gcnew cli::array< System::Data::Odbc::OdbcCommand^  >(1);
          this->_commandCollection[0] = (gcnew System::Data::Odbc::OdbcCommand());
          this->_commandCollection[0]->Connection = this->Connection;
          this->_commandCollection[0]->CommandText = L"SELECT EmployeeID, LastName, FirstName, Title, TitleOfCourtesy, BirthDate, HireDa" 
  L"te, Address, City, Region, PostalCode, Country, HomePhone, Extension, Photo, Not" 
  L"es, ReportsTo FROM Employees";
          this->_commandCollection[0]->CommandType = System::Data::CommandType::Text;
      }
      
      inline System::Int32 EmployeesTableAdapter::Fill(Ex22_05::DataSet1::EmployeesDataTable^  dataTable) {
          this->Adapter->SelectCommand = this->CommandCollection[0];
          if (this->ClearBeforeFill == true) {
              dataTable->Clear();
          }
          System::Int32 returnValue = this->Adapter->Fill(dataTable);
          return returnValue;
      }
      
      inline Ex22_05::DataSet1::EmployeesDataTable^  EmployeesTableAdapter::GetData() {
          this->Adapter->SelectCommand = this->CommandCollection[0];
          Ex22_05::DataSet1::EmployeesDataTable^  dataTable = (gcnew Ex22_05::DataSet1::EmployeesDataTable());
          this->Adapter->Fill(dataTable);
          return dataTable;
      }
      
      inline System::Int32 EmployeesTableAdapter::Update(Ex22_05::DataSet1::EmployeesDataTable^  dataTable) {
          return this->Adapter->Update(dataTable);
      }
      
      inline System::Int32 EmployeesTableAdapter::Update(Ex22_05::DataSet1^  dataSet) {
          return this->Adapter->Update(dataSet, L"Employees");
      }
      
      inline System::Int32 EmployeesTableAdapter::Update(System::Data::DataRow^  dataRow) {
          return this->Adapter->Update(gcnew cli::array< System::Data::DataRow^  >(1) {dataRow});
      }
      
      inline System::Int32 EmployeesTableAdapter::Update(cli::array< System::Data::DataRow^  >^  dataRows) {
          return this->Adapter->Update(dataRows);
      }
      
      inline System::Int32 EmployeesTableAdapter::Delete(
                  System::Int32 Original_EmployeeID, 
                  System::String^  Original_LastName, 
                  System::String^  Original_FirstName, 
                  System::String^  Original_Title, 
                  System::String^  Original_TitleOfCourtesy, 
                  System::Nullable Original_BirthDate, 
                  System::Nullable Original_HireDate, 
                  System::String^  Original_Address, 
                  System::String^  Original_City, 
                  System::String^  Original_Region, 
                  System::String^  Original_PostalCode, 
                  System::String^  Original_Country, 
                  System::String^  Original_HomePhone, 
                  System::String^  Original_Extension, 
                  System::String^  Original_Photo, 
                  System::Nullable Original_ReportsTo) {
          this->Adapter->DeleteCommand->Parameters[0]->Value = static_cast(Original_EmployeeID);
          if (Original_LastName == nullptr) {
              this->Adapter->DeleteCommand->Parameters[1]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[1]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[2]->Value = (cli::safe_cast(Original_LastName));
          }
          if (Original_FirstName == nullptr) {
              this->Adapter->DeleteCommand->Parameters[3]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[3]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[4]->Value = (cli::safe_cast(Original_FirstName));
          }
          if (Original_Title == nullptr) {
              this->Adapter->DeleteCommand->Parameters[5]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[5]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[6]->Value = (cli::safe_cast(Original_Title));
          }
          if (Original_TitleOfCourtesy == nullptr) {
              this->Adapter->DeleteCommand->Parameters[7]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[7]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[8]->Value = (cli::safe_cast(Original_TitleOfCourtesy));
          }
          if (Original_BirthDate.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[9]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[10]->Value = static_cast(Original_BirthDate.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[9]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          if (Original_HireDate.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[11]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[12]->Value = static_cast(Original_HireDate.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[11]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[12]->Value = System::DBNull::Value;
          }
          if (Original_Address == nullptr) {
              this->Adapter->DeleteCommand->Parameters[13]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[14]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[13]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[14]->Value = (cli::safe_cast(Original_Address));
          }
          if (Original_City == nullptr) {
              this->Adapter->DeleteCommand->Parameters[15]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[16]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[15]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[16]->Value = (cli::safe_cast(Original_City));
          }
          if (Original_Region == nullptr) {
              this->Adapter->DeleteCommand->Parameters[17]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[18]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[17]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[18]->Value = (cli::safe_cast(Original_Region));
          }
          if (Original_PostalCode == nullptr) {
              this->Adapter->DeleteCommand->Parameters[19]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[20]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[19]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[20]->Value = (cli::safe_cast(Original_PostalCode));
          }
          if (Original_Country == nullptr) {
              this->Adapter->DeleteCommand->Parameters[21]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[22]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[21]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[22]->Value = (cli::safe_cast(Original_Country));
          }
          if (Original_HomePhone == nullptr) {
              this->Adapter->DeleteCommand->Parameters[23]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[24]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[23]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[24]->Value = (cli::safe_cast(Original_HomePhone));
          }
          if (Original_Extension == nullptr) {
              this->Adapter->DeleteCommand->Parameters[25]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[26]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[25]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[26]->Value = (cli::safe_cast(Original_Extension));
          }
          if (Original_Photo == nullptr) {
              this->Adapter->DeleteCommand->Parameters[27]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[28]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[27]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[28]->Value = (cli::safe_cast(Original_Photo));
          }
          if (Original_ReportsTo.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[29]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[30]->Value = static_cast(Original_ReportsTo.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[29]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[30]->Value = System::DBNull::Value;
          }
          System::Data::ConnectionState previousConnectionState = this->Adapter->DeleteCommand->Connection->State;
          if ((this->Adapter->DeleteCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->DeleteCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->DeleteCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->DeleteCommand->Connection->Close();
              }
          }
      }
      
      inline System::Int32 EmployeesTableAdapter::Insert(
                  System::String^  LastName, 
                  System::String^  FirstName, 
                  System::String^  Title, 
                  System::String^  TitleOfCourtesy, 
                  System::Nullable BirthDate, 
                  System::Nullable HireDate, 
                  System::String^  Address, 
                  System::String^  City, 
                  System::String^  Region, 
                  System::String^  PostalCode, 
                  System::String^  Country, 
                  System::String^  HomePhone, 
                  System::String^  Extension, 
                  System::String^  Photo, 
                  System::String^  Notes, 
                  System::Nullable ReportsTo) {
          if (LastName == nullptr) {
              this->Adapter->InsertCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[0]->Value = (cli::safe_cast(LastName));
          }
          if (FirstName == nullptr) {
              this->Adapter->InsertCommand->Parameters[1]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[1]->Value = (cli::safe_cast(FirstName));
          }
          if (Title == nullptr) {
              this->Adapter->InsertCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[2]->Value = (cli::safe_cast(Title));
          }
          if (TitleOfCourtesy == nullptr) {
              this->Adapter->InsertCommand->Parameters[3]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[3]->Value = (cli::safe_cast(TitleOfCourtesy));
          }
          if (BirthDate.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[4]->Value = static_cast(BirthDate.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          if (HireDate.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[5]->Value = static_cast(HireDate.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[5]->Value = System::DBNull::Value;
          }
          if (Address == nullptr) {
              this->Adapter->InsertCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[6]->Value = (cli::safe_cast(Address));
          }
          if (City == nullptr) {
              this->Adapter->InsertCommand->Parameters[7]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[7]->Value = (cli::safe_cast(City));
          }
          if (Region == nullptr) {
              this->Adapter->InsertCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[8]->Value = (cli::safe_cast(Region));
          }
          if (PostalCode == nullptr) {
              this->Adapter->InsertCommand->Parameters[9]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[9]->Value = (cli::safe_cast(PostalCode));
          }
          if (Country == nullptr) {
              this->Adapter->InsertCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[10]->Value = (cli::safe_cast(Country));
          }
          if (HomePhone == nullptr) {
              this->Adapter->InsertCommand->Parameters[11]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[11]->Value = (cli::safe_cast(HomePhone));
          }
          if (Extension == nullptr) {
              this->Adapter->InsertCommand->Parameters[12]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[12]->Value = (cli::safe_cast(Extension));
          }
          if (Photo == nullptr) {
              this->Adapter->InsertCommand->Parameters[13]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[13]->Value = (cli::safe_cast(Photo));
          }
          if (Notes == nullptr) {
              this->Adapter->InsertCommand->Parameters[14]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[14]->Value = (cli::safe_cast(Notes));
          }
          if (ReportsTo.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[15]->Value = static_cast(ReportsTo.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[15]->Value = System::DBNull::Value;
          }
          System::Data::ConnectionState previousConnectionState = this->Adapter->InsertCommand->Connection->State;
          if ((this->Adapter->InsertCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->InsertCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->InsertCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->InsertCommand->Connection->Close();
              }
          }
      }
      
      inline System::Int32 EmployeesTableAdapter::Update(
                  System::String^  LastName, 
                  System::String^  FirstName, 
                  System::String^  Title, 
                  System::String^  TitleOfCourtesy, 
                  System::Nullable BirthDate, 
                  System::Nullable HireDate, 
                  System::String^  Address, 
                  System::String^  City, 
                  System::String^  Region, 
                  System::String^  PostalCode, 
                  System::String^  Country, 
                  System::String^  HomePhone, 
                  System::String^  Extension, 
                  System::String^  Photo, 
                  System::String^  Notes, 
                  System::Nullable ReportsTo, 
                  System::Int32 Original_EmployeeID, 
                  System::String^  Original_LastName, 
                  System::String^  Original_FirstName, 
                  System::String^  Original_Title, 
                  System::String^  Original_TitleOfCourtesy, 
                  System::Nullable Original_BirthDate, 
                  System::Nullable Original_HireDate, 
                  System::String^  Original_Address, 
                  System::String^  Original_City, 
                  System::String^  Original_Region, 
                  System::String^  Original_PostalCode, 
                  System::String^  Original_Country, 
                  System::String^  Original_HomePhone, 
                  System::String^  Original_Extension, 
                  System::String^  Original_Photo, 
                  System::Nullable Original_ReportsTo) {
          if (LastName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[0]->Value = (cli::safe_cast(LastName));
          }
          if (FirstName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[1]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[1]->Value = (cli::safe_cast(FirstName));
          }
          if (Title == nullptr) {
              this->Adapter->UpdateCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[2]->Value = (cli::safe_cast(Title));
          }
          if (TitleOfCourtesy == nullptr) {
              this->Adapter->UpdateCommand->Parameters[3]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[3]->Value = (cli::safe_cast(TitleOfCourtesy));
          }
          if (BirthDate.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[4]->Value = static_cast(BirthDate.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          if (HireDate.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[5]->Value = static_cast(HireDate.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[5]->Value = System::DBNull::Value;
          }
          if (Address == nullptr) {
              this->Adapter->UpdateCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[6]->Value = (cli::safe_cast(Address));
          }
          if (City == nullptr) {
              this->Adapter->UpdateCommand->Parameters[7]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[7]->Value = (cli::safe_cast(City));
          }
          if (Region == nullptr) {
              this->Adapter->UpdateCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[8]->Value = (cli::safe_cast(Region));
          }
          if (PostalCode == nullptr) {
              this->Adapter->UpdateCommand->Parameters[9]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[9]->Value = (cli::safe_cast(PostalCode));
          }
          if (Country == nullptr) {
              this->Adapter->UpdateCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[10]->Value = (cli::safe_cast(Country));
          }
          if (HomePhone == nullptr) {
              this->Adapter->UpdateCommand->Parameters[11]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[11]->Value = (cli::safe_cast(HomePhone));
          }
          if (Extension == nullptr) {
              this->Adapter->UpdateCommand->Parameters[12]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[12]->Value = (cli::safe_cast(Extension));
          }
          if (Photo == nullptr) {
              this->Adapter->UpdateCommand->Parameters[13]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[13]->Value = (cli::safe_cast(Photo));
          }
          if (Notes == nullptr) {
              this->Adapter->UpdateCommand->Parameters[14]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[14]->Value = (cli::safe_cast(Notes));
          }
          if (ReportsTo.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[15]->Value = static_cast(ReportsTo.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[15]->Value = System::DBNull::Value;
          }
          this->Adapter->UpdateCommand->Parameters[16]->Value = static_cast(Original_EmployeeID);
          if (Original_LastName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[17]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[18]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[17]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[18]->Value = (cli::safe_cast(Original_LastName));
          }
          if (Original_FirstName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[19]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[20]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[19]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[20]->Value = (cli::safe_cast(Original_FirstName));
          }
          if (Original_Title == nullptr) {
              this->Adapter->UpdateCommand->Parameters[21]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[22]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[21]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[22]->Value = (cli::safe_cast(Original_Title));
          }
          if (Original_TitleOfCourtesy == nullptr) {
              this->Adapter->UpdateCommand->Parameters[23]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[24]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[23]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[24]->Value = (cli::safe_cast(Original_TitleOfCourtesy));
          }
          if (Original_BirthDate.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[25]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[26]->Value = static_cast(Original_BirthDate.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[25]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[26]->Value = System::DBNull::Value;
          }
          if (Original_HireDate.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[27]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[28]->Value = static_cast(Original_HireDate.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[27]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[28]->Value = System::DBNull::Value;
          }
          if (Original_Address == nullptr) {
              this->Adapter->UpdateCommand->Parameters[29]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[30]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[29]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[30]->Value = (cli::safe_cast(Original_Address));
          }
          if (Original_City == nullptr) {
              this->Adapter->UpdateCommand->Parameters[31]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[32]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[31]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[32]->Value = (cli::safe_cast(Original_City));
          }
          if (Original_Region == nullptr) {
              this->Adapter->UpdateCommand->Parameters[33]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[34]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[33]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[34]->Value = (cli::safe_cast(Original_Region));
          }
          if (Original_PostalCode == nullptr) {
              this->Adapter->UpdateCommand->Parameters[35]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[36]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[35]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[36]->Value = (cli::safe_cast(Original_PostalCode));
          }
          if (Original_Country == nullptr) {
              this->Adapter->UpdateCommand->Parameters[37]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[38]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[37]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[38]->Value = (cli::safe_cast(Original_Country));
          }
          if (Original_HomePhone == nullptr) {
              this->Adapter->UpdateCommand->Parameters[39]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[40]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[39]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[40]->Value = (cli::safe_cast(Original_HomePhone));
          }
          if (Original_Extension == nullptr) {
              this->Adapter->UpdateCommand->Parameters[41]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[42]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[41]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[42]->Value = (cli::safe_cast(Original_Extension));
          }
          if (Original_Photo == nullptr) {
              this->Adapter->UpdateCommand->Parameters[43]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[44]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[43]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[44]->Value = (cli::safe_cast(Original_Photo));
          }
          if (Original_ReportsTo.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[45]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[46]->Value = static_cast(Original_ReportsTo.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[45]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[46]->Value = System::DBNull::Value;
          }
          System::Data::ConnectionState previousConnectionState = this->Adapter->UpdateCommand->Connection->State;
          if ((this->Adapter->UpdateCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->UpdateCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->UpdateCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->UpdateCommand->Connection->Close();
              }
          }
      }
      
      
      inline ProductsTableAdapter::ProductsTableAdapter() {
          this->ClearBeforeFill = true;
      }
      
      inline System::Data::Odbc::OdbcDataAdapter^  ProductsTableAdapter::Adapter::get() {
          if (this->_adapter == nullptr) {
              this->InitAdapter();
          }
          return this->_adapter;
      }
      
      inline System::Data::Odbc::OdbcConnection^  ProductsTableAdapter::Connection::get() {
          if (this->_connection == nullptr) {
              this->InitConnection();
          }
          return this->_connection;
      }
      inline System::Void ProductsTableAdapter::Connection::set(System::Data::Odbc::OdbcConnection^  value) {
          this->_connection = __identifier(value);
          if (this->Adapter->InsertCommand != nullptr) {
              this->Adapter->InsertCommand->Connection = __identifier(value);
          }
          if (this->Adapter->DeleteCommand != nullptr) {
              this->Adapter->DeleteCommand->Connection = __identifier(value);
          }
          if (this->Adapter->UpdateCommand != nullptr) {
              this->Adapter->UpdateCommand->Connection = __identifier(value);
          }
          for (        System::Int32 i = 0; (i < this->CommandCollection->Length);         i = (i + 1)) {
              if (this->CommandCollection[i] != nullptr) {
                  (cli::safe_cast(this->CommandCollection[i]))->Connection = __identifier(value);
              }
          }
      }
      
      inline cli::array< System::Data::Odbc::OdbcCommand^  >^  ProductsTableAdapter::CommandCollection::get() {
          if (this->_commandCollection == nullptr) {
              this->InitCommandCollection();
          }
          return this->_commandCollection;
      }
      
      inline System::Boolean ProductsTableAdapter::ClearBeforeFill::get() {
          return this->_clearBeforeFill;
      }
      inline System::Void ProductsTableAdapter::ClearBeforeFill::set(System::Boolean value) {
          this->_clearBeforeFill = __identifier(value);
      }
      
      inline System::Void ProductsTableAdapter::InitAdapter() {
          this->_adapter = (gcnew System::Data::Odbc::OdbcDataAdapter());
          System::Data::Common::DataTableMapping^  tableMapping = (gcnew System::Data::Common::DataTableMapping());
          tableMapping->SourceTable = L"Table";
          tableMapping->DataSetTable = L"Products";
          tableMapping->ColumnMappings->Add(L"ProductID", L"ProductID");
          tableMapping->ColumnMappings->Add(L"ProductName", L"ProductName");
          tableMapping->ColumnMappings->Add(L"SupplierID", L"SupplierID");
          tableMapping->ColumnMappings->Add(L"CategoryID", L"CategoryID");
          tableMapping->ColumnMappings->Add(L"QuantityPerUnit", L"QuantityPerUnit");
          tableMapping->ColumnMappings->Add(L"UnitPrice", L"UnitPrice");
          tableMapping->ColumnMappings->Add(L"UnitsInStock", L"UnitsInStock");
          tableMapping->ColumnMappings->Add(L"UnitsOnOrder", L"UnitsOnOrder");
          tableMapping->ColumnMappings->Add(L"ReorderLevel", L"ReorderLevel");
          tableMapping->ColumnMappings->Add(L"Discontinued", L"Discontinued");
          this->_adapter->TableMappings->Add(tableMapping);
          this->_adapter->DeleteCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->DeleteCommand->Connection = this->Connection;
          this->_adapter->DeleteCommand->CommandText = L"DELETE FROM [Products] WHERE (([ProductID] = \?) AND ((\? = 1 AND [ProductName] IS " 
  L"NULL) OR ([ProductName] = \?)) AND ((\? = 1 AND [SupplierID] IS NULL) OR ([Supplie" 
  L"rID] = \?)) AND ((\? = 1 AND [CategoryID] IS NULL) OR ([CategoryID] = \?)) AND ((\? " 
  L"= 1 AND [QuantityPerUnit] IS NULL) OR ([QuantityPerUnit] = \?)) AND ((\? = 1 AND [" 
  L"UnitPrice] IS NULL) OR ([UnitPrice] = \?)) AND ((\? = 1 AND [UnitsInStock] IS NULL" 
  L") OR ([UnitsInStock] = \?)) AND ((\? = 1 AND [UnitsOnOrder] IS NULL) OR ([UnitsOnO" 
  L"rder] = \?)) AND ((\? = 1 AND [ReorderLevel] IS NULL) OR ([ReorderLevel] = \?)) AND" 
  L" ([Discontinued] = \?))";
          this->_adapter->DeleteCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ProductID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ProductName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ProductName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_SupplierID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"SupplierID", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_SupplierID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"SupplierID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_CategoryID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CategoryID", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_CategoryID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CategoryID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_QuantityPerUnit", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"QuantityPerUnit", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_QuantityPerUnit", 
                  System::Data::Odbc::OdbcType::NVarChar, 0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), 
                  L"QuantityPerUnit", System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_UnitPrice", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitPrice", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_UnitPrice", System::Data::Odbc::OdbcType::Numeric, 
                  0, System::Data::ParameterDirection::Input, static_cast(19), static_cast(4), L"UnitPrice", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_UnitsInStock", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsInStock", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_UnitsInStock", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsInStock", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_UnitsOnOrder", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsOnOrder", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_UnitsOnOrder", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsOnOrder", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ReorderLevel", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReorderLevel", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ReorderLevel", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReorderLevel", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->DeleteCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Discontinued", System::Data::Odbc::OdbcType::Bit, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Discontinued", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->InsertCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->InsertCommand->Connection = this->Connection;
          this->_adapter->InsertCommand->CommandText = L"INSERT INTO [Products] ([ProductName], [SupplierID], [CategoryID], [QuantityPerUn" 
  L"it], [UnitPrice], [UnitsInStock], [UnitsOnOrder], [ReorderLevel], [Discontinued]" 
  L") VALUES (\?, \?, \?, \?, \?, \?, \?, \?, \?)";
          this->_adapter->InsertCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ProductName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"SupplierID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"SupplierID", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"CategoryID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CategoryID", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"QuantityPerUnit", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"QuantityPerUnit", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"UnitPrice", System::Data::Odbc::OdbcType::Numeric, 
                  0, System::Data::ParameterDirection::Input, static_cast(19), static_cast(4), L"UnitPrice", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"UnitsInStock", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsInStock", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"UnitsOnOrder", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsOnOrder", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ReorderLevel", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReorderLevel", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->InsertCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Discontinued", System::Data::Odbc::OdbcType::Bit, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Discontinued", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand = (gcnew System::Data::Odbc::OdbcCommand());
          this->_adapter->UpdateCommand->Connection = this->Connection;
          this->_adapter->UpdateCommand->CommandText = L"UPDATE [Products] SET [ProductName] = \?, [SupplierID] = \?, [CategoryID] = \?, [Qua" 
  L"ntityPerUnit] = \?, [UnitPrice] = \?, [UnitsInStock] = \?, [UnitsOnOrder] = \?, [Reo" 
  L"rderLevel] = \?, [Discontinued] = \? WHERE (([ProductID] = \?) AND ((\? = 1 AND [Pro" 
  L"ductName] IS NULL) OR ([ProductName] = \?)) AND ((\? = 1 AND [SupplierID] IS NULL)" 
  L" OR ([SupplierID] = \?)) AND ((\? = 1 AND [CategoryID] IS NULL) OR ([CategoryID] =" 
  L" \?)) AND ((\? = 1 AND [QuantityPerUnit] IS NULL) OR ([QuantityPerUnit] = \?)) AND " 
  L"((\? = 1 AND [UnitPrice] IS NULL) OR ([UnitPrice] = \?)) AND ((\? = 1 AND [UnitsInS" 
  L"tock] IS NULL) OR ([UnitsInStock] = \?)) AND ((\? = 1 AND [UnitsOnOrder] IS NULL) " 
  L"OR ([UnitsOnOrder] = \?)) AND ((\? = 1 AND [ReorderLevel] IS NULL) OR ([ReorderLev" 
  L"el] = \?)) AND ([Discontinued] = \?))";
          this->_adapter->UpdateCommand->CommandType = System::Data::CommandType::Text;
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ProductName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductName", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"SupplierID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"SupplierID", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"CategoryID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CategoryID", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"QuantityPerUnit", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"QuantityPerUnit", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"UnitPrice", System::Data::Odbc::OdbcType::Numeric, 
                  0, System::Data::ParameterDirection::Input, static_cast(19), static_cast(4), L"UnitPrice", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"UnitsInStock", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsInStock", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"UnitsOnOrder", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsOnOrder", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"ReorderLevel", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReorderLevel", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Discontinued", System::Data::Odbc::OdbcType::Bit, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Discontinued", 
                  System::Data::DataRowVersion::Current, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ProductID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ProductName", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductName", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ProductName", System::Data::Odbc::OdbcType::NVarChar, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ProductName", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_SupplierID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"SupplierID", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_SupplierID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"SupplierID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_CategoryID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CategoryID", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_CategoryID", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"CategoryID", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_QuantityPerUnit", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"QuantityPerUnit", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_QuantityPerUnit", 
                  System::Data::Odbc::OdbcType::NVarChar, 0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), 
                  L"QuantityPerUnit", System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_UnitPrice", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitPrice", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_UnitPrice", System::Data::Odbc::OdbcType::Numeric, 
                  0, System::Data::ParameterDirection::Input, static_cast(19), static_cast(4), L"UnitPrice", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_UnitsInStock", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsInStock", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_UnitsInStock", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsInStock", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_UnitsOnOrder", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsOnOrder", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_UnitsOnOrder", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"UnitsOnOrder", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"IsNull_ReorderLevel", System::Data::Odbc::OdbcType::Int, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReorderLevel", 
                  System::Data::DataRowVersion::Original, true, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_ReorderLevel", System::Data::Odbc::OdbcType::SmallInt, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"ReorderLevel", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
          this->_adapter->UpdateCommand->Parameters->Add((gcnew System::Data::Odbc::OdbcParameter(L"Original_Discontinued", System::Data::Odbc::OdbcType::Bit, 
                  0, System::Data::ParameterDirection::Input, static_cast(0), static_cast(0), L"Discontinued", 
                  System::Data::DataRowVersion::Original, false, nullptr)));
      }
      
      inline System::Void ProductsTableAdapter::InitConnection() {
          this->_connection = (gcnew System::Data::Odbc::OdbcConnection());
          this->_connection->ConnectionString = L"Dsn=Northwind;dbq=D:\\Beginning Visual C++ 2005\\Model Access DB\\Northwind.mdb;driv" 
  L"erid=25;fil=MS Access;maxbuffersize=2048;pagetimeout=5";
      }
      
      inline System::Void ProductsTableAdapter::InitCommandCollection() {
          this->_commandCollection = gcnew cli::array< System::Data::Odbc::OdbcCommand^  >(1);
          this->_commandCollection[0] = (gcnew System::Data::Odbc::OdbcCommand());
          this->_commandCollection[0]->Connection = this->Connection;
          this->_commandCollection[0]->CommandText = L"SELECT ProductID, ProductName, SupplierID, CategoryID, QuantityPerUnit, UnitPrice" 
  L", UnitsInStock, UnitsOnOrder, ReorderLevel, Discontinued FROM Products";
          this->_commandCollection[0]->CommandType = System::Data::CommandType::Text;
      }
      
      inline System::Int32 ProductsTableAdapter::Fill(Ex22_05::DataSet1::ProductsDataTable^  dataTable) {
          this->Adapter->SelectCommand = this->CommandCollection[0];
          if (this->ClearBeforeFill == true) {
              dataTable->Clear();
          }
          System::Int32 returnValue = this->Adapter->Fill(dataTable);
          return returnValue;
      }
      
      inline Ex22_05::DataSet1::ProductsDataTable^  ProductsTableAdapter::GetData() {
          this->Adapter->SelectCommand = this->CommandCollection[0];
          Ex22_05::DataSet1::ProductsDataTable^  dataTable = (gcnew Ex22_05::DataSet1::ProductsDataTable());
          this->Adapter->Fill(dataTable);
          return dataTable;
      }
      
      inline System::Int32 ProductsTableAdapter::Update(Ex22_05::DataSet1::ProductsDataTable^  dataTable) {
          return this->Adapter->Update(dataTable);
      }
      
      inline System::Int32 ProductsTableAdapter::Update(Ex22_05::DataSet1^  dataSet) {
          return this->Adapter->Update(dataSet, L"Products");
      }
      
      inline System::Int32 ProductsTableAdapter::Update(System::Data::DataRow^  dataRow) {
          return this->Adapter->Update(gcnew cli::array< System::Data::DataRow^  >(1) {dataRow});
      }
      
      inline System::Int32 ProductsTableAdapter::Update(cli::array< System::Data::DataRow^  >^  dataRows) {
          return this->Adapter->Update(dataRows);
      }
      
      inline System::Int32 ProductsTableAdapter::Delete(
                  System::Int32 Original_ProductID, 
                  System::String^  Original_ProductName, 
                  System::Nullable Original_SupplierID, 
                  System::Nullable Original_CategoryID, 
                  System::String^  Original_QuantityPerUnit, 
                  System::Nullable Original_UnitPrice, 
                  System::Nullable Original_UnitsInStock, 
                  System::Nullable Original_UnitsOnOrder, 
                  System::Nullable Original_ReorderLevel, 
                  System::Boolean Original_Discontinued) {
          this->Adapter->DeleteCommand->Parameters[0]->Value = static_cast(Original_ProductID);
          if (Original_ProductName == nullptr) {
              this->Adapter->DeleteCommand->Parameters[1]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[1]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[2]->Value = (cli::safe_cast(Original_ProductName));
          }
          if (Original_SupplierID.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[3]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[4]->Value = static_cast(Original_SupplierID.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[3]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          if (Original_CategoryID.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[5]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[6]->Value = static_cast(Original_CategoryID.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[5]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          if (Original_QuantityPerUnit == nullptr) {
              this->Adapter->DeleteCommand->Parameters[7]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[8]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->DeleteCommand->Parameters[7]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[8]->Value = (cli::safe_cast(Original_QuantityPerUnit));
          }
          if (Original_UnitPrice.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[9]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[10]->Value = static_cast(Original_UnitPrice.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[9]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[10]->Value = System::DBNull::Value;
          }
          if (Original_UnitsInStock.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[11]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[12]->Value = static_cast(Original_UnitsInStock.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[11]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[12]->Value = System::DBNull::Value;
          }
          if (Original_UnitsOnOrder.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[13]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[14]->Value = static_cast(Original_UnitsOnOrder.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[13]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[14]->Value = System::DBNull::Value;
          }
          if (Original_ReorderLevel.HasValue == true) {
              this->Adapter->DeleteCommand->Parameters[15]->Value = cli::safe_cast(0);
              this->Adapter->DeleteCommand->Parameters[16]->Value = static_cast(Original_ReorderLevel.Value);
          }
          else {
              this->Adapter->DeleteCommand->Parameters[15]->Value = cli::safe_cast(1);
              this->Adapter->DeleteCommand->Parameters[16]->Value = System::DBNull::Value;
          }
          this->Adapter->DeleteCommand->Parameters[17]->Value = static_cast(Original_Discontinued);
          System::Data::ConnectionState previousConnectionState = this->Adapter->DeleteCommand->Connection->State;
          if ((this->Adapter->DeleteCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->DeleteCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->DeleteCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->DeleteCommand->Connection->Close();
              }
          }
      }
      
      inline System::Int32 ProductsTableAdapter::Insert(
                  System::String^  ProductName, 
                  System::Nullable SupplierID, 
                  System::Nullable CategoryID, 
                  System::String^  QuantityPerUnit, 
                  System::Nullable UnitPrice, 
                  System::Nullable UnitsInStock, 
                  System::Nullable UnitsOnOrder, 
                  System::Nullable ReorderLevel, 
                  System::Boolean Discontinued) {
          if (ProductName == nullptr) {
              this->Adapter->InsertCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[0]->Value = (cli::safe_cast(ProductName));
          }
          if (SupplierID.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[1]->Value = static_cast(SupplierID.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[1]->Value = System::DBNull::Value;
          }
          if (CategoryID.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[2]->Value = static_cast(CategoryID.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          if (QuantityPerUnit == nullptr) {
              this->Adapter->InsertCommand->Parameters[3]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->InsertCommand->Parameters[3]->Value = (cli::safe_cast(QuantityPerUnit));
          }
          if (UnitPrice.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[4]->Value = static_cast(UnitPrice.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          if (UnitsInStock.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[5]->Value = static_cast(UnitsInStock.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[5]->Value = System::DBNull::Value;
          }
          if (UnitsOnOrder.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[6]->Value = static_cast(UnitsOnOrder.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          if (ReorderLevel.HasValue == true) {
              this->Adapter->InsertCommand->Parameters[7]->Value = static_cast(ReorderLevel.Value);
          }
          else {
              this->Adapter->InsertCommand->Parameters[7]->Value = System::DBNull::Value;
          }
          this->Adapter->InsertCommand->Parameters[8]->Value = static_cast(Discontinued);
          System::Data::ConnectionState previousConnectionState = this->Adapter->InsertCommand->Connection->State;
          if ((this->Adapter->InsertCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->InsertCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->InsertCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->InsertCommand->Connection->Close();
              }
          }
      }
      
      inline System::Int32 ProductsTableAdapter::Update(
                  System::String^  ProductName, 
                  System::Nullable SupplierID, 
                  System::Nullable CategoryID, 
                  System::String^  QuantityPerUnit, 
                  System::Nullable UnitPrice, 
                  System::Nullable UnitsInStock, 
                  System::Nullable UnitsOnOrder, 
                  System::Nullable ReorderLevel, 
                  System::Boolean Discontinued, 
                  System::Int32 Original_ProductID, 
                  System::String^  Original_ProductName, 
                  System::Nullable Original_SupplierID, 
                  System::Nullable Original_CategoryID, 
                  System::String^  Original_QuantityPerUnit, 
                  System::Nullable Original_UnitPrice, 
                  System::Nullable Original_UnitsInStock, 
                  System::Nullable Original_UnitsOnOrder, 
                  System::Nullable Original_ReorderLevel, 
                  System::Boolean Original_Discontinued) {
          if (ProductName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[0]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[0]->Value = (cli::safe_cast(ProductName));
          }
          if (SupplierID.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[1]->Value = static_cast(SupplierID.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[1]->Value = System::DBNull::Value;
          }
          if (CategoryID.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[2]->Value = static_cast(CategoryID.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[2]->Value = System::DBNull::Value;
          }
          if (QuantityPerUnit == nullptr) {
              this->Adapter->UpdateCommand->Parameters[3]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[3]->Value = (cli::safe_cast(QuantityPerUnit));
          }
          if (UnitPrice.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[4]->Value = static_cast(UnitPrice.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[4]->Value = System::DBNull::Value;
          }
          if (UnitsInStock.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[5]->Value = static_cast(UnitsInStock.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[5]->Value = System::DBNull::Value;
          }
          if (UnitsOnOrder.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[6]->Value = static_cast(UnitsOnOrder.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[6]->Value = System::DBNull::Value;
          }
          if (ReorderLevel.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[7]->Value = static_cast(ReorderLevel.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[7]->Value = System::DBNull::Value;
          }
          this->Adapter->UpdateCommand->Parameters[8]->Value = static_cast(Discontinued);
          this->Adapter->UpdateCommand->Parameters[9]->Value = static_cast(Original_ProductID);
          if (Original_ProductName == nullptr) {
              this->Adapter->UpdateCommand->Parameters[10]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[11]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[10]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[11]->Value = (cli::safe_cast(Original_ProductName));
          }
          if (Original_SupplierID.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[12]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[13]->Value = static_cast(Original_SupplierID.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[12]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[13]->Value = System::DBNull::Value;
          }
          if (Original_CategoryID.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[14]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[15]->Value = static_cast(Original_CategoryID.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[14]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[15]->Value = System::DBNull::Value;
          }
          if (Original_QuantityPerUnit == nullptr) {
              this->Adapter->UpdateCommand->Parameters[16]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[17]->Value = System::DBNull::Value;
          }
          else {
              this->Adapter->UpdateCommand->Parameters[16]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[17]->Value = (cli::safe_cast(Original_QuantityPerUnit));
          }
          if (Original_UnitPrice.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[18]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[19]->Value = static_cast(Original_UnitPrice.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[18]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[19]->Value = System::DBNull::Value;
          }
          if (Original_UnitsInStock.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[20]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[21]->Value = static_cast(Original_UnitsInStock.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[20]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[21]->Value = System::DBNull::Value;
          }
          if (Original_UnitsOnOrder.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[22]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[23]->Value = static_cast(Original_UnitsOnOrder.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[22]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[23]->Value = System::DBNull::Value;
          }
          if (Original_ReorderLevel.HasValue == true) {
              this->Adapter->UpdateCommand->Parameters[24]->Value = cli::safe_cast(0);
              this->Adapter->UpdateCommand->Parameters[25]->Value = static_cast(Original_ReorderLevel.Value);
          }
          else {
              this->Adapter->UpdateCommand->Parameters[24]->Value = cli::safe_cast(1);
              this->Adapter->UpdateCommand->Parameters[25]->Value = System::DBNull::Value;
          }
          this->Adapter->UpdateCommand->Parameters[26]->Value = static_cast(Original_Discontinued);
          System::Data::ConnectionState previousConnectionState = this->Adapter->UpdateCommand->Connection->State;
          if ((this->Adapter->UpdateCommand->Connection->State & System::Data::ConnectionState::Open) 
                      != System::Data::ConnectionState::Open) {
              this->Adapter->UpdateCommand->Connection->Open();
          }
          try {
              System::Int32 returnValue = this->Adapter->UpdateCommand->ExecuteNonQuery();
              return returnValue;
          }
          finally {
              if (previousConnectionState == System::Data::ConnectionState::Closed) {
                  this->Adapter->UpdateCommand->Connection->Close();
              }
          }
      }
      }
  }
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author. <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-2780434-1"; urchinTracker(); </script>

Hush Online Technology
hush@cs.vu.nl
10/17/08