Patrick Germain 9 月之前
父节点
当前提交
c701e072ed
共有 100 个文件被更改,包括 31970 次插入0 次删除
  1. 11 0
      .gitignore
  2. 14 0
      Convert/App.config
  3. 84 0
      Convert/Convert.csproj
  4. 5995 0
      Convert/DSConvert.Designer.cs
  5. 39 0
      Convert/DSConvert.cs
  6. 9 0
      Convert/DSConvert.xsc
  7. 212 0
      Convert/DSConvert.xsd
  8. 121 0
      Convert/DSConvert.xss
  9. 32 0
      Convert/Product.cs
  10. 71 0
      Convert/Program.cs
  11. 33 0
      Convert/Properties/AssemblyInfo.cs
  12. 4 0
      Convert/packages.config
  13. 37 0
      Fuel_ASO.sln
  14. 56 0
      Fuel_ASO/App.config
  15. 282 0
      Fuel_ASO/Classes.cs
  16. 5703 0
      Fuel_ASO/DataSet1.Designer.cs
  17. 39 0
      Fuel_ASO/DataSet1.cs
  18. 9 0
      Fuel_ASO/DataSet1.xsc
  19. 185 0
      Fuel_ASO/DataSet1.xsd
  20. 20 0
      Fuel_ASO/DataSet1.xss
  21. 62 0
      Fuel_ASO/DbUtil.cs
  22. 二进制
      Fuel_ASO/Dlls/Ionic.Utils.Zip.dll
  23. 二进制
      Fuel_ASO/Fuel01_CléTemporaire.pfx
  24. 426 0
      Fuel_ASO/Fuel_ASO.csproj
  25. 16 0
      Fuel_ASO/Fuel_ASO.csproj.user
  26. 700 0
      Fuel_ASO/Main.Designer.cs
  27. 656 0
      Fuel_ASO/Main.cs
  28. 636 0
      Fuel_ASO/Main.resx
  29. 152 0
      Fuel_ASO/Program.cs
  30. 36 0
      Fuel_ASO/Properties/AssemblyInfo - Copie.cs
  31. 38 0
      Fuel_ASO/Properties/AssemblyInfo.cs
  32. 143 0
      Fuel_ASO/Properties/Resources.Designer.cs
  33. 145 0
      Fuel_ASO/Properties/Resources.resx
  34. 158 0
      Fuel_ASO/Properties/Settings.Designer.cs
  35. 39 0
      Fuel_ASO/Properties/Settings.settings
  36. 70 0
      Fuel_ASO/Properties/app.manifest
  37. 二进制
      Fuel_ASO/Resources/aPompe.png
  38. 二进制
      Fuel_ASO/Resources/aax3.png
  39. 二进制
      Fuel_ASO/Resources/archive.png
  40. 二进制
      Fuel_ASO/Resources/document0.png
  41. 二进制
      Fuel_ASO/Resources/dossier.png
  42. 二进制
      Fuel_ASO/Resources/green.bmp
  43. 二进制
      Fuel_ASO/Resources/pompe01.ico
  44. 二进制
      Fuel_ASO/Resources/red.bmp
  45. 28 0
      Fuel_ASO/Settings.cs
  46. 141 0
      Fuel_ASO/TextFile1.txt
  47. 27 0
      Fuel_ASO/Utils.cs
  48. 80 0
      Fuel_ASO/XMLSchema1.xsd
  49. 681 0
      Fuel_ASO/f_about.Designer.cs
  50. 414 0
      Fuel_ASO/f_about.cs
  51. 129 0
      Fuel_ASO/f_about.resx
  52. 235 0
      Fuel_ASO/f_clean.Designer.cs
  53. 352 0
      Fuel_ASO/f_clean.cs
  54. 120 0
      Fuel_ASO/f_clean.resx
  55. 381 0
      Fuel_ASO/f_epreuve.Designer.cs
  56. 234 0
      Fuel_ASO/f_epreuve.cs
  57. 132 0
      Fuel_ASO/f_epreuve.resx
  58. 224 0
      Fuel_ASO/f_etape.Designer.cs
  59. 91 0
      Fuel_ASO/f_etape.cs
  60. 126 0
      Fuel_ASO/f_etape.resx
  61. 100 0
      Fuel_ASO/f_extract.Designer.cs
  62. 54 0
      Fuel_ASO/f_extract.cs
  63. 120 0
      Fuel_ASO/f_extract.resx
  64. 541 0
      Fuel_ASO/f_facture.Designer.cs
  65. 411 0
      Fuel_ASO/f_facture.cs
  66. 135 0
      Fuel_ASO/f_facture.resx
  67. 745 0
      Fuel_ASO/f_impvehi.Designer.cs
  68. 752 0
      Fuel_ASO/f_impvehi.cs
  69. 153 0
      Fuel_ASO/f_impvehi.resx
  70. 367 0
      Fuel_ASO/f_param.Designer.cs
  71. 155 0
      Fuel_ASO/f_param.cs
  72. 135 0
      Fuel_ASO/f_param.resx
  73. 599 0
      Fuel_ASO/f_presta.Designer.cs
  74. 398 0
      Fuel_ASO/f_presta.cs
  75. 141 0
      Fuel_ASO/f_presta.resx
  76. 100 0
      Fuel_ASO/f_result.Designer.cs
  77. 38 0
      Fuel_ASO/f_result.cs
  78. 120 0
      Fuel_ASO/f_result.resx
  79. 1174 0
      Fuel_ASO/f_saisie.Designer.cs
  80. 397 0
      Fuel_ASO/f_saisie.cs
  81. 141 0
      Fuel_ASO/f_saisie.resx
  82. 939 0
      Fuel_ASO/f_saisie2.Designer.cs
  83. 480 0
      Fuel_ASO/f_saisie2.cs
  84. 141 0
      Fuel_ASO/f_saisie2.resx
  85. 715 0
      Fuel_ASO/f_station.Designer.cs
  86. 282 0
      Fuel_ASO/f_station.cs
  87. 138 0
      Fuel_ASO/f_station.resx
  88. 203 0
      Fuel_ASO/f_ticket.Designer.cs
  89. 43 0
      Fuel_ASO/f_ticket.cs
  90. 126 0
      Fuel_ASO/f_ticket.resx
  91. 475 0
      Fuel_ASO/f_tools.Designer.cs
  92. 344 0
      Fuel_ASO/f_tools.cs
  93. 132 0
      Fuel_ASO/f_tools.resx
  94. 588 0
      Fuel_ASO/f_vehi.Designer.cs
  95. 244 0
      Fuel_ASO/f_vehi.cs
  96. 177 0
      Fuel_ASO/f_vehi.resx
  97. 319 0
      Fuel_ASO/f_verif.Designer.cs
  98. 86 0
      Fuel_ASO/f_verif.cs
  99. 129 0
      Fuel_ASO/f_verif.resx
  100. 5 0
      Fuel_ASO/packages.config

+ 11 - 0
.gitignore

@@ -0,0 +1,11 @@
+.vs/
+Fuel_ASO/bin/
+Fuel_ASO/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs
+Fuel_ASO/obj/
+Fuel_ASO/publier/
+packages/
+Setup_Fuel_Data/
+Convert/bin/
+Convert/obj/
+bin
+obj

+ 14 - 0
Convert/App.config

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+    <startup> 
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8.1"/>
+    </startup>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
+        <bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0"/>
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>

+ 84 - 0
Convert/Convert.csproj

@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{37EE8F41-69D4-4BD9-9A56-3BD68230C004}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <RootNamespace>Convert</RootNamespace>
+    <AssemblyName>Convert</AssemblyName>
+    <TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
+    <Deterministic>true</Deterministic>
+    <TargetFrameworkProfile />
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+      <HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Net.Http" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="DSConvert.cs">
+      <DependentUpon>DSConvert.xsd</DependentUpon>
+    </Compile>
+    <Compile Include="DSConvert.Designer.cs">
+      <DependentUpon>DSConvert.xsd</DependentUpon>
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+    </Compile>
+    <Compile Include="Product.cs" />
+    <Compile Include="Program.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="App.config" />
+    <None Include="DSConvert.xsc">
+      <DependentUpon>DSConvert.xsd</DependentUpon>
+    </None>
+    <None Include="DSConvert.xsd">
+      <Generator>MSDataSetGenerator</Generator>
+      <LastGenOutput>DSConvert.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
+    </None>
+    <None Include="DSConvert.xss">
+      <DependentUpon>DSConvert.xsd</DependentUpon>
+    </None>
+    <None Include="packages.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\Fuel_ASO\Fuel_ASO.csproj">
+      <Project>{2578a6fe-68e5-4216-af51-9b04ddd43d8a}</Project>
+      <Name>Fuel_ASO</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+</Project>

+ 5995 - 0
Convert/DSConvert.Designer.cs

@@ -0,0 +1,5995 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Ce code a été généré par un outil.
+//     Version du runtime :4.0.30319.42000
+//
+//     Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+//     le code est régénéré.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+#pragma warning disable 1591
+
+namespace Convert {
+    
+    
+    /// <summary>
+    ///Represents a strongly typed in-memory cache of data.
+    ///</summary>
+    [global::System.Serializable()]
+    [global::System.ComponentModel.DesignerCategoryAttribute("code")]
+    [global::System.ComponentModel.ToolboxItem(true)]
+    [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema")]
+    [global::System.Xml.Serialization.XmlRootAttribute("DataSet1")]
+    [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")]
+    public partial class DataSet1 : global::System.Data.DataSet {
+        
+        private tb_vehiDataTable tabletb_vehi;
+        
+        private tb_epreuveDataTable tabletb_epreuve;
+        
+        private tb_etapeDataTable tabletb_etape;
+        
+        private tb_paysDataTable tabletb_pays;
+        
+        private tb_stationDataTable tabletb_station;
+        
+        private tb_familleDataTable tabletb_famille;
+        
+        private tb_prodDataTable tabletb_prod;
+        
+        private tb_prestaDataTable tabletb_presta;
+        
+        private tb_venteDataTable tabletb_vente;
+        
+        private global::System.Data.DataRelation relationFK_tb_epreuve_tb_etape;
+        
+        private global::System.Data.DataRelation relationFK_tb_epreuve_tb_station;
+        
+        private global::System.Data.DataRelation relationFK_tb_station_tb_presta;
+        
+        private global::System.Data.DataRelation relationFK_tb_prod_tb_vente;
+        
+        private global::System.Data.DataRelation relationFK_tb_epreuve_tb_vente;
+        
+        private global::System.Data.DataRelation relationtb_prod_tb_presta;
+        
+        private global::System.Data.DataRelation relationtb_vehi_tb_vente;
+        
+        private global::System.Data.DataRelation relationtb_station_tb_vente;
+        
+        private global::System.Data.SchemaSerializationMode _schemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema;
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public DataSet1() {
+            this.BeginInit();
+            this.InitClass();
+            global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
+            base.Tables.CollectionChanged += schemaChangedHandler;
+            base.Relations.CollectionChanged += schemaChangedHandler;
+            this.EndInit();
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected DataSet1(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                base(info, context, false) {
+            if ((this.IsBinarySerialized(info, context) == true)) {
+                this.InitVars(false);
+                global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler1 = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
+                this.Tables.CollectionChanged += schemaChangedHandler1;
+                this.Relations.CollectionChanged += schemaChangedHandler1;
+                return;
+            }
+            string strSchema = ((string)(info.GetValue("XmlSchema", typeof(string))));
+            if ((this.DetermineSchemaSerializationMode(info, context) == global::System.Data.SchemaSerializationMode.IncludeSchema)) {
+                global::System.Data.DataSet ds = new global::System.Data.DataSet();
+                ds.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema)));
+                if ((ds.Tables["tb_vehi"] != null)) {
+                    base.Tables.Add(new tb_vehiDataTable(ds.Tables["tb_vehi"]));
+                }
+                if ((ds.Tables["tb_epreuve"] != null)) {
+                    base.Tables.Add(new tb_epreuveDataTable(ds.Tables["tb_epreuve"]));
+                }
+                if ((ds.Tables["tb_etape"] != null)) {
+                    base.Tables.Add(new tb_etapeDataTable(ds.Tables["tb_etape"]));
+                }
+                if ((ds.Tables["tb_pays"] != null)) {
+                    base.Tables.Add(new tb_paysDataTable(ds.Tables["tb_pays"]));
+                }
+                if ((ds.Tables["tb_station"] != null)) {
+                    base.Tables.Add(new tb_stationDataTable(ds.Tables["tb_station"]));
+                }
+                if ((ds.Tables["tb_famille"] != null)) {
+                    base.Tables.Add(new tb_familleDataTable(ds.Tables["tb_famille"]));
+                }
+                if ((ds.Tables["tb_prod"] != null)) {
+                    base.Tables.Add(new tb_prodDataTable(ds.Tables["tb_prod"]));
+                }
+                if ((ds.Tables["tb_presta"] != null)) {
+                    base.Tables.Add(new tb_prestaDataTable(ds.Tables["tb_presta"]));
+                }
+                if ((ds.Tables["tb_vente"] != null)) {
+                    base.Tables.Add(new tb_venteDataTable(ds.Tables["tb_vente"]));
+                }
+                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, global::System.Data.MissingSchemaAction.Add);
+                this.InitVars();
+            }
+            else {
+                this.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema)));
+            }
+            this.GetSerializationData(info, context);
+            global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
+            base.Tables.CollectionChanged += schemaChangedHandler;
+            this.Relations.CollectionChanged += schemaChangedHandler;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_vehiDataTable tb_vehi {
+            get {
+                return this.tabletb_vehi;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_epreuveDataTable tb_epreuve {
+            get {
+                return this.tabletb_epreuve;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_etapeDataTable tb_etape {
+            get {
+                return this.tabletb_etape;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_paysDataTable tb_pays {
+            get {
+                return this.tabletb_pays;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_stationDataTable tb_station {
+            get {
+                return this.tabletb_station;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_familleDataTable tb_famille {
+            get {
+                return this.tabletb_famille;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_prodDataTable tb_prod {
+            get {
+                return this.tabletb_prod;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_prestaDataTable tb_presta {
+            get {
+                return this.tabletb_presta;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_venteDataTable tb_vente {
+            get {
+                return this.tabletb_vente;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.BrowsableAttribute(true)]
+        [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Visible)]
+        public override global::System.Data.SchemaSerializationMode SchemaSerializationMode {
+            get {
+                return this._schemaSerializationMode;
+            }
+            set {
+                this._schemaSerializationMode = value;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)]
+        public new global::System.Data.DataTableCollection Tables {
+            get {
+                return base.Tables;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)]
+        public new global::System.Data.DataRelationCollection Relations {
+            get {
+                return base.Relations;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override void InitializeDerivedDataSet() {
+            this.BeginInit();
+            this.InitClass();
+            this.EndInit();
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public override global::System.Data.DataSet Clone() {
+            DataSet1 cln = ((DataSet1)(base.Clone()));
+            cln.InitVars();
+            cln.SchemaSerializationMode = this.SchemaSerializationMode;
+            return cln;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override bool ShouldSerializeTables() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override bool ShouldSerializeRelations() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override void ReadXmlSerializable(global::System.Xml.XmlReader reader) {
+            if ((this.DetermineSchemaSerializationMode(reader) == global::System.Data.SchemaSerializationMode.IncludeSchema)) {
+                this.Reset();
+                global::System.Data.DataSet ds = new global::System.Data.DataSet();
+                ds.ReadXml(reader);
+                if ((ds.Tables["tb_vehi"] != null)) {
+                    base.Tables.Add(new tb_vehiDataTable(ds.Tables["tb_vehi"]));
+                }
+                if ((ds.Tables["tb_epreuve"] != null)) {
+                    base.Tables.Add(new tb_epreuveDataTable(ds.Tables["tb_epreuve"]));
+                }
+                if ((ds.Tables["tb_etape"] != null)) {
+                    base.Tables.Add(new tb_etapeDataTable(ds.Tables["tb_etape"]));
+                }
+                if ((ds.Tables["tb_pays"] != null)) {
+                    base.Tables.Add(new tb_paysDataTable(ds.Tables["tb_pays"]));
+                }
+                if ((ds.Tables["tb_station"] != null)) {
+                    base.Tables.Add(new tb_stationDataTable(ds.Tables["tb_station"]));
+                }
+                if ((ds.Tables["tb_famille"] != null)) {
+                    base.Tables.Add(new tb_familleDataTable(ds.Tables["tb_famille"]));
+                }
+                if ((ds.Tables["tb_prod"] != null)) {
+                    base.Tables.Add(new tb_prodDataTable(ds.Tables["tb_prod"]));
+                }
+                if ((ds.Tables["tb_presta"] != null)) {
+                    base.Tables.Add(new tb_prestaDataTable(ds.Tables["tb_presta"]));
+                }
+                if ((ds.Tables["tb_vente"] != null)) {
+                    base.Tables.Add(new tb_venteDataTable(ds.Tables["tb_vente"]));
+                }
+                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, global::System.Data.MissingSchemaAction.Add);
+                this.InitVars();
+            }
+            else {
+                this.ReadXml(reader);
+                this.InitVars();
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override global::System.Xml.Schema.XmlSchema GetSchemaSerializable() {
+            global::System.IO.MemoryStream stream = new global::System.IO.MemoryStream();
+            this.WriteXmlSchema(new global::System.Xml.XmlTextWriter(stream, null));
+            stream.Position = 0;
+            return global::System.Xml.Schema.XmlSchema.Read(new global::System.Xml.XmlTextReader(stream), null);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        internal void InitVars() {
+            this.InitVars(true);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        internal void InitVars(bool initTable) {
+            this.tabletb_vehi = ((tb_vehiDataTable)(base.Tables["tb_vehi"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_vehi != null)) {
+                    this.tabletb_vehi.InitVars();
+                }
+            }
+            this.tabletb_epreuve = ((tb_epreuveDataTable)(base.Tables["tb_epreuve"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_epreuve != null)) {
+                    this.tabletb_epreuve.InitVars();
+                }
+            }
+            this.tabletb_etape = ((tb_etapeDataTable)(base.Tables["tb_etape"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_etape != null)) {
+                    this.tabletb_etape.InitVars();
+                }
+            }
+            this.tabletb_pays = ((tb_paysDataTable)(base.Tables["tb_pays"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_pays != null)) {
+                    this.tabletb_pays.InitVars();
+                }
+            }
+            this.tabletb_station = ((tb_stationDataTable)(base.Tables["tb_station"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_station != null)) {
+                    this.tabletb_station.InitVars();
+                }
+            }
+            this.tabletb_famille = ((tb_familleDataTable)(base.Tables["tb_famille"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_famille != null)) {
+                    this.tabletb_famille.InitVars();
+                }
+            }
+            this.tabletb_prod = ((tb_prodDataTable)(base.Tables["tb_prod"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_prod != null)) {
+                    this.tabletb_prod.InitVars();
+                }
+            }
+            this.tabletb_presta = ((tb_prestaDataTable)(base.Tables["tb_presta"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_presta != null)) {
+                    this.tabletb_presta.InitVars();
+                }
+            }
+            this.tabletb_vente = ((tb_venteDataTable)(base.Tables["tb_vente"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_vente != null)) {
+                    this.tabletb_vente.InitVars();
+                }
+            }
+            this.relationFK_tb_epreuve_tb_etape = this.Relations["FK_tb_epreuve_tb_etape"];
+            this.relationFK_tb_epreuve_tb_station = this.Relations["FK_tb_epreuve_tb_station"];
+            this.relationFK_tb_station_tb_presta = this.Relations["FK_tb_station_tb_presta"];
+            this.relationFK_tb_prod_tb_vente = this.Relations["FK_tb_prod_tb_vente"];
+            this.relationFK_tb_epreuve_tb_vente = this.Relations["FK_tb_epreuve_tb_vente"];
+            this.relationtb_prod_tb_presta = this.Relations["tb_prod_tb_presta"];
+            this.relationtb_vehi_tb_vente = this.Relations["tb_vehi_tb_vente"];
+            this.relationtb_station_tb_vente = this.Relations["tb_station_tb_vente"];
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private void InitClass() {
+            this.DataSetName = "DataSet1";
+            this.Prefix = "";
+            this.Namespace = "http://tempuri.org/DataSet1.xsd";
+            this.EnforceConstraints = true;
+            this.SchemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema;
+            this.tabletb_vehi = new tb_vehiDataTable();
+            base.Tables.Add(this.tabletb_vehi);
+            this.tabletb_epreuve = new tb_epreuveDataTable();
+            base.Tables.Add(this.tabletb_epreuve);
+            this.tabletb_etape = new tb_etapeDataTable();
+            base.Tables.Add(this.tabletb_etape);
+            this.tabletb_pays = new tb_paysDataTable();
+            base.Tables.Add(this.tabletb_pays);
+            this.tabletb_station = new tb_stationDataTable();
+            base.Tables.Add(this.tabletb_station);
+            this.tabletb_famille = new tb_familleDataTable();
+            base.Tables.Add(this.tabletb_famille);
+            this.tabletb_prod = new tb_prodDataTable();
+            base.Tables.Add(this.tabletb_prod);
+            this.tabletb_presta = new tb_prestaDataTable();
+            base.Tables.Add(this.tabletb_presta);
+            this.tabletb_vente = new tb_venteDataTable();
+            base.Tables.Add(this.tabletb_vente);
+            global::System.Data.ForeignKeyConstraint fkc;
+            fkc = new global::System.Data.ForeignKeyConstraint("FK_tb_epreuve_tb_etape", new global::System.Data.DataColumn[] {
+                        this.tabletb_epreuve.key_eprColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_etape.epr_etpColumn});
+            this.tabletb_etape.Constraints.Add(fkc);
+            fkc.AcceptRejectRule = global::System.Data.AcceptRejectRule.Cascade;
+            fkc.DeleteRule = global::System.Data.Rule.Cascade;
+            fkc.UpdateRule = global::System.Data.Rule.Cascade;
+            fkc = new global::System.Data.ForeignKeyConstraint("FK_tb_epreuve_tb_station", new global::System.Data.DataColumn[] {
+                        this.tabletb_epreuve.key_eprColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_station.epr_staColumn});
+            this.tabletb_station.Constraints.Add(fkc);
+            fkc.AcceptRejectRule = global::System.Data.AcceptRejectRule.Cascade;
+            fkc.DeleteRule = global::System.Data.Rule.Cascade;
+            fkc.UpdateRule = global::System.Data.Rule.Cascade;
+            fkc = new global::System.Data.ForeignKeyConstraint("FK_tb_station_tb_presta", new global::System.Data.DataColumn[] {
+                        this.tabletb_station.key_staColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_presta.sta_prColumn});
+            this.tabletb_presta.Constraints.Add(fkc);
+            fkc.AcceptRejectRule = global::System.Data.AcceptRejectRule.Cascade;
+            fkc.DeleteRule = global::System.Data.Rule.Cascade;
+            fkc.UpdateRule = global::System.Data.Rule.Cascade;
+            fkc = new global::System.Data.ForeignKeyConstraint("FK_tb_prod_tb_vente", new global::System.Data.DataColumn[] {
+                        this.tabletb_prod.key_prodColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_vente.prod_vtColumn});
+            this.tabletb_vente.Constraints.Add(fkc);
+            fkc.AcceptRejectRule = global::System.Data.AcceptRejectRule.Cascade;
+            fkc.DeleteRule = global::System.Data.Rule.Cascade;
+            fkc.UpdateRule = global::System.Data.Rule.Cascade;
+            fkc = new global::System.Data.ForeignKeyConstraint("FK_tb_epreuve_tb_vente", new global::System.Data.DataColumn[] {
+                        this.tabletb_epreuve.key_eprColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_vente.epreuve_vtColumn});
+            this.tabletb_vente.Constraints.Add(fkc);
+            fkc.AcceptRejectRule = global::System.Data.AcceptRejectRule.Cascade;
+            fkc.DeleteRule = global::System.Data.Rule.Cascade;
+            fkc.UpdateRule = global::System.Data.Rule.Cascade;
+            this.relationFK_tb_epreuve_tb_etape = new global::System.Data.DataRelation("FK_tb_epreuve_tb_etape", new global::System.Data.DataColumn[] {
+                        this.tabletb_epreuve.key_eprColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_etape.epr_etpColumn}, false);
+            this.Relations.Add(this.relationFK_tb_epreuve_tb_etape);
+            this.relationFK_tb_epreuve_tb_station = new global::System.Data.DataRelation("FK_tb_epreuve_tb_station", new global::System.Data.DataColumn[] {
+                        this.tabletb_epreuve.key_eprColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_station.epr_staColumn}, false);
+            this.Relations.Add(this.relationFK_tb_epreuve_tb_station);
+            this.relationFK_tb_station_tb_presta = new global::System.Data.DataRelation("FK_tb_station_tb_presta", new global::System.Data.DataColumn[] {
+                        this.tabletb_station.key_staColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_presta.sta_prColumn}, false);
+            this.Relations.Add(this.relationFK_tb_station_tb_presta);
+            this.relationFK_tb_prod_tb_vente = new global::System.Data.DataRelation("FK_tb_prod_tb_vente", new global::System.Data.DataColumn[] {
+                        this.tabletb_prod.key_prodColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_vente.prod_vtColumn}, false);
+            this.Relations.Add(this.relationFK_tb_prod_tb_vente);
+            this.relationFK_tb_epreuve_tb_vente = new global::System.Data.DataRelation("FK_tb_epreuve_tb_vente", new global::System.Data.DataColumn[] {
+                        this.tabletb_epreuve.key_eprColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_vente.epreuve_vtColumn}, false);
+            this.Relations.Add(this.relationFK_tb_epreuve_tb_vente);
+            this.relationtb_prod_tb_presta = new global::System.Data.DataRelation("tb_prod_tb_presta", new global::System.Data.DataColumn[] {
+                        this.tabletb_prod.key_prodColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_presta.prod_prColumn}, false);
+            this.Relations.Add(this.relationtb_prod_tb_presta);
+            this.relationtb_vehi_tb_vente = new global::System.Data.DataRelation("tb_vehi_tb_vente", new global::System.Data.DataColumn[] {
+                        this.tabletb_vehi.key_vehiColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_vente.vehi_vtColumn}, false);
+            this.Relations.Add(this.relationtb_vehi_tb_vente);
+            this.relationtb_station_tb_vente = new global::System.Data.DataRelation("tb_station_tb_vente", new global::System.Data.DataColumn[] {
+                        this.tabletb_station.key_staColumn}, new global::System.Data.DataColumn[] {
+                        this.tabletb_vente.station_vtColumn}, false);
+            this.Relations.Add(this.relationtb_station_tb_vente);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_vehi() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_epreuve() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_etape() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_pays() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_station() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_famille() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_prod() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_presta() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_vente() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private void SchemaChanged(object sender, global::System.ComponentModel.CollectionChangeEventArgs e) {
+            if ((e.Action == global::System.ComponentModel.CollectionChangeAction.Remove)) {
+                this.InitVars();
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+            DataSet1 ds = new DataSet1();
+            global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+            global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+            global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny();
+            any.Namespace = ds.Namespace;
+            sequence.Items.Add(any);
+            type.Particle = sequence;
+            global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+            if (xs.Contains(dsSchema.TargetNamespace)) {
+                global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                try {
+                    global::System.Xml.Schema.XmlSchema schema = null;
+                    dsSchema.Write(s1);
+                    for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                        schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                        s2.SetLength(0);
+                        schema.Write(s2);
+                        if ((s1.Length == s2.Length)) {
+                            s1.Position = 0;
+                            s2.Position = 0;
+                            for (; ((s1.Position != s1.Length) 
+                                        && (s1.ReadByte() == s2.ReadByte())); ) {
+                                ;
+                            }
+                            if ((s1.Position == s1.Length)) {
+                                return type;
+                            }
+                        }
+                    }
+                }
+                finally {
+                    if ((s1 != null)) {
+                        s1.Close();
+                    }
+                    if ((s2 != null)) {
+                        s2.Close();
+                    }
+                }
+            }
+            xs.Add(dsSchema);
+            return type;
+        }
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_vehiRowChangeEventHandler(object sender, tb_vehiRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_epreuveRowChangeEventHandler(object sender, tb_epreuveRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_etapeRowChangeEventHandler(object sender, tb_etapeRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_paysRowChangeEventHandler(object sender, tb_paysRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_stationRowChangeEventHandler(object sender, tb_stationRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_familleRowChangeEventHandler(object sender, tb_familleRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_prodRowChangeEventHandler(object sender, tb_prodRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_prestaRowChangeEventHandler(object sender, tb_prestaRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_venteRowChangeEventHandler(object sender, tb_venteRowChangeEvent e);
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_vehiDataTable : global::System.Data.TypedTableBase<tb_vehiRow> {
+            
+            private global::System.Data.DataColumn columnkey_vehi;
+            
+            private global::System.Data.DataColumn columnnum_vehi;
+            
+            private global::System.Data.DataColumn columncmpnum_vehi;
+            
+            private global::System.Data.DataColumn columnimmat_vehi;
+            
+            private global::System.Data.DataColumn columnope_vehi;
+            
+            private global::System.Data.DataColumn columntype_vehi;
+            
+            private global::System.Data.DataColumn columncond_vehi;
+            
+            private global::System.Data.DataColumn columnfamille_vehi;
+            
+            private global::System.Data.DataColumn columncarbu_vehi;
+            
+            private global::System.Data.DataColumn columnkmdep_vehi;
+            
+            private global::System.Data.DataColumn columnkmarr_vehi;
+            
+            private global::System.Data.DataColumn columncateg_vehi;
+            
+            private global::System.Data.DataColumn columnsort1_vehi;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiDataTable() {
+                this.TableName = "tb_vehi";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_vehiDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_vehiDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_vehiColumn {
+                get {
+                    return this.columnkey_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn num_vehiColumn {
+                get {
+                    return this.columnnum_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn cmpnum_vehiColumn {
+                get {
+                    return this.columncmpnum_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn immat_vehiColumn {
+                get {
+                    return this.columnimmat_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ope_vehiColumn {
+                get {
+                    return this.columnope_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn type_vehiColumn {
+                get {
+                    return this.columntype_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn cond_vehiColumn {
+                get {
+                    return this.columncond_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn famille_vehiColumn {
+                get {
+                    return this.columnfamille_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn carbu_vehiColumn {
+                get {
+                    return this.columncarbu_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn kmdep_vehiColumn {
+                get {
+                    return this.columnkmdep_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn kmarr_vehiColumn {
+                get {
+                    return this.columnkmarr_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn categ_vehiColumn {
+                get {
+                    return this.columncateg_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn sort1_vehiColumn {
+                get {
+                    return this.columnsort1_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow this[int index] {
+                get {
+                    return ((tb_vehiRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_vehiRow(tb_vehiRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow Addtb_vehiRow(string key_vehi, ushort num_vehi, string cmpnum_vehi, string immat_vehi, string ope_vehi, string type_vehi, string cond_vehi, string famille_vehi, string carbu_vehi, string kmdep_vehi, string kmarr_vehi, string categ_vehi, string sort1_vehi) {
+                tb_vehiRow rowtb_vehiRow = ((tb_vehiRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_vehi,
+                        num_vehi,
+                        cmpnum_vehi,
+                        immat_vehi,
+                        ope_vehi,
+                        type_vehi,
+                        cond_vehi,
+                        famille_vehi,
+                        carbu_vehi,
+                        kmdep_vehi,
+                        kmarr_vehi,
+                        categ_vehi,
+                        sort1_vehi};
+                rowtb_vehiRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_vehiRow);
+                return rowtb_vehiRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow FindBykey_vehi(string key_vehi) {
+                return ((tb_vehiRow)(this.Rows.Find(new object[] {
+                            key_vehi})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_vehiDataTable cln = ((tb_vehiDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_vehiDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_vehi = base.Columns["key_vehi"];
+                this.columnnum_vehi = base.Columns["num_vehi"];
+                this.columncmpnum_vehi = base.Columns["cmpnum_vehi"];
+                this.columnimmat_vehi = base.Columns["immat_vehi"];
+                this.columnope_vehi = base.Columns["ope_vehi"];
+                this.columntype_vehi = base.Columns["type_vehi"];
+                this.columncond_vehi = base.Columns["cond_vehi"];
+                this.columnfamille_vehi = base.Columns["famille_vehi"];
+                this.columncarbu_vehi = base.Columns["carbu_vehi"];
+                this.columnkmdep_vehi = base.Columns["kmdep_vehi"];
+                this.columnkmarr_vehi = base.Columns["kmarr_vehi"];
+                this.columncateg_vehi = base.Columns["categ_vehi"];
+                this.columnsort1_vehi = base.Columns["sort1_vehi"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_vehi = new global::System.Data.DataColumn("key_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_vehi);
+                this.columnnum_vehi = new global::System.Data.DataColumn("num_vehi", typeof(ushort), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnum_vehi);
+                this.columncmpnum_vehi = new global::System.Data.DataColumn("cmpnum_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncmpnum_vehi);
+                this.columnimmat_vehi = new global::System.Data.DataColumn("immat_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnimmat_vehi);
+                this.columnope_vehi = new global::System.Data.DataColumn("ope_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnope_vehi);
+                this.columntype_vehi = new global::System.Data.DataColumn("type_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntype_vehi);
+                this.columncond_vehi = new global::System.Data.DataColumn("cond_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncond_vehi);
+                this.columnfamille_vehi = new global::System.Data.DataColumn("famille_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnfamille_vehi);
+                this.columncarbu_vehi = new global::System.Data.DataColumn("carbu_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncarbu_vehi);
+                this.columnkmdep_vehi = new global::System.Data.DataColumn("kmdep_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkmdep_vehi);
+                this.columnkmarr_vehi = new global::System.Data.DataColumn("kmarr_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkmarr_vehi);
+                this.columncateg_vehi = new global::System.Data.DataColumn("categ_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncateg_vehi);
+                this.columnsort1_vehi = new global::System.Data.DataColumn("sort1_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnsort1_vehi);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_vehi}, true));
+                this.columnkey_vehi.AllowDBNull = false;
+                this.columnkey_vehi.Unique = true;
+                this.columncond_vehi.DefaultValue = ((string)(""));
+                this.columncateg_vehi.MaxLength = 1;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow Newtb_vehiRow() {
+                return ((tb_vehiRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_vehiRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_vehiRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_vehiRowChanged != null)) {
+                    this.tb_vehiRowChanged(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_vehiRowChanging != null)) {
+                    this.tb_vehiRowChanging(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_vehiRowDeleted != null)) {
+                    this.tb_vehiRowDeleted(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_vehiRowDeleting != null)) {
+                    this.tb_vehiRowDeleting(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_vehiRow(tb_vehiRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_vehiDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_epreuveDataTable : global::System.Data.TypedTableBase<tb_epreuveRow> {
+            
+            private global::System.Data.DataColumn columnkey_epr;
+            
+            private global::System.Data.DataColumn columnnom_epr;
+            
+            private global::System.Data.DataColumn columndeb_epr;
+            
+            private global::System.Data.DataColumn columnfin_epr;
+            
+            private global::System.Data.DataColumn columnabrev_epr;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveDataTable() {
+                this.TableName = "tb_epreuve";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_epreuveDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_epreuveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_eprColumn {
+                get {
+                    return this.columnkey_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_eprColumn {
+                get {
+                    return this.columnnom_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn deb_eprColumn {
+                get {
+                    return this.columndeb_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn fin_eprColumn {
+                get {
+                    return this.columnfin_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn abrev_eprColumn {
+                get {
+                    return this.columnabrev_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow this[int index] {
+                get {
+                    return ((tb_epreuveRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_epreuveRow(tb_epreuveRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow Addtb_epreuveRow(string key_epr, string nom_epr, System.DateTime deb_epr, System.DateTime fin_epr, string abrev_epr) {
+                tb_epreuveRow rowtb_epreuveRow = ((tb_epreuveRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_epr,
+                        nom_epr,
+                        deb_epr,
+                        fin_epr,
+                        abrev_epr};
+                rowtb_epreuveRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_epreuveRow);
+                return rowtb_epreuveRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow FindBykey_epr(string key_epr) {
+                return ((tb_epreuveRow)(this.Rows.Find(new object[] {
+                            key_epr})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_epreuveDataTable cln = ((tb_epreuveDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_epreuveDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_epr = base.Columns["key_epr"];
+                this.columnnom_epr = base.Columns["nom_epr"];
+                this.columndeb_epr = base.Columns["deb_epr"];
+                this.columnfin_epr = base.Columns["fin_epr"];
+                this.columnabrev_epr = base.Columns["abrev_epr"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_epr = new global::System.Data.DataColumn("key_epr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_epr);
+                this.columnnom_epr = new global::System.Data.DataColumn("nom_epr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_epr);
+                this.columndeb_epr = new global::System.Data.DataColumn("deb_epr", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndeb_epr);
+                this.columnfin_epr = new global::System.Data.DataColumn("fin_epr", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnfin_epr);
+                this.columnabrev_epr = new global::System.Data.DataColumn("abrev_epr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnabrev_epr);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_epr}, true));
+                this.columnkey_epr.AllowDBNull = false;
+                this.columnkey_epr.Unique = true;
+                this.columnnom_epr.DefaultValue = ((string)(""));
+                this.columnabrev_epr.DefaultValue = ((string)(""));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow Newtb_epreuveRow() {
+                return ((tb_epreuveRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_epreuveRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_epreuveRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_epreuveRowChanged != null)) {
+                    this.tb_epreuveRowChanged(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_epreuveRowChanging != null)) {
+                    this.tb_epreuveRowChanging(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_epreuveRowDeleted != null)) {
+                    this.tb_epreuveRowDeleted(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_epreuveRowDeleting != null)) {
+                    this.tb_epreuveRowDeleting(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_epreuveRow(tb_epreuveRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_epreuveDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_etapeDataTable : global::System.Data.TypedTableBase<tb_etapeRow> {
+            
+            private global::System.Data.DataColumn columnepr_etp;
+            
+            private global::System.Data.DataColumn columnnum_etp;
+            
+            private global::System.Data.DataColumn columndate_etp;
+            
+            private global::System.Data.DataColumn columnnom_etp;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeDataTable() {
+                this.TableName = "tb_etape";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_etapeDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_etapeDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn epr_etpColumn {
+                get {
+                    return this.columnepr_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn num_etpColumn {
+                get {
+                    return this.columnnum_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn date_etpColumn {
+                get {
+                    return this.columndate_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_etpColumn {
+                get {
+                    return this.columnnom_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow this[int index] {
+                get {
+                    return ((tb_etapeRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_etapeRow(tb_etapeRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow Addtb_etapeRow(tb_epreuveRow parenttb_epreuveRowByFK_tb_epreuve_tb_etape, ushort num_etp, System.DateTime date_etp, string nom_etp) {
+                tb_etapeRow rowtb_etapeRow = ((tb_etapeRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        null,
+                        num_etp,
+                        date_etp,
+                        nom_etp};
+                if ((parenttb_epreuveRowByFK_tb_epreuve_tb_etape != null)) {
+                    columnValuesArray[0] = parenttb_epreuveRowByFK_tb_epreuve_tb_etape[0];
+                }
+                rowtb_etapeRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_etapeRow);
+                return rowtb_etapeRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow FindByepr_etpnum_etp(string epr_etp, ushort num_etp) {
+                return ((tb_etapeRow)(this.Rows.Find(new object[] {
+                            epr_etp,
+                            num_etp})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_etapeDataTable cln = ((tb_etapeDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_etapeDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnepr_etp = base.Columns["epr_etp"];
+                this.columnnum_etp = base.Columns["num_etp"];
+                this.columndate_etp = base.Columns["date_etp"];
+                this.columnnom_etp = base.Columns["nom_etp"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnepr_etp = new global::System.Data.DataColumn("epr_etp", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnepr_etp);
+                this.columnnum_etp = new global::System.Data.DataColumn("num_etp", typeof(ushort), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnum_etp);
+                this.columndate_etp = new global::System.Data.DataColumn("date_etp", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndate_etp);
+                this.columnnom_etp = new global::System.Data.DataColumn("nom_etp", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_etp);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnepr_etp,
+                                this.columnnum_etp}, true));
+                this.columnepr_etp.AllowDBNull = false;
+                this.columnnum_etp.AllowDBNull = false;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow Newtb_etapeRow() {
+                return ((tb_etapeRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_etapeRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_etapeRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_etapeRowChanged != null)) {
+                    this.tb_etapeRowChanged(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_etapeRowChanging != null)) {
+                    this.tb_etapeRowChanging(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_etapeRowDeleted != null)) {
+                    this.tb_etapeRowDeleted(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_etapeRowDeleting != null)) {
+                    this.tb_etapeRowDeleting(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_etapeRow(tb_etapeRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_etapeDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_paysDataTable : global::System.Data.TypedTableBase<tb_paysRow> {
+            
+            private global::System.Data.DataColumn columnkey_pays;
+            
+            private global::System.Data.DataColumn columnnom_pays;
+            
+            private global::System.Data.DataColumn columncode_pays;
+            
+            private global::System.Data.DataColumn columntxchge_pays;
+            
+            private global::System.Data.DataColumn columntva_pays;
+            
+            private global::System.Data.DataColumn columnimg_pays;
+            
+            private global::System.Data.DataColumn columnorder_pays;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysDataTable() {
+                this.TableName = "tb_pays";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_paysDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_paysDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_paysColumn {
+                get {
+                    return this.columnkey_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_paysColumn {
+                get {
+                    return this.columnnom_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn code_paysColumn {
+                get {
+                    return this.columncode_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn txchge_paysColumn {
+                get {
+                    return this.columntxchge_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_paysColumn {
+                get {
+                    return this.columntva_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn img_paysColumn {
+                get {
+                    return this.columnimg_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn order_paysColumn {
+                get {
+                    return this.columnorder_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow this[int index] {
+                get {
+                    return ((tb_paysRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_paysRow(tb_paysRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow Addtb_paysRow(string key_pays, string nom_pays, string code_pays, float txchge_pays, float tva_pays, string img_pays, ushort order_pays) {
+                tb_paysRow rowtb_paysRow = ((tb_paysRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_pays,
+                        nom_pays,
+                        code_pays,
+                        txchge_pays,
+                        tva_pays,
+                        img_pays,
+                        order_pays};
+                rowtb_paysRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_paysRow);
+                return rowtb_paysRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow FindBykey_pays(string key_pays) {
+                return ((tb_paysRow)(this.Rows.Find(new object[] {
+                            key_pays})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_paysDataTable cln = ((tb_paysDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_paysDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_pays = base.Columns["key_pays"];
+                this.columnnom_pays = base.Columns["nom_pays"];
+                this.columncode_pays = base.Columns["code_pays"];
+                this.columntxchge_pays = base.Columns["txchge_pays"];
+                this.columntva_pays = base.Columns["tva_pays"];
+                this.columnimg_pays = base.Columns["img_pays"];
+                this.columnorder_pays = base.Columns["order_pays"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_pays = new global::System.Data.DataColumn("key_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_pays);
+                this.columnnom_pays = new global::System.Data.DataColumn("nom_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_pays);
+                this.columncode_pays = new global::System.Data.DataColumn("code_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncode_pays);
+                this.columntxchge_pays = new global::System.Data.DataColumn("txchge_pays", typeof(float), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntxchge_pays);
+                this.columntva_pays = new global::System.Data.DataColumn("tva_pays", typeof(float), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_pays);
+                this.columnimg_pays = new global::System.Data.DataColumn("img_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnimg_pays);
+                this.columnorder_pays = new global::System.Data.DataColumn("order_pays", typeof(ushort), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnorder_pays);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_pays}, true));
+                this.columnkey_pays.AllowDBNull = false;
+                this.columnkey_pays.Unique = true;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow Newtb_paysRow() {
+                return ((tb_paysRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_paysRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_paysRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_paysRowChanged != null)) {
+                    this.tb_paysRowChanged(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_paysRowChanging != null)) {
+                    this.tb_paysRowChanging(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_paysRowDeleted != null)) {
+                    this.tb_paysRowDeleted(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_paysRowDeleting != null)) {
+                    this.tb_paysRowDeleting(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_paysRow(tb_paysRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_paysDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_stationDataTable : global::System.Data.TypedTableBase<tb_stationRow> {
+            
+            private global::System.Data.DataColumn columnkey_sta;
+            
+            private global::System.Data.DataColumn columnepr_sta;
+            
+            private global::System.Data.DataColumn columnetp_sta;
+            
+            private global::System.Data.DataColumn columndate_sta;
+            
+            private global::System.Data.DataColumn columnnum_sta;
+            
+            private global::System.Data.DataColumn columnnom_sta;
+            
+            private global::System.Data.DataColumn columnadr1_sta;
+            
+            private global::System.Data.DataColumn columnadr2_sta;
+            
+            private global::System.Data.DataColumn columncp_sta;
+            
+            private global::System.Data.DataColumn columnville_sta;
+            
+            private global::System.Data.DataColumn columnpays_sta;
+            
+            private global::System.Data.DataColumn columncontact_sta;
+            
+            private global::System.Data.DataColumn columntel_sta;
+            
+            private global::System.Data.DataColumn columntva_sta;
+            
+            private global::System.Data.DataColumn columndivers_sta;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationDataTable() {
+                this.TableName = "tb_station";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_stationDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_stationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_staColumn {
+                get {
+                    return this.columnkey_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn epr_staColumn {
+                get {
+                    return this.columnepr_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn etp_staColumn {
+                get {
+                    return this.columnetp_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn date_staColumn {
+                get {
+                    return this.columndate_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn num_staColumn {
+                get {
+                    return this.columnnum_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_staColumn {
+                get {
+                    return this.columnnom_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn adr1_staColumn {
+                get {
+                    return this.columnadr1_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn adr2_staColumn {
+                get {
+                    return this.columnadr2_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn cp_staColumn {
+                get {
+                    return this.columncp_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ville_staColumn {
+                get {
+                    return this.columnville_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn pays_staColumn {
+                get {
+                    return this.columnpays_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn contact_staColumn {
+                get {
+                    return this.columncontact_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tel_staColumn {
+                get {
+                    return this.columntel_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_staColumn {
+                get {
+                    return this.columntva_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn divers_staColumn {
+                get {
+                    return this.columndivers_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow this[int index] {
+                get {
+                    return ((tb_stationRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_stationRow(tb_stationRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow Addtb_stationRow(string key_sta, tb_epreuveRow parenttb_epreuveRowByFK_tb_epreuve_tb_station, string etp_sta, System.DateTime date_sta, string num_sta, string nom_sta, string adr1_sta, string adr2_sta, string cp_sta, string ville_sta, string pays_sta, string contact_sta, string tel_sta, string tva_sta, string divers_sta) {
+                tb_stationRow rowtb_stationRow = ((tb_stationRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_sta,
+                        null,
+                        etp_sta,
+                        date_sta,
+                        num_sta,
+                        nom_sta,
+                        adr1_sta,
+                        adr2_sta,
+                        cp_sta,
+                        ville_sta,
+                        pays_sta,
+                        contact_sta,
+                        tel_sta,
+                        tva_sta,
+                        divers_sta};
+                if ((parenttb_epreuveRowByFK_tb_epreuve_tb_station != null)) {
+                    columnValuesArray[1] = parenttb_epreuveRowByFK_tb_epreuve_tb_station[0];
+                }
+                rowtb_stationRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_stationRow);
+                return rowtb_stationRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow FindBykey_sta(string key_sta) {
+                return ((tb_stationRow)(this.Rows.Find(new object[] {
+                            key_sta})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_stationDataTable cln = ((tb_stationDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_stationDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_sta = base.Columns["key_sta"];
+                this.columnepr_sta = base.Columns["epr_sta"];
+                this.columnetp_sta = base.Columns["etp_sta"];
+                this.columndate_sta = base.Columns["date_sta"];
+                this.columnnum_sta = base.Columns["num_sta"];
+                this.columnnom_sta = base.Columns["nom_sta"];
+                this.columnadr1_sta = base.Columns["adr1_sta"];
+                this.columnadr2_sta = base.Columns["adr2_sta"];
+                this.columncp_sta = base.Columns["cp_sta"];
+                this.columnville_sta = base.Columns["ville_sta"];
+                this.columnpays_sta = base.Columns["pays_sta"];
+                this.columncontact_sta = base.Columns["contact_sta"];
+                this.columntel_sta = base.Columns["tel_sta"];
+                this.columntva_sta = base.Columns["tva_sta"];
+                this.columndivers_sta = base.Columns["divers_sta"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_sta = new global::System.Data.DataColumn("key_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_sta);
+                this.columnepr_sta = new global::System.Data.DataColumn("epr_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnepr_sta);
+                this.columnetp_sta = new global::System.Data.DataColumn("etp_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnetp_sta);
+                this.columndate_sta = new global::System.Data.DataColumn("date_sta", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndate_sta);
+                this.columnnum_sta = new global::System.Data.DataColumn("num_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnum_sta);
+                this.columnnom_sta = new global::System.Data.DataColumn("nom_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_sta);
+                this.columnadr1_sta = new global::System.Data.DataColumn("adr1_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnadr1_sta);
+                this.columnadr2_sta = new global::System.Data.DataColumn("adr2_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnadr2_sta);
+                this.columncp_sta = new global::System.Data.DataColumn("cp_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncp_sta);
+                this.columnville_sta = new global::System.Data.DataColumn("ville_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnville_sta);
+                this.columnpays_sta = new global::System.Data.DataColumn("pays_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnpays_sta);
+                this.columncontact_sta = new global::System.Data.DataColumn("contact_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncontact_sta);
+                this.columntel_sta = new global::System.Data.DataColumn("tel_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntel_sta);
+                this.columntva_sta = new global::System.Data.DataColumn("tva_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_sta);
+                this.columndivers_sta = new global::System.Data.DataColumn("divers_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndivers_sta);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_sta}, true));
+                this.columnkey_sta.AllowDBNull = false;
+                this.columnkey_sta.Unique = true;
+                this.columnepr_sta.DefaultValue = ((string)(""));
+                this.columnetp_sta.DefaultValue = ((string)(""));
+                this.columnnum_sta.DefaultValue = ((string)(""));
+                this.columnnom_sta.DefaultValue = ((string)(""));
+                this.columnadr1_sta.DefaultValue = ((string)(""));
+                this.columnadr2_sta.DefaultValue = ((string)(""));
+                this.columncp_sta.DefaultValue = ((string)(""));
+                this.columnville_sta.DefaultValue = ((string)(""));
+                this.columnpays_sta.DefaultValue = ((string)(""));
+                this.columncontact_sta.DefaultValue = ((string)(""));
+                this.columntel_sta.DefaultValue = ((string)(""));
+                this.columntva_sta.DefaultValue = ((string)(""));
+                this.columndivers_sta.DefaultValue = ((string)(""));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow Newtb_stationRow() {
+                return ((tb_stationRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_stationRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_stationRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_stationRowChanged != null)) {
+                    this.tb_stationRowChanged(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_stationRowChanging != null)) {
+                    this.tb_stationRowChanging(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_stationRowDeleted != null)) {
+                    this.tb_stationRowDeleted(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_stationRowDeleting != null)) {
+                    this.tb_stationRowDeleting(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_stationRow(tb_stationRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_stationDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_familleDataTable : global::System.Data.TypedTableBase<tb_familleRow> {
+            
+            private global::System.Data.DataColumn columnkey_fam;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleDataTable() {
+                this.TableName = "tb_famille";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_familleDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_familleDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_famColumn {
+                get {
+                    return this.columnkey_fam;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow this[int index] {
+                get {
+                    return ((tb_familleRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_familleRow(tb_familleRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow Addtb_familleRow(string key_fam) {
+                tb_familleRow rowtb_familleRow = ((tb_familleRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_fam};
+                rowtb_familleRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_familleRow);
+                return rowtb_familleRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow FindBykey_fam(string key_fam) {
+                return ((tb_familleRow)(this.Rows.Find(new object[] {
+                            key_fam})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_familleDataTable cln = ((tb_familleDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_familleDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_fam = base.Columns["key_fam"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_fam = new global::System.Data.DataColumn("key_fam", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_fam);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_fam}, true));
+                this.columnkey_fam.AllowDBNull = false;
+                this.columnkey_fam.Unique = true;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow Newtb_familleRow() {
+                return ((tb_familleRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_familleRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_familleRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_familleRowChanged != null)) {
+                    this.tb_familleRowChanged(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_familleRowChanging != null)) {
+                    this.tb_familleRowChanging(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_familleRowDeleted != null)) {
+                    this.tb_familleRowDeleted(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_familleRowDeleting != null)) {
+                    this.tb_familleRowDeleting(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_familleRow(tb_familleRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_familleDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_prodDataTable : global::System.Data.TypedTableBase<tb_prodRow> {
+            
+            private global::System.Data.DataColumn columnkey_prod;
+            
+            private global::System.Data.DataColumn columnlib_prod;
+            
+            private global::System.Data.DataColumn columntype_prod;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodDataTable() {
+                this.TableName = "tb_prod";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prodDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_prodDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_prodColumn {
+                get {
+                    return this.columnkey_prod;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn lib_prodColumn {
+                get {
+                    return this.columnlib_prod;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn type_prodColumn {
+                get {
+                    return this.columntype_prod;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow this[int index] {
+                get {
+                    return ((tb_prodRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_prodRow(tb_prodRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow Addtb_prodRow(string key_prod, string lib_prod, string type_prod) {
+                tb_prodRow rowtb_prodRow = ((tb_prodRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_prod,
+                        lib_prod,
+                        type_prod};
+                rowtb_prodRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_prodRow);
+                return rowtb_prodRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow FindBykey_prod(string key_prod) {
+                return ((tb_prodRow)(this.Rows.Find(new object[] {
+                            key_prod})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_prodDataTable cln = ((tb_prodDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_prodDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_prod = base.Columns["key_prod"];
+                this.columnlib_prod = base.Columns["lib_prod"];
+                this.columntype_prod = base.Columns["type_prod"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_prod = new global::System.Data.DataColumn("key_prod", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_prod);
+                this.columnlib_prod = new global::System.Data.DataColumn("lib_prod", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnlib_prod);
+                this.columntype_prod = new global::System.Data.DataColumn("type_prod", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntype_prod);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_prod}, true));
+                this.columnkey_prod.AllowDBNull = false;
+                this.columnkey_prod.Unique = true;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow Newtb_prodRow() {
+                return ((tb_prodRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_prodRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_prodRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_prodRowChanged != null)) {
+                    this.tb_prodRowChanged(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_prodRowChanging != null)) {
+                    this.tb_prodRowChanging(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_prodRowDeleted != null)) {
+                    this.tb_prodRowDeleted(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_prodRowDeleting != null)) {
+                    this.tb_prodRowDeleting(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_prodRow(tb_prodRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_prodDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_prestaDataTable : global::System.Data.TypedTableBase<tb_prestaRow> {
+            
+            private global::System.Data.DataColumn columnsta_pr;
+            
+            private global::System.Data.DataColumn columnprod_pr;
+            
+            private global::System.Data.DataColumn columnkind_pr;
+            
+            private global::System.Data.DataColumn columnunite_pr;
+            
+            private global::System.Data.DataColumn columnpu_pr;
+            
+            private global::System.Data.DataColumn columntva_pr;
+            
+            private global::System.Data.DataColumn columnttc_pr;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaDataTable() {
+                this.TableName = "tb_presta";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prestaDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_prestaDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn sta_prColumn {
+                get {
+                    return this.columnsta_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn prod_prColumn {
+                get {
+                    return this.columnprod_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn kind_prColumn {
+                get {
+                    return this.columnkind_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn unite_prColumn {
+                get {
+                    return this.columnunite_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn pu_prColumn {
+                get {
+                    return this.columnpu_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_prColumn {
+                get {
+                    return this.columntva_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ttc_prColumn {
+                get {
+                    return this.columnttc_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow this[int index] {
+                get {
+                    return ((tb_prestaRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_prestaRow(tb_prestaRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow Addtb_prestaRow(tb_stationRow parenttb_stationRowByFK_tb_station_tb_presta, tb_prodRow parenttb_prodRowBytb_prod_tb_presta, string kind_pr, string unite_pr, decimal pu_pr, decimal tva_pr, decimal ttc_pr) {
+                tb_prestaRow rowtb_prestaRow = ((tb_prestaRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        null,
+                        null,
+                        kind_pr,
+                        unite_pr,
+                        pu_pr,
+                        tva_pr,
+                        ttc_pr};
+                if ((parenttb_stationRowByFK_tb_station_tb_presta != null)) {
+                    columnValuesArray[0] = parenttb_stationRowByFK_tb_station_tb_presta[0];
+                }
+                if ((parenttb_prodRowBytb_prod_tb_presta != null)) {
+                    columnValuesArray[1] = parenttb_prodRowBytb_prod_tb_presta[0];
+                }
+                rowtb_prestaRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_prestaRow);
+                return rowtb_prestaRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow FindBysta_prprod_pr(string sta_pr, string prod_pr) {
+                return ((tb_prestaRow)(this.Rows.Find(new object[] {
+                            sta_pr,
+                            prod_pr})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_prestaDataTable cln = ((tb_prestaDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_prestaDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnsta_pr = base.Columns["sta_pr"];
+                this.columnprod_pr = base.Columns["prod_pr"];
+                this.columnkind_pr = base.Columns["kind_pr"];
+                this.columnunite_pr = base.Columns["unite_pr"];
+                this.columnpu_pr = base.Columns["pu_pr"];
+                this.columntva_pr = base.Columns["tva_pr"];
+                this.columnttc_pr = base.Columns["ttc_pr"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnsta_pr = new global::System.Data.DataColumn("sta_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnsta_pr);
+                this.columnprod_pr = new global::System.Data.DataColumn("prod_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnprod_pr);
+                this.columnkind_pr = new global::System.Data.DataColumn("kind_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkind_pr);
+                this.columnunite_pr = new global::System.Data.DataColumn("unite_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnunite_pr);
+                this.columnpu_pr = new global::System.Data.DataColumn("pu_pr", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnpu_pr);
+                this.columntva_pr = new global::System.Data.DataColumn("tva_pr", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_pr);
+                this.columnttc_pr = new global::System.Data.DataColumn("ttc_pr", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnttc_pr);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnsta_pr,
+                                this.columnprod_pr}, true));
+                this.columnsta_pr.AllowDBNull = false;
+                this.columnprod_pr.AllowDBNull = false;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow Newtb_prestaRow() {
+                return ((tb_prestaRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_prestaRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_prestaRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_prestaRowChanged != null)) {
+                    this.tb_prestaRowChanged(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_prestaRowChanging != null)) {
+                    this.tb_prestaRowChanging(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_prestaRowDeleted != null)) {
+                    this.tb_prestaRowDeleted(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_prestaRowDeleting != null)) {
+                    this.tb_prestaRowDeleting(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_prestaRow(tb_prestaRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_prestaDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_venteDataTable : global::System.Data.TypedTableBase<tb_venteRow> {
+            
+            private global::System.Data.DataColumn columnepreuve_vt;
+            
+            private global::System.Data.DataColumn columnstation_vt;
+            
+            private global::System.Data.DataColumn columnvehi_vt;
+            
+            private global::System.Data.DataColumn columnprod_vt;
+            
+            private global::System.Data.DataColumn columndate_vt;
+            
+            private global::System.Data.DataColumn columnqtt_vt;
+            
+            private global::System.Data.DataColumn columnpu_vt;
+            
+            private global::System.Data.DataColumn columnht_vt;
+            
+            private global::System.Data.DataColumn columntva_vt;
+            
+            private global::System.Data.DataColumn columnttc_vt;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteDataTable() {
+                this.TableName = "tb_vente";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_venteDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_venteDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn epreuve_vtColumn {
+                get {
+                    return this.columnepreuve_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn station_vtColumn {
+                get {
+                    return this.columnstation_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn vehi_vtColumn {
+                get {
+                    return this.columnvehi_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn prod_vtColumn {
+                get {
+                    return this.columnprod_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn date_vtColumn {
+                get {
+                    return this.columndate_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn qtt_vtColumn {
+                get {
+                    return this.columnqtt_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn pu_vtColumn {
+                get {
+                    return this.columnpu_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ht_vtColumn {
+                get {
+                    return this.columnht_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_vtColumn {
+                get {
+                    return this.columntva_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ttc_vtColumn {
+                get {
+                    return this.columnttc_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow this[int index] {
+                get {
+                    return ((tb_venteRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_venteRow(tb_venteRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow Addtb_venteRow(tb_epreuveRow parenttb_epreuveRowByFK_tb_epreuve_tb_vente, tb_stationRow parenttb_stationRowBytb_station_tb_vente, tb_vehiRow parenttb_vehiRowBytb_vehi_tb_vente, tb_prodRow parenttb_prodRowByFK_tb_prod_tb_vente, System.DateTime date_vt, decimal qtt_vt, decimal pu_vt, decimal ht_vt, decimal tva_vt, decimal ttc_vt) {
+                tb_venteRow rowtb_venteRow = ((tb_venteRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        null,
+                        null,
+                        null,
+                        null,
+                        date_vt,
+                        qtt_vt,
+                        pu_vt,
+                        ht_vt,
+                        tva_vt,
+                        ttc_vt};
+                if ((parenttb_epreuveRowByFK_tb_epreuve_tb_vente != null)) {
+                    columnValuesArray[0] = parenttb_epreuveRowByFK_tb_epreuve_tb_vente[0];
+                }
+                if ((parenttb_stationRowBytb_station_tb_vente != null)) {
+                    columnValuesArray[1] = parenttb_stationRowBytb_station_tb_vente[0];
+                }
+                if ((parenttb_vehiRowBytb_vehi_tb_vente != null)) {
+                    columnValuesArray[2] = parenttb_vehiRowBytb_vehi_tb_vente[0];
+                }
+                if ((parenttb_prodRowByFK_tb_prod_tb_vente != null)) {
+                    columnValuesArray[3] = parenttb_prodRowByFK_tb_prod_tb_vente[0];
+                }
+                rowtb_venteRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_venteRow);
+                return rowtb_venteRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow FindByepreuve_vtstation_vtvehi_vtprod_vtdate_vt(string epreuve_vt, string station_vt, string vehi_vt, string prod_vt, System.DateTime date_vt) {
+                return ((tb_venteRow)(this.Rows.Find(new object[] {
+                            epreuve_vt,
+                            station_vt,
+                            vehi_vt,
+                            prod_vt,
+                            date_vt})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_venteDataTable cln = ((tb_venteDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_venteDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnepreuve_vt = base.Columns["epreuve_vt"];
+                this.columnstation_vt = base.Columns["station_vt"];
+                this.columnvehi_vt = base.Columns["vehi_vt"];
+                this.columnprod_vt = base.Columns["prod_vt"];
+                this.columndate_vt = base.Columns["date_vt"];
+                this.columnqtt_vt = base.Columns["qtt_vt"];
+                this.columnpu_vt = base.Columns["pu_vt"];
+                this.columnht_vt = base.Columns["ht_vt"];
+                this.columntva_vt = base.Columns["tva_vt"];
+                this.columnttc_vt = base.Columns["ttc_vt"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnepreuve_vt = new global::System.Data.DataColumn("epreuve_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnepreuve_vt);
+                this.columnstation_vt = new global::System.Data.DataColumn("station_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnstation_vt);
+                this.columnvehi_vt = new global::System.Data.DataColumn("vehi_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnvehi_vt);
+                this.columnprod_vt = new global::System.Data.DataColumn("prod_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnprod_vt);
+                this.columndate_vt = new global::System.Data.DataColumn("date_vt", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndate_vt);
+                this.columnqtt_vt = new global::System.Data.DataColumn("qtt_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnqtt_vt);
+                this.columnpu_vt = new global::System.Data.DataColumn("pu_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnpu_vt);
+                this.columnht_vt = new global::System.Data.DataColumn("ht_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnht_vt);
+                this.columntva_vt = new global::System.Data.DataColumn("tva_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_vt);
+                this.columnttc_vt = new global::System.Data.DataColumn("ttc_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnttc_vt);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnepreuve_vt,
+                                this.columnstation_vt,
+                                this.columnvehi_vt,
+                                this.columnprod_vt,
+                                this.columndate_vt}, true));
+                this.columnepreuve_vt.AllowDBNull = false;
+                this.columnstation_vt.AllowDBNull = false;
+                this.columnvehi_vt.AllowDBNull = false;
+                this.columnprod_vt.AllowDBNull = false;
+                this.columndate_vt.AllowDBNull = false;
+                this.columndate_vt.DateTimeMode = global::System.Data.DataSetDateTime.Utc;
+                this.columnht_vt.DefaultValue = ((decimal)(0m));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow Newtb_venteRow() {
+                return ((tb_venteRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_venteRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_venteRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_venteRowChanged != null)) {
+                    this.tb_venteRowChanged(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_venteRowChanging != null)) {
+                    this.tb_venteRowChanging(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_venteRowDeleted != null)) {
+                    this.tb_venteRowDeleted(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_venteRowDeleting != null)) {
+                    this.tb_venteRowDeleting(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_venteRow(tb_venteRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_venteDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_vehiRow : global::System.Data.DataRow {
+            
+            private tb_vehiDataTable tabletb_vehi;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_vehiRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_vehi = ((tb_vehiDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_vehi {
+                get {
+                    return ((string)(this[this.tabletb_vehi.key_vehiColumn]));
+                }
+                set {
+                    this[this.tabletb_vehi.key_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public ushort num_vehi {
+                get {
+                    try {
+                        return ((ushort)(this[this.tabletb_vehi.num_vehiColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'num_vehi\' dans la table \'tb_vehi\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.num_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string cmpnum_vehi {
+                get {
+                    if (this.Iscmpnum_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.cmpnum_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.cmpnum_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string immat_vehi {
+                get {
+                    if (this.Isimmat_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.immat_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.immat_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string ope_vehi {
+                get {
+                    if (this.Isope_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.ope_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.ope_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string type_vehi {
+                get {
+                    if (this.Istype_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.type_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.type_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string cond_vehi {
+                get {
+                    if (this.Iscond_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.cond_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.cond_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string famille_vehi {
+                get {
+                    if (this.Isfamille_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.famille_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.famille_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string carbu_vehi {
+                get {
+                    if (this.Iscarbu_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.carbu_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.carbu_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string kmdep_vehi {
+                get {
+                    if (this.Iskmdep_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.kmdep_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.kmdep_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string kmarr_vehi {
+                get {
+                    if (this.Iskmarr_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.kmarr_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.kmarr_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string categ_vehi {
+                get {
+                    if (this.Iscateg_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.categ_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.categ_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string sort1_vehi {
+                get {
+                    if (this.Issort1_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.sort1_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.sort1_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnum_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.num_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnum_vehiNull() {
+                this[this.tabletb_vehi.num_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscmpnum_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.cmpnum_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcmpnum_vehiNull() {
+                this[this.tabletb_vehi.cmpnum_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isimmat_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.immat_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setimmat_vehiNull() {
+                this[this.tabletb_vehi.immat_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isope_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.ope_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setope_vehiNull() {
+                this[this.tabletb_vehi.ope_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istype_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.type_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settype_vehiNull() {
+                this[this.tabletb_vehi.type_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscond_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.cond_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcond_vehiNull() {
+                this[this.tabletb_vehi.cond_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isfamille_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.famille_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setfamille_vehiNull() {
+                this[this.tabletb_vehi.famille_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscarbu_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.carbu_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcarbu_vehiNull() {
+                this[this.tabletb_vehi.carbu_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iskmdep_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.kmdep_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setkmdep_vehiNull() {
+                this[this.tabletb_vehi.kmdep_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iskmarr_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.kmarr_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setkmarr_vehiNull() {
+                this[this.tabletb_vehi.kmarr_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscateg_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.categ_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcateg_vehiNull() {
+                this[this.tabletb_vehi.categ_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Issort1_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.sort1_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setsort1_vehiNull() {
+                this[this.tabletb_vehi.sort1_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow[] Gettb_venteRows() {
+                if ((this.Table.ChildRelations["tb_vehi_tb_vente"] == null)) {
+                    return new tb_venteRow[0];
+                }
+                else {
+                    return ((tb_venteRow[])(base.GetChildRows(this.Table.ChildRelations["tb_vehi_tb_vente"])));
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_epreuveRow : global::System.Data.DataRow {
+            
+            private tb_epreuveDataTable tabletb_epreuve;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_epreuveRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_epreuve = ((tb_epreuveDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_epr {
+                get {
+                    return ((string)(this[this.tabletb_epreuve.key_eprColumn]));
+                }
+                set {
+                    this[this.tabletb_epreuve.key_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_epr {
+                get {
+                    if (this.Isnom_eprNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_epreuve.nom_eprColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.nom_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime deb_epr {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_epreuve.deb_eprColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'deb_epr\' dans la table \'tb_epreuve\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.deb_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime fin_epr {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_epreuve.fin_eprColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'fin_epr\' dans la table \'tb_epreuve\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.fin_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string abrev_epr {
+                get {
+                    if (this.Isabrev_eprNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_epreuve.abrev_eprColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.abrev_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.nom_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_eprNull() {
+                this[this.tabletb_epreuve.nom_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdeb_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.deb_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdeb_eprNull() {
+                this[this.tabletb_epreuve.deb_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isfin_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.fin_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setfin_eprNull() {
+                this[this.tabletb_epreuve.fin_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isabrev_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.abrev_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setabrev_eprNull() {
+                this[this.tabletb_epreuve.abrev_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow[] Gettb_venteRows() {
+                if ((this.Table.ChildRelations["FK_tb_epreuve_tb_vente"] == null)) {
+                    return new tb_venteRow[0];
+                }
+                else {
+                    return ((tb_venteRow[])(base.GetChildRows(this.Table.ChildRelations["FK_tb_epreuve_tb_vente"])));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow[] Gettb_stationRows() {
+                if ((this.Table.ChildRelations["FK_tb_epreuve_tb_station"] == null)) {
+                    return new tb_stationRow[0];
+                }
+                else {
+                    return ((tb_stationRow[])(base.GetChildRows(this.Table.ChildRelations["FK_tb_epreuve_tb_station"])));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow[] Gettb_etapeRows() {
+                if ((this.Table.ChildRelations["FK_tb_epreuve_tb_etape"] == null)) {
+                    return new tb_etapeRow[0];
+                }
+                else {
+                    return ((tb_etapeRow[])(base.GetChildRows(this.Table.ChildRelations["FK_tb_epreuve_tb_etape"])));
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_etapeRow : global::System.Data.DataRow {
+            
+            private tb_etapeDataTable tabletb_etape;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_etapeRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_etape = ((tb_etapeDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string epr_etp {
+                get {
+                    return ((string)(this[this.tabletb_etape.epr_etpColumn]));
+                }
+                set {
+                    this[this.tabletb_etape.epr_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public ushort num_etp {
+                get {
+                    return ((ushort)(this[this.tabletb_etape.num_etpColumn]));
+                }
+                set {
+                    this[this.tabletb_etape.num_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime date_etp {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_etape.date_etpColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'date_etp\' dans la table \'tb_etape\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_etape.date_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_etp {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_etape.nom_etpColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'nom_etp\' dans la table \'tb_etape\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_etape.nom_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow tb_epreuveRow {
+                get {
+                    return ((tb_epreuveRow)(this.GetParentRow(this.Table.ParentRelations["FK_tb_epreuve_tb_etape"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["FK_tb_epreuve_tb_etape"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdate_etpNull() {
+                return this.IsNull(this.tabletb_etape.date_etpColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdate_etpNull() {
+                this[this.tabletb_etape.date_etpColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_etpNull() {
+                return this.IsNull(this.tabletb_etape.nom_etpColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_etpNull() {
+                this[this.tabletb_etape.nom_etpColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_paysRow : global::System.Data.DataRow {
+            
+            private tb_paysDataTable tabletb_pays;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_paysRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_pays = ((tb_paysDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_pays {
+                get {
+                    return ((string)(this[this.tabletb_pays.key_paysColumn]));
+                }
+                set {
+                    this[this.tabletb_pays.key_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_pays {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_pays.nom_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'nom_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.nom_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string code_pays {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_pays.code_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'code_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.code_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public float txchge_pays {
+                get {
+                    try {
+                        return ((float)(this[this.tabletb_pays.txchge_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'txchge_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.txchge_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public float tva_pays {
+                get {
+                    try {
+                        return ((float)(this[this.tabletb_pays.tva_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'tva_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.tva_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string img_pays {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_pays.img_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'img_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.img_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public ushort order_pays {
+                get {
+                    try {
+                        return ((ushort)(this[this.tabletb_pays.order_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'order_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.order_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_paysNull() {
+                return this.IsNull(this.tabletb_pays.nom_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_paysNull() {
+                this[this.tabletb_pays.nom_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscode_paysNull() {
+                return this.IsNull(this.tabletb_pays.code_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcode_paysNull() {
+                this[this.tabletb_pays.code_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istxchge_paysNull() {
+                return this.IsNull(this.tabletb_pays.txchge_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settxchge_paysNull() {
+                this[this.tabletb_pays.txchge_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_paysNull() {
+                return this.IsNull(this.tabletb_pays.tva_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_paysNull() {
+                this[this.tabletb_pays.tva_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isimg_paysNull() {
+                return this.IsNull(this.tabletb_pays.img_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setimg_paysNull() {
+                this[this.tabletb_pays.img_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isorder_paysNull() {
+                return this.IsNull(this.tabletb_pays.order_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setorder_paysNull() {
+                this[this.tabletb_pays.order_paysColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_stationRow : global::System.Data.DataRow {
+            
+            private tb_stationDataTable tabletb_station;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_stationRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_station = ((tb_stationDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_sta {
+                get {
+                    return ((string)(this[this.tabletb_station.key_staColumn]));
+                }
+                set {
+                    this[this.tabletb_station.key_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string epr_sta {
+                get {
+                    if (this.Isepr_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.epr_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.epr_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string etp_sta {
+                get {
+                    if (this.Isetp_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.etp_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.etp_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime date_sta {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_station.date_staColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'date_sta\' dans la table \'tb_station\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_station.date_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string num_sta {
+                get {
+                    if (this.Isnum_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.num_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.num_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_sta {
+                get {
+                    if (this.Isnom_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.nom_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.nom_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string adr1_sta {
+                get {
+                    if (this.Isadr1_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.adr1_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.adr1_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string adr2_sta {
+                get {
+                    if (this.Isadr2_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.adr2_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.adr2_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string cp_sta {
+                get {
+                    if (this.Iscp_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.cp_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.cp_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string ville_sta {
+                get {
+                    if (this.Isville_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.ville_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.ville_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string pays_sta {
+                get {
+                    if (this.Ispays_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.pays_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.pays_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string contact_sta {
+                get {
+                    if (this.Iscontact_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.contact_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.contact_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string tel_sta {
+                get {
+                    if (this.Istel_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.tel_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.tel_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string tva_sta {
+                get {
+                    if (this.Istva_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.tva_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.tva_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string divers_sta {
+                get {
+                    if (this.Isdivers_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.divers_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.divers_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow tb_epreuveRow {
+                get {
+                    return ((tb_epreuveRow)(this.GetParentRow(this.Table.ParentRelations["FK_tb_epreuve_tb_station"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["FK_tb_epreuve_tb_station"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isepr_staNull() {
+                return this.IsNull(this.tabletb_station.epr_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setepr_staNull() {
+                this[this.tabletb_station.epr_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isetp_staNull() {
+                return this.IsNull(this.tabletb_station.etp_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setetp_staNull() {
+                this[this.tabletb_station.etp_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdate_staNull() {
+                return this.IsNull(this.tabletb_station.date_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdate_staNull() {
+                this[this.tabletb_station.date_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnum_staNull() {
+                return this.IsNull(this.tabletb_station.num_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnum_staNull() {
+                this[this.tabletb_station.num_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_staNull() {
+                return this.IsNull(this.tabletb_station.nom_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_staNull() {
+                this[this.tabletb_station.nom_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isadr1_staNull() {
+                return this.IsNull(this.tabletb_station.adr1_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setadr1_staNull() {
+                this[this.tabletb_station.adr1_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isadr2_staNull() {
+                return this.IsNull(this.tabletb_station.adr2_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setadr2_staNull() {
+                this[this.tabletb_station.adr2_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscp_staNull() {
+                return this.IsNull(this.tabletb_station.cp_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcp_staNull() {
+                this[this.tabletb_station.cp_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isville_staNull() {
+                return this.IsNull(this.tabletb_station.ville_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setville_staNull() {
+                this[this.tabletb_station.ville_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Ispays_staNull() {
+                return this.IsNull(this.tabletb_station.pays_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setpays_staNull() {
+                this[this.tabletb_station.pays_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscontact_staNull() {
+                return this.IsNull(this.tabletb_station.contact_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcontact_staNull() {
+                this[this.tabletb_station.contact_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istel_staNull() {
+                return this.IsNull(this.tabletb_station.tel_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settel_staNull() {
+                this[this.tabletb_station.tel_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_staNull() {
+                return this.IsNull(this.tabletb_station.tva_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_staNull() {
+                this[this.tabletb_station.tva_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdivers_staNull() {
+                return this.IsNull(this.tabletb_station.divers_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdivers_staNull() {
+                this[this.tabletb_station.divers_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow[] Gettb_prestaRows() {
+                if ((this.Table.ChildRelations["FK_tb_station_tb_presta"] == null)) {
+                    return new tb_prestaRow[0];
+                }
+                else {
+                    return ((tb_prestaRow[])(base.GetChildRows(this.Table.ChildRelations["FK_tb_station_tb_presta"])));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow[] Gettb_venteRows() {
+                if ((this.Table.ChildRelations["tb_station_tb_vente"] == null)) {
+                    return new tb_venteRow[0];
+                }
+                else {
+                    return ((tb_venteRow[])(base.GetChildRows(this.Table.ChildRelations["tb_station_tb_vente"])));
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_familleRow : global::System.Data.DataRow {
+            
+            private tb_familleDataTable tabletb_famille;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_familleRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_famille = ((tb_familleDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_fam {
+                get {
+                    return ((string)(this[this.tabletb_famille.key_famColumn]));
+                }
+                set {
+                    this[this.tabletb_famille.key_famColumn] = value;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_prodRow : global::System.Data.DataRow {
+            
+            private tb_prodDataTable tabletb_prod;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prodRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_prod = ((tb_prodDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_prod {
+                get {
+                    return ((string)(this[this.tabletb_prod.key_prodColumn]));
+                }
+                set {
+                    this[this.tabletb_prod.key_prodColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string lib_prod {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_prod.lib_prodColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'lib_prod\' dans la table \'tb_prod\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_prod.lib_prodColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string type_prod {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_prod.type_prodColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'type_prod\' dans la table \'tb_prod\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_prod.type_prodColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Islib_prodNull() {
+                return this.IsNull(this.tabletb_prod.lib_prodColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setlib_prodNull() {
+                this[this.tabletb_prod.lib_prodColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istype_prodNull() {
+                return this.IsNull(this.tabletb_prod.type_prodColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settype_prodNull() {
+                this[this.tabletb_prod.type_prodColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow[] Gettb_venteRows() {
+                if ((this.Table.ChildRelations["FK_tb_prod_tb_vente"] == null)) {
+                    return new tb_venteRow[0];
+                }
+                else {
+                    return ((tb_venteRow[])(base.GetChildRows(this.Table.ChildRelations["FK_tb_prod_tb_vente"])));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow[] Gettb_prestaRows() {
+                if ((this.Table.ChildRelations["tb_prod_tb_presta"] == null)) {
+                    return new tb_prestaRow[0];
+                }
+                else {
+                    return ((tb_prestaRow[])(base.GetChildRows(this.Table.ChildRelations["tb_prod_tb_presta"])));
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_prestaRow : global::System.Data.DataRow {
+            
+            private tb_prestaDataTable tabletb_presta;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prestaRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_presta = ((tb_prestaDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string sta_pr {
+                get {
+                    return ((string)(this[this.tabletb_presta.sta_prColumn]));
+                }
+                set {
+                    this[this.tabletb_presta.sta_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string prod_pr {
+                get {
+                    return ((string)(this[this.tabletb_presta.prod_prColumn]));
+                }
+                set {
+                    this[this.tabletb_presta.prod_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string kind_pr {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_presta.kind_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'kind_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.kind_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string unite_pr {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_presta.unite_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'unite_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.unite_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal pu_pr {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_presta.pu_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'pu_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.pu_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal tva_pr {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_presta.tva_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'tva_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.tva_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal ttc_pr {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_presta.ttc_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'ttc_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.ttc_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow tb_stationRow {
+                get {
+                    return ((tb_stationRow)(this.GetParentRow(this.Table.ParentRelations["FK_tb_station_tb_presta"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["FK_tb_station_tb_presta"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow tb_prodRow {
+                get {
+                    return ((tb_prodRow)(this.GetParentRow(this.Table.ParentRelations["tb_prod_tb_presta"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["tb_prod_tb_presta"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iskind_prNull() {
+                return this.IsNull(this.tabletb_presta.kind_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setkind_prNull() {
+                this[this.tabletb_presta.kind_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isunite_prNull() {
+                return this.IsNull(this.tabletb_presta.unite_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setunite_prNull() {
+                this[this.tabletb_presta.unite_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Ispu_prNull() {
+                return this.IsNull(this.tabletb_presta.pu_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setpu_prNull() {
+                this[this.tabletb_presta.pu_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_prNull() {
+                return this.IsNull(this.tabletb_presta.tva_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_prNull() {
+                this[this.tabletb_presta.tva_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isttc_prNull() {
+                return this.IsNull(this.tabletb_presta.ttc_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setttc_prNull() {
+                this[this.tabletb_presta.ttc_prColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_venteRow : global::System.Data.DataRow {
+            
+            private tb_venteDataTable tabletb_vente;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_venteRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_vente = ((tb_venteDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string epreuve_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.epreuve_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.epreuve_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string station_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.station_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.station_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string vehi_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.vehi_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.vehi_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string prod_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.prod_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.prod_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime date_vt {
+                get {
+                    return ((global::System.DateTime)(this[this.tabletb_vente.date_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.date_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal qtt_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.qtt_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'qtt_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.qtt_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal pu_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.pu_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'pu_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.pu_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal ht_vt {
+                get {
+                    if (this.Isht_vtNull()) {
+                        return 0m;
+                    }
+                    else {
+                        return ((decimal)(this[this.tabletb_vente.ht_vtColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.ht_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal tva_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.tva_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'tva_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.tva_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal ttc_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.ttc_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'ttc_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.ttc_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow tb_prodRow {
+                get {
+                    return ((tb_prodRow)(this.GetParentRow(this.Table.ParentRelations["FK_tb_prod_tb_vente"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["FK_tb_prod_tb_vente"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow tb_epreuveRow {
+                get {
+                    return ((tb_epreuveRow)(this.GetParentRow(this.Table.ParentRelations["FK_tb_epreuve_tb_vente"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["FK_tb_epreuve_tb_vente"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow tb_vehiRow {
+                get {
+                    return ((tb_vehiRow)(this.GetParentRow(this.Table.ParentRelations["tb_vehi_tb_vente"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["tb_vehi_tb_vente"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow tb_stationRow {
+                get {
+                    return ((tb_stationRow)(this.GetParentRow(this.Table.ParentRelations["tb_station_tb_vente"])));
+                }
+                set {
+                    this.SetParentRow(value, this.Table.ParentRelations["tb_station_tb_vente"]);
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isqtt_vtNull() {
+                return this.IsNull(this.tabletb_vente.qtt_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setqtt_vtNull() {
+                this[this.tabletb_vente.qtt_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Ispu_vtNull() {
+                return this.IsNull(this.tabletb_vente.pu_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setpu_vtNull() {
+                this[this.tabletb_vente.pu_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isht_vtNull() {
+                return this.IsNull(this.tabletb_vente.ht_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setht_vtNull() {
+                this[this.tabletb_vente.ht_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_vtNull() {
+                return this.IsNull(this.tabletb_vente.tva_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_vtNull() {
+                this[this.tabletb_vente.tva_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isttc_vtNull() {
+                return this.IsNull(this.tabletb_vente.ttc_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setttc_vtNull() {
+                this[this.tabletb_vente.ttc_vtColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_vehiRowChangeEvent : global::System.EventArgs {
+            
+            private tb_vehiRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRowChangeEvent(tb_vehiRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_epreuveRowChangeEvent : global::System.EventArgs {
+            
+            private tb_epreuveRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRowChangeEvent(tb_epreuveRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_etapeRowChangeEvent : global::System.EventArgs {
+            
+            private tb_etapeRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRowChangeEvent(tb_etapeRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_paysRowChangeEvent : global::System.EventArgs {
+            
+            private tb_paysRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRowChangeEvent(tb_paysRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_stationRowChangeEvent : global::System.EventArgs {
+            
+            private tb_stationRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRowChangeEvent(tb_stationRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_familleRowChangeEvent : global::System.EventArgs {
+            
+            private tb_familleRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRowChangeEvent(tb_familleRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_prodRowChangeEvent : global::System.EventArgs {
+            
+            private tb_prodRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRowChangeEvent(tb_prodRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_prestaRowChangeEvent : global::System.EventArgs {
+            
+            private tb_prestaRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRowChangeEvent(tb_prestaRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_venteRowChangeEvent : global::System.EventArgs {
+            
+            private tb_venteRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRowChangeEvent(tb_venteRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+    }
+}
+
+#pragma warning restore 1591

+ 39 - 0
Convert/DSConvert.cs

@@ -0,0 +1,39 @@
+namespace Convert
+{
+
+
+    public partial class DataSet1
+    {
+        partial class tb_venteDataTable
+        {
+        }
+
+        partial class tb_prestaDataTable
+        {
+        }
+
+        partial class tb_etapeDataTable
+        {
+        }
+
+        partial class tb_prodDataTable
+        {
+        }
+
+        partial class tb_familleDataTable
+        {
+        }
+
+        partial class tb_stationDataTable
+        {
+        }
+
+        partial class tb_epreuveDataTable
+        {
+        }
+
+        partial class tb_vehiDataTable
+        {
+        }
+    }
+}

+ 9 - 0
Convert/DSConvert.xsc

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--<autogenerated>
+     This code was generated by a tool.
+     Changes to this file may cause incorrect behavior and will be lost if
+     the code is regenerated.
+</autogenerated>-->
+<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+  <TableUISettings />
+</DataSetUISetting>

+ 212 - 0
Convert/DSConvert.xsd

@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xs:schema id="DataSet1" targetNamespace="http://tempuri.org/DataSet1.xsd" xmlns:mstns="http://tempuri.org/DataSet1.xsd" xmlns="http://tempuri.org/DataSet1.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
+  <xs:annotation>
+    <xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
+      <DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+        <Connections />
+        <Tables />
+        <Sources />
+      </DataSource>
+    </xs:appinfo>
+  </xs:annotation>
+  <xs:element name="DataSet1" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_UserDSName="DataSet1" msprop:Generator_DataSetName="DataSet1">
+    <xs:complexType>
+      <xs:choice minOccurs="0" maxOccurs="unbounded">
+        <xs:element name="tb_vehi" msprop:Generator_RowEvHandlerName="tb_vehiRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_vehiRowDeleted" msprop:Generator_RowDeletingName="tb_vehiRowDeleting" msprop:Generator_RowEvArgName="tb_vehiRowChangeEvent" msprop:Generator_TablePropName="tb_vehi" msprop:Generator_RowChangedName="tb_vehiRowChanged" msprop:Generator_RowChangingName="tb_vehiRowChanging" msprop:Generator_TableClassName="tb_vehiDataTable" msprop:Generator_RowClassName="tb_vehiRow" msprop:Generator_TableVarName="tabletb_vehi" msprop:Generator_UserTableName="tb_vehi">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_vehi" msprop:Generator_ColumnPropNameInTable="key_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="key_vehi" msprop:Generator_UserColumnName="key_vehi" msprop:Generator_ColumnVarNameInTable="columnkey_vehi" type="xs:string" />
+              <xs:element name="num_vehi" msprop:Generator_ColumnPropNameInRow="num_vehi" msprop:Generator_ColumnPropNameInTable="num_vehiColumn" msprop:Generator_ColumnVarNameInTable="columnnum_vehi" msprop:Generator_UserColumnName="num_vehi" type="xs:unsignedShort" minOccurs="0" />
+              <xs:element name="cmpnum_vehi" msprop:Generator_ColumnPropNameInTable="cmpnum_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="cmpnum_vehi" msprop:Generator_UserColumnName="cmpnum_vehi" msprop:Generator_ColumnVarNameInTable="columncmpnum_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="immat_vehi" msprop:Generator_ColumnPropNameInTable="immat_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="immat_vehi" msprop:Generator_UserColumnName="immat_vehi" msprop:Generator_ColumnVarNameInTable="columnimmat_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="ope_vehi" msprop:Generator_ColumnPropNameInTable="ope_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="ope_vehi" msprop:Generator_UserColumnName="ope_vehi" msprop:Generator_ColumnVarNameInTable="columnope_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="type_vehi" msprop:Generator_ColumnPropNameInTable="type_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="type_vehi" msprop:Generator_UserColumnName="type_vehi" msprop:Generator_ColumnVarNameInTable="columntype_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="cond_vehi" msprop:Generator_ColumnPropNameInTable="cond_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="cond_vehi" msprop:Generator_UserColumnName="cond_vehi" msprop:Generator_ColumnVarNameInTable="columncond_vehi" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="famille_vehi" msprop:Generator_ColumnPropNameInTable="famille_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="famille_vehi" msprop:Generator_UserColumnName="famille_vehi" msprop:Generator_ColumnVarNameInTable="columnfamille_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="carbu_vehi" msprop:Generator_ColumnPropNameInTable="carbu_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="carbu_vehi" msprop:Generator_UserColumnName="carbu_vehi" msprop:Generator_ColumnVarNameInTable="columncarbu_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="kmdep_vehi" msprop:Generator_ColumnPropNameInTable="kmdep_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="kmdep_vehi" msprop:Generator_UserColumnName="kmdep_vehi" msprop:Generator_ColumnVarNameInTable="columnkmdep_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="kmarr_vehi" msprop:Generator_ColumnPropNameInTable="kmarr_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="kmarr_vehi" msprop:Generator_UserColumnName="kmarr_vehi" msprop:Generator_ColumnVarNameInTable="columnkmarr_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="categ_vehi" msprop:Generator_ColumnPropNameInTable="categ_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="categ_vehi" msprop:Generator_UserColumnName="categ_vehi" msprop:Generator_ColumnVarNameInTable="columncateg_vehi" minOccurs="0">
+                <xs:simpleType>
+                  <xs:restriction base="xs:string">
+                    <xs:maxLength value="1" />
+                  </xs:restriction>
+                </xs:simpleType>
+              </xs:element>
+              <xs:element name="sort1_vehi" msprop:Generator_ColumnPropNameInTable="sort1_vehiColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="sort1_vehi" msprop:Generator_UserColumnName="sort1_vehi" msprop:Generator_ColumnVarNameInTable="columnsort1_vehi" type="xs:string" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_epreuve" msprop:Generator_RowClassName="tb_epreuveRow" msprop:Generator_RowEvHandlerName="tb_epreuveRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_epreuveRowDeleted" msprop:Generator_RowDeletingName="tb_epreuveRowDeleting" msprop:Generator_RowEvArgName="tb_epreuveRowChangeEvent" msprop:Generator_TablePropName="tb_epreuve" msprop:Generator_RowChangedName="tb_epreuveRowChanged" msprop:Generator_RowChangingName="tb_epreuveRowChanging" msprop:Generator_TableClassName="tb_epreuveDataTable" msprop:Generator_UserTableName="tb_epreuve" msprop:Generator_TableVarName="tabletb_epreuve">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_epr" msprop:Generator_ColumnPropNameInRow="key_epr" msprop:Generator_ColumnPropNameInTable="key_eprColumn" msprop:Generator_ColumnVarNameInTable="columnkey_epr" msprop:Generator_UserColumnName="key_epr" type="xs:string" />
+              <xs:element name="nom_epr" msprop:Generator_ColumnPropNameInTable="nom_eprColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="nom_epr" msprop:Generator_UserColumnName="nom_epr" msprop:Generator_ColumnVarNameInTable="columnnom_epr" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="deb_epr" msprop:Generator_ColumnPropNameInRow="deb_epr" msprop:Generator_ColumnPropNameInTable="deb_eprColumn" msprop:Generator_ColumnVarNameInTable="columndeb_epr" msprop:Generator_UserColumnName="deb_epr" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="fin_epr" msprop:Generator_ColumnPropNameInRow="fin_epr" msprop:Generator_ColumnPropNameInTable="fin_eprColumn" msprop:Generator_ColumnVarNameInTable="columnfin_epr" msprop:Generator_UserColumnName="fin_epr" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="abrev_epr" msprop:Generator_ColumnPropNameInTable="abrev_eprColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="abrev_epr" msprop:Generator_UserColumnName="abrev_epr" msprop:Generator_ColumnVarNameInTable="columnabrev_epr" type="xs:string" default="" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_etape" msprop:Generator_RowClassName="tb_etapeRow" msprop:Generator_RowEvHandlerName="tb_etapeRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_etapeRowDeleted" msprop:Generator_RowDeletingName="tb_etapeRowDeleting" msprop:Generator_RowEvArgName="tb_etapeRowChangeEvent" msprop:Generator_TablePropName="tb_etape" msprop:Generator_RowChangedName="tb_etapeRowChanged" msprop:Generator_RowChangingName="tb_etapeRowChanging" msprop:Generator_TableClassName="tb_etapeDataTable" msprop:Generator_UserTableName="tb_etape" msprop:Generator_TableVarName="tabletb_etape">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="epr_etp" msprop:Generator_ColumnPropNameInRow="epr_etp" msprop:Generator_ColumnPropNameInTable="epr_etpColumn" msprop:Generator_ColumnVarNameInTable="columnepr_etp" msprop:Generator_UserColumnName="epr_etp" type="xs:string" />
+              <xs:element name="num_etp" msprop:Generator_ColumnPropNameInRow="num_etp" msprop:Generator_ColumnPropNameInTable="num_etpColumn" msprop:Generator_ColumnVarNameInTable="columnnum_etp" msprop:Generator_UserColumnName="num_etp" type="xs:unsignedShort" />
+              <xs:element name="date_etp" msprop:Generator_ColumnPropNameInRow="date_etp" msprop:Generator_ColumnPropNameInTable="date_etpColumn" msprop:Generator_ColumnVarNameInTable="columndate_etp" msprop:Generator_UserColumnName="date_etp" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="nom_etp" msprop:Generator_ColumnPropNameInRow="nom_etp" msprop:Generator_ColumnPropNameInTable="nom_etpColumn" msprop:Generator_ColumnVarNameInTable="columnnom_etp" msprop:Generator_UserColumnName="nom_etp" type="xs:string" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_pays" msprop:Generator_RowClassName="tb_paysRow" msprop:Generator_RowEvHandlerName="tb_paysRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_paysRowDeleted" msprop:Generator_RowDeletingName="tb_paysRowDeleting" msprop:Generator_RowEvArgName="tb_paysRowChangeEvent" msprop:Generator_TablePropName="tb_pays" msprop:Generator_RowChangedName="tb_paysRowChanged" msprop:Generator_RowChangingName="tb_paysRowChanging" msprop:Generator_TableClassName="tb_paysDataTable" msprop:Generator_UserTableName="tb_pays" msprop:Generator_TableVarName="tabletb_pays">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_pays" msprop:Generator_ColumnPropNameInRow="key_pays" msprop:Generator_ColumnPropNameInTable="key_paysColumn" msprop:Generator_ColumnVarNameInTable="columnkey_pays" msprop:Generator_UserColumnName="key_pays" type="xs:string" />
+              <xs:element name="nom_pays" msprop:Generator_ColumnPropNameInRow="nom_pays" msprop:Generator_ColumnPropNameInTable="nom_paysColumn" msprop:Generator_ColumnVarNameInTable="columnnom_pays" msprop:Generator_UserColumnName="nom_pays" type="xs:string" minOccurs="0" />
+              <xs:element name="code_pays" msprop:Generator_ColumnPropNameInRow="code_pays" msprop:Generator_ColumnPropNameInTable="code_paysColumn" msprop:Generator_ColumnVarNameInTable="columncode_pays" msprop:Generator_UserColumnName="code_pays" type="xs:string" minOccurs="0" />
+              <xs:element name="txchge_pays" msprop:Generator_ColumnPropNameInRow="txchge_pays" msprop:Generator_ColumnPropNameInTable="txchge_paysColumn" msprop:Generator_ColumnVarNameInTable="columntxchge_pays" msprop:Generator_UserColumnName="txchge_pays" type="xs:float" minOccurs="0" />
+              <xs:element name="tva_pays" msprop:Generator_ColumnPropNameInRow="tva_pays" msprop:Generator_ColumnPropNameInTable="tva_paysColumn" msprop:Generator_ColumnVarNameInTable="columntva_pays" msprop:Generator_UserColumnName="tva_pays" type="xs:float" minOccurs="0" />
+              <xs:element name="img_pays" msprop:Generator_ColumnPropNameInRow="img_pays" msprop:Generator_ColumnPropNameInTable="img_paysColumn" msprop:Generator_ColumnVarNameInTable="columnimg_pays" msprop:Generator_UserColumnName="img_pays" type="xs:string" minOccurs="0" />
+              <xs:element name="order_pays" msprop:Generator_ColumnPropNameInRow="order_pays" msprop:Generator_ColumnPropNameInTable="order_paysColumn" msprop:Generator_ColumnVarNameInTable="columnorder_pays" msprop:Generator_UserColumnName="order_pays" type="xs:unsignedShort" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_station" msprop:Generator_RowClassName="tb_stationRow" msprop:Generator_RowEvHandlerName="tb_stationRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_stationRowDeleted" msprop:Generator_RowDeletingName="tb_stationRowDeleting" msprop:Generator_RowEvArgName="tb_stationRowChangeEvent" msprop:Generator_TablePropName="tb_station" msprop:Generator_RowChangedName="tb_stationRowChanged" msprop:Generator_RowChangingName="tb_stationRowChanging" msprop:Generator_TableClassName="tb_stationDataTable" msprop:Generator_UserTableName="tb_station" msprop:Generator_TableVarName="tabletb_station">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_sta" msprop:Generator_ColumnPropNameInRow="key_sta" msprop:Generator_ColumnPropNameInTable="key_staColumn" msprop:Generator_ColumnVarNameInTable="columnkey_sta" msprop:Generator_UserColumnName="key_sta" type="xs:string" />
+              <xs:element name="epr_sta" msprop:Generator_ColumnPropNameInTable="epr_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="epr_sta" msprop:Generator_UserColumnName="epr_sta" msprop:Generator_ColumnVarNameInTable="columnepr_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="etp_sta" msprop:Generator_ColumnPropNameInTable="etp_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="etp_sta" msprop:Generator_UserColumnName="etp_sta" msprop:Generator_ColumnVarNameInTable="columnetp_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="date_sta" msprop:Generator_ColumnPropNameInRow="date_sta" msprop:Generator_ColumnPropNameInTable="date_staColumn" msprop:Generator_ColumnVarNameInTable="columndate_sta" msprop:Generator_UserColumnName="date_sta" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="num_sta" msprop:Generator_ColumnPropNameInTable="num_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="num_sta" msprop:Generator_UserColumnName="num_sta" msprop:Generator_ColumnVarNameInTable="columnnum_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="nom_sta" msprop:Generator_ColumnPropNameInTable="nom_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="nom_sta" msprop:Generator_UserColumnName="nom_sta" msprop:Generator_ColumnVarNameInTable="columnnom_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="adr1_sta" msprop:Generator_ColumnPropNameInTable="adr1_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="adr1_sta" msprop:Generator_UserColumnName="adr1_sta" msprop:Generator_ColumnVarNameInTable="columnadr1_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="adr2_sta" msprop:Generator_ColumnPropNameInTable="adr2_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="adr2_sta" msprop:Generator_UserColumnName="adr2_sta" msprop:Generator_ColumnVarNameInTable="columnadr2_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="cp_sta" msprop:Generator_ColumnPropNameInTable="cp_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="cp_sta" msprop:Generator_UserColumnName="cp_sta" msprop:Generator_ColumnVarNameInTable="columncp_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="ville_sta" msprop:Generator_ColumnPropNameInTable="ville_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="ville_sta" msprop:Generator_UserColumnName="ville_sta" msprop:Generator_ColumnVarNameInTable="columnville_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="pays_sta" msprop:Generator_ColumnPropNameInTable="pays_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="pays_sta" msprop:Generator_UserColumnName="pays_sta" msprop:Generator_ColumnVarNameInTable="columnpays_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="contact_sta" msprop:Generator_ColumnPropNameInTable="contact_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="contact_sta" msprop:Generator_UserColumnName="contact_sta" msprop:Generator_ColumnVarNameInTable="columncontact_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="tel_sta" msprop:Generator_ColumnPropNameInTable="tel_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="tel_sta" msprop:Generator_UserColumnName="tel_sta" msprop:Generator_ColumnVarNameInTable="columntel_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="tva_sta" msprop:Generator_ColumnPropNameInTable="tva_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="tva_sta" msprop:Generator_UserColumnName="tva_sta" msprop:Generator_ColumnVarNameInTable="columntva_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="divers_sta" msprop:Generator_ColumnPropNameInTable="divers_staColumn" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="divers_sta" msprop:Generator_UserColumnName="divers_sta" msprop:Generator_ColumnVarNameInTable="columndivers_sta" type="xs:string" default="" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_famille" msprop:Generator_RowClassName="tb_familleRow" msprop:Generator_RowEvHandlerName="tb_familleRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_familleRowDeleted" msprop:Generator_RowDeletingName="tb_familleRowDeleting" msprop:Generator_RowEvArgName="tb_familleRowChangeEvent" msprop:Generator_TablePropName="tb_famille" msprop:Generator_RowChangedName="tb_familleRowChanged" msprop:Generator_RowChangingName="tb_familleRowChanging" msprop:Generator_TableClassName="tb_familleDataTable" msprop:Generator_UserTableName="tb_famille" msprop:Generator_TableVarName="tabletb_famille">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_fam" msprop:Generator_ColumnPropNameInRow="key_fam" msprop:Generator_ColumnPropNameInTable="key_famColumn" msprop:Generator_ColumnVarNameInTable="columnkey_fam" msprop:Generator_UserColumnName="key_fam" type="xs:string" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_prod" msprop:Generator_RowClassName="tb_prodRow" msprop:Generator_RowEvHandlerName="tb_prodRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_prodRowDeleted" msprop:Generator_RowDeletingName="tb_prodRowDeleting" msprop:Generator_RowEvArgName="tb_prodRowChangeEvent" msprop:Generator_TablePropName="tb_prod" msprop:Generator_RowChangedName="tb_prodRowChanged" msprop:Generator_RowChangingName="tb_prodRowChanging" msprop:Generator_TableClassName="tb_prodDataTable" msprop:Generator_UserTableName="tb_prod" msprop:Generator_TableVarName="tabletb_prod">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_prod" msprop:Generator_ColumnPropNameInRow="key_prod" msprop:Generator_ColumnPropNameInTable="key_prodColumn" msprop:Generator_ColumnVarNameInTable="columnkey_prod" msprop:Generator_UserColumnName="key_prod" type="xs:string" />
+              <xs:element name="lib_prod" msprop:Generator_ColumnPropNameInRow="lib_prod" msprop:Generator_ColumnPropNameInTable="lib_prodColumn" msprop:Generator_ColumnVarNameInTable="columnlib_prod" msprop:Generator_UserColumnName="lib_prod" type="xs:string" minOccurs="0" />
+              <xs:element name="type_prod" msprop:Generator_ColumnPropNameInRow="type_prod" msprop:Generator_ColumnPropNameInTable="type_prodColumn" msprop:Generator_ColumnVarNameInTable="columntype_prod" msprop:Generator_UserColumnName="type_prod" type="xs:string" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_presta" msprop:Generator_RowClassName="tb_prestaRow" msprop:Generator_RowEvHandlerName="tb_prestaRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_prestaRowDeleted" msprop:Generator_RowDeletingName="tb_prestaRowDeleting" msprop:Generator_RowEvArgName="tb_prestaRowChangeEvent" msprop:Generator_TablePropName="tb_presta" msprop:Generator_RowChangedName="tb_prestaRowChanged" msprop:Generator_RowChangingName="tb_prestaRowChanging" msprop:Generator_TableClassName="tb_prestaDataTable" msprop:Generator_UserTableName="tb_presta" msprop:Generator_TableVarName="tabletb_presta">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="sta_pr" msprop:Generator_ColumnPropNameInRow="sta_pr" msprop:Generator_ColumnPropNameInTable="sta_prColumn" msprop:Generator_ColumnVarNameInTable="columnsta_pr" msprop:Generator_UserColumnName="sta_pr" type="xs:string" />
+              <xs:element name="prod_pr" msprop:Generator_ColumnPropNameInRow="prod_pr" msprop:Generator_ColumnPropNameInTable="prod_prColumn" msprop:Generator_ColumnVarNameInTable="columnprod_pr" msprop:Generator_UserColumnName="prod_pr" type="xs:string" />
+              <xs:element name="kind_pr" msprop:Generator_ColumnPropNameInRow="kind_pr" msprop:Generator_ColumnPropNameInTable="kind_prColumn" msprop:Generator_ColumnVarNameInTable="columnkind_pr" msprop:Generator_UserColumnName="kind_pr" type="xs:string" minOccurs="0" />
+              <xs:element name="unite_pr" msprop:Generator_ColumnPropNameInRow="unite_pr" msprop:Generator_ColumnPropNameInTable="unite_prColumn" msprop:Generator_ColumnVarNameInTable="columnunite_pr" msprop:Generator_UserColumnName="unite_pr" type="xs:string" minOccurs="0" />
+              <xs:element name="pu_pr" msprop:Generator_ColumnPropNameInRow="pu_pr" msprop:Generator_ColumnPropNameInTable="pu_prColumn" msprop:Generator_ColumnVarNameInTable="columnpu_pr" msprop:Generator_UserColumnName="pu_pr" type="xs:decimal" minOccurs="0" />
+              <xs:element name="tva_pr" msprop:Generator_ColumnPropNameInRow="tva_pr" msprop:Generator_ColumnPropNameInTable="tva_prColumn" msprop:Generator_ColumnVarNameInTable="columntva_pr" msprop:Generator_UserColumnName="tva_pr" type="xs:decimal" minOccurs="0" />
+              <xs:element name="ttc_pr" msprop:Generator_ColumnPropNameInRow="ttc_pr" msprop:Generator_ColumnPropNameInTable="ttc_prColumn" msprop:Generator_ColumnVarNameInTable="columnttc_pr" msprop:Generator_UserColumnName="ttc_pr" type="xs:decimal" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_vente" msprop:Generator_RowClassName="tb_venteRow" msprop:Generator_RowEvHandlerName="tb_venteRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_venteRowDeleted" msprop:Generator_RowDeletingName="tb_venteRowDeleting" msprop:Generator_RowEvArgName="tb_venteRowChangeEvent" msprop:Generator_TablePropName="tb_vente" msprop:Generator_RowChangedName="tb_venteRowChanged" msprop:Generator_RowChangingName="tb_venteRowChanging" msprop:Generator_TableClassName="tb_venteDataTable" msprop:Generator_UserTableName="tb_vente" msprop:Generator_TableVarName="tabletb_vente">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="epreuve_vt" msprop:Generator_ColumnPropNameInRow="epreuve_vt" msprop:Generator_ColumnPropNameInTable="epreuve_vtColumn" msprop:Generator_ColumnVarNameInTable="columnepreuve_vt" msprop:Generator_UserColumnName="epreuve_vt" type="xs:string" />
+              <xs:element name="station_vt" msprop:Generator_ColumnPropNameInRow="station_vt" msprop:Generator_ColumnPropNameInTable="station_vtColumn" msprop:Generator_ColumnVarNameInTable="columnstation_vt" msprop:Generator_UserColumnName="station_vt" type="xs:string" />
+              <xs:element name="vehi_vt" msprop:Generator_ColumnPropNameInRow="vehi_vt" msprop:Generator_ColumnPropNameInTable="vehi_vtColumn" msprop:Generator_ColumnVarNameInTable="columnvehi_vt" msprop:Generator_UserColumnName="vehi_vt" type="xs:string" />
+              <xs:element name="prod_vt" msprop:Generator_ColumnPropNameInTable="prod_vtColumn" msprop:nullValue="_null" msprop:Generator_ColumnPropNameInRow="prod_vt" msprop:Generator_UserColumnName="prod_vt" msprop:Generator_ColumnVarNameInTable="columnprod_vt" type="xs:string" />
+              <xs:element name="date_vt" msdata:DateTimeMode="Utc" msprop:Generator_ColumnPropNameInRow="date_vt" msprop:Generator_ColumnPropNameInTable="date_vtColumn" msprop:Generator_ColumnVarNameInTable="columndate_vt" msprop:Generator_UserColumnName="date_vt" type="xs:dateTime" />
+              <xs:element name="qtt_vt" msprop:Generator_ColumnPropNameInRow="qtt_vt" msprop:Generator_ColumnPropNameInTable="qtt_vtColumn" msprop:Generator_ColumnVarNameInTable="columnqtt_vt" msprop:Generator_UserColumnName="qtt_vt" type="xs:decimal" minOccurs="0" />
+              <xs:element name="pu_vt" msprop:Generator_ColumnPropNameInRow="pu_vt" msprop:Generator_ColumnPropNameInTable="pu_vtColumn" msprop:Generator_ColumnVarNameInTable="columnpu_vt" msprop:Generator_UserColumnName="pu_vt" type="xs:decimal" minOccurs="0" />
+              <xs:element name="ht_vt" msprop:Generator_ColumnPropNameInTable="ht_vtColumn" msprop:nullValue="0" msprop:Generator_ColumnPropNameInRow="ht_vt" msprop:Generator_UserColumnName="ht_vt" msprop:Generator_ColumnVarNameInTable="columnht_vt" type="xs:decimal" default="0" minOccurs="0" />
+              <xs:element name="tva_vt" msprop:Generator_ColumnPropNameInRow="tva_vt" msprop:Generator_ColumnPropNameInTable="tva_vtColumn" msprop:Generator_ColumnVarNameInTable="columntva_vt" msprop:Generator_UserColumnName="tva_vt" type="xs:decimal" minOccurs="0" />
+              <xs:element name="ttc_vt" msprop:Generator_ColumnPropNameInRow="ttc_vt" msprop:Generator_ColumnPropNameInTable="ttc_vtColumn" msprop:Generator_ColumnVarNameInTable="columnttc_vt" msprop:Generator_UserColumnName="ttc_vt" type="xs:decimal" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+      </xs:choice>
+    </xs:complexType>
+    <xs:unique name="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_vehi" />
+      <xs:field xpath="mstns:key_vehi" />
+    </xs:unique>
+    <xs:unique name="tb_epreuve_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_epreuve" />
+      <xs:field xpath="mstns:key_epr" />
+    </xs:unique>
+    <xs:unique name="tb_etape_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_etape" />
+      <xs:field xpath="mstns:epr_etp" />
+      <xs:field xpath="mstns:num_etp" />
+    </xs:unique>
+    <xs:unique name="tb_pays_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_pays" />
+      <xs:field xpath="mstns:key_pays" />
+    </xs:unique>
+    <xs:unique name="tb_station_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_station" />
+      <xs:field xpath="mstns:key_sta" />
+    </xs:unique>
+    <xs:unique name="tb_famille_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_famille" />
+      <xs:field xpath="mstns:key_fam" />
+    </xs:unique>
+    <xs:unique name="tb_prod_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_prod" />
+      <xs:field xpath="mstns:key_prod" />
+    </xs:unique>
+    <xs:unique name="tb_presta_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_presta" />
+      <xs:field xpath="mstns:sta_pr" />
+      <xs:field xpath="mstns:prod_pr" />
+    </xs:unique>
+    <xs:unique name="tb_vente_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_vente" />
+      <xs:field xpath="mstns:epreuve_vt" />
+      <xs:field xpath="mstns:station_vt" />
+      <xs:field xpath="mstns:vehi_vt" />
+      <xs:field xpath="mstns:prod_vt" />
+      <xs:field xpath="mstns:date_vt" />
+    </xs:unique>
+    <xs:keyref name="FK_tb_prod_tb_vente" refer="tb_prod_Constraint1" msprop:rel_Generator_UserParentTable="tb_prod" msprop:rel_Generator_UserChildTable="tb_vente" msprop:rel_Generator_RelationVarName="relationFK_tb_prod_tb_vente" msprop:rel_Generator_ChildPropName="Gettb_venteRows" msprop:rel_Generator_ParentPropName="tb_prodRow" msprop:rel_Generator_UserRelationName="FK_tb_prod_tb_vente" msdata:AcceptRejectRule="Cascade">
+      <xs:selector xpath=".//mstns:tb_vente" />
+      <xs:field xpath="mstns:prod_vt" />
+    </xs:keyref>
+    <xs:keyref name="FK_tb_epreuve_tb_vente" refer="tb_epreuve_Constraint1" msprop:rel_Generator_UserParentTable="tb_epreuve" msprop:rel_Generator_UserChildTable="tb_vente" msprop:rel_Generator_RelationVarName="relationFK_tb_epreuve_tb_vente" msprop:rel_Generator_ChildPropName="Gettb_venteRows" msprop:rel_Generator_ParentPropName="tb_epreuveRow" msprop:rel_Generator_UserRelationName="FK_tb_epreuve_tb_vente" msdata:AcceptRejectRule="Cascade">
+      <xs:selector xpath=".//mstns:tb_vente" />
+      <xs:field xpath="mstns:epreuve_vt" />
+    </xs:keyref>
+    <xs:keyref name="FK_tb_station_tb_presta" refer="tb_station_Constraint1" msprop:rel_Generator_UserParentTable="tb_station" msprop:rel_Generator_UserChildTable="tb_presta" msprop:rel_Generator_RelationVarName="relationFK_tb_station_tb_presta" msprop:rel_Generator_ChildPropName="Gettb_prestaRows" msprop:rel_Generator_ParentPropName="tb_stationRow" msprop:rel_Generator_UserRelationName="FK_tb_station_tb_presta" msdata:AcceptRejectRule="Cascade">
+      <xs:selector xpath=".//mstns:tb_presta" />
+      <xs:field xpath="mstns:sta_pr" />
+    </xs:keyref>
+    <xs:keyref name="FK_tb_epreuve_tb_station" refer="tb_epreuve_Constraint1" msprop:rel_Generator_UserParentTable="tb_epreuve" msprop:rel_Generator_UserChildTable="tb_station" msprop:rel_Generator_RelationVarName="relationFK_tb_epreuve_tb_station" msprop:rel_Generator_ChildPropName="Gettb_stationRows" msprop:rel_Generator_ParentPropName="tb_epreuveRow" msprop:rel_Generator_UserRelationName="FK_tb_epreuve_tb_station" msdata:AcceptRejectRule="Cascade">
+      <xs:selector xpath=".//mstns:tb_station" />
+      <xs:field xpath="mstns:epr_sta" />
+    </xs:keyref>
+    <xs:keyref name="FK_tb_epreuve_tb_etape" refer="tb_epreuve_Constraint1" msprop:rel_Generator_UserParentTable="tb_epreuve" msprop:rel_Generator_UserChildTable="tb_etape" msprop:rel_Generator_RelationVarName="relationFK_tb_epreuve_tb_etape" msprop:rel_Generator_ChildPropName="Gettb_etapeRows" msprop:rel_Generator_ParentPropName="tb_epreuveRow" msprop:rel_Generator_UserRelationName="FK_tb_epreuve_tb_etape" msdata:AcceptRejectRule="Cascade">
+      <xs:selector xpath=".//mstns:tb_etape" />
+      <xs:field xpath="mstns:epr_etp" />
+    </xs:keyref>
+  </xs:element>
+  <xs:annotation>
+    <xs:appinfo>
+      <msdata:Relationship name="tb_prod_tb_presta" msdata:parent="tb_prod" msdata:child="tb_presta" msdata:parentkey="key_prod" msdata:childkey="prod_pr" msprop:Generator_UserParentTable="tb_prod" msprop:Generator_UserChildTable="tb_presta" msprop:Generator_RelationVarName="relationtb_prod_tb_presta" msprop:Generator_ChildPropName="Gettb_prestaRows" msprop:Generator_ParentPropName="tb_prodRow" msprop:Generator_UserRelationName="tb_prod_tb_presta" />
+      <msdata:Relationship name="tb_vehi_tb_vente" msdata:parent="tb_vehi" msdata:child="tb_vente" msdata:parentkey="key_vehi" msdata:childkey="vehi_vt" msprop:Generator_UserParentTable="tb_vehi" msprop:Generator_UserChildTable="tb_vente" msprop:Generator_RelationVarName="relationtb_vehi_tb_vente" msprop:Generator_ChildPropName="Gettb_venteRows" msprop:Generator_ParentPropName="tb_vehiRow" msprop:Generator_UserRelationName="tb_vehi_tb_vente" />
+      <msdata:Relationship name="tb_station_tb_vente" msdata:parent="tb_station" msdata:child="tb_vente" msdata:parentkey="key_sta" msdata:childkey="station_vt" msprop:Generator_UserParentTable="tb_station" msprop:Generator_UserChildTable="tb_vente" msprop:Generator_RelationVarName="relationtb_station_tb_vente" msprop:Generator_ChildPropName="Gettb_venteRows" msprop:Generator_ParentPropName="tb_stationRow" msprop:Generator_UserRelationName="tb_station_tb_vente" />
+    </xs:appinfo>
+  </xs:annotation>
+</xs:schema>

+ 121 - 0
Convert/DSConvert.xss

@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--<autogenerated>
+     This code was generated by a tool to store the dataset designer's layout information.
+     Changes to this file may cause incorrect behavior and will be lost if
+     the code is regenerated.
+</autogenerated>-->
+<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-7" ViewPortY="9" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
+  <Shapes>
+    <Shape ID="DesignTable:tb_vehi" ZOrder="17" X="1600" Y="527" Height="276" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
+    <Shape ID="DesignTable:tb_epreuve" ZOrder="16" X="1160" Y="134" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="120" />
+    <Shape ID="DesignTable:tb_etape" ZOrder="15" X="1555" Y="239" Height="173" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="169" />
+    <Shape ID="DesignTable:tb_pays" ZOrder="14" X="704" Y="400" Height="335" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="331" />
+    <Shape ID="DesignTable:tb_station" ZOrder="13" X="918" Y="248" Height="551" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="547" />
+    <Shape ID="DesignTable:tb_famille" ZOrder="12" X="709" Y="142" Height="173" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="169" />
+    <Shape ID="DesignTable:tb_prod" ZOrder="11" X="1149" Y="710" Height="173" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="169" />
+    <Shape ID="DesignTable:tb_presta" ZOrder="10" X="1366" Y="699" Height="182" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="178" />
+    <Shape ID="DesignTable:tb_vente" ZOrder="9" X="1204" Y="397" Height="254" Width="253" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="250" />
+  </Shapes>
+  <Connectors>
+    <Connector ID="DesignRelation:FK_tb_epreuve_tb_vente" ZOrder="8" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1257</X>
+          <Y>258</Y>
+        </Point>
+        <Point>
+          <X>1257</X>
+          <Y>397</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:FK_tb_epreuve_tb_station" ZOrder="7" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1177</X>
+          <Y>258</Y>
+        </Point>
+        <Point>
+          <X>1177</X>
+          <Y>275</Y>
+        </Point>
+        <Point>
+          <X>1068</X>
+          <Y>275</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:FK_tb_station_tb_presta" ZOrder="6" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1068</X>
+          <Y>749</Y>
+        </Point>
+        <Point>
+          <X>1366</X>
+          <Y>749</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:tb_prod_tb_presta" ZOrder="5" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1299</X>
+          <Y>795</Y>
+        </Point>
+        <Point>
+          <X>1366</X>
+          <Y>795</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:FK_tb_epreuve_tb_etape" ZOrder="4" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1310</X>
+          <Y>248</Y>
+        </Point>
+        <Point>
+          <X>1555</X>
+          <Y>248</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:tb_vehi_tb_vente" ZOrder="3" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1600</X>
+          <Y>590</Y>
+        </Point>
+        <Point>
+          <X>1457</X>
+          <Y>590</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:tb_station_tb_vente" ZOrder="2" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1068</X>
+          <Y>524</Y>
+        </Point>
+        <Point>
+          <X>1204</X>
+          <Y>524</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+    <Connector ID="DesignRelation:FK_tb_prod_tb_vente" ZOrder="1" LineWidth="11">
+      <RoutePoints>
+        <Point>
+          <X>1249</X>
+          <Y>710</Y>
+        </Point>
+        <Point>
+          <X>1249</X>
+          <Y>651</Y>
+        </Point>
+      </RoutePoints>
+    </Connector>
+  </Connectors>
+</DiagramLayout>

+ 32 - 0
Convert/Product.cs

@@ -0,0 +1,32 @@
+using Fuel01;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Convert
+{
+    public class Product
+    {
+        public List<Presta> prestas { get; set; }
+    }
+
+    public class Presta
+    {
+        public string sta_pr { get; set; }
+        public List<Achat> carburants { get; set; }
+        public List<Achat> autres { get; set; }
+    }
+
+    public class Achat 
+    {
+        public string prod_pr { get; set; }
+        public string lib_pr { get; set; }
+        public string unite_pr { get; set; }
+        public decimal pu_pr { get; set; }
+        public decimal tva_pr { get; set; }
+        public decimal ttc_pr { get; set; }
+    }
+
+}

+ 71 - 0
Convert/Program.cs

@@ -0,0 +1,71 @@
+using Fuel01;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Convert
+{
+    public static class Program
+    {
+        private static string Folder { get;  set; } 
+        static void Main(string[] args)
+        {
+            Folder = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\AsoFuel";
+            DataSet1.tb_epreuveDataTable tb_epr = new DataSet1.tb_epreuveDataTable();
+
+            tb_epr.Clear();
+            tb_epr.ReadXml(Path.Combine(Folder,"epreuve.xml"));
+            SaveToJson<DataSet1.tb_epreuveDataTable>(Path.Combine(Folder, "epreuve.json"), tb_epr);
+
+            foreach (var item in tb_epr.Rows) 
+            {
+                DataSet1.tb_epreuveRow myrow = item as DataSet1.tb_epreuveRow;
+                string key_epr = myrow["key_epr"].ToString();
+                Console.WriteLine(key_epr);
+                DataSet1.tb_stationDataTable tb_sta = new DataSet1.tb_stationDataTable();
+                tb_sta.Clear();
+                tb_sta.ReadXml(Path.Combine(Folder, key_epr,"station.xml"));
+                SaveToJson<DataSet1.tb_stationDataTable>(Path.Combine(Folder, key_epr, "station.json"), tb_sta);
+
+                DataSet1.tb_vehiDataTable tb_vehi = new DataSet1.tb_vehiDataTable();
+                tb_vehi.Clear();
+                tb_vehi.ReadXml(Path.Combine(Folder, key_epr, "vehicule.xml"));
+                SaveToJson<DataSet1.tb_vehiDataTable>(Path.Combine(Folder, key_epr, "vehicule.json"), tb_vehi);
+
+                DataSet1.tb_prestaDataTable tb_presta = new DataSet1.tb_prestaDataTable();
+                tb_presta.Clear();
+                tb_presta.ReadXml(Path.Combine(Folder, key_epr, "presta_base.xml"));
+                SaveToJson<DataSet1.tb_prestaDataTable>(Path.Combine(Folder, key_epr, "presta_base.json"), tb_presta);
+
+                tb_presta.Clear();
+                tb_presta.ReadXml(Path.Combine(Folder, key_epr, "presta.xml"));
+                SaveToJson<DataSet1.tb_prestaDataTable>(Path.Combine(Folder, key_epr, "presta.json"), tb_presta);
+
+                DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+                tb_vente.Clear();
+                tb_vente.ReadXml(Path.Combine(Folder, key_epr, "vente.xml"));
+                SaveToJson<DataSet1.tb_venteDataTable>(Path.Combine(Folder, key_epr, "vente.json"), tb_vente);
+
+            }                                                               
+
+        }
+
+        public static bool SaveToJson<T>(string filename, T ds)                                                                                                                                                                                                                                 
+        {
+            try
+            {
+                var result = JsonConvert.SerializeObject(ds);
+                File.WriteAllText(filename, result);
+                return true;
+            }
+            catch
+            {
+                return false;
+            }
+        }
+    }
+}

+ 33 - 0
Convert/Properties/AssemblyInfo.cs

@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Les informations générales relatives à un assembly dépendent de
+// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
+// associées à un assembly.
+[assembly: AssemblyTitle("Convert")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Convert")]
+[assembly: AssemblyCopyright("Copyright ©  2024")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly
+// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de
+// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
+[assembly: ComVisible(false)]
+
+// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM
+[assembly: Guid("37ee8f41-69d4-4bd9-9a56-3bd68230c004")]
+
+// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
+//
+//      Version principale
+//      Version secondaire
+//      Numéro de build
+//      Révision
+//
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 4 - 0
Convert/packages.config

@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="Newtonsoft.Json" version="13.0.3" targetFramework="net472" />
+</packages>

+ 37 - 0
Fuel_ASO.sln

@@ -0,0 +1,37 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.4.33122.133
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fuel_ASO", "Fuel_ASO\Fuel_ASO.csproj", "{2578A6FE-68E5-4216-AF51-9B04DDD43D8A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Convert", "Convert\Convert.csproj", "{37EE8F41-69D4-4BD9-9A56-3BD68230C004}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{2578A6FE-68E5-4216-AF51-9B04DDD43D8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{2578A6FE-68E5-4216-AF51-9B04DDD43D8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{2578A6FE-68E5-4216-AF51-9B04DDD43D8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{2578A6FE-68E5-4216-AF51-9B04DDD43D8A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{37EE8F41-69D4-4BD9-9A56-3BD68230C004}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{37EE8F41-69D4-4BD9-9A56-3BD68230C004}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{37EE8F41-69D4-4BD9-9A56-3BD68230C004}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{37EE8F41-69D4-4BD9-9A56-3BD68230C004}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		BuildVersion_StartDate = 2000/1/1
+		VisualSVNWorkingCopyRoot = .
+		SolutionGuid = {0EC339A5-8D8B-44F8-9BC8-E03376574355}
+	EndGlobalSection
+	GlobalSection(SubversionScc) = preSolution
+		Svn-Managed = True
+		Manager = AnkhSVN - Subversion Support for Visual Studio
+	EndGlobalSection
+EndGlobal

+ 56 - 0
Fuel_ASO/App.config

@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+    <configSections>
+        <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+            <section name="Fuel01.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/>
+        </sectionGroup>
+    </configSections>
+    <startup> 
+        
+    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup>
+    <userSettings>
+        <Fuel01.Properties.Settings>
+            <setting name="key_ope" serializeAs="String">
+                <value/>
+            </setting>
+            <setting name="nom_ope" serializeAs="String">
+                <value/>
+            </setting>
+            <setting name="abrev_ope" serializeAs="String">
+                <value/>
+            </setting>
+            <setting name="server_adress" serializeAs="String">
+                <value/>
+            </setting>
+            <setting name="serveur_dir" serializeAs="String">
+                <value/>
+            </setting>
+            <setting name="server_signalr" serializeAs="String">
+                <value>http://www.aformatix.com/signalR/srv/</value>
+            </setting>
+            <setting name="server_adress_datas" serializeAs="String">
+                <value>http://localhost/ASOStationService/achats</value>
+            </setting>
+            <setting name="server_adress_bin" serializeAs="String">
+                <value>http://www.aformatix.com/ASOstationservice/download/Fuel_ASO_Install.exe</value>
+            </setting>
+            <setting name="chemin_copie_locale" serializeAs="String">
+                <value>C:\inetpub\wwwroot\ASOStationService\Achats</value>
+            </setting>
+            <setting name="use_locale" serializeAs="String">
+                <value>False</value>
+            </setting>
+            <setting name="adresse_copie_api" serializeAs="String">
+                <value>http://localhost/ASOStationService/api/FileUpLoad/upLoadFiles</value>
+            </setting>
+        </Fuel01.Properties.Settings>
+    </userSettings>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
+        <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0"/>
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>

+ 282 - 0
Fuel_ASO/Classes.cs

@@ -0,0 +1,282 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Fuel01
+{
+
+    public class HubMessage
+    {
+        public string Action { get; set; }
+        public string Source { get; set; }
+        public string Description { get; set; }
+        public string Valeur { get; set; }
+        public string[] Destinataires { get; set; }
+        public string Date { get; set; }
+
+        public HubMessage()
+        {
+            Action = "";
+        }
+
+    }
+
+    public class Achats
+    {
+        public int StationId { get; set; }
+        public String Bandeau { get; set; }
+        public DateTime Date { get; set; }
+        public String KindCarbu { get; set; }
+        public float Volume { get; set; }
+        public float PrixCarbu { get; set; }
+        public float MontantCarbu { get; set; }
+
+        public List<PrestasFournies> Prestas { get; set; }
+
+        public float MontantTotal { get; set; }
+        public float TxTva { get; set; }
+
+    }
+
+    public class PrestasFournies
+    {
+        public String Libel { get; set; }
+        public String Name { get; set; }
+        public float Quantity { get; set; }
+        public float PrixUnitaire { get; set; }
+        public float Total { get; set; }
+        public float TxTva { get; set; }
+    }
+
+
+    public class vehi_achat
+    {
+        public string keyvehi_achat { get; set; }
+        public string date_achat { get; set; }
+        public string KindCarbu_achat { get; set; }
+        public float Volume_achat { get; set; }
+        public float PrixCarbu_achat { get; set; }
+        public float MontantCarbu_achat { get; set; }
+        public List<Presta_achat> Prestas_achat { get; set; }
+        public float TxTva_achat { get; set; }
+
+
+    }
+
+    public class Presta_achat
+    {
+        public string name_presta { get; set; }
+        public float Quantity_presta { get; set; }
+        public float PrixUnitaire_presta { get; set; }
+        public float TxTva_presta { get; set; }
+
+    }
+
+    public class pays
+    {
+        public string key_pays { get; set; }
+        public string nom_pays { get; set; }
+        public string code_pays { get; set; }
+        public string concat_pays { get; set; }
+    }
+
+    public class produit
+    {
+        public string key_prod { get; set; }
+        public string lib_prod { get; set; }
+        public string type_prod { get; set; }
+    }
+
+    public class famille
+    {
+        public string key_fam { get; set; }
+    }
+
+    public class vehicule
+    {
+        public string key_vehi { get; set; }
+        public string ope_vehi { get; set; }        
+        public string num_vehi { get; set; }           
+        public string cmpnum_vehi { get; set; }
+        public string immat_vehi { get; set; }
+        public string type_vehi { get; set; }
+        public bool ok_vehi { get; set; }
+        public string carbu_vehi { get; set; }
+        public int kmdep_vehi { get; set; }
+        public int kmarr_vehi { get; set; }
+        public string cond_vehi { get; set; }
+        public string famille_vehi { get; set; }
+        public string order_vehi { get; set; }
+           
+        public vehicule()
+        {           
+        }
+        public vehicule(string _key)
+        {
+            key_vehi = _key;
+        }
+        public vehicule(vehicule orig)
+        {
+            key_vehi = orig.key_vehi;
+            ope_vehi = orig.ope_vehi;
+            num_vehi = orig.num_vehi;
+            cmpnum_vehi = orig.cmpnum_vehi;
+            immat_vehi = orig.immat_vehi;
+            type_vehi = orig.type_vehi;
+            ok_vehi = orig.ok_vehi;
+            carbu_vehi = orig.carbu_vehi;
+            kmdep_vehi = orig.kmdep_vehi;
+            kmarr_vehi = orig.kmarr_vehi;
+            cond_vehi = orig.cond_vehi;
+            famille_vehi = orig.famille_vehi;
+            order_vehi = orig.order_vehi;
+        }
+        public void maj_vehi()
+        {
+            order_vehi = (num_vehi == null ? " ".PadLeft(5) : num_vehi.PadLeft(5)) + (cmpnum_vehi == null ? " ".PadLeft(5) : cmpnum_vehi.PadLeft(5));
+        }
+        public string ToLigne()
+        {
+            string ret = "";
+            ret = string.Format("{0}##^##{1}##^##{2}##^##{3}##^##{4}##^##{5}##^##{6}##^##{7}##^##{8}##^##{9}##^##{10}##^##{11}##^##",
+                           key_vehi,
+                           ope_vehi,
+                           num_vehi,
+                           cmpnum_vehi,
+                           immat_vehi,
+                           type_vehi,
+                           ok_vehi,
+                           carbu_vehi,
+                           kmdep_vehi,
+                           kmarr_vehi,
+                           cond_vehi,
+                           famille_vehi);
+
+            return ret;
+
+        }
+
+    }
+
+    public class TVI
+    {
+        private List<vehicule> Vehis;
+
+        public TVI()
+        {
+            Vehis = new List<vehicule>();
+            loadData_Vehi();
+        }
+
+        public List<vehicule> GetVehi()
+        {
+            var cont = (from vi in Vehis
+                        orderby vi.num_vehi
+                        select vi).ToList();
+            return cont;
+
+        }
+
+        private bool loadData_Vehi()
+        {
+            bool ret = false;
+            string path = @"c:\temp\MyTest.txt";
+            try
+            {
+                string[] lignes = File.ReadAllLines(path);
+                foreach (string lig in lignes)
+                {
+                    string[] val = lig.Split(new string[] { "##^##" }, StringSplitOptions.None);
+                    vehicule vi = new vehicule
+                    {
+                        key_vehi = val[0],
+                        ope_vehi = val[1],
+                        num_vehi = val[2],
+                        cmpnum_vehi = val[3],
+                        immat_vehi = val[4],
+                        type_vehi = val[5],
+                        ok_vehi = val[6] == "true",
+                        carbu_vehi = val[7],
+                        kmdep_vehi = Convert.ToInt32(val[8]),
+                        kmarr_vehi = Convert.ToInt32(val[9]),
+                        cond_vehi = val[10],
+                        famille_vehi = val[11]
+                    };
+                    Vehis.Add(vi);
+                }
+                ret = true;
+            }
+            catch (Exception ex)
+            {
+                ret = false;
+            }
+            return ret;
+        }
+
+    }
+
+    public class id_prod
+    {
+        public string type_pro { get; set; }
+        public string code_pro { get; set; }
+        public decimal ttc_pro { get; set; }
+        public decimal tva_pro { get; set; }
+        public string lib_pro { get; set; }
+
+    }
+    class vente_tot
+    {
+        public DataSet1.tb_venteRow vente { get; set; }
+        public decimal total_qtt { get; set; }
+        public decimal total_ht { get; set; }
+        public decimal total_ttc { get; set; }
+    }
+
+    class vente_tva
+    {
+        public decimal taux_tva { get; set; }
+        public decimal base_tva { get; set; }
+        public decimal mnt_tva { get; set; }
+        public decimal mnt_ttc { get; set; }
+    }
+    class ProdEqualityComparer : IEqualityComparer<id_prod>
+    {
+        public bool Equals(id_prod b1, id_prod b2)
+        {
+            if (b2 == null && b1 == null)
+                return true;
+            else if (b1 == null | b2 == null)
+                return false;
+            else if (b1.code_pro == b2.code_pro &
+                        b1.lib_pro== b2.lib_pro &
+                        b1.ttc_pro == b2.ttc_pro &
+                        b1.tva_pro == b2.tva_pro &
+                        b1.type_pro == b2.type_pro )
+                return true;
+            else
+                return false;
+        }
+
+        public int GetHashCode(id_prod bx)
+        {
+            int hCode = 0;
+            //for (int i = 0; i < bx.code_pro.Length; i++)
+            //    hCode += bx.code_pro[i];
+            //for (int i = 0; i < bx.lib_pro.Length; i++)
+            //    hCode += bx.lib_pro[i];
+            hCode += bx.code_pro.GetHashCode();
+            hCode += bx.lib_pro.GetHashCode();
+            hCode += bx.type_pro.GetHashCode();
+            hCode += (int)(bx.ttc_pro * 100);
+            hCode += (int)(bx.tva_pro * 100);
+            Console.WriteLine(string.Format(" Hash:{0} Prod:{1}  Prix:{2}  Tva:{3} Hash2:{4} ", bx.GetHashCode(), bx.code_pro, bx.ttc_pro, bx.tva_pro, hCode.GetHashCode()));
+            return hCode.GetHashCode();
+
+            //return bx.GetHashCode();
+        }
+    }
+
+}

+ 5703 - 0
Fuel_ASO/DataSet1.Designer.cs

@@ -0,0 +1,5703 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Ce code a été généré par un outil.
+//     Version du runtime :4.0.30319.42000
+//
+//     Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+//     le code est régénéré.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+#pragma warning disable 1591
+
+namespace Fuel01 {
+    
+    
+    /// <summary>
+    ///Represents a strongly typed in-memory cache of data.
+    ///</summary>
+    [global::System.Serializable()]
+    [global::System.ComponentModel.DesignerCategoryAttribute("code")]
+    [global::System.ComponentModel.ToolboxItem(true)]
+    [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema")]
+    [global::System.Xml.Serialization.XmlRootAttribute("DataSet1")]
+    [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")]
+    public partial class DataSet1 : global::System.Data.DataSet {
+        
+        private tb_vehiDataTable tabletb_vehi;
+        
+        private tb_epreuveDataTable tabletb_epreuve;
+        
+        private tb_etapeDataTable tabletb_etape;
+        
+        private tb_paysDataTable tabletb_pays;
+        
+        private tb_stationDataTable tabletb_station;
+        
+        private tb_familleDataTable tabletb_famille;
+        
+        private tb_prodDataTable tabletb_prod;
+        
+        private tb_prestaDataTable tabletb_presta;
+        
+        private tb_venteDataTable tabletb_vente;
+        
+        private global::System.Data.SchemaSerializationMode _schemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema;
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public DataSet1() {
+            this.BeginInit();
+            this.InitClass();
+            global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
+            base.Tables.CollectionChanged += schemaChangedHandler;
+            base.Relations.CollectionChanged += schemaChangedHandler;
+            this.EndInit();
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected DataSet1(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                base(info, context, false) {
+            if ((this.IsBinarySerialized(info, context) == true)) {
+                this.InitVars(false);
+                global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler1 = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
+                this.Tables.CollectionChanged += schemaChangedHandler1;
+                this.Relations.CollectionChanged += schemaChangedHandler1;
+                return;
+            }
+            string strSchema = ((string)(info.GetValue("XmlSchema", typeof(string))));
+            if ((this.DetermineSchemaSerializationMode(info, context) == global::System.Data.SchemaSerializationMode.IncludeSchema)) {
+                global::System.Data.DataSet ds = new global::System.Data.DataSet();
+                ds.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema)));
+                if ((ds.Tables["tb_vehi"] != null)) {
+                    base.Tables.Add(new tb_vehiDataTable(ds.Tables["tb_vehi"]));
+                }
+                if ((ds.Tables["tb_epreuve"] != null)) {
+                    base.Tables.Add(new tb_epreuveDataTable(ds.Tables["tb_epreuve"]));
+                }
+                if ((ds.Tables["tb_etape"] != null)) {
+                    base.Tables.Add(new tb_etapeDataTable(ds.Tables["tb_etape"]));
+                }
+                if ((ds.Tables["tb_pays"] != null)) {
+                    base.Tables.Add(new tb_paysDataTable(ds.Tables["tb_pays"]));
+                }
+                if ((ds.Tables["tb_station"] != null)) {
+                    base.Tables.Add(new tb_stationDataTable(ds.Tables["tb_station"]));
+                }
+                if ((ds.Tables["tb_famille"] != null)) {
+                    base.Tables.Add(new tb_familleDataTable(ds.Tables["tb_famille"]));
+                }
+                if ((ds.Tables["tb_prod"] != null)) {
+                    base.Tables.Add(new tb_prodDataTable(ds.Tables["tb_prod"]));
+                }
+                if ((ds.Tables["tb_presta"] != null)) {
+                    base.Tables.Add(new tb_prestaDataTable(ds.Tables["tb_presta"]));
+                }
+                if ((ds.Tables["tb_vente"] != null)) {
+                    base.Tables.Add(new tb_venteDataTable(ds.Tables["tb_vente"]));
+                }
+                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, global::System.Data.MissingSchemaAction.Add);
+                this.InitVars();
+            }
+            else {
+                this.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema)));
+            }
+            this.GetSerializationData(info, context);
+            global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged);
+            base.Tables.CollectionChanged += schemaChangedHandler;
+            this.Relations.CollectionChanged += schemaChangedHandler;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_vehiDataTable tb_vehi {
+            get {
+                return this.tabletb_vehi;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_epreuveDataTable tb_epreuve {
+            get {
+                return this.tabletb_epreuve;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_etapeDataTable tb_etape {
+            get {
+                return this.tabletb_etape;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_paysDataTable tb_pays {
+            get {
+                return this.tabletb_pays;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_stationDataTable tb_station {
+            get {
+                return this.tabletb_station;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_familleDataTable tb_famille {
+            get {
+                return this.tabletb_famille;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_prodDataTable tb_prod {
+            get {
+                return this.tabletb_prod;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_prestaDataTable tb_presta {
+            get {
+                return this.tabletb_presta;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.Browsable(false)]
+        [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)]
+        public tb_venteDataTable tb_vente {
+            get {
+                return this.tabletb_vente;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.BrowsableAttribute(true)]
+        [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Visible)]
+        public override global::System.Data.SchemaSerializationMode SchemaSerializationMode {
+            get {
+                return this._schemaSerializationMode;
+            }
+            set {
+                this._schemaSerializationMode = value;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)]
+        public new global::System.Data.DataTableCollection Tables {
+            get {
+                return base.Tables;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)]
+        public new global::System.Data.DataRelationCollection Relations {
+            get {
+                return base.Relations;
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override void InitializeDerivedDataSet() {
+            this.BeginInit();
+            this.InitClass();
+            this.EndInit();
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public override global::System.Data.DataSet Clone() {
+            DataSet1 cln = ((DataSet1)(base.Clone()));
+            cln.InitVars();
+            cln.SchemaSerializationMode = this.SchemaSerializationMode;
+            return cln;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override bool ShouldSerializeTables() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override bool ShouldSerializeRelations() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override void ReadXmlSerializable(global::System.Xml.XmlReader reader) {
+            if ((this.DetermineSchemaSerializationMode(reader) == global::System.Data.SchemaSerializationMode.IncludeSchema)) {
+                this.Reset();
+                global::System.Data.DataSet ds = new global::System.Data.DataSet();
+                ds.ReadXml(reader);
+                if ((ds.Tables["tb_vehi"] != null)) {
+                    base.Tables.Add(new tb_vehiDataTable(ds.Tables["tb_vehi"]));
+                }
+                if ((ds.Tables["tb_epreuve"] != null)) {
+                    base.Tables.Add(new tb_epreuveDataTable(ds.Tables["tb_epreuve"]));
+                }
+                if ((ds.Tables["tb_etape"] != null)) {
+                    base.Tables.Add(new tb_etapeDataTable(ds.Tables["tb_etape"]));
+                }
+                if ((ds.Tables["tb_pays"] != null)) {
+                    base.Tables.Add(new tb_paysDataTable(ds.Tables["tb_pays"]));
+                }
+                if ((ds.Tables["tb_station"] != null)) {
+                    base.Tables.Add(new tb_stationDataTable(ds.Tables["tb_station"]));
+                }
+                if ((ds.Tables["tb_famille"] != null)) {
+                    base.Tables.Add(new tb_familleDataTable(ds.Tables["tb_famille"]));
+                }
+                if ((ds.Tables["tb_prod"] != null)) {
+                    base.Tables.Add(new tb_prodDataTable(ds.Tables["tb_prod"]));
+                }
+                if ((ds.Tables["tb_presta"] != null)) {
+                    base.Tables.Add(new tb_prestaDataTable(ds.Tables["tb_presta"]));
+                }
+                if ((ds.Tables["tb_vente"] != null)) {
+                    base.Tables.Add(new tb_venteDataTable(ds.Tables["tb_vente"]));
+                }
+                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, global::System.Data.MissingSchemaAction.Add);
+                this.InitVars();
+            }
+            else {
+                this.ReadXml(reader);
+                this.InitVars();
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        protected override global::System.Xml.Schema.XmlSchema GetSchemaSerializable() {
+            global::System.IO.MemoryStream stream = new global::System.IO.MemoryStream();
+            this.WriteXmlSchema(new global::System.Xml.XmlTextWriter(stream, null));
+            stream.Position = 0;
+            return global::System.Xml.Schema.XmlSchema.Read(new global::System.Xml.XmlTextReader(stream), null);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        internal void InitVars() {
+            this.InitVars(true);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        internal void InitVars(bool initTable) {
+            this.tabletb_vehi = ((tb_vehiDataTable)(base.Tables["tb_vehi"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_vehi != null)) {
+                    this.tabletb_vehi.InitVars();
+                }
+            }
+            this.tabletb_epreuve = ((tb_epreuveDataTable)(base.Tables["tb_epreuve"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_epreuve != null)) {
+                    this.tabletb_epreuve.InitVars();
+                }
+            }
+            this.tabletb_etape = ((tb_etapeDataTable)(base.Tables["tb_etape"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_etape != null)) {
+                    this.tabletb_etape.InitVars();
+                }
+            }
+            this.tabletb_pays = ((tb_paysDataTable)(base.Tables["tb_pays"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_pays != null)) {
+                    this.tabletb_pays.InitVars();
+                }
+            }
+            this.tabletb_station = ((tb_stationDataTable)(base.Tables["tb_station"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_station != null)) {
+                    this.tabletb_station.InitVars();
+                }
+            }
+            this.tabletb_famille = ((tb_familleDataTable)(base.Tables["tb_famille"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_famille != null)) {
+                    this.tabletb_famille.InitVars();
+                }
+            }
+            this.tabletb_prod = ((tb_prodDataTable)(base.Tables["tb_prod"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_prod != null)) {
+                    this.tabletb_prod.InitVars();
+                }
+            }
+            this.tabletb_presta = ((tb_prestaDataTable)(base.Tables["tb_presta"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_presta != null)) {
+                    this.tabletb_presta.InitVars();
+                }
+            }
+            this.tabletb_vente = ((tb_venteDataTable)(base.Tables["tb_vente"]));
+            if ((initTable == true)) {
+                if ((this.tabletb_vente != null)) {
+                    this.tabletb_vente.InitVars();
+                }
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private void InitClass() {
+            this.DataSetName = "DataSet1";
+            this.Prefix = "";
+            this.Namespace = "http://tempuri.org/DataSet1.xsd";
+            this.EnforceConstraints = true;
+            this.SchemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema;
+            this.tabletb_vehi = new tb_vehiDataTable();
+            base.Tables.Add(this.tabletb_vehi);
+            this.tabletb_epreuve = new tb_epreuveDataTable();
+            base.Tables.Add(this.tabletb_epreuve);
+            this.tabletb_etape = new tb_etapeDataTable();
+            base.Tables.Add(this.tabletb_etape);
+            this.tabletb_pays = new tb_paysDataTable();
+            base.Tables.Add(this.tabletb_pays);
+            this.tabletb_station = new tb_stationDataTable();
+            base.Tables.Add(this.tabletb_station);
+            this.tabletb_famille = new tb_familleDataTable();
+            base.Tables.Add(this.tabletb_famille);
+            this.tabletb_prod = new tb_prodDataTable();
+            base.Tables.Add(this.tabletb_prod);
+            this.tabletb_presta = new tb_prestaDataTable();
+            base.Tables.Add(this.tabletb_presta);
+            this.tabletb_vente = new tb_venteDataTable();
+            base.Tables.Add(this.tabletb_vente);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_vehi() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_epreuve() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_etape() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_pays() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_station() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_famille() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_prod() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_presta() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private bool ShouldSerializetb_vente() {
+            return false;
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        private void SchemaChanged(object sender, global::System.ComponentModel.CollectionChangeEventArgs e) {
+            if ((e.Action == global::System.ComponentModel.CollectionChangeAction.Remove)) {
+                this.InitVars();
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+            DataSet1 ds = new DataSet1();
+            global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+            global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+            global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny();
+            any.Namespace = ds.Namespace;
+            sequence.Items.Add(any);
+            type.Particle = sequence;
+            global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+            if (xs.Contains(dsSchema.TargetNamespace)) {
+                global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                try {
+                    global::System.Xml.Schema.XmlSchema schema = null;
+                    dsSchema.Write(s1);
+                    for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                        schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                        s2.SetLength(0);
+                        schema.Write(s2);
+                        if ((s1.Length == s2.Length)) {
+                            s1.Position = 0;
+                            s2.Position = 0;
+                            for (; ((s1.Position != s1.Length) 
+                                        && (s1.ReadByte() == s2.ReadByte())); ) {
+                                ;
+                            }
+                            if ((s1.Position == s1.Length)) {
+                                return type;
+                            }
+                        }
+                    }
+                }
+                finally {
+                    if ((s1 != null)) {
+                        s1.Close();
+                    }
+                    if ((s2 != null)) {
+                        s2.Close();
+                    }
+                }
+            }
+            xs.Add(dsSchema);
+            return type;
+        }
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_vehiRowChangeEventHandler(object sender, tb_vehiRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_epreuveRowChangeEventHandler(object sender, tb_epreuveRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_etapeRowChangeEventHandler(object sender, tb_etapeRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_paysRowChangeEventHandler(object sender, tb_paysRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_stationRowChangeEventHandler(object sender, tb_stationRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_familleRowChangeEventHandler(object sender, tb_familleRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_prodRowChangeEventHandler(object sender, tb_prodRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_prestaRowChangeEventHandler(object sender, tb_prestaRowChangeEvent e);
+        
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public delegate void tb_venteRowChangeEventHandler(object sender, tb_venteRowChangeEvent e);
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_vehiDataTable : global::System.Data.TypedTableBase<tb_vehiRow> {
+            
+            private global::System.Data.DataColumn columnkey_vehi;
+            
+            private global::System.Data.DataColumn columnnum_vehi;
+            
+            private global::System.Data.DataColumn columncmpnum_vehi;
+            
+            private global::System.Data.DataColumn columnimmat_vehi;
+            
+            private global::System.Data.DataColumn columnope_vehi;
+            
+            private global::System.Data.DataColumn columntype_vehi;
+            
+            private global::System.Data.DataColumn columncond_vehi;
+            
+            private global::System.Data.DataColumn columnfamille_vehi;
+            
+            private global::System.Data.DataColumn columncarbu_vehi;
+            
+            private global::System.Data.DataColumn columnkmdep_vehi;
+            
+            private global::System.Data.DataColumn columnkmarr_vehi;
+            
+            private global::System.Data.DataColumn columncateg_vehi;
+            
+            private global::System.Data.DataColumn columnsort1_vehi;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiDataTable() {
+                this.TableName = "tb_vehi";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_vehiDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_vehiDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_vehiColumn {
+                get {
+                    return this.columnkey_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn num_vehiColumn {
+                get {
+                    return this.columnnum_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn cmpnum_vehiColumn {
+                get {
+                    return this.columncmpnum_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn immat_vehiColumn {
+                get {
+                    return this.columnimmat_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ope_vehiColumn {
+                get {
+                    return this.columnope_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn type_vehiColumn {
+                get {
+                    return this.columntype_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn cond_vehiColumn {
+                get {
+                    return this.columncond_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn famille_vehiColumn {
+                get {
+                    return this.columnfamille_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn carbu_vehiColumn {
+                get {
+                    return this.columncarbu_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn kmdep_vehiColumn {
+                get {
+                    return this.columnkmdep_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn kmarr_vehiColumn {
+                get {
+                    return this.columnkmarr_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn categ_vehiColumn {
+                get {
+                    return this.columncateg_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn sort1_vehiColumn {
+                get {
+                    return this.columnsort1_vehi;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow this[int index] {
+                get {
+                    return ((tb_vehiRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_vehiRowChangeEventHandler tb_vehiRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_vehiRow(tb_vehiRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow Addtb_vehiRow(string key_vehi, ushort num_vehi, string cmpnum_vehi, string immat_vehi, string ope_vehi, string type_vehi, string cond_vehi, string famille_vehi, string carbu_vehi, string kmdep_vehi, string kmarr_vehi, string categ_vehi, string sort1_vehi) {
+                tb_vehiRow rowtb_vehiRow = ((tb_vehiRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_vehi,
+                        num_vehi,
+                        cmpnum_vehi,
+                        immat_vehi,
+                        ope_vehi,
+                        type_vehi,
+                        cond_vehi,
+                        famille_vehi,
+                        carbu_vehi,
+                        kmdep_vehi,
+                        kmarr_vehi,
+                        categ_vehi,
+                        sort1_vehi};
+                rowtb_vehiRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_vehiRow);
+                return rowtb_vehiRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow FindBykey_vehi(string key_vehi) {
+                return ((tb_vehiRow)(this.Rows.Find(new object[] {
+                            key_vehi})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_vehiDataTable cln = ((tb_vehiDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_vehiDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_vehi = base.Columns["key_vehi"];
+                this.columnnum_vehi = base.Columns["num_vehi"];
+                this.columncmpnum_vehi = base.Columns["cmpnum_vehi"];
+                this.columnimmat_vehi = base.Columns["immat_vehi"];
+                this.columnope_vehi = base.Columns["ope_vehi"];
+                this.columntype_vehi = base.Columns["type_vehi"];
+                this.columncond_vehi = base.Columns["cond_vehi"];
+                this.columnfamille_vehi = base.Columns["famille_vehi"];
+                this.columncarbu_vehi = base.Columns["carbu_vehi"];
+                this.columnkmdep_vehi = base.Columns["kmdep_vehi"];
+                this.columnkmarr_vehi = base.Columns["kmarr_vehi"];
+                this.columncateg_vehi = base.Columns["categ_vehi"];
+                this.columnsort1_vehi = base.Columns["sort1_vehi"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_vehi = new global::System.Data.DataColumn("key_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_vehi);
+                this.columnnum_vehi = new global::System.Data.DataColumn("num_vehi", typeof(ushort), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnum_vehi);
+                this.columncmpnum_vehi = new global::System.Data.DataColumn("cmpnum_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncmpnum_vehi);
+                this.columnimmat_vehi = new global::System.Data.DataColumn("immat_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnimmat_vehi);
+                this.columnope_vehi = new global::System.Data.DataColumn("ope_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnope_vehi);
+                this.columntype_vehi = new global::System.Data.DataColumn("type_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntype_vehi);
+                this.columncond_vehi = new global::System.Data.DataColumn("cond_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncond_vehi);
+                this.columnfamille_vehi = new global::System.Data.DataColumn("famille_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnfamille_vehi);
+                this.columncarbu_vehi = new global::System.Data.DataColumn("carbu_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncarbu_vehi);
+                this.columnkmdep_vehi = new global::System.Data.DataColumn("kmdep_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkmdep_vehi);
+                this.columnkmarr_vehi = new global::System.Data.DataColumn("kmarr_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkmarr_vehi);
+                this.columncateg_vehi = new global::System.Data.DataColumn("categ_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncateg_vehi);
+                this.columnsort1_vehi = new global::System.Data.DataColumn("sort1_vehi", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnsort1_vehi);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_vehi}, true));
+                this.columnkey_vehi.AllowDBNull = false;
+                this.columnkey_vehi.Unique = true;
+                this.columncond_vehi.DefaultValue = ((string)(""));
+                this.columncateg_vehi.MaxLength = 1;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow Newtb_vehiRow() {
+                return ((tb_vehiRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_vehiRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_vehiRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_vehiRowChanged != null)) {
+                    this.tb_vehiRowChanged(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_vehiRowChanging != null)) {
+                    this.tb_vehiRowChanging(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_vehiRowDeleted != null)) {
+                    this.tb_vehiRowDeleted(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_vehiRowDeleting != null)) {
+                    this.tb_vehiRowDeleting(this, new tb_vehiRowChangeEvent(((tb_vehiRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_vehiRow(tb_vehiRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_vehiDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_epreuveDataTable : global::System.Data.TypedTableBase<tb_epreuveRow> {
+            
+            private global::System.Data.DataColumn columnkey_epr;
+            
+            private global::System.Data.DataColumn columnnom_epr;
+            
+            private global::System.Data.DataColumn columndeb_epr;
+            
+            private global::System.Data.DataColumn columnfin_epr;
+            
+            private global::System.Data.DataColumn columnabrev_epr;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveDataTable() {
+                this.TableName = "tb_epreuve";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_epreuveDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_epreuveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_eprColumn {
+                get {
+                    return this.columnkey_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_eprColumn {
+                get {
+                    return this.columnnom_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn deb_eprColumn {
+                get {
+                    return this.columndeb_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn fin_eprColumn {
+                get {
+                    return this.columnfin_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn abrev_eprColumn {
+                get {
+                    return this.columnabrev_epr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow this[int index] {
+                get {
+                    return ((tb_epreuveRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_epreuveRowChangeEventHandler tb_epreuveRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_epreuveRow(tb_epreuveRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow Addtb_epreuveRow(string key_epr, string nom_epr, System.DateTime deb_epr, System.DateTime fin_epr, string abrev_epr) {
+                tb_epreuveRow rowtb_epreuveRow = ((tb_epreuveRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_epr,
+                        nom_epr,
+                        deb_epr,
+                        fin_epr,
+                        abrev_epr};
+                rowtb_epreuveRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_epreuveRow);
+                return rowtb_epreuveRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow FindBykey_epr(string key_epr) {
+                return ((tb_epreuveRow)(this.Rows.Find(new object[] {
+                            key_epr})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_epreuveDataTable cln = ((tb_epreuveDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_epreuveDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_epr = base.Columns["key_epr"];
+                this.columnnom_epr = base.Columns["nom_epr"];
+                this.columndeb_epr = base.Columns["deb_epr"];
+                this.columnfin_epr = base.Columns["fin_epr"];
+                this.columnabrev_epr = base.Columns["abrev_epr"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_epr = new global::System.Data.DataColumn("key_epr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_epr);
+                this.columnnom_epr = new global::System.Data.DataColumn("nom_epr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_epr);
+                this.columndeb_epr = new global::System.Data.DataColumn("deb_epr", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndeb_epr);
+                this.columnfin_epr = new global::System.Data.DataColumn("fin_epr", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnfin_epr);
+                this.columnabrev_epr = new global::System.Data.DataColumn("abrev_epr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnabrev_epr);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_epr}, true));
+                this.columnkey_epr.AllowDBNull = false;
+                this.columnkey_epr.Unique = true;
+                this.columnnom_epr.DefaultValue = ((string)(""));
+                this.columnabrev_epr.DefaultValue = ((string)(""));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow Newtb_epreuveRow() {
+                return ((tb_epreuveRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_epreuveRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_epreuveRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_epreuveRowChanged != null)) {
+                    this.tb_epreuveRowChanged(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_epreuveRowChanging != null)) {
+                    this.tb_epreuveRowChanging(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_epreuveRowDeleted != null)) {
+                    this.tb_epreuveRowDeleted(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_epreuveRowDeleting != null)) {
+                    this.tb_epreuveRowDeleting(this, new tb_epreuveRowChangeEvent(((tb_epreuveRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_epreuveRow(tb_epreuveRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_epreuveDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_etapeDataTable : global::System.Data.TypedTableBase<tb_etapeRow> {
+            
+            private global::System.Data.DataColumn columnepr_etp;
+            
+            private global::System.Data.DataColumn columnnum_etp;
+            
+            private global::System.Data.DataColumn columndate_etp;
+            
+            private global::System.Data.DataColumn columnnom_etp;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeDataTable() {
+                this.TableName = "tb_etape";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_etapeDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_etapeDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn epr_etpColumn {
+                get {
+                    return this.columnepr_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn num_etpColumn {
+                get {
+                    return this.columnnum_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn date_etpColumn {
+                get {
+                    return this.columndate_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_etpColumn {
+                get {
+                    return this.columnnom_etp;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow this[int index] {
+                get {
+                    return ((tb_etapeRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_etapeRowChangeEventHandler tb_etapeRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_etapeRow(tb_etapeRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow Addtb_etapeRow(string epr_etp, ushort num_etp, System.DateTime date_etp, string nom_etp) {
+                tb_etapeRow rowtb_etapeRow = ((tb_etapeRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        epr_etp,
+                        num_etp,
+                        date_etp,
+                        nom_etp};
+                rowtb_etapeRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_etapeRow);
+                return rowtb_etapeRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow FindByepr_etpnum_etp(string epr_etp, ushort num_etp) {
+                return ((tb_etapeRow)(this.Rows.Find(new object[] {
+                            epr_etp,
+                            num_etp})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_etapeDataTable cln = ((tb_etapeDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_etapeDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnepr_etp = base.Columns["epr_etp"];
+                this.columnnum_etp = base.Columns["num_etp"];
+                this.columndate_etp = base.Columns["date_etp"];
+                this.columnnom_etp = base.Columns["nom_etp"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnepr_etp = new global::System.Data.DataColumn("epr_etp", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnepr_etp);
+                this.columnnum_etp = new global::System.Data.DataColumn("num_etp", typeof(ushort), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnum_etp);
+                this.columndate_etp = new global::System.Data.DataColumn("date_etp", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndate_etp);
+                this.columnnom_etp = new global::System.Data.DataColumn("nom_etp", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_etp);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnepr_etp,
+                                this.columnnum_etp}, true));
+                this.columnepr_etp.AllowDBNull = false;
+                this.columnnum_etp.AllowDBNull = false;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow Newtb_etapeRow() {
+                return ((tb_etapeRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_etapeRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_etapeRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_etapeRowChanged != null)) {
+                    this.tb_etapeRowChanged(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_etapeRowChanging != null)) {
+                    this.tb_etapeRowChanging(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_etapeRowDeleted != null)) {
+                    this.tb_etapeRowDeleted(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_etapeRowDeleting != null)) {
+                    this.tb_etapeRowDeleting(this, new tb_etapeRowChangeEvent(((tb_etapeRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_etapeRow(tb_etapeRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_etapeDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_paysDataTable : global::System.Data.TypedTableBase<tb_paysRow> {
+            
+            private global::System.Data.DataColumn columnkey_pays;
+            
+            private global::System.Data.DataColumn columnnom_pays;
+            
+            private global::System.Data.DataColumn columncode_pays;
+            
+            private global::System.Data.DataColumn columntxchge_pays;
+            
+            private global::System.Data.DataColumn columntva_pays;
+            
+            private global::System.Data.DataColumn columnimg_pays;
+            
+            private global::System.Data.DataColumn columnorder_pays;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysDataTable() {
+                this.TableName = "tb_pays";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_paysDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_paysDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_paysColumn {
+                get {
+                    return this.columnkey_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_paysColumn {
+                get {
+                    return this.columnnom_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn code_paysColumn {
+                get {
+                    return this.columncode_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn txchge_paysColumn {
+                get {
+                    return this.columntxchge_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_paysColumn {
+                get {
+                    return this.columntva_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn img_paysColumn {
+                get {
+                    return this.columnimg_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn order_paysColumn {
+                get {
+                    return this.columnorder_pays;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow this[int index] {
+                get {
+                    return ((tb_paysRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_paysRowChangeEventHandler tb_paysRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_paysRow(tb_paysRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow Addtb_paysRow(string key_pays, string nom_pays, string code_pays, float txchge_pays, float tva_pays, string img_pays, ushort order_pays) {
+                tb_paysRow rowtb_paysRow = ((tb_paysRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_pays,
+                        nom_pays,
+                        code_pays,
+                        txchge_pays,
+                        tva_pays,
+                        img_pays,
+                        order_pays};
+                rowtb_paysRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_paysRow);
+                return rowtb_paysRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow FindBykey_pays(string key_pays) {
+                return ((tb_paysRow)(this.Rows.Find(new object[] {
+                            key_pays})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_paysDataTable cln = ((tb_paysDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_paysDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_pays = base.Columns["key_pays"];
+                this.columnnom_pays = base.Columns["nom_pays"];
+                this.columncode_pays = base.Columns["code_pays"];
+                this.columntxchge_pays = base.Columns["txchge_pays"];
+                this.columntva_pays = base.Columns["tva_pays"];
+                this.columnimg_pays = base.Columns["img_pays"];
+                this.columnorder_pays = base.Columns["order_pays"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_pays = new global::System.Data.DataColumn("key_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_pays);
+                this.columnnom_pays = new global::System.Data.DataColumn("nom_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_pays);
+                this.columncode_pays = new global::System.Data.DataColumn("code_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncode_pays);
+                this.columntxchge_pays = new global::System.Data.DataColumn("txchge_pays", typeof(float), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntxchge_pays);
+                this.columntva_pays = new global::System.Data.DataColumn("tva_pays", typeof(float), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_pays);
+                this.columnimg_pays = new global::System.Data.DataColumn("img_pays", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnimg_pays);
+                this.columnorder_pays = new global::System.Data.DataColumn("order_pays", typeof(ushort), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnorder_pays);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_pays}, true));
+                this.columnkey_pays.AllowDBNull = false;
+                this.columnkey_pays.Unique = true;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow Newtb_paysRow() {
+                return ((tb_paysRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_paysRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_paysRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_paysRowChanged != null)) {
+                    this.tb_paysRowChanged(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_paysRowChanging != null)) {
+                    this.tb_paysRowChanging(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_paysRowDeleted != null)) {
+                    this.tb_paysRowDeleted(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_paysRowDeleting != null)) {
+                    this.tb_paysRowDeleting(this, new tb_paysRowChangeEvent(((tb_paysRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_paysRow(tb_paysRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_paysDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_stationDataTable : global::System.Data.TypedTableBase<tb_stationRow> {
+            
+            private global::System.Data.DataColumn columnkey_sta;
+            
+            private global::System.Data.DataColumn columnepr_sta;
+            
+            private global::System.Data.DataColumn columnetp_sta;
+            
+            private global::System.Data.DataColumn columndate_sta;
+            
+            private global::System.Data.DataColumn columnnum_sta;
+            
+            private global::System.Data.DataColumn columnnom_sta;
+            
+            private global::System.Data.DataColumn columnadr1_sta;
+            
+            private global::System.Data.DataColumn columnadr2_sta;
+            
+            private global::System.Data.DataColumn columncp_sta;
+            
+            private global::System.Data.DataColumn columnville_sta;
+            
+            private global::System.Data.DataColumn columnpays_sta;
+            
+            private global::System.Data.DataColumn columncontact_sta;
+            
+            private global::System.Data.DataColumn columntel_sta;
+            
+            private global::System.Data.DataColumn columntva_sta;
+            
+            private global::System.Data.DataColumn columndivers_sta;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationDataTable() {
+                this.TableName = "tb_station";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_stationDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_stationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_staColumn {
+                get {
+                    return this.columnkey_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn epr_staColumn {
+                get {
+                    return this.columnepr_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn etp_staColumn {
+                get {
+                    return this.columnetp_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn date_staColumn {
+                get {
+                    return this.columndate_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn num_staColumn {
+                get {
+                    return this.columnnum_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn nom_staColumn {
+                get {
+                    return this.columnnom_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn adr1_staColumn {
+                get {
+                    return this.columnadr1_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn adr2_staColumn {
+                get {
+                    return this.columnadr2_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn cp_staColumn {
+                get {
+                    return this.columncp_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ville_staColumn {
+                get {
+                    return this.columnville_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn pays_staColumn {
+                get {
+                    return this.columnpays_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn contact_staColumn {
+                get {
+                    return this.columncontact_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tel_staColumn {
+                get {
+                    return this.columntel_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_staColumn {
+                get {
+                    return this.columntva_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn divers_staColumn {
+                get {
+                    return this.columndivers_sta;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow this[int index] {
+                get {
+                    return ((tb_stationRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_stationRowChangeEventHandler tb_stationRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_stationRow(tb_stationRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow Addtb_stationRow(string key_sta, string epr_sta, string etp_sta, System.DateTime date_sta, string num_sta, string nom_sta, string adr1_sta, string adr2_sta, string cp_sta, string ville_sta, string pays_sta, string contact_sta, string tel_sta, string tva_sta, string divers_sta) {
+                tb_stationRow rowtb_stationRow = ((tb_stationRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_sta,
+                        epr_sta,
+                        etp_sta,
+                        date_sta,
+                        num_sta,
+                        nom_sta,
+                        adr1_sta,
+                        adr2_sta,
+                        cp_sta,
+                        ville_sta,
+                        pays_sta,
+                        contact_sta,
+                        tel_sta,
+                        tva_sta,
+                        divers_sta};
+                rowtb_stationRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_stationRow);
+                return rowtb_stationRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow FindBykey_sta(string key_sta) {
+                return ((tb_stationRow)(this.Rows.Find(new object[] {
+                            key_sta})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_stationDataTable cln = ((tb_stationDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_stationDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_sta = base.Columns["key_sta"];
+                this.columnepr_sta = base.Columns["epr_sta"];
+                this.columnetp_sta = base.Columns["etp_sta"];
+                this.columndate_sta = base.Columns["date_sta"];
+                this.columnnum_sta = base.Columns["num_sta"];
+                this.columnnom_sta = base.Columns["nom_sta"];
+                this.columnadr1_sta = base.Columns["adr1_sta"];
+                this.columnadr2_sta = base.Columns["adr2_sta"];
+                this.columncp_sta = base.Columns["cp_sta"];
+                this.columnville_sta = base.Columns["ville_sta"];
+                this.columnpays_sta = base.Columns["pays_sta"];
+                this.columncontact_sta = base.Columns["contact_sta"];
+                this.columntel_sta = base.Columns["tel_sta"];
+                this.columntva_sta = base.Columns["tva_sta"];
+                this.columndivers_sta = base.Columns["divers_sta"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_sta = new global::System.Data.DataColumn("key_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_sta);
+                this.columnepr_sta = new global::System.Data.DataColumn("epr_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnepr_sta);
+                this.columnetp_sta = new global::System.Data.DataColumn("etp_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnetp_sta);
+                this.columndate_sta = new global::System.Data.DataColumn("date_sta", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndate_sta);
+                this.columnnum_sta = new global::System.Data.DataColumn("num_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnum_sta);
+                this.columnnom_sta = new global::System.Data.DataColumn("nom_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnnom_sta);
+                this.columnadr1_sta = new global::System.Data.DataColumn("adr1_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnadr1_sta);
+                this.columnadr2_sta = new global::System.Data.DataColumn("adr2_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnadr2_sta);
+                this.columncp_sta = new global::System.Data.DataColumn("cp_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncp_sta);
+                this.columnville_sta = new global::System.Data.DataColumn("ville_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnville_sta);
+                this.columnpays_sta = new global::System.Data.DataColumn("pays_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnpays_sta);
+                this.columncontact_sta = new global::System.Data.DataColumn("contact_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columncontact_sta);
+                this.columntel_sta = new global::System.Data.DataColumn("tel_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntel_sta);
+                this.columntva_sta = new global::System.Data.DataColumn("tva_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_sta);
+                this.columndivers_sta = new global::System.Data.DataColumn("divers_sta", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndivers_sta);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_sta}, true));
+                this.columnkey_sta.AllowDBNull = false;
+                this.columnkey_sta.Unique = true;
+                this.columnepr_sta.DefaultValue = ((string)(""));
+                this.columnetp_sta.DefaultValue = ((string)(""));
+                this.columnnum_sta.DefaultValue = ((string)(""));
+                this.columnnom_sta.DefaultValue = ((string)(""));
+                this.columnadr1_sta.DefaultValue = ((string)(""));
+                this.columnadr2_sta.DefaultValue = ((string)(""));
+                this.columncp_sta.DefaultValue = ((string)(""));
+                this.columnville_sta.DefaultValue = ((string)(""));
+                this.columnpays_sta.DefaultValue = ((string)(""));
+                this.columncontact_sta.DefaultValue = ((string)(""));
+                this.columntel_sta.DefaultValue = ((string)(""));
+                this.columntva_sta.DefaultValue = ((string)(""));
+                this.columndivers_sta.DefaultValue = ((string)(""));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow Newtb_stationRow() {
+                return ((tb_stationRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_stationRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_stationRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_stationRowChanged != null)) {
+                    this.tb_stationRowChanged(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_stationRowChanging != null)) {
+                    this.tb_stationRowChanging(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_stationRowDeleted != null)) {
+                    this.tb_stationRowDeleted(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_stationRowDeleting != null)) {
+                    this.tb_stationRowDeleting(this, new tb_stationRowChangeEvent(((tb_stationRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_stationRow(tb_stationRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_stationDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_familleDataTable : global::System.Data.TypedTableBase<tb_familleRow> {
+            
+            private global::System.Data.DataColumn columnkey_fam;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleDataTable() {
+                this.TableName = "tb_famille";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_familleDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_familleDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_famColumn {
+                get {
+                    return this.columnkey_fam;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow this[int index] {
+                get {
+                    return ((tb_familleRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_familleRowChangeEventHandler tb_familleRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_familleRow(tb_familleRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow Addtb_familleRow(string key_fam) {
+                tb_familleRow rowtb_familleRow = ((tb_familleRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_fam};
+                rowtb_familleRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_familleRow);
+                return rowtb_familleRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow FindBykey_fam(string key_fam) {
+                return ((tb_familleRow)(this.Rows.Find(new object[] {
+                            key_fam})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_familleDataTable cln = ((tb_familleDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_familleDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_fam = base.Columns["key_fam"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_fam = new global::System.Data.DataColumn("key_fam", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_fam);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_fam}, true));
+                this.columnkey_fam.AllowDBNull = false;
+                this.columnkey_fam.Unique = true;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow Newtb_familleRow() {
+                return ((tb_familleRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_familleRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_familleRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_familleRowChanged != null)) {
+                    this.tb_familleRowChanged(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_familleRowChanging != null)) {
+                    this.tb_familleRowChanging(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_familleRowDeleted != null)) {
+                    this.tb_familleRowDeleted(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_familleRowDeleting != null)) {
+                    this.tb_familleRowDeleting(this, new tb_familleRowChangeEvent(((tb_familleRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_familleRow(tb_familleRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_familleDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_prodDataTable : global::System.Data.TypedTableBase<tb_prodRow> {
+            
+            private global::System.Data.DataColumn columnkey_prod;
+            
+            private global::System.Data.DataColumn columnlib_prod;
+            
+            private global::System.Data.DataColumn columntype_prod;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodDataTable() {
+                this.TableName = "tb_prod";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prodDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_prodDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn key_prodColumn {
+                get {
+                    return this.columnkey_prod;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn lib_prodColumn {
+                get {
+                    return this.columnlib_prod;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn type_prodColumn {
+                get {
+                    return this.columntype_prod;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow this[int index] {
+                get {
+                    return ((tb_prodRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prodRowChangeEventHandler tb_prodRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_prodRow(tb_prodRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow Addtb_prodRow(string key_prod, string lib_prod, string type_prod) {
+                tb_prodRow rowtb_prodRow = ((tb_prodRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        key_prod,
+                        lib_prod,
+                        type_prod};
+                rowtb_prodRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_prodRow);
+                return rowtb_prodRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow FindBykey_prod(string key_prod) {
+                return ((tb_prodRow)(this.Rows.Find(new object[] {
+                            key_prod})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_prodDataTable cln = ((tb_prodDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_prodDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnkey_prod = base.Columns["key_prod"];
+                this.columnlib_prod = base.Columns["lib_prod"];
+                this.columntype_prod = base.Columns["type_prod"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnkey_prod = new global::System.Data.DataColumn("key_prod", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkey_prod);
+                this.columnlib_prod = new global::System.Data.DataColumn("lib_prod", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnlib_prod);
+                this.columntype_prod = new global::System.Data.DataColumn("type_prod", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntype_prod);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnkey_prod}, true));
+                this.columnkey_prod.AllowDBNull = false;
+                this.columnkey_prod.Unique = true;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow Newtb_prodRow() {
+                return ((tb_prodRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_prodRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_prodRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_prodRowChanged != null)) {
+                    this.tb_prodRowChanged(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_prodRowChanging != null)) {
+                    this.tb_prodRowChanging(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_prodRowDeleted != null)) {
+                    this.tb_prodRowDeleted(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_prodRowDeleting != null)) {
+                    this.tb_prodRowDeleting(this, new tb_prodRowChangeEvent(((tb_prodRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_prodRow(tb_prodRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_prodDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_prestaDataTable : global::System.Data.TypedTableBase<tb_prestaRow> {
+            
+            private global::System.Data.DataColumn columnsta_pr;
+            
+            private global::System.Data.DataColumn columnprod_pr;
+            
+            private global::System.Data.DataColumn columnkind_pr;
+            
+            private global::System.Data.DataColumn columnunite_pr;
+            
+            private global::System.Data.DataColumn columnpu_pr;
+            
+            private global::System.Data.DataColumn columntva_pr;
+            
+            private global::System.Data.DataColumn columnttc_pr;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaDataTable() {
+                this.TableName = "tb_presta";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prestaDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_prestaDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn sta_prColumn {
+                get {
+                    return this.columnsta_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn prod_prColumn {
+                get {
+                    return this.columnprod_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn kind_prColumn {
+                get {
+                    return this.columnkind_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn unite_prColumn {
+                get {
+                    return this.columnunite_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn pu_prColumn {
+                get {
+                    return this.columnpu_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_prColumn {
+                get {
+                    return this.columntva_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ttc_prColumn {
+                get {
+                    return this.columnttc_pr;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow this[int index] {
+                get {
+                    return ((tb_prestaRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_prestaRowChangeEventHandler tb_prestaRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_prestaRow(tb_prestaRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow Addtb_prestaRow(string sta_pr, string prod_pr, string kind_pr, string unite_pr, decimal pu_pr, decimal tva_pr, decimal ttc_pr) {
+                tb_prestaRow rowtb_prestaRow = ((tb_prestaRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        sta_pr,
+                        prod_pr,
+                        kind_pr,
+                        unite_pr,
+                        pu_pr,
+                        tva_pr,
+                        ttc_pr};
+                rowtb_prestaRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_prestaRow);
+                return rowtb_prestaRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow FindBysta_prprod_pr(string sta_pr, string prod_pr) {
+                return ((tb_prestaRow)(this.Rows.Find(new object[] {
+                            sta_pr,
+                            prod_pr})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_prestaDataTable cln = ((tb_prestaDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_prestaDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnsta_pr = base.Columns["sta_pr"];
+                this.columnprod_pr = base.Columns["prod_pr"];
+                this.columnkind_pr = base.Columns["kind_pr"];
+                this.columnunite_pr = base.Columns["unite_pr"];
+                this.columnpu_pr = base.Columns["pu_pr"];
+                this.columntva_pr = base.Columns["tva_pr"];
+                this.columnttc_pr = base.Columns["ttc_pr"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnsta_pr = new global::System.Data.DataColumn("sta_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnsta_pr);
+                this.columnprod_pr = new global::System.Data.DataColumn("prod_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnprod_pr);
+                this.columnkind_pr = new global::System.Data.DataColumn("kind_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnkind_pr);
+                this.columnunite_pr = new global::System.Data.DataColumn("unite_pr", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnunite_pr);
+                this.columnpu_pr = new global::System.Data.DataColumn("pu_pr", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnpu_pr);
+                this.columntva_pr = new global::System.Data.DataColumn("tva_pr", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_pr);
+                this.columnttc_pr = new global::System.Data.DataColumn("ttc_pr", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnttc_pr);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnsta_pr,
+                                this.columnprod_pr}, true));
+                this.columnsta_pr.AllowDBNull = false;
+                this.columnprod_pr.AllowDBNull = false;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow Newtb_prestaRow() {
+                return ((tb_prestaRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_prestaRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_prestaRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_prestaRowChanged != null)) {
+                    this.tb_prestaRowChanged(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_prestaRowChanging != null)) {
+                    this.tb_prestaRowChanging(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_prestaRowDeleted != null)) {
+                    this.tb_prestaRowDeleted(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_prestaRowDeleting != null)) {
+                    this.tb_prestaRowDeleting(this, new tb_prestaRowChangeEvent(((tb_prestaRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_prestaRow(tb_prestaRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_prestaDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents the strongly named DataTable class.
+        ///</summary>
+        [global::System.Serializable()]
+        [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")]
+        public partial class tb_venteDataTable : global::System.Data.TypedTableBase<tb_venteRow> {
+            
+            private global::System.Data.DataColumn columnepreuve_vt;
+            
+            private global::System.Data.DataColumn columnstation_vt;
+            
+            private global::System.Data.DataColumn columnvehi_vt;
+            
+            private global::System.Data.DataColumn columnprod_vt;
+            
+            private global::System.Data.DataColumn columndate_vt;
+            
+            private global::System.Data.DataColumn columnqtt_vt;
+            
+            private global::System.Data.DataColumn columnpu_vt;
+            
+            private global::System.Data.DataColumn columnht_vt;
+            
+            private global::System.Data.DataColumn columntva_vt;
+            
+            private global::System.Data.DataColumn columnttc_vt;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteDataTable() {
+                this.TableName = "tb_vente";
+                this.BeginInit();
+                this.InitClass();
+                this.EndInit();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_venteDataTable(global::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;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected tb_venteDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : 
+                    base(info, context) {
+                this.InitVars();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn epreuve_vtColumn {
+                get {
+                    return this.columnepreuve_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn station_vtColumn {
+                get {
+                    return this.columnstation_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn vehi_vtColumn {
+                get {
+                    return this.columnvehi_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn prod_vtColumn {
+                get {
+                    return this.columnprod_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn date_vtColumn {
+                get {
+                    return this.columndate_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn qtt_vtColumn {
+                get {
+                    return this.columnqtt_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn pu_vtColumn {
+                get {
+                    return this.columnpu_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ht_vtColumn {
+                get {
+                    return this.columnht_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn tva_vtColumn {
+                get {
+                    return this.columntva_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataColumn ttc_vtColumn {
+                get {
+                    return this.columnttc_vt;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            [global::System.ComponentModel.Browsable(false)]
+            public int Count {
+                get {
+                    return this.Rows.Count;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow this[int index] {
+                get {
+                    return ((tb_venteRow)(this.Rows[index]));
+                }
+            }
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowChanging;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowChanged;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowDeleting;
+            
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public event tb_venteRowChangeEventHandler tb_venteRowDeleted;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Addtb_venteRow(tb_venteRow row) {
+                this.Rows.Add(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow Addtb_venteRow(string epreuve_vt, string station_vt, string vehi_vt, string prod_vt, System.DateTime date_vt, decimal qtt_vt, decimal pu_vt, decimal ht_vt, decimal tva_vt, decimal ttc_vt) {
+                tb_venteRow rowtb_venteRow = ((tb_venteRow)(this.NewRow()));
+                object[] columnValuesArray = new object[] {
+                        epreuve_vt,
+                        station_vt,
+                        vehi_vt,
+                        prod_vt,
+                        date_vt,
+                        qtt_vt,
+                        pu_vt,
+                        ht_vt,
+                        tva_vt,
+                        ttc_vt};
+                rowtb_venteRow.ItemArray = columnValuesArray;
+                this.Rows.Add(rowtb_venteRow);
+                return rowtb_venteRow;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow FindByepreuve_vtstation_vtvehi_vtprod_vtdate_vt(string epreuve_vt, string station_vt, string vehi_vt, string prod_vt, System.DateTime date_vt) {
+                return ((tb_venteRow)(this.Rows.Find(new object[] {
+                            epreuve_vt,
+                            station_vt,
+                            vehi_vt,
+                            prod_vt,
+                            date_vt})));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public override global::System.Data.DataTable Clone() {
+                tb_venteDataTable cln = ((tb_venteDataTable)(base.Clone()));
+                cln.InitVars();
+                return cln;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataTable CreateInstance() {
+                return new tb_venteDataTable();
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal void InitVars() {
+                this.columnepreuve_vt = base.Columns["epreuve_vt"];
+                this.columnstation_vt = base.Columns["station_vt"];
+                this.columnvehi_vt = base.Columns["vehi_vt"];
+                this.columnprod_vt = base.Columns["prod_vt"];
+                this.columndate_vt = base.Columns["date_vt"];
+                this.columnqtt_vt = base.Columns["qtt_vt"];
+                this.columnpu_vt = base.Columns["pu_vt"];
+                this.columnht_vt = base.Columns["ht_vt"];
+                this.columntva_vt = base.Columns["tva_vt"];
+                this.columnttc_vt = base.Columns["ttc_vt"];
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            private void InitClass() {
+                this.columnepreuve_vt = new global::System.Data.DataColumn("epreuve_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnepreuve_vt);
+                this.columnstation_vt = new global::System.Data.DataColumn("station_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnstation_vt);
+                this.columnvehi_vt = new global::System.Data.DataColumn("vehi_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnvehi_vt);
+                this.columnprod_vt = new global::System.Data.DataColumn("prod_vt", typeof(string), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnprod_vt);
+                this.columndate_vt = new global::System.Data.DataColumn("date_vt", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columndate_vt);
+                this.columnqtt_vt = new global::System.Data.DataColumn("qtt_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnqtt_vt);
+                this.columnpu_vt = new global::System.Data.DataColumn("pu_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnpu_vt);
+                this.columnht_vt = new global::System.Data.DataColumn("ht_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnht_vt);
+                this.columntva_vt = new global::System.Data.DataColumn("tva_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columntva_vt);
+                this.columnttc_vt = new global::System.Data.DataColumn("ttc_vt", typeof(decimal), null, global::System.Data.MappingType.Element);
+                base.Columns.Add(this.columnttc_vt);
+                this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] {
+                                this.columnepreuve_vt,
+                                this.columnstation_vt,
+                                this.columnvehi_vt,
+                                this.columnprod_vt,
+                                this.columndate_vt}, true));
+                this.columnepreuve_vt.AllowDBNull = false;
+                this.columnstation_vt.AllowDBNull = false;
+                this.columnvehi_vt.AllowDBNull = false;
+                this.columnprod_vt.AllowDBNull = false;
+                this.columndate_vt.AllowDBNull = false;
+                this.columndate_vt.DateTimeMode = global::System.Data.DataSetDateTime.Utc;
+                this.columnht_vt.DefaultValue = ((decimal)(0m));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow Newtb_venteRow() {
+                return ((tb_venteRow)(this.NewRow()));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) {
+                return new tb_venteRow(builder);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override global::System.Type GetRowType() {
+                return typeof(tb_venteRow);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanged(e);
+                if ((this.tb_venteRowChanged != null)) {
+                    this.tb_venteRowChanged(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowChanging(e);
+                if ((this.tb_venteRowChanging != null)) {
+                    this.tb_venteRowChanging(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleted(e);
+                if ((this.tb_venteRowDeleted != null)) {
+                    this.tb_venteRowDeleted(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) {
+                base.OnRowDeleting(e);
+                if ((this.tb_venteRowDeleting != null)) {
+                    this.tb_venteRowDeleting(this, new tb_venteRowChangeEvent(((tb_venteRow)(e.Row)), e.Action));
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Removetb_venteRow(tb_venteRow row) {
+                this.Rows.Remove(row);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
+                global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
+                global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
+                DataSet1 ds = new DataSet1();
+                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
+                any1.Namespace = "http://www.w3.org/2001/XMLSchema";
+                any1.MinOccurs = new decimal(0);
+                any1.MaxOccurs = decimal.MaxValue;
+                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any1);
+                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
+                any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1";
+                any2.MinOccurs = new decimal(1);
+                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
+                sequence.Items.Add(any2);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute1.Name = "namespace";
+                attribute1.FixedValue = ds.Namespace;
+                type.Attributes.Add(attribute1);
+                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
+                attribute2.Name = "tableTypeName";
+                attribute2.FixedValue = "tb_venteDataTable";
+                type.Attributes.Add(attribute2);
+                type.Particle = sequence;
+                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
+                if (xs.Contains(dsSchema.TargetNamespace)) {
+                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
+                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
+                    try {
+                        global::System.Xml.Schema.XmlSchema schema = null;
+                        dsSchema.Write(s1);
+                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
+                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
+                            s2.SetLength(0);
+                            schema.Write(s2);
+                            if ((s1.Length == s2.Length)) {
+                                s1.Position = 0;
+                                s2.Position = 0;
+                                for (; ((s1.Position != s1.Length) 
+                                            && (s1.ReadByte() == s2.ReadByte())); ) {
+                                    ;
+                                }
+                                if ((s1.Position == s1.Length)) {
+                                    return type;
+                                }
+                            }
+                        }
+                    }
+                    finally {
+                        if ((s1 != null)) {
+                            s1.Close();
+                        }
+                        if ((s2 != null)) {
+                            s2.Close();
+                        }
+                    }
+                }
+                xs.Add(dsSchema);
+                return type;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_vehiRow : global::System.Data.DataRow {
+            
+            private tb_vehiDataTable tabletb_vehi;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_vehiRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_vehi = ((tb_vehiDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_vehi {
+                get {
+                    return ((string)(this[this.tabletb_vehi.key_vehiColumn]));
+                }
+                set {
+                    this[this.tabletb_vehi.key_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public ushort num_vehi {
+                get {
+                    try {
+                        return ((ushort)(this[this.tabletb_vehi.num_vehiColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'num_vehi\' dans la table \'tb_vehi\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.num_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string cmpnum_vehi {
+                get {
+                    if (this.Iscmpnum_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.cmpnum_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.cmpnum_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string immat_vehi {
+                get {
+                    if (this.Isimmat_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.immat_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.immat_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string ope_vehi {
+                get {
+                    if (this.Isope_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.ope_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.ope_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string type_vehi {
+                get {
+                    if (this.Istype_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.type_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.type_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string cond_vehi {
+                get {
+                    if (this.Iscond_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.cond_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.cond_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string famille_vehi {
+                get {
+                    if (this.Isfamille_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.famille_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.famille_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string carbu_vehi {
+                get {
+                    if (this.Iscarbu_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.carbu_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.carbu_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string kmdep_vehi {
+                get {
+                    if (this.Iskmdep_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.kmdep_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.kmdep_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string kmarr_vehi {
+                get {
+                    if (this.Iskmarr_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.kmarr_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.kmarr_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string categ_vehi {
+                get {
+                    if (this.Iscateg_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.categ_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.categ_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string sort1_vehi {
+                get {
+                    if (this.Issort1_vehiNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_vehi.sort1_vehiColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vehi.sort1_vehiColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnum_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.num_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnum_vehiNull() {
+                this[this.tabletb_vehi.num_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscmpnum_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.cmpnum_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcmpnum_vehiNull() {
+                this[this.tabletb_vehi.cmpnum_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isimmat_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.immat_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setimmat_vehiNull() {
+                this[this.tabletb_vehi.immat_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isope_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.ope_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setope_vehiNull() {
+                this[this.tabletb_vehi.ope_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istype_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.type_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settype_vehiNull() {
+                this[this.tabletb_vehi.type_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscond_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.cond_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcond_vehiNull() {
+                this[this.tabletb_vehi.cond_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isfamille_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.famille_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setfamille_vehiNull() {
+                this[this.tabletb_vehi.famille_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscarbu_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.carbu_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcarbu_vehiNull() {
+                this[this.tabletb_vehi.carbu_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iskmdep_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.kmdep_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setkmdep_vehiNull() {
+                this[this.tabletb_vehi.kmdep_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iskmarr_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.kmarr_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setkmarr_vehiNull() {
+                this[this.tabletb_vehi.kmarr_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscateg_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.categ_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcateg_vehiNull() {
+                this[this.tabletb_vehi.categ_vehiColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Issort1_vehiNull() {
+                return this.IsNull(this.tabletb_vehi.sort1_vehiColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setsort1_vehiNull() {
+                this[this.tabletb_vehi.sort1_vehiColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_epreuveRow : global::System.Data.DataRow {
+            
+            private tb_epreuveDataTable tabletb_epreuve;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_epreuveRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_epreuve = ((tb_epreuveDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_epr {
+                get {
+                    return ((string)(this[this.tabletb_epreuve.key_eprColumn]));
+                }
+                set {
+                    this[this.tabletb_epreuve.key_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_epr {
+                get {
+                    if (this.Isnom_eprNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_epreuve.nom_eprColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.nom_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime deb_epr {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_epreuve.deb_eprColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'deb_epr\' dans la table \'tb_epreuve\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.deb_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime fin_epr {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_epreuve.fin_eprColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'fin_epr\' dans la table \'tb_epreuve\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.fin_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string abrev_epr {
+                get {
+                    if (this.Isabrev_eprNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_epreuve.abrev_eprColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_epreuve.abrev_eprColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.nom_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_eprNull() {
+                this[this.tabletb_epreuve.nom_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdeb_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.deb_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdeb_eprNull() {
+                this[this.tabletb_epreuve.deb_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isfin_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.fin_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setfin_eprNull() {
+                this[this.tabletb_epreuve.fin_eprColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isabrev_eprNull() {
+                return this.IsNull(this.tabletb_epreuve.abrev_eprColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setabrev_eprNull() {
+                this[this.tabletb_epreuve.abrev_eprColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_etapeRow : global::System.Data.DataRow {
+            
+            private tb_etapeDataTable tabletb_etape;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_etapeRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_etape = ((tb_etapeDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string epr_etp {
+                get {
+                    return ((string)(this[this.tabletb_etape.epr_etpColumn]));
+                }
+                set {
+                    this[this.tabletb_etape.epr_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public ushort num_etp {
+                get {
+                    return ((ushort)(this[this.tabletb_etape.num_etpColumn]));
+                }
+                set {
+                    this[this.tabletb_etape.num_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime date_etp {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_etape.date_etpColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'date_etp\' dans la table \'tb_etape\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_etape.date_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_etp {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_etape.nom_etpColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'nom_etp\' dans la table \'tb_etape\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_etape.nom_etpColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdate_etpNull() {
+                return this.IsNull(this.tabletb_etape.date_etpColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdate_etpNull() {
+                this[this.tabletb_etape.date_etpColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_etpNull() {
+                return this.IsNull(this.tabletb_etape.nom_etpColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_etpNull() {
+                this[this.tabletb_etape.nom_etpColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_paysRow : global::System.Data.DataRow {
+            
+            private tb_paysDataTable tabletb_pays;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_paysRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_pays = ((tb_paysDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_pays {
+                get {
+                    return ((string)(this[this.tabletb_pays.key_paysColumn]));
+                }
+                set {
+                    this[this.tabletb_pays.key_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_pays {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_pays.nom_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'nom_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.nom_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string code_pays {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_pays.code_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'code_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.code_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public float txchge_pays {
+                get {
+                    try {
+                        return ((float)(this[this.tabletb_pays.txchge_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'txchge_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.txchge_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public float tva_pays {
+                get {
+                    try {
+                        return ((float)(this[this.tabletb_pays.tva_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'tva_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.tva_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string img_pays {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_pays.img_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'img_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.img_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public ushort order_pays {
+                get {
+                    try {
+                        return ((ushort)(this[this.tabletb_pays.order_paysColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'order_pays\' dans la table \'tb_pays\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_pays.order_paysColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_paysNull() {
+                return this.IsNull(this.tabletb_pays.nom_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_paysNull() {
+                this[this.tabletb_pays.nom_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscode_paysNull() {
+                return this.IsNull(this.tabletb_pays.code_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcode_paysNull() {
+                this[this.tabletb_pays.code_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istxchge_paysNull() {
+                return this.IsNull(this.tabletb_pays.txchge_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settxchge_paysNull() {
+                this[this.tabletb_pays.txchge_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_paysNull() {
+                return this.IsNull(this.tabletb_pays.tva_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_paysNull() {
+                this[this.tabletb_pays.tva_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isimg_paysNull() {
+                return this.IsNull(this.tabletb_pays.img_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setimg_paysNull() {
+                this[this.tabletb_pays.img_paysColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isorder_paysNull() {
+                return this.IsNull(this.tabletb_pays.order_paysColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setorder_paysNull() {
+                this[this.tabletb_pays.order_paysColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_stationRow : global::System.Data.DataRow {
+            
+            private tb_stationDataTable tabletb_station;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_stationRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_station = ((tb_stationDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_sta {
+                get {
+                    return ((string)(this[this.tabletb_station.key_staColumn]));
+                }
+                set {
+                    this[this.tabletb_station.key_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string epr_sta {
+                get {
+                    if (this.Isepr_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.epr_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.epr_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string etp_sta {
+                get {
+                    if (this.Isetp_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.etp_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.etp_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime date_sta {
+                get {
+                    try {
+                        return ((global::System.DateTime)(this[this.tabletb_station.date_staColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'date_sta\' dans la table \'tb_station\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_station.date_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string num_sta {
+                get {
+                    if (this.Isnum_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.num_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.num_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string nom_sta {
+                get {
+                    if (this.Isnom_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.nom_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.nom_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string adr1_sta {
+                get {
+                    if (this.Isadr1_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.adr1_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.adr1_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string adr2_sta {
+                get {
+                    if (this.Isadr2_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.adr2_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.adr2_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string cp_sta {
+                get {
+                    if (this.Iscp_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.cp_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.cp_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string ville_sta {
+                get {
+                    if (this.Isville_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.ville_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.ville_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string pays_sta {
+                get {
+                    if (this.Ispays_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.pays_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.pays_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string contact_sta {
+                get {
+                    if (this.Iscontact_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.contact_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.contact_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string tel_sta {
+                get {
+                    if (this.Istel_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.tel_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.tel_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string tva_sta {
+                get {
+                    if (this.Istva_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.tva_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.tva_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string divers_sta {
+                get {
+                    if (this.Isdivers_staNull()) {
+                        return string.Empty;
+                    }
+                    else {
+                        return ((string)(this[this.tabletb_station.divers_staColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_station.divers_staColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isepr_staNull() {
+                return this.IsNull(this.tabletb_station.epr_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setepr_staNull() {
+                this[this.tabletb_station.epr_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isetp_staNull() {
+                return this.IsNull(this.tabletb_station.etp_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setetp_staNull() {
+                this[this.tabletb_station.etp_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdate_staNull() {
+                return this.IsNull(this.tabletb_station.date_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdate_staNull() {
+                this[this.tabletb_station.date_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnum_staNull() {
+                return this.IsNull(this.tabletb_station.num_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnum_staNull() {
+                this[this.tabletb_station.num_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isnom_staNull() {
+                return this.IsNull(this.tabletb_station.nom_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setnom_staNull() {
+                this[this.tabletb_station.nom_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isadr1_staNull() {
+                return this.IsNull(this.tabletb_station.adr1_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setadr1_staNull() {
+                this[this.tabletb_station.adr1_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isadr2_staNull() {
+                return this.IsNull(this.tabletb_station.adr2_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setadr2_staNull() {
+                this[this.tabletb_station.adr2_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscp_staNull() {
+                return this.IsNull(this.tabletb_station.cp_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcp_staNull() {
+                this[this.tabletb_station.cp_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isville_staNull() {
+                return this.IsNull(this.tabletb_station.ville_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setville_staNull() {
+                this[this.tabletb_station.ville_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Ispays_staNull() {
+                return this.IsNull(this.tabletb_station.pays_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setpays_staNull() {
+                this[this.tabletb_station.pays_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iscontact_staNull() {
+                return this.IsNull(this.tabletb_station.contact_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setcontact_staNull() {
+                this[this.tabletb_station.contact_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istel_staNull() {
+                return this.IsNull(this.tabletb_station.tel_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settel_staNull() {
+                this[this.tabletb_station.tel_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_staNull() {
+                return this.IsNull(this.tabletb_station.tva_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_staNull() {
+                this[this.tabletb_station.tva_staColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isdivers_staNull() {
+                return this.IsNull(this.tabletb_station.divers_staColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setdivers_staNull() {
+                this[this.tabletb_station.divers_staColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_familleRow : global::System.Data.DataRow {
+            
+            private tb_familleDataTable tabletb_famille;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_familleRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_famille = ((tb_familleDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_fam {
+                get {
+                    return ((string)(this[this.tabletb_famille.key_famColumn]));
+                }
+                set {
+                    this[this.tabletb_famille.key_famColumn] = value;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_prodRow : global::System.Data.DataRow {
+            
+            private tb_prodDataTable tabletb_prod;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prodRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_prod = ((tb_prodDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string key_prod {
+                get {
+                    return ((string)(this[this.tabletb_prod.key_prodColumn]));
+                }
+                set {
+                    this[this.tabletb_prod.key_prodColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string lib_prod {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_prod.lib_prodColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'lib_prod\' dans la table \'tb_prod\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_prod.lib_prodColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string type_prod {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_prod.type_prodColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'type_prod\' dans la table \'tb_prod\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_prod.type_prodColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Islib_prodNull() {
+                return this.IsNull(this.tabletb_prod.lib_prodColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setlib_prodNull() {
+                this[this.tabletb_prod.lib_prodColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istype_prodNull() {
+                return this.IsNull(this.tabletb_prod.type_prodColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settype_prodNull() {
+                this[this.tabletb_prod.type_prodColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_prestaRow : global::System.Data.DataRow {
+            
+            private tb_prestaDataTable tabletb_presta;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_prestaRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_presta = ((tb_prestaDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string sta_pr {
+                get {
+                    return ((string)(this[this.tabletb_presta.sta_prColumn]));
+                }
+                set {
+                    this[this.tabletb_presta.sta_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string prod_pr {
+                get {
+                    return ((string)(this[this.tabletb_presta.prod_prColumn]));
+                }
+                set {
+                    this[this.tabletb_presta.prod_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string kind_pr {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_presta.kind_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'kind_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.kind_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string unite_pr {
+                get {
+                    try {
+                        return ((string)(this[this.tabletb_presta.unite_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'unite_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.unite_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal pu_pr {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_presta.pu_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'pu_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.pu_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal tva_pr {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_presta.tva_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'tva_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.tva_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal ttc_pr {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_presta.ttc_prColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'ttc_pr\' dans la table \'tb_presta\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_presta.ttc_prColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Iskind_prNull() {
+                return this.IsNull(this.tabletb_presta.kind_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setkind_prNull() {
+                this[this.tabletb_presta.kind_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isunite_prNull() {
+                return this.IsNull(this.tabletb_presta.unite_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setunite_prNull() {
+                this[this.tabletb_presta.unite_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Ispu_prNull() {
+                return this.IsNull(this.tabletb_presta.pu_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setpu_prNull() {
+                this[this.tabletb_presta.pu_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_prNull() {
+                return this.IsNull(this.tabletb_presta.tva_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_prNull() {
+                this[this.tabletb_presta.tva_prColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isttc_prNull() {
+                return this.IsNull(this.tabletb_presta.ttc_prColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setttc_prNull() {
+                this[this.tabletb_presta.ttc_prColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Represents strongly named DataRow class.
+        ///</summary>
+        public partial class tb_venteRow : global::System.Data.DataRow {
+            
+            private tb_venteDataTable tabletb_vente;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            internal tb_venteRow(global::System.Data.DataRowBuilder rb) : 
+                    base(rb) {
+                this.tabletb_vente = ((tb_venteDataTable)(this.Table));
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string epreuve_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.epreuve_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.epreuve_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string station_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.station_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.station_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string vehi_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.vehi_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.vehi_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public string prod_vt {
+                get {
+                    return ((string)(this[this.tabletb_vente.prod_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.prod_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public System.DateTime date_vt {
+                get {
+                    return ((global::System.DateTime)(this[this.tabletb_vente.date_vtColumn]));
+                }
+                set {
+                    this[this.tabletb_vente.date_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal qtt_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.qtt_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'qtt_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.qtt_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal pu_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.pu_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'pu_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.pu_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal ht_vt {
+                get {
+                    if (this.Isht_vtNull()) {
+                        return 0m;
+                    }
+                    else {
+                        return ((decimal)(this[this.tabletb_vente.ht_vtColumn]));
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.ht_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal tva_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.tva_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'tva_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.tva_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public decimal ttc_vt {
+                get {
+                    try {
+                        return ((decimal)(this[this.tabletb_vente.ttc_vtColumn]));
+                    }
+                    catch (global::System.InvalidCastException e) {
+                        throw new global::System.Data.StrongTypingException("La valeur pour la colonne \'ttc_vt\' dans la table \'tb_vente\' est DBNull.", e);
+                    }
+                }
+                set {
+                    this[this.tabletb_vente.ttc_vtColumn] = value;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isqtt_vtNull() {
+                return this.IsNull(this.tabletb_vente.qtt_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setqtt_vtNull() {
+                this[this.tabletb_vente.qtt_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Ispu_vtNull() {
+                return this.IsNull(this.tabletb_vente.pu_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setpu_vtNull() {
+                this[this.tabletb_vente.pu_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isht_vtNull() {
+                return this.IsNull(this.tabletb_vente.ht_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setht_vtNull() {
+                this[this.tabletb_vente.ht_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Istva_vtNull() {
+                return this.IsNull(this.tabletb_vente.tva_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Settva_vtNull() {
+                this[this.tabletb_vente.tva_vtColumn] = global::System.Convert.DBNull;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public bool Isttc_vtNull() {
+                return this.IsNull(this.tabletb_vente.ttc_vtColumn);
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public void Setttc_vtNull() {
+                this[this.tabletb_vente.ttc_vtColumn] = global::System.Convert.DBNull;
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_vehiRowChangeEvent : global::System.EventArgs {
+            
+            private tb_vehiRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRowChangeEvent(tb_vehiRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_vehiRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_epreuveRowChangeEvent : global::System.EventArgs {
+            
+            private tb_epreuveRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRowChangeEvent(tb_epreuveRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_epreuveRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_etapeRowChangeEvent : global::System.EventArgs {
+            
+            private tb_etapeRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRowChangeEvent(tb_etapeRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_etapeRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_paysRowChangeEvent : global::System.EventArgs {
+            
+            private tb_paysRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRowChangeEvent(tb_paysRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_paysRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_stationRowChangeEvent : global::System.EventArgs {
+            
+            private tb_stationRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRowChangeEvent(tb_stationRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_stationRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_familleRowChangeEvent : global::System.EventArgs {
+            
+            private tb_familleRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRowChangeEvent(tb_familleRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_familleRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_prodRowChangeEvent : global::System.EventArgs {
+            
+            private tb_prodRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRowChangeEvent(tb_prodRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prodRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_prestaRowChangeEvent : global::System.EventArgs {
+            
+            private tb_prestaRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRowChangeEvent(tb_prestaRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_prestaRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+        
+        /// <summary>
+        ///Row event argument class
+        ///</summary>
+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+        public class tb_venteRowChangeEvent : global::System.EventArgs {
+            
+            private tb_venteRow eventRow;
+            
+            private global::System.Data.DataRowAction eventAction;
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRowChangeEvent(tb_venteRow row, global::System.Data.DataRowAction action) {
+                this.eventRow = row;
+                this.eventAction = action;
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public tb_venteRow Row {
+                get {
+                    return this.eventRow;
+                }
+            }
+            
+            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
+            public global::System.Data.DataRowAction Action {
+                get {
+                    return this.eventAction;
+                }
+            }
+        }
+    }
+}
+
+#pragma warning restore 1591

+ 39 - 0
Fuel_ASO/DataSet1.cs

@@ -0,0 +1,39 @@
+namespace Fuel01
+{
+
+
+    public partial class DataSet1
+    {
+        partial class tb_venteDataTable
+        {
+        }
+
+        partial class tb_prestaDataTable
+        {
+        }
+
+        partial class tb_etapeDataTable
+        {
+        }
+
+        partial class tb_prodDataTable
+        {
+        }
+
+        partial class tb_familleDataTable
+        {
+        }
+
+        partial class tb_stationDataTable
+        {
+        }
+
+        partial class tb_epreuveDataTable
+        {
+        }
+
+        partial class tb_vehiDataTable
+        {
+        }
+    }
+}

+ 9 - 0
Fuel_ASO/DataSet1.xsc

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--<autogenerated>
+     This code was generated by a tool.
+     Changes to this file may cause incorrect behavior and will be lost if
+     the code is regenerated.
+</autogenerated>-->
+<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+  <TableUISettings />
+</DataSetUISetting>

+ 185 - 0
Fuel_ASO/DataSet1.xsd

@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xs:schema id="DataSet1" targetNamespace="http://tempuri.org/DataSet1.xsd" xmlns:mstns="http://tempuri.org/DataSet1.xsd" xmlns="http://tempuri.org/DataSet1.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
+  <xs:annotation>
+    <xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
+      <DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+        <Connections />
+        <Tables />
+        <Sources />
+      </DataSource>
+    </xs:appinfo>
+  </xs:annotation>
+  <xs:element name="DataSet1" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DataSet1" msprop:Generator_UserDSName="DataSet1">
+    <xs:complexType>
+      <xs:choice minOccurs="0" maxOccurs="unbounded">
+        <xs:element name="tb_vehi" msprop:Generator_TableClassName="tb_vehiDataTable" msprop:Generator_TableVarName="tabletb_vehi" msprop:Generator_RowChangedName="tb_vehiRowChanged" msprop:Generator_TablePropName="tb_vehi" msprop:Generator_RowDeletingName="tb_vehiRowDeleting" msprop:Generator_RowChangingName="tb_vehiRowChanging" msprop:Generator_RowEvHandlerName="tb_vehiRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_vehiRowDeleted" msprop:Generator_RowClassName="tb_vehiRow" msprop:Generator_UserTableName="tb_vehi" msprop:Generator_RowEvArgName="tb_vehiRowChangeEvent">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="key_vehi" msprop:Generator_ColumnVarNameInTable="columnkey_vehi" msprop:Generator_ColumnPropNameInTable="key_vehiColumn" msprop:Generator_UserColumnName="key_vehi" type="xs:string" />
+              <xs:element name="num_vehi" msprop:Generator_ColumnVarNameInTable="columnnum_vehi" msprop:Generator_ColumnPropNameInRow="num_vehi" msprop:Generator_ColumnPropNameInTable="num_vehiColumn" msprop:Generator_UserColumnName="num_vehi" type="xs:unsignedShort" minOccurs="0" />
+              <xs:element name="cmpnum_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="cmpnum_vehi" msprop:Generator_ColumnVarNameInTable="columncmpnum_vehi" msprop:Generator_ColumnPropNameInTable="cmpnum_vehiColumn" msprop:Generator_UserColumnName="cmpnum_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="immat_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="immat_vehi" msprop:Generator_ColumnVarNameInTable="columnimmat_vehi" msprop:Generator_ColumnPropNameInTable="immat_vehiColumn" msprop:Generator_UserColumnName="immat_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="ope_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="ope_vehi" msprop:Generator_ColumnVarNameInTable="columnope_vehi" msprop:Generator_ColumnPropNameInTable="ope_vehiColumn" msprop:Generator_UserColumnName="ope_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="type_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="type_vehi" msprop:Generator_ColumnVarNameInTable="columntype_vehi" msprop:Generator_ColumnPropNameInTable="type_vehiColumn" msprop:Generator_UserColumnName="type_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="cond_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="cond_vehi" msprop:Generator_ColumnVarNameInTable="columncond_vehi" msprop:Generator_ColumnPropNameInTable="cond_vehiColumn" msprop:Generator_UserColumnName="cond_vehi" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="famille_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="famille_vehi" msprop:Generator_ColumnVarNameInTable="columnfamille_vehi" msprop:Generator_ColumnPropNameInTable="famille_vehiColumn" msprop:Generator_UserColumnName="famille_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="carbu_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="carbu_vehi" msprop:Generator_ColumnVarNameInTable="columncarbu_vehi" msprop:Generator_ColumnPropNameInTable="carbu_vehiColumn" msprop:Generator_UserColumnName="carbu_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="kmdep_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="kmdep_vehi" msprop:Generator_ColumnVarNameInTable="columnkmdep_vehi" msprop:Generator_ColumnPropNameInTable="kmdep_vehiColumn" msprop:Generator_UserColumnName="kmdep_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="kmarr_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="kmarr_vehi" msprop:Generator_ColumnVarNameInTable="columnkmarr_vehi" msprop:Generator_ColumnPropNameInTable="kmarr_vehiColumn" msprop:Generator_UserColumnName="kmarr_vehi" type="xs:string" minOccurs="0" />
+              <xs:element name="categ_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="categ_vehi" msprop:Generator_ColumnVarNameInTable="columncateg_vehi" msprop:Generator_ColumnPropNameInTable="categ_vehiColumn" msprop:Generator_UserColumnName="categ_vehi" minOccurs="0">
+                <xs:simpleType>
+                  <xs:restriction base="xs:string">
+                    <xs:maxLength value="1" />
+                  </xs:restriction>
+                </xs:simpleType>
+              </xs:element>
+              <xs:element name="sort1_vehi" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="sort1_vehi" msprop:Generator_ColumnVarNameInTable="columnsort1_vehi" msprop:Generator_ColumnPropNameInTable="sort1_vehiColumn" msprop:Generator_UserColumnName="sort1_vehi" type="xs:string" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_epreuve" msprop:Generator_TableClassName="tb_epreuveDataTable" msprop:Generator_TableVarName="tabletb_epreuve" msprop:Generator_TablePropName="tb_epreuve" msprop:Generator_RowDeletingName="tb_epreuveRowDeleting" msprop:Generator_RowChangingName="tb_epreuveRowChanging" msprop:Generator_RowEvHandlerName="tb_epreuveRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_epreuveRowDeleted" msprop:Generator_UserTableName="tb_epreuve" msprop:Generator_RowChangedName="tb_epreuveRowChanged" msprop:Generator_RowEvArgName="tb_epreuveRowChangeEvent" msprop:Generator_RowClassName="tb_epreuveRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_epr" msprop:Generator_ColumnVarNameInTable="columnkey_epr" msprop:Generator_ColumnPropNameInRow="key_epr" msprop:Generator_ColumnPropNameInTable="key_eprColumn" msprop:Generator_UserColumnName="key_epr" type="xs:string" />
+              <xs:element name="nom_epr" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="nom_epr" msprop:Generator_ColumnVarNameInTable="columnnom_epr" msprop:Generator_ColumnPropNameInTable="nom_eprColumn" msprop:Generator_UserColumnName="nom_epr" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="deb_epr" msprop:Generator_ColumnVarNameInTable="columndeb_epr" msprop:Generator_ColumnPropNameInRow="deb_epr" msprop:Generator_ColumnPropNameInTable="deb_eprColumn" msprop:Generator_UserColumnName="deb_epr" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="fin_epr" msprop:Generator_ColumnVarNameInTable="columnfin_epr" msprop:Generator_ColumnPropNameInRow="fin_epr" msprop:Generator_ColumnPropNameInTable="fin_eprColumn" msprop:Generator_UserColumnName="fin_epr" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="abrev_epr" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="abrev_epr" msprop:Generator_ColumnVarNameInTable="columnabrev_epr" msprop:Generator_ColumnPropNameInTable="abrev_eprColumn" msprop:Generator_UserColumnName="abrev_epr" type="xs:string" default="" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_etape" msprop:Generator_TableClassName="tb_etapeDataTable" msprop:Generator_TableVarName="tabletb_etape" msprop:Generator_TablePropName="tb_etape" msprop:Generator_RowDeletingName="tb_etapeRowDeleting" msprop:Generator_RowChangingName="tb_etapeRowChanging" msprop:Generator_RowEvHandlerName="tb_etapeRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_etapeRowDeleted" msprop:Generator_UserTableName="tb_etape" msprop:Generator_RowChangedName="tb_etapeRowChanged" msprop:Generator_RowEvArgName="tb_etapeRowChangeEvent" msprop:Generator_RowClassName="tb_etapeRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="epr_etp" msprop:Generator_ColumnVarNameInTable="columnepr_etp" msprop:Generator_ColumnPropNameInRow="epr_etp" msprop:Generator_ColumnPropNameInTable="epr_etpColumn" msprop:Generator_UserColumnName="epr_etp" type="xs:string" />
+              <xs:element name="num_etp" msprop:Generator_ColumnVarNameInTable="columnnum_etp" msprop:Generator_ColumnPropNameInRow="num_etp" msprop:Generator_ColumnPropNameInTable="num_etpColumn" msprop:Generator_UserColumnName="num_etp" type="xs:unsignedShort" />
+              <xs:element name="date_etp" msprop:Generator_ColumnVarNameInTable="columndate_etp" msprop:Generator_ColumnPropNameInRow="date_etp" msprop:Generator_ColumnPropNameInTable="date_etpColumn" msprop:Generator_UserColumnName="date_etp" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="nom_etp" msprop:Generator_ColumnVarNameInTable="columnnom_etp" msprop:Generator_ColumnPropNameInRow="nom_etp" msprop:Generator_ColumnPropNameInTable="nom_etpColumn" msprop:Generator_UserColumnName="nom_etp" type="xs:string" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_pays" msprop:Generator_TableClassName="tb_paysDataTable" msprop:Generator_TableVarName="tabletb_pays" msprop:Generator_TablePropName="tb_pays" msprop:Generator_RowDeletingName="tb_paysRowDeleting" msprop:Generator_RowChangingName="tb_paysRowChanging" msprop:Generator_RowEvHandlerName="tb_paysRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_paysRowDeleted" msprop:Generator_UserTableName="tb_pays" msprop:Generator_RowChangedName="tb_paysRowChanged" msprop:Generator_RowEvArgName="tb_paysRowChangeEvent" msprop:Generator_RowClassName="tb_paysRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_pays" msprop:Generator_ColumnVarNameInTable="columnkey_pays" msprop:Generator_ColumnPropNameInRow="key_pays" msprop:Generator_ColumnPropNameInTable="key_paysColumn" msprop:Generator_UserColumnName="key_pays" type="xs:string" />
+              <xs:element name="nom_pays" msprop:Generator_ColumnVarNameInTable="columnnom_pays" msprop:Generator_ColumnPropNameInRow="nom_pays" msprop:Generator_ColumnPropNameInTable="nom_paysColumn" msprop:Generator_UserColumnName="nom_pays" type="xs:string" minOccurs="0" />
+              <xs:element name="code_pays" msprop:Generator_ColumnVarNameInTable="columncode_pays" msprop:Generator_ColumnPropNameInRow="code_pays" msprop:Generator_ColumnPropNameInTable="code_paysColumn" msprop:Generator_UserColumnName="code_pays" type="xs:string" minOccurs="0" />
+              <xs:element name="txchge_pays" msprop:Generator_ColumnVarNameInTable="columntxchge_pays" msprop:Generator_ColumnPropNameInRow="txchge_pays" msprop:Generator_ColumnPropNameInTable="txchge_paysColumn" msprop:Generator_UserColumnName="txchge_pays" type="xs:float" minOccurs="0" />
+              <xs:element name="tva_pays" msprop:Generator_ColumnVarNameInTable="columntva_pays" msprop:Generator_ColumnPropNameInRow="tva_pays" msprop:Generator_ColumnPropNameInTable="tva_paysColumn" msprop:Generator_UserColumnName="tva_pays" type="xs:float" minOccurs="0" />
+              <xs:element name="img_pays" msprop:Generator_ColumnVarNameInTable="columnimg_pays" msprop:Generator_ColumnPropNameInRow="img_pays" msprop:Generator_ColumnPropNameInTable="img_paysColumn" msprop:Generator_UserColumnName="img_pays" type="xs:string" minOccurs="0" />
+              <xs:element name="order_pays" msprop:Generator_ColumnVarNameInTable="columnorder_pays" msprop:Generator_ColumnPropNameInRow="order_pays" msprop:Generator_ColumnPropNameInTable="order_paysColumn" msprop:Generator_UserColumnName="order_pays" type="xs:unsignedShort" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_station" msprop:Generator_TableClassName="tb_stationDataTable" msprop:Generator_TableVarName="tabletb_station" msprop:Generator_TablePropName="tb_station" msprop:Generator_RowDeletingName="tb_stationRowDeleting" msprop:Generator_RowChangingName="tb_stationRowChanging" msprop:Generator_RowEvHandlerName="tb_stationRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_stationRowDeleted" msprop:Generator_UserTableName="tb_station" msprop:Generator_RowChangedName="tb_stationRowChanged" msprop:Generator_RowEvArgName="tb_stationRowChangeEvent" msprop:Generator_RowClassName="tb_stationRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_sta" msprop:Generator_ColumnVarNameInTable="columnkey_sta" msprop:Generator_ColumnPropNameInRow="key_sta" msprop:Generator_ColumnPropNameInTable="key_staColumn" msprop:Generator_UserColumnName="key_sta" type="xs:string" />
+              <xs:element name="epr_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="epr_sta" msprop:Generator_ColumnVarNameInTable="columnepr_sta" msprop:Generator_ColumnPropNameInTable="epr_staColumn" msprop:Generator_UserColumnName="epr_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="etp_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="etp_sta" msprop:Generator_ColumnVarNameInTable="columnetp_sta" msprop:Generator_ColumnPropNameInTable="etp_staColumn" msprop:Generator_UserColumnName="etp_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="date_sta" msprop:Generator_ColumnVarNameInTable="columndate_sta" msprop:Generator_ColumnPropNameInRow="date_sta" msprop:Generator_ColumnPropNameInTable="date_staColumn" msprop:Generator_UserColumnName="date_sta" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="num_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="num_sta" msprop:Generator_ColumnVarNameInTable="columnnum_sta" msprop:Generator_ColumnPropNameInTable="num_staColumn" msprop:Generator_UserColumnName="num_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="nom_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="nom_sta" msprop:Generator_ColumnVarNameInTable="columnnom_sta" msprop:Generator_ColumnPropNameInTable="nom_staColumn" msprop:Generator_UserColumnName="nom_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="adr1_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="adr1_sta" msprop:Generator_ColumnVarNameInTable="columnadr1_sta" msprop:Generator_ColumnPropNameInTable="adr1_staColumn" msprop:Generator_UserColumnName="adr1_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="adr2_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="adr2_sta" msprop:Generator_ColumnVarNameInTable="columnadr2_sta" msprop:Generator_ColumnPropNameInTable="adr2_staColumn" msprop:Generator_UserColumnName="adr2_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="cp_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="cp_sta" msprop:Generator_ColumnVarNameInTable="columncp_sta" msprop:Generator_ColumnPropNameInTable="cp_staColumn" msprop:Generator_UserColumnName="cp_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="ville_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="ville_sta" msprop:Generator_ColumnVarNameInTable="columnville_sta" msprop:Generator_ColumnPropNameInTable="ville_staColumn" msprop:Generator_UserColumnName="ville_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="pays_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="pays_sta" msprop:Generator_ColumnVarNameInTable="columnpays_sta" msprop:Generator_ColumnPropNameInTable="pays_staColumn" msprop:Generator_UserColumnName="pays_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="contact_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="contact_sta" msprop:Generator_ColumnVarNameInTable="columncontact_sta" msprop:Generator_ColumnPropNameInTable="contact_staColumn" msprop:Generator_UserColumnName="contact_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="tel_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="tel_sta" msprop:Generator_ColumnVarNameInTable="columntel_sta" msprop:Generator_ColumnPropNameInTable="tel_staColumn" msprop:Generator_UserColumnName="tel_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="tva_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="tva_sta" msprop:Generator_ColumnVarNameInTable="columntva_sta" msprop:Generator_ColumnPropNameInTable="tva_staColumn" msprop:Generator_UserColumnName="tva_sta" type="xs:string" default="" minOccurs="0" />
+              <xs:element name="divers_sta" msprop:nullValue="_empty" msprop:Generator_ColumnPropNameInRow="divers_sta" msprop:Generator_ColumnVarNameInTable="columndivers_sta" msprop:Generator_ColumnPropNameInTable="divers_staColumn" msprop:Generator_UserColumnName="divers_sta" type="xs:string" default="" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_famille" msprop:Generator_TableClassName="tb_familleDataTable" msprop:Generator_TableVarName="tabletb_famille" msprop:Generator_TablePropName="tb_famille" msprop:Generator_RowDeletingName="tb_familleRowDeleting" msprop:Generator_RowChangingName="tb_familleRowChanging" msprop:Generator_RowEvHandlerName="tb_familleRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_familleRowDeleted" msprop:Generator_UserTableName="tb_famille" msprop:Generator_RowChangedName="tb_familleRowChanged" msprop:Generator_RowEvArgName="tb_familleRowChangeEvent" msprop:Generator_RowClassName="tb_familleRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_fam" msprop:Generator_ColumnVarNameInTable="columnkey_fam" msprop:Generator_ColumnPropNameInRow="key_fam" msprop:Generator_ColumnPropNameInTable="key_famColumn" msprop:Generator_UserColumnName="key_fam" type="xs:string" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_prod" msprop:Generator_TableClassName="tb_prodDataTable" msprop:Generator_TableVarName="tabletb_prod" msprop:Generator_TablePropName="tb_prod" msprop:Generator_RowDeletingName="tb_prodRowDeleting" msprop:Generator_RowChangingName="tb_prodRowChanging" msprop:Generator_RowEvHandlerName="tb_prodRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_prodRowDeleted" msprop:Generator_UserTableName="tb_prod" msprop:Generator_RowChangedName="tb_prodRowChanged" msprop:Generator_RowEvArgName="tb_prodRowChangeEvent" msprop:Generator_RowClassName="tb_prodRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="key_prod" msprop:Generator_ColumnVarNameInTable="columnkey_prod" msprop:Generator_ColumnPropNameInRow="key_prod" msprop:Generator_ColumnPropNameInTable="key_prodColumn" msprop:Generator_UserColumnName="key_prod" type="xs:string" />
+              <xs:element name="lib_prod" msprop:Generator_ColumnVarNameInTable="columnlib_prod" msprop:Generator_ColumnPropNameInRow="lib_prod" msprop:Generator_ColumnPropNameInTable="lib_prodColumn" msprop:Generator_UserColumnName="lib_prod" type="xs:string" minOccurs="0" />
+              <xs:element name="type_prod" msprop:Generator_ColumnVarNameInTable="columntype_prod" msprop:Generator_ColumnPropNameInRow="type_prod" msprop:Generator_ColumnPropNameInTable="type_prodColumn" msprop:Generator_UserColumnName="type_prod" type="xs:string" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_presta" msprop:Generator_TableClassName="tb_prestaDataTable" msprop:Generator_TableVarName="tabletb_presta" msprop:Generator_TablePropName="tb_presta" msprop:Generator_RowDeletingName="tb_prestaRowDeleting" msprop:Generator_RowChangingName="tb_prestaRowChanging" msprop:Generator_RowEvHandlerName="tb_prestaRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_prestaRowDeleted" msprop:Generator_UserTableName="tb_presta" msprop:Generator_RowChangedName="tb_prestaRowChanged" msprop:Generator_RowEvArgName="tb_prestaRowChangeEvent" msprop:Generator_RowClassName="tb_prestaRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="sta_pr" msprop:Generator_ColumnVarNameInTable="columnsta_pr" msprop:Generator_ColumnPropNameInRow="sta_pr" msprop:Generator_ColumnPropNameInTable="sta_prColumn" msprop:Generator_UserColumnName="sta_pr" type="xs:string" />
+              <xs:element name="prod_pr" msprop:Generator_ColumnVarNameInTable="columnprod_pr" msprop:Generator_ColumnPropNameInRow="prod_pr" msprop:Generator_ColumnPropNameInTable="prod_prColumn" msprop:Generator_UserColumnName="prod_pr" type="xs:string" />
+              <xs:element name="kind_pr" msprop:Generator_ColumnVarNameInTable="columnkind_pr" msprop:Generator_ColumnPropNameInRow="kind_pr" msprop:Generator_ColumnPropNameInTable="kind_prColumn" msprop:Generator_UserColumnName="kind_pr" type="xs:string" minOccurs="0" />
+              <xs:element name="unite_pr" msprop:Generator_ColumnVarNameInTable="columnunite_pr" msprop:Generator_ColumnPropNameInRow="unite_pr" msprop:Generator_ColumnPropNameInTable="unite_prColumn" msprop:Generator_UserColumnName="unite_pr" type="xs:string" minOccurs="0" />
+              <xs:element name="pu_pr" msprop:Generator_ColumnVarNameInTable="columnpu_pr" msprop:Generator_ColumnPropNameInRow="pu_pr" msprop:Generator_ColumnPropNameInTable="pu_prColumn" msprop:Generator_UserColumnName="pu_pr" type="xs:decimal" minOccurs="0" />
+              <xs:element name="tva_pr" msprop:Generator_ColumnVarNameInTable="columntva_pr" msprop:Generator_ColumnPropNameInRow="tva_pr" msprop:Generator_ColumnPropNameInTable="tva_prColumn" msprop:Generator_UserColumnName="tva_pr" type="xs:decimal" minOccurs="0" />
+              <xs:element name="ttc_pr" msprop:Generator_ColumnVarNameInTable="columnttc_pr" msprop:Generator_ColumnPropNameInRow="ttc_pr" msprop:Generator_ColumnPropNameInTable="ttc_prColumn" msprop:Generator_UserColumnName="ttc_pr" type="xs:decimal" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+        <xs:element name="tb_vente" msprop:Generator_TableClassName="tb_venteDataTable" msprop:Generator_TableVarName="tabletb_vente" msprop:Generator_TablePropName="tb_vente" msprop:Generator_RowDeletingName="tb_venteRowDeleting" msprop:Generator_RowChangingName="tb_venteRowChanging" msprop:Generator_RowEvHandlerName="tb_venteRowChangeEventHandler" msprop:Generator_RowDeletedName="tb_venteRowDeleted" msprop:Generator_UserTableName="tb_vente" msprop:Generator_RowChangedName="tb_venteRowChanged" msprop:Generator_RowEvArgName="tb_venteRowChangeEvent" msprop:Generator_RowClassName="tb_venteRow">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="epreuve_vt" msprop:Generator_ColumnVarNameInTable="columnepreuve_vt" msprop:Generator_ColumnPropNameInRow="epreuve_vt" msprop:Generator_ColumnPropNameInTable="epreuve_vtColumn" msprop:Generator_UserColumnName="epreuve_vt" type="xs:string" />
+              <xs:element name="station_vt" msprop:Generator_ColumnVarNameInTable="columnstation_vt" msprop:Generator_ColumnPropNameInRow="station_vt" msprop:Generator_ColumnPropNameInTable="station_vtColumn" msprop:Generator_UserColumnName="station_vt" type="xs:string" />
+              <xs:element name="vehi_vt" msprop:Generator_ColumnVarNameInTable="columnvehi_vt" msprop:Generator_ColumnPropNameInRow="vehi_vt" msprop:Generator_ColumnPropNameInTable="vehi_vtColumn" msprop:Generator_UserColumnName="vehi_vt" type="xs:string" />
+              <xs:element name="prod_vt" msprop:nullValue="_null" msprop:Generator_ColumnPropNameInRow="prod_vt" msprop:Generator_ColumnVarNameInTable="columnprod_vt" msprop:Generator_ColumnPropNameInTable="prod_vtColumn" msprop:Generator_UserColumnName="prod_vt" type="xs:string" />
+              <xs:element name="date_vt" msdata:DateTimeMode="Utc" msprop:Generator_ColumnVarNameInTable="columndate_vt" msprop:Generator_ColumnPropNameInRow="date_vt" msprop:Generator_ColumnPropNameInTable="date_vtColumn" msprop:Generator_UserColumnName="date_vt" type="xs:dateTime" />
+              <xs:element name="qtt_vt" msprop:Generator_ColumnVarNameInTable="columnqtt_vt" msprop:Generator_ColumnPropNameInRow="qtt_vt" msprop:Generator_ColumnPropNameInTable="qtt_vtColumn" msprop:Generator_UserColumnName="qtt_vt" type="xs:decimal" minOccurs="0" />
+              <xs:element name="pu_vt" msprop:Generator_ColumnVarNameInTable="columnpu_vt" msprop:Generator_ColumnPropNameInRow="pu_vt" msprop:Generator_ColumnPropNameInTable="pu_vtColumn" msprop:Generator_UserColumnName="pu_vt" type="xs:decimal" minOccurs="0" />
+              <xs:element name="ht_vt" msprop:nullValue="0" msprop:Generator_ColumnPropNameInRow="ht_vt" msprop:Generator_ColumnVarNameInTable="columnht_vt" msprop:Generator_ColumnPropNameInTable="ht_vtColumn" msprop:Generator_UserColumnName="ht_vt" type="xs:decimal" default="0" minOccurs="0" />
+              <xs:element name="tva_vt" msprop:Generator_ColumnVarNameInTable="columntva_vt" msprop:Generator_ColumnPropNameInRow="tva_vt" msprop:Generator_ColumnPropNameInTable="tva_vtColumn" msprop:Generator_UserColumnName="tva_vt" type="xs:decimal" minOccurs="0" />
+              <xs:element name="ttc_vt" msprop:Generator_ColumnVarNameInTable="columnttc_vt" msprop:Generator_ColumnPropNameInRow="ttc_vt" msprop:Generator_ColumnPropNameInTable="ttc_vtColumn" msprop:Generator_UserColumnName="ttc_vt" type="xs:decimal" minOccurs="0" />
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+      </xs:choice>
+    </xs:complexType>
+    <xs:unique name="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_vehi" />
+      <xs:field xpath="mstns:key_vehi" />
+    </xs:unique>
+    <xs:unique name="tb_epreuve_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_epreuve" />
+      <xs:field xpath="mstns:key_epr" />
+    </xs:unique>
+    <xs:unique name="tb_etape_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_etape" />
+      <xs:field xpath="mstns:epr_etp" />
+      <xs:field xpath="mstns:num_etp" />
+    </xs:unique>
+    <xs:unique name="tb_pays_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_pays" />
+      <xs:field xpath="mstns:key_pays" />
+    </xs:unique>
+    <xs:unique name="tb_station_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_station" />
+      <xs:field xpath="mstns:key_sta" />
+    </xs:unique>
+    <xs:unique name="tb_famille_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_famille" />
+      <xs:field xpath="mstns:key_fam" />
+    </xs:unique>
+    <xs:unique name="tb_prod_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_prod" />
+      <xs:field xpath="mstns:key_prod" />
+    </xs:unique>
+    <xs:unique name="tb_presta_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_presta" />
+      <xs:field xpath="mstns:sta_pr" />
+      <xs:field xpath="mstns:prod_pr" />
+    </xs:unique>
+    <xs:unique name="tb_vente_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
+      <xs:selector xpath=".//mstns:tb_vente" />
+      <xs:field xpath="mstns:epreuve_vt" />
+      <xs:field xpath="mstns:station_vt" />
+      <xs:field xpath="mstns:vehi_vt" />
+      <xs:field xpath="mstns:prod_vt" />
+      <xs:field xpath="mstns:date_vt" />
+    </xs:unique>
+  </xs:element>
+</xs:schema>

+ 20 - 0
Fuel_ASO/DataSet1.xss

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--<autogenerated>
+     This code was generated by a tool to store the dataset designer's layout information.
+     Changes to this file may cause incorrect behavior and will be lost if
+     the code is regenerated.
+</autogenerated>-->
+<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-7" ViewPortY="9" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
+  <Shapes>
+    <Shape ID="DesignTable:tb_vehi" ZOrder="9" X="251" Y="227" Height="276" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
+    <Shape ID="DesignTable:tb_epreuve" ZOrder="8" X="84" Y="52" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="120" />
+    <Shape ID="DesignTable:tb_etape" ZOrder="7" X="288" Y="19" Height="105" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="101" />
+    <Shape ID="DesignTable:tb_pays" ZOrder="6" X="494" Y="391" Height="163" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
+    <Shape ID="DesignTable:tb_station" ZOrder="5" X="491" Y="44" Height="276" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
+    <Shape ID="DesignTable:tb_famille" ZOrder="4" X="246" Y="553" Height="48" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="44" />
+    <Shape ID="DesignTable:tb_prod" ZOrder="3" X="703" Y="37" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="82" />
+    <Shape ID="DesignTable:tb_presta" ZOrder="2" X="713" Y="156" Height="182" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="178" />
+    <Shape ID="DesignTable:tb_vente" ZOrder="1" X="745" Y="364" Height="258" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
+  </Shapes>
+  <Connectors />
+</DiagramLayout>

+ 62 - 0
Fuel_ASO/DbUtil.cs

@@ -0,0 +1,62 @@
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Fuel01
+{
+    public static class DbUtil
+    {
+        public static T LoadFromJson<T>(string filename, DataSet ds) where T : class
+        {
+            if (!File.Exists(filename))
+            {
+                return null;
+            }
+            ds.Clear();
+
+            var datas = File.ReadAllText(filename);
+
+            var tmData = JsonConvert.DeserializeObject<DataSet1.tb_epreuveDataTable>(datas);
+
+            return tmData as T;
+
+        }
+
+        public static T LoadFromJson<T> (string filename, T ds) 
+        {
+            if (!File.Exists(filename))
+            {
+                return default(T);
+            }
+
+            var datas = File.ReadAllText(filename);
+
+            var tmData = JsonConvert.DeserializeObject<T>(datas);
+
+            return tmData;
+
+        }
+
+        public static bool SaveToJson<T>(string filename, T ds)
+        {
+            try
+            {
+                var result = JsonConvert.SerializeObject(ds, Formatting.Indented);
+                File.WriteAllText(filename, result);
+                return true;
+            }
+            catch
+            {
+                return false;
+            }
+        }
+
+        
+
+    }
+}

二进制
Fuel_ASO/Dlls/Ionic.Utils.Zip.dll


二进制
Fuel_ASO/Fuel01_CléTemporaire.pfx


+ 426 - 0
Fuel_ASO/Fuel_ASO.csproj

@@ -0,0 +1,426 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{2578A6FE-68E5-4216-AF51-9B04DDD43D8A}</ProjectGuid>
+    <OutputType>WinExe</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>Fuel01</RootNamespace>
+    <AssemblyName>Fuel_ASO</AssemblyName>
+    <TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <TargetFrameworkProfile>
+    </TargetFrameworkProfile>
+    <IsWebBootstrapper>false</IsWebBootstrapper>
+    <AssemblyInfoFilePath>Properties\AssemblyInfo.cs</AssemblyInfoFilePath>
+    <UpdateAssemblyVersion>True</UpdateAssemblyVersion>
+    <UpdateAssemblyFileVersion>True</UpdateAssemblyFileVersion>
+    <UpdateAssemblyInfoVersion>True</UpdateAssemblyInfoVersion>
+    <AssemblyVersionSettings>None.None.None.Increment</AssemblyVersionSettings>
+    <AssemblyFileVersionSettings>None.None.None.Increment</AssemblyFileVersionSettings>
+    <AssemblyInfoVersionSettings>None.None.None.Increment</AssemblyInfoVersionSettings>
+    <PrimaryVersionType>AssemblyVersionAttribute</PrimaryVersionType>
+    <AssemblyVersion>1.8.4.49</AssemblyVersion>
+    <SccProjectName>Svn</SccProjectName>
+    <SccLocalPath>Svn</SccLocalPath>
+    <SccAuxPath>Svn</SccAuxPath>
+    <SccProvider>SubversionScc</SccProvider>
+    <ShouldCreateLogs>True</ShouldCreateLogs>
+    <AdvancedSettingsExpanded>True</AdvancedSettingsExpanded>
+    <UpdatePackageVersion>False</UpdatePackageVersion>
+    <AssemblyInfoVersionType>SettingsVersion</AssemblyInfoVersionType>
+    <AssemblyInfoVersionSemVerSettings>
+    </AssemblyInfoVersionSemVerSettings>
+    <PublishUrl>publier\</PublishUrl>
+    <Install>true</Install>
+    <InstallFrom>Disk</InstallFrom>
+    <UpdateEnabled>false</UpdateEnabled>
+    <UpdateMode>Foreground</UpdateMode>
+    <UpdateInterval>7</UpdateInterval>
+    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
+    <UpdatePeriodically>false</UpdatePeriodically>
+    <UpdateRequired>false</UpdateRequired>
+    <MapFileExtensions>true</MapFileExtensions>
+    <ProductName>Fuel</ProductName>
+    <PublisherName>Aformatix</PublisherName>
+    <ApplicationRevision>0</ApplicationRevision>
+    <ApplicationVersion>1.8.10.0</ApplicationVersion>
+    <UseApplicationTrust>false</UseApplicationTrust>
+    <PublishWizardCompleted>true</PublishWizardCompleted>
+    <BootstrapperEnabled>true</BootstrapperEnabled>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <Prefer32Bit>false</Prefer32Bit>
+    <RunCodeAnalysis>false</RunCodeAnalysis>
+    <CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
+    <PrimaryVersionType>AssemblyVersionAttribute</PrimaryVersionType>
+    <AssemblyInfoFilePath>Properties\AssemblyInfo.cs</AssemblyInfoFilePath>
+    <UpdateAssemblyVersion>True</UpdateAssemblyVersion>
+    <UpdateAssemblyFileVersion>True</UpdateAssemblyFileVersion>
+    <UpdateAssemblyInfoVersion>True</UpdateAssemblyInfoVersion>
+    <AssemblyVersionSettings>None.None.Increment.DayOfYearStamp</AssemblyVersionSettings>
+    <AssemblyFileVersionSettings>None.None.Increment.DayOfYearStamp</AssemblyFileVersionSettings>
+    <AssemblyInfoVersionSettings>None.None.Increment.DayOfYearStamp</AssemblyInfoVersionSettings>
+    <AssemblyInfoVersionSemVerSettings>AssemblyVersion.None.Alpha</AssemblyInfoVersionSemVerSettings>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <Prefer32Bit>false</Prefer32Bit>
+    <PrimaryVersionType>AssemblyVersionAttribute</PrimaryVersionType>
+    <AssemblyInfoFilePath>Properties\AssemblyInfo.cs</AssemblyInfoFilePath>
+    <UpdateAssemblyVersion>True</UpdateAssemblyVersion>
+    <UpdateAssemblyFileVersion>True</UpdateAssemblyFileVersion>
+    <UpdateAssemblyInfoVersion>True</UpdateAssemblyInfoVersion>
+    <AssemblyVersionSettings>None.None.DayOfYearStamp.Increment</AssemblyVersionSettings>
+    <AssemblyFileVersionSettings>None.None.DayOfYearStamp.Increment</AssemblyFileVersionSettings>
+    <AssemblyInfoVersionSettings>None.None.DayOfYearStamp.Increment</AssemblyInfoVersionSettings>
+  </PropertyGroup>
+  <PropertyGroup>
+    <ApplicationIcon>Resources\pompe01.ico</ApplicationIcon>
+  </PropertyGroup>
+  <PropertyGroup>
+    <StartupObject>Fuel01.Program</StartupObject>
+  </PropertyGroup>
+  <PropertyGroup>
+    <ManifestCertificateThumbprint>7AC64C733EC1B4867D413CBF28CB147FDB0A5E9F</ManifestCertificateThumbprint>
+  </PropertyGroup>
+  <PropertyGroup>
+    <ManifestKeyFile>Fuel01_CléTemporaire.pfx</ManifestKeyFile>
+  </PropertyGroup>
+  <PropertyGroup>
+    <GenerateManifests>false</GenerateManifests>
+  </PropertyGroup>
+  <PropertyGroup>
+    <TargetZone>LocalIntranet</TargetZone>
+  </PropertyGroup>
+  <PropertyGroup>
+    <ApplicationManifest>Properties\app.manifest</ApplicationManifest>
+  </PropertyGroup>
+  <PropertyGroup>
+    <SignManifests>true</SignManifests>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Ionic.Utils.Zip, Version=1.3.0.0, Culture=neutral, PublicKeyToken=c551e179877da246, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>Dlls\Ionic.Utils.Zip.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AspNet.SignalR.Client, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.AspNet.SignalR.Client.2.2.0\lib\net45\Microsoft.AspNet.SignalR.Client.dll</HintPath>
+      <Private>True</Private>
+    </Reference>
+    <Reference Include="Microsoft.CSharp">
+      <Private>False</Private>
+    </Reference>
+    <Reference Include="Microsoft.Office.Interop.Excel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL">
+      <EmbedInteropTypes>True</EmbedInteropTypes>
+    </Reference>
+    <Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+      <HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
+      <Private>True</Private>
+    </Reference>
+    <Reference Include="OFFICE, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <EmbedInteropTypes>True</EmbedInteropTypes>
+      <HintPath>C:\Windows\assembly\GAC_MSIL\office\15.0.0.0__71e9bce111e9429c\OFFICE.DLL</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Deployment" />
+    <Reference Include="System.Drawing" />
+    <Reference Include="System.Windows.Forms" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Classes.cs" />
+    <Compile Include="DataSet1.cs">
+      <DependentUpon>DataSet1.xsd</DependentUpon>
+    </Compile>
+    <Compile Include="DataSet1.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>DataSet1.xsd</DependentUpon>
+    </Compile>
+    <Compile Include="DbUtil.cs" />
+    <Compile Include="f_about.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_about.Designer.cs">
+      <DependentUpon>f_about.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_clean.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_clean.Designer.cs">
+      <DependentUpon>f_clean.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_epreuve.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_epreuve.Designer.cs">
+      <DependentUpon>f_epreuve.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_etape.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_etape.Designer.cs">
+      <DependentUpon>f_etape.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_extract.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_extract.Designer.cs">
+      <DependentUpon>f_extract.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_facture.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_facture.Designer.cs">
+      <DependentUpon>f_facture.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_param.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_param.Designer.cs">
+      <DependentUpon>f_param.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_presta.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_presta.Designer.cs">
+      <DependentUpon>f_presta.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_result.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_result.Designer.cs">
+      <DependentUpon>f_result.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_saisie2.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_saisie2.Designer.cs">
+      <DependentUpon>f_saisie2.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_station.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_station.Designer.cs">
+      <DependentUpon>f_station.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_tools.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_tools.Designer.cs">
+      <DependentUpon>f_tools.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_impvehi.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_impvehi.Designer.cs">
+      <DependentUpon>f_impvehi.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_verif.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_verif.Designer.cs">
+      <DependentUpon>f_verif.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Main.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Main.Designer.cs">
+      <DependentUpon>Main.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_vehi.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_vehi.Designer.cs">
+      <DependentUpon>f_vehi.cs</DependentUpon>
+    </Compile>
+    <Compile Include="f_ticket.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="f_ticket.Designer.cs">
+      <DependentUpon>f_ticket.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Settings.cs" />
+    <Compile Include="Utils.cs" />
+    <Compile Include="xmlvrac.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="xmlvrac.Designer.cs">
+      <DependentUpon>xmlvrac.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Program.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <EmbeddedResource Include="f_about.resx">
+      <DependentUpon>f_about.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_clean.resx">
+      <DependentUpon>f_clean.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_epreuve.resx">
+      <DependentUpon>f_epreuve.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_etape.resx">
+      <DependentUpon>f_etape.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_extract.resx">
+      <DependentUpon>f_extract.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_facture.resx">
+      <DependentUpon>f_facture.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_param.resx">
+      <DependentUpon>f_param.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_presta.resx">
+      <DependentUpon>f_presta.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_result.resx">
+      <DependentUpon>f_result.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_saisie2.resx">
+      <DependentUpon>f_saisie2.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_station.resx">
+      <DependentUpon>f_station.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_tools.resx">
+      <DependentUpon>f_tools.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_impvehi.resx">
+      <DependentUpon>f_impvehi.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_verif.resx">
+      <DependentUpon>f_verif.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Main.resx">
+      <DependentUpon>Main.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_vehi.resx">
+      <DependentUpon>f_vehi.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="f_ticket.resx">
+      <DependentUpon>f_ticket.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="xmlvrac.resx">
+      <DependentUpon>xmlvrac.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
+    </EmbeddedResource>
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DependentUpon>Resources.resx</DependentUpon>
+      <DesignTime>True</DesignTime>
+    </Compile>
+    <None Include="DataSet1.xsc">
+      <DependentUpon>DataSet1.xsd</DependentUpon>
+    </None>
+    <None Include="DataSet1.xsd">
+      <SubType>Designer</SubType>
+      <Generator>MSDataSetGenerator</Generator>
+      <LastGenOutput>DataSet1.Designer.cs</LastGenOutput>
+    </None>
+    <None Include="DataSet1.xss">
+      <DependentUpon>DataSet1.xsd</DependentUpon>
+    </None>
+    <None Include="Fuel01_CléTemporaire.pfx" />
+    <None Include="packages.config" />
+    <None Include="Properties\app.manifest" />
+    <None Include="Properties\Settings.settings">
+      <Generator>SettingsSingleFileGenerator</Generator>
+      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
+    </None>
+    <Compile Include="Properties\Settings.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DependentUpon>Settings.settings</DependentUpon>
+      <DesignTimeSharedInput>True</DesignTimeSharedInput>
+    </Compile>
+    <None Include="XMLSchema1.xsd">
+      <SubType>Designer</SubType>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="App.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\document0.png" />
+    <None Include="Resources\archive.png" />
+    <None Include="Resources\dossier.png" />
+    <Content Include="TextFile1.txt" />
+    <None Include="Resources\red.bmp" />
+    <None Include="Resources\green.bmp" />
+    <None Include="Resources\aax3.png" />
+    <None Include="Resources\aPompe.png" />
+    <Content Include="Dlls\Ionic.Utils.Zip.dll" />
+    <Content Include="Resources\pompe01.ico" />
+  </ItemGroup>
+  <ItemGroup>
+    <BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
+      <Visible>False</Visible>
+      <ProductName>Microsoft .NET Framework 4 Client Profile %28x86 et x64%29</ProductName>
+      <Install>true</Install>
+    </BootstrapperPackage>
+    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
+      <Visible>False</Visible>
+      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
+      <Install>false</Install>
+    </BootstrapperPackage>
+    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
+      <Visible>False</Visible>
+      <ProductName>.NET Framework 3.5 SP1</ProductName>
+      <Install>false</Install>
+    </BootstrapperPackage>
+    <BootstrapperPackage Include="Microsoft.Windows.Installer.4.5">
+      <Visible>False</Visible>
+      <ProductName>Windows Installer 4.5</ProductName>
+      <Install>true</Install>
+    </BootstrapperPackage>
+  </ItemGroup>
+  <ItemGroup>
+    <WCFMetadata Include="Service References\" />
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="Properties\DataSources\" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <PropertyGroup>
+    <PostBuildEvent>
+    </PostBuildEvent>
+  </PropertyGroup>
+  <ProjectExtensions>
+    <VisualStudio>
+      <UserProperties BuildVersion_UpdateAssemblyVersion="True" BuildVersion_UpdateFileVersion="True" BuildVersion_StartDate="2018/1/1" BuildVersion_UseGlobalSettings="False" BuildVersion_UseUniversalClock="True" BuildVersion_BuildVersioningStyle="None.None.YearDayOfYearStamp.Increment" BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" BuildVersion_IncrementBeforeBuild="False" BuildVersion_DetectChanges="False" />
+    </VisualStudio>
+  </ProjectExtensions>
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>

+ 16 - 0
Fuel_ASO/Fuel_ASO.csproj.user

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <PublishUrlHistory>publier\</PublishUrlHistory>
+    <InstallUrlHistory />
+    <SupportUrlHistory />
+    <UpdateUrlHistory />
+    <BootstrapperUrlHistory />
+    <ErrorReportUrlHistory />
+    <FallbackCulture>fr-FR</FallbackCulture>
+    <VerifyUploadedFiles>false</VerifyUploadedFiles>
+  </PropertyGroup>
+  <PropertyGroup>
+    <EnableSecurityDebugging>false</EnableSecurityDebugging>
+  </PropertyGroup>
+</Project>

+ 700 - 0
Fuel_ASO/Main.Designer.cs

@@ -0,0 +1,700 @@
+namespace Fuel01
+{
+    partial class Main
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Main));
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.statusBar = new System.Windows.Forms.StatusStrip();
+            this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.eprstat = new System.Windows.Forms.ToolStripStatusLabel();
+            this.stastat = new System.Windows.Forms.ToolStripStatusLabel();
+            this.tslbl1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.tbepreuveBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.vehiculeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.tbstationBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.mainContainer = new System.Windows.Forms.SplitContainer();
+            this.main_mnu = new System.Windows.Forms.ToolStrip();
+            this.mnu_ope = new System.Windows.Forms.ToolStripButton();
+            this.mnu_vehi_dow = new System.Windows.Forms.ToolStripDropDownButton();
+            this.mnh_vehi_acc = new System.Windows.Forms.ToolStripMenuItem();
+            this.mnu_vehi_sep = new System.Windows.Forms.ToolStripSeparator();
+            this.mnu_vehi_imp = new System.Windows.Forms.ToolStripMenuItem();
+            this.mnu_vehi_imp_parc = new System.Windows.Forms.ToolStripMenuItem();
+            this.mnu_vehi_imp_tdf = new System.Windows.Forms.ToolStripMenuItem();
+            this.parisNice17ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.mnu_sta = new System.Windows.Forms.ToolStripButton();
+            this.mnu_sep1 = new System.Windows.Forms.ToolStripSeparator();
+            this.mnu_saisie = new System.Windows.Forms.ToolStripButton();
+            this.mnu_gest = new System.Windows.Forms.ToolStripButton();
+            this.mnu_param = new System.Windows.Forms.ToolStripButton();
+            this.mnu_verif = new System.Windows.Forms.ToolStripButton();
+            this.mnu_about = new System.Windows.Forms.ToolStripButton();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer3 = new System.Windows.Forms.SplitContainer();
+            this.dg_epr = new System.Windows.Forms.DataGridView();
+            this.nomeprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.key_epr = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.abrev_epr = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.bt_doAll = new System.Windows.Forms.Button();
+            this.bt_do = new System.Windows.Forms.Button();
+            this.bt_retry = new System.Windows.Forms.Button();
+            this.bt_test = new System.Windows.Forms.Button();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.dg_sta = new System.Windows.Forms.DataGridView();
+            this.keystaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.etpstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datestaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.nomstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.text_file = new System.Windows.Forms.TextBox();
+            this.bt_fact = new System.Windows.Forms.Button();
+            this.timerSigR = new System.Windows.Forms.Timer(this.components);
+            this.statusBar.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbepreuveBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.vehiculeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.mainContainer)).BeginInit();
+            this.mainContainer.Panel1.SuspendLayout();
+            this.mainContainer.Panel2.SuspendLayout();
+            this.mainContainer.SuspendLayout();
+            this.main_mnu.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
+            this.splitContainer3.Panel1.SuspendLayout();
+            this.splitContainer3.Panel2.SuspendLayout();
+            this.splitContainer3.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_epr)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_sta)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // statusBar
+            // 
+            this.statusBar.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.statusBar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.toolStripStatusLabel1,
+            this.eprstat,
+            this.stastat,
+            this.tslbl1});
+            this.statusBar.Location = new System.Drawing.Point(0, 556);
+            this.statusBar.Name = "statusBar";
+            this.statusBar.Padding = new System.Windows.Forms.Padding(2, 0, 15, 0);
+            this.statusBar.Size = new System.Drawing.Size(1147, 22);
+            this.statusBar.TabIndex = 0;
+            this.statusBar.Text = "statusStrip1";
+            // 
+            // toolStripStatusLabel1
+            // 
+            this.toolStripStatusLabel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
+            this.toolStripStatusLabel1.Image = global::Fuel01.Properties.Resources.red;
+            this.toolStripStatusLabel1.Margin = new System.Windows.Forms.Padding(0);
+            this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
+            this.toolStripStatusLabel1.Size = new System.Drawing.Size(41, 25);
+            this.toolStripStatusLabel1.Text = " ";
+            this.toolStripStatusLabel1.Visible = false;
+            this.toolStripStatusLabel1.TextChanged += new System.EventHandler(this.toolStripStatusLabel1_TextChanged);
+            // 
+            // eprstat
+            // 
+            this.eprstat.Name = "eprstat";
+            this.eprstat.Size = new System.Drawing.Size(0, 15);
+            // 
+            // stastat
+            // 
+            this.stastat.Name = "stastat";
+            this.stastat.Size = new System.Drawing.Size(0, 15);
+            // 
+            // tslbl1
+            // 
+            this.tslbl1.Name = "tslbl1";
+            this.tslbl1.Size = new System.Drawing.Size(0, 15);
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // tbepreuveBindingSource
+            // 
+            this.tbepreuveBindingSource.DataMember = "tb_epreuve";
+            this.tbepreuveBindingSource.DataSource = this.dataSet1;
+            this.tbepreuveBindingSource.CurrentChanged += new System.EventHandler(this.tbepreuveBindingSource_CurrentChanged);
+            // 
+            // vehiculeBindingSource
+            // 
+            this.vehiculeBindingSource.DataMember = "tb_vehi";
+            this.vehiculeBindingSource.DataSource = this.dataSet1;
+            // 
+            // tbstationBindingSource
+            // 
+            this.tbstationBindingSource.DataMember = "tb_station";
+            this.tbstationBindingSource.DataSource = this.dataSet1;
+            this.tbstationBindingSource.Sort = "date_sta";
+            // 
+            // mainContainer
+            // 
+            this.mainContainer.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.mainContainer.Location = new System.Drawing.Point(0, 0);
+            this.mainContainer.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.mainContainer.Name = "mainContainer";
+            this.mainContainer.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // mainContainer.Panel1
+            // 
+            this.mainContainer.Panel1.Controls.Add(this.main_mnu);
+            // 
+            // mainContainer.Panel2
+            // 
+            this.mainContainer.Panel2.Controls.Add(this.splitContainer1);
+            this.mainContainer.Size = new System.Drawing.Size(1147, 556);
+            this.mainContainer.SplitterDistance = 41;
+            this.mainContainer.SplitterWidth = 6;
+            this.mainContainer.TabIndex = 13;
+            // 
+            // main_mnu
+            // 
+            this.main_mnu.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.main_mnu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.mnu_ope,
+            this.mnu_vehi_dow,
+            this.mnu_sta,
+            this.mnu_sep1,
+            this.mnu_saisie,
+            this.mnu_gest,
+            this.mnu_param,
+            this.mnu_verif,
+            this.mnu_about});
+            this.main_mnu.Location = new System.Drawing.Point(0, 0);
+            this.main_mnu.Name = "main_mnu";
+            this.main_mnu.Padding = new System.Windows.Forms.Padding(0, 0, 3, 0);
+            this.main_mnu.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
+            this.main_mnu.Size = new System.Drawing.Size(1147, 34);
+            this.main_mnu.TabIndex = 12;
+            this.main_mnu.Text = "Menu";
+            // 
+            // mnu_ope
+            // 
+            this.mnu_ope.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_ope.Image = ((System.Drawing.Image)(resources.GetObject("mnu_ope.Image")));
+            this.mnu_ope.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_ope.Name = "mnu_ope";
+            this.mnu_ope.Size = new System.Drawing.Size(96, 29);
+            this.mnu_ope.Text = "&Opération";
+            this.mnu_ope.TextImageRelation = System.Windows.Forms.TextImageRelation.TextBeforeImage;
+            this.mnu_ope.Click += new System.EventHandler(this.mnu_ope_Click);
+            // 
+            // mnu_vehi_dow
+            // 
+            this.mnu_vehi_dow.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_vehi_dow.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.mnh_vehi_acc,
+            this.mnu_vehi_sep,
+            this.mnu_vehi_imp});
+            this.mnu_vehi_dow.Image = ((System.Drawing.Image)(resources.GetObject("mnu_vehi_dow.Image")));
+            this.mnu_vehi_dow.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_vehi_dow.Name = "mnu_vehi_dow";
+            this.mnu_vehi_dow.Size = new System.Drawing.Size(102, 29);
+            this.mnu_vehi_dow.Text = "&Véhicules";
+            // 
+            // mnh_vehi_acc
+            // 
+            this.mnh_vehi_acc.Name = "mnh_vehi_acc";
+            this.mnh_vehi_acc.Size = new System.Drawing.Size(184, 34);
+            this.mnh_vehi_acc.Text = "Accéder";
+            this.mnh_vehi_acc.Click += new System.EventHandler(this.mnh_vehi_acc_Click);
+            // 
+            // mnu_vehi_sep
+            // 
+            this.mnu_vehi_sep.Name = "mnu_vehi_sep";
+            this.mnu_vehi_sep.Size = new System.Drawing.Size(181, 6);
+            // 
+            // mnu_vehi_imp
+            // 
+            this.mnu_vehi_imp.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.mnu_vehi_imp_parc,
+            this.mnu_vehi_imp_tdf,
+            this.parisNice17ToolStripMenuItem});
+            this.mnu_vehi_imp.Name = "mnu_vehi_imp";
+            this.mnu_vehi_imp.Size = new System.Drawing.Size(184, 34);
+            this.mnu_vehi_imp.Text = "Importer";
+            // 
+            // mnu_vehi_imp_parc
+            // 
+            this.mnu_vehi_imp_parc.Name = "mnu_vehi_imp_parc";
+            this.mnu_vehi_imp_parc.Size = new System.Drawing.Size(216, 34);
+            this.mnu_vehi_imp_parc.Text = "Parc Auto";
+            this.mnu_vehi_imp_parc.Click += new System.EventHandler(this.mnu_vehi_imp_parc_Click);
+            // 
+            // mnu_vehi_imp_tdf
+            // 
+            this.mnu_vehi_imp_tdf.Name = "mnu_vehi_imp_tdf";
+            this.mnu_vehi_imp_tdf.Size = new System.Drawing.Size(216, 34);
+            this.mnu_vehi_imp_tdf.Text = "TDF";
+            this.mnu_vehi_imp_tdf.Click += new System.EventHandler(this.mnu_vehi_imp_tdf_Click);
+            // 
+            // parisNice17ToolStripMenuItem
+            // 
+            this.parisNice17ToolStripMenuItem.Name = "parisNice17ToolStripMenuItem";
+            this.parisNice17ToolStripMenuItem.Size = new System.Drawing.Size(216, 34);
+            this.parisNice17ToolStripMenuItem.Text = "Paris-Nice 17";
+            this.parisNice17ToolStripMenuItem.Click += new System.EventHandler(this.parisNice17ToolStripMenuItem_Click);
+            // 
+            // mnu_sta
+            // 
+            this.mnu_sta.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_sta.Image = ((System.Drawing.Image)(resources.GetObject("mnu_sta.Image")));
+            this.mnu_sta.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_sta.Name = "mnu_sta";
+            this.mnu_sta.Size = new System.Drawing.Size(79, 29);
+            this.mnu_sta.Text = "Stations";
+            this.mnu_sta.Click += new System.EventHandler(this.mnu_sta_Click);
+            // 
+            // mnu_sep1
+            // 
+            this.mnu_sep1.Name = "mnu_sep1";
+            this.mnu_sep1.Size = new System.Drawing.Size(6, 34);
+            // 
+            // mnu_saisie
+            // 
+            this.mnu_saisie.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_saisie.Image = ((System.Drawing.Image)(resources.GetObject("mnu_saisie.Image")));
+            this.mnu_saisie.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_saisie.Name = "mnu_saisie";
+            this.mnu_saisie.Size = new System.Drawing.Size(60, 29);
+            this.mnu_saisie.Text = "Saisie";
+            this.mnu_saisie.Click += new System.EventHandler(this.mnu_saisie_Click);
+            // 
+            // mnu_gest
+            // 
+            this.mnu_gest.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_gest.Image = ((System.Drawing.Image)(resources.GetObject("mnu_gest.Image")));
+            this.mnu_gest.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_gest.Name = "mnu_gest";
+            this.mnu_gest.Size = new System.Drawing.Size(76, 29);
+            this.mnu_gest.Text = "Gestion";
+            this.mnu_gest.Click += new System.EventHandler(this.mnu_gest_Click);
+            // 
+            // mnu_param
+            // 
+            this.mnu_param.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_param.Image = ((System.Drawing.Image)(resources.GetObject("mnu_param.Image")));
+            this.mnu_param.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_param.Name = "mnu_param";
+            this.mnu_param.Size = new System.Drawing.Size(103, 29);
+            this.mnu_param.Text = "Paramètres";
+            this.mnu_param.Click += new System.EventHandler(this.mnu_param_Click);
+            // 
+            // mnu_verif
+            // 
+            this.mnu_verif.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_verif.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_verif.Name = "mnu_verif";
+            this.mnu_verif.Size = new System.Drawing.Size(87, 29);
+            this.mnu_verif.Text = "Vérif TVA";
+            this.mnu_verif.Visible = false;
+            this.mnu_verif.Click += new System.EventHandler(this.mnu_verif_Click);
+            // 
+            // mnu_about
+            // 
+            this.mnu_about.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
+            this.mnu_about.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+            this.mnu_about.Image = ((System.Drawing.Image)(resources.GetObject("mnu_about.Image")));
+            this.mnu_about.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mnu_about.Name = "mnu_about";
+            this.mnu_about.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
+            this.mnu_about.Size = new System.Drawing.Size(90, 29);
+            this.mnu_about.Text = "A Propos";
+            this.mnu_about.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.mnu_about.TextDirection = System.Windows.Forms.ToolStripTextDirection.Horizontal;
+            this.mnu_about.Click += new System.EventHandler(this.mnu_about_Click);
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Margin = new System.Windows.Forms.Padding(45, 46, 45, 46);
+            this.splitContainer1.Name = "splitContainer1";
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.splitContainer3);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(1147, 509);
+            this.splitContainer1.SplitterDistance = 379;
+            this.splitContainer1.SplitterWidth = 6;
+            this.splitContainer1.TabIndex = 10;
+            // 
+            // splitContainer3
+            // 
+            this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer3.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer3.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.splitContainer3.Name = "splitContainer3";
+            this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer3.Panel1
+            // 
+            this.splitContainer3.Panel1.Controls.Add(this.dg_epr);
+            // 
+            // splitContainer3.Panel2
+            // 
+            this.splitContainer3.Panel2.Controls.Add(this.bt_doAll);
+            this.splitContainer3.Panel2.Controls.Add(this.bt_do);
+            this.splitContainer3.Panel2.Controls.Add(this.bt_retry);
+            this.splitContainer3.Panel2.Controls.Add(this.bt_test);
+            this.splitContainer3.Panel2.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.splitContainer3_Panel2_MouseDoubleClick);
+            this.splitContainer3.Size = new System.Drawing.Size(379, 509);
+            this.splitContainer3.SplitterDistance = 455;
+            this.splitContainer3.SplitterWidth = 6;
+            this.splitContainer3.TabIndex = 1;
+            // 
+            // dg_epr
+            // 
+            this.dg_epr.AllowUserToAddRows = false;
+            this.dg_epr.AllowUserToDeleteRows = false;
+            this.dg_epr.AutoGenerateColumns = false;
+            this.dg_epr.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_epr.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.nomeprDataGridViewTextBoxColumn,
+            this.key_epr,
+            this.abrev_epr});
+            this.dg_epr.DataSource = this.tbepreuveBindingSource;
+            this.dg_epr.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_epr.Location = new System.Drawing.Point(0, 0);
+            this.dg_epr.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.dg_epr.Name = "dg_epr";
+            this.dg_epr.ReadOnly = true;
+            this.dg_epr.RowHeadersWidth = 62;
+            this.dg_epr.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_epr.Size = new System.Drawing.Size(379, 455);
+            this.dg_epr.TabIndex = 6;
+            this.dg_epr.CellMouseDoubleClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.dg_epr_CellMouseDoubleClick);
+            // 
+            // nomeprDataGridViewTextBoxColumn
+            // 
+            this.nomeprDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.nomeprDataGridViewTextBoxColumn.DataPropertyName = "nom_epr";
+            this.nomeprDataGridViewTextBoxColumn.HeaderText = "Epreuve";
+            this.nomeprDataGridViewTextBoxColumn.MinimumWidth = 8;
+            this.nomeprDataGridViewTextBoxColumn.Name = "nomeprDataGridViewTextBoxColumn";
+            this.nomeprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // key_epr
+            // 
+            this.key_epr.DataPropertyName = "key_epr";
+            this.key_epr.HeaderText = "key_epr";
+            this.key_epr.MinimumWidth = 8;
+            this.key_epr.Name = "key_epr";
+            this.key_epr.ReadOnly = true;
+            this.key_epr.Visible = false;
+            this.key_epr.Width = 150;
+            // 
+            // abrev_epr
+            // 
+            this.abrev_epr.DataPropertyName = "abrev_epr";
+            this.abrev_epr.HeaderText = "abrev_epr";
+            this.abrev_epr.MinimumWidth = 8;
+            this.abrev_epr.Name = "abrev_epr";
+            this.abrev_epr.ReadOnly = true;
+            this.abrev_epr.Visible = false;
+            this.abrev_epr.Width = 150;
+            // 
+            // bt_doAll
+            // 
+            this.bt_doAll.Dock = System.Windows.Forms.DockStyle.Left;
+            this.bt_doAll.Location = new System.Drawing.Point(225, 0);
+            this.bt_doAll.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_doAll.Name = "bt_doAll";
+            this.bt_doAll.Size = new System.Drawing.Size(75, 48);
+            this.bt_doAll.TabIndex = 4;
+            this.bt_doAll.Text = "ALL";
+            this.bt_doAll.UseVisualStyleBackColor = true;
+            this.bt_doAll.Visible = false;
+            this.bt_doAll.Click += new System.EventHandler(this.bt_doAll_Click);
+            // 
+            // bt_do
+            // 
+            this.bt_do.Dock = System.Windows.Forms.DockStyle.Left;
+            this.bt_do.Location = new System.Drawing.Point(150, 0);
+            this.bt_do.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_do.Name = "bt_do";
+            this.bt_do.Size = new System.Drawing.Size(75, 48);
+            this.bt_do.TabIndex = 3;
+            this.bt_do.Text = "Do";
+            this.bt_do.UseVisualStyleBackColor = true;
+            this.bt_do.Visible = false;
+            this.bt_do.Click += new System.EventHandler(this.bt_do_Click);
+            // 
+            // bt_retry
+            // 
+            this.bt_retry.Dock = System.Windows.Forms.DockStyle.Left;
+            this.bt_retry.Location = new System.Drawing.Point(75, 0);
+            this.bt_retry.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_retry.Name = "bt_retry";
+            this.bt_retry.Size = new System.Drawing.Size(75, 48);
+            this.bt_retry.TabIndex = 1;
+            this.bt_retry.Text = "ReTry SigR";
+            this.bt_retry.UseVisualStyleBackColor = true;
+            this.bt_retry.Visible = false;
+            this.bt_retry.Click += new System.EventHandler(this.button2_Click);
+            // 
+            // bt_test
+            // 
+            this.bt_test.Dock = System.Windows.Forms.DockStyle.Left;
+            this.bt_test.Location = new System.Drawing.Point(0, 0);
+            this.bt_test.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_test.Name = "bt_test";
+            this.bt_test.Size = new System.Drawing.Size(75, 48);
+            this.bt_test.TabIndex = 0;
+            this.bt_test.Text = "Msg test";
+            this.bt_test.UseVisualStyleBackColor = true;
+            this.bt_test.Visible = false;
+            this.bt_test.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.splitContainer2.Name = "splitContainer2";
+            this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.dg_sta);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.text_file);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_fact);
+            this.splitContainer2.Size = new System.Drawing.Size(762, 509);
+            this.splitContainer2.SplitterDistance = 455;
+            this.splitContainer2.SplitterWidth = 6;
+            this.splitContainer2.TabIndex = 0;
+            // 
+            // dg_sta
+            // 
+            this.dg_sta.AllowUserToAddRows = false;
+            this.dg_sta.AllowUserToDeleteRows = false;
+            this.dg_sta.AutoGenerateColumns = false;
+            this.dg_sta.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_sta.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.keystaDataGridViewTextBoxColumn,
+            this.etpstaDataGridViewTextBoxColumn,
+            this.datestaDataGridViewTextBoxColumn,
+            this.nomstaDataGridViewTextBoxColumn});
+            this.dg_sta.DataSource = this.tbstationBindingSource;
+            this.dg_sta.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_sta.Location = new System.Drawing.Point(0, 0);
+            this.dg_sta.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.dg_sta.Name = "dg_sta";
+            this.dg_sta.ReadOnly = true;
+            this.dg_sta.RowHeadersWidth = 62;
+            this.dg_sta.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_sta.Size = new System.Drawing.Size(762, 455);
+            this.dg_sta.TabIndex = 7;
+            this.dg_sta.CellMouseDoubleClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.dg_sta_CellMouseDoubleClick);
+            // 
+            // keystaDataGridViewTextBoxColumn
+            // 
+            this.keystaDataGridViewTextBoxColumn.DataPropertyName = "key_sta";
+            this.keystaDataGridViewTextBoxColumn.HeaderText = "key_sta";
+            this.keystaDataGridViewTextBoxColumn.MinimumWidth = 8;
+            this.keystaDataGridViewTextBoxColumn.Name = "keystaDataGridViewTextBoxColumn";
+            this.keystaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.keystaDataGridViewTextBoxColumn.Visible = false;
+            this.keystaDataGridViewTextBoxColumn.Width = 150;
+            // 
+            // etpstaDataGridViewTextBoxColumn
+            // 
+            this.etpstaDataGridViewTextBoxColumn.DataPropertyName = "etp_sta";
+            this.etpstaDataGridViewTextBoxColumn.HeaderText = "Etp";
+            this.etpstaDataGridViewTextBoxColumn.MinimumWidth = 8;
+            this.etpstaDataGridViewTextBoxColumn.Name = "etpstaDataGridViewTextBoxColumn";
+            this.etpstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.etpstaDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // datestaDataGridViewTextBoxColumn
+            // 
+            this.datestaDataGridViewTextBoxColumn.DataPropertyName = "date_sta";
+            dataGridViewCellStyle1.Format = "M";
+            dataGridViewCellStyle1.NullValue = null;
+            this.datestaDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle1;
+            this.datestaDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.datestaDataGridViewTextBoxColumn.MinimumWidth = 8;
+            this.datestaDataGridViewTextBoxColumn.Name = "datestaDataGridViewTextBoxColumn";
+            this.datestaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.datestaDataGridViewTextBoxColumn.Width = 150;
+            // 
+            // nomstaDataGridViewTextBoxColumn
+            // 
+            this.nomstaDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.nomstaDataGridViewTextBoxColumn.DataPropertyName = "nom_sta";
+            this.nomstaDataGridViewTextBoxColumn.HeaderText = "Station";
+            this.nomstaDataGridViewTextBoxColumn.MinimumWidth = 8;
+            this.nomstaDataGridViewTextBoxColumn.Name = "nomstaDataGridViewTextBoxColumn";
+            this.nomstaDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // text_file
+            // 
+            this.text_file.Location = new System.Drawing.Point(4, 17);
+            this.text_file.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.text_file.Name = "text_file";
+            this.text_file.Size = new System.Drawing.Size(559, 26);
+            this.text_file.TabIndex = 3;
+            this.text_file.Visible = false;
+            // 
+            // bt_fact
+            // 
+            this.bt_fact.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.bt_fact.Location = new System.Drawing.Point(629, 15);
+            this.bt_fact.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_fact.Name = "bt_fact";
+            this.bt_fact.Size = new System.Drawing.Size(112, 35);
+            this.bt_fact.TabIndex = 0;
+            this.bt_fact.Text = "Facture";
+            this.bt_fact.UseVisualStyleBackColor = true;
+            this.bt_fact.Click += new System.EventHandler(this.bt_fact_Click);
+            // 
+            // timerSigR
+            // 
+            this.timerSigR.Enabled = true;
+            this.timerSigR.Interval = 5000;
+            this.timerSigR.Tick += new System.EventHandler(this.timerSigR_Tick);
+            // 
+            // Main
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1147, 578);
+            this.Controls.Add(this.mainContainer);
+            this.Controls.Add(this.statusBar);
+            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+            this.IsMdiContainer = true;
+            this.Name = "Main";
+            this.Tag = "vide";
+            this.Text = "Aucune opération sélectionnée";
+            this.Activated += new System.EventHandler(this.Main_Activated);
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Main_FormClosing);
+            this.Load += new System.EventHandler(this.Main_Load);
+            this.statusBar.ResumeLayout(false);
+            this.statusBar.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbepreuveBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.vehiculeBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).EndInit();
+            this.mainContainer.Panel1.ResumeLayout(false);
+            this.mainContainer.Panel1.PerformLayout();
+            this.mainContainer.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.mainContainer)).EndInit();
+            this.mainContainer.ResumeLayout(false);
+            this.main_mnu.ResumeLayout(false);
+            this.main_mnu.PerformLayout();
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer3.Panel1.ResumeLayout(false);
+            this.splitContainer3.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
+            this.splitContainer3.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_epr)).EndInit();
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            this.splitContainer2.Panel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_sta)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.StatusStrip statusBar;
+        private System.Windows.Forms.BindingSource vehiculeBindingSource;
+        private System.Windows.Forms.BindingSource tbepreuveBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
+        private System.Windows.Forms.BindingSource tbstationBindingSource;
+        private System.Windows.Forms.SplitContainer mainContainer;
+        private System.Windows.Forms.Button bt_fact;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nomstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datestaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn etpstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn keystaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridView dg_sta;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn abrev_epr;
+        private System.Windows.Forms.DataGridViewTextBoxColumn key_epr;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nomeprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridView dg_epr;
+        private System.Windows.Forms.SplitContainer splitContainer3;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.ToolStripButton mnu_about;
+        private System.Windows.Forms.ToolStripButton mnu_param;
+        private System.Windows.Forms.ToolStripButton mnu_gest;
+        private System.Windows.Forms.ToolStripButton mnu_saisie;
+        private System.Windows.Forms.ToolStripSeparator mnu_sep1;
+        private System.Windows.Forms.ToolStripButton mnu_sta;
+        private System.Windows.Forms.ToolStripMenuItem mnu_vehi_imp_tdf;
+        private System.Windows.Forms.ToolStripMenuItem mnu_vehi_imp_parc;
+        private System.Windows.Forms.ToolStripMenuItem mnu_vehi_imp;
+        private System.Windows.Forms.ToolStripSeparator mnu_vehi_sep;
+        private System.Windows.Forms.ToolStripMenuItem mnh_vehi_acc;
+        private System.Windows.Forms.ToolStripDropDownButton mnu_vehi_dow;
+        private System.Windows.Forms.ToolStripButton mnu_ope;
+        private System.Windows.Forms.ToolStrip main_mnu;
+        private System.Windows.Forms.ToolStripStatusLabel eprstat;
+        private System.Windows.Forms.ToolStripStatusLabel stastat;
+        private System.Windows.Forms.ToolStripStatusLabel tslbl1;
+        private System.Windows.Forms.Button bt_test;
+        private System.Windows.Forms.Button bt_retry;
+        private System.Windows.Forms.Timer timerSigR;
+        private System.Windows.Forms.Button bt_do;
+        private System.Windows.Forms.Button bt_doAll;
+        private System.Windows.Forms.TextBox text_file;
+        private System.Windows.Forms.ToolStripButton mnu_verif;
+        private System.Windows.Forms.ToolStripMenuItem parisNice17ToolStripMenuItem;
+    }
+}

+ 656 - 0
Fuel_ASO/Main.cs

@@ -0,0 +1,656 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Windows.Forms;
+using System.Xml.Serialization;
+using System.Xml.Linq;
+using System.Data;
+using Excel = Microsoft.Office.Interop.Excel;
+using Microsoft.AspNet.SignalR.Client;
+using Ionic.Utils.Zip;
+using System.Reflection;
+using System.Threading.Tasks;
+
+namespace Fuel01
+{
+    public partial class Main : Form
+    {
+        private IHubProxy myHubproxy;
+        private HubConnection myHubCnx;
+        private string mySignalRiD;
+        DataSet1.tb_epreuveDataTable tb_epr = new DataSet1.tb_epreuveDataTable();
+        DataSet1.tb_stationDataTable tb_station = new DataSet1.tb_stationDataTable();
+
+        #region Main Form
+
+        public Main()
+        {
+            InitializeComponent();
+
+            System.Globalization.CultureInfo customCulture = (System.Globalization.CultureInfo)System.Threading.Thread.CurrentThread.CurrentCulture.Clone();
+            customCulture.NumberFormat.NumberDecimalSeparator = ".";
+            System.Threading.Thread.CurrentThread.CurrentCulture = customCulture;
+
+        }
+
+        private void Main_Load(object sender, EventArgs e)
+        {
+            toolStripStatusLabel1_TextChanged(sender, null); // on force l'affichage de l'état
+
+            Program.folder = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\AsoFuel";
+
+            if (!Directory.Exists(Program.folder))
+                Directory.CreateDirectory(Program.folder);
+            if (!Directory.Exists(Program.folder + @"\param"))
+                Directory.CreateDirectory(Program.folder + @"\param");
+            if (!Directory.Exists(Program.folder + @"\In"))
+                Directory.CreateDirectory(Program.folder + @"\in");
+            Directory.CreateDirectory(Program.folder);
+            if (!Directory.Exists(Program.folder + @"\tmp"))
+                Directory.CreateDirectory(Program.folder + @"\tmp");
+
+            if (!Directory.Exists(Program.folder))
+            {
+                MessageBox.Show("Application mal installée, dossier " + Program.folder + " Non Créé, Abandon!");
+                Application.Exit();
+            }
+
+            try
+            {
+                Excel.Application xlApp = new Excel.Application();
+                xlApp.Quit();
+                Program.isExcel = true;
+                mnu_vehi_imp.Enabled = Program.isExcel;
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("Application Excel non installée certaines fonctions ne seront pas disponibles!");
+                Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() + "Excel non installé " + ex.Message);
+
+            }
+
+            if (Properties.Settings.Default.key_ope != "")
+            {
+                Program.key_ope = Properties.Settings.Default.key_ope;
+                Program.nom_ope = Properties.Settings.Default.nom_ope;
+                Program.abrev_ope = Properties.Settings.Default.abrev_ope;
+                mnu_vehi_dow.Enabled = true;
+                mnu_sta.Enabled = true;
+                mnu_param.Enabled = true;
+                mnu_saisie.Enabled = true;
+
+            }
+            tbepreuveBindingSource.DataSource = tb_epr;
+            refreshData(1);
+            
+            tbepreuveBindingSource.PositionChanged += new System.EventHandler(this.tbepreuveBindingSource_PositionChanged);
+
+           
+            //PGER init_signalR();
+
+            if (tb_epr.Rows.Count >= 1)
+            {
+                tbepreuveBindingSource.MoveLast();
+                tbepreuveBindingSource.MoveFirst();
+            }
+            mnu_vehi_imp.Enabled = Program.isExcel = true ;
+            spy();
+        }
+
+        private void Main_Activated(object sender, EventArgs e)
+        {
+            if (Program.key_ope != (string)this.Tag)
+            {
+                this.Tag = Program.key_ope;
+                refreshData(1);
+            }
+
+        }
+
+        private void Main_FormClosing(object sender, FormClosingEventArgs e)
+        {
+
+            Properties.Settings.Default.key_ope = Program.key_ope;
+            Properties.Settings.Default.nom_ope = Program.nom_ope;
+            Properties.Settings.Default.abrev_ope = Program.abrev_ope;
+
+            Properties.Settings.Default.Save();
+
+            e.Cancel = false;
+        }
+
+        private void toolStripStatusLabel1_TextChanged(object sender, EventArgs e)
+        {
+            if (toolStripStatusLabel1.Text == "OK")
+                toolStripStatusLabel1.Image = global::Fuel01.Properties.Resources.green;
+            else
+
+                toolStripStatusLabel1.Image = global::Fuel01.Properties.Resources.red;
+
+            //toolStripStatusLabel1.Visible = (toolStripStatusLabel1.Text == "OK");
+        }
+
+
+        #endregion Main Form
+
+        #region Menu Principal
+
+        #region operations
+
+        private void opérationToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+        }
+
+        private void mnu_ope_Click(object sender, EventArgs e)
+        {
+            f_epreuve fepr = new f_epreuve(tb_epr);
+            fepr.ShowDialog();
+            mnu_vehi_dow.Enabled = true;
+            mnu_sta.Enabled = true;
+        }
+
+        #endregion
+
+        #region vehicules
+
+        private void mnh_vehi_acc_Click(object sender, EventArgs e)
+        {
+            f_vehi fvehi = new f_vehi();
+            fvehi.ShowDialog();
+
+        }
+
+        private void mnu_vehi_imp_parc_Click(object sender, EventArgs e)
+        {
+            f_impvehi fvehi = new f_impvehi("parc");
+            fvehi.ShowDialog();
+
+        }
+
+        private void mnu_vehi_imp_tdf_Click(object sender, EventArgs e)
+        {
+            f_impvehi fvehi = new f_impvehi("tdf");
+            fvehi.ShowDialog();
+
+        }
+
+        #endregion vehicules
+
+        #region Stations
+
+        f_station fsta;
+        private void mnu_sta_Click(object sender, EventArgs e)
+        {
+            DataSet1.tb_stationRow mydata = null;
+            DataRowView myrow = tbstationBindingSource.Current as DataRowView;
+            if (myrow != null)
+            {
+                mydata = myrow.Row as DataSet1.tb_stationRow;
+                fsta = new f_station(tb_station, mydata.key_sta);
+            }
+            else
+                fsta = new f_station(tb_station, null);
+
+            fsta.ShowDialog();
+        }
+
+        #endregion Stations
+
+        #region Saisie
+
+        private void mnu_saisie_Click(object sender, EventArgs e)
+        {
+            if (dg_sta.SelectedRows.Count != 1) return;
+            Program.key_sta = dg_sta.SelectedRows[0].Cells[0].Value.ToString();
+            f_saisie2 fsaisie = new f_saisie2();
+            fsaisie.ShowDialog();
+        }
+
+        #endregion
+
+        #region Gestion
+
+        private void mnu_gest_Click(object sender, EventArgs e)
+        {
+            f_tools ftools = new f_tools();
+            ftools.ShowDialog();
+        }
+
+        #endregion
+
+        #region Paramètres
+
+        private void mnu_param_Click(object sender, EventArgs e)
+        {
+            f_param fparam = new f_param();
+            fparam.ShowDialog();
+        }
+
+        #endregion Paramètres
+
+        #region Apropos
+
+        private void mnu_about_Click(object sender, EventArgs e)
+        {
+            f_about fabout = new f_about();
+            fabout.ShowDialog();
+
+        }
+
+        #endregion
+
+        #endregion menu
+
+        #region SIgnaR
+
+
+        private async Task init_signalR()
+        {
+            await Task.CompletedTask;
+            string hostname = "";
+            string srv = "";
+            try
+            {
+                try
+                { hostname = Dns.GetHostName(); }
+                catch (Exception ex)
+                { hostname = "inconnu"; }
+
+                if (Program.site != 1) return;
+             
+                Dictionary<string, string> queryStringData = new Dictionary<string, string>();
+                mySignalRiD = DateTime.Now.Ticks.ToString();
+                mySignalRiD= mySignalRiD.Substring(mySignalRiD.Length-5);
+                mySignalRiD = hostname + "__" + mySignalRiD;
+                queryStringData.Add("Login", mySignalRiD);
+                try
+                {
+                    myHubCnx = new HubConnection(Properties.Settings.Default.server_signalr, queryStringData);
+                    srv = Properties.Settings.Default.server_signalr;
+                }
+                catch (Exception ee)
+                {
+                    Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() + " Connexion Secours " + srv + " impossible " + ee.Message);
+                    myHubCnx = new HubConnection("http://www.aformatix.com/SignalR/srv/", queryStringData);
+                    srv = @"http://www.aformatix.com/SignalR/srv/";
+
+                }
+                myHubproxy = myHubCnx.CreateHubProxy("PatoHub");
+                myHubproxy.On<HubMessage>("SendNewMessage", msg => getMsg(msg));
+                myHubCnx.StateChanged += myHubCnx_StateChanged;
+                try
+                {
+                    await myHubCnx.Start();
+                    Program.okSignalR = true;
+                    toolStripStatusLabel1.Text = "OK";
+                }
+                catch (Exception ee)
+                {
+                    Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() +  " Connexion à " + srv+ " impossible " + ee.Message);
+                    myHubproxy = null;
+                    Program.okSignalR = false;
+                    toolStripStatusLabel1.Text = "NOK";
+
+                }
+            }
+            catch (Exception eee)
+            {
+                Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() + " Connexion à " + srv + " impossible " + eee.Message);
+            }
+
+        }
+
+        void myHubCnx_StateChanged(StateChange obj)
+        {
+            if (obj.NewState != Microsoft.AspNet.SignalR.Client.ConnectionState.Connected)
+            {
+                Program.okSignalR = false;
+                toolStripStatusLabel1.Text = "NOK";
+            }
+            else
+            {
+                Program.okSignalR = true;
+                toolStripStatusLabel1.Text = "OK";
+            }
+            Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() +  " de " + obj.OldState.ToString() + " à " + obj.NewState.ToString() );
+
+        }
+
+
+        private void getMsg(HubMessage hubmsg)
+        {
+            switch (hubmsg.Action)
+            {
+                case "maj":
+
+                    break;
+                case "msg":
+                    string msg = hubmsg.Source + "/" + hubmsg.Action + "/" + hubmsg.Description + "/" + hubmsg.Valeur;
+                    if (hubmsg.Description == "send")
+                    {
+                        if (hubmsg.Source != mySignalRiD)
+                            sendFile(hubmsg.Valeur);
+                    }
+                    else
+                        MessageBox.Show(String.Format("Message de {0} \r\n {1} \r\n \r\n {2}", hubmsg.Source, hubmsg.Valeur, hubmsg.Date.ToString()), "SMS ", MessageBoxButtons.OK, MessageBoxIcon.Information);
+                    break;
+                case "cnx":
+                    //majusers(hubmsg.Valeur);
+                    //MessageBox.Show(hubmsg.Valeur);
+                    break;
+            }
+            //makeTdo();
+
+        }
+
+        private void send_msg(string action, string valeur, string description, string[] destinataire)
+        {
+            try
+            {
+                if (!Program.okSignalR) return;
+                //ACTION UPDATE /MESSAGE
+                //DESCRIPTION alarme mce investigation fiche sardatas
+                //Valeur texte du message
+                //Destinataire = dest?
+
+                HubMessage mymsg = new HubMessage { Action = action, Valeur = valeur, Description = description, Destinataires = destinataire, Date = DateTime.UtcNow.ToString("dd/MM/yy hh:mm:ss") }; //new string[]{"admin"}
+                myHubproxy.Invoke("DispatchMessage", mymsg);
+                myHubproxy.Invoke("GetClients");
+            }
+            catch (Exception ex)
+            {
+                Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() + " Send_msg  Action:"+action+" Valeur:"+valeur+" Desc:"+description+"  "+ex.Message);
+            }
+        }
+
+        #endregion SignalR
+
+        #region Datas
+
+        private void tbepreuveBindingSource_PositionChanged(object sender, EventArgs e)
+        {
+            tb_station.Clear();
+            DataSet1.tb_epreuveRow mydata = null;
+            DataRowView myrow = tbepreuveBindingSource.Current as DataRowView;
+            if (myrow != null)
+            {
+                mydata = myrow.Row as DataSet1.tb_epreuveRow;
+                Program.nom_ope = mydata.nom_epr;
+                Program.key_ope = mydata.key_epr;
+                Program.abrev_ope = mydata.abrev_epr;
+
+                this.Text = Program.nom_ope;
+
+                Program.subfolder = Program.folder + @"\" + Program.key_ope;
+                if (!Directory.Exists(Program.subfolder))
+                    Directory.CreateDirectory(Program.subfolder);
+                else
+                {
+                    if (File.Exists(Program.subfolder + @"\station.json"))
+                    {
+                        tb_station = DbUtil.LoadFromJson<DataSet1.tb_stationDataTable>(Program.subfolder + @"\station.json", tb_station);
+                        tbstationBindingSource.DataSource = tb_station;
+                        Console.WriteLine(tb_station.Count);
+                    }
+                        //tb_station.ReadXml(Program.subfolder + @"\station.xml");
+                }
+                //tbstationBindingSource.DataSource = tb_station;
+                eprstat.Text = mydata.key_epr + "-" + mydata.abrev_epr + "-" + mydata.nom_epr;
+            }
+            else
+                eprstat.Text = "null";
+
+        }
+
+        private void refreshData(int indice)
+        {
+
+            if (indice == 1)
+            {
+                tb_epr=DbUtil.LoadFromJson<DataSet1.tb_epreuveDataTable>(Program.folder + @"\epreuve.json", tb_epr);
+                tbepreuveBindingSource.DataSource = tb_epr;
+                Console.WriteLine(tb_epr.Count);
+                if (string.IsNullOrEmpty(Program.key_ope))
+                {
+                    tbepreuveBindingSource.MoveFirst();
+                    DataRowView firstRow = tbepreuveBindingSource.Current as DataRowView;
+                    Program.key_ope = firstRow["key_epr"].ToString();
+                }
+
+                DataSet1.tb_epreuveRow myrow = tb_epr.FindBykey_epr(Program.key_ope);
+                if (myrow != null)
+                {
+                    Program.nom_ope = myrow.nom_epr;
+                    Program.key_ope = myrow.key_epr;
+                    Program.abrev_ope = myrow.abrev_epr;
+                    this.Text = Program.nom_ope;
+                    this.Tag = Program.key_ope;
+
+                    tbepreuveBindingSource.MoveFirst();
+                    DataRowView myRow2 = tbepreuveBindingSource.Current as DataRowView;
+                    if (myRow2 != null)
+                        while (myRow2 != null && myRow2.Row["key_epr"].ToString() != myrow["key_epr"].ToString())
+                        {
+                            tbepreuveBindingSource.MoveNext();
+                            myRow2 = myRow2 = tbepreuveBindingSource.Current as DataRowView;
+                        }
+                }
+                tbepreuveBindingSource.PositionChanged += new System.EventHandler(this.tbepreuveBindingSource_PositionChanged);
+                Program.subfolder = Program.folder + @"\" + Program.key_ope;
+                tb_station.Clear();
+                if (!Directory.Exists(Program.subfolder))
+                    Directory.CreateDirectory(Program.subfolder);
+                else
+                {
+                    if (File.Exists(Program.subfolder + @"\station.json"))
+                    {
+                        tb_station = DbUtil.LoadFromJson<DataSet1.tb_stationDataTable>(Program.subfolder + @"\station.json", tb_station);
+                    }
+                }
+                tbstationBindingSource.DataSource = tb_station;
+            }
+        }
+
+        private void dg_epr_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
+        {
+            mnu_ope_Click(dg_epr, null);
+        }
+
+        private void dg_sta_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
+        {
+            mnu_sta_Click(dg_sta, null);
+        }
+
+        #endregion
+
+        private void bt_fact_Click(object sender, EventArgs e)
+        {
+            DataSet1.tb_stationRow mydata = null;
+            DataRowView myrow = tbstationBindingSource.Current as DataRowView;
+            if (myrow != null)
+            {
+                mydata = myrow.Row as DataSet1.tb_stationRow;
+                f_facture ffac = new f_facture(mydata.key_sta);
+                ffac.ShowDialog();
+            }
+            else
+                MessageBox.Show("Pas de station séléctionée!");
+
+
+        }
+
+
+        private void spy()
+        {
+            string chemin = Properties.Settings.Default.chemin_copie_locale;
+            try
+            {
+
+                FileSystemWatcher fw = new FileSystemWatcher(chemin, "*.xml");
+                fw.Changed += Fw_Spy;
+                fw.Created += Fw_Spy;
+                fw.Deleted += Fw_Spy;
+                fw.Renamed += Fw_Spy;
+                fw.EnableRaisingEvents = true;
+            }
+            catch (Exception ex)
+            {
+                tslbl1.Text = "  Surveillance du répertoire de réception impossible !!!";
+            }
+
+        }
+        int nbSpy = 0;
+        string lastSpy = "";
+        private void Fw_Spy(object sender, FileSystemEventArgs e)
+        {
+            if (e.ChangeType == WatcherChangeTypes.Created)
+            {
+                nbSpy++;
+                FileInfo fi = new FileInfo(e.FullPath);
+                lastSpy = fi.CreationTime.ToString("HH:mm:ss");
+            }
+            tslbl1.Text = String.Format("- {0} fichier{1} créé{1} - Dernière création à {2}", nbSpy, nbSpy > 1 ? "s" : "", lastSpy);
+        }
+
+        private void button1_Click(object sender, EventArgs e)
+        {
+            send_msg("msg", @"C:\ProgramData\ASOFuel\7516\vehicule.xml", "send", null);
+            send_msg("msg", @"C:\ProgramData\ASOFuel\7516\station.xml", "send", null);
+        }
+
+        private void button2_Click(object sender, EventArgs e)
+        {
+            if (!Program.okSignalR)
+                init_signalR();
+        }
+
+        int timerCount = 0;
+        int sigRCount = 0;
+        private void timerSigR_Tick(object sender, EventArgs e)
+        {
+            timerSigR.Interval = 60000;
+            if (!Program.okSignalR)
+                init_signalR();
+            if ( checkVersion_activated && timerCount%5==0)
+                checkVersion();
+
+            timerCount++;
+
+        }
+
+        private void sendFile(string fileName)
+        {
+            string chaine = @"http://www.aformatix.com/stationservice/api/FileUpLoad/upLoadFiles";
+            WebClient client = new WebClient();
+            //fileName = @"C:\ProgramData\ASOFuel\7516\" + fileName;
+            client.UploadFileAsync(new Uri(chaine), "POST", fileName);
+
+        }
+
+        private void splitContainer3_Panel2_MouseDoubleClick(object sender, MouseEventArgs e)
+        {
+            bool isVis = !bt_do.Visible;
+            bt_retry.Visible = isVis;
+            bt_do.Visible = isVis;
+            bt_test.Visible = isVis;
+            bt_doAll.Visible = isVis;
+            text_file.Visible = isVis;
+            toolStripStatusLabel1.Visible = isVis;
+        }
+
+        private void bt_do_Click(object sender, EventArgs e)
+        {
+            send_msg("msg", text_file.Text, "send", null);
+        }
+
+        private void actZip(string seek)
+        {
+            string path = "";
+            string mask="";
+            try
+            {
+                path = seek.Substring(0, seek.LastIndexOf("\\"));
+                mask = seek.Substring(seek.LastIndexOf("\\") + 1);
+                DateTime dt = DateTime.Now;
+                string filename = Program.folder + @"\tmp\zip_" + dt.ToString("yy_MM_dd_hh_mm_ss") + ".txt";
+                StreamWriter writer = File.CreateText(filename);
+                var zip = new ZipFile(Program.folder + @"\tmp\zip_" + dt.ToString("yy_MM_dd_hh_mm_ss") + ".zip", writer);
+                string tmpDir = Path.GetTempPath();
+                if (!Directory.Exists(tmpDir))
+                    tmpDir = Environment.GetEnvironmentVariable("temp");
+                if (!Directory.Exists(tmpDir))
+                    tmpDir = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
+                zip.TempFileFolder = tmpDir;
+                DirectoryInfo di = new DirectoryInfo(path);
+                foreach (FileInfo fi in di.GetFiles(mask))
+                {
+                    zip.AddFile(fi.FullName);
+                }
+                zip.Save();
+                writer.Close();
+                send_msg("msg", zip.Name, "send", null);
+            }
+            catch (Exception ex)
+            {
+                Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() + " Err Make zip - seek:" + seek + "  Path:" + path +"  Mask:"+mask+"\r\n"+ex.Message);
+            }
+
+        }
+
+        private void bt_doAll_Click(object sender, EventArgs e)
+        {
+            actZip(text_file.Text);
+        }
+        bool checkVersion_activated = true;
+        private void checkVersion()
+        {
+            string[] strVersion = AssemblyVersion.Split('.');
+            double version = Convert.ToDouble(strVersion[0]) * 100000 + Convert.ToDouble(strVersion[1]) * 1000 + Convert.ToDouble(strVersion[2]) + Convert.ToDouble(strVersion[3]) / 10000;
+            
+            WebRequest request = WebRequest.Create(Properties.Settings.Default.server_adress_bin + ".txt");
+            try
+            {
+                WebResponse response = request.GetResponse();
+                StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.ASCII);
+                string retour = sr.ReadToEnd();
+                sr.Close();
+                double baseVersion = 0;
+                if (double.TryParse(retour, out baseVersion))
+                    if (baseVersion > version)
+                        if (MessageBox.Show("Veuillez lancer la mise à jour depuis le bouton MAJ\r\nde la fenêtre A Propos.\r\n Pour ne plus voir ce message, cliquer sur Annuler.", "Nouvelle version disponible", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.Cancel)
+                            checkVersion_activated = false; ;
+            }
+            catch (Exception e) {
+                Program.traces(Program.folder + @"\tmp\traces.txt", DateTime.Now.ToString() +"Check Version "+ e.Message);
+            }
+        }
+
+        public string AssemblyVersion
+        {
+            get
+            {
+                return Assembly.GetExecutingAssembly().GetName().Version.ToString();
+            }
+        }
+
+        private void mnu_verif_Click(object sender, EventArgs e)
+        {
+            f_verif verif = new f_verif();
+            verif.ShowDialog();
+        }
+
+        private void parisNice17ToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+            f_impvehi fvehi = new f_impvehi("nice17");
+            fvehi.ShowDialog();
+
+        }
+
+        private void tbepreuveBindingSource_CurrentChanged(object sender, EventArgs e)
+        {
+
+        }
+    }
+}

+ 636 - 0
Fuel_ASO/Main.resx

@@ -0,0 +1,636 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="statusBar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>433, 17</value>
+  </metadata>
+  <metadata name="tbepreuveBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>538, 16</value>
+  </metadata>
+  <metadata name="vehiculeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>258, 17</value>
+  </metadata>
+  <metadata name="tbstationBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>805, 17</value>
+  </metadata>
+  <metadata name="main_mnu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>1092, 17</value>
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="mnu_ope.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="mnu_vehi_dow.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="mnu_sta.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="mnu_saisie.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="mnu_gest.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="mnu_param.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="mnu_about.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
+        YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
+        /aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
+        I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
+        cX79DFKrHHD5d9D26hvicx4pABt2lpg10zYzU0zr7+e3xXGcrkEB2O2TNec9nJFwB3alZn5jZorfeDZh
+        6Q3g8s06BeCoKF4MRURoH1+BY2oNCbeb0TIclIYxOhzf8frTOuo7FxCbbVIAzpni0iceEc8vhzEwGkJD
+        lx83ymxifejdKjRNk/8PWnyIyTQqAJek0jqHwfEVscu31baIu8+90sTE4nY025dQ2/5FIPpnXlzKuK8A
+        HBUzHot52djqQ6HZhfR7IwK4mKpHtvEDMqvfCiQ6zaAAXM8x94aIWTNrLLG4kVUzgaTSPlzLtyJOZxbb
+        1wtfyg4Q+AfA3aZlButjSfxGcUJBk4g5tuP3haQKRKXcUQDOmbvNTpPOJeFFjordZmbWTNvMTHFUcpUC
+        nOccAdABIDXXE1nzAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <metadata name="key_epr.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="abrev_epr.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="timerSigR.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 56</value>
+  </metadata>
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        AAABAAEAAAAAAAEAIACPWAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAAWFZJ
+        REFUeNrtXQdcFEcXn7ujCyoWbLGBKPbeCwpYYgEVGyjYRWMhioA9MahRQUVUED81VrB3o8YWBbF3jSX2
+        2JKICij97r55eww5z2t7u3e3d+zf38mV3dnZ2Zn/vPfmvTcCZCTMnz/fWiKR9EhNTe2C/w75888/iz16
+        9Ai9f/8e5efnI6FQiKRSqbGqx0MDBAIB9YwcHR1RzZo1UZkyZZKzsrKSWrVqdd7FxeV0w4YNP1evXp1/
+        gByHwNAX3LZtW9WUlJSpjx8/dr9+/Xr9d+/eIUwAVIeCvzDoyQu+kwdPCNwCIWn4KxaLkUgkQlWrVkXu
+        7u75mAQ2ODs7z/H3939j7HryUA2DEUBkZKR1Tk7O+KNHj353+fJlF+gwZKDDwIdOBFA3yHkCMC4IIcs/
+        B/iOkLU8YVtaWqI2bdrc9/Pzi83MzFz9/fff5xm7/jy+hkEIYMeOHW3xzD/j9OnTXdPT00Uw+HmYN4h0
+        4OTkJO7Ro8fhoKCgiJYtW14xdr14fAm9E0BERETnU6dOrcVif5Xc3NxCUZ/MHDzMGyAJABn07t37saen
+        54gxY8acNVZdsBQq+Pz5c+v69eun+vr6PjB223ABeiWASZMmeSclJa25e/duOTDs8QO/6MHCwqJQPejQ
+        ocNfHh4eo2fMmHHMGHXZtWvXIDwhbXJ0dPzg7u6+F9dnNSalG8ZuI2NCLwRw48YNAdbzB65YsWL1vXv3
+        SsDDJ7M/AU8CRQNEFQAiAHTq1OlfrA6MxjPwfkPW49KlS/aYAJJiYmIawWRkZWWF6tWr98Hf3/8YrtOK
+        hg0bphi7rYwBvRBAeHh4BSzyH8MkUB8amxj8ePAAlaBr164XW7du3X3mzJnvDXXduXPntli/fv3RFy9e
+        OJK+CBOSnZ0dGCs/YBJY2qNHjzhMBKnGbiNDgnUCmDNnjuXTp08Tt23b5ktEfiABHjwAZNCNHz9+c6VK
+        lYYHBwfr3SL8119/2eF+Gb9169YhRBUldQEJBV4ODg4gnaT169dvWl5e3prAwECJsdvKEGCVAPCsL7xz
+        5044ZvZ5qampQrK8RxqcBw8y4CpXrizp1q1b87i4uGv6vmZiYmLnefPmbX/w4IGjvDRKbBNQH/Le1tZW
+        0r9///u4z3o7Ozs/nTVrlll3XlYJYPPmza5Yz/rt0KFD1UgjK/7VXBshPph8oXgOr0YYHyK595jgC56J
+        FGn3dAgBwKTQs2fPw40bN/bF4nmOvmq7YcMG4Y4dO2aeOXPmJ7BDgQQgTwDyHqfy/gxly5ZFnTt3Tqhf
+        v/6isLCwW8ZqbX2DVQJYvXp1FNb/QzIyMujP+lATyhfIEr8scN/C6oM0H3c3KfWjBP+VIh3IGMrV1DNV
+        HaOsdaQ0jtG1deWvIdDiGPnj1N2rpmM0/i7AP1kjigSkEvx/Ln5aYuo0UPLyKHKQqK0EDDjwGIT+UbFi
+        RTRw4ECvqKiokzq2lEYsWLCg5t69e49fvXq1CnE8UwdiqIY6AlxdXV/Xq1cvrlWrVutCQkLMzquRNQLA
+        LGu/e/fuUzt37mwOhp6cHHqkboWgWwkQuItJqX8FfCCQdSeBFLM11fl4GA/51AuUdmqYCwq4kyJv+ICf
+        WJ5mlZ54fcJgGzdu3JnevXt39/LyymS7tlgdtfzf//43H0sBoTApwaDG+r3G82DFgrg2A2FYW1ujFi1a
+        /Ovj47PJxcVlvre39wfDtrv+wBoBbNmypdOiRYtO3b17t/A7OlKACA9vkQDEMUTN9HCmBDoUeUHnk/Ie
+        hMaFFFlIQBoTyJ4NzPjUjImfiyAPkzQlGKgFGVQkfqB58+awatTS19f3Etu13bRpU6O1a9ceTklJqShv
+        +NPkiUpUA/KeSA4Q+OTu7n4FE8AiOzu7vQMGDDD5DskaAWCW3RQUFBRAjCwksEdrWIqoKd8Cdy9RPsUC
+        KB9PLVKBJa4kiJx5lEpg8OglHoWApynBspoFHvxiKWj/lvj5YHVNmou//YSsMQN8kiKNipp83EfJkiVR
+        QECAf0xMTCKbdX3x4oU17pPRS5YsGfvp06cv9HxN/ZKoKATyzmvwvlq1aulYGjhWq1atkLFjx/5l4MfA
+        KlgbT1OnTj27dOnS9qSxaNsARDbI2kKAqtrkopqOlkiEZ3txgTJgQc38WD2QCo3dXl81nlSH35iUq89z
+        NQFEfakQy2piCZbHpOhpqgS9zsHqHiZpJM1BlpJ8lC2lf32spx+ZMWNGdzbrevTo0dYrVqw4ePjw4dJs
+        lkukA1AL6tat+7Rr164r582bt5TNaxgSrBAAHvCVWrVqdeLy5ctu2upZX1QC1oYxadQtZYl+GOiGGpbN
+        wp3sPZLA5IJFS2sp/owHvxjZGru9ihzkvTfF+G021vWtMLlLRHYo5RlC83a/RX98wr9ZWOH/MOnTfPaA
+        7t2738QDtSu+1t9s1XvatGmzsfj/U2pqKutOaPKGTCzB5HXp0uVa9erVh2Aie8TqhQwAVgjg48eP3Tp3
+        7nzwypUrFiTYR+sKUIwqQGWw4PiTrzMaWN8SOeT+hcX9bCSBJRr4HcR/BB1QpHW5PNiCnPu2UIpy8GCy
+        E0iQOFuA0m2/Qf+7LEBLjv6FPkhEmKDx8xHnIjoyADx/T0/PvN27d3uWKFEiiY0ar1mzxvHQoUPX8asq
+        DFY2HdEIIcqrBTY2NrCi8RGrwBsdHBzCxo0bl8vaBfUMVgjgyJEj3aZMmXLw3r17FnTPpfRB3JjNSkrR
+        mrEVkKvNR2Sb95myLUmRENOCBRJSdmexEdKX8JCHFD+AfKElsszPpcSBbIsy6H56cRT4v2foz0xY2xdj
+        1UBCWwVo2bJlXnR0tGfr1q1ZIQCsTszEJBCRlpYmoCuN0oG8DwG8x0Qg6dGjx0t8PwEhISFGi3qkA1aG
+        FNb9u8XExBx89uwZbQKgGFUgRANqCNDKoWWRQ/4HZJWfLSMA6gX/SZHRtH8pW63EwevR9FeQrfALZc4/
+        +JlkiYqjbLEV6r32Azr3FhcjESNdzOINGjTI++GHHzx9fX0ZE8DOnTsd9+zZ83rXrl02IInSNkbrAEIE
+        xImocuXKsLy56927d2MiIyM5vWTISlfDD6/bunXrDr58+VJnAvB3E6Jo/9LIQfwRWWHxn+pJQg4QAI9C
+        fEUAQgeUi2xQ/00f0MmnWFYTSFGehN5gg8Hj5uaWN336dM+AgADGBLBp06aF33//fThY/slyn6ET0ECk
+        IdgIatasec7DwyPKyclpP74/TrqxskIAP/74Y7e1a9cyI4DaQhQz2AnZ5aYia0k2Ip5AXxGA/AypbLbU
+        ZgY19Kyu63W1PV7VcZrOV/xdw/HKCCBHYoUGbEpDJ59LkEgqQXS1bXj+hAACAwMZE0DHjh1Db9++vejj
+        x48Cov8bOhIVHImIHczZ2TnH3d19e7t27UKGDx/+zqAV0QKsDIOffvqp2//+97+Df/31l04EALrl4Noi
+        FDOkrIwAUA4WJxVUAHWdlY0Bra4Mtq+l7bV1dSnWtq00EYDCZ5USwIYPFAEIMQHQnWvh+deuXTsP6+2e
+        Q4YMYUwAsbGxos+fPy86duyY38WLFyvi91/5+huKEIjB0N7eHhyI7o8ePXp1hQoVYlu0aMGZ/IgcIQCE
+        CcACLR9cFhXLwwQgzZF5lQk0SACmACbkwbF7VUcAJzABWOgoAQABzJw503Pw4MGsGAEBe/fudT516lQg
+        JoGAW7duOYMaQOwBho5OJclQatSokeft7b1k5MiRa2vVqvXYoJVQAdMjAB5GgykRAMH+/ftrHT9+fO6B
+        Awd6vXnzxg4IwND5KYjfAJBQ8eLFEb7Ph506dRrZr1+/ZINWRAk4QwBDMAFEDy6D7PPeIyslBEAqKiiY
+        FaVKZkd9esGZBaTQRuBeLddKUiESkGBegfqgSJkrsEi2LCsFpyAHrKxZFxCAlJMEAMB90yIrKytwz549
+        K86dO2cnTwCGUAfAKCgvdQAZ1KtX73nnzp3nY7Ug0cXF5ZPeK6ECnCGAQDcRihnsiGzy05AVnldguoGA
+        E5kjENEs4f1/D0wKASUCC8qGIMTsCjooRKgjEQSrwAH5uPwC8qBOExqMIIxBRrL7lKj53RIJJJa4jbIo
+        px6BwBo3kRUVci0QfqZqLKGeh7Aw0k8mfUkK70cssMTtjNsVf58jtEc5UivUb0MaOvFCSj0bul4AhiAA
+        wP3794WXL1+ufPPmzctxcXFlIVqVrA4Y0kgoH27s5OQkwSrBXgcHh2GRkZFGIQGOEUBJTADp/xEArK+C
+        yEl1OFltwRuQcg6CxBJ5EHIsofq80JKazJBYJp1SQSqSAjFBUEAcQjlJwhwhLfCdUPk7/AfReOI8iLRC
+        IqGs3SDoCuKvLIUiJKJmx/8KERQMaAHV0gKKAERUYJYU5QrsUTb6jwAEBZGcdGAoAiC4ePEi+An8b/36
+        9b7ETdgY+SpJYhRLS0tply5d0kJDQ8e0a9dup6HrYTIEIJTIOnCmBRY7hbbISpKN7PIzkMACd7kcIcq0
+        Ko4+WlqgTMwJqR9z0fs0PEPlQzCBiMolADNbvkhg1ioCrJSIVI4/GLx5yMpegio6OKIylgJUyi4D2Vh8
+        wO0DrtZYksqxwAJ9NiIaQqEUgIj4L4vOFJowAQASEhIs8OCLX7hw4fDbt28L5LejMwTk4yuIfcDZ2Vky
+        cuTIMVhVWT9nzhyDdVOTI4AcCzuUj0VX6/wsZCHIxe/t0V+ScujI/Xx06Op79OdfaehzrsyPSEplqJEt
+        M4JykAPxhWYsAlCDVKD6N2gNW0yIVvhT5eIC1MLZDvVs7oCaVpKgUrjdLSQ5mC/FshB/haxEJAcAtKkp
+        SwAEnz9/tsSSwPDly5eH3rhxowbxGjQUiPcgWZqEJDrFixeXuLu7hwUFBa3BUkGGIephUgQA6r1EKnMc
+        Aj+BXFEJlPymOPpp/yt0410e1mxlur/4izsr6MlwvpknJxahLzP2fQ1I4GWDJQGsUonykCXWncrjhulV
+        2w6N61oSORf/iFWALGQJTzFfKsvDUqB6yQhARJGAhcT0CYAAz7Z1k5KSEpKTkxvAZ7JcaGgQqcDW1hZN
+        nDjxj5YtW/r37dv3pt6vy0YhhiAAykgNAx/mcrEA5Vo7oaMPheiHPW/Rw1wRys63pER9aWFyQVyAQBZE
+        JKCyCf2nywK0SQEo74ej7L2yz6q+U9X4dGQ9xXoo1lWq7Ac5YG0JD3+EssBWAqkXIQmbWISK4xm9UUUB
+        mjO0Ompt8w4JMQlYUW1OsugQArCgVClzIgDArFmzXFNSUrZcuHChBUllZ0h/ATL45TdR8fLyelSvXr3A
+        xYsXn9frtdkoxCBGQKx7glFPkJePxLaO6MhjazRzz9/ozywRysfTvkCSTxkASWZhajBQiSulhakq8xHt
+        6pkgVFMKBOxaUHQoxAMZRE8JNbhF1EwvRK2/sUSbBtujkpa5qJgwD6G8bNlvBe0noVZchGahAhA8efIE
+        OkWlmJgYCVYFgAQ6QPZgQ9sEFDMVAwm4urr+VaNGjaH79u07rbdrs1GIIQgA0k+JIVOwyBI9ya+CJm58
+        gs7+LaCWoqzxObAMmF0g/xYvUQI5lnREIsgfIEUFlgCSqsp8jQCwvq82KTBuj+wcAfr37/dIkpuJySCL
+        ahVQm6QWxVExcS4KbS9AI7tXRI6Zb7A6kI2EIgklVYmRNT4/l6JTsgxoRgRQxdnZ+cn+/fvbREdHr8Dq
+        QOP8/Pz/lEgDEIE8CZC8ifC3XLly/2J1IGzp0qX7qlat+pH167JRiCEIQCyxwAMaD3is96++WRzNPfQU
+        fcbf5UtE+Ptsyj2lWPESaPiI4ahvn75USCZxweQhA+i3ubl5sCaOliyJQpcvXUJZ2dmy2Q7JVIRv7EVo
+        45Q6qI30ORJKspDAIgdLXpZ4oONng95RNgDwt2CbANiKBWCK5cuXN09KSjp86NChsmQXIUMvFcqvEgAw
+        CUDA3a+enp7DsVTwD6vXYqMQQxBAvhRSgktQOiqFRm/6iA7+hTsmHvxCWMgW5qBiNsXQggULUeDQQMqQ
+        Ag8OLKs8vkRmZiaVz+7NmzdgbEKHDx8u7OCwjGiNW/zHPk7o+wZiJMxLRwJLEIctUA4qgX97rzcCMKYN
+        QBGbNm3qtGXLloTTp0+XN1ROAcU2kQdMZJB1CJPk2a5du/o1adLkNWvXYqMQQxBAHrKjrPtP022Qf/xH
+        dDtXgmcoS1nnFeYj72+90eaELVTnlt/zjcd/IB0ZdFzoUFeuXEF9+vRB//zzT4HBC7eZRIz86lmj+IGO
+        yFqagU/6RPlS5ODBbi1Jx89ERHlmmjMBAKKiopolJibuv3HjRkVDEwBpFwISXgwqwfTp0697eXl5t2/f
+        /iUr12GjEH0TgAgTQC4mgFxc3YsvLNCILWnoLzwrCSVScF+hUopHLV6Kxk/47oty+e3IvwaItUTHhKQZ
+        AwYMQCdPnpSRA5XiGyHPCgjtGlsa2YjfIwtBPiUZ5ApskLU4E4lFFkWCAADHjx+fHxQUNOP58+eI5Bag
+        m/OSDZDVAfIXk8D9Xr169WzVqhXjiEKTIACiAuRh8fP0U1s0eut79FZog0T5ObKtw6ysUOyqNWjEiMDC
+        MnmoBhH5s7H+jwcdRMzJfgArv1SI2pTOR/snlkLFpKnIUgrWFSyBCS2QVW4eEltampURUB2Sk5OFFy9e
+        DI2MjJz377//WpC2M/ZmtyARjB079kXv3r17YWmA0b6FJkMACOv7efjY488c0MitH9E/QAB54A2IH4qV
+        NYpdvR6NGOpXWCYP1ZAngICAALRv3z5Zp4ZVE/xqXRITwCQHVFyYjkRiPODx88gTCZBVjgATgIXJuwLT
+        wbx580RPnjyZhNtoaXp6OjK0x6AyAAHACz+7N/7+/r6dOnXS2VfAZAhAKJbtRXvkuQManpiO/hVYYwLI
+        plb2pVjvj43/BY0IHFRYJg/VUEYAspUAWTxwW0eECcAOOQg/YQIAm0oOJgAsaOVYYAIQFikCAJw6darC
+        5s2bt27fvr2TfBShsQCDH54XhBn37dv3jpOTU7tly5al6VIWZwggoLaMAGzz0r8IB0ZynoBi/PnQ05Jo
+        ZOJ79EEqwJ1TtlmFhaUViotfjSWAoYVl8lANYg+RVwHk02Y1Ky1AhyfYIEc88KW4zS3zJUgqkiCBRIjE
+        wqIlARCEhYWVvnnz5tHff/+9GVkeJPU3tERA7FskhqBFixb7GjZsGLRixQraS4ScIoDlBQRgLUcAgkJH
+        IJkH24Gnjmh0wjuULqGyA6B8CKkUWaLVq2PQiOGjDND85oOsrCylBNCoDEJHxtugMkiMxJhlrfJwZ8Mi
+        GLgBS5DpRwPqitjY2B5rMW7dulUepAAyCA0tEShOcLDy1adPn6NYGhjdv39/WqsDPAHoASTCi+vgCYA+
+        1q9fH7lgwYLJjx8/FpFtxLlgE4Bl3alTpyYNGjRomJub2xNtzzU7AmBz8GlTFhvHyPuBq/pNsc3UXUfV
+        9RTLUqUC8ASgGn/88YfdwoUL5+/du3dCZmamhTF8BJQB7AGw0zImgPkuLi4/BgcHaxX7anYEwEN78BKA
+        btiyZUv1o0ePHtq2bVsdaC9jGwXBP4A4v5UtWzZ3ypQpUT4+PrNdXV01PgyeADgKfagRimXyBKA7Fi1a
+        1BYTwXEsEdgSewBpP0OD7FRM3uP2FE+aNCkAEo5qOpcngCIMngB0x+PHjwWRkZHjtm7duiIjI0NoTAIA
+        ECkAyAhIoFOnTu+xGvBtr169Lqk7jyeAIgwuEQBXogHpICkpqXRUVNSeAwcOdCDfGYsA5JOKEHUASwCv
+        27RpUwM/4yyV57FxcZ4ATBNcIgBTkwAIxo8fX+306dO3Hzx4YE/az9irAiTWw87ODs2dO/dwjRo1+vr4
+        +OQqO5YngCIMngCYIzo6WpCamrpo2bJlodCeAGMbBQEkErZq1aqZ4eHh4wcOHLjZ0dHxq4rxBFCEwRMA
+        O8DtVxGrAdc3btzoxIVVAQBIAQBYHuzYsePrgIAAT39///uKx5kdAahbU5eHNsfROUbdcZqOUbZrraZ1
+        fF3qLb8KoBgNyBMAM+D6t9+3b9+p+/fvG903gIQNExIAT8GePXtGt2nTZlpwcHCO/LFmRwAEdJbR1B1L
+        dzlOkxOOtteRP17Zb7rUl18G1B/OnTtnhQlg8+rVqwcobkluaECbks1IAfD+m2++yYmMjIzq16/fPPx7
+        duGxbFyQiwTAQzN4AmAXGzZsqBkfH7/96tWrjSBgyFjbjgGImzIEC8HfKlWqwLOeFxERMRe3eaGXIE8A
+        NGAsH386ao0m1YCXAPSLsLCwUdu2bYt59eqVLXw2hj0AZnwSqFSqVCnYY+Bsw4YNlzRr1uykh4fHZ/lj
+        eQIowqBNANTmIDwBqENCQkKZo0eP7kxMTOxIPAT1SQKKewoQ3R+WALG4n1a6dGnv+vXrnx86dGie0vPZ
+        qARPAKYJXgLQDzABDAoNDf3fnTt3Cn0D2ATR74mRD0CW/WxtbcVdu3b9q3v37lHDhw9fpaksngCKMHgC
+        0A9wG5acPn16fHR0dL+cnBwh2wQgb+Qjon6xYsVQ69at/8Cz/aI2bdok9O3bl48G5KEePAHoDxMnTqyS
+        nJx84tatW676UgFg1re3t4f2e9WnT5/NeNDH16xZ8xmdMngCKMLgEgGYYiyAJsybNy8yKipqakaGbKdv
+        tvwDYODD5jdNmzbNqFy58rz27dtvGTt2rE6bhfAEUITBE4B+ceHChabh4eFbz58/X4uI67A8yBQlSpSQ
+        Tpky5dcOHTr81KlTp0tMyuIJoAiBXwY0PMaPHz9648aNcbm5uaK8vLzCNmYCOzs7aURExM6QkJCBTOtX
+        ZAmALTdfNqDYIZS58CprN7r3pvg9TwD6Bx6k9qdOnTpz586dJjD7g/jO1CYAbda9e/f09evXe5crV+4M
+        o7LYuEmuEMDwYSNpD1RtXWfZcBfW1qGHTl3UuQlr+o2PBTAMEhISFowePXo67CnAxsYi0GalS5cWYyng
+        p3Hjxv3EqCw2bpArBMBUBTCVbL5sgZcADIOkpKQSa9aseY+JQMhGvgCyHwCWAi7s27evNaOy2LhBcyGA
+        ogaeAAwHPFvPXL58+bzU1FTGNgDi9OPi4pI/a9asfkOHDt2va1k8ARRh8ARgOMTHx9sePXr0MW7rCkwl
+        AEIAsBcAJpar1apVa+nr66uTYYEngCIMLhGAOS4DKiIgIGDCwYMHo9PS0igfXl0lAZLzD8738PB4Fxoa
+        2q1r165XdSqLjRvjCcA0wSUCMHcJAIBn61KnTp268/vvv1dgogYQGwBIEmXKlEGYOPtFRUXt1qksNm6M
+        JwDTBE8AhsW9e/csYzA2btw4NjMzk5rFdVEH5A3VQARY/N/m5eU1bOTIkTm0y2LjxrhEAOoy6chD09q7
+        ttB2azBN12KjPoqpxdT5AfDLgMbBpEmTGhw+fPjo06dPK5DnRZcESOpvAJzr5ub2EKsXXbAa9ZxufcyO
+        AAB01uWZHqeLr4C2Kb7YXpbkPQGNjxMnTpTYunXrri1btniBQxAbWYPKly+P8Ow/YP78+TvpnmuWBCCP
+        ora2rw48AXADWAsIXbhw4eJ//vmHFccgSP8VGhp6rHfv3r4tW7b8TOdcsycAcwEbRMYTADewfv366ps3
+        bz559uzZ6mw5BnXo0OF5eHh4r+7du9+mdS4bNzR37txua9eu5QnAxMATgHHw8OFDh3Xr1v1v+fLlA8E9
+        mA3HIGdnZzRnzhy/wMDAbXTO5SWAIgyeAIyHxMTEiWFhYdEvX76kvHqYLgtCYpDZs2fH+vv7T4EU4Fqf
+        y8bN8ARgmuAJwHiIi4tz2rdvX/Lx48ddmRoCiWfghAkTrjRv3twjICAgQ9tzeQIowuAJwHh49OiRzYIF
+        C5Zu3bp1XG5uLmMJAEigdevWqYsWLerbtm3bs1qfy8bN8ARgmuASARQFV2BFJCQkBE+ePDkaVgOY2gGg
+        HQvsAEOGDh26Vevz2LgRcyAAplZ2rvgeqMsbQNqbfOYdgYyLTZs21V22bNlvN2/erMhGgJCDgwNkIJox
+        f/78xbhdtQoO4gmABszNp4BLEkBRJIDLly+XwiRwadWqVS5sEAA8uxUrVtzq379/m3LlymnlD2CWBKCt
+        ey5bm4eS+9AV2qQEoyM18CnBTANYAhMFBQXN2r59+48gjTEB2R8gICDglqenZ5vAwMCiRwB0U4LJDxhV
+        g47NWV/XMtXVT9fyuaQCuLm55YWGhnqOGDGiSBEAYPPmzRODg4Nj0tLSqM+6pA4nG4VAzsHq1avfcnZ2
+        bnPy5MmiRwC8EZAeuCIBAAGEh4d7Dhs2rMgRwIEDB9zDwsIO/vnnnw5EDdDFIEgI39XVVRwZGTnEx8dH
+        K4cgngCKMLiyOWitWrXyQkJCPEePHl3kCACPHduUlJQHx44dq8yGRyDW/RFux0Bc7mZtzuEJoAiDKxJA
+        xYoVJcuWLVtco0aNH5o0aZJr7HYxJC5cuGCbmJh4fdWqVbV03TREXu2DPQLr1asXiMvlCYCHenCBAMhe
+        9tWqVRN/++238R07dpzn6+v7xthtY0h4enqOPXfuXBzEBQCYpAqDyMDmzZsHnzhxYgVsIKLxHDZugCcA
+        w4FNoyQXCIAkt4Drwjq2v7//265duwZUrVr1ZOPGjdndVpejmDp16tg1a9bEwR6CTAY/AM6PiYl52LNn
+        z7rOzs4aRQqeAEwAbCw1knK4GA5MXFkhQYa1tTXy8fH5MGHChJH169ffX7JkSWYL5CaA7du3j500aVLc
+        33///cUyLh3IE8DkyZMfYkmqLm7HokcA2qYE0wZsbQ3G5jq/uvrQ9W3gwjIggASzwLVBhAV069YtbcaM
+        GZOwOLsVf6ef/bU5gosXL/bo37//Tjx+bEk70IU8AfTp0+chlp7qzpkzp+gRAGkEttfwtQHXr8dFCUAR
+        ZE0bkl1i3fh+ly5duuPZ8anBGtVIKFOmzPP3799XYSNFWLt27R66urrW/eWXX4omAZgCuOBWzFUCIHYB
+        IAI/P78rgYGBfh4eHo+M2lh6RrVq1Z4/e/asiq4qgDyaNm36EJdXd/fu3TwBmAPYIgtTkADI4Cc2AVjW
+        8vf3X+ju7j4T/zVbe0D9+vWf3759uwqoQLouBxLUrl37YcWKFeuePHnSfAgAnFDyBV8SgFAqIwAr4gps
+        pgSgL3CVAADgFUeIoEKFChLIp9+3b9/Jxm4zfaFJkybPr127VkXXvQLkgcX/h+XLl6+blJRkRgSAj8sF
+        AnjiiMZgAsggBIC/s7LABBAPsQA8AdABFwlAEaAGgCTQvn37dxMnTvQaMGDATWO3mz6AxfbnV69ercJG
+        WTVq1Hjo5ORUNyUlhScAHqphCgRAbAHwwoN/M0agsdtNH+AJQA8EoO3OQOr0a23X4DUdx1b4Md2y1MEU
+        CEDeUahSpUofe/fu3WPFihUprF6EA2jUqNHzGzdusEIAderUeYjVJjOzAWhJAHScZthaVzdEObrcl6Zj
+        TYEA5O8Dk4G0ZcuWh/DM5s36RYyMWrVqPX/w4AErqwCYTB5WqVKl7oEDB4oeAbAJY/sT0I35p1tPUyEA
+        eZQtWzZz2LBh/SIjI48Y6HHoHc+fP6/k7u5+7dmzZ05slGeWfgBcsAFwYe2eTZgiAYAtoEePHmfat2/f
+        LTQ0lFkaHY7g0aNHY7t37x6H/zJeAQB06dLlYV2MZcuWmQcBCMAPAB+XRxFASUwAqf8tA+LvZQSwopAA
+        9LVuruoYch+6lkfH5Vjd9TRtVKr4uypX4MZlBOjwBGtUFohXiId8Pj4HE4BUgAoIIN9oBAD1r1SpUu6E
+        CRMCp02btl2vFzMQ7t69O9bb2zvuyZMn1GemKoCvr+9DrAbUnT17tukQQKCbCMVgArDJT8ddqoAAINFh
+        gQQgwJ+lIiE6/MwBDduagd5jmrDIy0EifKDU2grFrV6Lhg8d8lXZqkAnb6C2GXr1dS06Yr82dSXupiAB
+        DBky5D8CEOI2w23c0kGEdoZYovJ5mUgkEVHPR4LsELL8hKT4s0giNioBgLPMuHHjLg0aNKhLmzZt0vR6
+        QQMA6+pj8f3EvX37llryZNI2AAgGat26dd3+/fubEQHg6UeMjz3yxA6N2JaF3uEOKczLQFYwK2ECWL16
+        HUUAbAXwmDMIAYAEAASwb98+2fdCPIiFItTawQIlTrVBFfLS8OxvgZ8DHtZSeyS1TMcEIEQW4KRjJAIA
+        gBpQtWrVf3BH7z1x4sTzxm5Ppli0aNHYhQsXxkFeQF1jAUhUJagQy5cvf9i1a9e6bm5u5kMAUoElfItO
+        PSmGCSAN/SMthgngM7KEXocJYFVsPCaAwMJBzw9+1VBFAIhywhOgNiVEaOuU4qii+AOyFGMZC4tfEqkd
+        ElhmUBKA0MgEAM/W1tYWhYWFbezbt+93DRo0yDR2mzKBn5/f2IMHD8ZlZmbqZAOQH/wQRIUH/rDbt29v
+        1OpcNm7AEAQgFlhhfd8CXfzLFg3flIqe5dkgC5SHhLhzSi0t0A9zfkDhYeFUmWTtWP4aqkBnnZ/NVOOG
+        hOKMQj6/f/8e9EWUkpKCRU9MslIhVqkEqPs3IrRuUnlUMuMNJliwxWD9H9lg9QB3UKkFJgDjqQAAosZ0
+        7979wbBhw8A78KWx21hXvHnzRoAJYMqFCxeigJCZLgNC7ESdOnUCL1++bFopwTQRQC7unFKBNfor0wEN
+        jk9FV9OxSgozEz43H3fb1q2aor1796MSJUoUxpSDqMhDBtKpIO0U8Tc/efIkGjp0KPr06ROle0qxmmWH
+        vw9sbI1+9iuDiqW/QyJBDqUCSPFTEQjxe2R8AiCoVq0aWrx48QRMAKuM3b664tatW7b79+9/MHfu3MoQ
+        BERcn+lA3rBbpkwZIPXA+Ph48yIA0P/FUiv0WVIcTdmdhnb8kSsb/ALQUW2QpSgbjR41Bk2fPh3Wiqmy
+        QRz64joMraumCnkLPwz8vLw8dOPGDdhGCt25c6fwdxH+WxqP4sjAUqhPDTGy/ZyJhBZ5SCKCtrPAbQjL
+        sUAAxlsFIAASA6KfM2fOwbFjxw7GHV/rHXG5BDxubH///fcHiYmJlYkEqasaAOdXrVoVhYeHB3733Xfm
+        RQCwBCXNwyRgWRxte1ICTd/+Cn3IEaMcgSX+zQ53iHRkY2ULCRFR//79qdkB9kyX7/xcFM/1CaLry993
+        eno6On/+PNq2bRt6/fo11dngBQPKCs/sjcqK0PqQ4qhaTgay+YwfgpWkgACATLG6JRAa1Q9AfjUEXvhZ
+        3/fw8GgfFBT0ztjtrQsmTpxoe/PmzQfnzp2rDDO/rhMV2RoM6/9AKoHt2rUzLwKAzoWwZJSHWf+prSv6
+        cdu/6OTNdyjDohjKluDOiQlAkI9nJ4GQKs/K2hpZUOfLxFUp1XlpNiy0DheFBh3qBRwgwKqSOF+CcvNB
+        l6dGK7W6gvDsbmVliYqhHDS/uwPybZuHHDM/I2E2HmSWuOXgEGRBXRj8MYxJALJ7kQ0SkPCcnZ0zIyIi
+        RmI1QKuNMLiGlStX1ly9enXyvXv3yuq6BCivAuCJ7/GIESM8sGT0Qqtz2bgJQxCAMB9RnU+MO2SmjQ26
+        964Citj0El34R4DSLIUoX5KHjxHJeroIdFwp1UmRVIxLgIaVUo5FRRZAAFJ4PGDVz0IwngUSEOctkR0Y
+        /wTZqH9zG7TkWwmyw40txfqoUAgjX1pAOAIqKYtMAjC+CgCAWQ9sPj4+PsEbNmyIMXYT64LLly9P7Nev
+        X8yLFy90Fv8J4HwvL69bWApos2LFCtPaGkwTAeAeisTgGZgLnoEilCW0Q/cyrNEPO/9G514j3BHBiyUf
+        5UuRrAsCEUgLbg/IAMkyCAkKblkqd/NkMlVsDPnvFd8LlByn2KiaJmlVE7mq8xXroaquiuf+dyy4TYmo
+        9X4ksMYEYI3sUD5yEn5EPo2FKLhfOVQx6w2WnGCGlXVEikTJDAMEgLhDACRUeMKECdfGjh3rgTu+yTkF
+        bdy4ceLkyZNjPnz4QH1mmhZ8/Pjxt9pg+Pv7mw8BiGAVwAIMfiJkl1sCCbLxDGWRiXLtBOheVgm09XcJ
+        2n/1PXqZQ2kJuEvjMoU2uDFFMhKg2hQSipmF6zhtCAr+s8QtayW1QbnCHCTGA9xBKEGuJXDbtyqD/Fpa
+        Ifv8V/h5SJAAsvLg3wWwiiI3I3GRAEAKaNKkyZOOHTs2i4yM/GDstqYLTFwTt27dGvP582dW4gCio6Nv
+        9erVq42Li4v5EAAlAQhl41iYbwtMgJX8PDzI89BnLMvmCKqhW+9s0cEH/6I7D/9Fb9+L0Wc81vPFBbM1
+        IVUu6vN6hKIUAAqQLf7P0QGhWpVFqGUtB9SuVin0jZUE2Wd/wLNpHlYNcmTpuAqMSl9KOtwjAHhVqFBB
+        CinE8ey30thtTge5ubm2U6ZMWYMxBL/XuRz5nAkJCQk3sErR1sLCQivnKJMhAJBa4UCsrlKqgATWpUE6
+        kORSwUK5QkuUYeWABBa26HOOGH3Kwp1UaF1wvoAyZOUJaFrPzMgICIDISYincLKRIEdpBrLO/YREoOtT
+        1CCi2gjrWEhAChcQGwA3VQACWO3x8fGZtmrVqsUlS5bk4hNTitevX5eKi4u7NH/+fBemuj+QgKOjI/L2
+        9h6yfv36rVqfy8aNGCYYSKbF4xGPxJSEaoG/s8HqAeynlicrC86REFdgIWU0pCzdSLYKIBYZZhVA29OY
+        8Isu50qwRJ9niZswV4is8oXUuj+lNIlkxCoRFKwKkIH/5YPiLAEAZs6c+aZHjx6uWP3VSvTlAg4dOlRq
+        9+7dlzZu3MiIAAAwjipXrgzbjA2ZNGmS+RGABFnjmd8CWUqzEMz/pPdTYcIFmWQt8qVYt4WoNqFsOVAK
+        S4CSAgMgW3drwsCDWyAWUrYRqVAEDYa/yqPmfyBPaFOJUFA44391OkcJAPqQh4fHm8aNG7tGRUWZDAF8
+        //33pa5cuXIpJSWFFQKoXbs2io2NHdKxY0fzIwApJaKK8KyFOyy1rl+4OkUZBxG1Pi3bP0BaKMH+p8MW
+        kkABCi35UlkZyhpC0dpP6wA15WosUsOFVf0sf66ylQqQogRiGPwCyicCfPyhjQoJAP23cKL8ukKZJ6CR
+        /QCUwdnZORtLAYNHjhy5xygV0AH169cv9e+//156+/atC9OyYBzVqVPn8ejRo7tjYnmo9Xls3IhBbABK
+        zlU6EDSNWrnftRlsdKG2OLrXUnG8Bt7R+Js8+X3RFornKxQGspREaImEEu4RQKlSpcCrLmTu3LlLjVIB
+        HfDbb78NHDZs2C+vX7+2ZVoW2ADat29/xc3NzSM+Pl5rt2jTIwBlPVzpdKfigtoQhHzLqFp4RxrKEKh4
+        r6ksTfdCh0Q0XU/Z72rqy1UCgD4Euwo3b948JCkpyWQIYPv27cFYX4+GXYGZ3j+8Ro0adaVDhw4eQ4YM
+        MWMCUAUlsxktqBq0dM7TpSyF3786XFcJhen9KDmfqwQAgH4UFhb2BKsANWrWrGkSKwHTp08PjouLi/74
+        8SPjewcsXbr0Su/evT2qV69eBAlADtr2d5alf1brZuzzlalHXCUAEkLbv3//dG9vb8eAgACT2EMQz9TB
+        +/bti4ZwbCYgPgCbN2++MmjQIA9LS8uiTQA89AOuEgARgRs3bpyO1QDH1atXmwQBeHl5BZ87dy4acjMy
+        hZ2dHZo7d27c1KlTJ+O2yNH2PJ4AihC0mf3VHcNVAgBAboDy5cvnREREdB4+fHiSUSpBA3jWd4qJiTk7
+        c+bMWmzkqcD3jvDs7xcdHU0rKtLkCKBQRf3PQe1rqFgK+6IA+c/qWkJdWcoOZWKAZHo8U2i4HpcJAPpR
+        8eLFQQ8OHzly5GKjVIIGnj596gRhwIsWLXJlo7wqVaqg4OBgv5CQEPMmADrQavzouF5P+zpI+wUF1sY9
+        ywTCRQKQ2zaMWgmYNGlS+MKFCzlPAGfOnHHasmVLMh43ropp3XVpA0iAM3v2bL8RI0YUbQLQx6RpDGMh
+        2/VlY2FDykECIAACgBcWg5dhTC1btiyn7QDbtm1z2rdvXzL+S0kATFLWwbk1a9YE6cevR48eZkwAqgL0
+        yW8F3xfO6OrWuVX9lT9UXs1QdT1NIPUpdF3+2glH1XmKDktan6usrZQ4P2m8P4XzuSgByAP6EtapM7EK
+        ULp69eqcjv2OiopyOnHiRPJvv/3mSkVfymX10QUNGzZEmzZt8sN/zZcA1Lm6EkgLflAxpv87ToubV+Yx
+        p/I4dc4/6mwICirIV7YNJeerdQVWVSca963q3rlOACAB4MFPEUCrVq04TQBYV3e6cOFCckpKiisbRsAW
+        LVqgHTt2+GFVwHwJAMA1cVwXfxt93oO2pKfNe0VwnQCgL/n4+GTiV+nhw4dzmgCGDRvmdOvWreRr166x
+        YgRs164d5ALwq1KlinkTAA/jwRQIoHnz5pktW7YsvWLFCk4TgJ+fn9Pdu3eTMQnwBGAUAlCj+2v1u6rj
+        tX2P1Hyn8Dt1CFvxAXTuQwGmQACVKlXKrFq1aulz585xmgAGDhzo9McffyTfvn2bMQEUEB/aunWrn6ur
+        q3kTwFcGMQVoXPuXM8bJf1Y1wKRyn7W6nobBqcx/QZf4JFURe+o+04lFMiVXYOqeCrwBraysMrH+X/b3
+        33/n9H6BI0aMcLp582by1atXGRMAuEI3btwYxcXF+WEiKAIEwEalacKgPvhKvkM6XF/dedrq/fK/cZ0A
+        qM1NrKxg45MfGzVqNNcoFdES06dPd0pJSUk+c+YMKypA3bp1YZdhv549e5ovAeg6ENSBqXssp6Ep0lCb
+        Y0xoFaBAAkDr1q37cciQIZwmgKVLlzphKSX5wIEDrKgA4AcQERHhR3eDFNMhgAKxHw4urLS6mHsNd6eS
+        TBTPV1y/1waqYuqV1U2da7IuroM6tIXGuhecz3UCAMBuQTNmzPhxLoZRK6IBGzdudDp58mQy1ttddd0R
+        SB5AAD/88IPf4MGDzZQAkJbpsuR0bK1mPHUxBUhNOQq/qSMUeQcebWwX6vwPdPVfUGoaUPIlsY0oi7fQ
+        NwGwsYErBAX179//x8TERE4TwM6dO51Onz6dvGbNGlfYFZgpXF1dKQLAko/5EgAFmgk2NH6v5jdajkB0
+        bpql8rSNdZA1tJJztAyEItAXAZCNLalLMiQAKMvd3f1HPLg4TQD79u1zOnXqVHJ8fLwrbNnO9J5JLMDw
+        4cPNnAB4GA36IgAbGxsqoQdsW84UMBgaNmz44/Xr1zlNABAMhPX/5NjYWFem+QDgngtSgvtNnDixaBAA
+        a26+il/QLJiuu4CmMjWWo8WFtF7uo9lQ+iIA2NgDCICNxBjQn6pUqfLj8+fPOU0ADx48cNqwYUPykiVL
+        XJnsCkTuuVy5cpBhyC8qKqpoEABt0JWraYYJq12b17WK2rILy45AqoKO9EUAEMcPoj+kxmKqAkB/CgoK
+        eh4REdGkbNmy71lqFdaRmprqMGfOnI143PRhSgAgAYAUNWHChEULFy6cgz9rXWDRIQAejKEvAoAtrWDg
+        p6WlMSYAwJgxY1LDw8PdXFxc3hm7zdShW7duwWfPno3OzGTms0RsKIsWLaJyAmIJiM8JyIN96IsA8ExN
+        deB379gZr/7+/ql4NnRr06YNpwkA6+zBa9euZS0rsLe395WmTZt6YMnC/AmALalXPnxYuxNUX1jpqgHd
+        WANVPgQ61kljHeTL11COvggA8tkBATDNj0/Qu3fv1MDAQLe+fftymgASExODJk+evOrt27ciJuWAKzC0
+        X+3atf+ePXt2HywFnNf2XJMlAMaQT9RBJ9Zf3XFfvFFzjKZyWGM3RN9CqYaQ9EUAFSpUoLYkZ4sAvLy8
+        Un19fd3GjRvHaQJo0KBBqdevX196//49492BiSGwf//+Q2JiYsxvb0CtCYDu4GF7jd+AdWN8Ps3y9UUA
+        FStWpAgAz4QMbvY/eHp6pvbp08cNqwGcJoDY2NhShw8fvnTkyBFWNgcFScDPz29H165dA4cMGaKVc4HZ
+        EYAOxn5GDaHL9eguX+pSR7oRhtpAXwTwzTffUASAZ0Pa5ypDx44dU7Ea4Pb9999zmgAePXrkEB0dfSgu
+        Lq4DU3dgGPzQho0bN84IDw/3HThw4HFtzjM5AlDlwlro6SbvvsqC6Ks0/FhBTye/aRzc6pYWNfnzK7s/
+        OuVo2wwk1kJJGfoigKpVqyJwh3316hXtc5Whffv2qT169HCbNm0apwkAMHXq1Ilr1qyJycjI0HkFhNgA
+        4FWsWDHINfDTyJEjf2zTpo3GAk2KALR2faURC0AbdL2MjBlKSMPFWZu20hcBVK9eHcFaOFsE0KpVq1Qv
+        Ly+3efPmcZ4AEhMTe8yYMWMHHjt2IAWwsQzauXPnN0OHDm2P1YDHmo41KQLgYVzokwCg87948YKVerZo
+        0SLV09PT7eeff+Y8AeA62l6+fPnB/v37K8PgZ8MWAFLA5MmTV0REREzSeDwbN8ETgOmAiUCiDwKA5w8E
+        AJ3/6dOnrNxj8+bNUzt16uS2ePFizhPAgwcPLBMSEhIXLVrkC1IQEeV1BXEKwm3wfvny5R1at259V93x
+        JkUAiqHySg1mcuv6Wq3Lq0rBI5Az3GkRMqwVVFxLrV0AIfX1VSHGay3mq7gkdVkDqQAuLi7UzMcWATRt
+        2jTV3d3dbenSpZwnAMCuXbuCwsPD4548eSKAhCZsRAeCazBWAzbHxcUFqjvWpAhAJRgur+lVTVcgE42H
+        akNQNOqt1g9JsW7SgvcqCtUXATg7O1ME8OzZM1aa3NQIANCtW7cHJ06cqElUACaqAOREABIoX758xrhx
+        47pNnz49RdWx5kEAPAwCU7EBmJIKQIB19uG//PLLuoyMDAEMfiZqAPEJgL+4HX6dPXt2QPv27ZUGRpke
+        AdCYUdkAk5VEfVyL1WQhNKEvAoBkFkAAuP+wUs+WLVtSRsAFCxaYDAHcu3fPZfTo0edTUlLKsmUHgLFV
+        unRptHz58p/8/Px+wp+/cjYwHQLQUlcuXMdWdXdy7UpcgdWJvfKnaZMdCCkeoxheq6xu8r4EBfWX309Q
+        UYfXmNVHyYEq7SFI9WfFttQnAUAyELaWAdu2bZuKRWo3PPOZDAEARo0aNX/btm0zIDqQkICuadKIezCg
+        X79+r0JCQjwxMT746jg2Ks4JFUDPIoHa4vUZr2/IXAAaoE8CAAs4W56ApuQIJI/w8PBKp06dOn/16tXK
+        oAaAGM/EQ5AQQKlSpVBkZORSf3//6TY2Nl/kCjAfAiBg6turTfn69hvWZ10Z6DSmQgAdOnRI7dWrl1to
+        aKhJEcDly5dFZ8+e3TNr1ixvkIjAOxLEeV0NgoQAoAxMiI/wq11QUNAXEVfmRwAchDGcAZmOfWUwFQJw
+        d3dP9fHxcZsyZYpJEQBg586d7WNjY/efOXPGET7D4NU1a7A8AWApIHfw4METoqOj//fFMWxU2lA2gK8W
+        ufUxsnT1n6c72nSw5ul0uyxKLPoigCpVqlAEwFY0IEgA3t7eblOnTjU5AsCiugCrAKN/++23+PT0dGp8
+        ME2WSuwBAwYMuOnr69ulf//+/xT+xkali5QEYEzffiPDFAgA+hMhgJCQEJMjAMAPP/zgiNWBExhNwAbA
+        dFkQAL4BlSpVkixYsGAqlgSWFbYXGxU2OQLg8iDmcN1MQQUwBwIAYPWl33aMf/75R8hGunRoF9g1CQ/+
+        PVgSGPrtt99+or5no7JcTQnG4bFkktCnIxB08pcvX7JST1gFgGXAmTNnmiwBxMbGFrt48eKBrVu3erCx
+        cxDYAWCs1a9f/68ePXq4z58/n/K7NikC0DldljZZOJQco5WpgY5jEt1sIAwZjLbvAoGBXYGBAEDMBU9A
+        NsJhwRUYk4BbdHS0yRIAYNWqVd/GxMTsefz4sQ1ZEdDVSYicW6ZMGRQcHDxj1qxZP8P3JkUAhaDhL6/T
+        8fLHMDXmabo2089sQkMCU32qALDm/eTJE1YIoFGjRqnt2rVzW7lypUkTwMaNG62vXr26c82aNb2IGkCW
+        BOm2E1kRgHYeP3580qRJk3q4uLhkmCYB8DAK9BkNCDHst27dYqWeDRo0SG3VqpUbHjgmTQCAFStWdIiP
+        jz90//59BzL70/ULIN6ERA3o0qXL206dOtULCwtLNTkC4LJer2vd9Obfz0JjyRehr3wANWrUoPYGSElJ
+        oXWuKtSuXTu1cePGbgkJCSZPADNnzhQ+ffp00549e/zFYrGAZA3SRQIgUkClSpVyZ8+e/d2YMWPWmRwB
+        aARNkfyrNXy21QklIbdai/ja5ANQ95Mmu4Km8hV+15cEAFtbw+vIkSOsqABVqlRJxVKF2+nTp02eAAAR
+        ERE9NmzYsO/Zs2cWZPDrGh8AcHBwgNWAWXFxcfPNjwB46A36kgBg8Ddt2hTy47FSz/Lly4sPHToU3qxZ
+        syXGbjM2cOXKFbuQkJCzycnJTaG9mHgGklefPn12LFmyZDBPAHTBdiwAF+IDtIQ+CACMUkAAXl5eaOXK
+        lazcIuw1iKWJiFatWs3Rc2saDMuXLz8XHh7eBvwlmMQGEHuAn59femBgYEWTIgCVcT4K7rJKj1ECnZcV
+        NRbKYnksXlqbtlG3GqgvAqhTpw7saAMecKyoACDi/vLLLxH9+vUzGwKIjo72Xrp06c5Xr15ZMY0QhDau
+        X79+esOGDU2LAL4AE4sbQl8QhloS0OI6WuneSq6tE9iM8NOQD0AR+rIB1KtXD3b0hfVpVggAVhR+/vnn
+        iEmTJpkNATx8+LDz0KFD91+4cMGWjTaqUKFCBpa6qpsuAZgiGOYuNDb0RQBubm7S0NDQD6NGjSrFRueG
+        hJjjxo2LWLZsmdkQAKBZs2ZJV69ebcdGG0GmoAULFswxWQKg5QqswXKO5H9WMguqnRi1iNZjM7uw1tKG
+        HqBHCSAX6+sTduzYsQYi4JgCAl+8vb1X7t69ewruX8wd6TmC8PDwpCVLlrRjwzXY1tYWTZw40XQJQBX0
+        Ncky1BJolaHva+naNvoigLp16+Z+++23EzZs2LAmNTWVFTUgLCzsLe6XzbE0wE6AAQeACTJp8ODBFAEw
+        bSNra2vk4+NjggSgL9dcNkeWqtHMdRVAg4+CvoyANWvWzMX6+oSFCxeuef78OSu3EhAQ8DY4OLg5FpvN
+        hgAmT548Jj4+PjYzM1PEtCyIDGzfvr0JEoAmsLHUxmbAEdcGPceWAQG1a9fOjY2NnYAH7Bo23IHB5RWr
+        FG979uzZfMaMGWZDAAMHDuxy8uTJQ+/evbNk2j7watCggRkSAA+9QV+OQLVq1cqLiooaOn369KW3b98u
+        z7SeUGa1atXe1q9fv/mBAwfMhgCmTp3aJTEx8dCrV68YEQAACCA8PPwdTwAmAK4sBuhxFSDP19e3+549
+        e6bfu3fPg2k9Qa1wdHQUr1mzZnbfvn1/Nna7sYXIyMguq1atOvTs2TPGBADjDktHJhoODNDVUqYPnZ/J
+        8erOY8MayCL0KQFMnDix+/Xr16evXbuWMQHA7GZvb4+mTZs2H3fyWYZtJf0hJiamy7JlyygCYGoEhHbH
+        7WPCBKAKRT1VEFv3pqQcPdoA8hYuXNj977//DhkzZkw3plWHPgW+AJ6enov27t073dLSkvmyAgfANgGE
+        hYWZIQHIgXGWHj3AlLlHHwQAs7Wrq2ve5MmTPZcuXWr14sWLE9nZ2YzqSXzeg4KCXmG9ub2Li8tTY7cd
+        G4iKiuqycuVK1lSA0NBQEyQATamr5ER8pVuJSeUOI8eR9/Llq3IVVjGCC5181HkNKauTiqW3wusqKYuW
+        67FA4a98eYr3Ki14K7+tmVzb6EsCABUACOD169dWmzZtOgF7BOqS+AJAkl6Av3yrVq1etW3btv2SJUvM
+        ggCwOtMFt8+hly9fskIAc+bMMUECkIe2S29srsWzEQ2ojzJ1OV7beug5JRgYAYEA8F+rKVOmnLh+/foX
+        ji50xV0wAgJ5lCtXLmv58uXBAwcO/B+tAjiKYcOGdTly5MghrCqxsgowbdq0N6ZHADQcfTghbhvJEUgn
+        9ccIjkAAsAFgfdQTz9p/btiw4dfz5883lk96QZcAoHMDihcvDu6uCyMiIqbr1orcQuvWrbvcvXv3UHp6
+        OmMCAHfpZs2amZ4fgB5tXDodZ0jXXE3l6Psa+iSA6dOne3769OnSnTt3DsXHx3vpmvwSAH2KqALt2rXb
+        nJCQMLZixYqZLDSNUbF+/fqEsWPHDsrNzWX8mK2srFCnTp1MjwC0SnOl7e/K3murT2tbrqp6a6um0A3y
+        V/aZJRVBn8uAWBz1rFev3oUDBw5ERUZGTsrJydE58QUpF+Dl5fV6yJAh7YcOHfpE58I4gri4uCQs0bAS
+        DASxAH5+fiZIALqAyYAyxPUMmSVI19wBSP8EgHXcJPzq9Ntvv53Cei6jrbEJqlat+nHChAlDQkNDD+up
+        RQ2GgQMHJu3cubMdE2IkgKQpISEhRYQA1IEThgLTgCEI4PDhw51+/vnnU5AhWFcbACkXAB39u+++i1y4
+        cGGYsduPKdzc3JIePHjASj6AcuXK5Y4fP76vyREAW34+2qbHKqrcoOze9UUAsAoANoDAwMCkFStWWP76
+        66/Hjh8/3omkwNYFArnEC5gA3mAVoE2LFi2eGbtddUVycnK3KVOm7L169aoNU8kI2gZLRumVKlUy8ZRg
+        VAFKvhdoOI7mMtwXvgDa6PKFN6emQBW/f1GcqrKUpfXSdI/Kriv3WZ3fAYG+CACMgDNmzPDEunoSHvii
+        a9eu7fvhhx96MkmAKY8mTZpkzpw5c4yvr+9WxoUZCWPHju1+8ODBvW/fvrXSdbdg+aSgbdq0Se/evbsJ
+        EoAxpmVt1s7ZyuhB14jHhs1CXVly19cnAeAB6jl48OAk+A6rAm1OnDhx5s2bNxZs2AFKlCiBRo8evSQq
+        KmoqC61kFEydOnVFbGzsd9nZ2UIm+wIQApg4cWJ6UFCQaREAF0VytuvExXskMBQBnD17tvHs2bNP478l
+        2PB5hyXB3r17X8PE0rlXr17vjd2OusDHx+fckSNH2gAh6kqKhACgPQYNGpSA1a2hJkUAFLQR19UdqoOj
+        kKEGpaF9E+iqQoYiAIC3t/dh3OG7s5H+CpxeqlWr9rlPnz6dIiMjLzMqzAjYtWtXs/nz5x+5efNmGfis
+        q1pEdggGByksEc3CEpEJ7Qykyp8dKXynSfdV1Jm1/ayta7G6dXm69gFtLZXaHKOteqKmfoYkgIEDBw7+
+        9ddf12dkZFjRKlDFNSA6sGvXrsv27ds3hWl5hsT169cFmAgnLMP48OGDSFfDKAx+IA5oi0qVKuXg9g4a
+        N27cRtMhgILj2cisa1AwFR8MGSegAYYkgE2bNrVfuXLlsUuXLtkyrTfkvwPUqVPntaenZ/2lS5eajBqw
+        ZMkS4Z07d85v3ry5BZn5me4M1LFjx7ctW7as9/PPP5ve7sA6gcuKNUdhyGVAZQTw/Plz2+Dg4EMYHkyX
+        AyE4CGBtbS0NDw9fUK5cudlBQUEmkSNg3bp1nbGofuDhw4c28n4RuuwOTGIkAgICTo8fP967efPmn4oG
+        AfBgBYYkAMC8efPm4s4/A6sBFrqGBwOI7gt/fXx8Pg8bNszF29v7b2O3pyacOnXKYsOGDT9s3759FrhG
+        6wr5wQ8rIgMGDJixevVqKlWa+RCAsWd5uhY8rlkgtYChCWDt2rXt8Ax4FKsBxXRd+5a/DgC2DUtISFiF
+        CWCCsdtTE3bt2lUPq/6/njt3rjKTcojoD6hevXpaWFjYYCwBUa7R5kMATMGhgcZVGJoAAH5+fvvwQPAB
+        NYCJ7kvIA967u7tfw7r1t02bNv3H2G2qCqdPn7a6cOHCYqynB2MJiBXyA4waNeo5loJa9ezZ8y31GxuV
+        5RwB0Iy8+yIjkJKypAW/CeiWzbRuupTHsC24sgxIEB0dPQH3r6UfP360ZOIAI08AdnZ2KDEx8RcsBYyg
+        XZiBsGnTphZYAtqfnJxcnqk3JJEAYDuw6dOnbwWvSPyZCo82TwJgCQwC5wxyTUPDGASAxf9Gs2bNOn7y
+        5MkyTOwABMQeULNmzT8WLVo0oHfv3neN3a6KiI2Ntbl7927sL7/8Mhx0fza8IcEXokKFCv8EBAT0W7Bg
+        QWE7mx4B6GtGZHPk6ZozgO69aDqOZWnEGAQAmDt37ircacfl5+cLmCQKAQABkFUBPBvuHzRokF+dOnWy
+        dCpMD8D3JVy8eHH/+Pj4uOfPnzvCd2wQANxznz59LvTt27eXv7//O/K96RGA0lZD+hW7FUlCxfVocQid
+        4CJVCUp1uXdtflJxv8YigISEhMZLly69eO3aNUsizjP1hwciqF69+md8zUE//vjjIdoF6Qm7du2qcuDA
+        gZObN2+uAYMW7pGN6D/YDnz8+PGhmEyjvviNjUqbciyAviZ+xS/VOewZTeyneWFjEUBWVlaxlStXHggN
+        DfUgg4K85PV7ba8HIMtiPj4+T7FY/C2eHR8YuPW/Ahb5Rc+ePTuKJQAvsuzHht0D4OHh8fL777/v7u3t
+        ffuL49iouNElAE3gsmLNZXBEBQBs2bKlE1YDTj148N841WVpUKBg7bW1tRX7+vruGz169JgOHToY1UNw
+        1KhRM/bt2zcnNTXVmo0gKLl7RAsXLjwyfPhwPwcHh7QvjmOj4pzaGoxuzkC64bzKoE0Ir6pjNFnlEdJc
+        F32tJHCIAPbs2WN15syZXcuXL+9F/NrJX7qQnx2hjDJlykjw4FuLCSaIdmEsYcOGDT/j64c8evRI59UO
+        AiLdQBkgMTVs2DBj/vz5/t26dftK1TFdAjAWirA0YUwCAMybN69JYmLi1bt3734R3MJ0sMAgKVu2bGav
+        Xr2Cq1evvm7atGkGcxP++++/LW7duhWDxfMxf/zxhwjiFiARClOA1R9sB5D8c8KECbvxvQW6u7t/lRnZ
+        5AhAYzBQwbq9QM3vdO/6qyw9RgjO0WnRQOGLrwQKJYWqu46xCWDNmjWi27dvb4yPjx9MwoTZyI8HJACv
+        ypUrS0aOHDnVzc0tpl+/fsxN7xpw/vz5Yrt27Qratm3bnLdv35ag2p+BgZO0J9wLDH5437Rp03Tctj37
+        9OmjtG1NjgAIuDgRG4objHXvxiYAANZlnffu3fvHtWvXrImFnKmXHOTIz8vLI6GyMGP+iHXln8eNG8d8
+        KlZ9H6U/ffoUv3LlSt/09HRWUp+R+yG+DuD2PGvWrM2BgYEjK1SokKf0eDYuapS9AXXNda+pDG1yCGo6
+        Vl3Z2qQA18Zmoev16LaVHAyRE1Cbc4KDg5ds2bJl8sePH6maMlkmI8YyEJlBqgAygEzCXbp0WdqoUaPF
+        YWFhrAYNHT16VITFfp9ffvll6sWLF1uDuM+Gg5P8/ZCt0fA9PFu9enXPatWqqXR2Mh0C0NO0p0ml0Pts
+        yyR/IJOyyb0j7a/BBQkAgCWAqjt27EjBr4pMg4QAZMYkZAADCF5+fn6va9SoMRjX7XdGF8D4888/hSdP
+        nmx048aN4LNnz/a9d++ePZmt4R7YIgCyIxKWZHLHjh3rh4l1j9r2Z+OiJmUEpKn3GlrcVurso6+6qJEe
+        jJ0PQBOwaNtj9+7d2x4+fGhPdgMurDuDfQRI2DAhhCpVqrxr1qzZ9jp16sThfk7bbRjP+BZpaWnNL1++
+        PBO/uuBZ3xLW+OVjE3Sts2LdCcDw9/3335/DakY7jefqfFU5mDQBcNGYwFFwiQBu3bplt3379s1Yh+77
+        +fNnWf0KpAE2DIOkbiSIpmrVqmn16tU7VK5cuS2DBg167+joeBWTglLdA+p2/fr15i9fvux2/vz5do8e
+        PWr95MkTEdnSi63ZnoDM+oQIsOj/0svLq/WUKVNearxHNipg9FgAdWvnmj5rAlPCYOJfwBS6rP+raUsu
+        EQAgOTm56apVqzZgSaCe/KBiY+88Ujd4wdIcSBgw0CChhouLy+eSJUs++OabbyRgNCQiPGxnhscAwgPf
+        JisrqxZs452dnf3FLM+GyqIIsooB5WKVJW306NET/P39t1asWFHjhUyPAHSBIU3s2hr69Ak92Q64RgCA
+        yMjIVjt37vz12rVrjlAWWPPZgrxNgGqWAvWAvIfBDMbDwvYpcE6COpDjFGMX2B78ALgWkJS9vT1asGBB
+        AiaBEZ6enlqlECoaBMCDFXCRAJ4+fWqB1YCgTZs2Lfnw4YM1lEckAH0MNi5AUecnOQ569eq1sWfPnt/j
+        dvyodVlsVIgngKIBLhIA4OjRo6Wwzr13zpw5HWA2JEtr5gr5gCii//v5+b3BL5/u3bvT2vfAPAmAbV9+
+        Jno/3XoxrTtd0Igj4CoBABITE+23b9++69ChQ11BAmDqIsx1yCc67dChw9PeGMHBwbfolmN+BMDWYGX7
+        HFMp00QJABAfH2+flJT0eteuXQ5ED2fTJsAVEPsCbHbi5ub2R7NmzXqvWbPmT13KMlkCYG3tXsuDWbme
+        qRkDFcB1AgDs2bOn1ebNm/cdO3asHAmqYWtVwFiQT2IC9wIGPwsLC2nTpk0vN2zYsN+qVav+0rlsNirI
+        KQmAh95gCgQAWL58edPk5OTtBw4ccDEHewAR9wlsbW2lHTt2PN2qVashc+bMecOkbNMmALZy4dH5XZtY
+        Abox/fqqbxGUAAjWr1/f4Pjx45v379/fIDNTFgVLfORNkRCIBADWfg8Pj4Nt27YdERYW9o5xuWxUjhUC
+        qI0JwL9EAQHkUZ1XQv0GBCDmnfU4ACkQgAATgFRGADlCe5RDCOC5lIrXkHCEAABbtmypffXq1fXr1q1r
+        9enTJ6ToMsxlyDsPga8BfHZ0dETDhw/fbm9vHzR79uw0hpeQXYeNQtghACGWAIojmzwgALEcAWARCPyy
+        0X/5+XkYC/A8ZAQAkURZInuUK7VC/YEAnuGOio/I5xABAK5fv+68devWWTt27Bjwzz//FCMqgbxTD9uu
+        uUwhr/OT940bN35drVq1IEwAp7t16/aZtWuxUQhrEkAhAeR/SQBIWpg9Sx68G78MhmsH0yMAwMKFC0Xp
+        6en9T548uRZLBMXgO+Lay1WVgHgfwqw/bNiwF3Xq1PHFdb06atQoVivLLQKgVIA0BQLAKgCWCGT6JVs1
+        5qEbTJMAAIcOHRLgQd9l7dq1U1NSUrw+fvxYGPHHFbVAMWNxhw4d8lu0aBHRrl276F69eqXr5ZpsFMKE
+        AAruHA3FBLAcE4CtOANZSnMLCEA29wulEqrrAQFwj6uLEnDHFFhQRlnQ9rMxAeQAAfyShk4+x7MWHlC6
+        EICbmxuVECQgIEBvBECwYMECUWpq6pTk5OTwGzdulCYqARthuVq3oly4MVE/SG5CIKMqVapIgoKCrhYv
+        Xnzgt99++9zZ2VlvOgo3CABjaB0RivZzRMUkn5CFOJv6TiwQFRBAfoEKwC8GGheQbFGEn4JMAqAIAIyA
+        69PRqRdAABKdCSA8PNwTi7p6JwCCw4cP18OvqSdOnPDF/dYeHIaUZebRZe8BTfcLWYcUvRULchLm+Pr6
+        XvT29l7cvn37w4ZoB1YIYO7cud2waMVIBRiGJYBo/1IUAYjEmZRUIMWzDVkGlM39IkO0CQ81kGKpTAAq
+        AB7oOaLiKEsswhJABiYAqU4SAHT8WrVq5U2bNs1z6NChBiMAgvj4eNebN29OOHv2rN/jx4/LEqchshsx
+        mZVJXQF0jYZkoBOjnjzs7e2lFSpUeDVgwIBrjRo1iu7bt+9pQ94/KwQwZ86cbuvXrz/48uVLWgRQKHbh
+        agx1E6JlfqUKJIAs3Nqw5GRRIAHAMqAEv1dHAEZK18spaHsfuscsS6jnkUepZFkiB5QjsUQDNqSj0xQB
+        ICwb0NOnCQFMnz7dMzAw0OAEQABpxrBKMByrBsMePHhQ5d9//xUoJvCQD+2lA3IeydcHLryOjo7vGjdu
+        /MzV1XUtloA2jx49OpNWoSxB617/5MkTYVpaWr1Xr14Vg5RG4I5INh7A37WMiIiIwgRAe4qmGge//F0t
+        0M9+1ZAoLwtJJdlIZAE2AGhoGPxiSvgXGHQdUNm6g7bHMTmX7fqxCyk1CcrIOFNUAn2WOqKwDffRxad5
+        WB2wQNkot8Baox2AAGrWrJmP1ciJeGDclM9sA30Mvx54eHgYbMeehw8flj99+nQzLA0MvXPnTp0XL17U
+        ef36NcrIyCgkArJyQOqqan8C8jvE6ZcpUwZ0+1flypW7V6xYsY1t2rS5NmrUqD8MdV+qoHFEBQcHd8A3
+        NuXWrVuOdnZ2TVJTU+3JEor8DWP21DnwAhqpgq0AuZSxkYlbeODni0H8gl+l1GfgAoFEqyrz0BOoNZmC
+        RKJA2nkCEcqztEKP/85CGflWSCy1QtL8DIRoqAHg5AIDvX79+tSzhwlFIRHHHXzMu+7du7/D/S0aSwrn
+        DHW/169fd8TqQcM3b95Uefv27WDYkOTDhw8lra2tm2ZmZoogFRmxHUBdIRcfpA+DdNz4BXuYPceDHjk5
+        Of2Ox875tm3bvnB3d39i0IemAUpH06NHj1yPHTs2Aov1Xnh2b4Bv2kp+cMsnTiSfmRpJREIiJskIQSyR
+        flU5gS6X0GKiLFIKgLr20NBWEvDIENhQBwmkIOpj6QzL/RJRwe6n8PDy8mkJJsQ9V36nH+pe5IxjABhY
+        ePbMbt68+R0/P7+d+PslvXr1Mvj63e3bt+2zs7NdQdr9888/Qfql6g3r9RUrVqT2FYBBjwf8X1i8ZzWl
+        uD7wVX9JSEhoceHChU1bt26thQf+Fx5TZLcRebFHV71IEUJclcKt8gSCrzoRtQSoaUsgQyfr0xgiqGM8
+        rtqtjbQ9l278ojbHSygVAG7LQkItCiJL2bfUnC+G8U+zG8hvZEHW5OV1ZgBJgEFScFWtWjW3c+fOq4cN
+        GxbbsmVLo+/qa8r44oljPazDiRMnNmECqEpEG8MBxD2yzCcsqBp5AUA1yOfWVK2vfOKcFUkksspJZfYY
+        AbJC8NykBb9JBeDCTVZs9AdQGcCQhgng8aBBgwZj0fqisVvGVFHYzXbu3Nl59erVW86cOePE5kYF2gKG
+        PywhqOo6vBMQNyDBc74UiZBUXnoSATmLqV+RnkPvibQAUgFIA999992tbt26eXTp0iXV2G1jiqCe4vz5
+        80scPXp06/nz53sQ0d7w7pHys73icBco/OVhLFjgwS9bkhXL5AHFTVYMwNIw+MmaOhjegoODt7dq1Wp4
+        z549s4zdPqYGwe+//y44cODAgg0bNkyDTQoBTDdc1B+IasA2OCtzc+w+cPnCAsmQXIZiAXguVvgrkAyy
+        EJ1VALogNgMSLAN9tVatWmne3t6DFi5ceFSPN2+WEISHhxe7ffv26yNHjhSHL7g58HlwH4oZUAwHUAWG
+        DBnyG5YAvPv166dVPnweMghGjRo1aMeOHZs+ffpkqa+NC3jw0CdAKqhbt+67Pn36NI+IiHhm7PqYEgT1
+        69ef8/Dhw7nE6s8TAA9TAxBAqVKlUAjGjBkzlhq7PqYEQf/+/V/s3r27Mj/4eZgqwCYAxsC2bduGnDhx
+        gicAGhD07dtXunfvXn7w8zBZgAQAdoDq1auHYGmWJwAaEPj4+EgPHDjAEwAPkwXZwbdWrVoht2/f5gmA
+        BgTfffedNDY21tj14MFDJxC3YYgV8PT0DDl06BBPADQgaNeu3dxLly7Ngdhn3g7Aw9RA4gV4I6BuEPz0
+        00+hy5YtW/Tx40cBcbHkSpJEHjy0RdOmTdNnzpz5bd++fVOMXRdTgmDJkiV2v/322/2TJ09WJjEAJDST
+        Bw+uQj6DLhgAe/fuvQGrs6Pd3d1NeyNAA4NqxUGDBo07duxYTFpaGpXSix/8PLgO+fx6jRo1ysXS/xh/
+        f/+Nxq6XqYFqwblz55Z4+PDh6V27djUmcQC8GsCDi5BPqgkzf4kSJWC7rGgvL6+wrl27mt9e4HpGYWvG
+        x8c3+vXXX48cPXq0PO8VyIOrkN8uC9JrBwQEJGMJdkSnTp3+NHbdTBGFBJCfn2+ZlJQ0NiYmZsGRI0fs
+        IfEn22m/ePDQBYqptElCEB8fn+NNmjQZPXny5OfGrqOp4ouWBRvAxo0b3W7cuLHkwIEDXVJTUzm9fxoP
+        84d8lmCySlW5cuX0Ll26/NKtW7eFffr0eWvsOpoylAaPX758ucwff/wRcurUqQnHjh2z//fff6nv5bcz
+        4gmBhz5A4v2JIZrE/UN/c3FxkdavX/94o0aNoj59+nRi0aJFfCdkCJXZIx4/fix4/vy53ZkzZxrfuXPn
+        W9zg9e3s7Hq9ffsWGT5fII+iArIMTXR8yLQrFov3VK1a9X6DBg32lytX7nqPHj14Yx9L+D9XbfXO86mR
+        kgAAAABJRU5ErkJggg==
+</value>
+  </data>
+</root>

+ 152 - 0
Fuel_ASO/Program.cs

@@ -0,0 +1,152 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Net.Mail;
+using System.Net.Mime;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.IO;
+
+namespace Fuel01
+{
+    static class Program
+    {
+#pragma warning disable S2223 // Non-constant static fields should not be visible        
+        public static int site = 1;
+        public static string auteur = "Test";
+        public static bool okSignalR = false;
+        public static string key_sta="";
+        public static string key_ope="";
+        public static string abrev_ope="";
+        public static string nom_ope="";
+        public static string folder = "";
+        public static string subfolder = "";
+        public static bool debug = false;
+        public static bool isExcel= false;
+#pragma warning restore S2223 // Non-constant static fields should not be visible
+
+
+        /// <summary>
+        /// Point d'entrée principal de l'application.
+        /// </summary>
+        [STAThread]
+        static void Main()
+        {
+            debug = ( Environment.MachineName=="PCPAT");
+
+            Application.EnableVisualStyles();
+            Application.SetCompatibleTextRenderingDefault(false);
+            Application.Run(new Main());
+        }
+
+
+        public static bool sendMail(string fromEmail, string passwd, string smtpsrv, string toEmail, string subject, string body, string pj)
+        {
+            try
+            {
+                MailMessage message = new MailMessage();
+                message.From = new MailAddress(fromEmail);
+                string[] emails = toEmail.Split(new Char[] { ',', ';' });
+                for (int i = 0; i < emails.Length; i++)
+                    message.To.Add(new MailAddress(emails[i]));
+                message.Subject = subject;
+                ContentType ct = new ContentType();
+                ct.MediaType = MediaTypeNames.Application.Octet;
+                if (pj != null)
+                {
+                    Attachment att = new Attachment(pj, ct);
+                    ContentDisposition cd = att.ContentDisposition;
+                    cd.FileName = pj.Substring(pj.LastIndexOf(@"\") + 1);
+                    //cd.FileName = "Traces_Erreurs_Race_Mngt.txt";
+                    message.Attachments.Add(att);
+                }
+                message.Body = body;
+                message.IsBodyHtml = false;
+                SmtpClient smtp = null;
+
+                smtp = new SmtpClient(smtpsrv);
+                smtp.Credentials = new NetworkCredential(fromEmail, passwd);
+
+                smtp.EnableSsl = false;
+                smtp.Port = 587;
+                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
+                smtp.Send(message);
+                //MessageBox.Show("Un E-mail décrivant le problème a été envoyé.\r\n Nous cherchons à corriger l'erreur rencontrée.", "Gestion des erreurs");
+                return true;
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show(ex.Message, "E-Mail");
+                return false;
+            }
+        }
+
+        public static DialogResult ShowInputDialog(string title,string message,ref string input,bool hidden)
+        {
+            System.Drawing.Size size = new System.Drawing.Size(220, 70 + 25 );
+            Form inputBox = new Form();
+
+            inputBox.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            inputBox.ClientSize = size;
+            inputBox.StartPosition = FormStartPosition.CenterParent;
+            inputBox.Text = title;
+
+            System.Windows.Forms.Label label = new Label();
+            label.Size = new System.Drawing.Size(size.Width - 10, 23);
+            label.Location = new System.Drawing.Point(5, 5);
+            label.Text = message;
+            inputBox.Controls.Add(label);
+
+            System.Windows.Forms.TextBox textBox = new TextBox();
+            textBox.Size = new System.Drawing.Size(size.Width - 10, 23);
+            textBox.Location = new System.Drawing.Point(5, 5 + 25 );
+            textBox.Text = input;
+            if ( hidden) textBox.PasswordChar = '*';
+            inputBox.Controls.Add(textBox);
+
+            Button okButton = new Button();
+            okButton.DialogResult = System.Windows.Forms.DialogResult.OK;
+            okButton.Name = "okButton";
+            okButton.Size = new System.Drawing.Size(95, 23);
+            okButton.Text = "&OK";
+            okButton.Location = new System.Drawing.Point(5  , 39 +25 );
+            inputBox.Controls.Add(okButton);
+
+            Button cancelButton = new Button();
+            cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            cancelButton.Name = "cancelButton";
+            cancelButton.Size = new System.Drawing.Size(75, 23);
+            cancelButton.Text = "&Cancel";
+            cancelButton.Location = new System.Drawing.Point(5 + 95 + 10  , 39 + 25);
+            inputBox.Controls.Add(cancelButton);
+
+            inputBox.AcceptButton = okButton;
+            inputBox.CancelButton = cancelButton;
+
+            DialogResult result = inputBox.ShowDialog();
+            input = textBox.Text;
+            return result;
+        }
+
+        public static void traces(string fic,string datas)
+        {
+            bool done = false;
+            int retry = 0;
+            while (!done && retry < 5)
+            {
+                try
+                {
+                    File.AppendAllText(fic, datas + "\r\n");
+                    done = true;
+                }
+                catch (Exception ex)
+                {
+                    datas += ( "\r\n Retry " + retry++.ToString() + " Ex:" + ex.Message );
+                }
+            }
+
+        }
+    }
+
+}

+ 36 - 0
Fuel_ASO/Properties/AssemblyInfo - Copie.cs

@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Les informations générales relatives à un assembly dépendent de 
+// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
+// associées à un assembly.
+[assembly: AssemblyTitle("ASO Fuel")]
+[assembly: AssemblyDescription("Gestion du ravitaillement dans les stations-service pour la société ASO")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("2AX")]
+[assembly: AssemblyProduct("ASO_Fuel")]
+[assembly: AssemblyCopyright("Copyright ©  2AX - 2015-2016")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly 
+// aux composants COM.  Si vous devez accéder à un type dans cet assembly à partir de 
+// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
+[assembly: ComVisible(false)]
+
+// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM
+[assembly: Guid("341849eb-a1ae-4428-b84f-9b8c3bdc11d3")]
+
+// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
+//
+//      Version principale
+//      Version secondaire 
+//      Numéro de build
+//      Révision
+//
+// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut 
+// en utilisant '*', comme indiqué ci-dessous :
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.3.0.0")]
+[assembly: AssemblyFileVersion("1.3.0.0")]

+ 38 - 0
Fuel_ASO/Properties/AssemblyInfo.cs

@@ -0,0 +1,38 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Les informations générales relatives à un assembly dépendent de 
+// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
+// associées à un assembly.
+[assembly: AssemblyTitle("ASO Fuel")]
+[assembly: AssemblyDescription("Gestion du ravitaillement dans les stations-service pour la société ASO")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("2AX")]
+[assembly: AssemblyProduct("ASO_Fuel")]
+[assembly: AssemblyCopyright("Copyright ©  2AX - 2015-2020")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly 
+// aux composants COM.  Si vous devez accéder à un type dans cet assembly à partir de 
+// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
+[assembly: ComVisible(true)]
+
+// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM
+[assembly: Guid("341849eb-a1ae-4428-b84f-9b8c3bdc11d3")]
+
+// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
+//
+//      Version principale
+//      Version secondaire 
+//      Numéro de build
+//      Révision
+//
+// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut 
+// en utilisant '*', comme indiqué ci-dessous :
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.9.1.1")]
+[assembly: AssemblyFileVersion("1.9.1.1")]
+
+[assembly: AssemblyInformationalVersion("1.8.7")]

+ 143 - 0
Fuel_ASO/Properties/Resources.Designer.cs

@@ -0,0 +1,143 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Ce code a été généré par un outil.
+//     Version du runtime :4.0.30319.42000
+//
+//     Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+//     le code est régénéré.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace Fuel01.Properties {
+    using System;
+    
+    
+    /// <summary>
+    ///   Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées.
+    /// </summary>
+    // Cette classe a été générée automatiquement par la classe StronglyTypedResourceBuilder
+    // à l'aide d'un outil, tel que ResGen ou Visual Studio.
+    // Pour ajouter ou supprimer un membre, modifiez votre fichier .ResX, puis réexécutez ResGen
+    // avec l'option /str ou régénérez votre projet VS.
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    internal class Resources {
+        
+        private static global::System.Resources.ResourceManager resourceMan;
+        
+        private static global::System.Globalization.CultureInfo resourceCulture;
+        
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+        internal Resources() {
+        }
+        
+        /// <summary>
+        ///   Retourne l'instance ResourceManager mise en cache utilisée par cette classe.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Resources.ResourceManager ResourceManager {
+            get {
+                if (object.ReferenceEquals(resourceMan, null)) {
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Fuel01.Properties.Resources", typeof(Resources).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+        
+        /// <summary>
+        ///   Remplace la propriété CurrentUICulture du thread actuel pour toutes
+        ///   les recherches de ressources à l'aide de cette classe de ressource fortement typée.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Globalization.CultureInfo Culture {
+            get {
+                return resourceCulture;
+            }
+            set {
+                resourceCulture = value;
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap aax3 {
+            get {
+                object obj = ResourceManager.GetObject("aax3", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap aPompe {
+            get {
+                object obj = ResourceManager.GetObject("aPompe", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap archive {
+            get {
+                object obj = ResourceManager.GetObject("archive", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap document {
+            get {
+                object obj = ResourceManager.GetObject("document", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap dossier {
+            get {
+                object obj = ResourceManager.GetObject("dossier", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap green {
+            get {
+                object obj = ResourceManager.GetObject("green", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
+        /// </summary>
+        internal static System.Drawing.Icon pompe01 {
+            get {
+                object obj = ResourceManager.GetObject("pompe01", resourceCulture);
+                return ((System.Drawing.Icon)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Recherche une ressource localisée de type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap red {
+            get {
+                object obj = ResourceManager.GetObject("red", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+    }
+}

+ 145 - 0
Fuel_ASO/Properties/Resources.resx

@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="aax3" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\aax3.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="aPompe" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\aPompe.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="green" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\green.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="pompe01" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\resources\pompe01.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="red" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\red.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="archive" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\archive.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="document" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\document0.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="dossier" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\dossier.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+</root>

+ 158 - 0
Fuel_ASO/Properties/Settings.Designer.cs

@@ -0,0 +1,158 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Ce code a été généré par un outil.
+//     Version du runtime :4.0.30319.42000
+//
+//     Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+//     le code est régénéré.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace Fuel01.Properties {
+    
+    
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.4.0.0")]
+    internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
+        
+        private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
+        
+        public static Settings Default {
+            get {
+                return defaultInstance;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("")]
+        public string key_ope {
+            get {
+                return ((string)(this["key_ope"]));
+            }
+            set {
+                this["key_ope"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("")]
+        public string nom_ope {
+            get {
+                return ((string)(this["nom_ope"]));
+            }
+            set {
+                this["nom_ope"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("")]
+        public string abrev_ope {
+            get {
+                return ((string)(this["abrev_ope"]));
+            }
+            set {
+                this["abrev_ope"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.WebServiceUrl)]
+        public string server_adress {
+            get {
+                return ((string)(this["server_adress"]));
+            }
+            set {
+                this["server_adress"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("")]
+        public string serveur_dir {
+            get {
+                return ((string)(this["serveur_dir"]));
+            }
+            set {
+                this["serveur_dir"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("http://www.aformatix.com/signalR/srv/")]
+        public string server_signalr {
+            get {
+                return ((string)(this["server_signalr"]));
+            }
+            set {
+                this["server_signalr"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("http://localhost/ASOStationService/achats")]
+        public string server_adress_datas {
+            get {
+                return ((string)(this["server_adress_datas"]));
+            }
+            set {
+                this["server_adress_datas"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("http://www.aformatix.com/ASOstationservice/download/Fuel_ASO_Install.exe")]
+        public string server_adress_bin {
+            get {
+                return ((string)(this["server_adress_bin"]));
+            }
+            set {
+                this["server_adress_bin"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("C:\\inetpub\\wwwroot\\ASOStationService\\Achats")]
+        public string chemin_copie_locale {
+            get {
+                return ((string)(this["chemin_copie_locale"]));
+            }
+            set {
+                this["chemin_copie_locale"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("False")]
+        public bool use_locale {
+            get {
+                return ((bool)(this["use_locale"]));
+            }
+            set {
+                this["use_locale"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("http://localhost/ASOStationService/api/FileUpLoad/upLoadFiles")]
+        public string adresse_copie_api {
+            get {
+                return ((string)(this["adresse_copie_api"]));
+            }
+            set {
+                this["adresse_copie_api"] = value;
+            }
+        }
+    }
+}

+ 39 - 0
Fuel_ASO/Properties/Settings.settings

@@ -0,0 +1,39 @@
+<?xml version='1.0' encoding='utf-8'?>
+<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="Fuel01.Properties" GeneratedClassName="Settings">
+  <Profiles />
+  <Settings>
+    <Setting Name="key_ope" Type="System.String" Scope="User">
+      <Value Profile="(Default)" />
+    </Setting>
+    <Setting Name="nom_ope" Type="System.String" Scope="User">
+      <Value Profile="(Default)" />
+    </Setting>
+    <Setting Name="abrev_ope" Type="System.String" Scope="User">
+      <Value Profile="(Default)" />
+    </Setting>
+    <Setting Name="server_adress" Type="(Web Service URL)" Scope="User">
+      <Value Profile="(Default)" />
+    </Setting>
+    <Setting Name="serveur_dir" Type="System.String" Scope="User">
+      <Value Profile="(Default)" />
+    </Setting>
+    <Setting Name="server_signalr" Type="System.String" Scope="User">
+      <Value Profile="(Default)">http://www.aformatix.com/signalR/srv/</Value>
+    </Setting>
+    <Setting Name="server_adress_datas" Type="System.String" Scope="User">
+      <Value Profile="(Default)">http://localhost/ASOStationService/achats</Value>
+    </Setting>
+    <Setting Name="server_adress_bin" Type="System.String" Scope="User">
+      <Value Profile="(Default)">http://www.aformatix.com/ASOstationservice/download/Fuel_ASO_Install.exe</Value>
+    </Setting>
+    <Setting Name="chemin_copie_locale" Type="System.String" Scope="User">
+      <Value Profile="(Default)">C:\inetpub\wwwroot\ASOStationService\Achats</Value>
+    </Setting>
+    <Setting Name="use_locale" Type="System.Boolean" Scope="User">
+      <Value Profile="(Default)">False</Value>
+    </Setting>
+    <Setting Name="adresse_copie_api" Type="System.String" Scope="User">
+      <Value Profile="(Default)">http://localhost/ASOStationService/api/FileUpLoad/upLoadFiles</Value>
+    </Setting>
+  </Settings>
+</SettingsFile>

+ 70 - 0
Fuel_ASO/Properties/app.manifest

@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="utf-8"?>
+<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
+  <assemblyIdentity version="1.0.0.0" name="MyApplication.app" />
+  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
+    <security>
+      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
+        <!-- Options du manifeste de contrôle de compte d'utilisateur
+             Si vous souhaitez modifier le niveau du contrôle de compte d'utilisateur Windows, remplacez le 
+             nœud requestedExecutionLevel par l'une des propositions suivantes.
+
+        <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
+        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
+        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />
+
+            La spécification de l'élément requestedExecutionLevel désactive la virtualisation de fichiers et du Registre. 
+            Supprimez cet élément si votre application a besoin de la virtualisation pour des
+            raisons de compatibilité descendante.
+        -->
+        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
+      </requestedPrivileges>
+      <applicationRequestMinimum>
+        <defaultAssemblyRequest permissionSetReference="Custom" />
+        <PermissionSet class="System.Security.PermissionSet" version="1" ID="Custom" SameSite="site" Unrestricted="true" />
+      </applicationRequestMinimum>
+    </security>
+  </trustInfo>
+  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
+    <application>
+      <!-- Liste des versions de Windows pour lesquelles cette application a été testée, et sur
+           lesquelles elle doit fonctionner. Supprimez les marques de commentaire des éléments appropriés, et Windows va 
+           automatiquement sélectionner l'environnement le plus compatible. -->
+      <!-- Windows Vista -->
+      <!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />-->
+      <!-- Windows 7 -->
+      <!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />-->
+      <!-- Windows 8 -->
+      <!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />-->
+      <!-- Windows 8.1 -->
+      <!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />-->
+      <!-- Windows 10 -->
+      <!--<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />-->
+    </application>
+  </compatibility>
+  <!-- Indique que l'application prend en charge DPI et qu'elle n'est pas automatiquement mise à l'échelle par Windows à un niveau de
+       DPI plus élevé. Les applications Windows Presentation Foundation (WPF) prennent automatiquement en charge DPI et n'ont pas besoin 
+       d'opter pour ce choix. Les applications Windows Forms qui ciblent .NET Framework 4.6 et qui optent pour ce paramètre, doivent 
+       également affecter la valeur 'true' au paramètre 'EnableWindowsFormsHighDpiAutoResizing' dans leur fichier app.config. -->
+  <!--
+  <application xmlns="urn:schemas-microsoft-com:asm.v3">
+    <windowsSettings>
+      <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
+    </windowsSettings>
+  </application>
+  -->
+  <!-- Activer les thèmes pour les contrôles et boîtes de dialogue communes de Windows (Windows XP et version ultérieure) -->
+  <!--
+  <dependency>
+    <dependentAssembly>
+      <assemblyIdentity
+          type="win32"
+          name="Microsoft.Windows.Common-Controls"
+          version="6.0.0.0"
+          processorArchitecture="*"
+          publicKeyToken="6595b64144ccf1df"
+          language="*"
+        />
+    </dependentAssembly>
+  </dependency>
+  -->
+</assembly>

二进制
Fuel_ASO/Resources/aPompe.png


二进制
Fuel_ASO/Resources/aax3.png


二进制
Fuel_ASO/Resources/archive.png


二进制
Fuel_ASO/Resources/document0.png


二进制
Fuel_ASO/Resources/dossier.png


二进制
Fuel_ASO/Resources/green.bmp


二进制
Fuel_ASO/Resources/pompe01.ico


二进制
Fuel_ASO/Resources/red.bmp


+ 28 - 0
Fuel_ASO/Settings.cs

@@ -0,0 +1,28 @@
+namespace Fuel01.Properties {
+    
+    
+    // Cette classe vous permet de gérer des événements spécifiques dans la classe de paramètres :
+    //  L'événement SettingChanging est déclenché avant la modification d'une valeur de paramètre.
+    //  L'événement PropertyChanged est déclenché après la modification d'une valeur de paramètre.
+    //  L'événement SettingsLoaded est déclenché après le chargement des valeurs de paramètre.
+    //  L'événement SettingsSaving est déclenché avant l'enregistrement des valeurs de paramètre.
+    internal sealed partial class Settings {
+        
+        public Settings() {
+            // // Pour ajouter des gestionnaires d'événements afin d'enregistrer et de modifier les paramètres, supprimez les marques de commentaire des lignes ci-dessous :
+            //
+            // this.SettingChanging += this.SettingChangingEventHandler;
+            //
+            // this.SettingsSaving += this.SettingsSavingEventHandler;
+            //
+        }
+        
+        private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
+            // Ajouter du code pour gérer l'événement SettingChangingEvent ici.
+        }
+        
+        private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
+            // Ajouter du code pour gérer l'événement SettingsSaving ici.
+        }
+    }
+}

+ 141 - 0
Fuel_ASO/TextFile1.txt

@@ -0,0 +1,141 @@
+From main.cs
+
+  #region Test
+
+        /**********************************************TEST ......................
+        /// <summary>
+        /// Test lecture xml imbriqué
+        /// </summary>
+        private void tt()
+        {
+
+            //XElement xEle = new XElement("tb_prestas", "content");//XElement.Load(Program.folder + @"\employees.xml");
+            //IEnumerable<XElement> employees = xelement.Elements();
+            //// Read the entire XML
+            //foreach (var employee in employees)
+            //{
+            //    Console.WriteLine("***********");
+            //    Console.WriteLine(employee);
+            //}
+
+            //XElement xEle = XElement.Load("..\\..\\Employees.xml");
+            XElement sxEle = new XElement("Employee",
+            new XElement("EmpId", 6),
+            new XElement("Name", "George"),
+            new XElement("Sex", "Male"),
+            new XElement("Phone", "423-555-4224", new XAttribute("Type", "Home")),
+            new XElement("Phone", "424-555-0545", new XAttribute("Type", "Work")),
+            new XElement("Address",
+                new XElement("Street", "Fred Park, East Bay"),
+                new XElement("City", "Acampo"),
+                new XElement("State", "CA"),
+                new XElement("Zip", "95220"),
+                new XElement("Country", "USA")));
+
+            XElement xEle = new XElement("tb_prestas", sxEle);
+            xEle.Save(Program.folder + @"\employees2.xml");
+            Console.WriteLine(xEle);
+        }
+        **********************************************************/
+
+        #endregion Test
+
+
+
+        /*
+         *
+           List<string> linesGlob = lines.FindAll(
+                delegate(string sr)
+                {
+                    return sr.ToUpper().Contains(".GLOBAL.");
+                }
+                );
+            List<string> linesUnik = lines.FindAll(
+                delegate(string sr)
+                {
+                    return !sr.ToUpper().Contains(".GLOBAL.");
+                }
+                );
+            foreach (string line in linesGlob)
+                readHttp_Glob(line);
+            foreach (string line in linesUnik)
+                readHttp_Unik(line);
+         *
+        private void readHttp_Glob(string url_txt)
+        {
+            Uri url = new Uri(url_txt);
+            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+            request.MaximumAutomaticRedirections = 4;
+            request.MaximumResponseHeadersLength = 4;
+            request.Credentials = CredentialCache.DefaultCredentials;
+            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
+            Stream receiveStream = response.GetResponseStream();
+            StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
+
+            streamtolist_glob(readStream);
+
+            readStream.Close();
+            response.Close();
+        }
+        private void readHttp_Unik(string url_txt)
+        {
+            Uri url = new Uri(url_txt);
+            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+            request.MaximumAutomaticRedirections = 4;
+            request.MaximumResponseHeadersLength = 4;
+            request.Credentials = CredentialCache.DefaultCredentials;
+            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
+            Stream receiveStream = response.GetResponseStream();
+            StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
+            streamtolist_uniq(readStream);
+            response.Close();
+            readStream.Close();
+        }
+        //Make Images
+        private void makePnpFromDB()
+        {
+            //the index number to write bytes to
+            long CurrentIndex = 0;
+
+            //the number of bytes to store in the array
+            int BufferSize = 4096;
+
+            //The Number of bytes returned from GetBytes() method
+            long BytesReturned;
+
+            //A byte array to hold the buffer
+            byte[] Blob = new byte[BufferSize];
+
+            string strCnx="server=localhost;user id=Patrick;password=xvtu92+2;persist security info=True;database=carbu";
+            MySql.Data.MySqlClient.MySqlConnection myCnx = new MySql.Data.MySqlClient.MySqlConnection(strCnx);
+            myCnx.Open();
+            string strCmd = "select * from pays";
+            MySql.Data.MySqlClient.MySqlCommand myCmd = new MySqlCommand(strCmd,myCnx);
+            MySqlDataReader myReader = myCmd.ExecuteReader();
+            while ( myReader.Read())
+            {
+                listBox1.Items.Add(myReader.GetString(0));
+
+                FileStream fs = new FileStream("D:\\temp\\" + myReader.GetString(0)+"_"+ myReader.GetString(1)+"_"+ myReader.GetString(2).Replace(" ","")+".png", FileMode.OpenOrCreate, FileAccess.Write);
+                BinaryWriter writer = new BinaryWriter(fs);
+                CurrentIndex = 0;
+                BytesReturned = myReader.GetBytes(3, CurrentIndex, Blob, 0, BufferSize);
+
+                while (BytesReturned == BufferSize)
+                {
+                    writer.Write(Blob);
+                    writer.Flush();
+                    CurrentIndex += BufferSize;
+                    BytesReturned = myReader.GetBytes(3, CurrentIndex, Blob, 0, BufferSize);
+                }
+
+                writer.Write(Blob, 0, (int)BytesReturned);
+                writer.Flush();
+                writer.Close();
+                fs.Close();
+            }
+            myReader.Close();
+            myCnx.Close();
+        }
+        */
+

+ 27 - 0
Fuel_ASO/Utils.cs

@@ -0,0 +1,27 @@
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Fuel01
+{
+    public static class Utils
+    {
+        public static bool SaveToJson<T>(string filename, T ds)
+        {
+            try
+            {
+                var result = JsonConvert.SerializeObject(ds,Formatting.Indented);
+                File.WriteAllText(filename, result);
+                return true;
+            }
+            catch
+            {
+                return false;
+            }
+        }
+    }
+}

+ 80 - 0
Fuel_ASO/XMLSchema1.xsd

@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xs:schema id="XMLSchema1"
+    targetNamespace="http://tempuri.org/XMLSchema1.xsd"
+    elementFormDefault="qualified"
+    xmlns="http://tempuri.org/XMLSchema1.xsd"
+    xmlns:mstns="http://tempuri.org/XMLSchema1.xsd"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
+>
+    <xs:element name='Root'>
+      <xs:complexType>
+        <xs:sequence>
+          <xs:element name='Vehicules'>
+            <xs:complexType>
+              <xs:sequence>
+                <xs:element name='Vehicule' type='VehiculeType' minOccurs='0' maxOccurs='unbounded' />
+              </xs:sequence>
+            </xs:complexType>
+          </xs:element>
+          <xs:element name='Orders'>
+            <xs:complexType>
+              <xs:sequence>
+                <xs:element name='Order' type='OrderType' minOccurs='0' maxOccurs='unbounded' />
+              </xs:sequence>
+            </xs:complexType>
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:key name='VehiculeIDKey'>
+        <xs:selector xpath='Vehicules/Vehicule'/>
+        <xs:field xpath='@VehiculeID'/>
+      </xs:key>
+      <xs:keyref name='VehiculeIDKeyRef' refer='VehiculeIDKey'>
+        <xs:selector xpath='Orders/Order'/>
+        <xs:field xpath='VehiculeID'/>
+      </xs:keyref>
+    </xs:element>
+    <xs:complexType name='VehiculeType'>
+      <xs:sequence>
+        <xs:element name='CompanyName' type='xs:string'/>
+        <xs:element name='ContactName' type='xs:string'/>
+        <xs:element name='ContactTitle' type='xs:string'/>
+        <xs:element name='Phone' type='xs:string'/>
+        <xs:element name='Fax' minOccurs='0' type='xs:string'/>
+        <xs:element name='FullAddress' type='AddressType'/>
+      </xs:sequence>
+      <xs:attribute name='VehiculeID' type='xs:token'/>
+    </xs:complexType>
+    <xs:complexType name='AddressType'>
+      <xs:sequence>
+        <xs:element name='Address' type='xs:string'/>
+        <xs:element name='City' type='xs:string'/>
+        <xs:element name='Region' type='xs:string'/>
+        <xs:element name='PostalCode' type='xs:string' />
+        <xs:element name='Country' type='xs:string'/>
+      </xs:sequence>
+      <xs:attribute name='VehiculeID' type='xs:token'/>
+    </xs:complexType>
+    <xs:complexType name='OrderType'>
+      <xs:sequence>
+        <xs:element name='VehiculeID' type='xs:token'/>
+        <xs:element name='EmployeeID' type='xs:token'/>
+        <xs:element name='OrderDate' type='xs:dateTime'/>
+        <xs:element name='RequiredDate' type='xs:dateTime'/>
+        <xs:element name='ShipInfo' type='ShipInfoType'/>
+      </xs:sequence>
+    </xs:complexType>
+    <xs:complexType name='ShipInfoType'>
+      <xs:sequence>
+        <xs:element name='ShipVia' type='xs:integer'/>
+        <xs:element name='Freight' type='xs:decimal'/>
+        <xs:element name='ShipName' type='xs:string'/>
+        <xs:element name='ShipAddress' type='xs:string'/>
+        <xs:element name='ShipCity' type='xs:string'/>
+        <xs:element name='ShipRegion' type='xs:string'/>
+        <xs:element name='ShipPostalCode' type='xs:string'/>
+        <xs:element name='ShipCountry' type='xs:string'/>
+      </xs:sequence>
+      <xs:attribute name='ShippedDate' type='xs:dateTime'/>
+    </xs:complexType>
+</xs:schema>

+ 681 - 0
Fuel_ASO/f_about.Designer.cs

@@ -0,0 +1,681 @@
+namespace Fuel01
+{
+    partial class f_about
+    {
+        /// <summary>
+        /// Variable nécessaire au concepteur.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Nettoyage des ressources utilisées.
+        /// </summary>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Code généré par le Concepteur Windows Form
+
+        /// <summary>
+        /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
+        /// le contenu de cette méthode avec l'éditeur de code.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+            this.bt_clean = new System.Windows.Forms.Button();
+            this.lblClean = new System.Windows.Forms.Label();
+            this.button3 = new System.Windows.Forms.Button();
+            this.labelProductName = new System.Windows.Forms.Label();
+            this.labelVersion = new System.Windows.Forms.Label();
+            this.labelCopyright = new System.Windows.Forms.Label();
+            this.labelCompanyName = new System.Windows.Forms.Label();
+            this.textBoxDescription = new System.Windows.Forms.TextBox();
+            this.logoPictureBox = new System.Windows.Forms.PictureBox();
+            this.pictureBox1 = new System.Windows.Forms.PictureBox();
+            this.lbl_Send = new System.Windows.Forms.Label();
+            this.button1 = new System.Windows.Forms.Button();
+            this.bt_send = new System.Windows.Forms.Button();
+            this.bt_maj = new System.Windows.Forms.Button();
+            this.okButton = new System.Windows.Forms.Button();
+            this.progressBar1 = new System.Windows.Forms.ProgressBar();
+            this.fold = new System.Windows.Forms.FolderBrowserDialog();
+            this.opfile = new System.Windows.Forms.OpenFileDialog();
+            this.label1 = new System.Windows.Forms.Label();
+            this.tabControl1 = new System.Windows.Forms.TabControl();
+            this.tabAbout = new System.Windows.Forms.TabPage();
+            this.tabParam = new System.Windows.Forms.TabPage();
+            this.checkBoxAPI = new System.Windows.Forms.CheckBox();
+            this.bt_chekAPI = new System.Windows.Forms.Button();
+            this.label6 = new System.Windows.Forms.Label();
+            this.textCopieAPI = new System.Windows.Forms.TextBox();
+            this.bt_fold = new System.Windows.Forms.Button();
+            this.label5 = new System.Windows.Forms.Label();
+            this.textCopieLocal = new System.Windows.Forms.TextBox();
+            this.bt_sav = new System.Windows.Forms.Button();
+            this.checkAll = new System.Windows.Forms.CheckBox();
+            this.checkBoxSignalR = new System.Windows.Forms.CheckBox();
+            this.checkBoxBin = new System.Windows.Forms.CheckBox();
+            this.checkBoxDatas = new System.Windows.Forms.CheckBox();
+            this.lblRes = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.textSignalR = new System.Windows.Forms.TextBox();
+            this.bt_checkR = new System.Windows.Forms.Button();
+            this.label3 = new System.Windows.Forms.Label();
+            this.textSrvBin = new System.Windows.Forms.TextBox();
+            this.bt_checkBin = new System.Windows.Forms.Button();
+            this.label2 = new System.Windows.Forms.Label();
+            this.textSrvDatas = new System.Windows.Forms.TextBox();
+            this.bt_checkDatas = new System.Windows.Forms.Button();
+            this.checkBoxLocale = new System.Windows.Forms.CheckBox();
+            this.fold2 = new System.Windows.Forms.FolderBrowserDialog();
+            this.tableLayoutPanel.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+            this.tabControl1.SuspendLayout();
+            this.tabAbout.SuspendLayout();
+            this.tabParam.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel
+            // 
+            this.tableLayoutPanel.ColumnCount = 3;
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 36.91589F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 44.04494F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 19.10112F));
+            this.tableLayoutPanel.Controls.Add(this.bt_clean, 2, 5);
+            this.tableLayoutPanel.Controls.Add(this.lblClean, 1, 5);
+            this.tableLayoutPanel.Controls.Add(this.button3, 2, 7);
+            this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0);
+            this.tableLayoutPanel.Controls.Add(this.labelVersion, 1, 1);
+            this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 2);
+            this.tableLayoutPanel.Controls.Add(this.labelCompanyName, 1, 3);
+            this.tableLayoutPanel.Controls.Add(this.textBoxDescription, 1, 4);
+            this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 4);
+            this.tableLayoutPanel.Controls.Add(this.pictureBox1, 0, 0);
+            this.tableLayoutPanel.Controls.Add(this.lbl_Send, 1, 6);
+            this.tableLayoutPanel.Controls.Add(this.button1, 1, 7);
+            this.tableLayoutPanel.Controls.Add(this.bt_send, 2, 6);
+            this.tableLayoutPanel.Controls.Add(this.bt_maj, 1, 8);
+            this.tableLayoutPanel.Controls.Add(this.okButton, 2, 8);
+            this.tableLayoutPanel.Controls.Add(this.progressBar1, 0, 9);
+            this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel.Location = new System.Drawing.Point(3, 3);
+            this.tableLayoutPanel.Name = "tableLayoutPanel";
+            this.tableLayoutPanel.RowCount = 11;
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 90F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel.Size = new System.Drawing.Size(494, 337);
+            this.tableLayoutPanel.TabIndex = 0;
+            this.tableLayoutPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.tableLayoutPanel_Paint);
+            // 
+            // bt_clean
+            // 
+            this.bt_clean.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.bt_clean.Location = new System.Drawing.Point(416, 173);
+            this.bt_clean.Name = "bt_clean";
+            this.bt_clean.Size = new System.Drawing.Size(75, 24);
+            this.bt_clean.TabIndex = 34;
+            this.bt_clean.Text = "Nettoyage";
+            this.bt_clean.UseVisualStyleBackColor = true;
+            this.bt_clean.Click += new System.EventHandler(this.bt_clean_Click);
+            // 
+            // lblClean
+            // 
+            this.lblClean.Location = new System.Drawing.Point(185, 170);
+            this.lblClean.Name = "lblClean";
+            this.lblClean.Size = new System.Drawing.Size(189, 27);
+            this.lblClean.TabIndex = 33;
+            this.lblClean.Text = "Nettoyage des données \r\n(fichiers inutiles)";
+            this.lblClean.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // button3
+            // 
+            this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.button3.Location = new System.Drawing.Point(416, 233);
+            this.button3.Name = "button3";
+            this.button3.Size = new System.Drawing.Size(75, 24);
+            this.button3.TabIndex = 30;
+            this.button3.Text = "Restauration";
+            this.button3.UseVisualStyleBackColor = true;
+            this.button3.Click += new System.EventHandler(this.button2_Click);
+            // 
+            // labelProductName
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.labelProductName, 2);
+            this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.labelProductName.Location = new System.Drawing.Point(188, 0);
+            this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
+            this.labelProductName.Name = "labelProductName";
+            this.labelProductName.Size = new System.Drawing.Size(303, 20);
+            this.labelProductName.TabIndex = 19;
+            this.labelProductName.Text = "Nom du produit";
+            this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // labelVersion
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.labelVersion, 2);
+            this.labelVersion.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.labelVersion.Location = new System.Drawing.Point(188, 20);
+            this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
+            this.labelVersion.Name = "labelVersion";
+            this.labelVersion.Size = new System.Drawing.Size(303, 20);
+            this.labelVersion.TabIndex = 0;
+            this.labelVersion.Text = "Version Version Version Version";
+            this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // labelCopyright
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.labelCopyright, 2);
+            this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.labelCopyright.Location = new System.Drawing.Point(188, 40);
+            this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
+            this.labelCopyright.Name = "labelCopyright";
+            this.labelCopyright.Size = new System.Drawing.Size(303, 20);
+            this.labelCopyright.TabIndex = 21;
+            this.labelCopyright.Text = "Copyright";
+            this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // labelCompanyName
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.labelCompanyName, 2);
+            this.labelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.labelCompanyName.Location = new System.Drawing.Point(188, 60);
+            this.labelCompanyName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
+            this.labelCompanyName.Name = "labelCompanyName";
+            this.labelCompanyName.Size = new System.Drawing.Size(303, 20);
+            this.labelCompanyName.TabIndex = 22;
+            this.labelCompanyName.Text = "Nom de la société";
+            this.labelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // textBoxDescription
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxDescription, 2);
+            this.textBoxDescription.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.textBoxDescription.Location = new System.Drawing.Point(188, 83);
+            this.textBoxDescription.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3);
+            this.textBoxDescription.Multiline = true;
+            this.textBoxDescription.Name = "textBoxDescription";
+            this.textBoxDescription.ReadOnly = true;
+            this.textBoxDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both;
+            this.textBoxDescription.Size = new System.Drawing.Size(303, 84);
+            this.textBoxDescription.TabIndex = 23;
+            this.textBoxDescription.TabStop = false;
+            this.textBoxDescription.Text = "Patrick Germain\r\npgermain@aformatix.com\r\ntel : 04 94 00 39 40\r\nmob: 06 07 02 66 8" +
+    "2\r\n";
+            // 
+            // logoPictureBox
+            // 
+            this.logoPictureBox.Image = global::Fuel01.Properties.Resources.aPompe;
+            this.logoPictureBox.Location = new System.Drawing.Point(3, 83);
+            this.logoPictureBox.Name = "logoPictureBox";
+            this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 3);
+            this.logoPictureBox.Size = new System.Drawing.Size(127, 144);
+            this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
+            this.logoPictureBox.TabIndex = 12;
+            this.logoPictureBox.TabStop = false;
+            // 
+            // pictureBox1
+            // 
+            this.pictureBox1.Image = global::Fuel01.Properties.Resources.aax3;
+            this.pictureBox1.Location = new System.Drawing.Point(3, 3);
+            this.pictureBox1.Name = "pictureBox1";
+            this.tableLayoutPanel.SetRowSpan(this.pictureBox1, 4);
+            this.pictureBox1.Size = new System.Drawing.Size(158, 74);
+            this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
+            this.pictureBox1.TabIndex = 26;
+            this.pictureBox1.TabStop = false;
+            // 
+            // lbl_Send
+            // 
+            this.lbl_Send.Location = new System.Drawing.Point(185, 200);
+            this.lbl_Send.Name = "lbl_Send";
+            this.lbl_Send.Size = new System.Drawing.Size(189, 27);
+            this.lbl_Send.TabIndex = 32;
+            this.lbl_Send.Text = "Envoi des données pour saisie tablettes\r\n";
+            this.lbl_Send.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // button1
+            // 
+            this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.button1.Location = new System.Drawing.Point(321, 233);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(75, 24);
+            this.button1.TabIndex = 28;
+            this.button1.Text = "Sauvegarde";
+            this.button1.UseVisualStyleBackColor = true;
+            this.button1.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // bt_send
+            // 
+            this.bt_send.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.bt_send.Location = new System.Drawing.Point(416, 203);
+            this.bt_send.Name = "bt_send";
+            this.bt_send.Size = new System.Drawing.Size(75, 24);
+            this.bt_send.TabIndex = 31;
+            this.bt_send.Text = "Envoi Serveur";
+            this.bt_send.UseVisualStyleBackColor = true;
+            this.bt_send.Click += new System.EventHandler(this.bt_send_Click);
+            // 
+            // bt_maj
+            // 
+            this.bt_maj.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.bt_maj.Location = new System.Drawing.Point(321, 263);
+            this.bt_maj.Name = "bt_maj";
+            this.bt_maj.Size = new System.Drawing.Size(75, 24);
+            this.bt_maj.TabIndex = 35;
+            this.bt_maj.Text = "MAJ";
+            this.bt_maj.UseVisualStyleBackColor = true;
+            this.bt_maj.Click += new System.EventHandler(this.button2_Click_1);
+            // 
+            // okButton
+            // 
+            this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.okButton.Location = new System.Drawing.Point(416, 263);
+            this.okButton.Name = "okButton";
+            this.okButton.Size = new System.Drawing.Size(75, 24);
+            this.okButton.TabIndex = 24;
+            this.okButton.Text = "&Fermer";
+            this.okButton.Click += new System.EventHandler(this.okButton_Click);
+            // 
+            // progressBar1
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.progressBar1, 3);
+            this.progressBar1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.progressBar1.Location = new System.Drawing.Point(3, 293);
+            this.progressBar1.Name = "progressBar1";
+            this.progressBar1.Size = new System.Drawing.Size(488, 14);
+            this.progressBar1.TabIndex = 36;
+            // 
+            // opfile
+            // 
+            this.opfile.FileName = "*.zip";
+            // 
+            // label1
+            // 
+            this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label1.ForeColor = System.Drawing.Color.Red;
+            this.label1.Location = new System.Drawing.Point(21, 95);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(460, 40);
+            this.label1.TabIndex = 1;
+            this.label1.Text = "Envoi en cours";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label1.Visible = false;
+            // 
+            // tabControl1
+            // 
+            this.tabControl1.Controls.Add(this.tabAbout);
+            this.tabControl1.Controls.Add(this.tabParam);
+            this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tabControl1.Location = new System.Drawing.Point(9, 9);
+            this.tabControl1.Name = "tabControl1";
+            this.tabControl1.SelectedIndex = 0;
+            this.tabControl1.Size = new System.Drawing.Size(508, 369);
+            this.tabControl1.TabIndex = 2;
+            // 
+            // tabAbout
+            // 
+            this.tabAbout.Controls.Add(this.label1);
+            this.tabAbout.Controls.Add(this.tableLayoutPanel);
+            this.tabAbout.Location = new System.Drawing.Point(4, 22);
+            this.tabAbout.Name = "tabAbout";
+            this.tabAbout.Padding = new System.Windows.Forms.Padding(3);
+            this.tabAbout.Size = new System.Drawing.Size(500, 343);
+            this.tabAbout.TabIndex = 0;
+            this.tabAbout.Text = "Informations";
+            this.tabAbout.UseVisualStyleBackColor = true;
+            // 
+            // tabParam
+            // 
+            this.tabParam.Controls.Add(this.checkBoxAPI);
+            this.tabParam.Controls.Add(this.bt_chekAPI);
+            this.tabParam.Controls.Add(this.label6);
+            this.tabParam.Controls.Add(this.textCopieAPI);
+            this.tabParam.Controls.Add(this.bt_fold);
+            this.tabParam.Controls.Add(this.label5);
+            this.tabParam.Controls.Add(this.textCopieLocal);
+            this.tabParam.Controls.Add(this.bt_sav);
+            this.tabParam.Controls.Add(this.checkAll);
+            this.tabParam.Controls.Add(this.checkBoxSignalR);
+            this.tabParam.Controls.Add(this.checkBoxBin);
+            this.tabParam.Controls.Add(this.checkBoxDatas);
+            this.tabParam.Controls.Add(this.lblRes);
+            this.tabParam.Controls.Add(this.label4);
+            this.tabParam.Controls.Add(this.textSignalR);
+            this.tabParam.Controls.Add(this.bt_checkR);
+            this.tabParam.Controls.Add(this.label3);
+            this.tabParam.Controls.Add(this.textSrvBin);
+            this.tabParam.Controls.Add(this.bt_checkBin);
+            this.tabParam.Controls.Add(this.label2);
+            this.tabParam.Controls.Add(this.textSrvDatas);
+            this.tabParam.Controls.Add(this.bt_checkDatas);
+            this.tabParam.Controls.Add(this.checkBoxLocale);
+            this.tabParam.Location = new System.Drawing.Point(4, 22);
+            this.tabParam.Name = "tabParam";
+            this.tabParam.Padding = new System.Windows.Forms.Padding(3);
+            this.tabParam.Size = new System.Drawing.Size(500, 343);
+            this.tabParam.TabIndex = 1;
+            this.tabParam.Text = "Paramètres";
+            this.tabParam.UseVisualStyleBackColor = true;
+            // 
+            // checkBoxAPI
+            // 
+            this.checkBoxAPI.AutoSize = true;
+            this.checkBoxAPI.Checked = true;
+            this.checkBoxAPI.CheckState = System.Windows.Forms.CheckState.Indeterminate;
+            this.checkBoxAPI.Location = new System.Drawing.Point(362, 168);
+            this.checkBoxAPI.Name = "checkBoxAPI";
+            this.checkBoxAPI.Size = new System.Drawing.Size(55, 17);
+            this.checkBoxAPI.TabIndex = 60;
+            this.checkBoxAPI.Text = "Vérifié";
+            this.checkBoxAPI.UseVisualStyleBackColor = true;
+            // 
+            // bt_chekAPI
+            // 
+            this.bt_chekAPI.Location = new System.Drawing.Point(256, 163);
+            this.bt_chekAPI.Name = "bt_chekAPI";
+            this.bt_chekAPI.Size = new System.Drawing.Size(89, 23);
+            this.bt_chekAPI.TabIndex = 59;
+            this.bt_chekAPI.Text = "Vérifier serveur";
+            this.bt_chekAPI.UseVisualStyleBackColor = true;
+            this.bt_chekAPI.Click += new System.EventHandler(this.bt_check_Click);
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(3, 172);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(162, 13);
+            this.label6.TabIndex = 58;
+            this.label6.Text = "Adresse pour envoi des données";
+            // 
+            // textCopieAPI
+            // 
+            this.textCopieAPI.Location = new System.Drawing.Point(35, 187);
+            this.textCopieAPI.Name = "textCopieAPI";
+            this.textCopieAPI.Size = new System.Drawing.Size(382, 20);
+            this.textCopieAPI.TabIndex = 57;
+            // 
+            // bt_fold
+            // 
+            this.bt_fold.Location = new System.Drawing.Point(436, 228);
+            this.bt_fold.Name = "bt_fold";
+            this.bt_fold.Size = new System.Drawing.Size(24, 23);
+            this.bt_fold.TabIndex = 56;
+            this.bt_fold.Text = "...";
+            this.bt_fold.UseVisualStyleBackColor = true;
+            this.bt_fold.Click += new System.EventHandler(this.bt_fold_Click);
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(2, 216);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(218, 13);
+            this.label5.TabIndex = 54;
+            this.label5.Text = "Chemin pour copie locale vers le serveur ISS";
+            // 
+            // textCopieLocal
+            // 
+            this.textCopieLocal.DataBindings.Add(new System.Windows.Forms.Binding("Enabled", global::Fuel01.Properties.Settings.Default, "use_locale", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
+            this.textCopieLocal.Enabled = global::Fuel01.Properties.Settings.Default.use_locale;
+            this.textCopieLocal.Location = new System.Drawing.Point(35, 231);
+            this.textCopieLocal.Name = "textCopieLocal";
+            this.textCopieLocal.Size = new System.Drawing.Size(382, 20);
+            this.textCopieLocal.TabIndex = 53;
+            // 
+            // bt_sav
+            // 
+            this.bt_sav.Location = new System.Drawing.Point(318, 309);
+            this.bt_sav.Name = "bt_sav";
+            this.bt_sav.Size = new System.Drawing.Size(99, 23);
+            this.bt_sav.TabIndex = 52;
+            this.bt_sav.Text = "Sauvegarder";
+            this.bt_sav.UseVisualStyleBackColor = true;
+            this.bt_sav.Click += new System.EventHandler(this.bt_sav_Click);
+            // 
+            // checkAll
+            // 
+            this.checkAll.AutoSize = true;
+            this.checkAll.Location = new System.Drawing.Point(47, 313);
+            this.checkAll.Name = "checkAll";
+            this.checkAll.Size = new System.Drawing.Size(265, 17);
+            this.checkAll.TabIndex = 51;
+            this.checkAll.Text = "Forcer la sauvegarde des données non vérifiées !!!";
+            this.checkAll.UseVisualStyleBackColor = true;
+            // 
+            // checkBoxSignalR
+            // 
+            this.checkBoxSignalR.AutoSize = true;
+            this.checkBoxSignalR.Checked = true;
+            this.checkBoxSignalR.CheckState = System.Windows.Forms.CheckState.Indeterminate;
+            this.checkBoxSignalR.Location = new System.Drawing.Point(362, 122);
+            this.checkBoxSignalR.Name = "checkBoxSignalR";
+            this.checkBoxSignalR.Size = new System.Drawing.Size(55, 17);
+            this.checkBoxSignalR.TabIndex = 50;
+            this.checkBoxSignalR.Text = "Vérifié";
+            this.checkBoxSignalR.UseVisualStyleBackColor = true;
+            // 
+            // checkBoxBin
+            // 
+            this.checkBoxBin.AutoSize = true;
+            this.checkBoxBin.Checked = true;
+            this.checkBoxBin.CheckState = System.Windows.Forms.CheckState.Indeterminate;
+            this.checkBoxBin.Location = new System.Drawing.Point(362, 69);
+            this.checkBoxBin.Name = "checkBoxBin";
+            this.checkBoxBin.Size = new System.Drawing.Size(55, 17);
+            this.checkBoxBin.TabIndex = 49;
+            this.checkBoxBin.Text = "Vérifié";
+            this.checkBoxBin.UseVisualStyleBackColor = true;
+            // 
+            // checkBoxDatas
+            // 
+            this.checkBoxDatas.AutoSize = true;
+            this.checkBoxDatas.Checked = true;
+            this.checkBoxDatas.CheckState = System.Windows.Forms.CheckState.Indeterminate;
+            this.checkBoxDatas.Location = new System.Drawing.Point(362, 10);
+            this.checkBoxDatas.Name = "checkBoxDatas";
+            this.checkBoxDatas.Size = new System.Drawing.Size(55, 17);
+            this.checkBoxDatas.TabIndex = 48;
+            this.checkBoxDatas.Text = "Vérifié";
+            this.checkBoxDatas.UseVisualStyleBackColor = true;
+            // 
+            // lblRes
+            // 
+            this.lblRes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblRes.AutoSize = true;
+            this.lblRes.Location = new System.Drawing.Point(444, 314);
+            this.lblRes.Name = "lblRes";
+            this.lblRes.Size = new System.Drawing.Size(16, 13);
+            this.lblRes.TabIndex = 47;
+            this.lblRes.Text = "...";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(3, 126);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(138, 13);
+            this.label4.TabIndex = 46;
+            this.label4.Text = "Adresse du serveur SignalR";
+            // 
+            // textSignalR
+            // 
+            this.textSignalR.Location = new System.Drawing.Point(39, 141);
+            this.textSignalR.Name = "textSignalR";
+            this.textSignalR.Size = new System.Drawing.Size(382, 20);
+            this.textSignalR.TabIndex = 44;
+            // 
+            // bt_checkR
+            // 
+            this.bt_checkR.Location = new System.Drawing.Point(256, 117);
+            this.bt_checkR.Name = "bt_checkR";
+            this.bt_checkR.Size = new System.Drawing.Size(89, 23);
+            this.bt_checkR.TabIndex = 45;
+            this.bt_checkR.Text = "Vérifier serveur";
+            this.bt_checkR.UseVisualStyleBackColor = true;
+            this.bt_checkR.Click += new System.EventHandler(this.bt_check_Click);
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(3, 73);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(236, 13);
+            this.label3.TabIndex = 43;
+            this.label3.Text = "Adresse du serveur pour la mise à jour du logiciel";
+            // 
+            // textSrvBin
+            // 
+            this.textSrvBin.Location = new System.Drawing.Point(39, 88);
+            this.textSrvBin.Name = "textSrvBin";
+            this.textSrvBin.Size = new System.Drawing.Size(382, 20);
+            this.textSrvBin.TabIndex = 41;
+            // 
+            // bt_checkBin
+            // 
+            this.bt_checkBin.Location = new System.Drawing.Point(256, 64);
+            this.bt_checkBin.Name = "bt_checkBin";
+            this.bt_checkBin.Size = new System.Drawing.Size(89, 23);
+            this.bt_checkBin.TabIndex = 42;
+            this.bt_checkBin.Text = "Vérifier serveur";
+            this.bt_checkBin.UseVisualStyleBackColor = true;
+            this.bt_checkBin.Click += new System.EventHandler(this.bt_check_Click);
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(3, 14);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(244, 13);
+            this.label2.TabIndex = 40;
+            this.label2.Text = "Adresse du serveur pour la récupération des datas";
+            // 
+            // textSrvDatas
+            // 
+            this.textSrvDatas.Location = new System.Drawing.Point(39, 29);
+            this.textSrvDatas.Name = "textSrvDatas";
+            this.textSrvDatas.Size = new System.Drawing.Size(382, 20);
+            this.textSrvDatas.TabIndex = 38;
+            // 
+            // bt_checkDatas
+            // 
+            this.bt_checkDatas.Location = new System.Drawing.Point(256, 5);
+            this.bt_checkDatas.Name = "bt_checkDatas";
+            this.bt_checkDatas.Size = new System.Drawing.Size(89, 23);
+            this.bt_checkDatas.TabIndex = 39;
+            this.bt_checkDatas.Text = "Vérifier serveur";
+            this.bt_checkDatas.UseVisualStyleBackColor = true;
+            this.bt_checkDatas.Click += new System.EventHandler(this.bt_check_Click);
+            // 
+            // checkBoxLocale
+            // 
+            this.checkBoxLocale.AutoSize = true;
+            this.checkBoxLocale.Checked = global::Fuel01.Properties.Settings.Default.use_locale;
+            this.checkBoxLocale.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::Fuel01.Properties.Settings.Default, "use_locale", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
+            this.checkBoxLocale.Location = new System.Drawing.Point(236, 215);
+            this.checkBoxLocale.Name = "checkBoxLocale";
+            this.checkBoxLocale.Size = new System.Drawing.Size(128, 17);
+            this.checkBoxLocale.TabIndex = 55;
+            this.checkBoxLocale.Text = "Utiliser la copie locale";
+            this.checkBoxLocale.UseVisualStyleBackColor = true;
+            // 
+            // f_about
+            // 
+            this.AcceptButton = this.okButton;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(526, 387);
+            this.Controls.Add(this.tabControl1);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "f_about";
+            this.Padding = new System.Windows.Forms.Padding(9);
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "A propos";
+            this.Load += new System.EventHandler(this.f_about_Load);
+            this.tableLayoutPanel.ResumeLayout(false);
+            this.tableLayoutPanel.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+            this.tabControl1.ResumeLayout(false);
+            this.tabAbout.ResumeLayout(false);
+            this.tabParam.ResumeLayout(false);
+            this.tabParam.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
+        private System.Windows.Forms.PictureBox logoPictureBox;
+        private System.Windows.Forms.Label labelProductName;
+        private System.Windows.Forms.Label labelVersion;
+        private System.Windows.Forms.Label labelCopyright;
+        private System.Windows.Forms.Label labelCompanyName;
+        private System.Windows.Forms.TextBox textBoxDescription;
+        private System.Windows.Forms.Button okButton;
+        private System.Windows.Forms.PictureBox pictureBox1;
+        private System.Windows.Forms.FolderBrowserDialog fold;
+        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.OpenFileDialog opfile;
+        private System.Windows.Forms.Button button3;
+        private System.Windows.Forms.Button bt_send;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button bt_clean;
+        private System.Windows.Forms.Label lblClean;
+        private System.Windows.Forms.Label lbl_Send;
+        private System.Windows.Forms.Button bt_maj;
+        private System.Windows.Forms.ProgressBar progressBar1;
+        private System.Windows.Forms.TabControl tabControl1;
+        private System.Windows.Forms.TabPage tabAbout;
+        private System.Windows.Forms.TabPage tabParam;
+        private System.Windows.Forms.Button bt_checkDatas;
+        private System.Windows.Forms.TextBox textSrvDatas;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.TextBox textSrvBin;
+        private System.Windows.Forms.Button bt_checkBin;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.TextBox textSignalR;
+        private System.Windows.Forms.Button bt_checkR;
+        private System.Windows.Forms.Label lblRes;
+        private System.Windows.Forms.CheckBox checkBoxSignalR;
+        private System.Windows.Forms.CheckBox checkBoxBin;
+        private System.Windows.Forms.CheckBox checkBoxDatas;
+        private System.Windows.Forms.Button bt_sav;
+        private System.Windows.Forms.CheckBox checkAll;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.TextBox textCopieLocal;
+        private System.Windows.Forms.CheckBox checkBoxLocale;
+        private System.Windows.Forms.FolderBrowserDialog fold2;
+        private System.Windows.Forms.Button bt_fold;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.TextBox textCopieAPI;
+        private System.Windows.Forms.CheckBox checkBoxAPI;
+        private System.Windows.Forms.Button bt_chekAPI;
+    }
+}

+ 414 - 0
Fuel_ASO/f_about.cs

@@ -0,0 +1,414 @@
+using Ionic.Utils.Zip;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Reflection;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+
+namespace Fuel01
+{
+    partial class f_about : Form
+    {
+        string runApp = "";
+        Boolean isSending = false;
+        public f_about()
+        {
+            InitializeComponent();
+            this.Text = String.Format("À propos de {0}", AssemblyTitle);
+            this.labelProductName.Text = AssemblyProduct;
+
+            string[] strVersion = AssemblyVersion.Split('.');
+            double version = Convert.ToDouble(strVersion[0]) * 100000 + Convert.ToDouble(strVersion[1]) * 1000 + Convert.ToDouble(strVersion[2])+ Convert.ToDouble(strVersion[3])/10000;
+            double baseVersion = 0;
+
+            WebRequest request = WebRequest.Create(Properties.Settings.Default.server_adress_bin+".txt");
+            try
+            {
+                WebResponse response = request.GetResponse();
+                StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.ASCII);
+                string retour = sr.ReadToEnd();
+                sr.Close();
+                
+                if (double.TryParse(retour, out baseVersion))
+                    if (baseVersion > version)
+                        bt_maj.BackColor = Color.LightGreen;
+            }
+            catch (Exception e) {; }
+
+            this.labelVersion.Text = String.Format("Version {0}-{1}-{2}", AssemblyVersion,version,baseVersion);
+            this.labelCopyright.Text = AssemblyCopyright;
+            this.labelCompanyName.Text = AssemblyCompany;
+            this.textBoxDescription.Text = AssemblyDescription+"\r\n"+ this.textBoxDescription.Text;
+            this.textBoxDescription.Text += "\r\n" + Program.folder;
+            this.textBoxDescription.Text += "\r\n" + Program.subfolder;
+
+            textSrvDatas.Text = Properties.Settings.Default.server_adress_datas;
+            textSrvBin.Text = Properties.Settings.Default.server_adress_bin;
+            textSignalR.Text = Properties.Settings.Default.server_signalr;
+            textCopieLocal.Text = Properties.Settings.Default.chemin_copie_locale;
+            checkBoxLocale.Checked = Properties.Settings.Default.use_locale;
+            textCopieAPI.Text = Properties.Settings.Default.adresse_copie_api;
+
+            bt_send.Enabled = File.Exists(Program.subfolder + @"\station.json"); 
+        }
+
+        #region Accesseurs d'attribut de l'assembly
+
+        public string AssemblyTitle
+        {
+            get
+            {
+                object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
+                if (attributes.Length > 0)
+                {
+                    AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0];
+                    if (titleAttribute.Title != "")
+                    {
+                        return titleAttribute.Title;
+                    }
+                }
+                return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase);
+            }
+        }
+
+        public string AssemblyVersion
+        {
+            get
+            {
+                return Assembly.GetExecutingAssembly().GetName().Version.ToString();
+            }
+        }
+
+        public string AssemblyDescription
+        {
+            get
+            {
+                object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false);
+                if (attributes.Length == 0)
+                {
+                    return "";
+                }
+                return ((AssemblyDescriptionAttribute)attributes[0]).Description;
+            }
+        }
+
+        public string AssemblyProduct
+        {
+            get
+            {
+                object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false);
+                if (attributes.Length == 0)
+                {
+                    return "";
+                }
+                return ((AssemblyProductAttribute)attributes[0]).Product;
+            }
+        }
+
+        public string AssemblyCopyright
+        {
+            get
+            {
+                object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false);
+                if (attributes.Length == 0)
+                {
+                    return "";
+                }
+                return ((AssemblyCopyrightAttribute)attributes[0]).Copyright;
+            }
+        }
+
+        public string AssemblyCompany
+        {
+            get
+            {
+                object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false);
+                if (attributes.Length == 0)
+                {
+                    return "";
+                }
+                return ((AssemblyCompanyAttribute)attributes[0]).Company;
+            }
+        }
+        #endregion
+
+        private void tableLayoutPanel_Paint(object sender, PaintEventArgs e)
+        {
+
+        }
+
+        private void button2_Click(object sender, EventArgs e)
+        {
+
+            DialogResult dr = opfile.ShowDialog();
+            if (dr == DialogResult.OK)
+            {
+                string filename = opfile.FileName;
+                f_extract res = new f_extract(filename);
+                res.ShowDialog();
+            }
+
+        }
+
+        private void button1_Click(object sender, EventArgs e)
+        {
+            fold.Description = "Sélectionnez le répertoire où sera enregistrée l'archive";
+            DialogResult dr = fold.ShowDialog();
+
+            if (dr == DialogResult.OK)
+            {
+                DateTime dt = DateTime.Now;
+                string filename = fold.SelectedPath + @"\Result_" +dt.ToString("yy_MM_dd_hh_mm_ss") + ".txt";
+                StreamWriter writer = File.CreateText(filename);
+                var zip = new ZipFile(fold.SelectedPath + @"\Backup_" +dt.ToString("yy_MM_dd_hh_mm_ss") + ".zip", writer);
+                string tmpDir= Path.GetTempPath();
+                if (! Directory.Exists(tmpDir))
+                    tmpDir= Environment.GetEnvironmentVariable("temp");
+                if (!Directory.Exists(tmpDir))
+                    tmpDir = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
+                zip.TempFileFolder = tmpDir;
+                zip.AddDirectory(Program.folder, "AsoFuel");
+                zip.Save();
+                writer.Close();
+                f_result res = new f_result(filename, zip.Name);
+                res.ShowDialog();
+            }
+        }
+
+        private void bt_send_Click(object sender, EventArgs e)
+        {
+            label1.Visible = true;
+            this.Cursor = Cursors.WaitCursor;
+            System.Windows.Forms.Application.DoEvents();
+            DateTime deb = DateTime.Now;
+
+            Properties.Settings.Default.chemin_copie_locale = textCopieLocal.Text;
+            if (Properties.Settings.Default.use_locale)
+            {
+                File.Copy(Program.subfolder + @"\station.json", Properties.Settings.Default.chemin_copie_locale + @"\station.json", true);
+                File.Copy(Program.subfolder + @"\presta.json", Properties.Settings.Default.chemin_copie_locale + @"\presta.json", true);
+                File.Copy(Program.subfolder + @"\vehicule.json", Properties.Settings.Default.chemin_copie_locale + @"\vehicule.json", true);
+                File.Copy(Program.folder + @"\param\produit.json", Properties.Settings.Default.chemin_copie_locale + @"\produit.json", true);
+                sendFile(Program.subfolder + @"\station.json", 2);
+                sendFile(Program.subfolder + @"\presta.json", 2);
+                sendFile(Program.subfolder + @"\vehicule.json", 2);
+                sendFile(Program.folder + @"\param\produit.json", 2);
+            }
+            else
+            {
+
+                sendFile(Program.subfolder + @"\station.json",3);
+                sendFile(Program.subfolder + @"\presta.json",3);
+                sendFile(Program.subfolder + @"\vehicule.json",3);
+                sendFile(Program.folder + @"\param\produit.json",3);
+
+            }
+            Thread.Sleep(5000);
+            label1.Visible = false;
+            this.Cursor = Cursors.Default;
+            System.Windows.Forms.Application.DoEvents();
+            
+        }
+
+        private void sendFile(string fileName,int mode)
+        {
+            isSending = true;
+            if ( (mode & 1)==1)
+            {
+                string chaine = Properties.Settings.Default.adresse_copie_api;
+                WebClient client = new WebClient();
+                client.UploadProgressChanged += new UploadProgressChangedEventHandler(Client_UploadProgressChanged);
+                client.UploadFileCompleted += new UploadFileCompletedEventHandler(Client_UploadFileCompleted);
+                client.UploadFileAsync(new Uri(chaine), "POST", fileName);
+            }
+            if ((mode & 2) == 2)
+            {
+                string chaine2 = @"http://www.aformatix.com/ASOStationService/api/FileUpLoad/upLoadFiles";
+                WebClient clientAfo = new WebClient();
+                clientAfo.UploadFileAsync(new Uri(chaine2), "POST", fileName);
+            }
+
+        }
+
+        private void Client_UploadFileCompleted(object sender, UploadFileCompletedEventArgs e)
+        {
+            isSending = false;
+        }
+
+        private void Client_UploadProgressChanged(object sender, UploadProgressChangedEventArgs e)
+        {
+            double bytesIn = double.Parse(e.BytesSent.ToString());
+            double totalBytes = double.Parse(e.TotalBytesToSend.ToString());
+            double percentage = bytesIn / totalBytes * 100;
+
+            progressBar1.Value = int.Parse(Math.Truncate(percentage).ToString());
+
+
+        }
+
+        private void f_about_Load(object sender, EventArgs e)
+        {
+
+        }
+
+        private void okButton_Click(object sender, EventArgs e)
+        {
+
+        }
+
+        private void bt_clean_Click(object sender, EventArgs e)
+        {
+            f_clean fclean = new f_clean();
+            fclean.ShowDialog();
+        }
+
+        private void button2_Click_1(object sender, EventArgs e)
+        {
+            string appName = Properties.Settings.Default.server_adress_bin.Substring(Properties.Settings.Default.server_adress_bin.LastIndexOf('/')+1);
+            string chaine = Properties.Settings.Default.server_adress_bin;
+            string tmpDir = Path.GetTempPath();
+            if (!Directory.Exists(tmpDir))
+                tmpDir = Environment.GetEnvironmentVariable("temp");
+            if (!Directory.Exists(tmpDir))
+                tmpDir = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
+
+            WebClient client = new WebClient();
+            client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(client_DownloadProgressChanged);
+            client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_DownloadFileCompleted);
+
+            try
+            {
+                runApp = tmpDir + appName;
+                if (File.Exists(runApp))
+                    File.Delete(runApp);
+
+                client.DownloadFileAsync(new Uri(chaine), tmpDir + appName);
+            }
+            catch
+            {
+                runApp = "";
+                MessageBox.Show("Le téléchargement a échoué");
+            }
+            bt_maj.Text = "En cours..";
+            bt_maj.Enabled = false; ;
+
+        }
+
+        void client_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
+        {
+            double bytesIn = double.Parse(e.BytesReceived.ToString());
+            double totalBytes = double.Parse(e.TotalBytesToReceive.ToString());
+            double percentage = bytesIn / totalBytes * 100;
+
+            progressBar1.Value = int.Parse(Math.Truncate(percentage).ToString());
+        }
+
+        void client_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
+        {
+            if (MessageBox.Show("L'application va se terminer et l'installation de la nouvelle commencer!!", "Téléchargement Terminé", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) == DialogResult.OK)
+            {
+
+                ProcessStartInfo myprocessStartInfo = new ProcessStartInfo(runApp);
+                Process install = new Process();
+                install.StartInfo = myprocessStartInfo;
+                install.Start();
+                System.Windows.Forms.Application.Exit();
+            }
+            bt_maj.Text = "MAJ";
+            bt_maj.Enabled = true;
+            bt_maj.BackColor = Color.Transparent; 
+
+        }
+
+        private void bt_check_Click(object sender, EventArgs e)
+        {
+            TextBox from = null;
+            CheckBox chk = null;
+            if ((Button)sender == bt_checkBin)
+            {
+                from = textSrvBin;
+                chk = checkBoxBin;
+            }
+            if ((Button)sender == bt_checkDatas)
+            {
+                from = textSrvDatas;
+                chk = checkBoxDatas;
+            }
+            if ((Button)sender == bt_checkR)
+            {
+                from = textSignalR;
+                chk = checkBoxSignalR;
+            }
+            if ((Button)sender == bt_chekAPI)
+            {
+                from = textCopieAPI;
+                chk = checkBoxAPI;
+            }
+
+            lblRes.Text = "....";
+            bool result = checkUrl(from.Text + ( (Button)sender == bt_chekAPI ? "test" : "" ));
+            chk.CheckState = result ? CheckState.Checked :CheckState.Unchecked ;
+            lblRes.Text= result.ToString();
+
+        }
+
+
+        private bool checkUrl(string url)
+        {
+            bool ret = false;
+
+            try
+            {
+                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+                request.Timeout = 5000; 
+                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
+                ret = true;
+                response.Dispose();               
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show(ex.Message);
+            }
+
+            return ret;
+
+        }
+
+        private void bt_sav_Click(object sender, EventArgs e)
+        {
+            if ( checkBoxDatas.CheckState == CheckState.Checked || checkAll.Checked )
+                Properties.Settings.Default.server_adress_datas=textSrvDatas.Text ;
+            if (checkBoxBin.CheckState == CheckState.Checked || checkAll.Checked)
+                Properties.Settings.Default.server_adress_bin= textSrvBin.Text ;
+            if (checkBoxSignalR.CheckState == CheckState.Checked || checkAll.Checked)
+                Properties.Settings.Default.server_signalr= textSignalR.Text ;
+
+            Properties.Settings.Default.chemin_copie_locale = textCopieLocal.Text;
+            Properties.Settings.Default.use_locale = checkBoxLocale.Checked;
+            if (checkBoxAPI.CheckState == CheckState.Checked || checkAll.Checked)
+                Properties.Settings.Default.adresse_copie_api = textCopieAPI.Text;
+
+            Properties.Settings.Default.Save();
+
+        }
+
+        private void bt_fold_Click(object sender, EventArgs e)
+        {
+            fold2.SelectedPath = textCopieLocal.Text;
+            DialogResult res = fold2.ShowDialog();
+            if (res == DialogResult.OK)
+                textCopieLocal.Text = fold2.SelectedPath; 
+
+        }
+    }
+}

+ 129 - 0
Fuel_ASO/f_about.resx

@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="fold.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="opfile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>90, 17</value>
+  </metadata>
+  <metadata name="fold2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>172, 17</value>
+  </metadata>
+</root>

+ 235 - 0
Fuel_ASO/f_clean.Designer.cs

@@ -0,0 +1,235 @@
+namespace Fuel01
+{
+    partial class f_clean
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.button1 = new System.Windows.Forms.Button();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer3 = new System.Windows.Forms.SplitContainer();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.myTable = new System.Windows.Forms.TableLayoutPanel();
+            this.bt_close = new System.Windows.Forms.Button();
+            this.bt_do = new System.Windows.Forms.Button();
+            this.bt_sel = new System.Windows.Forms.Button();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
+            this.splitContainer3.Panel1.SuspendLayout();
+            this.splitContainer3.Panel2.SuspendLayout();
+            this.splitContainer3.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // button1
+            // 
+            this.button1.Location = new System.Drawing.Point(21, 3);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(75, 23);
+            this.button1.TabIndex = 0;
+            this.button1.Text = "button1";
+            this.button1.UseVisualStyleBackColor = true;
+            this.button1.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.splitContainer3);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.bt_sel);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_close);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_do);
+            this.splitContainer2.Size = new System.Drawing.Size(604, 465);
+            this.splitContainer2.SplitterDistance = 416;
+            this.splitContainer2.TabIndex = 0;
+            // 
+            // splitContainer3
+            // 
+            this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer3.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer3.Name = "splitContainer3";
+            this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer3.Panel1
+            // 
+            this.splitContainer3.Panel1.Controls.Add(this.label5);
+            this.splitContainer3.Panel1.Controls.Add(this.label4);
+            this.splitContainer3.Panel1.Controls.Add(this.label3);
+            this.splitContainer3.Panel1.Controls.Add(this.label2);
+            this.splitContainer3.Panel1.Controls.Add(this.label1);
+            // 
+            // splitContainer3.Panel2
+            // 
+            this.splitContainer3.Panel2.Controls.Add(this.myTable);
+            this.splitContainer3.Size = new System.Drawing.Size(604, 416);
+            this.splitContainer3.SplitterDistance = 44;
+            this.splitContainer3.TabIndex = 0;
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(406, 30);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(60, 13);
+            this.label5.TabIndex = 4;
+            this.label5.Text = "Description";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(174, 30);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(29, 13);
+            this.label4.TabIndex = 3;
+            this.label4.Text = "Nom";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(57, 30);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(31, 13);
+            this.label3.TabIndex = 2;
+            this.label3.Text = "Type";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(29, 17);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(338, 13);
+            this.label2.TabIndex = 1;
+            this.label2.Text = "A effacer(cocher les fichiers et les répertoires que vous voulez effacer)";
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(4, 4);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(259, 13);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "Protégé (les fichiers protégés ne sont  pas effacables)";
+            // 
+            // myTable
+            // 
+            this.myTable.AutoScroll = true;
+            this.myTable.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Single;
+            this.myTable.ColumnCount = 5;
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 250F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.myTable.Location = new System.Drawing.Point(3, 3);
+            this.myTable.Name = "myTable";
+            this.myTable.RowCount = 1;
+            this.myTable.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
+            this.myTable.Size = new System.Drawing.Size(598, 26);
+            this.myTable.TabIndex = 0;
+            // 
+            // bt_close
+            // 
+            this.bt_close.Location = new System.Drawing.Point(432, 10);
+            this.bt_close.Name = "bt_close";
+            this.bt_close.Size = new System.Drawing.Size(120, 23);
+            this.bt_close.TabIndex = 1;
+            this.bt_close.Text = "Fermer";
+            this.bt_close.UseVisualStyleBackColor = true;
+            this.bt_close.Click += new System.EventHandler(this.bt_close_Click);
+            // 
+            // bt_do
+            // 
+            this.bt_do.Location = new System.Drawing.Point(234, 10);
+            this.bt_do.Name = "bt_do";
+            this.bt_do.Size = new System.Drawing.Size(120, 23);
+            this.bt_do.TabIndex = 0;
+            this.bt_do.Text = "Effacer";
+            this.bt_do.UseVisualStyleBackColor = true;
+            this.bt_do.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // bt_sel
+            // 
+            this.bt_sel.Location = new System.Drawing.Point(36, 10);
+            this.bt_sel.Name = "bt_sel";
+            this.bt_sel.Size = new System.Drawing.Size(120, 23);
+            this.bt_sel.TabIndex = 2;
+            this.bt_sel.Text = "Inverser sélection";
+            this.bt_sel.UseVisualStyleBackColor = true;
+            this.bt_sel.Click += new System.EventHandler(this.bt_sel_Click);
+            // 
+            // f_clean
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(604, 465);
+            this.Controls.Add(this.splitContainer2);
+            this.Name = "f_clean";
+            this.Text = "Nettoyage";
+            this.Load += new System.EventHandler(this.f_clean_Load);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            this.splitContainer3.Panel1.ResumeLayout(false);
+            this.splitContainer3.Panel1.PerformLayout();
+            this.splitContainer3.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
+            this.splitContainer3.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.SplitContainer splitContainer3;
+        private System.Windows.Forms.TableLayoutPanel myTable;
+        private System.Windows.Forms.Button bt_do;
+        private System.Windows.Forms.Button bt_close;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button bt_sel;
+    }
+}

+ 352 - 0
Fuel_ASO/f_clean.cs

@@ -0,0 +1,352 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_clean : Form
+    {
+        DataSet1.tb_epreuveDataTable tb_epr = new DataSet1.tb_epreuveDataTable();
+        List<mesfic> maliste = new List<mesfic>();
+        public class mesfic
+        {
+            public bool isProtected=true;
+            public bool doDelete = false;
+            public string name = "";
+            public string description = "";
+            public string type = "";
+            public int order = 1;
+            public string shortname = "";
+            
+
+            public mesfic(string _name,string _type, bool _isProtected)
+            {
+                name = _name;
+                if (_type == "D")
+                {
+                    type = _type;
+                    if (name != "in" && name != "param")
+                    {
+                        isProtected = _isProtected;
+                        order = analyse(name, _type);
+                    }
+                    description = "Répertoire";
+                    if (name.ToUpper() == "IN")
+                        description = "Répertoire de sctockage des données venant des tablettes";
+                    if (name.ToUpper() == "PARAM")
+                        description = "Répertoire des données de paramètres";
+
+
+                }
+                if (_type == "F")
+                {
+                    if (name != "epreuve.json")
+                    {
+                        isProtected = false;
+                        order = analyse(name, _type);
+                    }
+                    else
+                        description = "Fichier des epreuves. Ne pas toucher!!!";
+                }
+                //type = _type;
+                
+            }
+
+            private int analyse(string inputData,string _type)
+            {
+                int ret =   99999;
+                if ( _type=="D")
+                {
+                    if (!Int32.TryParse(inputData, out ret))
+                        return 99999;
+                    else
+                        return ret;
+                }
+                
+                string[] result;
+                string pattern = @"_";
+                RegexOptions regexOptions = RegexOptions.IgnoreCase;
+                Regex regex = new Regex(pattern, regexOptions);
+                //on a des zip ou des txt
+                if (inputData.ToUpper().Contains(".TXT"))
+                {
+                    type = "T";
+                    inputData=inputData.ToUpper().Replace(".TXT", "");
+                    result = regex.Split(inputData);
+                    if (result.Length != 3)
+                        return 99999;
+                    if (!Int32.TryParse(result[2], out ret))
+                        return 99999;
+                    description = "Resultat de l'archivage n°:" + ret.ToString(); ;
+                    return ret;
+                }
+                else
+                {
+                    if (inputData.ToUpper().Contains(".ZIP"))
+                    {
+                        type = "A";
+                        inputData=inputData.ToUpper().Replace(".ZIP", "");
+                        result = regex.Split(inputData);
+                        if (result.Length != 7)
+                            return ret;
+                        if (!Int32.TryParse(result[0], out ret))
+                            return ret;
+                        description = "Archive après effacement d'une épreuve.";
+
+                        return ret;
+                    }
+                    else
+                        return ret;
+                }
+            }
+        }
+
+        public f_clean()
+        {
+            InitializeComponent();
+        }
+
+        private void button1_Click(object sender, EventArgs e)
+        {
+            foreach( Control ctrl in myTable.Controls)
+            {
+                try
+                {
+                    CheckBox myBox = ctrl as CheckBox;
+                    if (myBox != null)
+                        if (myBox.Enabled && myBox.Checked)
+                        {
+                            int myrow = myTable.GetRow(myBox);
+                            Label mylabel = myTable.GetControlFromPosition(3, myrow) as Label;
+                            if (mylabel != null)
+                            {
+                                if (mylabel.Tag.ToString() == "D")
+                                {
+                                    DirectoryInfo di = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\AsoFuel\" + mylabel.Text);
+                                    di.Delete(true);
+                                }
+                                else
+                                {
+                                    FileInfo fi = new FileInfo(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\AsoFuel\" + mylabel.Text);
+                                    fi.Delete();
+                                }
+                            }
+                        }
+                }
+                catch (Exception ex)
+                {
+                    MessageBox.Show(ex.Message, "ERREUR");
+                }
+            }
+            vide();
+            remplir();
+        }
+       
+        private void vide()
+        {
+           
+            tb_epr.Clear();
+            tb_epr.ReadXml(Program.folder + @"\epreuve.json");
+
+            maliste.Clear();
+            myTable.SuspendLayout();
+            for (int i=myTable.Controls.Count-1; i>=0; i--)
+                 myTable.Controls[i].Dispose();
+            myTable.Controls.Clear();
+            myTable.ResumeLayout();
+            myTable.Dispose();
+            this.myTable = new System.Windows.Forms.TableLayoutPanel();
+            this.splitContainer3.Panel2.Controls.Add(this.myTable);
+            this.myTable.AutoScroll = true;
+            this.myTable.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Single;
+            this.myTable.ColumnCount = 5;
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 250F));
+            this.myTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.myTable.Location = new System.Drawing.Point(3, 3);
+            this.myTable.Name = "myTable";
+            this.myTable.RowCount = 1;
+            this.myTable.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+            this.myTable.Size = new System.Drawing.Size(598, 25);
+
+        }
+
+        private void remplir()
+        {
+
+            DirectoryInfo di = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\AsoFuel");
+            foreach (DirectoryInfo dir in di.GetDirectories())
+            {
+                maliste.Add(new mesfic(dir.Name, "D", tb_epr.FindBykey_epr(dir.Name) != null));
+            }
+
+            foreach (FileInfo fi in di.GetFiles())
+            {
+                maliste.Add(new mesfic(fi.Name, "F", false));
+            }
+
+            myTable.SuspendLayout();
+            maliste.Sort(compare.Compare);
+            foreach (mesfic onefic in maliste )
+            {
+                CheckBox chkA = new CheckBox();
+                chkA.Checked = onefic.isProtected;
+                chkA.Enabled = false;
+
+                CheckBox chkB = new CheckBox();
+                chkB.Enabled = !chkA.Checked;
+                
+                Label lblD = new Label();
+                lblD.Dock = DockStyle.Fill; ;
+                lblD.AutoSize = false;
+                lblD.Text = "";
+                if ( onefic.type=="D")
+                    lblD.Image = global::Fuel01.Properties.Resources.dossier;
+                else  
+                    if (onefic.type == "T")
+                        lblD.Image = global::Fuel01.Properties.Resources.document;
+                    else
+                        if (onefic.type == "A")
+                            lblD.Image = global::Fuel01.Properties.Resources.archive;
+                
+                Label lblA = new Label();
+                lblA.Dock = DockStyle.Fill; ;
+                lblA.AutoSize = true;
+                lblA.Text =  onefic.name;
+                lblA.Tag = onefic.type;
+
+                Label lblB = new Label();
+                lblB.Text = onefic.description ;
+                lblB.Dock = DockStyle.Fill; ;
+
+                myTable.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25F));
+                myTable.Controls.Add(chkA, 0, myTable.RowCount - 1);
+                myTable.Controls.Add(chkB, 1, myTable.RowCount - 1);
+                myTable.Controls.Add(lblD, 2, myTable.RowCount - 1);
+                myTable.Controls.Add(lblA, 3, myTable.RowCount-1);
+                myTable.Controls.Add(lblB, 4, myTable.RowCount-1);
+                myTable.RowCount++;
+            }
+             myTable.RowCount++;
+            myTable.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize, 0F));
+
+            myTable.Dock = DockStyle.Fill;
+            myTable.ResumeLayout(true);
+        }
+
+         
+         private void f_clean_Load(object sender, EventArgs e)
+        {
+            vide();
+            remplir();
+
+        }
+
+        #region COMPARE
+        CompareFunction compare = new CompareFunction();
+        class CompareFunction : IComparer<mesfic>
+        {
+            public int Compare(mesfic f1, mesfic f2)
+            {
+                int result;
+                if (mesfic.ReferenceEquals(f1, f2))
+                {
+                    //result = 0;
+                    result = StringCompare(f1.name, f2.name);
+                }
+                else
+                {
+                    if (f1 == null)
+                    {
+                        result = 1;
+                    }
+                    else if (f2 == null)
+                    {
+                        result = -1;
+                    }
+                    else
+                    {
+                        result = NumberCompare(f1.order, f2.order);
+                        if ( result==0)
+                            result = StringCompare(f1.name, f2.name);
+                    }
+                }
+                return result;
+            }
+            int NumberCompare(int number1, int number2)
+            {
+                int result;
+                if (number1 > number2)
+                {
+                    result = 1;
+                }
+                else if (number1 < number2)
+                {
+                    result = -1;
+                }
+                else
+                {
+                    result = 0;
+                }
+                return result;
+            }
+            int StringCompare(string strFirstString, string secondString)
+            {
+                int result;
+                if (strFirstString == null)
+                {
+                    if (secondString == null)
+                    {
+                        result = 0;
+                    }
+                    else
+                    {
+                        result = 1;
+                    }
+                }
+                else
+                {
+                    result = strFirstString.CompareTo(secondString);
+                }
+                return result;
+            }
+        }
+        #endregion
+
+        private void bt_close_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        private void bt_sel_Click(object sender, EventArgs e)
+        {
+            foreach (Control ctrl in myTable.Controls)
+            {
+                try
+                {
+                    CheckBox myBox = ctrl as CheckBox;
+                    if (myBox != null)
+                        if (myBox.Enabled)
+                        {
+                            myBox.Checked = !myBox.Checked;
+                        }
+                }
+                catch (Exception ex)
+                {
+                    MessageBox.Show(ex.Message, "ERREUR");
+                }
+            }
+        }
+
+    }
+}

+ 120 - 0
Fuel_ASO/f_clean.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 381 - 0
Fuel_ASO/f_epreuve.Designer.cs

@@ -0,0 +1,381 @@
+namespace Fuel01
+{
+    partial class f_epreuve
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+            this.StatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.tbepreuveBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.text_nom_epr = new System.Windows.Forms.TextBox();
+            this.dt_deb_epr = new System.Windows.Forms.DateTimePicker();
+            this.dt_fin_epr = new System.Windows.Forms.DateTimePicker();
+            this.text_abrev_epr = new System.Windows.Forms.TextBox();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.bt_Sup = new System.Windows.Forms.Button();
+            this.Bt_Abort = new System.Windows.Forms.Button();
+            this.bt_Valid = new System.Windows.Forms.Button();
+            this.bt_Aj = new System.Windows.Forms.Button();
+            this.bt_Mod = new System.Windows.Forms.Button();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.dg_epr = new System.Windows.Forms.DataGridView();
+            this.keyeprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.nomeprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.debeprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.fineprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.abreveprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
+            this.statusStrip1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbepreuveBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_epr)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // statusStrip1
+            // 
+            this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.StatusLabel1});
+            this.statusStrip1.Location = new System.Drawing.Point(0, 338);
+            this.statusStrip1.Name = "statusStrip1";
+            this.statusStrip1.Size = new System.Drawing.Size(843, 22);
+            this.statusStrip1.TabIndex = 34;
+            this.statusStrip1.Text = "statusStrip1";
+            // 
+            // StatusLabel1
+            // 
+            this.StatusLabel1.Name = "StatusLabel1";
+            this.StatusLabel1.Size = new System.Drawing.Size(16, 17);
+            this.StatusLabel1.Text = "...";
+            // 
+            // tbepreuveBindingSource
+            // 
+            this.tbepreuveBindingSource.DataMember = "tb_epreuve";
+            this.tbepreuveBindingSource.DataSource = this.dataSet1;
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // text_nom_epr
+            // 
+            this.text_nom_epr.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbepreuveBindingSource, "nom_epr", true));
+            this.text_nom_epr.Enabled = false;
+            this.text_nom_epr.Location = new System.Drawing.Point(578, 50);
+            this.text_nom_epr.Name = "text_nom_epr";
+            this.text_nom_epr.Size = new System.Drawing.Size(205, 20);
+            this.text_nom_epr.TabIndex = 2;
+            // 
+            // dt_deb_epr
+            // 
+            this.dt_deb_epr.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.tbepreuveBindingSource, "deb_epr", true));
+            this.dt_deb_epr.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbepreuveBindingSource, "deb_epr", true));
+            this.dt_deb_epr.Enabled = false;
+            this.dt_deb_epr.Location = new System.Drawing.Point(578, 87);
+            this.dt_deb_epr.Name = "dt_deb_epr";
+            this.dt_deb_epr.Size = new System.Drawing.Size(200, 20);
+            this.dt_deb_epr.TabIndex = 3;
+            // 
+            // dt_fin_epr
+            // 
+            this.dt_fin_epr.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbepreuveBindingSource, "fin_epr", true));
+            this.dt_fin_epr.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.tbepreuveBindingSource, "fin_epr", true));
+            this.dt_fin_epr.Enabled = false;
+            this.dt_fin_epr.Location = new System.Drawing.Point(578, 125);
+            this.dt_fin_epr.Name = "dt_fin_epr";
+            this.dt_fin_epr.Size = new System.Drawing.Size(200, 20);
+            this.dt_fin_epr.TabIndex = 4;
+            // 
+            // text_abrev_epr
+            // 
+            this.text_abrev_epr.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbepreuveBindingSource, "abrev_epr", true));
+            this.text_abrev_epr.Enabled = false;
+            this.text_abrev_epr.Location = new System.Drawing.Point(578, 165);
+            this.text_abrev_epr.Name = "text_abrev_epr";
+            this.text_abrev_epr.Size = new System.Drawing.Size(87, 20);
+            this.text_abrev_epr.TabIndex = 5;
+            this.toolTip1.SetToolTip(this.text_abrev_epr, "6 caractères maxi");
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(543, 53);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(29, 13);
+            this.label1.TabIndex = 5;
+            this.label1.Text = "Nom";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(536, 91);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(36, 13);
+            this.label2.TabIndex = 6;
+            this.label2.Text = "Début";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(551, 129);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(21, 13);
+            this.label3.TabIndex = 7;
+            this.label3.Text = "Fin";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(540, 165);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(32, 13);
+            this.label4.TabIndex = 8;
+            this.label4.Text = "Code";
+            // 
+            // bt_Sup
+            // 
+            this.bt_Sup.Location = new System.Drawing.Point(753, 229);
+            this.bt_Sup.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Sup.Name = "bt_Sup";
+            this.bt_Sup.Size = new System.Drawing.Size(80, 25);
+            this.bt_Sup.TabIndex = 8;
+            this.bt_Sup.Text = "Supprimer";
+            this.bt_Sup.UseVisualStyleBackColor = true;
+            this.bt_Sup.Click += new System.EventHandler(this.bt_Sup_Click);
+            // 
+            // Bt_Abort
+            // 
+            this.Bt_Abort.Location = new System.Drawing.Point(585, 278);
+            this.Bt_Abort.Margin = new System.Windows.Forms.Padding(2);
+            this.Bt_Abort.Name = "Bt_Abort";
+            this.Bt_Abort.Size = new System.Drawing.Size(80, 25);
+            this.Bt_Abort.TabIndex = 9;
+            this.Bt_Abort.Text = "Abandonner";
+            this.Bt_Abort.UseVisualStyleBackColor = true;
+            this.Bt_Abort.Click += new System.EventHandler(this.Bt_Abort_Click);
+            // 
+            // bt_Valid
+            // 
+            this.bt_Valid.Location = new System.Drawing.Point(703, 278);
+            this.bt_Valid.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Valid.Name = "bt_Valid";
+            this.bt_Valid.Size = new System.Drawing.Size(80, 25);
+            this.bt_Valid.TabIndex = 10;
+            this.bt_Valid.Text = "Valider";
+            this.bt_Valid.UseVisualStyleBackColor = true;
+            this.bt_Valid.Click += new System.EventHandler(this.bt_Valid_Click);
+            // 
+            // bt_Aj
+            // 
+            this.bt_Aj.Location = new System.Drawing.Point(640, 229);
+            this.bt_Aj.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Aj.Name = "bt_Aj";
+            this.bt_Aj.Size = new System.Drawing.Size(80, 25);
+            this.bt_Aj.TabIndex = 7;
+            this.bt_Aj.Text = "Ajouter";
+            this.bt_Aj.UseVisualStyleBackColor = true;
+            this.bt_Aj.Click += new System.EventHandler(this.bt_Aj_Click);
+            // 
+            // bt_Mod
+            // 
+            this.bt_Mod.Location = new System.Drawing.Point(536, 229);
+            this.bt_Mod.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Mod.Name = "bt_Mod";
+            this.bt_Mod.Size = new System.Drawing.Size(80, 25);
+            this.bt_Mod.TabIndex = 6;
+            this.bt_Mod.Text = "Modifier";
+            this.bt_Mod.UseVisualStyleBackColor = true;
+            this.bt_Mod.Click += new System.EventHandler(this.bt_Mod_Click);
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Left;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.dg_epr);
+            this.splitContainer1.Size = new System.Drawing.Size(523, 338);
+            this.splitContainer1.SplitterDistance = 25;
+            this.splitContainer1.TabIndex = 35;
+            // 
+            // dg_epr
+            // 
+            this.dg_epr.AllowUserToAddRows = false;
+            this.dg_epr.AllowUserToDeleteRows = false;
+            this.dg_epr.AutoGenerateColumns = false;
+            this.dg_epr.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_epr.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.keyeprDataGridViewTextBoxColumn,
+            this.nomeprDataGridViewTextBoxColumn,
+            this.debeprDataGridViewTextBoxColumn,
+            this.fineprDataGridViewTextBoxColumn,
+            this.abreveprDataGridViewTextBoxColumn});
+            this.dg_epr.DataSource = this.tbepreuveBindingSource;
+            this.dg_epr.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_epr.Location = new System.Drawing.Point(0, 0);
+            this.dg_epr.Name = "dg_epr";
+            this.dg_epr.ReadOnly = true;
+            this.dg_epr.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_epr.Size = new System.Drawing.Size(523, 309);
+            this.dg_epr.TabIndex = 1;
+            this.dg_epr.DoubleClick += new System.EventHandler(this.dg_epr_DoubleClick);
+            // 
+            // keyeprDataGridViewTextBoxColumn
+            // 
+            this.keyeprDataGridViewTextBoxColumn.DataPropertyName = "key_epr";
+            this.keyeprDataGridViewTextBoxColumn.HeaderText = "key_epr";
+            this.keyeprDataGridViewTextBoxColumn.Name = "keyeprDataGridViewTextBoxColumn";
+            this.keyeprDataGridViewTextBoxColumn.ReadOnly = true;
+            this.keyeprDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // nomeprDataGridViewTextBoxColumn
+            // 
+            this.nomeprDataGridViewTextBoxColumn.DataPropertyName = "nom_epr";
+            this.nomeprDataGridViewTextBoxColumn.HeaderText = "Nom";
+            this.nomeprDataGridViewTextBoxColumn.Name = "nomeprDataGridViewTextBoxColumn";
+            this.nomeprDataGridViewTextBoxColumn.ReadOnly = true;
+            this.nomeprDataGridViewTextBoxColumn.Width = 200;
+            // 
+            // debeprDataGridViewTextBoxColumn
+            // 
+            this.debeprDataGridViewTextBoxColumn.DataPropertyName = "deb_epr";
+            dataGridViewCellStyle1.Format = "d";
+            this.debeprDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle1;
+            this.debeprDataGridViewTextBoxColumn.HeaderText = "Début";
+            this.debeprDataGridViewTextBoxColumn.Name = "debeprDataGridViewTextBoxColumn";
+            this.debeprDataGridViewTextBoxColumn.ReadOnly = true;
+            this.debeprDataGridViewTextBoxColumn.Width = 80;
+            // 
+            // fineprDataGridViewTextBoxColumn
+            // 
+            this.fineprDataGridViewTextBoxColumn.DataPropertyName = "fin_epr";
+            dataGridViewCellStyle2.Format = "d";
+            this.fineprDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle2;
+            this.fineprDataGridViewTextBoxColumn.HeaderText = "Fin";
+            this.fineprDataGridViewTextBoxColumn.Name = "fineprDataGridViewTextBoxColumn";
+            this.fineprDataGridViewTextBoxColumn.ReadOnly = true;
+            this.fineprDataGridViewTextBoxColumn.Width = 80;
+            // 
+            // abreveprDataGridViewTextBoxColumn
+            // 
+            this.abreveprDataGridViewTextBoxColumn.DataPropertyName = "abrev_epr";
+            this.abreveprDataGridViewTextBoxColumn.HeaderText = "Code";
+            this.abreveprDataGridViewTextBoxColumn.MaxInputLength = 6;
+            this.abreveprDataGridViewTextBoxColumn.Name = "abreveprDataGridViewTextBoxColumn";
+            this.abreveprDataGridViewTextBoxColumn.ReadOnly = true;
+            this.abreveprDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // toolTip1
+            // 
+            this.toolTip1.IsBalloon = true;
+            this.toolTip1.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
+            this.toolTip1.ToolTipTitle = "Info";
+            // 
+            // f_epreuve
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(843, 360);
+            this.Controls.Add(this.splitContainer1);
+            this.Controls.Add(this.statusStrip1);
+            this.Controls.Add(this.bt_Sup);
+            this.Controls.Add(this.Bt_Abort);
+            this.Controls.Add(this.bt_Valid);
+            this.Controls.Add(this.bt_Aj);
+            this.Controls.Add(this.bt_Mod);
+            this.Controls.Add(this.label4);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.text_abrev_epr);
+            this.Controls.Add(this.dt_fin_epr);
+            this.Controls.Add(this.dt_deb_epr);
+            this.Controls.Add(this.text_nom_epr);
+            this.Name = "f_epreuve";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Opérations";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_epreuve_FormClosing);
+            this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.f_epreuve_FormClosed);
+            this.Load += new System.EventHandler(this.f_epreuve_Load);
+            this.statusStrip1.ResumeLayout(false);
+            this.statusStrip1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbepreuveBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_epr)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.StatusStrip statusStrip1;
+        private System.Windows.Forms.BindingSource tbepreuveBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.TextBox text_nom_epr;
+        private System.Windows.Forms.DateTimePicker dt_deb_epr;
+        private System.Windows.Forms.DateTimePicker dt_fin_epr;
+        private System.Windows.Forms.TextBox text_abrev_epr;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Button bt_Sup;
+        private System.Windows.Forms.Button Bt_Abort;
+        private System.Windows.Forms.Button bt_Valid;
+        private System.Windows.Forms.Button bt_Aj;
+        private System.Windows.Forms.Button bt_Mod;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.DataGridView dg_epr;
+        private System.Windows.Forms.DataGridViewTextBoxColumn keyeprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nomeprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn debeprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn fineprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn abreveprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.ToolTip toolTip1;
+        private System.Windows.Forms.ToolStripStatusLabel StatusLabel1;
+       
+    }
+}

+ 234 - 0
Fuel_ASO/f_epreuve.cs

@@ -0,0 +1,234 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using Ionic.Utils.Zip;
+
+namespace Fuel01
+{
+    public partial class f_epreuve : Form
+    {
+        DataSet1.tb_epreuveDataTable tb_epr = new DataSet1.tb_epreuveDataTable();
+        private bool hasChanged = false;
+        string key_new = "";    //initilalisé en création uniquement
+        public f_epreuve(DataSet1.tb_epreuveDataTable tb_epr)
+        {
+            InitializeComponent();
+            this.tb_epr = tb_epr;
+        }
+
+        private void f_epreuve_Load(object sender, EventArgs e)
+        {
+            tb_epr.AcceptChanges();
+            tbepreuveBindingSource.DataSource = tb_epr;
+            turn_txt(false);
+            turn_bt(false);
+            if (Program.key_ope != "" && Program.key_ope !=null )
+            {
+                tbepreuveBindingSource.MoveFirst();
+                DataRowView myRow = tbepreuveBindingSource.Current as DataRowView;
+                if ( myRow != null )
+                    while (myRow.Row["key_epr"].ToString() != Program.key_ope)
+                    {
+                        int i = tbepreuveBindingSource.Position;
+                        tbepreuveBindingSource.MoveNext();
+                        myRow = tbepreuveBindingSource.Current as DataRowView;
+                        if (i == tbepreuveBindingSource.Position)
+                            break;
+                    }
+            }
+            this.tbepreuveBindingSource.CurrentChanged += new System.EventHandler(this.tbepreuveBindingSource_CurrentItemChanged);
+            this.tbepreuveBindingSource.CurrentItemChanged += new System.EventHandler(this.tbepreuveBindingSource_CurrentItemChanged);
+            
+
+        }
+        #region affichage
+
+        private void turn_txt(bool act)
+        {
+            text_nom_epr.Enabled = act;
+            dt_deb_epr.Enabled = act;
+            dt_fin_epr.Enabled = act;
+            text_abrev_epr.Enabled = act;
+        }
+
+        private void turn_bt(bool act)
+        {
+            Bt_Abort.Enabled = act;
+            bt_Valid.Enabled = act;
+            bt_Mod.Enabled = !act;
+            bt_Aj.Enabled = !act;
+            bt_Sup.Enabled = !act;
+        }
+
+        #endregion
+
+        #region Boutons
+
+        private void bt_Mod_Click(object sender, EventArgs e)
+        {
+            turn_txt(true);
+            turn_bt(true);
+
+        }
+
+        private void bt_Aj_Click(object sender, EventArgs e)
+        {
+            turn_txt(true);
+            turn_bt(true);
+            string key = findNewkey();
+            key_new = key;
+            tb_epr.Addtb_epreuveRow(key, "", DateTime.Now, DateTime.Now, "");
+            tbepreuveBindingSource.MoveFirst();
+            DataRowView myRow = tbepreuveBindingSource.Current as DataRowView;
+            while (myRow.Row["key_epr"].ToString() != key)
+            {
+                tbepreuveBindingSource.MoveNext();
+                myRow = tbepreuveBindingSource.Current as DataRowView;
+            }
+            //DirectoryInfo di = new DirectoryInfo(Program.folder);
+            //di.CreateSubdirectory(key);
+            Program.subfolder = Program.folder + @"\" + key;
+            //File.Copy(Program.folder + @"\param\facture_carbu.xlsx", Program.subfolder + @"\facture_carbu.xlsx");
+
+
+        }
+
+        private void bt_Sup_Click(object sender, EventArgs e)
+        {
+            DataRowView myRow = tbepreuveBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Opération {0}\nEtes-vous certain de vouloir supprimer \n{1}\n\rUne archive de sauvegarde sera créée.", myRow.Row["abrev_epr"].ToString(), myRow.Row["nom_epr"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                string key = myRow.Row["key_epr"].ToString();
+                DataSet1.tb_epreuveRow eprRow = tb_epr.FindBykey_epr(key);
+                if (eprRow != null)
+                {
+                    string path_epr= Program.folder + @"\" + key;
+                    string filename = Program.folder + @"\traces_archivage_" + key+".txt";
+                    StreamWriter writer = File.CreateText(filename);
+                    writer.Write("Suppression de l'opération " + eprRow.nom_epr + "\r\n");
+                    var zip = new ZipFile(Program.folder + @"\"+ key+"_"+DateTime.Now.ToString("yy_MM_dd_hh_mm_ss") + ".zip", writer);
+                    zip.AddDirectory(path_epr, key);
+                    zip.AddFile(Program.folder + @"\epreuve.json","");
+                    zip.Save();
+                    writer.Close();
+                    f_result res = new f_result(filename, zip.Name);
+                    res.ShowDialog();
+                    Directory.Delete(path_epr,true);
+                    tb_epr.Removetb_epreuveRow(eprRow);
+                }
+
+                hasChanged = true;
+            }
+        }
+
+        private void bt_Valid_Click(object sender, EventArgs e)
+        {
+            tb_epr.AcceptChanges();
+            turn_txt(false);
+            turn_bt(false);
+            hasChanged = true;
+
+            if (key_new != "") // Mode création
+            {
+                DirectoryInfo di = new DirectoryInfo(Program.folder);
+                di.CreateSubdirectory(key_new);
+                Program.subfolder = Program.folder + @"\" + key_new;
+                File.Copy(Program.folder + @"\param\facture_carbu.xlsx", Program.subfolder + @"\facture_carbu.xlsx");
+                key_new = "";
+            }
+        }
+
+        private void Bt_Abort_Click(object sender, EventArgs e)
+        {
+            tb_epr.RejectChanges();
+            turn_txt(false);
+            turn_bt(false);
+            key_new = "";
+        }
+        #endregion
+
+        #region fonctions
+
+        private string findNewkey()
+        {
+            Random rand1 = new Random();
+            string key = rand1.Next(99999).ToString();
+            while (tb_epr.FindBykey_epr(key) != null)
+            {
+                MessageBox.Show(key);
+                key = rand1.Next(99999).ToString();
+            }
+            return key;
+        }
+
+        #endregion
+
+        private void f_epreuve_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            DataSet1.tb_epreuveRow mydata = null;
+            DataRowView myrow = tbepreuveBindingSource.Current as DataRowView;
+            if (myrow != null)
+            {
+                mydata = myrow.Row as DataSet1.tb_epreuveRow;
+                Program.nom_ope = mydata.nom_epr;
+                Program.key_ope = mydata.key_epr;
+                Program.abrev_ope = mydata.abrev_epr;
+            }
+
+            if (hasChanged) saveData();
+            DataTable tb_epr_change = tb_epr.GetChanges();
+            while (tb_epr_change != null)
+            {
+                if (MessageBox.Show("Voulez-vous Valider Oui ou Non les modifications apportées ?", "Modifications en cours!!!", MessageBoxButtons.YesNoCancel,  MessageBoxIcon.Exclamation) == DialogResult.Yes)
+                {
+                    tb_epr.AcceptChanges();
+                    saveData();
+                    tb_epr_change = tb_epr.GetChanges();
+                }
+                else
+                {
+                    tb_epr.RejectChanges();
+                    tb_epr_change = tb_epr.GetChanges();
+                }
+                e.Cancel = (tb_epr_change != null);
+            }
+        }
+
+        private void saveData()
+        {
+            DbUtil.SaveToJson<DataSet1.tb_epreuveDataTable>(Program.folder + @"\epreuve.json", tb_epr);
+        }
+
+
+        private void tbepreuveBindingSource_CurrentItemChanged(object sender, EventArgs e)
+        {
+            DataRowView myRow = tbepreuveBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            Program.key_ope = myRow.Row["key_epr"].ToString();
+            Program.nom_ope = myRow.Row["nom_epr"].ToString();
+            Program.abrev_ope = myRow.Row["abrev_epr"].ToString();
+            StatusLabel1.Text = Program.key_ope + "-" + Program.abrev_ope + "-" + Program.nom_ope;
+        }
+
+        private void dg_epr_DoubleClick(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        private void f_epreuve_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            tb_epr.Dispose();
+            this.Dispose();
+        }
+    }
+}

+ 132 - 0
Fuel_ASO/f_epreuve.resx

@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>302, 17</value>
+  </metadata>
+  <metadata name="tbepreuveBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>116, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>418, 17</value>
+  </metadata>
+</root>

+ 224 - 0
Fuel_ASO/f_etape.Designer.cs

@@ -0,0 +1,224 @@
+namespace Fuel01
+{
+    partial class f_etape
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer3 = new System.Windows.Forms.SplitContainer();
+            this.db_etape = new System.Windows.Forms.DataGridView();
+            this.epretpDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.numetpDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dateetpDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.nometpDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbetapeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.bt_Sup = new System.Windows.Forms.Button();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
+            this.splitContainer3.Panel1.SuspendLayout();
+            this.splitContainer3.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.db_etape)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbetapeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(678, 435);
+            this.splitContainer1.SplitterDistance = 25;
+            this.splitContainer1.TabIndex = 0;
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.splitContainer3);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Sup);
+            this.splitContainer2.Size = new System.Drawing.Size(678, 406);
+            this.splitContainer2.SplitterDistance = 366;
+            this.splitContainer2.TabIndex = 0;
+            // 
+            // splitContainer3
+            // 
+            this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer3.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer3.Name = "splitContainer3";
+            // 
+            // splitContainer3.Panel1
+            // 
+            this.splitContainer3.Panel1.Controls.Add(this.db_etape);
+            this.splitContainer3.Size = new System.Drawing.Size(678, 366);
+            this.splitContainer3.SplitterDistance = 537;
+            this.splitContainer3.TabIndex = 0;
+            // 
+            // db_etape
+            // 
+            this.db_etape.AllowUserToDeleteRows = false;
+            this.db_etape.AutoGenerateColumns = false;
+            this.db_etape.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.db_etape.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.epretpDataGridViewTextBoxColumn,
+            this.numetpDataGridViewTextBoxColumn,
+            this.dateetpDataGridViewTextBoxColumn,
+            this.nometpDataGridViewTextBoxColumn});
+            this.db_etape.DataSource = this.tbetapeBindingSource;
+            this.db_etape.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.db_etape.Location = new System.Drawing.Point(0, 0);
+            this.db_etape.Name = "db_etape";
+            this.db_etape.Size = new System.Drawing.Size(537, 366);
+            this.db_etape.TabIndex = 0;
+            this.db_etape.RowsAdded += new System.Windows.Forms.DataGridViewRowsAddedEventHandler(this.db_etape_RowsAdded);
+            // 
+            // epretpDataGridViewTextBoxColumn
+            // 
+            this.epretpDataGridViewTextBoxColumn.DataPropertyName = "epr_etp";
+            this.epretpDataGridViewTextBoxColumn.HeaderText = "Epreuve";
+            this.epretpDataGridViewTextBoxColumn.Name = "epretpDataGridViewTextBoxColumn";
+            this.epretpDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // numetpDataGridViewTextBoxColumn
+            // 
+            this.numetpDataGridViewTextBoxColumn.DataPropertyName = "num_etp";
+            dataGridViewCellStyle1.Format = "N0";
+            dataGridViewCellStyle1.NullValue = null;
+            this.numetpDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle1;
+            this.numetpDataGridViewTextBoxColumn.HeaderText = "N°Etp";
+            this.numetpDataGridViewTextBoxColumn.Name = "numetpDataGridViewTextBoxColumn";
+            this.numetpDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // dateetpDataGridViewTextBoxColumn
+            // 
+            this.dateetpDataGridViewTextBoxColumn.DataPropertyName = "date_etp";
+            dataGridViewCellStyle2.Format = "d";
+            dataGridViewCellStyle2.NullValue = null;
+            this.dateetpDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dateetpDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.dateetpDataGridViewTextBoxColumn.Name = "dateetpDataGridViewTextBoxColumn";
+            // 
+            // nometpDataGridViewTextBoxColumn
+            // 
+            this.nometpDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.nometpDataGridViewTextBoxColumn.DataPropertyName = "nom_etp";
+            this.nometpDataGridViewTextBoxColumn.HeaderText = "Nom";
+            this.nometpDataGridViewTextBoxColumn.Name = "nometpDataGridViewTextBoxColumn";
+            // 
+            // tbetapeBindingSource
+            // 
+            this.tbetapeBindingSource.DataMember = "tb_etape";
+            this.tbetapeBindingSource.DataSource = this.dataSet1;
+            this.tbetapeBindingSource.Sort = "num_etp";
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // bt_Sup
+            // 
+            this.bt_Sup.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.bt_Sup.Location = new System.Drawing.Point(573, 5);
+            this.bt_Sup.Name = "bt_Sup";
+            this.bt_Sup.Size = new System.Drawing.Size(75, 23);
+            this.bt_Sup.TabIndex = 0;
+            this.bt_Sup.Text = "Supprimer";
+            this.bt_Sup.UseVisualStyleBackColor = true;
+            this.bt_Sup.Click += new System.EventHandler(this.bt_Sup_Click);
+            // 
+            // f_etape
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(678, 435);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_etape";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Etapes";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_etape_FormClosing);
+            this.Load += new System.EventHandler(this.f_etape_Load);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            this.splitContainer3.Panel1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
+            this.splitContainer3.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.db_etape)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbetapeBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.SplitContainer splitContainer3;
+        private System.Windows.Forms.DataGridView db_etape;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.BindingSource tbetapeBindingSource;
+        private System.Windows.Forms.Button bt_Sup;
+        private System.Windows.Forms.DataGridViewTextBoxColumn epretpDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn numetpDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dateetpDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nometpDataGridViewTextBoxColumn;
+    }
+}

+ 91 - 0
Fuel_ASO/f_etape.cs

@@ -0,0 +1,91 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_etape : Form
+    {
+        DataSet1.tb_etapeDataTable tb_etape = new DataSet1.tb_etapeDataTable();
+        private bool hasChanged = false;
+
+        public f_etape()
+        {
+            InitializeComponent();
+        }
+
+        private void f_etape_Load(object sender, EventArgs e)
+        {
+            Program.subfolder = Program.folder + @"\" + Program.key_ope;
+
+            if (!Directory.Exists(Program.subfolder))
+            {
+                Directory.CreateDirectory(Program.subfolder);
+            }
+            else if (File.Exists(Program.subfolder + @"\station.json"))
+            {
+                tb_etape = DbUtil.LoadFromJson<DataSet1.tb_etapeDataTable>(Program.subfolder + @"\etape.json", tb_etape);
+            }
+
+            tb_etape.AcceptChanges();
+            tbetapeBindingSource.DataSource = tb_etape;
+            tb_etape.tb_etapeRowChanged += tb_etape_tb_etapeRowChanged;
+            
+            if (Program.key_ope != null)
+                this.Text = "Etapes  " + Program.nom_ope;
+
+        }
+
+
+        void tb_etape_tb_etapeRowChanged(object sender, DataSet1.tb_etapeRowChangeEvent e)
+        {
+            hasChanged = true;
+        }
+
+        private void f_etape_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (hasChanged)
+            {
+                DbUtil.SaveToJson<DataSet1.tb_etapeDataTable>(Program.subfolder + @"\etape.json", tb_etape);
+            }
+
+        }
+
+        private void bt_Sup_Click(object sender, EventArgs e)
+        {
+            DataRowView myRow = tbetapeBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Etape {0} du {1}\nEtes-vous certain de vouloir supprimer ", myRow.Row["num_etp"].ToString(), myRow.Row["date_etp"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_etapeRow etapeRow = tb_etape.FindByepr_etpnum_etp(myRow.Row["epr_etp"].ToString(), Convert.ToUInt16(myRow.Row["num_etp"].ToString()));
+                if (etapeRow != null)
+                    tb_etape.Removetb_etapeRow(etapeRow);
+                hasChanged = true;
+            }
+
+        }
+
+        private void db_etape_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
+        {
+
+            if (e.RowIndex > 0)
+                if (db_etape.Rows[e.RowIndex - 1].Cells[0].Value == null)
+                    db_etape.Rows[e.RowIndex - 1].Cells[0].Value = Program.key_ope;
+                else
+                    if (db_etape.Rows[e.RowIndex - 1].Cells[0].Value.ToString() != Program.key_ope)
+                    db_etape.Rows[e.RowIndex - 1].Cells[0].Value = Program.key_ope;
+
+        }
+
+      
+    }
+}

+ 126 - 0
Fuel_ASO/f_etape.resx

@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbetapeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>116, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+</root>

+ 100 - 0
Fuel_ASO/f_extract.Designer.cs

@@ -0,0 +1,100 @@
+namespace Fuel01
+{
+    partial class f_extract
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.rt = new System.Windows.Forms.RichTextBox();
+            this.bt_close = new System.Windows.Forms.Button();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.rt);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.bt_close);
+            this.splitContainer1.Size = new System.Drawing.Size(637, 544);
+            this.splitContainer1.SplitterDistance = 488;
+            this.splitContainer1.TabIndex = 1;
+            // 
+            // rt
+            // 
+            this.rt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.rt.Location = new System.Drawing.Point(0, 0);
+            this.rt.Name = "rt";
+            this.rt.Size = new System.Drawing.Size(637, 488);
+            this.rt.TabIndex = 0;
+            this.rt.Text = "";
+            // 
+            // bt_close
+            // 
+            this.bt_close.Location = new System.Drawing.Point(550, 17);
+            this.bt_close.Name = "bt_close";
+            this.bt_close.Size = new System.Drawing.Size(75, 23);
+            this.bt_close.TabIndex = 0;
+            this.bt_close.Text = "Fermer";
+            this.bt_close.UseVisualStyleBackColor = true;
+            this.bt_close.Click += new System.EventHandler(this.bt_close_Click);
+            // 
+            // f_extract
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(637, 544);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_extract";
+            this.Load += new System.EventHandler(this.f_extract_Load);
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.RichTextBox rt;
+        private System.Windows.Forms.Button bt_close;
+    }
+}

+ 54 - 0
Fuel_ASO/f_extract.cs

@@ -0,0 +1,54 @@
+using Ionic.Utils.Zip;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_extract : Form
+    {
+        string filename;
+        public f_extract(string _filename)
+        {
+            InitializeComponent();
+            filename = _filename;
+            
+        }
+
+
+        private void f_extract_Load(object sender, EventArgs e)
+        {
+            this.Text = filename;
+            var zip = ZipFile.Read(filename);
+            string extractFolder = Program.folder.Replace("AsoFuel",""); //.Substring(0, Program.folder.LastIndexOf("\\")+1);
+            foreach (var entry in zip)
+            {
+                entry.Extract(extractFolder, true);
+                AddTreeNode(entry.FileName);
+            }
+              AddTreeNode("*****************");
+              AddTreeNode("Opération terminée");
+              DialogResult dr = MessageBox.Show("Les données ont été correctement restaurées. Redémarrer? (Si vous refuser de redémarrer maintenant, les données risquent de ne pas être cohérentes.)", "Redémarrer AsoFuel", MessageBoxButtons.OKCancel);
+              if (DialogResult.OK == dr)
+              {
+                  Application.Restart();
+              }
+        }
+
+        private void AddTreeNode(string filename)
+        {
+            rt.AppendText(filename + "\r\n");
+
+        }
+        private void bt_close_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+    }
+}

+ 120 - 0
Fuel_ASO/f_extract.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 541 - 0
Fuel_ASO/f_facture.Designer.cs

@@ -0,0 +1,541 @@
+namespace Fuel01
+{
+    partial class f_facture
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.tbventeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.bt_simul = new System.Windows.Forms.Button();
+            this.vt_date = new System.Windows.Forms.TextBox();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.vt_ttc = new System.Windows.Forms.TextBox();
+            this.vt_tva = new System.Windows.Forms.TextBox();
+            this.vt_ht = new System.Windows.Forms.TextBox();
+            this.vt_pu = new System.Windows.Forms.TextBox();
+            this.vt_qtt = new System.Windows.Forms.TextBox();
+            this.vt_prod = new System.Windows.Forms.TextBox();
+            this.vt_vehi = new System.Windows.Forms.TextBox();
+            this.vt_station = new System.Windows.Forms.TextBox();
+            this.vt_epreuve = new System.Windows.Forms.TextBox();
+            this.bt_fact = new System.Windows.Forms.Button();
+            this.dg_vente = new System.Windows.Forms.DataGridView();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.stationvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.vehivtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.prodvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.qttvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.puvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tvavtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ht_vt = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ttcvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_simul = new System.Windows.Forms.DataGridView();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_simul)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // tbventeBindingSource
+            // 
+            this.tbventeBindingSource.DataMember = "tb_vente";
+            this.tbventeBindingSource.DataSource = this.dataSet1;
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.bt_simul);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_date);
+            this.splitContainer1.Panel1.Controls.Add(this.label10);
+            this.splitContainer1.Panel1.Controls.Add(this.label9);
+            this.splitContainer1.Panel1.Controls.Add(this.label8);
+            this.splitContainer1.Panel1.Controls.Add(this.label7);
+            this.splitContainer1.Panel1.Controls.Add(this.label6);
+            this.splitContainer1.Panel1.Controls.Add(this.label5);
+            this.splitContainer1.Panel1.Controls.Add(this.label4);
+            this.splitContainer1.Panel1.Controls.Add(this.label3);
+            this.splitContainer1.Panel1.Controls.Add(this.label2);
+            this.splitContainer1.Panel1.Controls.Add(this.label1);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_ttc);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_tva);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_ht);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_pu);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_qtt);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_prod);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_vehi);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_station);
+            this.splitContainer1.Panel1.Controls.Add(this.vt_epreuve);
+            this.splitContainer1.Panel1.Controls.Add(this.bt_fact);
+            this.splitContainer1.Panel1.Controls.Add(this.dg_vente);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.dg_simul);
+            this.splitContainer1.Size = new System.Drawing.Size(970, 539);
+            this.splitContainer1.SplitterDistance = 381;
+            this.splitContainer1.TabIndex = 26;
+            // 
+            // bt_simul
+            // 
+            this.bt_simul.Location = new System.Drawing.Point(883, 350);
+            this.bt_simul.Name = "bt_simul";
+            this.bt_simul.Size = new System.Drawing.Size(75, 23);
+            this.bt_simul.TabIndex = 48;
+            this.bt_simul.Text = "Simulation";
+            this.bt_simul.UseVisualStyleBackColor = true;
+            this.bt_simul.Click += new System.EventHandler(this.bt_simul_Click);
+            // 
+            // vt_date
+            // 
+            this.vt_date.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "date_vt", true));
+            this.vt_date.Location = new System.Drawing.Point(839, 143);
+            this.vt_date.Name = "vt_date";
+            this.vt_date.ReadOnly = true;
+            this.vt_date.Size = new System.Drawing.Size(69, 20);
+            this.vt_date.TabIndex = 47;
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.Location = new System.Drawing.Point(778, 311);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(55, 13);
+            this.label10.TabIndex = 46;
+            this.label10.Text = "Total TTC";
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.Location = new System.Drawing.Point(790, 278);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(43, 13);
+            this.label9.TabIndex = 45;
+            this.label9.Text = "Tx TVA";
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(781, 245);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(52, 13);
+            this.label8.TabIndex = 44;
+            this.label8.Text = "Total  HT";
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(787, 212);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(46, 13);
+            this.label7.TabIndex = 43;
+            this.label7.Text = "PU TTC";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(786, 179);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(47, 13);
+            this.label6.TabIndex = 42;
+            this.label6.Text = "Quantité";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(803, 146);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(30, 13);
+            this.label5.TabIndex = 41;
+            this.label5.Text = "Date";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(793, 113);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(40, 13);
+            this.label4.TabIndex = 40;
+            this.label4.Text = "Produit";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(785, 80);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(48, 13);
+            this.label3.TabIndex = 39;
+            this.label3.Text = "Véhicule";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(793, 47);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(40, 13);
+            this.label2.TabIndex = 38;
+            this.label2.Text = "Station";
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(786, 14);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(47, 13);
+            this.label1.TabIndex = 37;
+            this.label1.Text = "Epreuve";
+            // 
+            // vt_ttc
+            // 
+            this.vt_ttc.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "ttc_vt", true));
+            this.vt_ttc.Location = new System.Drawing.Point(841, 307);
+            this.vt_ttc.Name = "vt_ttc";
+            this.vt_ttc.Size = new System.Drawing.Size(67, 20);
+            this.vt_ttc.TabIndex = 36;
+            this.vt_ttc.Enter += new System.EventHandler(this.vt_qtt_Enter);
+            this.vt_ttc.Leave += new System.EventHandler(this.vt_qtt_Leave);
+            // 
+            // vt_tva
+            // 
+            this.vt_tva.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "tva_vt", true));
+            this.vt_tva.Location = new System.Drawing.Point(841, 274);
+            this.vt_tva.Name = "vt_tva";
+            this.vt_tva.ReadOnly = true;
+            this.vt_tva.Size = new System.Drawing.Size(67, 20);
+            this.vt_tva.TabIndex = 35;
+            // 
+            // vt_ht
+            // 
+            this.vt_ht.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "ht_vt", true));
+            this.vt_ht.Location = new System.Drawing.Point(841, 241);
+            this.vt_ht.Name = "vt_ht";
+            this.vt_ht.ReadOnly = true;
+            this.vt_ht.Size = new System.Drawing.Size(67, 20);
+            this.vt_ht.TabIndex = 34;
+            // 
+            // vt_pu
+            // 
+            this.vt_pu.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "pu_vt", true));
+            this.vt_pu.Location = new System.Drawing.Point(841, 208);
+            this.vt_pu.Name = "vt_pu";
+            this.vt_pu.ReadOnly = true;
+            this.vt_pu.Size = new System.Drawing.Size(67, 20);
+            this.vt_pu.TabIndex = 33;
+            // 
+            // vt_qtt
+            // 
+            this.vt_qtt.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "qtt_vt", true));
+            this.vt_qtt.Location = new System.Drawing.Point(841, 175);
+            this.vt_qtt.Name = "vt_qtt";
+            this.vt_qtt.ReadOnly = true;
+            this.vt_qtt.Size = new System.Drawing.Size(67, 20);
+            this.vt_qtt.TabIndex = 32;
+            this.vt_qtt.Enter += new System.EventHandler(this.vt_qtt_Enter);
+            this.vt_qtt.Leave += new System.EventHandler(this.vt_qtt_Leave);
+            // 
+            // vt_prod
+            // 
+            this.vt_prod.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "prod_vt", true));
+            this.vt_prod.Location = new System.Drawing.Point(841, 110);
+            this.vt_prod.Name = "vt_prod";
+            this.vt_prod.ReadOnly = true;
+            this.vt_prod.Size = new System.Drawing.Size(100, 20);
+            this.vt_prod.TabIndex = 31;
+            // 
+            // vt_vehi
+            // 
+            this.vt_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "vehi_vt", true));
+            this.vt_vehi.Location = new System.Drawing.Point(841, 76);
+            this.vt_vehi.Name = "vt_vehi";
+            this.vt_vehi.ReadOnly = true;
+            this.vt_vehi.Size = new System.Drawing.Size(100, 20);
+            this.vt_vehi.TabIndex = 30;
+            // 
+            // vt_station
+            // 
+            this.vt_station.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "station_vt", true));
+            this.vt_station.Location = new System.Drawing.Point(841, 43);
+            this.vt_station.Name = "vt_station";
+            this.vt_station.ReadOnly = true;
+            this.vt_station.Size = new System.Drawing.Size(100, 20);
+            this.vt_station.TabIndex = 29;
+            // 
+            // vt_epreuve
+            // 
+            this.vt_epreuve.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbventeBindingSource, "epreuve_vt", true));
+            this.vt_epreuve.Location = new System.Drawing.Point(841, 10);
+            this.vt_epreuve.Name = "vt_epreuve";
+            this.vt_epreuve.ReadOnly = true;
+            this.vt_epreuve.Size = new System.Drawing.Size(100, 20);
+            this.vt_epreuve.TabIndex = 28;
+            // 
+            // bt_fact
+            // 
+            this.bt_fact.Location = new System.Drawing.Point(788, 350);
+            this.bt_fact.Name = "bt_fact";
+            this.bt_fact.Size = new System.Drawing.Size(75, 23);
+            this.bt_fact.TabIndex = 27;
+            this.bt_fact.Text = "Facture";
+            this.bt_fact.UseVisualStyleBackColor = true;
+            this.bt_fact.Click += new System.EventHandler(this.bt_fact_Click);
+            // 
+            // dg_vente
+            // 
+            this.dg_vente.AllowUserToAddRows = false;
+            this.dg_vente.AllowUserToDeleteRows = false;
+            this.dg_vente.AutoGenerateColumns = false;
+            this.dg_vente.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vente.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.stationvtDataGridViewTextBoxColumn,
+            this.vehivtDataGridViewTextBoxColumn,
+            this.prodvtDataGridViewTextBoxColumn,
+            this.datevtDataGridViewTextBoxColumn,
+            this.qttvtDataGridViewTextBoxColumn,
+            this.puvtDataGridViewTextBoxColumn,
+            this.tvavtDataGridViewTextBoxColumn,
+            this.ht_vt,
+            this.ttcvtDataGridViewTextBoxColumn});
+            this.dg_vente.DataSource = this.tbventeBindingSource;
+            this.dg_vente.Location = new System.Drawing.Point(0, 0);
+            this.dg_vente.Name = "dg_vente";
+            this.dg_vente.ReadOnly = true;
+            this.dg_vente.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_vente.Size = new System.Drawing.Size(729, 378);
+            this.dg_vente.TabIndex = 26;
+            // 
+            // Column1
+            // 
+            this.Column1.DataPropertyName = "epreuve_vt";
+            this.Column1.HeaderText = "epreuve_vt";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.Visible = false;
+            // 
+            // stationvtDataGridViewTextBoxColumn
+            // 
+            this.stationvtDataGridViewTextBoxColumn.DataPropertyName = "station_vt";
+            this.stationvtDataGridViewTextBoxColumn.HeaderText = "station_vt";
+            this.stationvtDataGridViewTextBoxColumn.Name = "stationvtDataGridViewTextBoxColumn";
+            this.stationvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.stationvtDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // vehivtDataGridViewTextBoxColumn
+            // 
+            this.vehivtDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
+            this.vehivtDataGridViewTextBoxColumn.DataPropertyName = "vehi_vt";
+            this.vehivtDataGridViewTextBoxColumn.HeaderText = "Vehicule";
+            this.vehivtDataGridViewTextBoxColumn.Name = "vehivtDataGridViewTextBoxColumn";
+            this.vehivtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.vehivtDataGridViewTextBoxColumn.Width = 73;
+            // 
+            // prodvtDataGridViewTextBoxColumn
+            // 
+            this.prodvtDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.prodvtDataGridViewTextBoxColumn.DataPropertyName = "prod_vt";
+            this.prodvtDataGridViewTextBoxColumn.HeaderText = "Produit";
+            this.prodvtDataGridViewTextBoxColumn.Name = "prodvtDataGridViewTextBoxColumn";
+            this.prodvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // datevtDataGridViewTextBoxColumn
+            // 
+            this.datevtDataGridViewTextBoxColumn.DataPropertyName = "date_vt";
+            dataGridViewCellStyle1.Format = "d";
+            dataGridViewCellStyle1.NullValue = null;
+            this.datevtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle1;
+            this.datevtDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.datevtDataGridViewTextBoxColumn.Name = "datevtDataGridViewTextBoxColumn";
+            this.datevtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // qttvtDataGridViewTextBoxColumn
+            // 
+            this.qttvtDataGridViewTextBoxColumn.DataPropertyName = "qtt_vt";
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle2.Format = "N2";
+            this.qttvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle2;
+            this.qttvtDataGridViewTextBoxColumn.HeaderText = "Qtt";
+            this.qttvtDataGridViewTextBoxColumn.Name = "qttvtDataGridViewTextBoxColumn";
+            this.qttvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.qttvtDataGridViewTextBoxColumn.Width = 75;
+            // 
+            // puvtDataGridViewTextBoxColumn
+            // 
+            this.puvtDataGridViewTextBoxColumn.DataPropertyName = "pu_vt";
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle3.Format = "N3";
+            dataGridViewCellStyle3.NullValue = "0";
+            this.puvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle3;
+            this.puvtDataGridViewTextBoxColumn.HeaderText = "Prix";
+            this.puvtDataGridViewTextBoxColumn.Name = "puvtDataGridViewTextBoxColumn";
+            this.puvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.puvtDataGridViewTextBoxColumn.Width = 75;
+            // 
+            // tvavtDataGridViewTextBoxColumn
+            // 
+            this.tvavtDataGridViewTextBoxColumn.DataPropertyName = "tva_vt";
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle4.Format = "N2";
+            dataGridViewCellStyle4.NullValue = "0";
+            this.tvavtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle4;
+            this.tvavtDataGridViewTextBoxColumn.HeaderText = "TVA";
+            this.tvavtDataGridViewTextBoxColumn.Name = "tvavtDataGridViewTextBoxColumn";
+            this.tvavtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.tvavtDataGridViewTextBoxColumn.Width = 75;
+            // 
+            // ht_vt
+            // 
+            this.ht_vt.DataPropertyName = "ht_vt";
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Format = "N2";
+            dataGridViewCellStyle5.NullValue = "0";
+            this.ht_vt.DefaultCellStyle = dataGridViewCellStyle5;
+            this.ht_vt.HeaderText = "HT";
+            this.ht_vt.Name = "ht_vt";
+            this.ht_vt.ReadOnly = true;
+            // 
+            // ttcvtDataGridViewTextBoxColumn
+            // 
+            this.ttcvtDataGridViewTextBoxColumn.DataPropertyName = "ttc_vt";
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Format = "N2";
+            this.ttcvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle6;
+            this.ttcvtDataGridViewTextBoxColumn.HeaderText = "TTC";
+            this.ttcvtDataGridViewTextBoxColumn.Name = "ttcvtDataGridViewTextBoxColumn";
+            this.ttcvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.ttcvtDataGridViewTextBoxColumn.Width = 75;
+            // 
+            // dg_simul
+            // 
+            this.dg_simul.AllowUserToAddRows = false;
+            this.dg_simul.AllowUserToDeleteRows = false;
+            this.dg_simul.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_simul.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_simul.Location = new System.Drawing.Point(0, 0);
+            this.dg_simul.Name = "dg_simul";
+            this.dg_simul.ReadOnly = true;
+            this.dg_simul.Size = new System.Drawing.Size(970, 154);
+            this.dg_simul.TabIndex = 0;
+            // 
+            // f_facture
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(970, 539);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_facture";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Factures";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_facture_FormClosing);
+            this.Load += new System.EventHandler(this.f_facture_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel1.PerformLayout();
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_simul)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.BindingSource tbventeBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.TextBox vt_date;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox vt_ttc;
+        private System.Windows.Forms.TextBox vt_tva;
+        private System.Windows.Forms.TextBox vt_ht;
+        private System.Windows.Forms.TextBox vt_pu;
+        private System.Windows.Forms.TextBox vt_qtt;
+        private System.Windows.Forms.TextBox vt_prod;
+        private System.Windows.Forms.TextBox vt_vehi;
+        private System.Windows.Forms.TextBox vt_station;
+        private System.Windows.Forms.TextBox vt_epreuve;
+        private System.Windows.Forms.Button bt_fact;
+        private System.Windows.Forms.DataGridView dg_vente;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn stationvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn vehivtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn prodvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn qttvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn puvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tvavtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ht_vt;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ttcvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.Button bt_simul;
+        private System.Windows.Forms.DataGridView dg_simul;
+    }
+}

+ 411 - 0
Fuel_ASO/f_facture.cs

@@ -0,0 +1,411 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.IO;
+using Excel = Microsoft.Office.Interop.Excel;
+using System.Diagnostics;
+using System.Xml.Linq;
+
+namespace Fuel01
+{
+    public partial class f_facture : Form
+    {
+
+        static ProdEqualityComparer prodEqC = new ProdEqualityComparer();
+        Dictionary<id_prod, vente_tot> lvente_tot = new Dictionary<id_prod, vente_tot>(prodEqC);
+        Dictionary<decimal, vente_tva> lvente_tva = new Dictionary<decimal, vente_tva>();
+        Dictionary<string, vente_tot> lvente_fact = new Dictionary<string, vente_tot>();
+        DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_stationDataTable tb_station = new DataSet1.tb_stationDataTable();
+
+        DataSet1.tb_stationRow current_sta = null;
+
+        string id_sta = "";
+        List<produit> lproduit = new List<produit>();
+
+
+        public f_facture(string _id_sta)
+        {
+            id_sta = _id_sta;
+            InitializeComponent();
+
+            if (File.Exists(Program.subfolder + @"\station.json"))
+                tb_station = DbUtil.LoadFromJson<DataSet1.tb_stationDataTable>(Program.subfolder + @"\station.json", tb_station);
+
+            if (File.Exists(Program.subfolder + @"\vente.json"))
+                tb_vente = DbUtil.LoadFromJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente.json", tb_vente);
+
+            tb_vente.AcceptChanges();
+
+        }
+
+        private void f_facture_Load(object sender, EventArgs e)
+        {
+            tbventeBindingSource.DataSource = tb_vente;
+            tbventeBindingSource.Filter = " station_vt='" + id_sta + "'";
+
+            current_sta = tb_station.FindBykey_sta(id_sta);
+
+            init_list_produit();
+        }
+
+        private void bt_fact_Click(object sender, EventArgs e)
+        {
+            this.Cursor = Cursors.WaitCursor;
+            makeChange();
+            lvente_tot.Clear();
+            lvente_tva.Clear();
+
+            string fileName = "";
+            Excel.Application xlApp = null;
+            try
+            {
+                if (!File.Exists(Program.subfolder + @"\Facture_Carbu.xlsx"))
+                {
+                    MessageBox.Show("Fichier de base " + Program.subfolder + @"\Facture_Carbu.xlsx non trouvé!!!", "Erreur");
+                    return;
+                }
+                fileName = Program.subfolder + @"\Facture_" + id_sta + ".xlsx";
+                File.Copy(Program.subfolder + @"\Facture_Carbu.xlsx", fileName, true);
+
+
+                Excel.Workbook xlWorkBook;
+                Excel.Worksheet xlWorkSheet;
+                object misValue = System.Reflection.Missing.Value;
+
+                try
+                {
+                    xlApp = new Excel.Application();
+                    xlWorkBook = xlApp.Workbooks.Open(fileName, misValue);
+                    xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
+                }
+                catch (Exception ex)
+                {
+                    MessageBox.Show("Vérifier que le fichier n'est pas ouvert et est un fichier Excel correct", "Ouverture de " + fileName + " impossible", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    if (xlApp != null)
+                        xlApp.Quit();
+                    this.Cursor = Cursors.Default;
+                    return;
+                }
+
+                xlWorkSheet.Cells[2, 2].Value = makeItCLean(xlWorkSheet.Cells[2, 2].Value, current_sta["nom_sta"].ToString());
+                xlWorkSheet.Cells[3, 2].Value = makeItCLean(xlWorkSheet.Cells[3, 2].Value, current_sta["adr1_sta"].ToString());
+                xlWorkSheet.Cells[4, 2].Value = makeItCLean(xlWorkSheet.Cells[4, 2].Value, current_sta["adr2_sta"].ToString());
+                xlWorkSheet.Cells[5, 2].Value = makeItCLean(xlWorkSheet.Cells[5, 2].Value, current_sta["cp_sta"].ToString() + "-" + current_sta["ville_sta"].ToString());
+                xlWorkSheet.Cells[6, 2].Value = makeItCLean(xlWorkSheet.Cells[6, 2].Value, current_sta["pays_sta"].ToString());
+                xlWorkSheet.Cells[8, 2].Value = makeItCLean(xlWorkSheet.Cells[8, 2].Value, current_sta["tel_sta"].ToString());
+                xlWorkSheet.Cells[9, 2].Value = makeItCLean(xlWorkSheet.Cells[9, 2].Value, current_sta["tva_sta"].ToString());
+
+                xlWorkSheet.Cells[10, 4].Value = makeItCLean(xlWorkSheet.Cells[10, 4].Value, current_sta["ville_sta"].ToString());
+                xlWorkSheet.Cells[11, 4].Value = makeItCLean(xlWorkSheet.Cells[11, 4].Value, DateTime.Now.ToString("Le : dd/MM/yyyy"));
+
+                xlWorkSheet.Cells[14, 2].Value = makeItCLean(xlWorkSheet.Cells[14, 2].Value, Program.nom_ope + " du " + current_sta.date_sta.ToString("dd/MM/yy"));
+
+                xlWorkSheet.Cells[48, 2].Value = makeItCLean(xlWorkSheet.Cells[48, 2].Value, current_sta["divers_sta"].ToString());
+
+
+                Dictionary<string, vente_tot> lvente_fact = new Dictionary<string, vente_tot>();
+                lvente_fact.Add("A - DIESEL", new vente_tot { vente = null, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+                lvente_fact.Add("B - AUTRES CARBURANTS", new vente_tot { vente = null, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+
+                List<simul> lsimul = new List<simul>();
+                lvente_tot.Clear();
+
+                try
+                {
+
+
+                    foreach (DataSet1.tb_venteRow myrow in tb_vente.Where(p => p.station_vt == id_sta))
+                    {
+                        vente_tot myFact = null;
+                        produit pdt = lproduit.Find(xx => xx.key_prod == myrow.prod_vt);
+                        string lib_produit = "";
+                        string sort = "Z";
+                        if (pdt != null) // Produit référencé
+                        {
+                            sort = pdt.type_prod == "Carburant" ? (myrow.prod_vt.ToUpper().Contains("DIESEL") ? "A - DIESEL" : "B - AUTRES CARBURANTS") : "C - PRODUITS DIVERS";
+                            lib_produit = pdt.lib_prod;
+                        }
+                        else
+                            sort = "C - PRODUITS DIVERS";
+                        id_prod my_id = new id_prod { code_pro = myrow.prod_vt, ttc_pro = myrow.pu_vt, tva_pro = myrow.tva_vt, lib_pro = lib_produit, type_pro = sort };
+
+                        if (!lvente_fact.ContainsKey(sort))
+                            lvente_fact.Add(sort, new vente_tot { vente = myrow, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+
+                        myFact = lvente_fact[sort];
+                        myFact.total_qtt += myrow.qtt_vt;
+                        myFact.total_ht += myrow.ht_vt;
+                        myFact.total_ttc += myrow.ttc_vt;
+
+                    }
+
+
+                    int lig = 21;
+                    decimal totgal = 0;
+                    foreach (KeyValuePair<string, vente_tot> myVente in lvente_fact)
+                    {
+
+                        Console.WriteLine(string.Format(" Type :{0}  ", myVente.Key));
+                        if (myVente.Value.total_ht > 0)
+                        {
+                            xlWorkSheet.Cells[lig, 2].Value = myVente.Key.Replace("A - ", "").Replace("B - ", "").Replace("C - ", "").Replace("D - ", "");
+                            xlWorkSheet.Cells[lig, 6].Value = myVente.Value.total_ttc;
+
+                            totgal += myVente.Value.total_ttc;
+                            lig += 1;
+                        }
+                    }
+
+                    xlWorkSheet.Cells[41, 6].Value = totgal;
+                    lig = 44;
+
+                    xlWorkBook.Save();
+                    xlWorkBook.Close();
+                }
+                catch (Exception ex)
+                {
+                    MessageBox.Show(ex.Message, "Erreur à la création de " + fileName);
+                }
+
+
+                if (xlApp != null)
+                    xlApp.Quit();
+
+
+                ProcessStartInfo notepadStartInfo = new ProcessStartInfo(fileName);
+                Process notepad = Process.Start(notepadStartInfo);
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("Abandon !!!! \r\n " + ex.Message);
+            }
+            this.Cursor = Cursors.Default;
+        }
+
+
+        private string makeItCLean(string strExcel, string data)
+        {
+            string ret = data;
+            if (strExcel.Length > 0)
+                if (strExcel.Substring(0, 1) == "#")
+                    ret = strExcel.Substring(1) + data;
+            return ret;
+        }
+        private void f_facture_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            e.Cancel = makeChange();
+        }
+
+
+        private void init_list_produit()
+        {
+
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\produit.xml");
+            var data = from item in xRoot.Descendants("tb_prod")
+                       orderby item.Element("type_prod").Value, item.Element("lib_prod").Value
+                       select new produit()
+                       {
+                           key_prod = item.Element("key_prod").Value,
+                           lib_prod = item.Element("lib_prod").Value,
+                           type_prod = item.Element("type_prod").Value
+                       };
+            lproduit = data.ToList();
+        }
+
+        private void bt_simul_Click(object sender, EventArgs e)
+        {
+
+            //makeChange();
+            Dictionary<string, vente_tot> lvente_fact = new Dictionary<string, vente_tot>();
+            lvente_fact.Add("A - DIESEL", new vente_tot { vente = null, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+            lvente_fact.Add("B - AUTRES CARBURANTS", new vente_tot { vente = null, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+
+            List<simul> lsimul = new List<simul>();
+            lvente_tot.Clear();
+            lvente_tva.Clear();
+
+            try
+            {
+
+                foreach (DataSet1.tb_venteRow myrow in tb_vente.Where(p => p.station_vt == id_sta))
+                {
+                    vente_tot myTot = null;
+                    vente_tot myFact = null;
+                    produit pdt = lproduit.Find(xx => xx.key_prod == myrow.prod_vt);
+                    string lib_produit = "";
+                    string sort = "Z";
+                    if (pdt != null) // Produit référencé
+                    {
+                        sort = pdt.type_prod == "Carburant" ? (myrow.prod_vt.ToUpper().Contains("DIESEL") ? "A - DIESEL" : "B - AUTRES CARBURANTS") : "C - PRODUITS DIVERS";
+                        lib_produit = pdt.lib_prod;
+                    }
+                    else
+                        sort = "C - PRODUITS DIVERS";
+                    id_prod my_id = new id_prod { code_pro = myrow.prod_vt, ttc_pro = myrow.pu_vt, tva_pro = myrow.tva_vt, lib_pro = lib_produit, type_pro = sort };
+
+                    if (!lvente_fact.ContainsKey(sort))
+                        lvente_fact.Add(sort, new vente_tot { vente = null, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+                    if (!lvente_tot.ContainsKey(my_id))
+                        lvente_tot.Add(my_id, new vente_tot { vente = null, total_ttc = 0, total_qtt = 0, total_ht = 0 });
+
+                    myTot = lvente_tot[my_id];
+                    myTot.total_qtt += myrow.qtt_vt;
+                    myTot.total_ht += myrow.ht_vt;
+                    myTot.total_ttc += myrow.ttc_vt;
+
+                    myFact = lvente_fact[sort];
+                    myFact.total_qtt += myrow.qtt_vt;
+                    myFact.total_ht += myrow.ht_vt;
+                    myFact.total_ttc += myrow.ttc_vt;
+
+                    vente_tva myTva = null;
+                    if (myrow.tva_vt != 0)
+                    {
+                        if (!lvente_tva.ContainsKey(myrow.tva_vt))
+                            lvente_tva.Add(myrow.tva_vt, new vente_tva { taux_tva = myrow.tva_vt, base_tva = 0, mnt_ttc = 0, mnt_tva = 0 });
+
+                        myTva = lvente_tva[myrow.tva_vt];
+                        myTva.base_tva += myrow.ht_vt;
+                        myTva.mnt_ttc += myrow.ttc_vt;
+                        myTva.mnt_tva = myTva.mnt_ttc - myTva.base_tva;
+                        Console.WriteLine(string.Format(" taux:{0} base:{1}  tva:{2}  ttc:{3} ", myrow.tva_vt, myTva.base_tva, myTva.mnt_tva, myTva.mnt_ttc));
+                    }
+
+                }
+
+
+                int nbprod = 0;
+                int lig = 21;
+                decimal totgal = 0;
+
+                foreach (KeyValuePair<string, vente_tot> myVente in lvente_fact)
+                {
+
+                    Console.WriteLine(string.Format(" Type :{0}  ", myVente.Key));
+                    DataSet1.tb_venteRow detailVente = myVente.Value.vente;
+                    simul sm = new simul();
+                    sm.libel = myVente.Key;
+                    sm.qtt = 0;
+                    sm.pu = 0;
+                    sm.prix = myVente.Value.total_ttc;
+                    totgal += sm.prix;
+                    lig += 1;
+                    nbprod += 1;
+                    lsimul.Add(sm);
+                }
+                lsimul.Add(new simul { libel = "Total", prix = totgal, qtt = null, pu = null });
+
+                lig = 44;
+                dg_simul.DataSource = lsimul;
+
+                dg_simul.Columns[0].Width = 300;
+
+                DataGridViewCellStyle N2 = new DataGridViewCellStyle();
+                N2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+                N2.Format = "N2";
+                N2.NullValue = "";
+
+                DataGridViewCellStyle N3 = new DataGridViewCellStyle();
+                N3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+                N3.Format = "N3";
+                N3.NullValue = "";
+
+                dg_simul.Columns[1].DefaultCellStyle = N2;
+                dg_simul.Columns[2].DefaultCellStyle = N3;
+                dg_simul.Columns[3].DefaultCellStyle = N2;
+
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show(ex.Message, "Erreur au calcul de la facture");
+            }
+        }
+
+        private bool makeChange()
+        {
+            this.vt_qtt.DataBindings["Text"].BindingManagerBase.EndCurrentEdit();
+
+            bool ret = false;
+            DataTable tb_vente_change = tb_vente.GetChanges();
+
+            while (tb_vente_change != null)
+            {
+                if (MessageBox.Show("Voulez-vous Valider Oui ou Non les modifications apportées ?", "Modifications en cours!!!", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation) == DialogResult.Yes)
+                {
+                    tb_vente.AcceptChanges();
+                    tb_vente.WriteXml(Program.subfolder + @"\vente.xml", XmlWriteMode.WriteSchema);
+                    tb_vente_change = tb_vente.GetChanges();
+                }
+                else
+                {
+                    tb_vente.RejectChanges();
+                    tb_vente_change = tb_vente.GetChanges();
+                }
+            }
+            ret = (tb_vente_change != null);
+            return ret;
+        }
+
+        private void vt_qtt_TextChanged(object sender, EventArgs e)
+        {
+            this.vt_ttc.DataBindings["Text"].BindingManagerBase.EndCurrentEdit();
+            if (vt_ttc.Text == "")
+            {
+                vt_ttc.Text = "0";
+                vt_qtt.SelectAll();
+            }
+            float qtt = 0;
+            float puttc = 0;
+            float tva = 0;
+            float ttc = 0;
+            float ht = 0;
+            bool ok = true;
+            ok = float.TryParse(vt_ttc.Text, out ttc);
+            if (ok) ok = float.TryParse(vt_pu.Text, out puttc);
+            if (ok) ok = float.TryParse(vt_tva.Text, out tva);
+            if (ok) ok = float.TryParse(vt_ht.Text, out ht);
+            if (ok) ok = float.TryParse(vt_ttc.Text, out ttc);
+            qtt = ttc / puttc;
+            ht = (qtt * puttc) / (1 + (tva / 100));
+            float dif = ttc - ht;
+            vt_qtt.Text = String.Format("{0:0.00}", qtt);
+            vt_ht.Text = String.Format("{0:0.00}", ht);
+
+            vt_ttc.Refresh();
+            vt_ht.Refresh();
+
+            this.vt_qtt.DataBindings["Text"].BindingManagerBase.EndCurrentEdit();
+            this.vt_ht.DataBindings["Text"].BindingManagerBase.EndCurrentEdit();
+        }
+
+        private void vt_qtt_Enter(object sender, EventArgs e)
+        {
+            this.vt_ttc.TextChanged += new System.EventHandler(this.vt_qtt_TextChanged);
+
+        }
+
+        private void vt_qtt_Leave(object sender, EventArgs e)
+        {
+            if (vt_qtt.Text == "") vt_qtt.Text = "0";
+            this.vt_ttc.TextChanged -= new System.EventHandler(this.vt_qtt_TextChanged);
+
+        }
+    }
+
+    public class simul
+    {
+        public string libel { get; set; }
+        public decimal? qtt { get; set; }
+        public decimal? pu { get; set; }
+        public decimal prix { get; set; }
+
+
+    }
+}

+ 135 - 0
Fuel_ASO/f_facture.resx

@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbventeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>561, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>733, 17</value>
+  </metadata>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ht_vt.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>54</value>
+  </metadata>
+</root>

+ 745 - 0
Fuel_ASO/f_impvehi.Designer.cs

@@ -0,0 +1,745 @@
+namespace Fuel01
+{
+    partial class f_impvehi
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+            this.st1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.StatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.checkZero = new System.Windows.Forms.CheckBox();
+            this.bt_ok = new System.Windows.Forms.Button();
+            this.bt_openFile = new System.Windows.Forms.Button();
+            this.textNomFile = new System.Windows.Forms.TextBox();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.dg_vehi = new System.Windows.Forms.DataGridView();
+            this.num_vehiCol = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmpnum_vehiCol = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cond_vehiCol = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.immat_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.famille_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.keyvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.numvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmpnumvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.immatvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.opevehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.typevehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.condvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.famillevehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.carbuvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.kmdepvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.kmarrvehiDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tri = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbvehiculeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.tb_allValid = new System.Windows.Forms.Button();
+            this.bt_Sup = new System.Windows.Forms.Button();
+            this.Bt_Abort = new System.Windows.Forms.Button();
+            this.bt_Valid = new System.Windows.Forms.Button();
+            this.bt_Aj = new System.Windows.Forms.Button();
+            this.bt_Mod = new System.Windows.Forms.Button();
+            this.combo_famille = new System.Windows.Forms.ComboBox();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.combo_energy = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.text_cond_vehi = new System.Windows.Forms.TextBox();
+            this.text_kmarr_vehi = new System.Windows.Forms.TextBox();
+            this.text_kmdep_vehi = new System.Windows.Forms.TextBox();
+            this.text_type_vehi = new System.Windows.Forms.TextBox();
+            this.text_cmpnum_vehi = new System.Windows.Forms.TextBox();
+            this.text_num_vehi = new System.Windows.Forms.TextBox();
+            this.text_immat_vehi = new System.Windows.Forms.TextBox();
+            this.openFileParc = new System.Windows.Forms.OpenFileDialog();
+            this.text_sort_vehi = new System.Windows.Forms.TextBox();
+            this.statusStrip1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vehi)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiculeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // statusStrip1
+            // 
+            this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.st1,
+            this.StatusLabel1});
+            this.statusStrip1.Location = new System.Drawing.Point(0, 421);
+            this.statusStrip1.Name = "statusStrip1";
+            this.statusStrip1.Padding = new System.Windows.Forms.Padding(1, 0, 10, 0);
+            this.statusStrip1.Size = new System.Drawing.Size(826, 22);
+            this.statusStrip1.TabIndex = 27;
+            this.statusStrip1.Text = "statusStrip1";
+            // 
+            // st1
+            // 
+            this.st1.Name = "st1";
+            this.st1.Size = new System.Drawing.Size(0, 17);
+            // 
+            // StatusLabel1
+            // 
+            this.StatusLabel1.Name = "StatusLabel1";
+            this.StatusLabel1.Size = new System.Drawing.Size(16, 17);
+            this.StatusLabel1.Text = "...";
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.checkZero);
+            this.splitContainer1.Panel1.Controls.Add(this.bt_ok);
+            this.splitContainer1.Panel1.Controls.Add(this.bt_openFile);
+            this.splitContainer1.Panel1.Controls.Add(this.textNomFile);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(826, 421);
+            this.splitContainer1.SplitterDistance = 28;
+            this.splitContainer1.TabIndex = 29;
+            // 
+            // checkZero
+            // 
+            this.checkZero.AutoSize = true;
+            this.checkZero.Location = new System.Drawing.Point(705, 7);
+            this.checkZero.Name = "checkZero";
+            this.checkZero.Size = new System.Drawing.Size(90, 17);
+            this.checkZero.TabIndex = 3;
+            this.checkZero.Text = "Effacer avant";
+            this.checkZero.UseVisualStyleBackColor = true;
+            // 
+            // bt_ok
+            // 
+            this.bt_ok.Enabled = false;
+            this.bt_ok.Location = new System.Drawing.Point(648, 4);
+            this.bt_ok.Name = "bt_ok";
+            this.bt_ok.Size = new System.Drawing.Size(51, 23);
+            this.bt_ok.TabIndex = 2;
+            this.bt_ok.Text = "GO !";
+            this.bt_ok.UseVisualStyleBackColor = true;
+            this.bt_ok.Click += new System.EventHandler(this.bt_ok_Click);
+            // 
+            // bt_openFile
+            // 
+            this.bt_openFile.Location = new System.Drawing.Point(515, 4);
+            this.bt_openFile.Name = "bt_openFile";
+            this.bt_openFile.Size = new System.Drawing.Size(129, 23);
+            this.bt_openFile.TabIndex = 1;
+            this.bt_openFile.Text = "Choisir le fichier Parc";
+            this.bt_openFile.UseVisualStyleBackColor = true;
+            this.bt_openFile.Click += new System.EventHandler(this.bt_openFile_Click);
+            // 
+            // textNomFile
+            // 
+            this.textNomFile.Location = new System.Drawing.Point(3, 4);
+            this.textNomFile.Name = "textNomFile";
+            this.textNomFile.Size = new System.Drawing.Size(506, 20);
+            this.textNomFile.TabIndex = 0;
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.dg_vehi);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.text_sort_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.tb_allValid);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Sup);
+            this.splitContainer2.Panel2.Controls.Add(this.Bt_Abort);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Valid);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Aj);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Mod);
+            this.splitContainer2.Panel2.Controls.Add(this.combo_famille);
+            this.splitContainer2.Panel2.Controls.Add(this.label8);
+            this.splitContainer2.Panel2.Controls.Add(this.label7);
+            this.splitContainer2.Panel2.Controls.Add(this.label6);
+            this.splitContainer2.Panel2.Controls.Add(this.label5);
+            this.splitContainer2.Panel2.Controls.Add(this.label4);
+            this.splitContainer2.Panel2.Controls.Add(this.combo_energy);
+            this.splitContainer2.Panel2.Controls.Add(this.label3);
+            this.splitContainer2.Panel2.Controls.Add(this.label2);
+            this.splitContainer2.Panel2.Controls.Add(this.label1);
+            this.splitContainer2.Panel2.Controls.Add(this.text_cond_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_kmarr_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_kmdep_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_type_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_cmpnum_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_num_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_immat_vehi);
+            this.splitContainer2.Size = new System.Drawing.Size(826, 389);
+            this.splitContainer2.SplitterDistance = 509;
+            this.splitContainer2.TabIndex = 2;
+            // 
+            // dg_vehi
+            // 
+            this.dg_vehi.AllowUserToAddRows = false;
+            this.dg_vehi.AllowUserToDeleteRows = false;
+            this.dg_vehi.AllowUserToOrderColumns = true;
+            this.dg_vehi.AutoGenerateColumns = false;
+            this.dg_vehi.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vehi.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.num_vehiCol,
+            this.cmpnum_vehiCol,
+            this.cond_vehiCol,
+            this.immat_vehi,
+            this.famille_vehi,
+            this.keyvehiDataGridViewTextBoxColumn,
+            this.numvehiDataGridViewTextBoxColumn,
+            this.cmpnumvehiDataGridViewTextBoxColumn,
+            this.immatvehiDataGridViewTextBoxColumn,
+            this.opevehiDataGridViewTextBoxColumn,
+            this.typevehiDataGridViewTextBoxColumn,
+            this.condvehiDataGridViewTextBoxColumn,
+            this.famillevehiDataGridViewTextBoxColumn,
+            this.carbuvehiDataGridViewTextBoxColumn,
+            this.kmdepvehiDataGridViewTextBoxColumn,
+            this.kmarrvehiDataGridViewTextBoxColumn,
+            this.tri});
+            this.dg_vehi.DataSource = this.tbvehiculeBindingSource;
+            this.dg_vehi.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_vehi.Location = new System.Drawing.Point(0, 0);
+            this.dg_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_vehi.Name = "dg_vehi";
+            this.dg_vehi.ReadOnly = true;
+            this.dg_vehi.RowTemplate.Height = 24;
+            this.dg_vehi.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_vehi.Size = new System.Drawing.Size(509, 389);
+            this.dg_vehi.TabIndex = 2;
+            // 
+            // num_vehiCol
+            // 
+            this.num_vehiCol.DataPropertyName = "num_vehi";
+            dataGridViewCellStyle1.Format = "###0";
+            dataGridViewCellStyle1.NullValue = null;
+            this.num_vehiCol.DefaultCellStyle = dataGridViewCellStyle1;
+            this.num_vehiCol.HeaderText = "Numéro";
+            this.num_vehiCol.Name = "num_vehiCol";
+            this.num_vehiCol.ReadOnly = true;
+            this.num_vehiCol.Width = 60;
+            // 
+            // cmpnum_vehiCol
+            // 
+            this.cmpnum_vehiCol.DataPropertyName = "cmpnum_vehi";
+            this.cmpnum_vehiCol.HeaderText = "Cp";
+            this.cmpnum_vehiCol.Name = "cmpnum_vehiCol";
+            this.cmpnum_vehiCol.ReadOnly = true;
+            this.cmpnum_vehiCol.Width = 30;
+            // 
+            // cond_vehiCol
+            // 
+            this.cond_vehiCol.DataPropertyName = "cond_vehi";
+            this.cond_vehiCol.HeaderText = "Conducteur";
+            this.cond_vehiCol.Name = "cond_vehiCol";
+            this.cond_vehiCol.ReadOnly = true;
+            this.cond_vehiCol.Width = 120;
+            // 
+            // immat_vehi
+            // 
+            this.immat_vehi.DataPropertyName = "immat_vehi";
+            this.immat_vehi.HeaderText = "Immatriculation";
+            this.immat_vehi.Name = "immat_vehi";
+            this.immat_vehi.ReadOnly = true;
+            // 
+            // famille_vehi
+            // 
+            this.famille_vehi.DataPropertyName = "famille_vehi";
+            this.famille_vehi.HeaderText = "Famille";
+            this.famille_vehi.Name = "famille_vehi";
+            this.famille_vehi.ReadOnly = true;
+            this.famille_vehi.Width = 150;
+            // 
+            // keyvehiDataGridViewTextBoxColumn
+            // 
+            this.keyvehiDataGridViewTextBoxColumn.DataPropertyName = "key_vehi";
+            this.keyvehiDataGridViewTextBoxColumn.HeaderText = "key_vehi";
+            this.keyvehiDataGridViewTextBoxColumn.Name = "keyvehiDataGridViewTextBoxColumn";
+            this.keyvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // numvehiDataGridViewTextBoxColumn
+            // 
+            this.numvehiDataGridViewTextBoxColumn.DataPropertyName = "num_vehi";
+            this.numvehiDataGridViewTextBoxColumn.HeaderText = "num_vehi";
+            this.numvehiDataGridViewTextBoxColumn.Name = "numvehiDataGridViewTextBoxColumn";
+            this.numvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // cmpnumvehiDataGridViewTextBoxColumn
+            // 
+            this.cmpnumvehiDataGridViewTextBoxColumn.DataPropertyName = "cmpnum_vehi";
+            this.cmpnumvehiDataGridViewTextBoxColumn.HeaderText = "cmpnum_vehi";
+            this.cmpnumvehiDataGridViewTextBoxColumn.Name = "cmpnumvehiDataGridViewTextBoxColumn";
+            this.cmpnumvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // immatvehiDataGridViewTextBoxColumn
+            // 
+            this.immatvehiDataGridViewTextBoxColumn.DataPropertyName = "immat_vehi";
+            this.immatvehiDataGridViewTextBoxColumn.HeaderText = "immat_vehi";
+            this.immatvehiDataGridViewTextBoxColumn.Name = "immatvehiDataGridViewTextBoxColumn";
+            this.immatvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // opevehiDataGridViewTextBoxColumn
+            // 
+            this.opevehiDataGridViewTextBoxColumn.DataPropertyName = "ope_vehi";
+            this.opevehiDataGridViewTextBoxColumn.HeaderText = "ope_vehi";
+            this.opevehiDataGridViewTextBoxColumn.Name = "opevehiDataGridViewTextBoxColumn";
+            this.opevehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // typevehiDataGridViewTextBoxColumn
+            // 
+            this.typevehiDataGridViewTextBoxColumn.DataPropertyName = "type_vehi";
+            this.typevehiDataGridViewTextBoxColumn.HeaderText = "type_vehi";
+            this.typevehiDataGridViewTextBoxColumn.Name = "typevehiDataGridViewTextBoxColumn";
+            this.typevehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // condvehiDataGridViewTextBoxColumn
+            // 
+            this.condvehiDataGridViewTextBoxColumn.DataPropertyName = "cond_vehi";
+            this.condvehiDataGridViewTextBoxColumn.HeaderText = "cond_vehi";
+            this.condvehiDataGridViewTextBoxColumn.Name = "condvehiDataGridViewTextBoxColumn";
+            this.condvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // famillevehiDataGridViewTextBoxColumn
+            // 
+            this.famillevehiDataGridViewTextBoxColumn.DataPropertyName = "famille_vehi";
+            this.famillevehiDataGridViewTextBoxColumn.HeaderText = "famille_vehi";
+            this.famillevehiDataGridViewTextBoxColumn.Name = "famillevehiDataGridViewTextBoxColumn";
+            this.famillevehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // carbuvehiDataGridViewTextBoxColumn
+            // 
+            this.carbuvehiDataGridViewTextBoxColumn.DataPropertyName = "carbu_vehi";
+            this.carbuvehiDataGridViewTextBoxColumn.HeaderText = "carbu_vehi";
+            this.carbuvehiDataGridViewTextBoxColumn.Name = "carbuvehiDataGridViewTextBoxColumn";
+            this.carbuvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // kmdepvehiDataGridViewTextBoxColumn
+            // 
+            this.kmdepvehiDataGridViewTextBoxColumn.DataPropertyName = "kmdep_vehi";
+            this.kmdepvehiDataGridViewTextBoxColumn.HeaderText = "kmdep_vehi";
+            this.kmdepvehiDataGridViewTextBoxColumn.Name = "kmdepvehiDataGridViewTextBoxColumn";
+            this.kmdepvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // kmarrvehiDataGridViewTextBoxColumn
+            // 
+            this.kmarrvehiDataGridViewTextBoxColumn.DataPropertyName = "kmarr_vehi";
+            this.kmarrvehiDataGridViewTextBoxColumn.HeaderText = "kmarr_vehi";
+            this.kmarrvehiDataGridViewTextBoxColumn.Name = "kmarrvehiDataGridViewTextBoxColumn";
+            this.kmarrvehiDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // tri
+            // 
+            this.tri.DataPropertyName = "sort1_vehi";
+            this.tri.HeaderText = "sort1_vehi";
+            this.tri.Name = "tri";
+            this.tri.ReadOnly = true;
+            // 
+            // tbvehiculeBindingSource
+            // 
+            this.tbvehiculeBindingSource.DataMember = "tb_vehi";
+            this.tbvehiculeBindingSource.DataSource = this.dataSet1;
+            this.tbvehiculeBindingSource.Sort = "categ_vehi";
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // tb_allValid
+            // 
+            this.tb_allValid.Location = new System.Drawing.Point(116, 341);
+            this.tb_allValid.Name = "tb_allValid";
+            this.tb_allValid.Size = new System.Drawing.Size(75, 23);
+            this.tb_allValid.TabIndex = 47;
+            this.tb_allValid.Text = "Valider";
+            this.tb_allValid.UseVisualStyleBackColor = true;
+            this.tb_allValid.Click += new System.EventHandler(this.tb_allValid_Click);
+            // 
+            // bt_Sup
+            // 
+            this.bt_Sup.Location = new System.Drawing.Point(206, 259);
+            this.bt_Sup.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Sup.Name = "bt_Sup";
+            this.bt_Sup.Size = new System.Drawing.Size(66, 19);
+            this.bt_Sup.TabIndex = 15;
+            this.bt_Sup.Text = "Supprimer";
+            this.bt_Sup.UseVisualStyleBackColor = true;
+            this.bt_Sup.Click += new System.EventHandler(this.bt_Sup_Click);
+            // 
+            // Bt_Abort
+            // 
+            this.Bt_Abort.Location = new System.Drawing.Point(194, 297);
+            this.Bt_Abort.Margin = new System.Windows.Forms.Padding(2);
+            this.Bt_Abort.Name = "Bt_Abort";
+            this.Bt_Abort.Size = new System.Drawing.Size(77, 19);
+            this.Bt_Abort.TabIndex = 17;
+            this.Bt_Abort.Text = "Abandonner";
+            this.Bt_Abort.UseVisualStyleBackColor = true;
+            this.Bt_Abort.Click += new System.EventHandler(this.Bt_Abort_Click);
+            // 
+            // bt_Valid
+            // 
+            this.bt_Valid.Location = new System.Drawing.Point(55, 297);
+            this.bt_Valid.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Valid.Name = "bt_Valid";
+            this.bt_Valid.Size = new System.Drawing.Size(76, 19);
+            this.bt_Valid.TabIndex = 16;
+            this.bt_Valid.Text = "Valider";
+            this.bt_Valid.UseVisualStyleBackColor = true;
+            this.bt_Valid.Click += new System.EventHandler(this.bt_Valid_Click);
+            // 
+            // bt_Aj
+            // 
+            this.bt_Aj.Location = new System.Drawing.Point(130, 259);
+            this.bt_Aj.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Aj.Name = "bt_Aj";
+            this.bt_Aj.Size = new System.Drawing.Size(56, 19);
+            this.bt_Aj.TabIndex = 14;
+            this.bt_Aj.Text = "Ajouter";
+            this.bt_Aj.UseVisualStyleBackColor = true;
+            this.bt_Aj.Click += new System.EventHandler(this.bt_Aj_Click);
+            // 
+            // bt_Mod
+            // 
+            this.bt_Mod.Location = new System.Drawing.Point(54, 259);
+            this.bt_Mod.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Mod.Name = "bt_Mod";
+            this.bt_Mod.Size = new System.Drawing.Size(56, 19);
+            this.bt_Mod.TabIndex = 13;
+            this.bt_Mod.Text = "Modifier";
+            this.bt_Mod.UseVisualStyleBackColor = true;
+            this.bt_Mod.Click += new System.EventHandler(this.bt_Mod_Click);
+            // 
+            // combo_famille
+            // 
+            this.combo_famille.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "famille_vehi", true));
+            this.combo_famille.FormattingEnabled = true;
+            this.combo_famille.Items.AddRange(new object[] {
+            "Diesel",
+            "SS plomb 95",
+            "SS plomb 98"});
+            this.combo_famille.Location = new System.Drawing.Point(91, 187);
+            this.combo_famille.Margin = new System.Windows.Forms.Padding(2);
+            this.combo_famille.Name = "combo_famille";
+            this.combo_famille.Size = new System.Drawing.Size(164, 21);
+            this.combo_famille.TabIndex = 11;
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(22, 214);
+            this.label8.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(62, 13);
+            this.label8.TabIndex = 45;
+            this.label8.Text = "Conducteur";
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(43, 189);
+            this.label7.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(39, 13);
+            this.label7.TabIndex = 44;
+            this.label7.Text = "Famille";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(150, 162);
+            this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(41, 13);
+            this.label6.TabIndex = 43;
+            this.label6.Text = "KM arr.";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(37, 158);
+            this.label5.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(47, 13);
+            this.label5.TabIndex = 42;
+            this.label5.Text = "KM dép.";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(29, 135);
+            this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(53, 13);
+            this.label4.TabIndex = 41;
+            this.label4.Text = "Carburant";
+            // 
+            // combo_energy
+            // 
+            this.combo_energy.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "carbu_vehi", true));
+            this.combo_energy.FormattingEnabled = true;
+            this.combo_energy.Items.AddRange(new object[] {
+            "Diesel",
+            "SS plomb 95",
+            "SS plomb 98"});
+            this.combo_energy.Location = new System.Drawing.Point(91, 138);
+            this.combo_energy.Margin = new System.Windows.Forms.Padding(2);
+            this.combo_energy.Name = "combo_energy";
+            this.combo_energy.Size = new System.Drawing.Size(164, 21);
+            this.combo_energy.TabIndex = 8;
+            this.combo_energy.TextUpdate += new System.EventHandler(this.combo_energy_TextUpdate);
+            this.combo_energy.TextChanged += new System.EventHandler(this.combo_energy_TextUpdate);
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(52, 113);
+            this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(31, 13);
+            this.label3.TabIndex = 39;
+            this.label3.Text = "Type";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(34, 90);
+            this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(50, 13);
+            this.label2.TabIndex = 38;
+            this.label2.Text = "N°Immat.";
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(39, 67);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(44, 13);
+            this.label1.TabIndex = 37;
+            this.label1.Text = "Numero";
+            // 
+            // text_cond_vehi
+            // 
+            this.text_cond_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "cond_vehi", true));
+            this.text_cond_vehi.Location = new System.Drawing.Point(91, 212);
+            this.text_cond_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_cond_vehi.Name = "text_cond_vehi";
+            this.text_cond_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_cond_vehi.TabIndex = 12;
+            // 
+            // text_kmarr_vehi
+            // 
+            this.text_kmarr_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "kmarr_vehi", true));
+            this.text_kmarr_vehi.Location = new System.Drawing.Point(199, 161);
+            this.text_kmarr_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_kmarr_vehi.Name = "text_kmarr_vehi";
+            this.text_kmarr_vehi.Size = new System.Drawing.Size(56, 20);
+            this.text_kmarr_vehi.TabIndex = 10;
+            // 
+            // text_kmdep_vehi
+            // 
+            this.text_kmdep_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "kmdep_vehi", true));
+            this.text_kmdep_vehi.Location = new System.Drawing.Point(91, 163);
+            this.text_kmdep_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_kmdep_vehi.Name = "text_kmdep_vehi";
+            this.text_kmdep_vehi.Size = new System.Drawing.Size(52, 20);
+            this.text_kmdep_vehi.TabIndex = 9;
+            // 
+            // text_type_vehi
+            // 
+            this.text_type_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "type_vehi", true));
+            this.text_type_vehi.Location = new System.Drawing.Point(91, 114);
+            this.text_type_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_type_vehi.Name = "text_type_vehi";
+            this.text_type_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_type_vehi.TabIndex = 7;
+            // 
+            // text_cmpnum_vehi
+            // 
+            this.text_cmpnum_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "cmpnum_vehi", true));
+            this.text_cmpnum_vehi.Location = new System.Drawing.Point(207, 67);
+            this.text_cmpnum_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_cmpnum_vehi.Name = "text_cmpnum_vehi";
+            this.text_cmpnum_vehi.Size = new System.Drawing.Size(55, 20);
+            this.text_cmpnum_vehi.TabIndex = 5;
+            // 
+            // text_num_vehi
+            // 
+            this.text_num_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "num_vehi", true));
+            this.text_num_vehi.Location = new System.Drawing.Point(91, 67);
+            this.text_num_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_num_vehi.Name = "text_num_vehi";
+            this.text_num_vehi.Size = new System.Drawing.Size(112, 20);
+            this.text_num_vehi.TabIndex = 4;
+            // 
+            // text_immat_vehi
+            // 
+            this.text_immat_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "immat_vehi", true));
+            this.text_immat_vehi.Location = new System.Drawing.Point(91, 91);
+            this.text_immat_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_immat_vehi.Name = "text_immat_vehi";
+            this.text_immat_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_immat_vehi.TabIndex = 6;
+            // 
+            // openFileParc
+            // 
+            this.openFileParc.FileName = "*.*";
+            this.openFileParc.Filter = "Fichiers Excel| *.xl* | Tous les fichiers | *.*";
+            this.openFileParc.Title = "Choix du fichier \"Parc\"";
+            // 
+            // text_sort_vehi
+            // 
+            this.text_sort_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "sort1_vehi", true));
+            this.text_sort_vehi.Location = new System.Drawing.Point(91, 235);
+            this.text_sort_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_sort_vehi.Name = "text_sort_vehi";
+            this.text_sort_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_sort_vehi.TabIndex = 48;
+            // 
+            // f_impvehi
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(826, 443);
+            this.Controls.Add(this.splitContainer1);
+            this.Controls.Add(this.statusStrip1);
+            this.Margin = new System.Windows.Forms.Padding(2);
+            this.Name = "f_impvehi";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Importation Véhicules";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_vehi_FormClosing);
+            this.Load += new System.EventHandler(this.vehi_Load);
+            this.statusStrip1.ResumeLayout(false);
+            this.statusStrip1.PerformLayout();
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel1.PerformLayout();
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            this.splitContainer2.Panel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vehi)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiculeBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.BindingSource tbvehiculeBindingSource;
+        private System.Windows.Forms.DataGridViewTextBoxColumn idDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn immatDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn familleDataGridViewTextBoxColumn;
+        private System.Windows.Forms.StatusStrip statusStrip1;
+        private System.Windows.Forms.ToolStripStatusLabel st1;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.DataGridView dg_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn num_vehiCol;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cmpnum_vehiCol;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cond_vehiCol;
+        private System.Windows.Forms.DataGridViewTextBoxColumn immat_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn famille_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn keyvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn numvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cmpnumvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn immatvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn opevehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn typevehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn condvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn famillevehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn carbuvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn kmdepvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn kmarrvehiDataGridViewTextBoxColumn;
+        private System.Windows.Forms.Button bt_Sup;
+        private System.Windows.Forms.Button Bt_Abort;
+        private System.Windows.Forms.Button bt_Valid;
+        private System.Windows.Forms.Button bt_Aj;
+        private System.Windows.Forms.Button bt_Mod;
+        private System.Windows.Forms.ComboBox combo_famille;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.ComboBox combo_energy;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox text_cond_vehi;
+        private System.Windows.Forms.TextBox text_kmarr_vehi;
+        private System.Windows.Forms.TextBox text_kmdep_vehi;
+        private System.Windows.Forms.TextBox text_type_vehi;
+        private System.Windows.Forms.TextBox text_cmpnum_vehi;
+        private System.Windows.Forms.TextBox text_num_vehi;
+        private System.Windows.Forms.TextBox text_immat_vehi;
+        private System.Windows.Forms.ToolStripStatusLabel StatusLabel1;
+        private System.Windows.Forms.Button bt_openFile;
+        private System.Windows.Forms.TextBox textNomFile;
+        private System.Windows.Forms.OpenFileDialog openFileParc;
+        private System.Windows.Forms.CheckBox checkZero;
+        private System.Windows.Forms.Button bt_ok;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tri;
+        private System.Windows.Forms.Button tb_allValid;
+        private System.Windows.Forms.TextBox text_sort_vehi;
+    }
+}

+ 752 - 0
Fuel_ASO/f_impvehi.cs

@@ -0,0 +1,752 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml.Linq;
+using Excel = Microsoft.Office.Interop.Excel;
+
+
+namespace Fuel01
+{
+    public partial class f_impvehi : Form
+    {
+        DataSet1.tb_vehiDataTable tb_vehi = new DataSet1.tb_vehiDataTable();
+        private bool hasChanged = false;
+        string mode = "";
+        List<produit> lproduit = new List<produit>();
+        List<produit> lcarbu = new List<produit>();
+        List<famille> lfamille = new List<famille>();
+
+        public f_impvehi(string _mode)
+        {
+            InitializeComponent();
+            mode = _mode;
+        }
+
+        private void vehi_Load(object sender, EventArgs e)
+        {
+
+            Program.subfolder = Program.folder + @"\" + Program.key_ope;
+
+            if (!Directory.Exists(Program.subfolder))
+                Directory.CreateDirectory(Program.subfolder);
+            else
+            {
+                if (File.Exists(Program.subfolder + @"\vehicule.json"))
+                    tb_vehi = DbUtil.LoadFromJson<DataSet1.tb_vehiDataTable>(Program.subfolder + @"\vehicule.json", tb_vehi);
+            }
+            tb_vehi.AcceptChanges();
+            tbvehiculeBindingSource.DataSource = tb_vehi;
+
+            turn_txt(false);
+            turn_bt(false);
+            if (Program.key_ope != null)
+                this.Text = "Importation Véhicules " + Program.nom_ope;
+
+            if (File.Exists(Program.folder + @"\param\famille.xml"))
+                init_list_famille();
+            if (File.Exists(Program.folder + @"\param\produit.xml"))
+                init_list_produit();
+
+
+        }
+
+        private void init_list_famille()
+        {
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\famille.xml");
+            var data = from item in xRoot.Descendants("tb_famille")
+                       orderby item.Element("key_fam").Value
+                       select new famille()
+                       {
+                           key_fam = item.Element("key_fam").Value
+                       };
+            lfamille = data.ToList();
+            combo_famille.Items.Clear();
+            combo_famille.DisplayMember = "key_fam";
+            foreach (famille f in lfamille)
+                combo_famille.Items.Add(f);
+        }
+
+        private void init_list_produit()
+        {
+
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\produit.xml");
+            var data = from item in xRoot.Descendants("tb_prod")
+                       orderby item.Element("type_prod").Value, item.Element("lib_prod").Value
+                       select new produit()
+                       {
+                           key_prod = item.Element("key_prod").Value,
+                           lib_prod = item.Element("lib_prod").Value,
+                           type_prod = item.Element("type_prod").Value
+                       };
+            lproduit = data.ToList();
+            lcarbu = lproduit.Where(p => p.type_prod == "Carburant").ToList();
+            combo_energy.Items.Clear();
+            combo_energy.DisplayMember = "key_prod";
+            foreach (produit p in lcarbu)
+                combo_energy.Items.Add(p);
+        }
+
+        #region affichage
+        private void turn_txt(bool act)
+        {
+            text_immat_vehi.Enabled = act;
+            text_num_vehi.Enabled = act;
+            text_cmpnum_vehi.Enabled = act;
+            text_type_vehi.Enabled = act;
+            text_kmdep_vehi.Enabled = act;
+            text_kmarr_vehi.Enabled = act;
+            text_cond_vehi.Enabled = act;
+            combo_energy.Enabled = act;
+            combo_famille.Enabled = act;
+            text_sort_vehi.Enabled = act;
+
+        }
+
+        private void turn_bt(bool act)
+        {
+            Bt_Abort.Enabled = act;
+            bt_Valid.Enabled = act;
+            bt_Mod.Enabled = !act;
+            bt_Aj.Enabled = !act;
+            bt_Sup.Enabled = !act;
+            dg_vehi.Enabled = !act;
+        }
+        #endregion
+
+        #region Boutons
+
+
+        private void bt_Mod_Click(object sender, EventArgs e)
+        {
+            turn_bt(true);
+            turn_txt(true);
+        }
+
+        private void bt_Aj_Click(object sender, EventArgs e)
+        {
+            turn_txt(true);
+            turn_bt(true);
+            string key = findNewkey();
+            DataSet1.tb_vehiRow myNewRow = tb_vehi.Newtb_vehiRow();
+            myNewRow["key_vehi"] = key;
+            myNewRow["ope_vehi"] = Program.nom_ope;
+            tb_vehi.Addtb_vehiRow(myNewRow);
+            tbvehiculeBindingSource.MoveFirst();
+            DataRowView myRow = tbvehiculeBindingSource.Current as DataRowView;
+            while (myRow.Row["key_vehi"].ToString() != key)
+            {
+                tbvehiculeBindingSource.MoveNext();
+                myRow = tbvehiculeBindingSource.Current as DataRowView;
+            }
+        }
+
+        private void bt_Sup_Click(object sender, EventArgs e)
+        {
+            DataRowView myRow = tbvehiculeBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Vehicule {0}\nEtes-vous certain de vouloir supprimer \n{1}", myRow.Row["num_vehi"].ToString(), myRow.Row["immat_vehi"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_vehiRow vehiRow = tb_vehi.FindBykey_vehi(myRow.Row["key_vehi"].ToString());
+                if (vehiRow != null)
+                    tb_vehi.Removetb_vehiRow(vehiRow);
+                hasChanged = true;
+            }
+        }
+
+        private void bt_Valid_Click(object sender, EventArgs e)
+        {
+            tb_vehi.AcceptChanges();
+            turn_txt(false);
+            turn_bt(false);
+            hasChanged = true;
+
+        }
+
+        private void Bt_Abort_Click(object sender, EventArgs e)
+        {
+            tb_vehi.RejectChanges();
+            turn_txt(false);
+            turn_bt(false);
+        }
+        #endregion
+
+        #region fonctions
+
+        private string findNewkey()
+        {
+            Random rand1 = new Random();
+            string key = rand1.Next(99999).ToString();
+            while (tb_vehi.FindBykey_vehi(key) != null)
+            {
+                //MessageBox.Show(key);
+                key = rand1.Next(99999).ToString();
+            }
+            return key;
+        }
+
+        private DataSet1.tb_vehiRow findOnekey(int bandeau, string cmp, string typevehi)
+        {
+            DataSet1.tb_vehiRow onevevi = tb_vehi.FirstOrDefault(v => v.num_vehi == bandeau);
+            //while (tb_vehi.FindBykey_vehi(key) != null)
+            //{
+            //    //MessageBox.Show(key);
+            //    key = rand1.Next(99999).ToString();
+            //}
+            //return key;
+            return onevevi;
+        }
+        #endregion
+
+        private void f_vehi_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (hasChanged) saveData();
+            DataTable tb_vehi_change = tb_vehi.GetChanges();
+            tb_vehi_change = null;
+            if (tb_vehi_change != null) MessageBox.Show("Veuillez Valider ou Abandonner", "Modifications en cours");
+            e.Cancel = (tb_vehi_change != null);
+        }
+
+        private void saveData()
+        {
+            if (File.Exists(Program.subfolder + @"\vehicule.json"))
+                File.Copy(Program.subfolder + @"\vehicule.json", Program.subfolder + @"\vehicule.back.json", true);
+            
+            DbUtil.SaveToJson<DataSet1.tb_vehiDataTable>(Program.subfolder + @"\statvehiculeion.json", tb_vehi);
+        }
+
+        private void combo_energy_TextUpdate(object sender, EventArgs e)
+        {
+            produit cur_Prod = lproduit.Find(p => p.key_prod == combo_energy.Text);
+            if (cur_Prod != null)
+                StatusLabel1.Text = cur_Prod.lib_prod;
+            else
+                StatusLabel1.Text = "...";
+        }
+
+        private void bt_openFile_Click(object sender, EventArgs e)
+        {
+            System.Windows.Forms.DialogResult res = openFileParc.ShowDialog();
+            if (res == System.Windows.Forms.DialogResult.OK)
+            {
+                textNomFile.Text = openFileParc.FileName;
+            }
+            bt_ok.Enabled = (res == System.Windows.Forms.DialogResult.OK);
+        }
+
+        private void bt_ok_Click(object sender, EventArgs e)
+        {
+            if (checkZero.Checked)
+                tb_vehi.Clear();
+            if (mode == "tdf")
+                import_tdf();
+            else
+                if (mode == "parc")
+                import_parc();
+            else
+                import_PN(); ;
+        }
+
+        private void import_PN()
+        {
+            Excel.Application xlApp;
+            Excel.Workbook xlWorkBook;
+            Excel.Worksheet xlWorkSheet;
+            object misValue = System.Reflection.Missing.Value;
+            try
+            {
+                xlApp = new Excel.Application();
+                xlWorkBook = xlApp.Workbooks.Open(textNomFile.Text, misValue);
+                xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
+
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("Vérifier que le fichier n'est pas ouvert et est un fichier Excel correct", "Ouverture de " + textNomFile.Text + " impossible", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+            uint[] indexCol = { 1, 3, 4, 6, 7, 8, 9 };
+            string categ = "A";
+            for (uint row = 2; row < 200; row++)
+            {
+                string model = "";
+                string immat = "";
+                string bandeau = "";
+                string carbu = "";
+                string famille = "";
+                string pilote = "";
+                bool ligneVide = true;
+
+                int vide = 0;
+                for (int colNdx = 0; colNdx < indexCol.Length; colNdx++)
+                {
+
+                    uint col = indexCol[colNdx];
+                    var varex = xlWorkSheet.Cells[row, col].Value;
+                    if (varex != null)
+                    {
+                        string b = "";
+                        string mytype = varex.GetType().ToString();
+                        switch (mytype)
+                        {
+                            case "System.Int16":
+                            case "System.Int32":
+                            case "System.Int64":
+                            case "System.Double":
+                                b = ((Int32)varex).ToString();
+                                break;
+                            default:
+                                b = (string)varex;
+                                break;
+
+                        }
+
+
+                        b = b.Replace('\n', ' ');
+                        while (b.Contains("  "))
+                            b = b.Replace("  ", " ");
+                        switch (col)
+                        {
+                            case 1:
+                                bandeau = b;
+                                ligneVide = false;
+                                break;
+                            case 3:
+                                famille = b;
+                                ligneVide = false;
+                                break;
+                            case 4:
+                                pilote = b;
+                                ligneVide = false;
+                                break;
+                            case 6:
+                                model = b;
+                                break;
+                            case 7:
+                                carbu = b;
+                                ligneVide = false;
+                                break;
+                            case 8:
+                                immat = b;
+                                ligneVide = false;
+                                break;
+                            case 9:
+                                categ = b;
+                                ligneVide = false;
+                                break;
+                        }
+
+                    }
+                }
+
+                if (bandeau != "")
+                {
+                    vide = 0;
+                    DataSet1.tb_vehiRow myNewRow = null;
+                    string key = "999999";
+                    bool newrow = false;
+                    try
+                    {
+                        if (!checkZero.Checked)
+                        {
+                            myNewRow = findOnekey(Convert.ToInt32(bandeau), "", categ);
+                            if (myNewRow != null)
+                                key = myNewRow["key_vehi"].ToString();
+                        }
+                        if (myNewRow == null)
+                        {
+                            key = findNewkey();
+                            myNewRow = tb_vehi.Newtb_vehiRow();
+                            newrow = true;
+                        }
+                        myNewRow["key_vehi"] = key;
+                        myNewRow["ope_vehi"] = Program.key_ope;
+                        myNewRow["num_vehi"] = bandeau;
+                        myNewRow["cmpnum_vehi"] = "";
+                        myNewRow["immat_vehi"] = immat;
+                        myNewRow["type_vehi"] = model;
+                        myNewRow["famille_vehi"] = famille;
+                        myNewRow["categ_vehi"] = categ;
+                        myNewRow["cond_vehi"] = pilote;
+                        myNewRow["sort1_vehi"] = string.Format("{0}{1:00000}{2}", myNewRow["categ_vehi"], myNewRow["num_vehi"], myNewRow["cmpnum_vehi"]);
+                        myNewRow["carbu_vehi"] = carbu == "E" ? "SP98" : "DIESEL";
+                        if (newrow)
+                            tb_vehi.Addtb_vehiRow(myNewRow);
+                        StatusLabel1.Text = string.Format("{0}{1:00000}{2}-{3}-{4}", myNewRow["categ_vehi"], myNewRow["num_vehi"], myNewRow["cmpnum_vehi"], myNewRow["cond_vehi"], myNewRow["immat_vehi"]);
+                        Application.DoEvents();
+                    }
+                    catch (Exception ex)
+                    {
+                        MessageBox.Show(string.Format("{3}\r\nPb. à insertion de {0} {1} {2}", bandeau, pilote, model, ex.Message));
+                    }
+                }
+                else
+                    vide++;
+                if (vide > 10)
+                    break;
+
+            }
+            if (xlApp != null)
+                xlApp.Quit();
+
+            StatusLabel1.Text = "F I N I .................";
+
+        }
+
+
+        private void import_tdf()
+        {
+
+            Excel.Application xlApp;
+            Excel.Workbook xlWorkBook;
+            Excel.Worksheet xlWorkSheet;
+            object misValue = System.Reflection.Missing.Value;
+            try
+            {
+                xlApp = new Excel.Application();
+                xlWorkBook = xlApp.Workbooks.Open(textNomFile.Text, misValue);
+                xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
+
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("Vérifier que le fichier n'est pas ouvert et est un fichier Excel correct", "Ouverture de " + textNomFile.Text + " impossible", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+
+            //uint[] indexCol = { 1, 3, 4, 5, 6, 7, 10, 11 };
+            uint[] indexCol = { 2, 4, 5, 6, 7, 8, 11, 12 };
+            string categ = "A";
+            for (uint row = 2; row < 800; row++)
+            {
+                string model = "";
+                string immat = "";
+                string bandeau = "";
+                string cmp = "";
+                string famille = "";
+                string pilote = "";
+                bool ligneVide = true;
+
+                int vide = 0;
+                for (int colNdx = 0; colNdx < indexCol.Length; colNdx++)
+                {
+
+                    uint col = indexCol[colNdx];
+                    var varex = xlWorkSheet.Cells[row, col].Value;
+                    if (varex != null)
+                    {
+                        string b = "";
+                        string mytype = varex.GetType().ToString();
+                        switch (mytype)
+                        {
+                            case "System.Int16":
+                            case "System.Int32":
+                            case "System.Int64":
+                            case "System.Double":
+                                b = ((Int32)varex).ToString();
+                                break;
+                            default:
+                                b = (string)varex;
+                                break;
+
+                        }
+
+                        int p;
+                        if (col == 12 && (p = b.IndexOf('\n')) != -1)
+                            b = b.Substring(0, p);
+                        b = b.Replace('\n', ' ');
+                        while (b.Contains("  "))
+                            b = b.Replace("  ", " ");
+                        switch (col)
+                        {
+                            case 2:
+                                model = b;
+                                ligneVide = false;
+                                break;
+                            case 4:
+                                immat = immat + b + " ";
+                                break;
+                            case 5:
+                                ligneVide = false;
+                                immat = immat + b + " ";
+                                break;
+                            case 6:
+                                ligneVide = false;
+                                immat = immat + b + " ";
+                                break;
+                            case 7:
+                                bandeau = b;
+                                ligneVide = false;
+                                break;
+                            case 8:
+                                cmp = b;
+                                ligneVide = false;
+
+                                break;
+                            case 11:
+                                famille = b;
+                                ligneVide = false;
+                                break;
+                            case 12:
+                                pilote = b;
+                                ligneVide = false;
+                                break;
+                        }
+
+                    }
+                }
+
+                if (ligneVide)
+                {
+                    try
+                    {
+                        string m = (string)(xlWorkSheet.Cells[row, 4].Value);
+                        if (m != null)
+                            if (m.Contains("MOTOS"))
+                                categ = "M";
+                    }
+                    catch (Exception ex) {; }
+                }
+                if (bandeau != "")
+                {
+                    vide = 0;
+                    DataSet1.tb_vehiRow myNewRow = null;
+                    string key = "999999";
+                    bool newrow = false;
+                    try
+                    {
+                        if (!checkZero.Checked)
+                        {
+                            myNewRow = findOnekey(Convert.ToInt32(bandeau), cmp, categ);
+                            if (myNewRow != null)
+                                key = myNewRow["key_vehi"].ToString();
+                        }
+                        if (myNewRow == null)
+                        {
+                            key = findNewkey();
+                            myNewRow = tb_vehi.Newtb_vehiRow();
+                            newrow = true;
+                        }
+                        myNewRow["key_vehi"] = key;
+                        myNewRow["ope_vehi"] = Program.key_ope;
+                        myNewRow["num_vehi"] = bandeau;
+                        myNewRow["cmpnum_vehi"] = cmp;
+                        myNewRow["immat_vehi"] = immat;
+                        myNewRow["type_vehi"] = model;
+                        myNewRow["famille_vehi"] = famille;
+                        myNewRow["categ_vehi"] = categ;
+                        myNewRow["cond_vehi"] = pilote;
+                        myNewRow["sort1_vehi"] = string.Format("{0}{1:00000}{2}", myNewRow["categ_vehi"], myNewRow["num_vehi"], myNewRow["cmpnum_vehi"]);
+                        myNewRow["carbu_vehi"] = categ == "M" ? "SP98" : "DIESEL";
+                        if (newrow)
+                            tb_vehi.Addtb_vehiRow(myNewRow);
+                        StatusLabel1.Text = string.Format("{0}{1:00000}{2}-{3}-{4}", myNewRow["categ_vehi"], myNewRow["num_vehi"], myNewRow["cmpnum_vehi"], myNewRow["cond_vehi"], myNewRow["immat_vehi"]);
+                        Application.DoEvents();
+                    }
+                    catch (Exception ex)
+                    {
+                        MessageBox.Show(string.Format("{3}\r\nPb. à insertion de {0} {1} {2}", bandeau, pilote, model, ex.Message));
+                    }
+                }
+                else
+                    vide++;
+                if (vide > 10)
+                    break;
+
+            }
+            if (xlApp != null)
+                xlApp.Quit();
+
+            StatusLabel1.Text = "F I N I .................";
+
+        }
+
+
+        private void import_parc()
+        {
+            Excel.Application xlApp;
+            Excel.Workbook xlWorkBook;
+            Excel.Worksheet xlWorkSheet;
+            object misValue = System.Reflection.Missing.Value;
+            try
+            {
+                xlApp = new Excel.Application();
+                xlWorkBook = xlApp.Workbooks.Open(textNomFile.Text, misValue);
+                xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
+
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("Vérifier que le fichier n'est pas ouvert et est un fichier Excel correct", "Ouverture de " + textNomFile.Text + " impossible", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+
+            uint[] indexCol = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 15 };
+            for (uint row = 3; row < 800; row++)
+            {
+                string model = "";
+                string immat = "";
+                string bandeau = "";
+                string famille = "";
+                string pilote = "";
+                string carbu = "D";
+                string cmp = "";
+                string categ = "A";
+
+                bool ligneVide = true;
+
+                int vide = 0;
+                for (int colNdx = 0; colNdx < indexCol.Length; colNdx++)
+                {
+
+                    uint col = indexCol[colNdx];
+                    var varex = xlWorkSheet.Cells[row, col].Value;
+                    if (varex != null)
+                    {
+                        string b = "";
+                        string mytype = varex.GetType().ToString();
+                        switch (mytype)
+                        {
+                            case "System.Int16":
+                            case "System.Int32":
+                            case "System.Int64":
+                            case "System.Double":
+                                b = ((Int32)varex).ToString();
+                                break;
+                            default:
+                                b = (string)varex;
+                                break;
+
+                        }
+
+                        int p;
+                        while (b.Contains("  "))
+                            b = b.Replace("  ", " ");
+                        switch (col)
+                        {
+                            case 1:
+                                bandeau = b;
+                                ligneVide = false;
+                                break;
+                            case 2:
+                                famille = b;
+                                ligneVide = false;
+                                break;
+                            case 3:
+                                pilote = b;
+                                ligneVide = false;
+                                break;
+                            case 4:
+                                pilote = pilote + " " + b;
+                                ligneVide = false;
+                                break;
+                            case 5:
+                                carbu = b;
+                                ligneVide = false;
+                                break;
+                            case 6:
+                                model = b;
+                                ligneVide = false;
+                                break;
+                            case 7:
+                                immat = immat + b + " ";
+                                break;
+                            case 8:
+                                ligneVide = false;
+                                immat = immat + b + " ";
+                                break;
+                            case 9:
+                                ligneVide = false;
+                                immat = immat + b + " ";
+                                break;
+                            case 15:
+                                ligneVide = false;
+                                categ = b.ToUpper() == "M" ? "M" : "A";
+                                break;
+                        }
+
+                    }
+                }
+
+                if (bandeau != "")
+                {
+                    vide = 0;
+                    DataSet1.tb_vehiRow myNewRow = null;
+                    string key = "999999";
+                    bool newrow = false;
+                    try
+                    {
+                        if (!checkZero.Checked)
+                        {
+                            myNewRow = findOnekey(Convert.ToInt32(bandeau), cmp, categ);
+                            if (myNewRow != null)
+                                key = myNewRow["key_vehi"].ToString();
+                        }
+                        if (myNewRow == null)
+                        {
+                            key = findNewkey();
+                            myNewRow = tb_vehi.Newtb_vehiRow();
+                            newrow = true;
+                        }
+                        myNewRow["key_vehi"] = key;
+                        myNewRow["ope_vehi"] = Program.key_ope;
+                        myNewRow["num_vehi"] = bandeau;
+                        myNewRow["cmpnum_vehi"] = cmp;
+                        myNewRow["immat_vehi"] = immat;
+                        myNewRow["type_vehi"] = model;
+                        myNewRow["famille_vehi"] = famille;
+                        myNewRow["categ_vehi"] = categ;
+                        myNewRow["cond_vehi"] = pilote;
+                        myNewRow["sort1_vehi"] = string.Format("{0}{1:00000}{2}", myNewRow["categ_vehi"], myNewRow["num_vehi"], myNewRow["cmpnum_vehi"]);
+                        switch (carbu)
+                        {
+                            case "D":
+                                carbu = "DIESEL";
+                                break;
+                            case "E":
+                                carbu = "SP98";
+                                break;
+                            default:
+                                carbu = "?";
+                                break;
+                        }
+                        myNewRow["carbu_vehi"] = carbu == "?" ? (categ == "M" ? "SP98" : "DIESEL") : carbu;
+                        if (newrow)
+                            tb_vehi.Addtb_vehiRow(myNewRow);
+                        StatusLabel1.Text = string.Format("{0}{1:00000}{2}-{3}-{4}", myNewRow["categ_vehi"], myNewRow["num_vehi"], myNewRow["cmpnum_vehi"], myNewRow["cond_vehi"], myNewRow["immat_vehi"]);
+                        Application.DoEvents();
+                    }
+                    catch (Exception ex)
+                    {
+                        MessageBox.Show(string.Format("{3}\r\nPb. à insertion de {0} {1} {2}", bandeau, pilote, model, ex.Message));
+                    }
+                }
+                else
+                    vide++;
+                if (vide > 10)
+                    break;
+
+            }
+            if (xlApp != null)
+                xlApp.Quit();
+
+            StatusLabel1.Text = "F I N I .................";
+
+        }
+
+        private void tb_allValid_Click(object sender, EventArgs e)
+        {
+            hasChanged = true;
+            this.Close();
+        }
+
+    }
+}

+ 153 - 0
Fuel_ASO/f_impvehi.resx

@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>224, 17</value>
+  </metadata>
+  <metadata name="num_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="cmpnum_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="cond_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="immat_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="famille_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="tri.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="tbvehiculeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>340, 17</value>
+  </metadata>
+  <metadata name="openFileParc.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>439, 17</value>
+  </metadata>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>81</value>
+  </metadata>
+</root>

+ 367 - 0
Fuel_ASO/f_param.Designer.cs

@@ -0,0 +1,367 @@
+namespace Fuel01
+{
+    partial class f_param
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.tbfamilleBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.tbprodBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.tbpaysBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.tabParam = new System.Windows.Forms.TabControl();
+            this.tabFam = new System.Windows.Forms.TabPage();
+            this.dgFam = new System.Windows.Forms.DataGridView();
+            this.tabProd = new System.Windows.Forms.TabPage();
+            this.dgProd = new System.Windows.Forms.DataGridView();
+            this.keyprodDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.libprodDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.typeprodDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewComboBoxColumn();
+            this.tabPays = new System.Windows.Forms.TabPage();
+            this.dgPays = new System.Windows.Forms.DataGridView();
+            this.keypaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.nompaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.codepaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.txchgepaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tvapaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.imgpaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.orderpaysDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.bt_Sup = new System.Windows.Forms.Button();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbfamilleBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprodBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbpaysBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            this.tabParam.SuspendLayout();
+            this.tabFam.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgFam)).BeginInit();
+            this.tabProd.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgProd)).BeginInit();
+            this.tabPays.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgPays)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // tbfamilleBindingSource
+            // 
+            this.tbfamilleBindingSource.DataMember = "tb_famille";
+            this.tbfamilleBindingSource.DataSource = this.dataSet1;
+            // 
+            // tbprodBindingSource
+            // 
+            this.tbprodBindingSource.DataMember = "tb_prod";
+            this.tbprodBindingSource.DataSource = this.dataSet1;
+            // 
+            // tbpaysBindingSource
+            // 
+            this.tbpaysBindingSource.DataMember = "tb_pays";
+            this.tbpaysBindingSource.DataSource = this.dataSet1;
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.tabParam);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.bt_Sup);
+            this.splitContainer1.Size = new System.Drawing.Size(826, 453);
+            this.splitContainer1.SplitterDistance = 420;
+            this.splitContainer1.TabIndex = 5;
+            // 
+            // tabParam
+            // 
+            this.tabParam.Controls.Add(this.tabFam);
+            this.tabParam.Controls.Add(this.tabProd);
+            this.tabParam.Controls.Add(this.tabPays);
+            this.tabParam.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tabParam.Location = new System.Drawing.Point(0, 0);
+            this.tabParam.Name = "tabParam";
+            this.tabParam.SelectedIndex = 0;
+            this.tabParam.Size = new System.Drawing.Size(826, 420);
+            this.tabParam.TabIndex = 5;
+            // 
+            // tabFam
+            // 
+            this.tabFam.Controls.Add(this.dgFam);
+            this.tabFam.Location = new System.Drawing.Point(4, 22);
+            this.tabFam.Name = "tabFam";
+            this.tabFam.Padding = new System.Windows.Forms.Padding(3);
+            this.tabFam.Size = new System.Drawing.Size(818, 394);
+            this.tabFam.TabIndex = 0;
+            this.tabFam.Text = "Familles";
+            this.tabFam.UseVisualStyleBackColor = true;
+            // 
+            // dgFam
+            // 
+            this.dgFam.AllowUserToDeleteRows = false;
+            this.dgFam.AutoGenerateColumns = false;
+            this.dgFam.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dgFam.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1});
+            this.dgFam.DataSource = this.tbfamilleBindingSource;
+            this.dgFam.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dgFam.Location = new System.Drawing.Point(3, 3);
+            this.dgFam.Name = "dgFam";
+            this.dgFam.Size = new System.Drawing.Size(812, 388);
+            this.dgFam.TabIndex = 0;
+            // 
+            // tabProd
+            // 
+            this.tabProd.Controls.Add(this.dgProd);
+            this.tabProd.Location = new System.Drawing.Point(4, 22);
+            this.tabProd.Name = "tabProd";
+            this.tabProd.Padding = new System.Windows.Forms.Padding(3);
+            this.tabProd.Size = new System.Drawing.Size(818, 394);
+            this.tabProd.TabIndex = 1;
+            this.tabProd.Text = "Produits/Services";
+            this.tabProd.UseVisualStyleBackColor = true;
+            // 
+            // dgProd
+            // 
+            this.dgProd.AllowUserToDeleteRows = false;
+            this.dgProd.AutoGenerateColumns = false;
+            this.dgProd.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dgProd.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.keyprodDataGridViewTextBoxColumn,
+            this.libprodDataGridViewTextBoxColumn,
+            this.typeprodDataGridViewTextBoxColumn});
+            this.dgProd.DataSource = this.tbprodBindingSource;
+            this.dgProd.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dgProd.Location = new System.Drawing.Point(3, 3);
+            this.dgProd.Name = "dgProd";
+            this.dgProd.Size = new System.Drawing.Size(812, 388);
+            this.dgProd.TabIndex = 0;
+            // 
+            // keyprodDataGridViewTextBoxColumn
+            // 
+            this.keyprodDataGridViewTextBoxColumn.DataPropertyName = "key_prod";
+            this.keyprodDataGridViewTextBoxColumn.HeaderText = "Code";
+            this.keyprodDataGridViewTextBoxColumn.Name = "keyprodDataGridViewTextBoxColumn";
+            // 
+            // libprodDataGridViewTextBoxColumn
+            // 
+            this.libprodDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.libprodDataGridViewTextBoxColumn.DataPropertyName = "lib_prod";
+            this.libprodDataGridViewTextBoxColumn.HeaderText = "Libellé";
+            this.libprodDataGridViewTextBoxColumn.Name = "libprodDataGridViewTextBoxColumn";
+            // 
+            // typeprodDataGridViewTextBoxColumn
+            // 
+            this.typeprodDataGridViewTextBoxColumn.DataPropertyName = "type_prod";
+            this.typeprodDataGridViewTextBoxColumn.HeaderText = "Type";
+            this.typeprodDataGridViewTextBoxColumn.Items.AddRange(new object[] {
+            "Carburant",
+            "Service"});
+            this.typeprodDataGridViewTextBoxColumn.Name = "typeprodDataGridViewTextBoxColumn";
+            this.typeprodDataGridViewTextBoxColumn.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+            this.typeprodDataGridViewTextBoxColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+            // 
+            // tabPays
+            // 
+            this.tabPays.Controls.Add(this.dgPays);
+            this.tabPays.Location = new System.Drawing.Point(4, 22);
+            this.tabPays.Name = "tabPays";
+            this.tabPays.Padding = new System.Windows.Forms.Padding(3);
+            this.tabPays.Size = new System.Drawing.Size(818, 394);
+            this.tabPays.TabIndex = 2;
+            this.tabPays.Text = "Pays (Code+TVA)";
+            this.tabPays.UseVisualStyleBackColor = true;
+            // 
+            // dgPays
+            // 
+            this.dgPays.AllowUserToDeleteRows = false;
+            this.dgPays.AutoGenerateColumns = false;
+            this.dgPays.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dgPays.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.keypaysDataGridViewTextBoxColumn,
+            this.nompaysDataGridViewTextBoxColumn,
+            this.codepaysDataGridViewTextBoxColumn,
+            this.txchgepaysDataGridViewTextBoxColumn,
+            this.tvapaysDataGridViewTextBoxColumn,
+            this.imgpaysDataGridViewTextBoxColumn,
+            this.orderpaysDataGridViewTextBoxColumn});
+            this.dgPays.DataSource = this.tbpaysBindingSource;
+            this.dgPays.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dgPays.Location = new System.Drawing.Point(3, 3);
+            this.dgPays.Name = "dgPays";
+            this.dgPays.Size = new System.Drawing.Size(812, 388);
+            this.dgPays.TabIndex = 0;
+            // 
+            // keypaysDataGridViewTextBoxColumn
+            // 
+            this.keypaysDataGridViewTextBoxColumn.DataPropertyName = "key_pays";
+            this.keypaysDataGridViewTextBoxColumn.HeaderText = "Code 3";
+            this.keypaysDataGridViewTextBoxColumn.Name = "keypaysDataGridViewTextBoxColumn";
+            this.keypaysDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // nompaysDataGridViewTextBoxColumn
+            // 
+            this.nompaysDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.nompaysDataGridViewTextBoxColumn.DataPropertyName = "nom_pays";
+            this.nompaysDataGridViewTextBoxColumn.HeaderText = "Nom";
+            this.nompaysDataGridViewTextBoxColumn.Name = "nompaysDataGridViewTextBoxColumn";
+            // 
+            // codepaysDataGridViewTextBoxColumn
+            // 
+            this.codepaysDataGridViewTextBoxColumn.DataPropertyName = "code_pays";
+            this.codepaysDataGridViewTextBoxColumn.HeaderText = "Code 2";
+            this.codepaysDataGridViewTextBoxColumn.Name = "codepaysDataGridViewTextBoxColumn";
+            this.codepaysDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // txchgepaysDataGridViewTextBoxColumn
+            // 
+            this.txchgepaysDataGridViewTextBoxColumn.DataPropertyName = "txchge_pays";
+            dataGridViewCellStyle1.Format = "N2";
+            dataGridViewCellStyle1.NullValue = "0.00";
+            this.txchgepaysDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle1;
+            this.txchgepaysDataGridViewTextBoxColumn.HeaderText = "Change";
+            this.txchgepaysDataGridViewTextBoxColumn.Name = "txchgepaysDataGridViewTextBoxColumn";
+            this.txchgepaysDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // tvapaysDataGridViewTextBoxColumn
+            // 
+            this.tvapaysDataGridViewTextBoxColumn.DataPropertyName = "tva_pays";
+            dataGridViewCellStyle2.Format = "N2";
+            dataGridViewCellStyle2.NullValue = "0.00";
+            this.tvapaysDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle2;
+            this.tvapaysDataGridViewTextBoxColumn.HeaderText = "TVA";
+            this.tvapaysDataGridViewTextBoxColumn.Name = "tvapaysDataGridViewTextBoxColumn";
+            this.tvapaysDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // imgpaysDataGridViewTextBoxColumn
+            // 
+            this.imgpaysDataGridViewTextBoxColumn.DataPropertyName = "img_pays";
+            this.imgpaysDataGridViewTextBoxColumn.HeaderText = "Image";
+            this.imgpaysDataGridViewTextBoxColumn.Name = "imgpaysDataGridViewTextBoxColumn";
+            // 
+            // orderpaysDataGridViewTextBoxColumn
+            // 
+            this.orderpaysDataGridViewTextBoxColumn.DataPropertyName = "order_pays";
+            dataGridViewCellStyle3.Format = "N0";
+            dataGridViewCellStyle3.NullValue = null;
+            this.orderpaysDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle3;
+            this.orderpaysDataGridViewTextBoxColumn.HeaderText = "Tri";
+            this.orderpaysDataGridViewTextBoxColumn.Name = "orderpaysDataGridViewTextBoxColumn";
+            this.orderpaysDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // bt_Sup
+            // 
+            this.bt_Sup.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.bt_Sup.Location = new System.Drawing.Point(739, 3);
+            this.bt_Sup.Name = "bt_Sup";
+            this.bt_Sup.Size = new System.Drawing.Size(75, 23);
+            this.bt_Sup.TabIndex = 2;
+            this.bt_Sup.Text = "Effacer";
+            this.bt_Sup.UseVisualStyleBackColor = true;
+            this.bt_Sup.Click += new System.EventHandler(this.bt_Sup_Click);
+            // 
+            // Column1
+            // 
+            this.Column1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.Column1.DataPropertyName = "key_fam";
+            this.Column1.HeaderText = "Famille";
+            this.Column1.Name = "Column1";
+            // 
+            // f_param
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(826, 453);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_param";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Paramètres ";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_param_FormClosing);
+            this.Load += new System.EventHandler(this.f_param_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbfamilleBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprodBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbpaysBindingSource)).EndInit();
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.tabParam.ResumeLayout(false);
+            this.tabFam.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgFam)).EndInit();
+            this.tabProd.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgProd)).EndInit();
+            this.tabPays.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgPays)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.BindingSource tbfamilleBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.BindingSource tbprodBindingSource;
+        private System.Windows.Forms.BindingSource tbpaysBindingSource;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.TabControl tabParam;
+        private System.Windows.Forms.TabPage tabFam;
+        private System.Windows.Forms.DataGridView dgFam;
+        private System.Windows.Forms.TabPage tabProd;
+        private System.Windows.Forms.DataGridView dgProd;
+        private System.Windows.Forms.TabPage tabPays;
+        private System.Windows.Forms.DataGridView dgPays;
+        private System.Windows.Forms.Button bt_Sup;
+        private System.Windows.Forms.DataGridViewTextBoxColumn keyprodDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn libprodDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewComboBoxColumn typeprodDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn keypaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nompaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn codepaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn txchgepaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tvapaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn imgpaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn orderpaysDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+    }
+}

+ 155 - 0
Fuel_ASO/f_param.cs

@@ -0,0 +1,155 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_param : Form
+    {
+        bool familleHasChanged = false;
+        bool prodHasChanged = false;
+        bool paysHasChanged = false;
+        DataSet1.tb_familleDataTable tb_famille = new DataSet1.tb_familleDataTable();
+        DataSet1.tb_prodDataTable tb_prod = new DataSet1.tb_prodDataTable();
+        DataSet1.tb_paysDataTable tb_pays = new DataSet1.tb_paysDataTable();
+
+
+        public f_param()
+        {
+            InitializeComponent();
+        }
+
+        private void f_param_Load(object sender, EventArgs e)
+        {
+            if (File.Exists(Program.folder + @"\Param\famille.xml"))
+                tb_famille.ReadXml(Program.folder + @"\Param\famille.xml");
+            if (File.Exists(Program.folder + @"\Param\produit.xml"))
+                tb_prod.ReadXml(Program.folder + @"\Param\produit.xml");
+            if (File.Exists(Program.folder + @"\Param\pays.xml"))
+                tb_pays.ReadXml(Program.folder + @"\Param\pays.xml");
+
+            tb_famille.AcceptChanges();
+            tbfamilleBindingSource.DataSource = tb_famille;
+            tb_famille.tb_familleRowChanged += tb_famille_tb_familleRowChanged;
+
+            tb_prod.AcceptChanges();
+            tbprodBindingSource.DataSource = tb_prod;
+            tb_prod.tb_prodRowChanged += tb_prod_tb_prodRowChanged;
+
+            tb_pays.AcceptChanges();
+            tbpaysBindingSource.DataSource = tb_pays;
+            tb_pays.tb_paysRowChanged += tb_pays_tb_paysRowChanged;
+        }
+
+        #region param
+        #region famille
+        void tb_famille_tb_familleRowChanged(object sender, DataSet1.tb_familleRowChangeEvent e)
+        {
+            familleHasChanged = true;
+        }
+
+         private void SupFam()
+        {
+            DataRowView myRow = tbfamilleBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Etes-vous certain de vouloir supprimer {0} ", myRow.Row["key_fam"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_familleRow familleRow = tb_famille.FindBykey_fam(myRow.Row["key_fam"].ToString());
+                if (familleRow != null)
+                    tb_famille.Removetb_familleRow(familleRow);
+                familleHasChanged = true;
+            }
+        }
+        #endregion
+        #region produit
+        void tb_prod_tb_prodRowChanged(object sender, DataSet1.tb_prodRowChangeEvent e)
+        {
+            prodHasChanged = true;
+        }
+ 
+        private void SupProd()
+        {
+            DataRowView myRow = tbprodBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Produit {0} {1}\nEtes-vous certain de vouloir supprimer ", myRow.Row["key_prod"].ToString(), myRow.Row["lib_prod"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_prodRow prodRow = tb_prod.FindBykey_prod(myRow.Row["key_prod"].ToString());
+                if (prodRow != null)
+                    tb_prod.Removetb_prodRow(prodRow);
+                prodHasChanged = true;
+            }
+        }
+        #endregion
+        #region Pays
+
+        void tb_pays_tb_paysRowChanged(object sender, DataSet1.tb_paysRowChangeEvent e)
+        {
+            paysHasChanged = true;
+        }
+
+        private void SupPays()
+        {
+            DataRowView myRow = tbpaysBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Pays {0} {1}\nEtes-vous certain de vouloir supprimer ", myRow.Row["key_pays"].ToString(), myRow.Row["nom_pays"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_paysRow paysRow = tb_pays.FindBykey_pays(myRow.Row["key_pays"].ToString());
+                if (paysRow != null)
+                    tb_pays.Removetb_paysRow(paysRow);
+                paysHasChanged = true;
+            }
+        }
+        #endregion
+
+        private void f_param_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (familleHasChanged)
+            {
+                tb_famille.WriteXml(Program.folder + @"\Param\famille.xml", XmlWriteMode.WriteSchema);
+            }
+            if (prodHasChanged)
+            {
+                tb_prod.WriteXml(Program.folder + @"\Param\produit.xml", XmlWriteMode.WriteSchema);
+            }
+            if (paysHasChanged)
+            {
+                tb_pays.WriteXml(Program.folder + @"\Param\pays.xml", XmlWriteMode.WriteSchema);
+            }
+
+            e.Cancel = false;
+
+        }
+        #endregion
+
+        private void bt_Sup_Click(object sender, EventArgs e)
+        {
+           switch( tabParam.SelectedTab.Name )
+            {
+               case "tabFam":
+                    SupFam();
+                    break;
+               case "tabProd":
+                    SupProd();
+                    break;
+               case "tabPays":
+                    SupPays();
+                    break;
+
+
+            }
+        }
+    }
+}

+ 135 - 0
Fuel_ASO/f_param.resx

@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="tbfamilleBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>116, 17</value>
+  </metadata>
+  <metadata name="tbprodBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>294, 17</value>
+  </metadata>
+  <metadata name="tbpaysBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>462, 17</value>
+  </metadata>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>

+ 599 - 0
Fuel_ASO/f_presta.Designer.cs

@@ -0,0 +1,599 @@
+namespace Fuel01
+{
+    partial class f_presta
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.tabControl1 = new System.Windows.Forms.TabControl();
+            this.tabPrix = new System.Windows.Forms.TabPage();
+            this.splitContainer3 = new System.Windows.Forms.SplitContainer();
+            this.dg_presta = new System.Windows.Forms.DataGridView();
+            this.dg_presta_Sta = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_presta_prod = new System.Windows.Forms.DataGridViewComboBoxColumn();
+            this.dg_presta_kind = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_presta_unit = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_presta_pu = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_presta_tva = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_presta_ttc = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbprestaBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.bt_calcTTC = new System.Windows.Forms.Button();
+            this.bt_calcHT = new System.Windows.Forms.Button();
+            this.bt_ajProd = new System.Windows.Forms.Button();
+            this.bt_ajCarbu = new System.Windows.Forms.Button();
+            this.tabVente = new System.Windows.Forms.TabPage();
+            this.splitContainer4 = new System.Windows.Forms.SplitContainer();
+            this.dg_vente = new System.Windows.Forms.DataGridView();
+            this.dg_vt_epr = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_sta = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_prod = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_date = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_qtt = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_pu = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_tva = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_ht_vt = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dg_vt_ttc = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbventeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.chk_modif = new System.Windows.Forms.CheckBox();
+            this.t_facture = new System.Windows.Forms.Button();
+            this.button1 = new System.Windows.Forms.Button();
+            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            this.tabControl1.SuspendLayout();
+            this.tabPrix.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
+            this.splitContainer3.Panel1.SuspendLayout();
+            this.splitContainer3.Panel2.SuspendLayout();
+            this.splitContainer3.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_presta)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprestaBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            this.tabVente.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit();
+            this.splitContainer4.Panel1.SuspendLayout();
+            this.splitContainer4.Panel2.SuspendLayout();
+            this.splitContainer4.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.splitContainer2);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.button1);
+            this.splitContainer1.Size = new System.Drawing.Size(748, 449);
+            this.splitContainer1.SplitterDistance = 394;
+            this.splitContainer1.TabIndex = 0;
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.tabControl1);
+            this.splitContainer2.Size = new System.Drawing.Size(748, 394);
+            this.splitContainer2.SplitterDistance = 30;
+            this.splitContainer2.TabIndex = 1;
+            // 
+            // tabControl1
+            // 
+            this.tabControl1.Appearance = System.Windows.Forms.TabAppearance.FlatButtons;
+            this.tabControl1.Controls.Add(this.tabPrix);
+            this.tabControl1.Controls.Add(this.tabVente);
+            this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tabControl1.Location = new System.Drawing.Point(0, 0);
+            this.tabControl1.Name = "tabControl1";
+            this.tabControl1.SelectedIndex = 0;
+            this.tabControl1.Size = new System.Drawing.Size(748, 360);
+            this.tabControl1.TabIndex = 0;
+            // 
+            // tabPrix
+            // 
+            this.tabPrix.Controls.Add(this.splitContainer3);
+            this.tabPrix.Location = new System.Drawing.Point(4, 25);
+            this.tabPrix.Name = "tabPrix";
+            this.tabPrix.Padding = new System.Windows.Forms.Padding(3);
+            this.tabPrix.Size = new System.Drawing.Size(740, 331);
+            this.tabPrix.TabIndex = 0;
+            this.tabPrix.Text = "Prix de Vente";
+            this.tabPrix.UseVisualStyleBackColor = true;
+            // 
+            // splitContainer3
+            // 
+            this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer3.Location = new System.Drawing.Point(3, 3);
+            this.splitContainer3.Name = "splitContainer3";
+            // 
+            // splitContainer3.Panel1
+            // 
+            this.splitContainer3.Panel1.Controls.Add(this.dg_presta);
+            // 
+            // splitContainer3.Panel2
+            // 
+            this.splitContainer3.Panel2.Controls.Add(this.bt_calcTTC);
+            this.splitContainer3.Panel2.Controls.Add(this.bt_calcHT);
+            this.splitContainer3.Panel2.Controls.Add(this.bt_ajProd);
+            this.splitContainer3.Panel2.Controls.Add(this.bt_ajCarbu);
+            this.splitContainer3.Size = new System.Drawing.Size(734, 325);
+            this.splitContainer3.SplitterDistance = 592;
+            this.splitContainer3.TabIndex = 7;
+            // 
+            // dg_presta
+            // 
+            this.dg_presta.AutoGenerateColumns = false;
+            this.dg_presta.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_presta.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dg_presta_Sta,
+            this.dg_presta_prod,
+            this.dg_presta_kind,
+            this.dg_presta_unit,
+            this.dg_presta_pu,
+            this.dg_presta_tva,
+            this.dg_presta_ttc});
+            this.dg_presta.DataSource = this.tbprestaBindingSource;
+            this.dg_presta.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_presta.Location = new System.Drawing.Point(0, 0);
+            this.dg_presta.Name = "dg_presta";
+            this.dg_presta.Size = new System.Drawing.Size(592, 325);
+            this.dg_presta.TabIndex = 3;
+            this.dg_presta.RowsAdded += new System.Windows.Forms.DataGridViewRowsAddedEventHandler(this.dg_presta_RowsAdded);
+            // 
+            // dg_presta_Sta
+            // 
+            this.dg_presta_Sta.DataPropertyName = "sta_pr";
+            this.dg_presta_Sta.HeaderText = "sta_pr";
+            this.dg_presta_Sta.Name = "dg_presta_Sta";
+            this.dg_presta_Sta.Visible = false;
+            // 
+            // dg_presta_prod
+            // 
+            this.dg_presta_prod.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.dg_presta_prod.DataPropertyName = "prod_pr";
+            this.dg_presta_prod.HeaderText = "Produit";
+            this.dg_presta_prod.Name = "dg_presta_prod";
+            this.dg_presta_prod.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+            this.dg_presta_prod.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+            // 
+            // dg_presta_kind
+            // 
+            this.dg_presta_kind.DataPropertyName = "kind_pr";
+            this.dg_presta_kind.HeaderText = "Type";
+            this.dg_presta_kind.Name = "dg_presta_kind";
+            this.dg_presta_kind.Width = 60;
+            // 
+            // dg_presta_unit
+            // 
+            this.dg_presta_unit.DataPropertyName = "unite_pr";
+            this.dg_presta_unit.HeaderText = "Unité";
+            this.dg_presta_unit.Name = "dg_presta_unit";
+            this.dg_presta_unit.Width = 50;
+            // 
+            // dg_presta_pu
+            // 
+            this.dg_presta_pu.DataPropertyName = "pu_pr";
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle1.Format = "N3";
+            dataGridViewCellStyle1.NullValue = null;
+            this.dg_presta_pu.DefaultCellStyle = dataGridViewCellStyle1;
+            this.dg_presta_pu.HeaderText = "PU HT";
+            this.dg_presta_pu.Name = "dg_presta_pu";
+            this.dg_presta_pu.Width = 50;
+            // 
+            // dg_presta_tva
+            // 
+            this.dg_presta_tva.DataPropertyName = "tva_pr";
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle2.Format = "N2";
+            dataGridViewCellStyle2.NullValue = null;
+            this.dg_presta_tva.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dg_presta_tva.HeaderText = "TVA";
+            this.dg_presta_tva.Name = "dg_presta_tva";
+            this.dg_presta_tva.Width = 50;
+            // 
+            // dg_presta_ttc
+            // 
+            this.dg_presta_ttc.DataPropertyName = "ttc_pr";
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle3.Format = "N3";
+            dataGridViewCellStyle3.NullValue = null;
+            this.dg_presta_ttc.DefaultCellStyle = dataGridViewCellStyle3;
+            this.dg_presta_ttc.HeaderText = "PU TTC";
+            this.dg_presta_ttc.Name = "dg_presta_ttc";
+            this.dg_presta_ttc.Width = 50;
+            // 
+            // tbprestaBindingSource
+            // 
+            this.tbprestaBindingSource.DataMember = "tb_presta";
+            this.tbprestaBindingSource.DataSource = this.dataSet1;
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // bt_calcTTC
+            // 
+            this.bt_calcTTC.Location = new System.Drawing.Point(19, 182);
+            this.bt_calcTTC.Name = "bt_calcTTC";
+            this.bt_calcTTC.Size = new System.Drawing.Size(100, 23);
+            this.bt_calcTTC.TabIndex = 10;
+            this.bt_calcTTC.Text = "Calcul HT->TTC";
+            this.toolTip1.SetToolTip(this.bt_calcTTC, "Recalcule les prix TTC à partir des prix HT");
+            this.bt_calcTTC.UseVisualStyleBackColor = true;
+            this.bt_calcTTC.Click += new System.EventHandler(this.bt_calcTTC_Click);
+            // 
+            // bt_calcHT
+            // 
+            this.bt_calcHT.Location = new System.Drawing.Point(19, 135);
+            this.bt_calcHT.Name = "bt_calcHT";
+            this.bt_calcHT.Size = new System.Drawing.Size(100, 23);
+            this.bt_calcHT.TabIndex = 9;
+            this.bt_calcHT.Text = "Calcul TTC->HT";
+            this.toolTip1.SetToolTip(this.bt_calcHT, "Recalcule les prix HT à partir des prix TTC");
+            this.bt_calcHT.UseVisualStyleBackColor = true;
+            this.bt_calcHT.Click += new System.EventHandler(this.bt_calcHT_Click);
+            // 
+            // bt_ajProd
+            // 
+            this.bt_ajProd.Location = new System.Drawing.Point(19, 86);
+            this.bt_ajProd.Name = "bt_ajProd";
+            this.bt_ajProd.Size = new System.Drawing.Size(100, 23);
+            this.bt_ajProd.TabIndex = 8;
+            this.bt_ajProd.Text = "+ Produits";
+            this.toolTip1.SetToolTip(this.bt_ajProd, "Ajoute tous les produits");
+            this.bt_ajProd.UseVisualStyleBackColor = true;
+            this.bt_ajProd.Click += new System.EventHandler(this.bt_ajProd_Click);
+            // 
+            // bt_ajCarbu
+            // 
+            this.bt_ajCarbu.Location = new System.Drawing.Point(19, 40);
+            this.bt_ajCarbu.Name = "bt_ajCarbu";
+            this.bt_ajCarbu.Size = new System.Drawing.Size(104, 23);
+            this.bt_ajCarbu.TabIndex = 7;
+            this.bt_ajCarbu.Text = "+ Carburants";
+            this.toolTip1.SetToolTip(this.bt_ajCarbu, "Ajouter tous les carburants");
+            this.bt_ajCarbu.UseVisualStyleBackColor = true;
+            this.bt_ajCarbu.Click += new System.EventHandler(this.bt_ajCarbu_Click);
+            // 
+            // tabVente
+            // 
+            this.tabVente.Controls.Add(this.splitContainer4);
+            this.tabVente.Location = new System.Drawing.Point(4, 25);
+            this.tabVente.Name = "tabVente";
+            this.tabVente.Padding = new System.Windows.Forms.Padding(3);
+            this.tabVente.Size = new System.Drawing.Size(740, 331);
+            this.tabVente.TabIndex = 1;
+            this.tabVente.Text = "Etat des ventes";
+            this.tabVente.UseVisualStyleBackColor = true;
+            // 
+            // splitContainer4
+            // 
+            this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer4.Location = new System.Drawing.Point(3, 3);
+            this.splitContainer4.Name = "splitContainer4";
+            // 
+            // splitContainer4.Panel1
+            // 
+            this.splitContainer4.Panel1.Controls.Add(this.dg_vente);
+            // 
+            // splitContainer4.Panel2
+            // 
+            this.splitContainer4.Panel2.Controls.Add(this.chk_modif);
+            this.splitContainer4.Panel2.Controls.Add(this.t_facture);
+            this.splitContainer4.Size = new System.Drawing.Size(734, 325);
+            this.splitContainer4.SplitterDistance = 593;
+            this.splitContainer4.TabIndex = 45;
+            // 
+            // dg_vente
+            // 
+            this.dg_vente.AllowUserToAddRows = false;
+            this.dg_vente.AllowUserToDeleteRows = false;
+            this.dg_vente.AutoGenerateColumns = false;
+            this.dg_vente.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vente.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dg_vt_epr,
+            this.dg_vt_sta,
+            this.dg_vt_vehi,
+            this.dg_vt_prod,
+            this.dg_vt_date,
+            this.dg_vt_qtt,
+            this.dg_vt_pu,
+            this.dg_vt_tva,
+            this.dg_ht_vt,
+            this.dg_vt_ttc});
+            this.dg_vente.DataSource = this.tbventeBindingSource;
+            this.dg_vente.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_vente.Location = new System.Drawing.Point(0, 0);
+            this.dg_vente.Name = "dg_vente";
+            this.dg_vente.Size = new System.Drawing.Size(593, 325);
+            this.dg_vente.TabIndex = 1;
+            this.dg_vente.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.dg_vente_CellBeginEdit);
+            this.dg_vente.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.dg_vente_CellEndEdit);
+            this.dg_vente.CellLeave += new System.Windows.Forms.DataGridViewCellEventHandler(this.dg_vente_CellLeave);
+            this.dg_vente.DataError += new System.Windows.Forms.DataGridViewDataErrorEventHandler(this.dg_vente_DataError);
+            this.dg_vente.RowsAdded += new System.Windows.Forms.DataGridViewRowsAddedEventHandler(this.dg_vente_RowsAdded);
+            // 
+            // dg_vt_epr
+            // 
+            this.dg_vt_epr.DataPropertyName = "epreuve_vt";
+            this.dg_vt_epr.HeaderText = "epreuve_vt";
+            this.dg_vt_epr.Name = "dg_vt_epr";
+            this.dg_vt_epr.ReadOnly = true;
+            this.dg_vt_epr.Visible = false;
+            // 
+            // dg_vt_sta
+            // 
+            this.dg_vt_sta.DataPropertyName = "station_vt";
+            this.dg_vt_sta.HeaderText = "station_vt";
+            this.dg_vt_sta.Name = "dg_vt_sta";
+            this.dg_vt_sta.ReadOnly = true;
+            this.dg_vt_sta.Visible = false;
+            // 
+            // dg_vt_vehi
+            // 
+            this.dg_vt_vehi.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
+            this.dg_vt_vehi.DataPropertyName = "vehi_vt";
+            this.dg_vt_vehi.HeaderText = "Vehicule";
+            this.dg_vt_vehi.Name = "dg_vt_vehi";
+            this.dg_vt_vehi.ReadOnly = true;
+            this.dg_vt_vehi.Width = 73;
+            // 
+            // dg_vt_prod
+            // 
+            this.dg_vt_prod.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.dg_vt_prod.DataPropertyName = "prod_vt";
+            this.dg_vt_prod.HeaderText = "Produit";
+            this.dg_vt_prod.MinimumWidth = 50;
+            this.dg_vt_prod.Name = "dg_vt_prod";
+            this.dg_vt_prod.ReadOnly = true;
+            // 
+            // dg_vt_date
+            // 
+            this.dg_vt_date.DataPropertyName = "date_vt";
+            dataGridViewCellStyle4.Format = "d";
+            dataGridViewCellStyle4.NullValue = null;
+            this.dg_vt_date.DefaultCellStyle = dataGridViewCellStyle4;
+            this.dg_vt_date.HeaderText = "Date";
+            this.dg_vt_date.Name = "dg_vt_date";
+            this.dg_vt_date.ReadOnly = true;
+            this.dg_vt_date.Width = 80;
+            // 
+            // dg_vt_qtt
+            // 
+            this.dg_vt_qtt.DataPropertyName = "qtt_vt";
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Format = "N2";
+            this.dg_vt_qtt.DefaultCellStyle = dataGridViewCellStyle5;
+            this.dg_vt_qtt.HeaderText = "Qtt";
+            this.dg_vt_qtt.Name = "dg_vt_qtt";
+            this.dg_vt_qtt.ReadOnly = true;
+            this.dg_vt_qtt.Width = 70;
+            // 
+            // dg_vt_pu
+            // 
+            this.dg_vt_pu.DataPropertyName = "pu_vt";
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Format = "N3";
+            dataGridViewCellStyle6.NullValue = "0";
+            this.dg_vt_pu.DefaultCellStyle = dataGridViewCellStyle6;
+            this.dg_vt_pu.HeaderText = "PU";
+            this.dg_vt_pu.Name = "dg_vt_pu";
+            this.dg_vt_pu.ReadOnly = true;
+            this.dg_vt_pu.Width = 70;
+            // 
+            // dg_vt_tva
+            // 
+            this.dg_vt_tva.DataPropertyName = "tva_vt";
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle7.Format = "N2";
+            dataGridViewCellStyle7.NullValue = "0";
+            this.dg_vt_tva.DefaultCellStyle = dataGridViewCellStyle7;
+            this.dg_vt_tva.HeaderText = "TVA";
+            this.dg_vt_tva.Name = "dg_vt_tva";
+            this.dg_vt_tva.ReadOnly = true;
+            this.dg_vt_tva.Width = 60;
+            // 
+            // dg_ht_vt
+            // 
+            this.dg_ht_vt.DataPropertyName = "ht_vt";
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle8.Format = "N2";
+            this.dg_ht_vt.DefaultCellStyle = dataGridViewCellStyle8;
+            this.dg_ht_vt.HeaderText = "HT";
+            this.dg_ht_vt.Name = "dg_ht_vt";
+            this.dg_ht_vt.Width = 70;
+            // 
+            // dg_vt_ttc
+            // 
+            this.dg_vt_ttc.DataPropertyName = "ttc_vt";
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle9.Format = "N2";
+            this.dg_vt_ttc.DefaultCellStyle = dataGridViewCellStyle9;
+            this.dg_vt_ttc.HeaderText = "TTC";
+            this.dg_vt_ttc.Name = "dg_vt_ttc";
+            this.dg_vt_ttc.ReadOnly = true;
+            this.dg_vt_ttc.Width = 70;
+            // 
+            // tbventeBindingSource
+            // 
+            this.tbventeBindingSource.DataMember = "tb_vente";
+            this.tbventeBindingSource.DataSource = this.dataSet1;
+            // 
+            // chk_modif
+            // 
+            this.chk_modif.Location = new System.Drawing.Point(18, 261);
+            this.chk_modif.Name = "chk_modif";
+            this.chk_modif.Size = new System.Drawing.Size(104, 47);
+            this.chk_modif.TabIndex = 47;
+            this.chk_modif.Text = "Autoriser la modification des quantités";
+            this.chk_modif.UseVisualStyleBackColor = true;
+            this.chk_modif.Visible = false;
+            this.chk_modif.CheckedChanged += new System.EventHandler(this.chk_modif_CheckedChanged);
+            // 
+            // t_facture
+            // 
+            this.t_facture.Location = new System.Drawing.Point(18, 43);
+            this.t_facture.Name = "t_facture";
+            this.t_facture.Size = new System.Drawing.Size(100, 23);
+            this.t_facture.TabIndex = 45;
+            this.t_facture.Text = "Facture";
+            this.t_facture.UseVisualStyleBackColor = true;
+            this.t_facture.Click += new System.EventHandler(this.t_facture_Click);
+            // 
+            // button1
+            // 
+            this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.button1.Location = new System.Drawing.Point(622, 16);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(100, 23);
+            this.button1.TabIndex = 0;
+            this.button1.Text = "Sauvegarde";
+            this.button1.UseVisualStyleBackColor = true;
+            this.button1.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // toolTip1
+            // 
+            this.toolTip1.ToolTipTitle = "Aide";
+            // 
+            // f_presta
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(748, 449);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_presta";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Prestations";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_presta_FormClosing);
+            this.Load += new System.EventHandler(this.f_presta_Load);
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            this.tabControl1.ResumeLayout(false);
+            this.tabPrix.ResumeLayout(false);
+            this.splitContainer3.Panel1.ResumeLayout(false);
+            this.splitContainer3.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
+            this.splitContainer3.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_presta)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprestaBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.tabVente.ResumeLayout(false);
+            this.splitContainer4.Panel1.ResumeLayout(false);
+            this.splitContainer4.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit();
+            this.splitContainer4.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.TabControl tabControl1;
+        private System.Windows.Forms.TabPage tabPrix;
+        private System.Windows.Forms.TabPage tabVente;
+        private System.Windows.Forms.BindingSource tbprestaBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.ToolTip toolTip1;
+        private System.Windows.Forms.BindingSource tbventeBindingSource;
+        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.SplitContainer splitContainer3;
+        private System.Windows.Forms.Button bt_ajCarbu;
+        private System.Windows.Forms.Button bt_ajProd;
+        private System.Windows.Forms.Button bt_calcHT;
+        private System.Windows.Forms.Button bt_calcTTC;
+        private System.Windows.Forms.DataGridView dg_presta;
+        private System.Windows.Forms.SplitContainer splitContainer4;
+        private System.Windows.Forms.Button t_facture;
+        private System.Windows.Forms.DataGridView dg_vente;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_ht;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_presta_ttc;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_presta_tva;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_presta_pu;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_presta_unit;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_presta_kind;
+        private System.Windows.Forms.DataGridViewComboBoxColumn dg_presta_prod;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_presta_Sta;
+        private System.Windows.Forms.CheckBox chk_modif;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_epr;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_sta;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_prod;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_date;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_qtt;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_pu;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_tva;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_ht_vt;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dg_vt_ttc;
+    }
+}

+ 398 - 0
Fuel_ASO/f_presta.cs

@@ -0,0 +1,398 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Diagnostics;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml.Linq;
+using Excel = Microsoft.Office.Interop.Excel;
+
+
+namespace Fuel01
+{
+    public partial class f_presta : Form
+    {
+        DataSet1.tb_prestaDataTable tb_presta = new DataSet1.tb_prestaDataTable();
+        DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_stationDataTable tb_station = new DataSet1.tb_stationDataTable();
+
+        DataSet1.tb_stationRow current_sta = null;
+        List<produit> lproduit = new List<produit>();
+
+        DataGridViewRow myrow = null;
+        float oldqtt = 0;
+        static ProdEqualityComparer prodEqC = new ProdEqualityComparer();
+        Dictionary<id_prod, vente_tot> lvente_tot = new Dictionary<id_prod, vente_tot>(prodEqC);
+        Dictionary<decimal, vente_tva> lvente_tva = new Dictionary<decimal, vente_tva>();
+
+
+        string id_sta = "";
+        public f_presta(TextBox key_sta)
+        {
+            InitializeComponent();
+            
+            if (File.Exists(Program.subfolder + @"\station.json"))
+                tb_station = DbUtil.LoadFromJson<DataSet1.tb_stationDataTable>(Program.subfolder + @"\station.json", tb_station);
+
+            if (File.Exists(Program.folder + @"\param\produit.xml"))
+                init_list_produit();
+
+            if (File.Exists(Program.subfolder + @"\presta_base.json"))
+                tb_presta = DbUtil.LoadFromJson<DataSet1.tb_prestaDataTable>(Program.subfolder + @"\presta_base.json", tb_presta);
+            tb_presta.AcceptChanges();
+            tbprestaBindingSource.DataSource = tb_presta;
+
+            if (File.Exists(Program.subfolder + @"\vente.json"))
+                tb_vente = DbUtil.LoadFromJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente.json", tb_vente);
+            tb_vente.AcceptChanges();
+            tbventeBindingSource.DataSource = tb_vente;
+            
+            id_sta = key_sta.Text;
+            tbprestaBindingSource.Filter = " sta_pr='" + id_sta + "'";
+            tbventeBindingSource.Filter = " station_vt='" + id_sta + "'";
+
+            tbprestaBindingSource.Sort = "sta_pr,kind_pr,prod_pr";
+            key_sta.TextChanged += key_sta_TextChanged;
+
+            key_sta_TextChanged(key_sta, null);
+
+            t_facture.Enabled = Program.isExcel;
+
+        }
+
+        private void f_presta_Load(object sender, EventArgs e)
+        {
+            
+        }
+
+
+        void key_sta_TextChanged(object sender, EventArgs e)
+        {
+            TextBox mytxtb = sender as TextBox;
+            id_sta = mytxtb.Text;
+            tbprestaBindingSource.Filter = " sta_pr='" + id_sta + "'";
+            tbventeBindingSource.Filter = " station_vt='" + id_sta + "'";
+
+            current_sta = tb_station.FindBykey_sta(id_sta);
+        }
+
+        private void f_presta_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            DbUtil.SaveToJson<DataSet1.tb_prestaDataTable>(Program.subfolder + @"\presta_base.json", tb_presta);
+
+            DbUtil.SaveToJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\presta_base.json", tb_vente);
+
+            tbprestaBindingSource.Filter = "";
+            tbprestaBindingSource.Sort = "sta_pr,kind_pr,prod_pr";
+            tbprestaBindingSource.MoveFirst();
+            int i = 0;
+            while (tbprestaBindingSource.Position<tbprestaBindingSource.Count-1)
+            {
+                DataSet1.tb_prestaRow myNewRow = tb_presta.Rows[i++] as DataSet1.tb_prestaRow;
+                string a=i.ToString()+"-"+myNewRow["sta_pr"].ToString()+"-"+myNewRow["kind_pr"].ToString()+"-"+myNewRow["prod_pr"].ToString(); 
+                Console.WriteLine(a);
+                tbprestaBindingSource.MoveNext();
+            }
+        }
+
+        private void init_list_produit()
+        {
+
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\produit.xml");
+            var data = from item in xRoot.Descendants("tb_prod")
+                       orderby item.Element("type_prod").Value, item.Element("lib_prod").Value
+                       select new produit()
+                       {
+                           key_prod = item.Element("key_prod").Value,
+                           lib_prod = item.Element("lib_prod").Value,
+                           type_prod = item.Element("type_prod").Value
+                       };
+            lproduit = data.ToList();
+
+            dg_presta_prod.Items.Clear();
+            dg_presta_prod.DataSource = lproduit;
+            dg_presta_prod.DisplayMember ="lib_prod" ;
+            dg_presta_prod.ValueMember = "key_prod";
+
+        }
+
+        private void dg_presta_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
+        {
+            if (e.RowIndex > 0)
+            {
+                if (dg_presta.Rows[e.RowIndex - 1].Cells[0].Value is System.DBNull)
+                {
+                    dg_presta.Rows[e.RowIndex - 1].Cells[0].Value = id_sta;
+                }
+                if (dg_presta.Rows[e.RowIndex - 1].Cells[0].Value == null)
+                {
+                    dg_presta.Rows[e.RowIndex - 1].Cells[0].Value = id_sta;
+                }
+            }
+        }
+
+        private void bt_ajCarbu_Click(object sender, EventArgs e)
+        {
+            foreach (produit p in lproduit.Where(p => p.type_prod == "Carburant"))
+            {
+                bool ok = false;
+                for (int i = 0; i < dg_presta.RowCount - 1 && !ok; i++)
+                    if (dg_presta.Rows[i].Cells[1].Value.ToString() == p.key_prod)
+                        ok = true;
+                if (!ok)
+                {
+                    DataSet1.tb_prestaRow myNewRow = tb_presta.Newtb_prestaRow();
+                    myNewRow["sta_pr"] = id_sta;
+                    myNewRow["prod_pr"] = p.key_prod;
+                    myNewRow["kind_pr"] = p.type_prod;
+                    myNewRow["unite_pr"] = "L";
+                    myNewRow["pu_pr"] = 1;
+                    myNewRow["tva_pr"] = 20;
+                    myNewRow["ttc_pr"] = 1.2;
+                    tb_presta.Addtb_prestaRow(myNewRow);
+                }
+            }
+
+        }
+
+        private void bt_ajProd_Click(object sender, EventArgs e)
+        {
+            foreach (produit p in lproduit)
+            {
+                bool ok = false;
+                for (int i = 0; i < dg_presta.RowCount - 1 && !ok; i++)
+                    if (dg_presta.Rows[i].Cells[1].Value.ToString() == p.key_prod)
+                        ok = true;
+                if (!ok)
+                {
+                    DataSet1.tb_prestaRow myNewRow = tb_presta.Newtb_prestaRow();
+                    myNewRow["sta_pr"] = id_sta;
+                    myNewRow["prod_pr"] = p.key_prod;
+                    myNewRow["kind_pr"] = p.type_prod;
+                    myNewRow["unite_pr"] = p.type_prod == "Carburant" ? "L" : "U";
+                    myNewRow["pu_pr"] = 1;
+                    myNewRow["tva_pr"] = 20;
+                    myNewRow["ttc_pr"] = 1.2;
+                    tb_presta.Addtb_prestaRow(myNewRow);
+                }
+            }
+        }
+
+        private void bt_calcHT_Click(object sender, EventArgs e)
+        {
+            foreach (DataSet1.tb_prestaRow p in tb_presta.Rows)
+            {
+                if (p["ttc_pr"].ToString() != "" && p["tva_pr"].ToString() != "")
+                {
+                    Decimal ttc = (Decimal)p["ttc_pr"];
+                    Decimal tva = 1 + (Decimal)p["tva_pr"] / 100;
+                    Decimal ht = ttc / tva;
+                    ht = Math.Round(ht, 3);
+                    p["pu_pr"] = ht;
+                }
+            }
+        }
+
+        private void bt_calcTTC_Click(object sender, EventArgs e)
+        {
+            foreach (DataSet1.tb_prestaRow p in tb_presta.Rows)
+            {
+
+                Console.WriteLine(p["sta_pr"].ToString());
+                Console.WriteLine(p["prod_pr"].ToString());
+                Console.WriteLine(p["kind_pr"].ToString());
+                Console.WriteLine(p["unite_pr"].ToString());
+                Console.WriteLine(p["pu_pr"].ToString());
+                Console.WriteLine(p["tva_pr"].ToString());
+                Console.WriteLine(p["ttc_pr"].ToString());
+                if (p["pu_pr"].ToString() != "" && p["tva_pr"].ToString() != "")
+                {
+                    Decimal ht = (Decimal)p["pu_pr"];
+                    Decimal tva = 1 + (Decimal)p["tva_pr"] / 100;
+                    Decimal ttc = ht * tva;
+                    ttc = Math.Round(ttc, 3);
+                    p["ttc_pr"] = ttc;
+                }
+            }
+        }
+
+      
+        private void dg_vente_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
+        {
+            if (e.RowIndex > 0)
+            {
+                if (dg_vente.Rows[e.RowIndex - 1].Cells[0].Value is System.DBNull)
+                {
+                    dg_vente.Rows[e.RowIndex - 1].Cells[0].Value = Program.key_ope;
+                    dg_vente.Rows[e.RowIndex - 1].Cells[1].Value = id_sta;
+                }
+
+                if (dg_vente.Rows[e.RowIndex - 1].Cells[0].Value == null)
+                {
+                    dg_vente.Rows[e.RowIndex - 1].Cells[0].Value = Program.key_ope;
+                    dg_vente.Rows[e.RowIndex - 1].Cells[1].Value = id_sta;
+                }
+            }
+        }
+
+        private void dg_presta_CellEndEdit(object sender, DataGridViewCellEventArgs e)
+        {
+            if (e.ColumnIndex != 1) return;
+            string typeProd="";
+            string prod = dg_presta.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
+            if (lproduit.Exists(xx => xx.key_prod == prod))
+                typeProd = lproduit.Find(xx => xx.key_prod == prod).type_prod;
+            dg_presta.Rows[e.RowIndex].Cells[2].Value = typeProd;
+
+        }
+
+        private void button1_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                string filter = tbprestaBindingSource.Filter;
+                tbprestaBindingSource.Filter = "";
+                tbprestaBindingSource.Sort = "sta_pr,kind_pr,prod_pr";
+                tbprestaBindingSource.MoveFirst();
+                int size = tbprestaBindingSource.Count;
+                System.Data.DataRowView[] arr = new System.Data.DataRowView[8192];
+                tbprestaBindingSource.CopyTo(arr, 0);
+                int id_sta = 9999;
+                string kind_carbu = "####";
+                XElement station = null;
+                XElement prod = null;
+                XElement detail = null;
+                XElement presta = new XElement("tb_prestas", null);
+                for (int i = 0; i < tbprestaBindingSource.Count; i++)
+                {
+                    string a = i.ToString() + "-" + arr[i].Row["sta_pr"].ToString() + "-" + arr[i].Row["kind_pr"].ToString() + "-" + arr[i].Row["prod_pr"].ToString();
+                    Console.WriteLine(a);
+                    if (id_sta != Convert.ToInt32(arr[i].Row["sta_pr"]))
+                    {
+                        station = new XElement("tb_presta", new XElement("sta_pr", arr[i].Row["sta_pr"].ToString()));
+                        presta.Add(station);
+                        id_sta = Convert.ToInt32(arr[i].Row["sta_pr"]);
+                        kind_carbu = "####";
+                    }
+                    if (kind_carbu != arr[i].Row["kind_pr"].ToString())
+                    {
+                        prod = new XElement(arr[i].Row["kind_pr"].ToString() == "Carburant" ? "carburants" : "autres", null);
+                        station.Add(prod);
+                        kind_carbu = arr[i].Row["kind_pr"].ToString();
+                    }
+                    if (lproduit.Find(xx => xx.key_prod == arr[i].Row["prod_pr"].ToString()) != null)
+                    {
+
+                        detail = new XElement(arr[i].Row["kind_pr"].ToString() == "Carburant" ? "carburant" : "autre",
+                                    new XElement("prod_pr", arr[i].Row["prod_pr"].ToString()),
+                                    new XElement("lib_prod", lproduit.Find(xx => xx.key_prod == arr[i].Row["prod_pr"].ToString()).lib_prod),
+                                    new XElement("unite_pr", arr[i].Row["unite_pr"].ToString()),
+                                    new XElement("pu_pr", arr[i].Row["pu_pr"].ToString()),
+                                    new XElement("tva_pr", arr[i].Row["ttc_pr"].ToString()),
+                                    new XElement("ttc_pr", arr[i].Row["ttc_pr"].ToString()));
+                        prod.Add(detail);
+                    }
+                    else
+                    {
+                        MessageBox.Show(arr[i].Row["prod_pr"].ToString() + " Produit supprimé !!","Attention",MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
+                    }
+                }
+                presta.Save(Program.subfolder + @"\presta.xml");
+
+                DbUtil.SaveToJson<DataSet1.tb_prestaDataTable>(Program.subfolder + @"\presta_base.json", tb_presta);
+
+                tbprestaBindingSource.Filter = filter;
+                MessageBox.Show("Sauvegarde effectuée, il faut maintenant envoyer les fichiers !!","Terminé", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("Sauvegarde non effectuée!!!!"+"\r\n"+ex.Message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+
+        }
+
+        private void t_facture_Click(object sender, EventArgs e)
+        {
+            f_facture ffac = new f_facture(current_sta["key_sta"].ToString());
+            ffac.ShowDialog();        
+
+        }
+
+        private void dg_vente_CellEndEdit(object sender, DataGridViewCellEventArgs e)
+        {
+            Console.WriteLine("EN EDIT ");
+            bool ok = true;
+            if (myrow != null)
+            {
+                Console.WriteLine("EN EDIT OK1");
+                float qtt = 0;
+                float puttc = 0;
+                float tva = 0;
+                float ttc = 0;
+                float ht = 0;
+                ok = float.TryParse(myrow.Cells[5].Value.ToString(), out qtt);
+                if (ok) ok = float.TryParse(myrow.Cells[6].Value.ToString(), out puttc);
+                if (ok) ok = float.TryParse(myrow.Cells[7].Value.ToString(), out tva);
+                if (ok) ok = float.TryParse(myrow.Cells[8].Value.ToString(), out ht);
+                if (ok) ok = float.TryParse(myrow.Cells[9].Value.ToString(), out ttc);
+
+                if (!ok)
+                {
+                    MessageBox.Show("Erreur de saisie");                    
+                    dg_vente.Rows[e.RowIndex].Cells[5].Value = oldqtt;
+                    return;
+                }
+                dg_vente.Rows[e.RowIndex].Cells[9].Value = qtt * puttc;
+                dg_vente.Rows[e.RowIndex].Cells[8].Value = ( qtt * puttc) / ( 1 + (tva/100));
+            }
+            myrow = null;
+            oldqtt = 0;
+            Console.WriteLine("ENd EDIT OUt");
+        }
+
+        private void dg_vente_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
+        {
+            Console.WriteLine("BEGIN  EDIT");
+            myrow = dg_vente.Rows[e.RowIndex];
+            if ( !float.TryParse(myrow.Cells[5].Value.ToString(), out oldqtt))
+                e.Cancel = true;
+            
+        }
+
+        private void dg_vente_CellLeave(object sender, DataGridViewCellEventArgs e)
+        {
+          
+        }
+
+        private void dg_vente_DataError(object sender, DataGridViewDataErrorEventArgs e)
+        {
+            if (myrow != null)
+            {
+                MessageBox.Show("Appuyez sur la touche Echappe (ESC Escape) \r\n dans la grille de saisie pour Abndonner l'opération","Erreur de saisie");
+                dg_vente.Rows[e.RowIndex].Cells[5].Value = oldqtt;
+                myrow = null;
+                oldqtt = 0;
+            }
+        }
+
+        private void chk_modif_CheckedChanged(object sender, EventArgs e)
+        {
+            dg_vt_qtt.ReadOnly = !chk_modif.Checked;
+            for (int i=0; i<dg_vente.ColumnCount;i++)
+            {
+                if (i==5)
+                    dg_vente.Columns[i].DefaultCellStyle.BackColor =    chk_modif.Checked? Color.LimeGreen: Color.Empty;
+                else
+                    dg_vente.Columns[i].DefaultCellStyle.BackColor = chk_modif.Checked ? Color.OrangeRed : Color.Empty;
+            }
+        }
+
+        
+    }
+   
+}

+ 141 - 0
Fuel_ASO/f_presta.resx

@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbprestaBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>116, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>292, 17</value>
+  </metadata>
+  <metadata name="dg_vt_epr.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dg_ht_vt.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="tbventeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>389, 17</value>
+  </metadata>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>122</value>
+  </metadata>
+</root>

+ 100 - 0
Fuel_ASO/f_result.Designer.cs

@@ -0,0 +1,100 @@
+namespace Fuel01
+{
+    partial class f_result
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.bt_close = new System.Windows.Forms.Button();
+            this.rt = new System.Windows.Forms.RichTextBox();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.rt);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.bt_close);
+            this.splitContainer1.Size = new System.Drawing.Size(545, 526);
+            this.splitContainer1.SplitterDistance = 470;
+            this.splitContainer1.TabIndex = 0;
+            // 
+            // bt_close
+            // 
+            this.bt_close.Location = new System.Drawing.Point(426, 17);
+            this.bt_close.Name = "bt_close";
+            this.bt_close.Size = new System.Drawing.Size(75, 23);
+            this.bt_close.TabIndex = 0;
+            this.bt_close.Text = "Fermer";
+            this.bt_close.UseVisualStyleBackColor = true;
+            this.bt_close.Click += new System.EventHandler(this.bt_close_Click);
+            // 
+            // rt
+            // 
+            this.rt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.rt.Location = new System.Drawing.Point(0, 0);
+            this.rt.Name = "rt";
+            this.rt.Size = new System.Drawing.Size(545, 470);
+            this.rt.TabIndex = 0;
+            this.rt.Text = "";
+            // 
+            // f_result
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(545, 526);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_result";
+            this.Load += new System.EventHandler(this.f_result_Load);
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.RichTextBox rt;
+        private System.Windows.Forms.Button bt_close;
+    }
+}

+ 38 - 0
Fuel_ASO/f_result.cs

@@ -0,0 +1,38 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_result : Form
+    {
+        string filename;
+        string zipname;
+        public f_result(string _filename,string _zipname)
+        {
+            InitializeComponent();
+            filename = _filename;
+            zipname = _zipname;
+        }
+
+        private void f_result_Load(object sender, EventArgs e)
+        {
+            this.Text = filename;
+            rt.LoadFile(filename, RichTextBoxStreamType.PlainText);
+
+            rt.AppendText("*****************\r\nOpération terminée\r\n");
+            rt.AppendText("\r\nArchive "+zipname+" créée");
+        }
+
+        private void bt_close_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+    }
+}

+ 120 - 0
Fuel_ASO/f_result.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 1174 - 0
Fuel_ASO/f_saisie.Designer.cs

@@ -0,0 +1,1174 @@
+namespace Fuel01
+{
+    partial class f_saisie
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.text_no = new System.Windows.Forms.TextBox();
+            this.grpCarb = new System.Windows.Forms.GroupBox();
+            this.nuPxCarb = new System.Windows.Forms.NumericUpDown();
+            this.nuVolCarb = new System.Windows.Forms.NumericUpDown();
+            this.txtMntCarb = new System.Windows.Forms.TextBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.rdCarb6 = new System.Windows.Forms.RadioButton();
+            this.rdCarb3 = new System.Windows.Forms.RadioButton();
+            this.label4 = new System.Windows.Forms.Label();
+            this.rdCarb5 = new System.Windows.Forms.RadioButton();
+            this.rdCarb4 = new System.Windows.Forms.RadioButton();
+            this.rdCarb2 = new System.Windows.Forms.RadioButton();
+            this.rdCarb1 = new System.Windows.Forms.RadioButton();
+            this.label1 = new System.Windows.Forms.Label();
+            this.bt_valid = new System.Windows.Forms.Button();
+            this.bt_abort = new System.Windows.Forms.Button();
+            this.lbl_pilote = new System.Windows.Forms.Label();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.rdMoto = new System.Windows.Forms.RadioButton();
+            this.rdAuto = new System.Windows.Forms.RadioButton();
+            this.dg_sta = new System.Windows.Forms.DataGridView();
+            this.etpstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datestaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.nomstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbstationBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.dg_presta = new System.Windows.Forms.DataGridView();
+            this.staprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.prodprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.kindprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.uniteprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.puprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tvaprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ttcprDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbprestaBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dg_vente = new System.Windows.Forms.DataGridView();
+            this.epreuvevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.stationvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.vehivtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.prodvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.qttvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.puvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tvavtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ttcvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbventeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.grpServ = new System.Windows.Forms.GroupBox();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.nuQttFree = new System.Windows.Forms.NumericUpDown();
+            this.nuPrFree = new System.Windows.Forms.NumericUpDown();
+            this.txtTotFree = new System.Windows.Forms.TextBox();
+            this.nuQtt3 = new System.Windows.Forms.NumericUpDown();
+            this.nuPr3 = new System.Windows.Forms.NumericUpDown();
+            this.txtTot3 = new System.Windows.Forms.TextBox();
+            this.nuQtt2 = new System.Windows.Forms.NumericUpDown();
+            this.nuPr2 = new System.Windows.Forms.NumericUpDown();
+            this.txtTot2 = new System.Windows.Forms.TextBox();
+            this.nuQtt1 = new System.Windows.Forms.NumericUpDown();
+            this.txtPrFree = new System.Windows.Forms.TextBox();
+            this.chkPrFree = new System.Windows.Forms.CheckBox();
+            this.chkPr3 = new System.Windows.Forms.CheckBox();
+            this.chkPr2 = new System.Windows.Forms.CheckBox();
+            this.chkPr1 = new System.Windows.Forms.CheckBox();
+            this.nuPr1 = new System.Windows.Forms.NumericUpDown();
+            this.txtTot1 = new System.Windows.Forms.TextBox();
+            this.bt_search = new System.Windows.Forms.Button();
+            this.tbvehiBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.tbventetmpbindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.bt_save = new System.Windows.Forms.Button();
+            this.grpCarb.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPxCarb)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuVolCarb)).BeginInit();
+            this.groupBox2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_sta)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_presta)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprestaBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).BeginInit();
+            this.grpServ.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQttFree)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPrFree)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt3)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr3)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventetmpbindingSource)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // text_no
+            // 
+            this.text_no.Location = new System.Drawing.Point(94, 32);
+            this.text_no.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.text_no.Name = "text_no";
+            this.text_no.Size = new System.Drawing.Size(38, 20);
+            this.text_no.TabIndex = 1;
+            this.text_no.Text = "...";
+            this.text_no.KeyUp += new System.Windows.Forms.KeyEventHandler(this.text_no_KeyUp);
+            this.text_no.Leave += new System.EventHandler(this.bt_search_Click);
+            // 
+            // grpCarb
+            // 
+            this.grpCarb.Controls.Add(this.nuPxCarb);
+            this.grpCarb.Controls.Add(this.nuVolCarb);
+            this.grpCarb.Controls.Add(this.txtMntCarb);
+            this.grpCarb.Controls.Add(this.label3);
+            this.grpCarb.Controls.Add(this.label2);
+            this.grpCarb.Controls.Add(this.rdCarb6);
+            this.grpCarb.Controls.Add(this.rdCarb3);
+            this.grpCarb.Controls.Add(this.label4);
+            this.grpCarb.Controls.Add(this.rdCarb5);
+            this.grpCarb.Controls.Add(this.rdCarb4);
+            this.grpCarb.Controls.Add(this.rdCarb2);
+            this.grpCarb.Controls.Add(this.rdCarb1);
+            this.grpCarb.Location = new System.Drawing.Point(12, 76);
+            this.grpCarb.Margin = new System.Windows.Forms.Padding(1);
+            this.grpCarb.Name = "grpCarb";
+            this.grpCarb.Padding = new System.Windows.Forms.Padding(1);
+            this.grpCarb.Size = new System.Drawing.Size(207, 132);
+            this.grpCarb.TabIndex = 3;
+            this.grpCarb.TabStop = false;
+            this.grpCarb.Text = "Carburants";
+            // 
+            // nuPxCarb
+            // 
+            this.nuPxCarb.DecimalPlaces = 3;
+            this.nuPxCarb.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPxCarb.Location = new System.Drawing.Point(59, 76);
+            this.nuPxCarb.Margin = new System.Windows.Forms.Padding(1);
+            this.nuPxCarb.Maximum = new decimal(new int[] {
+            999999,
+            0,
+            0,
+            0});
+            this.nuPxCarb.Name = "nuPxCarb";
+            this.nuPxCarb.ReadOnly = true;
+            this.nuPxCarb.Size = new System.Drawing.Size(71, 20);
+            this.nuPxCarb.TabIndex = 6;
+            this.nuPxCarb.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuVolCarb
+            // 
+            this.nuVolCarb.DecimalPlaces = 2;
+            this.nuVolCarb.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuVolCarb.Location = new System.Drawing.Point(31, 100);
+            this.nuVolCarb.Margin = new System.Windows.Forms.Padding(1);
+            this.nuVolCarb.Maximum = new decimal(new int[] {
+            999999,
+            0,
+            0,
+            0});
+            this.nuVolCarb.Name = "nuVolCarb";
+            this.nuVolCarb.Size = new System.Drawing.Size(71, 20);
+            this.nuVolCarb.TabIndex = 7;
+            this.nuVolCarb.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtMntCarb
+            // 
+            this.txtMntCarb.Location = new System.Drawing.Point(136, 100);
+            this.txtMntCarb.Margin = new System.Windows.Forms.Padding(1);
+            this.txtMntCarb.Name = "txtMntCarb";
+            this.txtMntCarb.Size = new System.Drawing.Size(56, 20);
+            this.txtMntCarb.TabIndex = 8;
+            this.txtMntCarb.Text = "0";
+            this.txtMntCarb.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(105, 103);
+            this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(28, 13);
+            this.label3.TabIndex = 13;
+            this.label3.Text = "Mnt.";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(5, 103);
+            this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(25, 13);
+            this.label2.TabIndex = 12;
+            this.label2.Text = "Vol.";
+            // 
+            // rdCarb6
+            // 
+            this.rdCarb6.AutoSize = true;
+            this.rdCarb6.Location = new System.Drawing.Point(141, 48);
+            this.rdCarb6.Margin = new System.Windows.Forms.Padding(1);
+            this.rdCarb6.Name = "rdCarb6";
+            this.rdCarb6.Size = new System.Drawing.Size(34, 17);
+            this.rdCarb6.TabIndex = 5;
+            this.rdCarb6.Text = "...";
+            this.rdCarb6.UseVisualStyleBackColor = true;
+            this.rdCarb6.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb3
+            // 
+            this.rdCarb3.AutoSize = true;
+            this.rdCarb3.Location = new System.Drawing.Point(141, 25);
+            this.rdCarb3.Margin = new System.Windows.Forms.Padding(1);
+            this.rdCarb3.Name = "rdCarb3";
+            this.rdCarb3.Size = new System.Drawing.Size(34, 17);
+            this.rdCarb3.TabIndex = 2;
+            this.rdCarb3.Text = "...";
+            this.rdCarb3.UseVisualStyleBackColor = true;
+            this.rdCarb3.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(6, 78);
+            this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(39, 13);
+            this.label4.TabIndex = 7;
+            this.label4.Text = "Prix  L.";
+            // 
+            // rdCarb5
+            // 
+            this.rdCarb5.AutoSize = true;
+            this.rdCarb5.Location = new System.Drawing.Point(76, 47);
+            this.rdCarb5.Margin = new System.Windows.Forms.Padding(1);
+            this.rdCarb5.Name = "rdCarb5";
+            this.rdCarb5.Size = new System.Drawing.Size(34, 17);
+            this.rdCarb5.TabIndex = 4;
+            this.rdCarb5.Text = "...";
+            this.rdCarb5.UseVisualStyleBackColor = true;
+            this.rdCarb5.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb4
+            // 
+            this.rdCarb4.AutoSize = true;
+            this.rdCarb4.Location = new System.Drawing.Point(8, 47);
+            this.rdCarb4.Margin = new System.Windows.Forms.Padding(1);
+            this.rdCarb4.Name = "rdCarb4";
+            this.rdCarb4.Size = new System.Drawing.Size(34, 17);
+            this.rdCarb4.TabIndex = 3;
+            this.rdCarb4.Text = "...";
+            this.rdCarb4.UseVisualStyleBackColor = true;
+            this.rdCarb4.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb2
+            // 
+            this.rdCarb2.AutoSize = true;
+            this.rdCarb2.Location = new System.Drawing.Point(76, 24);
+            this.rdCarb2.Margin = new System.Windows.Forms.Padding(1);
+            this.rdCarb2.Name = "rdCarb2";
+            this.rdCarb2.Size = new System.Drawing.Size(34, 17);
+            this.rdCarb2.TabIndex = 1;
+            this.rdCarb2.Text = "...";
+            this.rdCarb2.UseVisualStyleBackColor = true;
+            this.rdCarb2.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb1
+            // 
+            this.rdCarb1.AutoSize = true;
+            this.rdCarb1.Checked = true;
+            this.rdCarb1.Location = new System.Drawing.Point(8, 24);
+            this.rdCarb1.Margin = new System.Windows.Forms.Padding(1);
+            this.rdCarb1.Name = "rdCarb1";
+            this.rdCarb1.Size = new System.Drawing.Size(34, 17);
+            this.rdCarb1.TabIndex = 0;
+            this.rdCarb1.TabStop = true;
+            this.rdCarb1.Text = "...";
+            this.rdCarb1.UseVisualStyleBackColor = true;
+            this.rdCarb1.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(12, 35);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(77, 13);
+            this.label1.TabIndex = 1;
+            this.label1.Text = "N° du véhicule";
+            // 
+            // bt_valid
+            // 
+            this.bt_valid.Location = new System.Drawing.Point(10, 453);
+            this.bt_valid.Margin = new System.Windows.Forms.Padding(1);
+            this.bt_valid.Name = "bt_valid";
+            this.bt_valid.Size = new System.Drawing.Size(71, 25);
+            this.bt_valid.TabIndex = 5;
+            this.bt_valid.Text = "Ajouter";
+            this.bt_valid.UseVisualStyleBackColor = true;
+            this.bt_valid.Click += new System.EventHandler(this.bt_valid_Click);
+            // 
+            // bt_abort
+            // 
+            this.bt_abort.Location = new System.Drawing.Point(127, 453);
+            this.bt_abort.Margin = new System.Windows.Forms.Padding(1);
+            this.bt_abort.Name = "bt_abort";
+            this.bt_abort.Size = new System.Drawing.Size(77, 25);
+            this.bt_abort.TabIndex = 6;
+            this.bt_abort.Text = "Abandonner";
+            this.bt_abort.UseVisualStyleBackColor = true;
+            this.bt_abort.Click += new System.EventHandler(this.bt_abort_Click);
+            // 
+            // lbl_pilote
+            // 
+            this.lbl_pilote.Location = new System.Drawing.Point(12, 55);
+            this.lbl_pilote.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.lbl_pilote.Name = "lbl_pilote";
+            this.lbl_pilote.Size = new System.Drawing.Size(139, 13);
+            this.lbl_pilote.TabIndex = 19;
+            this.lbl_pilote.Text = ".....................................";
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.Controls.Add(this.rdMoto);
+            this.groupBox2.Controls.Add(this.rdAuto);
+            this.groupBox2.Location = new System.Drawing.Point(14, -1);
+            this.groupBox2.Margin = new System.Windows.Forms.Padding(2);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Padding = new System.Windows.Forms.Padding(2);
+            this.groupBox2.Size = new System.Drawing.Size(128, 27);
+            this.groupBox2.TabIndex = 0;
+            this.groupBox2.TabStop = false;
+            // 
+            // rdMoto
+            // 
+            this.rdMoto.AutoSize = true;
+            this.rdMoto.Location = new System.Drawing.Point(65, 9);
+            this.rdMoto.Margin = new System.Windows.Forms.Padding(2);
+            this.rdMoto.Name = "rdMoto";
+            this.rdMoto.Size = new System.Drawing.Size(49, 17);
+            this.rdMoto.TabIndex = 1;
+            this.rdMoto.Text = "Moto";
+            this.rdMoto.UseVisualStyleBackColor = true;
+            // 
+            // rdAuto
+            // 
+            this.rdAuto.AutoSize = true;
+            this.rdAuto.Checked = true;
+            this.rdAuto.Location = new System.Drawing.Point(7, 10);
+            this.rdAuto.Margin = new System.Windows.Forms.Padding(2);
+            this.rdAuto.Name = "rdAuto";
+            this.rdAuto.Size = new System.Drawing.Size(47, 17);
+            this.rdAuto.TabIndex = 0;
+            this.rdAuto.TabStop = true;
+            this.rdAuto.Text = "Auto";
+            this.rdAuto.UseVisualStyleBackColor = true;
+            // 
+            // dg_sta
+            // 
+            this.dg_sta.AllowUserToAddRows = false;
+            this.dg_sta.AllowUserToDeleteRows = false;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dg_sta.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle10;
+            this.dg_sta.AutoGenerateColumns = false;
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle11.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dg_sta.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle11;
+            this.dg_sta.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_sta.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.etpstaDataGridViewTextBoxColumn,
+            this.datestaDataGridViewTextBoxColumn,
+            this.nomstaDataGridViewTextBoxColumn});
+            this.dg_sta.DataSource = this.tbstationBindingSource;
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle13.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dg_sta.DefaultCellStyle = dataGridViewCellStyle13;
+            this.dg_sta.Enabled = false;
+            this.dg_sta.Location = new System.Drawing.Point(234, 8);
+            this.dg_sta.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_sta.Name = "dg_sta";
+            this.dg_sta.ReadOnly = true;
+            dataGridViewCellStyle14.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dg_sta.RowsDefaultCellStyle = dataGridViewCellStyle14;
+            this.dg_sta.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dg_sta.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_sta.Size = new System.Drawing.Size(997, 92);
+            this.dg_sta.TabIndex = 10;
+            // 
+            // etpstaDataGridViewTextBoxColumn
+            // 
+            this.etpstaDataGridViewTextBoxColumn.DataPropertyName = "etp_sta";
+            dataGridViewCellStyle12.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.etpstaDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle12;
+            this.etpstaDataGridViewTextBoxColumn.HeaderText = "Etape";
+            this.etpstaDataGridViewTextBoxColumn.Name = "etpstaDataGridViewTextBoxColumn";
+            this.etpstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.etpstaDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // datestaDataGridViewTextBoxColumn
+            // 
+            this.datestaDataGridViewTextBoxColumn.DataPropertyName = "date_sta";
+            this.datestaDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.datestaDataGridViewTextBoxColumn.Name = "datestaDataGridViewTextBoxColumn";
+            this.datestaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.datestaDataGridViewTextBoxColumn.Width = 120;
+            // 
+            // nomstaDataGridViewTextBoxColumn
+            // 
+            this.nomstaDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.nomstaDataGridViewTextBoxColumn.DataPropertyName = "nom_sta";
+            this.nomstaDataGridViewTextBoxColumn.HeaderText = "Nom";
+            this.nomstaDataGridViewTextBoxColumn.Name = "nomstaDataGridViewTextBoxColumn";
+            this.nomstaDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // tbstationBindingSource
+            // 
+            this.tbstationBindingSource.DataMember = "tb_station";
+            this.tbstationBindingSource.DataSource = this.dataSet1;
+            this.tbstationBindingSource.PositionChanged += new System.EventHandler(this.tbstationBindingSource_PositionChanged);
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // dg_presta
+            // 
+            this.dg_presta.AllowUserToAddRows = false;
+            this.dg_presta.AllowUserToDeleteRows = false;
+            this.dg_presta.AutoGenerateColumns = false;
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle15.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dg_presta.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle15;
+            this.dg_presta.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_presta.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.staprDataGridViewTextBoxColumn,
+            this.prodprDataGridViewTextBoxColumn,
+            this.kindprDataGridViewTextBoxColumn,
+            this.uniteprDataGridViewTextBoxColumn,
+            this.puprDataGridViewTextBoxColumn,
+            this.tvaprDataGridViewTextBoxColumn,
+            this.ttcprDataGridViewTextBoxColumn});
+            this.dg_presta.DataSource = this.tbprestaBindingSource;
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle16.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle16.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle16.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle16.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle16.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dg_presta.DefaultCellStyle = dataGridViewCellStyle16;
+            this.dg_presta.Enabled = false;
+            this.dg_presta.Location = new System.Drawing.Point(234, 106);
+            this.dg_presta.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_presta.Name = "dg_presta";
+            this.dg_presta.ReadOnly = true;
+            this.dg_presta.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_presta.Size = new System.Drawing.Size(997, 147);
+            this.dg_presta.TabIndex = 11;
+            // 
+            // staprDataGridViewTextBoxColumn
+            // 
+            this.staprDataGridViewTextBoxColumn.DataPropertyName = "sta_pr";
+            this.staprDataGridViewTextBoxColumn.HeaderText = "sta_pr";
+            this.staprDataGridViewTextBoxColumn.Name = "staprDataGridViewTextBoxColumn";
+            this.staprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // prodprDataGridViewTextBoxColumn
+            // 
+            this.prodprDataGridViewTextBoxColumn.DataPropertyName = "prod_pr";
+            this.prodprDataGridViewTextBoxColumn.HeaderText = "prod_pr";
+            this.prodprDataGridViewTextBoxColumn.Name = "prodprDataGridViewTextBoxColumn";
+            this.prodprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // kindprDataGridViewTextBoxColumn
+            // 
+            this.kindprDataGridViewTextBoxColumn.DataPropertyName = "kind_pr";
+            this.kindprDataGridViewTextBoxColumn.HeaderText = "kind_pr";
+            this.kindprDataGridViewTextBoxColumn.Name = "kindprDataGridViewTextBoxColumn";
+            this.kindprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // uniteprDataGridViewTextBoxColumn
+            // 
+            this.uniteprDataGridViewTextBoxColumn.DataPropertyName = "unite_pr";
+            this.uniteprDataGridViewTextBoxColumn.HeaderText = "unite_pr";
+            this.uniteprDataGridViewTextBoxColumn.Name = "uniteprDataGridViewTextBoxColumn";
+            this.uniteprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // puprDataGridViewTextBoxColumn
+            // 
+            this.puprDataGridViewTextBoxColumn.DataPropertyName = "pu_pr";
+            this.puprDataGridViewTextBoxColumn.HeaderText = "pu_pr";
+            this.puprDataGridViewTextBoxColumn.Name = "puprDataGridViewTextBoxColumn";
+            this.puprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // tvaprDataGridViewTextBoxColumn
+            // 
+            this.tvaprDataGridViewTextBoxColumn.DataPropertyName = "tva_pr";
+            this.tvaprDataGridViewTextBoxColumn.HeaderText = "tva_pr";
+            this.tvaprDataGridViewTextBoxColumn.Name = "tvaprDataGridViewTextBoxColumn";
+            this.tvaprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // ttcprDataGridViewTextBoxColumn
+            // 
+            this.ttcprDataGridViewTextBoxColumn.DataPropertyName = "ttc_pr";
+            this.ttcprDataGridViewTextBoxColumn.HeaderText = "ttc_pr";
+            this.ttcprDataGridViewTextBoxColumn.Name = "ttcprDataGridViewTextBoxColumn";
+            this.ttcprDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // tbprestaBindingSource
+            // 
+            this.tbprestaBindingSource.DataMember = "tb_presta";
+            this.tbprestaBindingSource.DataSource = this.dataSet1;
+            // 
+            // dg_vente
+            // 
+            this.dg_vente.AllowUserToAddRows = false;
+            this.dg_vente.AllowUserToDeleteRows = false;
+            this.dg_vente.AutoGenerateColumns = false;
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle17.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dg_vente.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle17;
+            this.dg_vente.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vente.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.epreuvevtDataGridViewTextBoxColumn,
+            this.stationvtDataGridViewTextBoxColumn,
+            this.vehivtDataGridViewTextBoxColumn,
+            this.prodvtDataGridViewTextBoxColumn,
+            this.datevtDataGridViewTextBoxColumn,
+            this.qttvtDataGridViewTextBoxColumn,
+            this.puvtDataGridViewTextBoxColumn,
+            this.tvavtDataGridViewTextBoxColumn,
+            this.ttcvtDataGridViewTextBoxColumn});
+            this.dg_vente.DataSource = this.tbventeBindingSource;
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle18.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle18.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dg_vente.DefaultCellStyle = dataGridViewCellStyle18;
+            this.dg_vente.Enabled = false;
+            this.dg_vente.Location = new System.Drawing.Point(234, 257);
+            this.dg_vente.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_vente.Name = "dg_vente";
+            this.dg_vente.ReadOnly = true;
+            this.dg_vente.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_vente.Size = new System.Drawing.Size(997, 164);
+            this.dg_vente.TabIndex = 12;
+            // 
+            // epreuvevtDataGridViewTextBoxColumn
+            // 
+            this.epreuvevtDataGridViewTextBoxColumn.DataPropertyName = "epreuve_vt";
+            this.epreuvevtDataGridViewTextBoxColumn.HeaderText = "epreuve_vt";
+            this.epreuvevtDataGridViewTextBoxColumn.Name = "epreuvevtDataGridViewTextBoxColumn";
+            this.epreuvevtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // stationvtDataGridViewTextBoxColumn
+            // 
+            this.stationvtDataGridViewTextBoxColumn.DataPropertyName = "station_vt";
+            this.stationvtDataGridViewTextBoxColumn.HeaderText = "station_vt";
+            this.stationvtDataGridViewTextBoxColumn.Name = "stationvtDataGridViewTextBoxColumn";
+            this.stationvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // vehivtDataGridViewTextBoxColumn
+            // 
+            this.vehivtDataGridViewTextBoxColumn.DataPropertyName = "vehi_vt";
+            this.vehivtDataGridViewTextBoxColumn.HeaderText = "vehi_vt";
+            this.vehivtDataGridViewTextBoxColumn.Name = "vehivtDataGridViewTextBoxColumn";
+            this.vehivtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // prodvtDataGridViewTextBoxColumn
+            // 
+            this.prodvtDataGridViewTextBoxColumn.DataPropertyName = "prod_vt";
+            this.prodvtDataGridViewTextBoxColumn.HeaderText = "prod_vt";
+            this.prodvtDataGridViewTextBoxColumn.Name = "prodvtDataGridViewTextBoxColumn";
+            this.prodvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // datevtDataGridViewTextBoxColumn
+            // 
+            this.datevtDataGridViewTextBoxColumn.DataPropertyName = "date_vt";
+            this.datevtDataGridViewTextBoxColumn.HeaderText = "date_vt";
+            this.datevtDataGridViewTextBoxColumn.Name = "datevtDataGridViewTextBoxColumn";
+            this.datevtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // qttvtDataGridViewTextBoxColumn
+            // 
+            this.qttvtDataGridViewTextBoxColumn.DataPropertyName = "qtt_vt";
+            this.qttvtDataGridViewTextBoxColumn.HeaderText = "qtt_vt";
+            this.qttvtDataGridViewTextBoxColumn.Name = "qttvtDataGridViewTextBoxColumn";
+            this.qttvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // puvtDataGridViewTextBoxColumn
+            // 
+            this.puvtDataGridViewTextBoxColumn.DataPropertyName = "pu_vt";
+            this.puvtDataGridViewTextBoxColumn.HeaderText = "pu_vt";
+            this.puvtDataGridViewTextBoxColumn.Name = "puvtDataGridViewTextBoxColumn";
+            this.puvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // tvavtDataGridViewTextBoxColumn
+            // 
+            this.tvavtDataGridViewTextBoxColumn.DataPropertyName = "tva_vt";
+            this.tvavtDataGridViewTextBoxColumn.HeaderText = "tva_vt";
+            this.tvavtDataGridViewTextBoxColumn.Name = "tvavtDataGridViewTextBoxColumn";
+            this.tvavtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // ttcvtDataGridViewTextBoxColumn
+            // 
+            this.ttcvtDataGridViewTextBoxColumn.DataPropertyName = "ttc_vt";
+            this.ttcvtDataGridViewTextBoxColumn.HeaderText = "ttc_vt";
+            this.ttcvtDataGridViewTextBoxColumn.Name = "ttcvtDataGridViewTextBoxColumn";
+            this.ttcvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // tbventeBindingSource
+            // 
+            this.tbventeBindingSource.DataMember = "tb_vente";
+            this.tbventeBindingSource.DataSource = this.dataSet1;
+            // 
+            // grpServ
+            // 
+            this.grpServ.Controls.Add(this.label7);
+            this.grpServ.Controls.Add(this.label6);
+            this.grpServ.Controls.Add(this.label5);
+            this.grpServ.Controls.Add(this.nuQttFree);
+            this.grpServ.Controls.Add(this.nuPrFree);
+            this.grpServ.Controls.Add(this.txtTotFree);
+            this.grpServ.Controls.Add(this.nuQtt3);
+            this.grpServ.Controls.Add(this.nuPr3);
+            this.grpServ.Controls.Add(this.txtTot3);
+            this.grpServ.Controls.Add(this.nuQtt2);
+            this.grpServ.Controls.Add(this.nuPr2);
+            this.grpServ.Controls.Add(this.txtTot2);
+            this.grpServ.Controls.Add(this.nuQtt1);
+            this.grpServ.Controls.Add(this.txtPrFree);
+            this.grpServ.Controls.Add(this.chkPrFree);
+            this.grpServ.Controls.Add(this.chkPr3);
+            this.grpServ.Controls.Add(this.chkPr2);
+            this.grpServ.Controls.Add(this.chkPr1);
+            this.grpServ.Controls.Add(this.nuPr1);
+            this.grpServ.Controls.Add(this.txtTot1);
+            this.grpServ.Location = new System.Drawing.Point(12, 213);
+            this.grpServ.Name = "grpServ";
+            this.grpServ.Size = new System.Drawing.Size(207, 232);
+            this.grpServ.TabIndex = 4;
+            this.grpServ.TabStop = false;
+            this.grpServ.Text = "Produits/Services";
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(143, 20);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(31, 13);
+            this.label7.TabIndex = 19;
+            this.label7.Text = "Total";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(73, 20);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(24, 13);
+            this.label6.TabIndex = 18;
+            this.label6.Text = "Qtt.";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(8, 20);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(28, 13);
+            this.label5.TabIndex = 17;
+            this.label5.Text = "P.U.";
+            // 
+            // nuQttFree
+            // 
+            this.nuQttFree.DecimalPlaces = 2;
+            this.nuQttFree.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQttFree.Location = new System.Drawing.Point(73, 207);
+            this.nuQttFree.Margin = new System.Windows.Forms.Padding(1);
+            this.nuQttFree.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuQttFree.Name = "nuQttFree";
+            this.nuQttFree.Size = new System.Drawing.Size(63, 20);
+            this.nuQttFree.TabIndex = 15;
+            this.nuQttFree.Value = new decimal(new int[] {
+            1,
+            0,
+            0,
+            0});
+            this.nuQttFree.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuPrFree
+            // 
+            this.nuPrFree.DecimalPlaces = 2;
+            this.nuPrFree.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPrFree.Location = new System.Drawing.Point(5, 207);
+            this.nuPrFree.Margin = new System.Windows.Forms.Padding(1);
+            this.nuPrFree.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuPrFree.Name = "nuPrFree";
+            this.nuPrFree.Size = new System.Drawing.Size(63, 20);
+            this.nuPrFree.TabIndex = 14;
+            this.nuPrFree.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtTotFree
+            // 
+            this.txtTotFree.Location = new System.Drawing.Point(141, 207);
+            this.txtTotFree.Margin = new System.Windows.Forms.Padding(1);
+            this.txtTotFree.Name = "txtTotFree";
+            this.txtTotFree.Size = new System.Drawing.Size(61, 20);
+            this.txtTotFree.TabIndex = 16;
+            this.txtTotFree.Text = "0.00";
+            this.txtTotFree.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // nuQtt3
+            // 
+            this.nuQtt3.DecimalPlaces = 2;
+            this.nuQtt3.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQtt3.Location = new System.Drawing.Point(73, 159);
+            this.nuQtt3.Margin = new System.Windows.Forms.Padding(1);
+            this.nuQtt3.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuQtt3.Name = "nuQtt3";
+            this.nuQtt3.Size = new System.Drawing.Size(63, 20);
+            this.nuQtt3.TabIndex = 10;
+            this.nuQtt3.Value = new decimal(new int[] {
+            1,
+            0,
+            0,
+            0});
+            this.nuQtt3.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuPr3
+            // 
+            this.nuPr3.DecimalPlaces = 2;
+            this.nuPr3.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPr3.Location = new System.Drawing.Point(5, 160);
+            this.nuPr3.Margin = new System.Windows.Forms.Padding(1);
+            this.nuPr3.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuPr3.Name = "nuPr3";
+            this.nuPr3.ReadOnly = true;
+            this.nuPr3.Size = new System.Drawing.Size(63, 20);
+            this.nuPr3.TabIndex = 9;
+            this.nuPr3.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtTot3
+            // 
+            this.txtTot3.Location = new System.Drawing.Point(141, 159);
+            this.txtTot3.Margin = new System.Windows.Forms.Padding(1);
+            this.txtTot3.Name = "txtTot3";
+            this.txtTot3.Size = new System.Drawing.Size(61, 20);
+            this.txtTot3.TabIndex = 11;
+            this.txtTot3.Text = "0.00";
+            this.txtTot3.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // nuQtt2
+            // 
+            this.nuQtt2.DecimalPlaces = 2;
+            this.nuQtt2.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQtt2.Location = new System.Drawing.Point(73, 112);
+            this.nuQtt2.Margin = new System.Windows.Forms.Padding(1);
+            this.nuQtt2.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuQtt2.Name = "nuQtt2";
+            this.nuQtt2.Size = new System.Drawing.Size(63, 20);
+            this.nuQtt2.TabIndex = 6;
+            this.nuQtt2.Value = new decimal(new int[] {
+            1,
+            0,
+            0,
+            0});
+            this.nuQtt2.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuPr2
+            // 
+            this.nuPr2.DecimalPlaces = 2;
+            this.nuPr2.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPr2.Location = new System.Drawing.Point(5, 113);
+            this.nuPr2.Margin = new System.Windows.Forms.Padding(1);
+            this.nuPr2.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuPr2.Name = "nuPr2";
+            this.nuPr2.ReadOnly = true;
+            this.nuPr2.Size = new System.Drawing.Size(63, 20);
+            this.nuPr2.TabIndex = 5;
+            this.nuPr2.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtTot2
+            // 
+            this.txtTot2.Location = new System.Drawing.Point(141, 112);
+            this.txtTot2.Margin = new System.Windows.Forms.Padding(1);
+            this.txtTot2.Name = "txtTot2";
+            this.txtTot2.Size = new System.Drawing.Size(61, 20);
+            this.txtTot2.TabIndex = 7;
+            this.txtTot2.Text = "0.00";
+            this.txtTot2.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // nuQtt1
+            // 
+            this.nuQtt1.DecimalPlaces = 2;
+            this.nuQtt1.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQtt1.Location = new System.Drawing.Point(74, 65);
+            this.nuQtt1.Margin = new System.Windows.Forms.Padding(1);
+            this.nuQtt1.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuQtt1.Name = "nuQtt1";
+            this.nuQtt1.Size = new System.Drawing.Size(63, 20);
+            this.nuQtt1.TabIndex = 2;
+            this.nuQtt1.Value = new decimal(new int[] {
+            1,
+            0,
+            0,
+            0});
+            this.nuQtt1.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtPrFree
+            // 
+            this.txtPrFree.Location = new System.Drawing.Point(31, 183);
+            this.txtPrFree.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.txtPrFree.Name = "txtPrFree";
+            this.txtPrFree.Size = new System.Drawing.Size(169, 20);
+            this.txtPrFree.TabIndex = 13;
+            this.txtPrFree.Text = "...";
+            // 
+            // chkPrFree
+            // 
+            this.chkPrFree.AutoSize = true;
+            this.chkPrFree.Location = new System.Drawing.Point(6, 186);
+            this.chkPrFree.Name = "chkPrFree";
+            this.chkPrFree.Size = new System.Drawing.Size(15, 14);
+            this.chkPrFree.TabIndex = 12;
+            this.chkPrFree.UseVisualStyleBackColor = true;
+            // 
+            // chkPr3
+            // 
+            this.chkPr3.AutoSize = true;
+            this.chkPr3.Location = new System.Drawing.Point(6, 139);
+            this.chkPr3.Name = "chkPr3";
+            this.chkPr3.Size = new System.Drawing.Size(57, 17);
+            this.chkPr3.TabIndex = 8;
+            this.chkPr3.Text = "Prod 3";
+            this.chkPr3.UseVisualStyleBackColor = true;
+            // 
+            // chkPr2
+            // 
+            this.chkPr2.AutoSize = true;
+            this.chkPr2.Location = new System.Drawing.Point(6, 92);
+            this.chkPr2.Name = "chkPr2";
+            this.chkPr2.Size = new System.Drawing.Size(57, 17);
+            this.chkPr2.TabIndex = 4;
+            this.chkPr2.Text = "Prod 2";
+            this.chkPr2.UseVisualStyleBackColor = true;
+            // 
+            // chkPr1
+            // 
+            this.chkPr1.AutoSize = true;
+            this.chkPr1.Location = new System.Drawing.Point(6, 45);
+            this.chkPr1.Name = "chkPr1";
+            this.chkPr1.Size = new System.Drawing.Size(57, 17);
+            this.chkPr1.TabIndex = 0;
+            this.chkPr1.Text = "Prod 1";
+            this.chkPr1.UseVisualStyleBackColor = true;
+            // 
+            // nuPr1
+            // 
+            this.nuPr1.DecimalPlaces = 2;
+            this.nuPr1.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPr1.Location = new System.Drawing.Point(6, 66);
+            this.nuPr1.Margin = new System.Windows.Forms.Padding(1);
+            this.nuPr1.Maximum = new decimal(new int[] {
+            99999,
+            0,
+            0,
+            0});
+            this.nuPr1.Name = "nuPr1";
+            this.nuPr1.ReadOnly = true;
+            this.nuPr1.Size = new System.Drawing.Size(63, 20);
+            this.nuPr1.TabIndex = 1;
+            this.nuPr1.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtTot1
+            // 
+            this.txtTot1.Location = new System.Drawing.Point(142, 65);
+            this.txtTot1.Margin = new System.Windows.Forms.Padding(1);
+            this.txtTot1.Name = "txtTot1";
+            this.txtTot1.Size = new System.Drawing.Size(61, 20);
+            this.txtTot1.TabIndex = 3;
+            this.txtTot1.Text = "0.00";
+            this.txtTot1.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // bt_search
+            // 
+            this.bt_search.Location = new System.Drawing.Point(139, 30);
+            this.bt_search.Name = "bt_search";
+            this.bt_search.Size = new System.Drawing.Size(51, 23);
+            this.bt_search.TabIndex = 2;
+            this.bt_search.Text = "?";
+            this.bt_search.UseVisualStyleBackColor = true;
+            this.bt_search.Click += new System.EventHandler(this.bt_search_Click);
+            // 
+            // tbvehiBindingSource
+            // 
+            this.tbvehiBindingSource.DataMember = "tb_vehi";
+            this.tbvehiBindingSource.DataSource = this.dataSet1;
+            // 
+            // tbventetmpbindingSource
+            // 
+            this.tbventetmpbindingSource.DataMember = "tb_vente";
+            this.tbventetmpbindingSource.DataSource = this.dataSet1;
+            // 
+            // bt_save
+            // 
+            this.bt_save.Enabled = false;
+            this.bt_save.Location = new System.Drawing.Point(10, 485);
+            this.bt_save.Name = "bt_save";
+            this.bt_save.Size = new System.Drawing.Size(194, 23);
+            this.bt_save.TabIndex = 20;
+            this.bt_save.Text = "Sauvegarder";
+            this.bt_save.UseVisualStyleBackColor = true;
+            this.bt_save.Click += new System.EventHandler(this.bt_save_Click);
+            // 
+            // f_saisie
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(233, 520);
+            this.Controls.Add(this.bt_save);
+            this.Controls.Add(this.bt_search);
+            this.Controls.Add(this.grpServ);
+            this.Controls.Add(this.dg_vente);
+            this.Controls.Add(this.dg_presta);
+            this.Controls.Add(this.dg_sta);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.lbl_pilote);
+            this.Controls.Add(this.bt_abort);
+            this.Controls.Add(this.bt_valid);
+            this.Controls.Add(this.grpCarb);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.text_no);
+            this.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.Name = "f_saisie";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Saisie ";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_saisie_FormClosing);
+            this.Load += new System.EventHandler(this.f_saisie_Load);
+            this.grpCarb.ResumeLayout(false);
+            this.grpCarb.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPxCarb)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuVolCarb)).EndInit();
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_sta)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_presta)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprestaBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).EndInit();
+            this.grpServ.ResumeLayout(false);
+            this.grpServ.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQttFree)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPrFree)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt3)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr3)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventetmpbindingSource)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TextBox text_no;
+        private System.Windows.Forms.GroupBox grpCarb;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.RadioButton rdCarb5;
+        private System.Windows.Forms.RadioButton rdCarb4;
+        private System.Windows.Forms.RadioButton rdCarb2;
+        private System.Windows.Forms.RadioButton rdCarb1;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button bt_valid;
+        private System.Windows.Forms.Button bt_abort;
+        private System.Windows.Forms.Label lbl_pilote;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.RadioButton rdMoto;
+        private System.Windows.Forms.RadioButton rdAuto;
+        private System.Windows.Forms.BindingSource tbstationBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.DataGridView dg_sta;
+        private System.Windows.Forms.BindingSource tbprestaBindingSource;
+        private System.Windows.Forms.BindingSource tbventeBindingSource;
+        private System.Windows.Forms.DataGridView dg_presta;
+        private System.Windows.Forms.DataGridView dg_vente;
+        private System.Windows.Forms.DataGridViewTextBoxColumn staprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn prodprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn kindprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn uniteprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn puprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tvaprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ttcprDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn epreuvevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn stationvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn vehivtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn prodvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn qttvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn puvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tvavtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ttcvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn etpstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datestaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nomstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.RadioButton rdCarb6;
+        private System.Windows.Forms.RadioButton rdCarb3;
+        private System.Windows.Forms.NumericUpDown nuPxCarb;
+        private System.Windows.Forms.NumericUpDown nuVolCarb;
+        private System.Windows.Forms.TextBox txtMntCarb;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.GroupBox grpServ;
+        private System.Windows.Forms.NumericUpDown nuQttFree;
+        private System.Windows.Forms.NumericUpDown nuPrFree;
+        private System.Windows.Forms.TextBox txtTotFree;
+        private System.Windows.Forms.NumericUpDown nuQtt3;
+        private System.Windows.Forms.NumericUpDown nuPr3;
+        private System.Windows.Forms.TextBox txtTot3;
+        private System.Windows.Forms.NumericUpDown nuQtt2;
+        private System.Windows.Forms.NumericUpDown nuPr2;
+        private System.Windows.Forms.TextBox txtTot2;
+        private System.Windows.Forms.NumericUpDown nuQtt1;
+        private System.Windows.Forms.TextBox txtPrFree;
+        private System.Windows.Forms.CheckBox chkPrFree;
+        private System.Windows.Forms.CheckBox chkPr3;
+        private System.Windows.Forms.CheckBox chkPr2;
+        private System.Windows.Forms.CheckBox chkPr1;
+        private System.Windows.Forms.NumericUpDown nuPr1;
+        private System.Windows.Forms.TextBox txtTot1;
+        private System.Windows.Forms.Button bt_search;
+        private System.Windows.Forms.BindingSource tbvehiBindingSource;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.BindingSource tbventetmpbindingSource;
+        private System.Windows.Forms.Button bt_save;
+    }
+}

+ 397 - 0
Fuel_ASO/f_saisie.cs

@@ -0,0 +1,397 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml.Linq;
+
+namespace Fuel01
+{
+    public partial class f_saisie : Form
+    {
+        DataSet1.tb_stationDataTable tb_station = new DataSet1.tb_stationDataTable();
+        DataSet1.tb_prestaDataTable tb_presta = new DataSet1.tb_prestaDataTable();
+        DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_venteDataTable tb_ventetmp = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_vehiDataTable tb_vehi = new DataSet1.tb_vehiDataTable();
+        List<DataSet1.tb_prestaRow> Lcarb = new List<DataSet1.tb_prestaRow>();  //Liste carbu hors diesel
+        List<DataSet1.tb_prestaRow> Ldies = new List<DataSet1.tb_prestaRow>();  //Liste diesel
+        List<DataSet1.tb_prestaRow> Lprod = new List<DataSet1.tb_prestaRow>();      //Liste des prestations
+        List<DataSet1.tb_prestaRow> Lmycarb = new List<DataSet1.tb_prestaRow>(); //Liste tous les carbuants
+
+        DataSet1.tb_stationRow myStation = null;
+        DataSet1.tb_vehiRow myVehi = null;
+
+        bool hasChanged = false;
+        bool isDiesel = false;
+        int indiceCarb = -1;
+        string id_vehi="";
+
+        public f_saisie()
+        {
+            InitializeComponent();
+
+        }
+
+        private void f_saisie_Load(object sender, EventArgs e)
+        {
+            Program.subfolder = Program.folder + @"\" + Program.key_ope;
+
+            if (File.Exists(Program.subfolder + @"\vehicule.xml"))
+                tb_vehi.ReadXml(Program.subfolder + @"\vehicule.xml");
+            tbvehiBindingSource.DataSource = tb_vehi;
+
+
+            if (File.Exists(Program.subfolder + @"\station.xml"))
+                tb_station.ReadXml(Program.subfolder + @"\station.xml");
+
+            tbstationBindingSource.DataSource = tb_station;
+            myStation = tb_station.FindBykey_sta(Program.key_sta);
+            DataRowView rowView = null;
+            if (myStation != null)
+            {
+                tbstationBindingSource.MoveFirst();
+                while (true) 
+                {
+                    rowView = tbstationBindingSource.Current as DataRowView;
+                    if (myStation != rowView.Row)
+                        if (tbstationBindingSource.Position == tbstationBindingSource.Count)
+                            break;
+                        else
+                            tbstationBindingSource.MoveNext();
+                    else
+                        break;
+                }
+
+
+
+            }
+
+            if (File.Exists(Program.subfolder + @"\presta_base.xml"))
+                tb_presta.ReadXml(Program.subfolder + @"\presta_base.xml");
+            //tb_presta.AcceptChanges();
+            tbprestaBindingSource.DataSource = tb_presta;
+
+            if (File.Exists(Program.subfolder + @"\vente.xml"))
+                tb_vente.ReadXml(Program.subfolder + @"\vente.xml");
+            tb_vente.AcceptChanges();
+            tbventeBindingSource.DataSource = tb_vente;
+
+            //id_sta = key_sta.Text;
+            tbprestaBindingSource.Filter = " sta_pr='" + Program.key_sta + "'";
+            tbventeBindingSource.Filter = " station_vt='" + Program.key_sta + "'";
+
+            tbprestaBindingSource.Sort = "sta_pr,kind_pr,prod_pr";
+            tbstationBindingSource_PositionChanged(null, null);
+
+            tbventetmpbindingSource.DataSource = tb_ventetmp;
+
+
+            turnBlock(false);
+        }
+
+        private void tbstationBindingSource_PositionChanged(object sender, EventArgs e)
+        {
+            Lprod.Clear();
+            Lcarb.Clear();
+            //id_sta = key_sta.Text;
+            tbprestaBindingSource.Filter = " sta_pr='" + Program.key_sta + "'";
+            tbventeBindingSource.Filter = " station_vt='" + Program.key_sta + "'";
+
+            tbprestaBindingSource.MoveFirst();
+
+            int old_pos = -1;
+            while (tbprestaBindingSource.Position != -1 && tbprestaBindingSource.Position < tbprestaBindingSource.Count && old_pos < tbprestaBindingSource.Position)
+            {
+                dg_presta.Refresh();
+                old_pos = tbprestaBindingSource.Position;
+                DataSet1.tb_prestaRow mydata = null;
+                DataRowView myrow = tbprestaBindingSource.Current as DataRowView;
+                if (myrow != null)
+                {
+                    mydata = myrow.Row as DataSet1.tb_prestaRow;
+
+                    if (mydata["kind_pr"].ToString() == "Carburant")
+                    {
+                        if (mydata["prod_pr"].ToString().ToUpper().Contains("DIESEL"))
+                            Ldies.Add(mydata);
+                        else
+                            Lcarb.Add(mydata);
+                    }
+                    else
+                        Lprod.Add(mydata);
+                }
+                tbprestaBindingSource.MoveNext();
+
+            }
+
+            aff_zero();
+
+          
+
+        }
+
+        private void aff_carb(string curcarb)
+        {
+            rdCarb1.Enabled = rdCarb2.Enabled = rdCarb3.Enabled = rdCarb4.Enabled = rdCarb5.Enabled = rdCarb6.Enabled = false;
+            rdCarb1.Text = rdCarb2.Text = rdCarb3.Text = rdCarb4.Text = rdCarb5.Text = rdCarb6.Text = "";
+
+            nuPxCarb.Value = 0;
+
+            if (isDiesel)
+                Lmycarb = Ldies;
+            else
+                Lmycarb = Lcarb;
+
+            if (Lmycarb.Count >= 1)
+            {
+                rdCarb1.Enabled = true;
+                rdCarb1.Text = Lmycarb[0].prod_pr;
+                rdCarb1.Checked = (curcarb == rdCarb1.Text);
+                if ( rdCarb1.Checked ) rdCarb_CheckedChanged(rdCarb1, null);
+            }
+            if (Lmycarb.Count >= 2)
+            {
+                rdCarb2.Enabled = true;
+                rdCarb2.Text = Lmycarb[1].prod_pr;
+                rdCarb2.Checked = (curcarb == rdCarb2.Text);
+                if (rdCarb2.Checked) rdCarb_CheckedChanged(rdCarb2, null);
+            }
+            if (Lmycarb.Count >= 3)
+            {
+                rdCarb3.Enabled = true;
+                rdCarb3.Text = Lmycarb[2].prod_pr;
+                rdCarb3.Checked = (curcarb == rdCarb3.Text);
+                if (rdCarb3.Checked) rdCarb_CheckedChanged(rdCarb3, null);
+            }
+            if (Lmycarb.Count >= 4)
+            {
+                rdCarb4.Enabled = true;
+                rdCarb4.Text = Lmycarb[3].prod_pr;
+                rdCarb4.Checked = (curcarb == rdCarb4.Text);
+                if (rdCarb4.Checked) rdCarb_CheckedChanged(rdCarb4, null);
+            }
+            if (Lmycarb.Count >=5 )
+            {
+                rdCarb5.Enabled = true;
+                rdCarb5.Text = Lmycarb[4].prod_pr;
+                rdCarb5.Checked = (curcarb == rdCarb5.Text);
+                if (rdCarb5.Checked) rdCarb_CheckedChanged(rdCarb5, null);
+            }
+            if (Lmycarb.Count >= 6)
+            {
+                rdCarb6.Enabled = true;
+                rdCarb6.Text = Lmycarb[5].prod_pr;
+                rdCarb6.Checked = (curcarb == rdCarb6.Text);
+                if (rdCarb6.Checked) rdCarb_CheckedChanged(rdCarb6, null);
+            }
+
+            //if (Lcarb.Count > 0)
+            //{
+            //    rdCarb1.Checked = true;
+            //    rdCarb_CheckedChanged(rdCarb1, null);
+            //}
+        }
+
+        private void aff_prod()
+        {
+
+            if (Lprod.Count >= 1)
+            {
+                chkPr1.Enabled = nuPr1.Enabled = nuQtt1.Enabled = true;
+                chkPr1.Text = Lprod[0].prod_pr;
+                nuPr1.Value = Lprod[0].ttc_pr;
+            }
+            if (Lprod.Count >= 2)
+            {
+                chkPr2.Enabled = nuPr2.Enabled = nuQtt2.Enabled = true;
+                chkPr2.Text = Lprod[1].prod_pr;
+                nuPr2.Value = Lprod[1].ttc_pr;
+            }
+            if (Lprod.Count >= 3)
+            {
+                chkPr3.Enabled = nuPr3.Enabled = nuQtt3.Enabled = true;
+                chkPr3.Text = Lprod[2].prod_pr;
+                nuPr3.Value = Lprod[2].ttc_pr;
+            }
+
+        }
+
+
+        private void nu_ValueChanged(object sender, EventArgs e)
+        {
+            string from = ((NumericUpDown)sender).Name;
+            switch (from)
+            {
+                case "nuPxCarb":
+                case "nuVolCarb":
+                    txtMntCarb.Text = string.Format("{0:0.00}", nuPxCarb.Value * nuVolCarb.Value);
+                    break;
+                case "nuPr1":
+                case "nuQtt1":
+                    txtTot1.Text = string.Format("{0:0.00}", nuPr1.Value * nuQtt1.Value);
+                    break;
+                case "nuPr2":
+                case "nuQtt2":
+                    txtTot2.Text = string.Format("{0:0.00}", nuPr2.Value * nuQtt2.Value);
+                    break;
+                case "nuPr3":
+                case "nuQtt3":
+                    txtTot3.Text = string.Format("{0:0.00}", nuPr3.Value * nuQtt3.Value);
+                    break;
+                case "nuPrFree":
+                case "nuQttFree":
+                    txtTotFree.Text = string.Format("{0:0.00}", nuPrFree.Value * nuQttFree.Value);
+                    break;
+
+            }
+            //txtTotGal.Text = string.Format("{0:0.00}", nuPxCarb.Value * nuVolCarb.Value + nuPr1.Value * nuQtt1.Value + nuPr2.Value * nuQtt2.Value + nuPr3.Value * nuQtt3.Value + nuPrFree.Value * nuQttFree.Value);
+
+
+        }
+
+        private void rdCarb_CheckedChanged(object sender, EventArgs e)
+        {
+            if (((RadioButton)sender).Checked == true)
+            {
+                //on récupère le nom pour l'indice du tableau
+                indiceCarb = Convert.ToInt16(((RadioButton)sender).Name.Substring(6, 1))-1;
+                if (indiceCarb < Lmycarb.Count && indiceCarb >= 0)
+                    nuPxCarb.Value = Lmycarb[indiceCarb].ttc_pr;
+                else
+                    MessageBox.Show("Carburant non disponible pour ce véhicule!");
+            }
+
+        }
+
+        private void bt_abort_Click(object sender, EventArgs e)
+        {
+
+        }
+
+        private void bt_valid_Click(object sender, EventArgs e)
+        {
+            if (nuVolCarb.Value > 0) ajpresta( Lmycarb[indiceCarb],null, nuPxCarb.Value, nuVolCarb.Value, txtMntCarb.Text);
+            if (chkPr1.Checked) ajpresta(Lprod[0], null, nuPr1.Value, nuQtt1.Value, txtTot1.Text);
+            if (chkPr2.Checked) ajpresta(Lprod[1], null, nuPr2.Value, nuQtt2.Value, txtTot2.Text);
+            if (chkPr3.Checked) ajpresta(Lprod[2], null, nuPr3.Value, nuQtt3.Value, txtTot3.Text);
+            if (chkPrFree.Checked)ajpresta( null, txtPrFree.Text, nuPrFree.Value, nuQttFree.Value, txtTotFree.Text);
+            f_ticket ticket = new f_ticket(myStation, myVehi, tb_ventetmp);
+            if (ticket.ShowDialog() == System.Windows.Forms.DialogResult.OK)
+            {
+                foreach (DataSet1.tb_venteRow myVt in tb_ventetmp)
+                {
+                    tb_vente.Addtb_venteRow(myVt.epreuve_vt, myVt.station_vt, myVt.vehi_vt, myVt.prod_vt, myVt.date_vt, myVt.qtt_vt, myVt.pu_vt, myVt.tva_vt,myVt.ht_vt, myVt.ttc_vt);
+                }
+                hasChanged = true;
+                bt_save.Enabled = hasChanged;
+            }
+            tb_ventetmp.Clear();
+            aff_zero();
+
+
+        }
+
+        private void ajpresta(DataSet1.tb_prestaRow prRow, String lib, decimal pu, decimal qtt, string total_str)
+        {
+            //récup du libellé si presta connue
+            decimal tva = 0;
+            decimal totht = 0;
+            decimal total = Convert.ToDecimal( total_str);
+            if (prRow != null)
+            {
+                lib = prRow.prod_pr;
+                tva = prRow.tva_pr;
+                totht = Math.Round(total / (1 - tva / 100),2);                              
+            }
+            DateTime dt=DateTime.Now;
+            tb_ventetmp.Addtb_venteRow(Program.key_ope,Program.key_sta,id_vehi,lib,dt,qtt,pu,tva,totht,total);
+            //DataSet1.tb_venteRow newVente =  DataSet1.tb_venteRow { date_vt = dt, epreuve_vt = Program.key_ope, station_vt = Program.key_sta, vehi_vt = id_vehi, prod_vt = lib, ttc_vt = Convert.ToInt32(total), qtt_vt = qtt, pu_vt = pu };
+        }
+
+
+        private void bt_search_Click(object sender, EventArgs e)
+        {
+
+            UInt32 num;
+            if (UInt32.TryParse(text_no.Text, out num))
+            {
+                myVehi = tb_vehi.FirstOrDefault(v => v.num_vehi == num && v.categ_vehi == (rdAuto.Checked ? "A" : "M"));
+                if (myVehi != null)
+                {
+                    lbl_pilote.Text = myVehi.cond_vehi ;
+                    isDiesel = myVehi.carbu_vehi.ToUpper().Contains("DIESEL");
+                    aff_carb(myVehi.carbu_vehi);
+                    aff_prod();
+                    id_vehi = myVehi.sort1_vehi;
+                }
+                else
+                {
+                    aff_zero();
+                    text_no.Text = num.ToString();
+                    text_no.SelectionStart = 0;
+                    text_no.SelectionLength = text_no.Text.Length;
+                }
+            }
+            turnBlock(myVehi != null);
+
+
+        }
+
+
+        private void turnBlock(bool status)
+        {
+
+            grpCarb.Enabled = status;
+            grpServ.Enabled = status;
+            bt_abort.Enabled = status;
+            bt_valid.Enabled = status;
+        }
+
+
+        private void aff_zero()
+        {
+            chkPr1.Enabled = chkPr2.Enabled = chkPr3.Enabled =  false;
+            chkPr1.Checked = chkPr2.Checked = chkPr3.Checked = chkPrFree.Checked = false;
+            nuPr1.Enabled = nuPr2.Enabled = nuPr3.Enabled = false;
+            nuQtt1.Enabled = nuQtt2.Enabled = nuQtt3.Enabled = false;
+            chkPr1.Text = chkPr2.Text = chkPr3.Text = txtPrFree.Text = "";
+            nuVolCarb.Value= nuPr1.Value = nuPr2.Value = nuPr3.Value = nuPrFree.Value = 0;
+            nuQtt1.Value = nuQtt2.Value = nuQtt3.Value = nuQttFree.Value = 1;
+            text_no.Text = "";
+        }
+
+        private void bt_enreg_Click(object sender, EventArgs e)
+        {
+
+        }
+
+        private void text_no_KeyUp(object sender, KeyEventArgs e)
+       {
+           if (e.KeyValue == 13)
+               bt_search_Click(null, null);
+       }
+
+        private void bt_save_Click(object sender, EventArgs e)
+        {
+            tb_vente.WriteXml(Program.subfolder + @"\vente.xml");
+            hasChanged = false;
+            bt_save.Enabled = hasChanged;
+
+        }
+
+        private void f_saisie_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (hasChanged)
+                bt_save_Click(null, null);
+            e.Cancel = false;
+        }
+
+
+    }
+}

+ 141 - 0
Fuel_ASO/f_saisie.resx

@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbstationBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>37, 18</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>216, 18</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>216, 18</value>
+  </metadata>
+  <metadata name="tbprestaBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>315, 18</value>
+  </metadata>
+  <metadata name="tbventeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>491, 18</value>
+  </metadata>
+  <metadata name="tbvehiBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>663, 18</value>
+  </metadata>
+  <metadata name="tbventetmpbindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>827, 18</value>
+  </metadata>
+</root>

+ 939 - 0
Fuel_ASO/f_saisie2.Designer.cs

@@ -0,0 +1,939 @@
+namespace Fuel01
+{
+    partial class f_saisie2
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            this.text_no = new System.Windows.Forms.TextBox();
+            this.grpCarb = new System.Windows.Forms.GroupBox();
+            this.nuMntCarb = new System.Windows.Forms.NumericUpDown();
+            this.nuVolCarb = new System.Windows.Forms.NumericUpDown();
+            this.label2 = new System.Windows.Forms.Label();
+            this.nuPxCarb = new System.Windows.Forms.NumericUpDown();
+            this.label3 = new System.Windows.Forms.Label();
+            this.rdCarb6 = new System.Windows.Forms.RadioButton();
+            this.rdCarb3 = new System.Windows.Forms.RadioButton();
+            this.label4 = new System.Windows.Forms.Label();
+            this.rdCarb5 = new System.Windows.Forms.RadioButton();
+            this.rdCarb4 = new System.Windows.Forms.RadioButton();
+            this.rdCarb2 = new System.Windows.Forms.RadioButton();
+            this.rdCarb1 = new System.Windows.Forms.RadioButton();
+            this.label1 = new System.Windows.Forms.Label();
+            this.bt_valid = new System.Windows.Forms.Button();
+            this.bt_abort = new System.Windows.Forms.Button();
+            this.lbl_pilote = new System.Windows.Forms.Label();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.rdMoto = new System.Windows.Forms.RadioButton();
+            this.rdAuto = new System.Windows.Forms.RadioButton();
+            this.tbstationBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.tbprestaBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.tbventeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.grpServ = new System.Windows.Forms.GroupBox();
+            this.label9 = new System.Windows.Forms.Label();
+            this.nuTotFree = new System.Windows.Forms.NumericUpDown();
+            this.nuTot3 = new System.Windows.Forms.NumericUpDown();
+            this.nuTot2 = new System.Windows.Forms.NumericUpDown();
+            this.nuTot1 = new System.Windows.Forms.NumericUpDown();
+            this.label8 = new System.Windows.Forms.Label();
+            this.numTvaFree = new System.Windows.Forms.NumericUpDown();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.nuQttFree = new System.Windows.Forms.NumericUpDown();
+            this.nuPrFree = new System.Windows.Forms.NumericUpDown();
+            this.nuQtt3 = new System.Windows.Forms.NumericUpDown();
+            this.nuPr3 = new System.Windows.Forms.NumericUpDown();
+            this.nuQtt2 = new System.Windows.Forms.NumericUpDown();
+            this.nuPr2 = new System.Windows.Forms.NumericUpDown();
+            this.nuQtt1 = new System.Windows.Forms.NumericUpDown();
+            this.txtPrFree = new System.Windows.Forms.TextBox();
+            this.chkPrFree = new System.Windows.Forms.CheckBox();
+            this.chkPr3 = new System.Windows.Forms.CheckBox();
+            this.chkPr2 = new System.Windows.Forms.CheckBox();
+            this.chkPr1 = new System.Windows.Forms.CheckBox();
+            this.nuPr1 = new System.Windows.Forms.NumericUpDown();
+            this.bt_search = new System.Windows.Forms.Button();
+            this.tbvehiBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.tbventetmpbindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.bt_save = new System.Windows.Forms.Button();
+            this.lblstadt = new System.Windows.Forms.Label();
+            this.grpCarb.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuMntCarb)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuVolCarb)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPxCarb)).BeginInit();
+            this.groupBox2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprestaBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).BeginInit();
+            this.grpServ.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTotFree)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTot3)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTot2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTot1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.numTvaFree)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQttFree)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPrFree)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt3)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr3)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventetmpbindingSource)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // text_no
+            // 
+            this.text_no.Location = new System.Drawing.Point(362, 8);
+            this.text_no.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
+            this.text_no.Name = "text_no";
+            this.text_no.Size = new System.Drawing.Size(55, 26);
+            this.text_no.TabIndex = 2;
+            this.text_no.Text = "...";
+            this.text_no.KeyUp += new System.Windows.Forms.KeyEventHandler(this.text_no_KeyUp);
+            this.text_no.Leave += new System.EventHandler(this.bt_search_Click);
+            // 
+            // grpCarb
+            // 
+            this.grpCarb.Controls.Add(this.nuMntCarb);
+            this.grpCarb.Controls.Add(this.nuVolCarb);
+            this.grpCarb.Controls.Add(this.label2);
+            this.grpCarb.Controls.Add(this.nuPxCarb);
+            this.grpCarb.Controls.Add(this.label3);
+            this.grpCarb.Controls.Add(this.rdCarb6);
+            this.grpCarb.Controls.Add(this.rdCarb3);
+            this.grpCarb.Controls.Add(this.label4);
+            this.grpCarb.Controls.Add(this.rdCarb5);
+            this.grpCarb.Controls.Add(this.rdCarb4);
+            this.grpCarb.Controls.Add(this.rdCarb2);
+            this.grpCarb.Controls.Add(this.rdCarb1);
+            this.grpCarb.Location = new System.Drawing.Point(18, 74);
+            this.grpCarb.Margin = new System.Windows.Forms.Padding(2);
+            this.grpCarb.Name = "grpCarb";
+            this.grpCarb.Padding = new System.Windows.Forms.Padding(2);
+            this.grpCarb.Size = new System.Drawing.Size(688, 127);
+            this.grpCarb.TabIndex = 4;
+            this.grpCarb.TabStop = false;
+            this.grpCarb.Text = "Carburants";
+            // 
+            // nuMntCarb
+            // 
+            this.nuMntCarb.DecimalPlaces = 2;
+            this.nuMntCarb.Location = new System.Drawing.Point(257, 80);
+            this.nuMntCarb.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuMntCarb.Name = "nuMntCarb";
+            this.nuMntCarb.Size = new System.Drawing.Size(95, 26);
+            this.nuMntCarb.TabIndex = 2;
+            this.nuMntCarb.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuVolCarb
+            // 
+            this.nuVolCarb.DecimalPlaces = 2;
+            this.nuVolCarb.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuVolCarb.Location = new System.Drawing.Point(426, 80);
+            this.nuVolCarb.Margin = new System.Windows.Forms.Padding(2);
+            this.nuVolCarb.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuVolCarb.Name = "nuVolCarb";
+            this.nuVolCarb.Size = new System.Drawing.Size(106, 26);
+            this.nuVolCarb.TabIndex = 3;
+            this.nuVolCarb.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(388, 81);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(36, 20);
+            this.label2.TabIndex = 15;
+            this.label2.Text = "Vol.";
+            // 
+            // nuPxCarb
+            // 
+            this.nuPxCarb.DecimalPlaces = 3;
+            this.nuPxCarb.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPxCarb.Location = new System.Drawing.Point(70, 80);
+            this.nuPxCarb.Margin = new System.Windows.Forms.Padding(2);
+            this.nuPxCarb.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuPxCarb.Name = "nuPxCarb";
+            this.nuPxCarb.ReadOnly = true;
+            this.nuPxCarb.Size = new System.Drawing.Size(106, 26);
+            this.nuPxCarb.TabIndex = 1;
+            this.nuPxCarb.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(213, 80);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(40, 20);
+            this.label3.TabIndex = 13;
+            this.label3.Text = "Mnt.";
+            // 
+            // rdCarb6
+            // 
+            this.rdCarb6.AutoSize = true;
+            this.rdCarb6.Location = new System.Drawing.Point(572, 37);
+            this.rdCarb6.Margin = new System.Windows.Forms.Padding(2);
+            this.rdCarb6.Name = "rdCarb6";
+            this.rdCarb6.Size = new System.Drawing.Size(39, 24);
+            this.rdCarb6.TabIndex = 5;
+            this.rdCarb6.Text = "...";
+            this.rdCarb6.UseVisualStyleBackColor = true;
+            this.rdCarb6.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb3
+            // 
+            this.rdCarb3.AutoSize = true;
+            this.rdCarb3.Location = new System.Drawing.Point(236, 37);
+            this.rdCarb3.Margin = new System.Windows.Forms.Padding(2);
+            this.rdCarb3.Name = "rdCarb3";
+            this.rdCarb3.Size = new System.Drawing.Size(39, 24);
+            this.rdCarb3.TabIndex = 2;
+            this.rdCarb3.Text = "...";
+            this.rdCarb3.UseVisualStyleBackColor = true;
+            this.rdCarb3.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(9, 80);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(55, 20);
+            this.label4.TabIndex = 7;
+            this.label4.Text = "Prix  L.";
+            // 
+            // rdCarb5
+            // 
+            this.rdCarb5.AutoSize = true;
+            this.rdCarb5.Location = new System.Drawing.Point(460, 37);
+            this.rdCarb5.Margin = new System.Windows.Forms.Padding(2);
+            this.rdCarb5.Name = "rdCarb5";
+            this.rdCarb5.Size = new System.Drawing.Size(39, 24);
+            this.rdCarb5.TabIndex = 4;
+            this.rdCarb5.Text = "...";
+            this.rdCarb5.UseVisualStyleBackColor = true;
+            this.rdCarb5.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb4
+            // 
+            this.rdCarb4.AutoSize = true;
+            this.rdCarb4.Location = new System.Drawing.Point(348, 37);
+            this.rdCarb4.Margin = new System.Windows.Forms.Padding(2);
+            this.rdCarb4.Name = "rdCarb4";
+            this.rdCarb4.Size = new System.Drawing.Size(39, 24);
+            this.rdCarb4.TabIndex = 3;
+            this.rdCarb4.Text = "...";
+            this.rdCarb4.UseVisualStyleBackColor = true;
+            this.rdCarb4.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb2
+            // 
+            this.rdCarb2.AutoSize = true;
+            this.rdCarb2.Location = new System.Drawing.Point(124, 37);
+            this.rdCarb2.Margin = new System.Windows.Forms.Padding(2);
+            this.rdCarb2.Name = "rdCarb2";
+            this.rdCarb2.Size = new System.Drawing.Size(39, 24);
+            this.rdCarb2.TabIndex = 1;
+            this.rdCarb2.Text = "...";
+            this.rdCarb2.UseVisualStyleBackColor = true;
+            this.rdCarb2.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // rdCarb1
+            // 
+            this.rdCarb1.AutoSize = true;
+            this.rdCarb1.Checked = true;
+            this.rdCarb1.Location = new System.Drawing.Point(12, 37);
+            this.rdCarb1.Margin = new System.Windows.Forms.Padding(2);
+            this.rdCarb1.Name = "rdCarb1";
+            this.rdCarb1.Size = new System.Drawing.Size(39, 24);
+            this.rdCarb1.TabIndex = 0;
+            this.rdCarb1.TabStop = true;
+            this.rdCarb1.Text = "...";
+            this.rdCarb1.UseVisualStyleBackColor = true;
+            this.rdCarb1.CheckedChanged += new System.EventHandler(this.rdCarb_CheckedChanged);
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(239, 13);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(108, 20);
+            this.label1.TabIndex = 1;
+            this.label1.Text = "N° du véhicule";
+            // 
+            // bt_valid
+            // 
+            this.bt_valid.Location = new System.Drawing.Point(21, 540);
+            this.bt_valid.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_valid.Name = "bt_valid";
+            this.bt_valid.Size = new System.Drawing.Size(106, 38);
+            this.bt_valid.TabIndex = 6;
+            this.bt_valid.Text = "Ajouter";
+            this.bt_valid.UseVisualStyleBackColor = true;
+            this.bt_valid.Click += new System.EventHandler(this.bt_valid_Click);
+            // 
+            // bt_abort
+            // 
+            this.bt_abort.Location = new System.Drawing.Point(196, 540);
+            this.bt_abort.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_abort.Name = "bt_abort";
+            this.bt_abort.Size = new System.Drawing.Size(116, 38);
+            this.bt_abort.TabIndex = 7;
+            this.bt_abort.Text = "Abandonner";
+            this.bt_abort.UseVisualStyleBackColor = true;
+            this.bt_abort.Click += new System.EventHandler(this.bt_abort_Click);
+            // 
+            // lbl_pilote
+            // 
+            this.lbl_pilote.Location = new System.Drawing.Point(18, 42);
+            this.lbl_pilote.Name = "lbl_pilote";
+            this.lbl_pilote.Size = new System.Drawing.Size(208, 20);
+            this.lbl_pilote.TabIndex = 19;
+            this.lbl_pilote.Text = ".....................................";
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.Controls.Add(this.rdMoto);
+            this.groupBox2.Controls.Add(this.rdAuto);
+            this.groupBox2.Location = new System.Drawing.Point(21, -2);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(192, 42);
+            this.groupBox2.TabIndex = 0;
+            this.groupBox2.TabStop = false;
+            // 
+            // rdMoto
+            // 
+            this.rdMoto.AutoSize = true;
+            this.rdMoto.Location = new System.Drawing.Point(98, 14);
+            this.rdMoto.Name = "rdMoto";
+            this.rdMoto.Size = new System.Drawing.Size(63, 24);
+            this.rdMoto.TabIndex = 1;
+            this.rdMoto.Text = "Moto";
+            this.rdMoto.UseVisualStyleBackColor = true;
+            // 
+            // rdAuto
+            // 
+            this.rdAuto.AutoSize = true;
+            this.rdAuto.Checked = true;
+            this.rdAuto.Location = new System.Drawing.Point(10, 15);
+            this.rdAuto.Name = "rdAuto";
+            this.rdAuto.Size = new System.Drawing.Size(61, 24);
+            this.rdAuto.TabIndex = 1;
+            this.rdAuto.TabStop = true;
+            this.rdAuto.Text = "Auto";
+            this.rdAuto.UseVisualStyleBackColor = true;
+            // 
+            // tbstationBindingSource
+            // 
+            this.tbstationBindingSource.DataMember = "tb_station";
+            this.tbstationBindingSource.DataSource = this.dataSet1;
+            this.tbstationBindingSource.PositionChanged += new System.EventHandler(this.tbstationBindingSource_PositionChanged);
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // tbprestaBindingSource
+            // 
+            this.tbprestaBindingSource.DataMember = "tb_presta";
+            this.tbprestaBindingSource.DataSource = this.dataSet1;
+            // 
+            // tbventeBindingSource
+            // 
+            this.tbventeBindingSource.DataMember = "tb_vente";
+            this.tbventeBindingSource.DataSource = this.dataSet1;
+            // 
+            // grpServ
+            // 
+            this.grpServ.Controls.Add(this.label9);
+            this.grpServ.Controls.Add(this.nuTotFree);
+            this.grpServ.Controls.Add(this.nuTot3);
+            this.grpServ.Controls.Add(this.nuTot2);
+            this.grpServ.Controls.Add(this.nuTot1);
+            this.grpServ.Controls.Add(this.label8);
+            this.grpServ.Controls.Add(this.numTvaFree);
+            this.grpServ.Controls.Add(this.label7);
+            this.grpServ.Controls.Add(this.label6);
+            this.grpServ.Controls.Add(this.label5);
+            this.grpServ.Controls.Add(this.nuQttFree);
+            this.grpServ.Controls.Add(this.nuPrFree);
+            this.grpServ.Controls.Add(this.nuQtt3);
+            this.grpServ.Controls.Add(this.nuPr3);
+            this.grpServ.Controls.Add(this.nuQtt2);
+            this.grpServ.Controls.Add(this.nuPr2);
+            this.grpServ.Controls.Add(this.nuQtt1);
+            this.grpServ.Controls.Add(this.txtPrFree);
+            this.grpServ.Controls.Add(this.chkPrFree);
+            this.grpServ.Controls.Add(this.chkPr3);
+            this.grpServ.Controls.Add(this.chkPr2);
+            this.grpServ.Controls.Add(this.chkPr1);
+            this.grpServ.Controls.Add(this.nuPr1);
+            this.grpServ.Location = new System.Drawing.Point(18, 208);
+            this.grpServ.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.grpServ.Name = "grpServ";
+            this.grpServ.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.grpServ.Size = new System.Drawing.Size(740, 325);
+            this.grpServ.TabIndex = 5;
+            this.grpServ.TabStop = false;
+            this.grpServ.Text = "Produits/Services";
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.Location = new System.Drawing.Point(46, 239);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(233, 20);
+            this.label9.TabIndex = 22;
+            this.label9.Text = "Prix TTC produit supplémentaire";
+            // 
+            // nuTotFree
+            // 
+            this.nuTotFree.DecimalPlaces = 2;
+            this.nuTotFree.Enabled = false;
+            this.nuTotFree.Location = new System.Drawing.Point(50, 274);
+            this.nuTotFree.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuTotFree.Name = "nuTotFree";
+            this.nuTotFree.Size = new System.Drawing.Size(95, 26);
+            this.nuTotFree.TabIndex = 10;
+            this.nuTotFree.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuTot3
+            // 
+            this.nuTot3.DecimalPlaces = 2;
+            this.nuTot3.Location = new System.Drawing.Point(257, 147);
+            this.nuTot3.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuTot3.Name = "nuTot3";
+            this.nuTot3.Size = new System.Drawing.Size(95, 26);
+            this.nuTot3.TabIndex = 7;
+            this.nuTot3.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuTot2
+            // 
+            this.nuTot2.DecimalPlaces = 2;
+            this.nuTot2.Location = new System.Drawing.Point(257, 104);
+            this.nuTot2.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuTot2.Name = "nuTot2";
+            this.nuTot2.Size = new System.Drawing.Size(95, 26);
+            this.nuTot2.TabIndex = 4;
+            this.nuTot2.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuTot1
+            // 
+            this.nuTot1.DecimalPlaces = 2;
+            this.nuTot1.Location = new System.Drawing.Point(258, 59);
+            this.nuTot1.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuTot1.Name = "nuTot1";
+            this.nuTot1.Size = new System.Drawing.Size(95, 26);
+            this.nuTot1.TabIndex = 1;
+            this.nuTot1.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(430, 255);
+            this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(90, 20);
+            this.label8.TabIndex = 21;
+            this.label8.Text = "% Taux Tva";
+            this.label8.Visible = false;
+            // 
+            // numTvaFree
+            // 
+            this.numTvaFree.DecimalPlaces = 2;
+            this.numTvaFree.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.numTvaFree.Location = new System.Drawing.Point(426, 277);
+            this.numTvaFree.Margin = new System.Windows.Forms.Padding(2);
+            this.numTvaFree.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.numTvaFree.Name = "numTvaFree";
+            this.numTvaFree.Size = new System.Drawing.Size(94, 26);
+            this.numTvaFree.TabIndex = 13;
+            this.numTvaFree.Value = new decimal(new int[] {
+            20,
+            0,
+            0,
+            0});
+            this.numTvaFree.Visible = false;
+            this.numTvaFree.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(255, 31);
+            this.label7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(44, 20);
+            this.label7.TabIndex = 19;
+            this.label7.Text = "Total";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(404, 31);
+            this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(35, 20);
+            this.label6.TabIndex = 18;
+            this.label6.Text = "Qtt.";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(140, 31);
+            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(61, 20);
+            this.label5.TabIndex = 17;
+            this.label5.Text = "P.U. ttc";
+            // 
+            // nuQttFree
+            // 
+            this.nuQttFree.DecimalPlaces = 2;
+            this.nuQttFree.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQttFree.Location = new System.Drawing.Point(181, 277);
+            this.nuQttFree.Margin = new System.Windows.Forms.Padding(2);
+            this.nuQttFree.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuQttFree.Name = "nuQttFree";
+            this.nuQttFree.Size = new System.Drawing.Size(94, 26);
+            this.nuQttFree.TabIndex = 11;
+            this.nuQttFree.Visible = false;
+            this.nuQttFree.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuPrFree
+            // 
+            this.nuPrFree.DecimalPlaces = 2;
+            this.nuPrFree.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPrFree.Location = new System.Drawing.Point(305, 277);
+            this.nuPrFree.Margin = new System.Windows.Forms.Padding(2);
+            this.nuPrFree.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuPrFree.Name = "nuPrFree";
+            this.nuPrFree.Size = new System.Drawing.Size(94, 26);
+            this.nuPrFree.TabIndex = 12;
+            this.nuPrFree.Visible = false;
+            this.nuPrFree.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuQtt3
+            // 
+            this.nuQtt3.DecimalPlaces = 2;
+            this.nuQtt3.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQtt3.Location = new System.Drawing.Point(392, 147);
+            this.nuQtt3.Margin = new System.Windows.Forms.Padding(2);
+            this.nuQtt3.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuQtt3.Name = "nuQtt3";
+            this.nuQtt3.Size = new System.Drawing.Size(94, 26);
+            this.nuQtt3.TabIndex = 8;
+            this.nuQtt3.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuPr3
+            // 
+            this.nuPr3.DecimalPlaces = 2;
+            this.nuPr3.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPr3.Location = new System.Drawing.Point(124, 147);
+            this.nuPr3.Margin = new System.Windows.Forms.Padding(2);
+            this.nuPr3.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuPr3.Name = "nuPr3";
+            this.nuPr3.ReadOnly = true;
+            this.nuPr3.Size = new System.Drawing.Size(94, 26);
+            this.nuPr3.TabIndex = 6;
+            this.nuPr3.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuQtt2
+            // 
+            this.nuQtt2.DecimalPlaces = 2;
+            this.nuQtt2.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQtt2.Location = new System.Drawing.Point(392, 104);
+            this.nuQtt2.Margin = new System.Windows.Forms.Padding(2);
+            this.nuQtt2.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuQtt2.Name = "nuQtt2";
+            this.nuQtt2.Size = new System.Drawing.Size(94, 26);
+            this.nuQtt2.TabIndex = 5;
+            this.nuQtt2.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuPr2
+            // 
+            this.nuPr2.DecimalPlaces = 2;
+            this.nuPr2.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPr2.Location = new System.Drawing.Point(124, 104);
+            this.nuPr2.Margin = new System.Windows.Forms.Padding(2);
+            this.nuPr2.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuPr2.Name = "nuPr2";
+            this.nuPr2.ReadOnly = true;
+            this.nuPr2.Size = new System.Drawing.Size(94, 26);
+            this.nuPr2.TabIndex = 3;
+            this.nuPr2.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // nuQtt1
+            // 
+            this.nuQtt1.DecimalPlaces = 2;
+            this.nuQtt1.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuQtt1.Location = new System.Drawing.Point(392, 59);
+            this.nuQtt1.Margin = new System.Windows.Forms.Padding(2);
+            this.nuQtt1.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuQtt1.Name = "nuQtt1";
+            this.nuQtt1.Size = new System.Drawing.Size(94, 26);
+            this.nuQtt1.TabIndex = 2;
+            this.nuQtt1.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // txtPrFree
+            // 
+            this.txtPrFree.Location = new System.Drawing.Point(50, 199);
+            this.txtPrFree.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
+            this.txtPrFree.Name = "txtPrFree";
+            this.txtPrFree.Size = new System.Drawing.Size(252, 26);
+            this.txtPrFree.TabIndex = 9;
+            this.txtPrFree.Text = "...";
+            // 
+            // chkPrFree
+            // 
+            this.chkPrFree.AutoSize = true;
+            this.chkPrFree.Location = new System.Drawing.Point(12, 206);
+            this.chkPrFree.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.chkPrFree.Name = "chkPrFree";
+            this.chkPrFree.Size = new System.Drawing.Size(15, 14);
+            this.chkPrFree.TabIndex = 12;
+            this.chkPrFree.UseVisualStyleBackColor = true;
+            this.chkPrFree.CheckStateChanged += new System.EventHandler(this.chkPrFree_CheckStateChanged);
+            // 
+            // chkPr3
+            // 
+            this.chkPr3.AutoSize = true;
+            this.chkPr3.Location = new System.Drawing.Point(12, 147);
+            this.chkPr3.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.chkPr3.Name = "chkPr3";
+            this.chkPr3.Size = new System.Drawing.Size(74, 24);
+            this.chkPr3.TabIndex = 8;
+            this.chkPr3.Text = "Prod 3";
+            this.chkPr3.UseVisualStyleBackColor = true;
+            this.chkPr3.CheckedChanged += new System.EventHandler(this.chkProduit_CheckedChanged);
+            // 
+            // chkPr2
+            // 
+            this.chkPr2.AutoSize = true;
+            this.chkPr2.Location = new System.Drawing.Point(12, 104);
+            this.chkPr2.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.chkPr2.Name = "chkPr2";
+            this.chkPr2.Size = new System.Drawing.Size(74, 24);
+            this.chkPr2.TabIndex = 4;
+            this.chkPr2.Text = "Prod 2";
+            this.chkPr2.UseVisualStyleBackColor = true;
+            this.chkPr2.CheckedChanged += new System.EventHandler(this.chkProduit_CheckedChanged);
+            // 
+            // chkPr1
+            // 
+            this.chkPr1.AutoSize = true;
+            this.chkPr1.Location = new System.Drawing.Point(12, 59);
+            this.chkPr1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.chkPr1.Name = "chkPr1";
+            this.chkPr1.Size = new System.Drawing.Size(74, 24);
+            this.chkPr1.TabIndex = 0;
+            this.chkPr1.Text = "Prod 1";
+            this.chkPr1.UseVisualStyleBackColor = true;
+            this.chkPr1.CheckedChanged += new System.EventHandler(this.chkProduit_CheckedChanged);
+            // 
+            // nuPr1
+            // 
+            this.nuPr1.DecimalPlaces = 2;
+            this.nuPr1.Increment = new decimal(new int[] {
+            1,
+            0,
+            0,
+            131072});
+            this.nuPr1.Location = new System.Drawing.Point(124, 59);
+            this.nuPr1.Margin = new System.Windows.Forms.Padding(2);
+            this.nuPr1.Maximum = new decimal(new int[] {
+            32768,
+            0,
+            0,
+            0});
+            this.nuPr1.Name = "nuPr1";
+            this.nuPr1.ReadOnly = true;
+            this.nuPr1.Size = new System.Drawing.Size(94, 26);
+            this.nuPr1.TabIndex = 0;
+            this.nuPr1.ValueChanged += new System.EventHandler(this.nu_ValueChanged);
+            // 
+            // bt_search
+            // 
+            this.bt_search.Location = new System.Drawing.Point(429, 5);
+            this.bt_search.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_search.Name = "bt_search";
+            this.bt_search.Size = new System.Drawing.Size(76, 35);
+            this.bt_search.TabIndex = 3;
+            this.bt_search.Text = "?";
+            this.bt_search.UseVisualStyleBackColor = true;
+            this.bt_search.Click += new System.EventHandler(this.bt_search_Click);
+            // 
+            // tbvehiBindingSource
+            // 
+            this.tbvehiBindingSource.DataMember = "tb_vehi";
+            this.tbvehiBindingSource.DataSource = this.dataSet1;
+            // 
+            // tbventetmpbindingSource
+            // 
+            this.tbventetmpbindingSource.DataMember = "tb_vente";
+            this.tbventetmpbindingSource.DataSource = this.dataSet1;
+            // 
+            // bt_save
+            // 
+            this.bt_save.Enabled = false;
+            this.bt_save.Location = new System.Drawing.Point(465, 543);
+            this.bt_save.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.bt_save.Name = "bt_save";
+            this.bt_save.Size = new System.Drawing.Size(291, 35);
+            this.bt_save.TabIndex = 8;
+            this.bt_save.Text = "Sauvegarder";
+            this.bt_save.UseVisualStyleBackColor = true;
+            this.bt_save.Click += new System.EventHandler(this.bt_save_Click);
+            // 
+            // lblstadt
+            // 
+            this.lblstadt.AutoSize = true;
+            this.lblstadt.Location = new System.Drawing.Point(521, 12);
+            this.lblstadt.Name = "lblstadt";
+            this.lblstadt.Size = new System.Drawing.Size(21, 20);
+            this.lblstadt.TabIndex = 21;
+            this.lblstadt.Text = "...";
+            // 
+            // f_saisie2
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(780, 589);
+            this.Controls.Add(this.lblstadt);
+            this.Controls.Add(this.bt_save);
+            this.Controls.Add(this.bt_search);
+            this.Controls.Add(this.grpServ);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.lbl_pilote);
+            this.Controls.Add(this.bt_abort);
+            this.Controls.Add(this.bt_valid);
+            this.Controls.Add(this.grpCarb);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.text_no);
+            this.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
+            this.Name = "f_saisie2";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Saisie ";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_saisie_FormClosing);
+            this.Load += new System.EventHandler(this.f_saisie_Load);
+            this.grpCarb.ResumeLayout(false);
+            this.grpCarb.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuMntCarb)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuVolCarb)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPxCarb)).EndInit();
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbprestaBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).EndInit();
+            this.grpServ.ResumeLayout(false);
+            this.grpServ.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTotFree)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTot3)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTot2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuTot1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.numTvaFree)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQttFree)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPrFree)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt3)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr3)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuQtt1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nuPr1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventetmpbindingSource)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TextBox text_no;
+        private System.Windows.Forms.GroupBox grpCarb;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.RadioButton rdCarb5;
+        private System.Windows.Forms.RadioButton rdCarb4;
+        private System.Windows.Forms.RadioButton rdCarb2;
+        private System.Windows.Forms.RadioButton rdCarb1;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button bt_valid;
+        private System.Windows.Forms.Button bt_abort;
+        private System.Windows.Forms.Label lbl_pilote;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.RadioButton rdMoto;
+        private System.Windows.Forms.RadioButton rdAuto;
+        private System.Windows.Forms.BindingSource tbstationBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.BindingSource tbprestaBindingSource;
+        private System.Windows.Forms.BindingSource tbventeBindingSource;
+        private System.Windows.Forms.RadioButton rdCarb6;
+        private System.Windows.Forms.RadioButton rdCarb3;
+        private System.Windows.Forms.NumericUpDown nuPxCarb;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.GroupBox grpServ;
+        private System.Windows.Forms.NumericUpDown nuQttFree;
+        private System.Windows.Forms.NumericUpDown nuPrFree;
+        private System.Windows.Forms.NumericUpDown nuQtt3;
+        private System.Windows.Forms.NumericUpDown nuPr3;
+        private System.Windows.Forms.NumericUpDown nuQtt2;
+        private System.Windows.Forms.NumericUpDown nuPr2;
+        private System.Windows.Forms.NumericUpDown nuQtt1;
+        private System.Windows.Forms.TextBox txtPrFree;
+        private System.Windows.Forms.CheckBox chkPrFree;
+        private System.Windows.Forms.CheckBox chkPr3;
+        private System.Windows.Forms.CheckBox chkPr2;
+        private System.Windows.Forms.CheckBox chkPr1;
+        private System.Windows.Forms.NumericUpDown nuPr1;
+        private System.Windows.Forms.Button bt_search;
+        private System.Windows.Forms.BindingSource tbvehiBindingSource;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.BindingSource tbventetmpbindingSource;
+        private System.Windows.Forms.Button bt_save;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.NumericUpDown numTvaFree;
+        private System.Windows.Forms.Label lblstadt;
+        private System.Windows.Forms.NumericUpDown nuVolCarb;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.NumericUpDown nuMntCarb;
+        private System.Windows.Forms.NumericUpDown nuTotFree;
+        private System.Windows.Forms.NumericUpDown nuTot3;
+        private System.Windows.Forms.NumericUpDown nuTot2;
+        private System.Windows.Forms.NumericUpDown nuTot1;
+        private System.Windows.Forms.Label label9;
+    }
+}

+ 480 - 0
Fuel_ASO/f_saisie2.cs

@@ -0,0 +1,480 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml.Linq;
+
+namespace Fuel01
+{
+    public partial class f_saisie2 : Form
+    {
+        DataSet1.tb_stationDataTable tb_station = new DataSet1.tb_stationDataTable();
+        DataSet1.tb_prestaDataTable tb_presta = new DataSet1.tb_prestaDataTable();
+        DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_venteDataTable tb_ventetmp = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_vehiDataTable tb_vehi = new DataSet1.tb_vehiDataTable();
+        List<DataSet1.tb_prestaRow> Lcarb = new List<DataSet1.tb_prestaRow>();  //Liste carbu hors diesel
+        List<DataSet1.tb_prestaRow> Ldies = new List<DataSet1.tb_prestaRow>();  //Liste diesel
+        List<DataSet1.tb_prestaRow> Lprod = new List<DataSet1.tb_prestaRow>();      //Liste des prestations
+        List<DataSet1.tb_prestaRow> Lmycarb = new List<DataSet1.tb_prestaRow>(); //Liste tous les carbuants
+
+        DataSet1.tb_stationRow myStation = null;
+        DataSet1.tb_vehiRow myVehi = null;
+
+        int Retry = 0;
+        bool hasChanged = false;
+        bool isDiesel = false;
+        int indiceCarb = -1;
+        string id_vehi="";
+
+        public f_saisie2()
+        {
+            InitializeComponent();
+
+        }
+
+        private void f_saisie_Load(object sender, EventArgs e)
+        {
+            Program.subfolder = Program.folder + @"\" + Program.key_ope;
+
+            if (File.Exists(Program.subfolder + @"\vehicule.json"))
+                tb_vehi = DbUtil.LoadFromJson<DataSet1.tb_vehiDataTable>(Program.subfolder + @"\station.json", tb_vehi); 
+            tbvehiBindingSource.DataSource = tb_vehi;
+
+
+            if (File.Exists(Program.subfolder + @"\station.json"))
+                tb_station = DbUtil.LoadFromJson<DataSet1.tb_stationDataTable>(Program.subfolder + @"\station.json", tb_station);
+
+            tbstationBindingSource.DataSource = tb_station;
+            myStation = tb_station.FindBykey_sta(Program.key_sta);
+            DataRowView rowView = null;
+            if (myStation != null)
+            {
+                tbstationBindingSource.MoveFirst();
+                while (true) 
+                {
+                    rowView = tbstationBindingSource.Current as DataRowView;
+                    if (myStation != rowView.Row)
+                        if (tbstationBindingSource.Position == tbstationBindingSource.Count)
+                            break;
+                        else
+                            tbstationBindingSource.MoveNext();
+                    else
+                        break;
+                }
+
+
+
+            }
+
+            if (File.Exists(Program.subfolder + @"\presta_base.json"))
+                tb_presta = DbUtil.LoadFromJson<DataSet1.tb_prestaDataTable>(Program.subfolder + @"\presta_base.json", tb_presta);
+
+            tbprestaBindingSource.DataSource = tb_presta;
+
+            if (File.Exists(Program.subfolder + @"\vente.json"))
+                tb_vente = DbUtil.LoadFromJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente.json", tb_vente);
+            
+            tb_vente.AcceptChanges();
+            tbventeBindingSource.DataSource = tb_vente;
+
+            tbprestaBindingSource.Filter = " sta_pr='" + Program.key_sta + "'";
+            tbventeBindingSource.Filter = " station_vt='" + Program.key_sta + "'";
+
+            tbprestaBindingSource.Sort = "sta_pr,kind_pr,prod_pr";
+            tbstationBindingSource_PositionChanged(null, null);
+
+            tbventetmpbindingSource.DataSource = tb_ventetmp;
+
+            lblstadt.Text= myStation.date_sta.ToString("dd/MM/yy") + " " + myStation.nom_sta;
+
+            turnBlock(false);
+        }
+
+        private void tbstationBindingSource_PositionChanged(object sender, EventArgs e)
+        {
+            Lprod.Clear();
+            Lcarb.Clear();
+            //id_sta = key_sta.Text;
+            tbprestaBindingSource.Filter = " sta_pr='" + Program.key_sta + "'";
+            tbventeBindingSource.Filter = " station_vt='" + Program.key_sta + "'";
+
+            tbprestaBindingSource.MoveFirst();
+
+            int old_pos = -1;
+            while (tbprestaBindingSource.Position != -1 && tbprestaBindingSource.Position < tbprestaBindingSource.Count && old_pos < tbprestaBindingSource.Position)
+            {
+                old_pos = tbprestaBindingSource.Position;
+                DataSet1.tb_prestaRow mydata = null;
+                DataRowView myrow = tbprestaBindingSource.Current as DataRowView;
+                if (myrow != null)
+                {
+                    mydata = myrow.Row as DataSet1.tb_prestaRow;
+
+                    if (mydata["kind_pr"].ToString() == "Carburant")
+                    {
+                        if (mydata["prod_pr"].ToString().ToUpper().Contains("DIESEL"))
+                            Ldies.Add(mydata);
+                        else
+                            Lcarb.Add(mydata);
+                    }
+                    else
+                        Lprod.Add(mydata);
+                }
+                tbprestaBindingSource.MoveNext();
+
+            }
+
+            aff_zero();
+
+          
+
+        }
+
+        private void aff_carb(string curcarb)
+        {
+            rdCarb1.Enabled = rdCarb2.Enabled = rdCarb3.Enabled = rdCarb4.Enabled = rdCarb5.Enabled = rdCarb6.Enabled = false;
+            rdCarb1.Text = rdCarb2.Text = rdCarb3.Text = rdCarb4.Text = rdCarb5.Text = rdCarb6.Text = "";
+
+            nuPxCarb.Value = 0;
+
+            if (isDiesel)
+                Lmycarb = Ldies;
+            else
+                Lmycarb = Lcarb;
+
+            if (Lmycarb.Count >= 1)
+            {
+                rdCarb1.Enabled = true;
+                rdCarb1.Text = Lmycarb[0].prod_pr;
+                rdCarb1.Checked = (curcarb == rdCarb1.Text);
+                if ( rdCarb1.Checked ) rdCarb_CheckedChanged(rdCarb1, null);
+            }
+            if (Lmycarb.Count >= 2)
+            {
+                rdCarb2.Enabled = true;
+                rdCarb2.Text = Lmycarb[1].prod_pr;
+                rdCarb2.Checked = (curcarb == rdCarb2.Text);
+                if (rdCarb2.Checked) rdCarb_CheckedChanged(rdCarb2, null);
+            }
+            if (Lmycarb.Count >= 3)
+            {
+                rdCarb3.Enabled = true;
+                rdCarb3.Text = Lmycarb[2].prod_pr;
+                rdCarb3.Checked = (curcarb == rdCarb3.Text);
+                if (rdCarb3.Checked) rdCarb_CheckedChanged(rdCarb3, null);
+            }
+            if (Lmycarb.Count >= 4)
+            {
+                rdCarb4.Enabled = true;
+                rdCarb4.Text = Lmycarb[3].prod_pr;
+                rdCarb4.Checked = (curcarb == rdCarb4.Text);
+                if (rdCarb4.Checked) rdCarb_CheckedChanged(rdCarb4, null);
+            }
+            if (Lmycarb.Count >=5 )
+            {
+                rdCarb5.Enabled = true;
+                rdCarb5.Text = Lmycarb[4].prod_pr;
+                rdCarb5.Checked = (curcarb == rdCarb5.Text);
+                if (rdCarb5.Checked) rdCarb_CheckedChanged(rdCarb5, null);
+            }
+            if (Lmycarb.Count >= 6)
+            {
+                rdCarb6.Enabled = true;
+                rdCarb6.Text = Lmycarb[5].prod_pr;
+                rdCarb6.Checked = (curcarb == rdCarb6.Text);
+                if (rdCarb6.Checked) rdCarb_CheckedChanged(rdCarb6, null);
+            }
+
+            //if (Lcarb.Count > 0)
+            //{
+            //    rdCarb1.Checked = true;
+            //    rdCarb_CheckedChanged(rdCarb1, null);
+            //}
+        }
+
+        private void aff_prod()
+        {
+            chkPrFree.Enabled = true;
+            if (Lprod.Count >= 1)
+            {
+                chkPr1.Enabled =  true; //nuTot1.Enabled = nuQtt1.Enabled = true;
+                chkPr1.Text = Lprod[0].prod_pr;
+                nuPr1.Value = Lprod[0].ttc_pr;
+            }
+            if (Lprod.Count >= 2)
+            {
+                chkPr2.Enabled =  true; //nuTot2.Enabled = nuQtt2.Enabled = true;
+                chkPr2.Text = Lprod[1].prod_pr;
+                nuPr2.Value = Lprod[1].ttc_pr;
+            }
+            if (Lprod.Count >= 3)
+            {
+                chkPr3.Enabled = true; //= nuTot3.Enabled = nuQtt3.Enabled = true;
+                chkPr3.Text = Lprod[2].prod_pr;
+                nuPr3.Value = Lprod[2].ttc_pr;
+            }
+
+        }
+
+
+        private void nu_ValueChanged(object sender, EventArgs e)
+        {
+            if (Retry++>15) //on evite la boucle infinie
+            {
+                Retry = 0;
+                return;
+            }
+            string from = ((NumericUpDown)sender).Name;
+            switch (from)
+            {
+                case "nuPxCarb":
+                case "nuMntCarb":
+                    if (nuPxCarb.Value > 0)
+                    {
+                        nuVolCarb.Value = nuMntCarb.Value / nuPxCarb.Value;
+                    }
+                    break;
+                case "nuVolCarb":
+                        nuMntCarb.Value = nuVolCarb.Value * nuPxCarb.Value;
+                    break;
+                case "nuPr1":
+                case "nuTot1":
+                    if (nuPr1.Value > 0)
+                    {
+                        nuQtt1.Value = nuTot1.Value / nuPr1.Value;
+                    }
+                    break;
+                case "nuQtt1":
+                        nuTot1.Value = nuQtt1.Value * nuPr1.Value;
+                    break;
+                case "nuPr2":
+                case "nuTot2":
+                    if (nuPr2.Value > 0)
+                    {
+                        nuQtt2.Value = nuTot2.Value / nuPr2.Value;
+                    }
+                    break;
+                case "nuQtt2":
+                    nuTot2.Value = nuQtt2.Value * nuPr2.Value;
+                    break;
+
+                case "nuPr3":
+                case "nuTot3":
+                    if (nuPr3.Value > 0)
+                    {
+                        nuQtt3.Value = nuTot3.Value / nuPr3.Value;
+                    }
+                    break;
+                case "nuQtt3":
+                    nuTot3.Value = nuQtt3.Value * nuPr3.Value;
+                    break;
+                case "nuPrFree":
+                case "nuQttFree":
+                     nuTotFree.Value =  nuPrFree.Value * nuQttFree.Value;
+                    break;
+                case "nuTotFree":
+                    nuQttFree.Value = 1;
+                    nuPrFree.Value= nuTotFree.Value / nuQttFree.Value;
+                    break;
+            }
+        }
+
+        private void rdCarb_CheckedChanged(object sender, EventArgs e)
+        {
+            if (((RadioButton)sender).Checked == true)
+            {
+                //on récupère le nom pour l'indice du tableau
+                indiceCarb = Convert.ToInt16(((RadioButton)sender).Name.Substring(6, 1))-1;
+                if (indiceCarb < Lmycarb.Count && indiceCarb >= 0)
+                    nuPxCarb.Value = Lmycarb[indiceCarb].ttc_pr;
+                else
+                    MessageBox.Show("Carburant non disponible pour ce véhicule!");
+            }
+
+        }
+
+        private void bt_abort_Click(object sender, EventArgs e)
+        {
+            aff_zero();
+            text_no.Focus();
+        }
+
+        private void bt_valid_Click(object sender, EventArgs e)
+        {
+
+            if (chkPrFree.Checked)
+            {
+                if ( nuPrFree.Value * nuQttFree.Value ==0   ||  txtPrFree.Text.Trim(new char[]{ ' ','a' })=="" )
+                {
+                    MessageBox.Show("Incohérence dans les données libres (libellé ou prix ou qtt ou tva");
+                    return;
+                }
+            }
+            if (nuVolCarb.Value > 0) ajpresta(Lmycarb[indiceCarb], nuPxCarb.Value, nuVolCarb.Value, nuMntCarb.Text);
+            if (chkPr1.Checked) ajpresta(Lprod[0], nuPr1.Value, nuQtt1.Value, nuTot1.Text);
+            if (chkPr2.Checked) ajpresta(Lprod[1], nuPr2.Value, nuQtt2.Value, nuTot2.Text);
+            if (chkPr3.Checked) ajpresta(Lprod[2], nuPr3.Value, nuQtt3.Value, nuTot3.Text);
+            if (chkPrFree.Checked) ajpresta(txtPrFree.Text, nuPrFree.Value, nuQttFree.Value, nuTotFree.Text,numTvaFree.Value);
+            f_ticket ticket = new f_ticket(myStation, myVehi, tb_ventetmp);
+            if (ticket.ShowDialog() == System.Windows.Forms.DialogResult.OK)
+            {
+                foreach (DataSet1.tb_venteRow myVt in tb_ventetmp)
+                {
+                    tb_vente.Addtb_venteRow(myVt.epreuve_vt, myVt.station_vt, myVt.vehi_vt, myVt.prod_vt, myVt.date_vt, myVt.qtt_vt, myVt.pu_vt, myVt.tva_vt, myVt.ht_vt, myVt.ttc_vt);
+                }
+                hasChanged = true;
+                bt_save.Enabled = hasChanged;
+            }
+            tb_ventetmp.Clear();
+            aff_zero();
+
+
+        }
+        /// <summary>
+        /// Presta enregistrée
+        /// </summary>
+        /// <param name="prRow"></param>
+        /// <param name="pu"></param>
+        /// <param name="qtt"></param>
+        /// <param name="total_str"></param>
+        private void ajpresta(DataSet1.tb_prestaRow prRow,  decimal pu, decimal qtt, string total_str)
+        {
+            decimal tva = 0;
+            decimal totht = 0;
+            decimal total = Convert.ToDecimal(total_str);
+            string lib = prRow.prod_pr;
+            tva = prRow.tva_pr;
+            totht = Math.Round(total / (1 + tva / 100),2);
+            DateTime dt = DateTime.Now;
+            tb_ventetmp.Addtb_venteRow(Program.key_ope, Program.key_sta, id_vehi, lib, dt, qtt, pu, tva, totht, total);
+        }
+        /// <summary>
+        /// Presta libre
+        /// </summary>
+        /// <param name="lib"></param>
+        /// <param name="pu"></param>
+        /// <param name="qtt"></param>
+        /// <param name="total_str"></param>
+        /// <param name="tva"></param>
+        private void ajpresta(string lib, decimal pu, decimal qtt, string total_str,decimal tva)
+        {
+            decimal totht = 0;
+            decimal total = Convert.ToDecimal(total_str);
+            totht = Math.Round(total / (1 + tva / 100), 2);
+            DateTime dt = DateTime.Now;
+            tb_ventetmp.Addtb_venteRow(Program.key_ope, Program.key_sta, id_vehi, lib, dt, qtt, pu, tva, totht,  total);
+        }
+
+        private void bt_search_Click(object sender, EventArgs e)
+        {
+            Retry = 0;
+            UInt32 num;
+            if (UInt32.TryParse(text_no.Text, out num))
+            {
+                myVehi = tb_vehi.FirstOrDefault(v => v.num_vehi == num && v.categ_vehi == (rdAuto.Checked ? "A" : "M"));
+                if (myVehi != null)
+                {
+                    lbl_pilote.Text = myVehi.cond_vehi ;
+                    isDiesel = myVehi.carbu_vehi.ToUpper().Contains("DIESEL");
+                    aff_carb(myVehi.carbu_vehi);
+                    aff_prod();
+                    id_vehi = myVehi.sort1_vehi;
+                    rdCarb1.Checked = true;
+                }
+                else
+                {
+                    aff_zero();
+                    text_no.Text = num.ToString();
+                    text_no.SelectionStart = 0;
+                    text_no.SelectionLength = text_no.Text.Length;
+                }
+            }
+            turnBlock(myVehi != null);
+
+
+        }
+
+
+        private void turnBlock(bool status)
+        {
+            grpCarb.Enabled = status;
+            grpServ.Enabled = status;
+            bt_abort.Enabled = status;
+            bt_valid.Enabled = status;
+        }
+
+
+        private void aff_zero()
+        {
+            chkPr1.Enabled = chkPr2.Enabled = chkPr3.Enabled =  chkPrFree.Enabled= false;
+            chkPr1.Checked = chkPr2.Checked = chkPr3.Checked = chkPrFree.Checked = false;
+            nuPr1.Enabled = nuPr2.Enabled = nuPr3.Enabled = false;
+            nuQtt1.Enabled = nuQtt2.Enabled = nuQtt3.Enabled = false;
+            nuTot1.Enabled = nuTot2.Enabled = nuTot3.Enabled = false;
+            chkPr1.Text = chkPr2.Text = chkPr3.Text = txtPrFree.Text = "";
+            nuVolCarb.Value= nuPr1.Value = nuPr2.Value = nuPr3.Value = nuPrFree.Value = 0;
+            nuQtt1.Value = nuQtt2.Value = nuQtt3.Value = nuQttFree.Value = 0;
+            nuTot1.Value = nuTot2.Value = nuTot3.Value = 0;
+            nuPxCarb.Value = nuMntCarb.Value = nuPxCarb.Value = 0;
+            text_no.Text = "";
+        }
+
+
+        private void text_no_KeyUp(object sender, KeyEventArgs e)
+       {
+           if (e.KeyValue == 13)
+               bt_search_Click(null, null);
+       }
+
+        private void bt_save_Click(object sender, EventArgs e)
+        {
+            DbUtil.SaveToJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vebnte.json", tb_vente);
+
+            hasChanged = false;
+            bt_save.Enabled = hasChanged;
+
+        }
+
+        private void f_saisie_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (hasChanged)
+                bt_save_Click(null, null);
+            e.Cancel = false;
+        }
+
+        private void chkPrFree_CheckStateChanged(object sender, EventArgs e)
+        {
+            nuTotFree.Enabled = ((CheckBox)sender).Checked;
+            if (!((CheckBox)sender).Checked)
+                nuTotFree.Value = 1;
+        }
+
+        private void chkProduit_CheckedChanged(object sender, EventArgs e)
+        {
+            bool Checked= ((CheckBox)sender).Checked;
+            var Name= ((CheckBox)sender).Name;
+            switch (Name)
+            {
+                case "chkPr1":
+                    nuQtt1.Enabled = nuTot1.Enabled = Checked;
+                    nuQtt1.Value = nuTot1.Value = 0;
+                    break;
+                case "chkPr2":
+                    nuQtt2.Enabled = nuTot2.Enabled = Checked;
+                    nuQtt2.Value = nuTot2.Value = 0;
+                    break;
+                case "chkPr3":
+                    nuQtt3.Enabled = nuTot3.Enabled = Checked;
+                    nuQtt3.Value = nuTot3.Value = 0;
+                    break;
+            }
+        }
+    }
+}

+ 141 - 0
Fuel_ASO/f_saisie2.resx

@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbstationBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>37, 18</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>216, 18</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>216, 18</value>
+  </metadata>
+  <metadata name="tbprestaBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>315, 18</value>
+  </metadata>
+  <metadata name="tbventeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>491, 18</value>
+  </metadata>
+  <metadata name="tbvehiBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>663, 18</value>
+  </metadata>
+  <metadata name="tbventetmpbindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>827, 18</value>
+  </metadata>
+</root>

+ 715 - 0
Fuel_ASO/f_station.Designer.cs

@@ -0,0 +1,715 @@
+namespace Fuel01
+{
+    partial class f_station
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.bt_Sup = new System.Windows.Forms.Button();
+            this.Bt_Abort = new System.Windows.Forms.Button();
+            this.bt_Valid = new System.Windows.Forms.Button();
+            this.bt_Aj = new System.Windows.Forms.Button();
+            this.bt_Mod = new System.Windows.Forms.Button();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.dg_station = new System.Windows.Forms.DataGridView();
+            this.label11 = new System.Windows.Forms.Label();
+            this.text_etp_sta = new System.Windows.Forms.TextBox();
+            this.text_key_sta = new System.Windows.Forms.TextBox();
+            this.bt_Presta = new System.Windows.Forms.Button();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.combo_pays_sta = new System.Windows.Forms.ComboBox();
+            this.text_tel_sta = new System.Windows.Forms.TextBox();
+            this.text_ville_sta = new System.Windows.Forms.TextBox();
+            this.text_cp_sta = new System.Windows.Forms.TextBox();
+            this.text_adr2_sta = new System.Windows.Forms.TextBox();
+            this.text_adr1_sta = new System.Windows.Forms.TextBox();
+            this.text_contact_sta = new System.Windows.Forms.TextBox();
+            this.text_nom_sta = new System.Windows.Forms.TextBox();
+            this.nn_num_sta = new System.Windows.Forms.NumericUpDown();
+            this.dt_date_sta = new System.Windows.Forms.DateTimePicker();
+            this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+            this.st1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.StatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.etpstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datestaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.numstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.nomstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.adr1staDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.adr2staDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cpstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.villestaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.paysstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.contactstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.telstaDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbstationBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.label12 = new System.Windows.Forms.Label();
+            this.text_tva_sta = new System.Windows.Forms.TextBox();
+            this.label13 = new System.Windows.Forms.Label();
+            this.text_divers_sta = new System.Windows.Forms.TextBox();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_station)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nn_num_sta)).BeginInit();
+            this.statusStrip1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // bt_Sup
+            // 
+            this.bt_Sup.Location = new System.Drawing.Point(210, 372);
+            this.bt_Sup.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Sup.Name = "bt_Sup";
+            this.bt_Sup.Size = new System.Drawing.Size(66, 19);
+            this.bt_Sup.TabIndex = 15;
+            this.bt_Sup.Text = "Supprimer";
+            this.bt_Sup.UseVisualStyleBackColor = true;
+            this.bt_Sup.Click += new System.EventHandler(this.bt_Sup_Click);
+            // 
+            // Bt_Abort
+            // 
+            this.Bt_Abort.Location = new System.Drawing.Point(198, 410);
+            this.Bt_Abort.Margin = new System.Windows.Forms.Padding(2);
+            this.Bt_Abort.Name = "Bt_Abort";
+            this.Bt_Abort.Size = new System.Drawing.Size(77, 19);
+            this.Bt_Abort.TabIndex = 17;
+            this.Bt_Abort.Text = "Abandonner";
+            this.Bt_Abort.UseVisualStyleBackColor = true;
+            this.Bt_Abort.Click += new System.EventHandler(this.Bt_Abort_Click);
+            // 
+            // bt_Valid
+            // 
+            this.bt_Valid.Location = new System.Drawing.Point(59, 410);
+            this.bt_Valid.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Valid.Name = "bt_Valid";
+            this.bt_Valid.Size = new System.Drawing.Size(76, 19);
+            this.bt_Valid.TabIndex = 16;
+            this.bt_Valid.Text = "Valider";
+            this.bt_Valid.UseVisualStyleBackColor = true;
+            this.bt_Valid.Click += new System.EventHandler(this.bt_Valid_Click);
+            // 
+            // bt_Aj
+            // 
+            this.bt_Aj.Location = new System.Drawing.Point(134, 372);
+            this.bt_Aj.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Aj.Name = "bt_Aj";
+            this.bt_Aj.Size = new System.Drawing.Size(56, 19);
+            this.bt_Aj.TabIndex = 14;
+            this.bt_Aj.Text = "Ajouter";
+            this.bt_Aj.UseVisualStyleBackColor = true;
+            this.bt_Aj.Click += new System.EventHandler(this.bt_Aj_Click);
+            // 
+            // bt_Mod
+            // 
+            this.bt_Mod.Location = new System.Drawing.Point(58, 372);
+            this.bt_Mod.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Mod.Name = "bt_Mod";
+            this.bt_Mod.Size = new System.Drawing.Size(56, 19);
+            this.bt_Mod.TabIndex = 13;
+            this.bt_Mod.Text = "Modifier";
+            this.bt_Mod.UseVisualStyleBackColor = true;
+            this.bt_Mod.Click += new System.EventHandler(this.bt_Mod_Click);
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.dg_station);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.label13);
+            this.splitContainer2.Panel2.Controls.Add(this.text_divers_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.label12);
+            this.splitContainer2.Panel2.Controls.Add(this.text_tva_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.label11);
+            this.splitContainer2.Panel2.Controls.Add(this.text_etp_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_key_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Presta);
+            this.splitContainer2.Panel2.Controls.Add(this.label10);
+            this.splitContainer2.Panel2.Controls.Add(this.label9);
+            this.splitContainer2.Panel2.Controls.Add(this.label8);
+            this.splitContainer2.Panel2.Controls.Add(this.label7);
+            this.splitContainer2.Panel2.Controls.Add(this.label6);
+            this.splitContainer2.Panel2.Controls.Add(this.label5);
+            this.splitContainer2.Panel2.Controls.Add(this.label4);
+            this.splitContainer2.Panel2.Controls.Add(this.label3);
+            this.splitContainer2.Panel2.Controls.Add(this.label2);
+            this.splitContainer2.Panel2.Controls.Add(this.label1);
+            this.splitContainer2.Panel2.Controls.Add(this.combo_pays_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_tel_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_ville_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_cp_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_adr2_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_adr1_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_contact_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.text_nom_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.nn_num_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.dt_date_sta);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Sup);
+            this.splitContainer2.Panel2.Controls.Add(this.Bt_Abort);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Valid);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Aj);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Mod);
+            this.splitContainer2.Size = new System.Drawing.Size(1036, 499);
+            this.splitContainer2.SplitterDistance = 719;
+            this.splitContainer2.TabIndex = 2;
+            // 
+            // dg_station
+            // 
+            this.dg_station.AllowUserToAddRows = false;
+            this.dg_station.AllowUserToDeleteRows = false;
+            this.dg_station.AllowUserToOrderColumns = true;
+            this.dg_station.AutoGenerateColumns = false;
+            this.dg_station.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_station.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.etpstaDataGridViewTextBoxColumn,
+            this.datestaDataGridViewTextBoxColumn,
+            this.numstaDataGridViewTextBoxColumn,
+            this.nomstaDataGridViewTextBoxColumn,
+            this.adr1staDataGridViewTextBoxColumn,
+            this.adr2staDataGridViewTextBoxColumn,
+            this.cpstaDataGridViewTextBoxColumn,
+            this.villestaDataGridViewTextBoxColumn,
+            this.paysstaDataGridViewTextBoxColumn,
+            this.contactstaDataGridViewTextBoxColumn,
+            this.telstaDataGridViewTextBoxColumn});
+            this.dg_station.DataSource = this.tbstationBindingSource;
+            this.dg_station.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_station.Location = new System.Drawing.Point(0, 0);
+            this.dg_station.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_station.Name = "dg_station";
+            this.dg_station.ReadOnly = true;
+            this.dg_station.RowTemplate.Height = 24;
+            this.dg_station.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_station.Size = new System.Drawing.Size(719, 499);
+            this.dg_station.TabIndex = 2;
+            // 
+            // label11
+            // 
+            this.label11.AutoSize = true;
+            this.label11.Location = new System.Drawing.Point(48, 39);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(35, 13);
+            this.label11.TabIndex = 41;
+            this.label11.Text = "Etape";
+            this.label11.Click += new System.EventHandler(this.label11_Click);
+            // 
+            // text_etp_sta
+            // 
+            this.text_etp_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "etp_sta", true));
+            this.text_etp_sta.Location = new System.Drawing.Point(85, 35);
+            this.text_etp_sta.Name = "text_etp_sta";
+            this.text_etp_sta.Size = new System.Drawing.Size(44, 20);
+            this.text_etp_sta.TabIndex = 40;
+            // 
+            // text_key_sta
+            // 
+            this.text_key_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "key_sta", true));
+            this.text_key_sta.Enabled = false;
+            this.text_key_sta.Location = new System.Drawing.Point(86, 6);
+            this.text_key_sta.Name = "text_key_sta";
+            this.text_key_sta.Size = new System.Drawing.Size(70, 20);
+            this.text_key_sta.TabIndex = 39;
+            // 
+            // bt_Presta
+            // 
+            this.bt_Presta.Location = new System.Drawing.Point(201, 448);
+            this.bt_Presta.Name = "bt_Presta";
+            this.bt_Presta.Size = new System.Drawing.Size(75, 23);
+            this.bt_Presta.TabIndex = 38;
+            this.bt_Presta.Text = "Prix/Ventes";
+            this.bt_Presta.UseVisualStyleBackColor = true;
+            this.bt_Presta.Click += new System.EventHandler(this.bt_Presta_Click);
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.Location = new System.Drawing.Point(26, 274);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(58, 13);
+            this.label10.TabIndex = 37;
+            this.label10.Text = "Téléphone";
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.Location = new System.Drawing.Point(58, 248);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(26, 13);
+            this.label9.TabIndex = 36;
+            this.label9.Text = "Ville";
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(169, 222);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(21, 13);
+            this.label8.TabIndex = 35;
+            this.label8.Text = "CP";
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(54, 221);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(30, 13);
+            this.label7.TabIndex = 34;
+            this.label7.Text = "Pays";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(68, 196);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(16, 13);
+            this.label6.TabIndex = 33;
+            this.label6.Text = "...";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(39, 170);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(45, 13);
+            this.label5.TabIndex = 32;
+            this.label5.Text = "Adresse";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(55, 118);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(29, 13);
+            this.label4.TabIndex = 31;
+            this.label4.Text = "Nom";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(40, 144);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(44, 13);
+            this.label3.TabIndex = 30;
+            this.label3.Text = "Contact";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(65, 91);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(19, 13);
+            this.label2.TabIndex = 29;
+            this.label2.Text = "N°";
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(54, 67);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(30, 13);
+            this.label1.TabIndex = 28;
+            this.label1.Text = "Date";
+            // 
+            // combo_pays_sta
+            // 
+            this.combo_pays_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "pays_sta", true));
+            this.combo_pays_sta.FormattingEnabled = true;
+            this.combo_pays_sta.Location = new System.Drawing.Point(85, 218);
+            this.combo_pays_sta.Name = "combo_pays_sta";
+            this.combo_pays_sta.Size = new System.Drawing.Size(78, 21);
+            this.combo_pays_sta.TabIndex = 24;
+            this.combo_pays_sta.SelectedIndexChanged += new System.EventHandler(this.combo_pays_sta_SelectedIndexChanged);
+            this.combo_pays_sta.TextChanged += new System.EventHandler(this.combo_pays_sta_SelectedIndexChanged);
+            // 
+            // text_tel_sta
+            // 
+            this.text_tel_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "tel_sta", true));
+            this.text_tel_sta.Location = new System.Drawing.Point(85, 271);
+            this.text_tel_sta.Name = "text_tel_sta";
+            this.text_tel_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_tel_sta.TabIndex = 27;
+            // 
+            // text_ville_sta
+            // 
+            this.text_ville_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "ville_sta", true));
+            this.text_ville_sta.Location = new System.Drawing.Point(85, 245);
+            this.text_ville_sta.Name = "text_ville_sta";
+            this.text_ville_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_ville_sta.TabIndex = 26;
+            // 
+            // text_cp_sta
+            // 
+            this.text_cp_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "cp_sta", true));
+            this.text_cp_sta.Location = new System.Drawing.Point(191, 219);
+            this.text_cp_sta.Name = "text_cp_sta";
+            this.text_cp_sta.Size = new System.Drawing.Size(77, 20);
+            this.text_cp_sta.TabIndex = 25;
+            // 
+            // text_adr2_sta
+            // 
+            this.text_adr2_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "adr2_sta", true));
+            this.text_adr2_sta.Location = new System.Drawing.Point(85, 193);
+            this.text_adr2_sta.Name = "text_adr2_sta";
+            this.text_adr2_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_adr2_sta.TabIndex = 23;
+            // 
+            // text_adr1_sta
+            // 
+            this.text_adr1_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "adr1_sta", true));
+            this.text_adr1_sta.Location = new System.Drawing.Point(85, 167);
+            this.text_adr1_sta.Name = "text_adr1_sta";
+            this.text_adr1_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_adr1_sta.TabIndex = 22;
+            // 
+            // text_contact_sta
+            // 
+            this.text_contact_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "contact_sta", true));
+            this.text_contact_sta.Location = new System.Drawing.Point(85, 141);
+            this.text_contact_sta.Name = "text_contact_sta";
+            this.text_contact_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_contact_sta.TabIndex = 21;
+            // 
+            // text_nom_sta
+            // 
+            this.text_nom_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "nom_sta", true));
+            this.text_nom_sta.Location = new System.Drawing.Point(85, 115);
+            this.text_nom_sta.Name = "text_nom_sta";
+            this.text_nom_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_nom_sta.TabIndex = 20;
+            // 
+            // nn_num_sta
+            // 
+            this.nn_num_sta.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.tbstationBindingSource, "num_sta", true));
+            this.nn_num_sta.Location = new System.Drawing.Point(85, 89);
+            this.nn_num_sta.Name = "nn_num_sta";
+            this.nn_num_sta.Size = new System.Drawing.Size(56, 20);
+            this.nn_num_sta.TabIndex = 19;
+            this.nn_num_sta.Value = new decimal(new int[] {
+            1,
+            0,
+            0,
+            0});
+            // 
+            // dt_date_sta
+            // 
+            this.dt_date_sta.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.tbstationBindingSource, "date_sta", true));
+            this.dt_date_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "date_sta", true));
+            this.dt_date_sta.Location = new System.Drawing.Point(85, 63);
+            this.dt_date_sta.Name = "dt_date_sta";
+            this.dt_date_sta.Size = new System.Drawing.Size(183, 20);
+            this.dt_date_sta.TabIndex = 18;
+            // 
+            // statusStrip1
+            // 
+            this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.st1,
+            this.StatusLabel1});
+            this.statusStrip1.Location = new System.Drawing.Point(0, 531);
+            this.statusStrip1.Name = "statusStrip1";
+            this.statusStrip1.Padding = new System.Windows.Forms.Padding(1, 0, 10, 0);
+            this.statusStrip1.Size = new System.Drawing.Size(1036, 22);
+            this.statusStrip1.TabIndex = 30;
+            this.statusStrip1.Text = "statusStrip1";
+            // 
+            // st1
+            // 
+            this.st1.Name = "st1";
+            this.st1.Size = new System.Drawing.Size(0, 17);
+            // 
+            // StatusLabel1
+            // 
+            this.StatusLabel1.Name = "StatusLabel1";
+            this.StatusLabel1.Size = new System.Drawing.Size(16, 17);
+            this.StatusLabel1.Text = "...";
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(1036, 531);
+            this.splitContainer1.SplitterDistance = 28;
+            this.splitContainer1.TabIndex = 31;
+            // 
+            // etpstaDataGridViewTextBoxColumn
+            // 
+            this.etpstaDataGridViewTextBoxColumn.DataPropertyName = "etp_sta";
+            this.etpstaDataGridViewTextBoxColumn.HeaderText = "Etape";
+            this.etpstaDataGridViewTextBoxColumn.Name = "etpstaDataGridViewTextBoxColumn";
+            this.etpstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.etpstaDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // datestaDataGridViewTextBoxColumn
+            // 
+            this.datestaDataGridViewTextBoxColumn.DataPropertyName = "date_sta";
+            dataGridViewCellStyle3.Format = "d";
+            dataGridViewCellStyle3.NullValue = null;
+            this.datestaDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle3;
+            this.datestaDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.datestaDataGridViewTextBoxColumn.Name = "datestaDataGridViewTextBoxColumn";
+            this.datestaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.datestaDataGridViewTextBoxColumn.Width = 70;
+            // 
+            // numstaDataGridViewTextBoxColumn
+            // 
+            this.numstaDataGridViewTextBoxColumn.DataPropertyName = "num_sta";
+            dataGridViewCellStyle4.Format = "N0";
+            dataGridViewCellStyle4.NullValue = null;
+            this.numstaDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle4;
+            this.numstaDataGridViewTextBoxColumn.HeaderText = "N°";
+            this.numstaDataGridViewTextBoxColumn.Name = "numstaDataGridViewTextBoxColumn";
+            this.numstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.numstaDataGridViewTextBoxColumn.Width = 30;
+            // 
+            // nomstaDataGridViewTextBoxColumn
+            // 
+            this.nomstaDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.nomstaDataGridViewTextBoxColumn.DataPropertyName = "nom_sta";
+            this.nomstaDataGridViewTextBoxColumn.HeaderText = "Nom";
+            this.nomstaDataGridViewTextBoxColumn.Name = "nomstaDataGridViewTextBoxColumn";
+            this.nomstaDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // adr1staDataGridViewTextBoxColumn
+            // 
+            this.adr1staDataGridViewTextBoxColumn.DataPropertyName = "adr1_sta";
+            this.adr1staDataGridViewTextBoxColumn.HeaderText = "adr1_sta";
+            this.adr1staDataGridViewTextBoxColumn.Name = "adr1staDataGridViewTextBoxColumn";
+            this.adr1staDataGridViewTextBoxColumn.ReadOnly = true;
+            this.adr1staDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // adr2staDataGridViewTextBoxColumn
+            // 
+            this.adr2staDataGridViewTextBoxColumn.DataPropertyName = "adr2_sta";
+            this.adr2staDataGridViewTextBoxColumn.HeaderText = "adr2_sta";
+            this.adr2staDataGridViewTextBoxColumn.Name = "adr2staDataGridViewTextBoxColumn";
+            this.adr2staDataGridViewTextBoxColumn.ReadOnly = true;
+            this.adr2staDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // cpstaDataGridViewTextBoxColumn
+            // 
+            this.cpstaDataGridViewTextBoxColumn.DataPropertyName = "cp_sta";
+            this.cpstaDataGridViewTextBoxColumn.HeaderText = "CP";
+            this.cpstaDataGridViewTextBoxColumn.Name = "cpstaDataGridViewTextBoxColumn";
+            this.cpstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.cpstaDataGridViewTextBoxColumn.Width = 70;
+            // 
+            // villestaDataGridViewTextBoxColumn
+            // 
+            this.villestaDataGridViewTextBoxColumn.DataPropertyName = "ville_sta";
+            this.villestaDataGridViewTextBoxColumn.HeaderText = "Ville";
+            this.villestaDataGridViewTextBoxColumn.Name = "villestaDataGridViewTextBoxColumn";
+            this.villestaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.villestaDataGridViewTextBoxColumn.Width = 150;
+            // 
+            // paysstaDataGridViewTextBoxColumn
+            // 
+            this.paysstaDataGridViewTextBoxColumn.DataPropertyName = "pays_sta";
+            this.paysstaDataGridViewTextBoxColumn.HeaderText = "Pays";
+            this.paysstaDataGridViewTextBoxColumn.Name = "paysstaDataGridViewTextBoxColumn";
+            this.paysstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.paysstaDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // contactstaDataGridViewTextBoxColumn
+            // 
+            this.contactstaDataGridViewTextBoxColumn.DataPropertyName = "contact_sta";
+            this.contactstaDataGridViewTextBoxColumn.HeaderText = "Contact";
+            this.contactstaDataGridViewTextBoxColumn.Name = "contactstaDataGridViewTextBoxColumn";
+            this.contactstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.contactstaDataGridViewTextBoxColumn.Width = 150;
+            // 
+            // telstaDataGridViewTextBoxColumn
+            // 
+            this.telstaDataGridViewTextBoxColumn.DataPropertyName = "tel_sta";
+            this.telstaDataGridViewTextBoxColumn.HeaderText = "tel_sta";
+            this.telstaDataGridViewTextBoxColumn.Name = "telstaDataGridViewTextBoxColumn";
+            this.telstaDataGridViewTextBoxColumn.ReadOnly = true;
+            this.telstaDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // tbstationBindingSource
+            // 
+            this.tbstationBindingSource.DataMember = "tb_station";
+            this.tbstationBindingSource.DataSource = this.dataSet1;
+            this.tbstationBindingSource.Sort = "date_sta";
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // label12
+            // 
+            this.label12.AutoSize = true;
+            this.label12.Location = new System.Drawing.Point(27, 300);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(56, 13);
+            this.label12.TabIndex = 43;
+            this.label12.Text = "Code TVA";
+            // 
+            // text_tva_sta
+            // 
+            this.text_tva_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "tva_sta", true));
+            this.text_tva_sta.Location = new System.Drawing.Point(86, 297);
+            this.text_tva_sta.Name = "text_tva_sta";
+            this.text_tva_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_tva_sta.TabIndex = 42;
+            // 
+            // label13
+            // 
+            this.label13.AutoSize = true;
+            this.label13.Location = new System.Drawing.Point(26, 326);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(37, 13);
+            this.label13.TabIndex = 45;
+            this.label13.Text = "Divers";
+            // 
+            // text_divers_sta
+            // 
+            this.text_divers_sta.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbstationBindingSource, "divers_sta", true));
+            this.text_divers_sta.Location = new System.Drawing.Point(85, 323);
+            this.text_divers_sta.Name = "text_divers_sta";
+            this.text_divers_sta.Size = new System.Drawing.Size(184, 20);
+            this.text_divers_sta.TabIndex = 44;
+            // 
+            // f_station
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1036, 553);
+            this.Controls.Add(this.splitContainer1);
+            this.Controls.Add(this.statusStrip1);
+            this.Name = "f_station";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Stations services";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_station_FormClosing);
+            this.Load += new System.EventHandler(this.f_station_Load);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            this.splitContainer2.Panel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_station)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.nn_num_sta)).EndInit();
+            this.statusStrip1.ResumeLayout(false);
+            this.statusStrip1.PerformLayout();
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.tbstationBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button bt_Sup;
+        private System.Windows.Forms.Button Bt_Abort;
+        private System.Windows.Forms.Button bt_Valid;
+        private System.Windows.Forms.Button bt_Aj;
+        private System.Windows.Forms.Button bt_Mod;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.DataGridView dg_station;
+        private System.Windows.Forms.BindingSource tbstationBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.StatusStrip statusStrip1;
+        private System.Windows.Forms.ToolStripStatusLabel st1;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.DateTimePicker dt_date_sta;
+        private System.Windows.Forms.ComboBox combo_pays_sta;
+        private System.Windows.Forms.TextBox text_tel_sta;
+        private System.Windows.Forms.TextBox text_ville_sta;
+        private System.Windows.Forms.TextBox text_cp_sta;
+        private System.Windows.Forms.TextBox text_adr2_sta;
+        private System.Windows.Forms.TextBox text_adr1_sta;
+        private System.Windows.Forms.TextBox text_contact_sta;
+        private System.Windows.Forms.TextBox text_nom_sta;
+        private System.Windows.Forms.NumericUpDown nn_num_sta;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ToolStripStatusLabel StatusLabel1;
+        private System.Windows.Forms.Button bt_Presta;
+        private System.Windows.Forms.TextBox text_key_sta;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.TextBox text_etp_sta;
+        private System.Windows.Forms.DataGridViewTextBoxColumn etpstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datestaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn numstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn nomstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn adr1staDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn adr2staDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cpstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn villestaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn paysstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn contactstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn telstaDataGridViewTextBoxColumn;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.TextBox text_divers_sta;
+        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.TextBox text_tva_sta;
+    }
+}

+ 282 - 0
Fuel_ASO/f_station.cs

@@ -0,0 +1,282 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml;
+using System.Xml.Linq;
+using Excel=Microsoft.Office.Interop.Excel;
+
+namespace Fuel01
+{
+    public partial class f_station : Form
+    {
+        DataSet1.tb_stationDataTable tb_station = new DataSet1.tb_stationDataTable();
+        string keysta;
+        f_presta fpresta;
+        List<pays> lpays = new List<pays>();
+
+        public f_station(DataSet1.tb_stationDataTable tb_station,string keysta)
+        {
+            InitializeComponent();
+            this.tb_station = tb_station;
+            this.keysta = keysta;
+        }
+
+        private void f_station_Load(object sender, EventArgs e)
+        {
+
+            tb_station.AcceptChanges();
+            tbstationBindingSource.DataSource = tb_station;
+           
+
+            TurnTxt(false);
+            TurnBt(false);
+
+            if (Program.key_ope != null)
+                this.Text = "Stations  " + Program.nom_ope;
+
+            if (File.Exists(Program.folder + @"\param\pays.xml"))
+                InitListPays();
+
+
+            tbstationBindingSource.MoveFirst();
+            DataRowView myRow = tbstationBindingSource.Current as DataRowView;
+            if (myRow != null)
+                while (myRow.Row["key_sta"].ToString() != keysta)
+                {
+                    int i = tbstationBindingSource.Position;
+                    tbstationBindingSource.MoveNext();
+                    myRow = tbstationBindingSource.Current as DataRowView;
+                    if (i == tbstationBindingSource.Position)
+                        break;
+                }
+
+        }
+
+        private void f_station_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (fpresta != null)
+                fpresta.Close();
+            DataSet1.tb_stationDataTable tb_station_tmp = new DataSet1.tb_stationDataTable();
+            foreach (DataRow dr in tb_station.OrderBy(p => p.date_sta))
+                tb_station_tmp.ImportRow(dr);
+
+
+            DbUtil.SaveToJson<DataSet1.tb_stationDataTable>(Program.subfolder + @"\station.json", tb_station_tmp);
+            
+            tb_station_tmp.Dispose();
+
+            e.Cancel = false;
+        }
+
+        #region affichage
+        private void TurnTxt(bool act)
+        {
+            text_etp_sta.Enabled = act;
+            dt_date_sta.Enabled = act;
+            nn_num_sta.Enabled = act;
+            text_contact_sta.Enabled = act;
+            text_nom_sta.Enabled = act;
+            text_adr1_sta.Enabled = act;
+            text_adr2_sta.Enabled = act;
+            combo_pays_sta.Enabled = act;
+            text_cp_sta.Enabled = act;
+            text_ville_sta.Enabled = act;
+            text_tel_sta.Enabled = act;
+            text_tva_sta.Enabled = act;
+            text_divers_sta.Enabled = act;
+
+        }
+
+        private void TurnBt(bool act)
+        {
+            Bt_Abort.Enabled = act;
+            bt_Valid.Enabled = act;
+            bt_Mod.Enabled = !act;
+            bt_Aj.Enabled = !act;
+            bt_Sup.Enabled = !act;
+            dg_station.Enabled = !act;
+        }
+        #endregion
+
+        private void InitListPays()
+        {
+
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\pays.xml");
+            var data = from item in xRoot.Descendants("tb_pays")
+                       orderby item.Element("order_pays").Value
+                       select new pays()
+                       {
+                           key_pays = item.Element("key_pays").Value,
+                           nom_pays = item.Element("nom_pays").Value,
+                           code_pays = item.Element("code_pays").Value,
+                           concat_pays = item.Element("code_pays").Value + "-" + item.Element("nom_pays").Value
+                       };
+            lpays = data.ToList();
+            combo_pays_sta.Items.Clear();
+            combo_pays_sta.DisplayMember = "key_pays";
+            foreach (pays p in lpays)
+                combo_pays_sta.Items.Add(p);
+        }
+
+        #region Boutons
+
+        private void bt_Mod_Click(object sender, EventArgs e)
+        {
+            TurnBt(true);
+            TurnTxt(true);
+        }
+
+        private void bt_Aj_Click(object sender, EventArgs e)
+        {
+            TurnTxt(true);
+            TurnBt(true);
+            string key = findNewkey();
+            DataSet1.tb_stationRow myNewRow = tb_station.Newtb_stationRow();
+            myNewRow["key_sta"] = key;
+            myNewRow["epr_sta"] = Program.key_ope;
+            tb_station.Addtb_stationRow(myNewRow);
+            tbstationBindingSource.MoveFirst();
+            DataRowView myRow = tbstationBindingSource.Current as DataRowView;
+            while (myRow.Row["key_sta"].ToString() != key)
+            {
+                tbstationBindingSource.MoveNext();
+                myRow = tbstationBindingSource.Current as DataRowView;
+            }
+
+        }
+
+        private void bt_Sup_Click(object sender, EventArgs e)
+        {
+            DataRowView myRow = tbstationBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Station {0}\n Etape {1} du {2} \n Etes-vous certain de vouloir la supprimer", myRow.Row["nom_sta"].ToString(), myRow.Row["etp_sta"].ToString(), myRow.Row["date_sta"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_stationRow stationRow = tb_station.FindBykey_sta(myRow.Row["key_sta"].ToString());
+                if (stationRow != null)
+                    tb_station.Removetb_stationRow(stationRow);
+            }
+        }
+
+        private void bt_Valid_Click(object sender, EventArgs e)
+        {
+            tb_station.AcceptChanges();
+            TurnTxt(false);
+            TurnBt(false);
+        }
+
+        private void Bt_Abort_Click(object sender, EventArgs e)
+        {
+            tb_station.RejectChanges();
+            TurnTxt(false);
+            TurnBt(false);
+
+        }
+        #endregion
+
+        #region fonctions
+
+        private string findNewkey()
+        {
+            Random rand1 = new Random();
+            string key = rand1.Next(99999).ToString();
+            while (tb_station.FindBykey_sta(key) != null)
+            {
+                MessageBox.Show(key);
+                key = rand1.Next(99999).ToString();
+            }
+            return key;
+        }
+
+        #endregion
+
+        private void combo_pays_sta_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            pays cur_Pays=lpays.Find(p => p.key_pays == combo_pays_sta.Text);
+            if ( cur_Pays!=null)
+                StatusLabel1.Text = cur_Pays.nom_pays;
+            else
+                StatusLabel1.Text = "...";
+        }
+
+        private void bt_Presta_Click(object sender, EventArgs e)
+        {
+            if ( fpresta==null)
+                fpresta = new f_presta(text_key_sta);
+            try
+            {
+                fpresta.Show();
+            }
+            catch (System.ObjectDisposedException )
+            {
+                fpresta = new f_presta(text_key_sta);
+                fpresta.Show();
+            }
+           
+        }
+
+        private void label11_Click(object sender, EventArgs e)
+        {
+
+        }
+
+        private void t_facture_Click(object sender, EventArgs e)
+        {
+        }
+
+
+            //if (!File.Exists(Program.subfolder + @"\Facture_Carbu.xlsx"))
+            //    return;
+            //string fileName=Program.subfolder+@"\Facture_"+text_key_sta.Text+".xlsx";
+            //File.Copy(Program.subfolder + @"\Facture_Carbu.xlsx", fileName,true);
+
+            //Excel.Application xlApp;
+            //Excel.Workbook xlWorkBook;
+            //Excel.Worksheet xlWorkSheet;
+            //object misValue = System.Reflection.Missing.Value;
+
+            //xlApp = new Excel.Application();
+
+            //xlWorkBook = xlApp.Workbooks.Add(misValue);
+
+            //try
+            //{
+            //    xlApp = new Excel.Application();
+            //    xlWorkBook = xlApp.Workbooks.Open(fileName, misValue);
+            //    xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
+            //}
+            //catch (Exception ex)
+            //{
+            //    MessageBox.Show("Vérifier que le fichier n'est pas ouvert et est un fichier Excel correct", "Ouverture de " + fileName + " impossible", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            //    return;
+            //}
+
+            //xlWorkSheet.Cells[2, 2].Value = text_nom_sta.Text;
+            //xlWorkSheet.Cells[3, 2].Value = text_adr1_sta.Text;
+            //xlWorkSheet.Cells[4, 2].Value = text_adr2_sta.Text;
+            //xlWorkSheet.Cells[5, 2].Value = text_cp_sta.Text+"-"+text_ville_sta.Text;
+            //xlWorkSheet.Cells[6, 2].Value = combo_pays_sta.Text;
+            //xlWorkSheet.Cells[8, 2].Value = text_tel_sta.Text;
+
+            //xlWorkSheet.Cells[3, 8].Value = DateTime.Now.ToString("Le : dd/MM/yyyy");
+            //xlWorkSheet.Cells[14, 2].Value = "Ref : Ravitaillement "+Program.nom_ope+" du "+dt_date_sta.Value.ToString("dd/MM/yy");
+
+            //xlWorkBook.Save();
+            //xlApp.Quit();
+
+
+
+
+
+
+
+    }
+}

+ 138 - 0
Fuel_ASO/f_station.resx

@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbstationBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>28, 20</value>
+  </metadata>
+  <metadata name="tbstationBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>28, 20</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>332, 23</value>
+  </metadata>
+  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>220, 20</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>332, 23</value>
+  </metadata>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>75</value>
+  </metadata>
+</root>

+ 203 - 0
Fuel_ASO/f_ticket.Designer.cs

@@ -0,0 +1,203 @@
+namespace Fuel01
+{
+    partial class f_ticket
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.tbventetmpbindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.bt_enreg = new System.Windows.Forms.Button();
+            this.dg_tmp = new System.Windows.Forms.DataGridView();
+            this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.lbl_sta = new System.Windows.Forms.Label();
+            this.lbl_vehi = new System.Windows.Forms.Label();
+            this.bt_abort = new System.Windows.Forms.Button();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventetmpbindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_tmp)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // tbventetmpbindingSource
+            // 
+            this.tbventetmpbindingSource.DataMember = "tb_vente";
+            this.tbventetmpbindingSource.DataSource = this.dataSet1;
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // bt_enreg
+            // 
+            this.bt_enreg.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.bt_enreg.Location = new System.Drawing.Point(416, 381);
+            this.bt_enreg.Margin = new System.Windows.Forms.Padding(1);
+            this.bt_enreg.Name = "bt_enreg";
+            this.bt_enreg.Size = new System.Drawing.Size(71, 25);
+            this.bt_enreg.TabIndex = 31;
+            this.bt_enreg.Text = "Enregistrer";
+            this.bt_enreg.UseVisualStyleBackColor = true;
+            this.bt_enreg.Click += new System.EventHandler(this.bt_enreg_Click);
+            // 
+            // dg_tmp
+            // 
+            this.dg_tmp.AllowUserToAddRows = false;
+            this.dg_tmp.AutoGenerateColumns = false;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dg_tmp.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dg_tmp.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_tmp.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn4,
+            this.dataGridViewTextBoxColumn6,
+            this.dataGridViewTextBoxColumn7,
+            this.dataGridViewTextBoxColumn9});
+            this.dg_tmp.DataSource = this.tbventetmpbindingSource;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dg_tmp.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dg_tmp.Location = new System.Drawing.Point(36, 134);
+            this.dg_tmp.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_tmp.Name = "dg_tmp";
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dg_tmp.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
+            this.dg_tmp.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_tmp.Size = new System.Drawing.Size(581, 225);
+            this.dg_tmp.TabIndex = 32;
+            // 
+            // dataGridViewTextBoxColumn4
+            // 
+            this.dataGridViewTextBoxColumn4.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.dataGridViewTextBoxColumn4.DataPropertyName = "prod_vt";
+            this.dataGridViewTextBoxColumn4.HeaderText = "Produit";
+            this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
+            // 
+            // dataGridViewTextBoxColumn6
+            // 
+            this.dataGridViewTextBoxColumn6.DataPropertyName = "qtt_vt";
+            this.dataGridViewTextBoxColumn6.HeaderText = "Qtt";
+            this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
+            // 
+            // dataGridViewTextBoxColumn7
+            // 
+            this.dataGridViewTextBoxColumn7.DataPropertyName = "pu_vt";
+            this.dataGridViewTextBoxColumn7.HeaderText = "PU";
+            this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7";
+            // 
+            // dataGridViewTextBoxColumn9
+            // 
+            this.dataGridViewTextBoxColumn9.DataPropertyName = "ttc_vt";
+            this.dataGridViewTextBoxColumn9.HeaderText = "Prix";
+            this.dataGridViewTextBoxColumn9.Name = "dataGridViewTextBoxColumn9";
+            // 
+            // lbl_sta
+            // 
+            this.lbl_sta.AutoSize = true;
+            this.lbl_sta.Location = new System.Drawing.Point(36, 9);
+            this.lbl_sta.Name = "lbl_sta";
+            this.lbl_sta.Size = new System.Drawing.Size(35, 13);
+            this.lbl_sta.TabIndex = 33;
+            this.lbl_sta.Text = "label1";
+            // 
+            // lbl_vehi
+            // 
+            this.lbl_vehi.AutoSize = true;
+            this.lbl_vehi.Location = new System.Drawing.Point(36, 42);
+            this.lbl_vehi.Name = "lbl_vehi";
+            this.lbl_vehi.Size = new System.Drawing.Size(35, 13);
+            this.lbl_vehi.TabIndex = 34;
+            this.lbl_vehi.Text = "label2";
+            // 
+            // bt_abort
+            // 
+            this.bt_abort.Location = new System.Drawing.Point(525, 382);
+            this.bt_abort.Name = "bt_abort";
+            this.bt_abort.Size = new System.Drawing.Size(75, 23);
+            this.bt_abort.TabIndex = 35;
+            this.bt_abort.Text = "Abandonner";
+            this.bt_abort.UseVisualStyleBackColor = true;
+            this.bt_abort.Click += new System.EventHandler(this.bt_abort_Click);
+            // 
+            // f_ticket
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(635, 428);
+            this.Controls.Add(this.bt_abort);
+            this.Controls.Add(this.lbl_vehi);
+            this.Controls.Add(this.lbl_sta);
+            this.Controls.Add(this.dg_tmp);
+            this.Controls.Add(this.bt_enreg);
+            this.Name = "f_ticket";
+            this.Text = "Ticket";
+            this.Load += new System.EventHandler(this.t_ticket_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.tbventetmpbindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_tmp)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.BindingSource tbventetmpbindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.Button bt_enreg;
+        private System.Windows.Forms.DataGridView dg_tmp;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn9;
+        private System.Windows.Forms.Label lbl_sta;
+        private System.Windows.Forms.Label lbl_vehi;
+        private System.Windows.Forms.Button bt_abort;
+    }
+}

+ 43 - 0
Fuel_ASO/f_ticket.cs

@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_ticket : Form
+    {
+        DataSet1.tb_venteDataTable myventes = null;
+        public f_ticket(DataSet1.tb_stationRow myStation, DataSet1.tb_vehiRow myVehi, DataSet1.tb_venteDataTable myventes)
+        {
+            InitializeComponent();
+            this.myventes = myventes;
+            lbl_sta.Text = String.Format("Etape {0} - {1}", myStation.etp_sta, myStation.nom_sta);
+            lbl_vehi.Text = string.Format("Véhicule {0} - {1} Conducteur {2}", myVehi.num_vehi, myVehi.immat_vehi, myVehi.cond_vehi);
+            tbventetmpbindingSource.DataSource = myventes; ;
+
+        }
+
+        private void t_ticket_Load(object sender, EventArgs e)
+        {
+
+        }
+
+        private void bt_abort_Click(object sender, EventArgs e)
+        {
+            myventes.RejectChanges();
+            this.Close();
+        }
+
+        private void bt_enreg_Click(object sender, EventArgs e)
+        {
+            myventes.AcceptChanges();
+            Close();
+        }
+    }
+}

+ 126 - 0
Fuel_ASO/f_ticket.resx

@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbventetmpbindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>211, 17</value>
+  </metadata>
+</root>

+ 475 - 0
Fuel_ASO/f_tools.Designer.cs

@@ -0,0 +1,475 @@
+namespace Fuel01
+{
+    partial class f_tools
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+            this.tsLbl1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.check_move = new System.Windows.Forms.CheckBox();
+            this.bt_loadVT = new System.Windows.Forms.Button();
+            this.bt_trait = new System.Windows.Forms.Button();
+            this.bt_getdatas = new System.Windows.Forms.Button();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.label1 = new System.Windows.Forms.Label();
+            this.splitContainer3 = new System.Windows.Forms.SplitContainer();
+            this.textResult = new System.Windows.Forms.TextBox();
+            this.splitContainer4 = new System.Windows.Forms.SplitContainer();
+            this.check_modif = new System.Windows.Forms.CheckBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.dg_vente = new System.Windows.Forms.DataGridView();
+            this.epreuvevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.stationvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.vehivtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.prodvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.qttvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.puvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tvavtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ttcvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tbventeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
+            this.statusStrip1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
+            this.splitContainer3.Panel1.SuspendLayout();
+            this.splitContainer3.Panel2.SuspendLayout();
+            this.splitContainer3.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit();
+            this.splitContainer4.Panel1.SuspendLayout();
+            this.splitContainer4.Panel2.SuspendLayout();
+            this.splitContainer4.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // statusStrip1
+            // 
+            this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.tsLbl1});
+            this.statusStrip1.Location = new System.Drawing.Point(0, 449);
+            this.statusStrip1.Name = "statusStrip1";
+            this.statusStrip1.Size = new System.Drawing.Size(744, 22);
+            this.statusStrip1.TabIndex = 0;
+            this.statusStrip1.Text = "statusStrip1";
+            // 
+            // tsLbl1
+            // 
+            this.tsLbl1.Name = "tsLbl1";
+            this.tsLbl1.Size = new System.Drawing.Size(0, 17);
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.check_move);
+            this.splitContainer1.Panel1.Controls.Add(this.bt_loadVT);
+            this.splitContainer1.Panel1.Controls.Add(this.bt_trait);
+            this.splitContainer1.Panel1.Controls.Add(this.bt_getdatas);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(744, 449);
+            this.splitContainer1.SplitterDistance = 181;
+            this.splitContainer1.TabIndex = 1;
+            // 
+            // check_move
+            // 
+            this.check_move.AutoSize = true;
+            this.check_move.Location = new System.Drawing.Point(22, 150);
+            this.check_move.Name = "check_move";
+            this.check_move.Size = new System.Drawing.Size(147, 17);
+            this.check_move.TabIndex = 3;
+            this.check_move.Text = "Déplacer après traitement";
+            this.toolTip1.SetToolTip(this.check_move, "Déplce dans le sous-répertoire in/done les fichiers après traitement");
+            this.check_move.UseVisualStyleBackColor = true;
+            this.check_move.Visible = false;
+            // 
+            // bt_loadVT
+            // 
+            this.bt_loadVT.Location = new System.Drawing.Point(22, 336);
+            this.bt_loadVT.Name = "bt_loadVT";
+            this.bt_loadVT.Size = new System.Drawing.Size(147, 38);
+            this.bt_loadVT.TabIndex = 2;
+            this.bt_loadVT.Text = "Charger Ventes";
+            this.toolTip1.SetToolTip(this.bt_loadVT, "Charge les ventes dans le tableau de droite");
+            this.bt_loadVT.UseVisualStyleBackColor = true;
+            this.bt_loadVT.Visible = false;
+            this.bt_loadVT.Click += new System.EventHandler(this.bt_loadVT_Click);
+            // 
+            // bt_trait
+            // 
+            this.bt_trait.Location = new System.Drawing.Point(22, 89);
+            this.bt_trait.Name = "bt_trait";
+            this.bt_trait.Size = new System.Drawing.Size(147, 38);
+            this.bt_trait.TabIndex = 1;
+            this.bt_trait.Text = "Traitement des fichiers";
+            this.toolTip1.SetToolTip(this.bt_trait, "Intègre les données préalabement récupérées depuis le serveur");
+            this.bt_trait.UseVisualStyleBackColor = true;
+            this.bt_trait.Click += new System.EventHandler(this.bt_trait_Click);
+            // 
+            // bt_getdatas
+            // 
+            this.bt_getdatas.Location = new System.Drawing.Point(22, 36);
+            this.bt_getdatas.Name = "bt_getdatas";
+            this.bt_getdatas.Size = new System.Drawing.Size(147, 36);
+            this.bt_getdatas.TabIndex = 0;
+            this.bt_getdatas.Text = "Télécharger Achats";
+            this.toolTip1.SetToolTip(this.bt_getdatas, "Récupère les informations saisies sur les tablettes sur le serveur");
+            this.bt_getdatas.UseVisualStyleBackColor = true;
+            this.bt_getdatas.Click += new System.EventHandler(this.bt_getdatas_Click);
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.label1);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.splitContainer3);
+            this.splitContainer2.Size = new System.Drawing.Size(559, 449);
+            this.splitContainer2.SplitterDistance = 26;
+            this.splitContainer2.TabIndex = 4;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(0, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(43, 13);
+            this.label1.TabIndex = 3;
+            this.label1.Text = "Traces ";
+            // 
+            // splitContainer3
+            // 
+            this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer3.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer3.Name = "splitContainer3";
+            this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer3.Panel1
+            // 
+            this.splitContainer3.Panel1.Controls.Add(this.textResult);
+            // 
+            // splitContainer3.Panel2
+            // 
+            this.splitContainer3.Panel2.Controls.Add(this.splitContainer4);
+            this.splitContainer3.Size = new System.Drawing.Size(559, 419);
+            this.splitContainer3.SplitterDistance = 133;
+            this.splitContainer3.TabIndex = 0;
+            // 
+            // textResult
+            // 
+            this.textResult.AcceptsReturn = true;
+            this.textResult.AcceptsTab = true;
+            this.textResult.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.textResult.Location = new System.Drawing.Point(0, 0);
+            this.textResult.Multiline = true;
+            this.textResult.Name = "textResult";
+            this.textResult.ReadOnly = true;
+            this.textResult.ScrollBars = System.Windows.Forms.ScrollBars.Both;
+            this.textResult.Size = new System.Drawing.Size(559, 133);
+            this.textResult.TabIndex = 1;
+            this.toolTip1.SetToolTip(this.textResult, "Affiche les informations de traitement");
+            // 
+            // splitContainer4
+            // 
+            this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer4.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer4.Name = "splitContainer4";
+            this.splitContainer4.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer4.Panel1
+            // 
+            this.splitContainer4.Panel1.Controls.Add(this.check_modif);
+            this.splitContainer4.Panel1.Controls.Add(this.label2);
+            // 
+            // splitContainer4.Panel2
+            // 
+            this.splitContainer4.Panel2.Controls.Add(this.dg_vente);
+            this.splitContainer4.Size = new System.Drawing.Size(559, 282);
+            this.splitContainer4.SplitterDistance = 28;
+            this.splitContainer4.TabIndex = 0;
+            // 
+            // check_modif
+            // 
+            this.check_modif.AutoSize = true;
+            this.check_modif.Location = new System.Drawing.Point(172, 8);
+            this.check_modif.Name = "check_modif";
+            this.check_modif.Size = new System.Drawing.Size(263, 17);
+            this.check_modif.TabIndex = 5;
+            this.check_modif.Text = "Autoriser les modifications des ventes dans la grille";
+            this.toolTip1.SetToolTip(this.check_modif, "ATTENTION.... Les modifications faites dans la grille sont dangereuses !!!");
+            this.check_modif.UseVisualStyleBackColor = true;
+            this.check_modif.Visible = false;
+            this.check_modif.CheckedChanged += new System.EventHandler(this.check_modif_CheckedChanged);
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(0, 0);
+            this.label2.Name = "label2";
+            this.label2.Padding = new System.Windows.Forms.Padding(0, 8, 0, 0);
+            this.label2.Size = new System.Drawing.Size(40, 21);
+            this.label2.TabIndex = 4;
+            this.label2.Text = "Ventes";
+            // 
+            // dg_vente
+            // 
+            this.dg_vente.AllowUserToAddRows = false;
+            this.dg_vente.AllowUserToDeleteRows = false;
+            this.dg_vente.AutoGenerateColumns = false;
+            this.dg_vente.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vente.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.epreuvevtDataGridViewTextBoxColumn,
+            this.stationvtDataGridViewTextBoxColumn,
+            this.vehivtDataGridViewTextBoxColumn,
+            this.prodvtDataGridViewTextBoxColumn,
+            this.datevtDataGridViewTextBoxColumn,
+            this.qttvtDataGridViewTextBoxColumn,
+            this.puvtDataGridViewTextBoxColumn,
+            this.tvavtDataGridViewTextBoxColumn,
+            this.ttcvtDataGridViewTextBoxColumn});
+            this.dg_vente.DataSource = this.tbventeBindingSource;
+            this.dg_vente.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_vente.Location = new System.Drawing.Point(0, 0);
+            this.dg_vente.Name = "dg_vente";
+            this.dg_vente.ReadOnly = true;
+            this.dg_vente.Size = new System.Drawing.Size(559, 250);
+            this.dg_vente.TabIndex = 2;
+            this.dg_vente.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.dg_vente_CellEndEdit);
+            // 
+            // epreuvevtDataGridViewTextBoxColumn
+            // 
+            this.epreuvevtDataGridViewTextBoxColumn.DataPropertyName = "epreuve_vt";
+            this.epreuvevtDataGridViewTextBoxColumn.HeaderText = "epreuve_vt";
+            this.epreuvevtDataGridViewTextBoxColumn.Name = "epreuvevtDataGridViewTextBoxColumn";
+            this.epreuvevtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.epreuvevtDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // stationvtDataGridViewTextBoxColumn
+            // 
+            this.stationvtDataGridViewTextBoxColumn.DataPropertyName = "station_vt";
+            this.stationvtDataGridViewTextBoxColumn.HeaderText = "Station";
+            this.stationvtDataGridViewTextBoxColumn.Name = "stationvtDataGridViewTextBoxColumn";
+            this.stationvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.stationvtDataGridViewTextBoxColumn.Width = 60;
+            // 
+            // vehivtDataGridViewTextBoxColumn
+            // 
+            this.vehivtDataGridViewTextBoxColumn.DataPropertyName = "vehi_vt";
+            this.vehivtDataGridViewTextBoxColumn.HeaderText = "Bandeau";
+            this.vehivtDataGridViewTextBoxColumn.Name = "vehivtDataGridViewTextBoxColumn";
+            this.vehivtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.vehivtDataGridViewTextBoxColumn.Width = 60;
+            // 
+            // prodvtDataGridViewTextBoxColumn
+            // 
+            this.prodvtDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.prodvtDataGridViewTextBoxColumn.DataPropertyName = "prod_vt";
+            this.prodvtDataGridViewTextBoxColumn.HeaderText = "Produit";
+            this.prodvtDataGridViewTextBoxColumn.Name = "prodvtDataGridViewTextBoxColumn";
+            this.prodvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // datevtDataGridViewTextBoxColumn
+            // 
+            this.datevtDataGridViewTextBoxColumn.DataPropertyName = "date_vt";
+            dataGridViewCellStyle1.Format = "M";
+            dataGridViewCellStyle1.NullValue = null;
+            this.datevtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle1;
+            this.datevtDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.datevtDataGridViewTextBoxColumn.Name = "datevtDataGridViewTextBoxColumn";
+            this.datevtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.datevtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // qttvtDataGridViewTextBoxColumn
+            // 
+            this.qttvtDataGridViewTextBoxColumn.DataPropertyName = "qtt_vt";
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle2.Format = "N2";
+            this.qttvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle2;
+            this.qttvtDataGridViewTextBoxColumn.HeaderText = "Qtt";
+            this.qttvtDataGridViewTextBoxColumn.Name = "qttvtDataGridViewTextBoxColumn";
+            this.qttvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.qttvtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // puvtDataGridViewTextBoxColumn
+            // 
+            this.puvtDataGridViewTextBoxColumn.DataPropertyName = "pu_vt";
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle3.Format = "N2";
+            this.puvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle3;
+            this.puvtDataGridViewTextBoxColumn.HeaderText = "PU";
+            this.puvtDataGridViewTextBoxColumn.Name = "puvtDataGridViewTextBoxColumn";
+            this.puvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.puvtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // tvavtDataGridViewTextBoxColumn
+            // 
+            this.tvavtDataGridViewTextBoxColumn.DataPropertyName = "tva_vt";
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle4.Format = "N2";
+            this.tvavtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle4;
+            this.tvavtDataGridViewTextBoxColumn.HeaderText = "TVA";
+            this.tvavtDataGridViewTextBoxColumn.Name = "tvavtDataGridViewTextBoxColumn";
+            this.tvavtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.tvavtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // ttcvtDataGridViewTextBoxColumn
+            // 
+            this.ttcvtDataGridViewTextBoxColumn.DataPropertyName = "ttc_vt";
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Format = "N2";
+            dataGridViewCellStyle5.NullValue = null;
+            this.ttcvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle5;
+            this.ttcvtDataGridViewTextBoxColumn.HeaderText = "PrixTTC";
+            this.ttcvtDataGridViewTextBoxColumn.Name = "ttcvtDataGridViewTextBoxColumn";
+            this.ttcvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.ttcvtDataGridViewTextBoxColumn.Width = 60;
+            // 
+            // tbventeBindingSource
+            // 
+            this.tbventeBindingSource.DataMember = "tb_vente";
+            this.tbventeBindingSource.DataSource = this.dataSet1;
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // toolTip1
+            // 
+            this.toolTip1.IsBalloon = true;
+            this.toolTip1.ToolTipTitle = "Aide";
+            // 
+            // f_tools
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(744, 471);
+            this.Controls.Add(this.splitContainer1);
+            this.Controls.Add(this.statusStrip1);
+            this.Name = "f_tools";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Outils";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_tools_FormClosing);
+            this.Load += new System.EventHandler(this.f_tools_Load);
+            this.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.f_tools_MouseDoubleClick);
+            this.statusStrip1.ResumeLayout(false);
+            this.statusStrip1.PerformLayout();
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel1.PerformLayout();
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel1.PerformLayout();
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            this.splitContainer3.Panel1.ResumeLayout(false);
+            this.splitContainer3.Panel1.PerformLayout();
+            this.splitContainer3.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
+            this.splitContainer3.ResumeLayout(false);
+            this.splitContainer4.Panel1.ResumeLayout(false);
+            this.splitContainer4.Panel1.PerformLayout();
+            this.splitContainer4.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit();
+            this.splitContainer4.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.StatusStrip statusStrip1;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.Button bt_getdatas;
+        private System.Windows.Forms.Button bt_trait;
+        private System.Windows.Forms.BindingSource tbventeBindingSource;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.Button bt_loadVT;
+        private System.Windows.Forms.CheckBox check_move;
+        private System.Windows.Forms.ToolTip toolTip1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.SplitContainer splitContainer3;
+        private System.Windows.Forms.TextBox textResult;
+        private System.Windows.Forms.SplitContainer splitContainer4;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.DataGridView dg_vente;
+        private System.Windows.Forms.DataGridViewTextBoxColumn epreuvevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn stationvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn vehivtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn prodvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn qttvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn puvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tvavtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ttcvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.CheckBox check_modif;
+        private System.Windows.Forms.ToolStripStatusLabel tsLbl1;
+    }
+}

+ 344 - 0
Fuel_ASO/f_tools.cs

@@ -0,0 +1,344 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml.Serialization;
+
+namespace Fuel01
+{
+    public partial class f_tools : Form
+    {
+        int err = 0;
+        bool ok = false;
+        DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+        DataSet1.tb_prestaDataTable tb_presta = new DataSet1.tb_prestaDataTable();
+        List<string> files2move = new List<string>();
+        bool hasChanged = false;
+
+        public f_tools()
+        {
+            InitializeComponent();
+            Program.subfolder = Program.folder + @"\" + Program.key_ope;
+            if (!Directory.Exists(Program.subfolder))
+                Directory.CreateDirectory(Program.subfolder);
+
+            if (File.Exists(Program.subfolder + @"\presta_base.json"))
+                tb_presta = DbUtil.LoadFromJson<DataSet1.tb_prestaDataTable>(Program.subfolder + @"\presta_base.json", tb_presta);
+        }
+
+        private void bt_getdatas_Click(object sender, EventArgs e)
+        {
+            textResult.Text = "";
+            line_res("Connexion au serveur");
+            string url = Properties.Settings.Default.server_adress_datas ;
+            List<string> lines = readHttp_Dir(url);
+            copyHttp(lines);
+            line_res("F I N");
+        }
+
+        private void bt_trait_Click(object sender, EventArgs e)
+        {
+            this.Cursor = Cursors.WaitCursor;
+            files2move.Clear();
+            err = 0;
+            textResult.Text = "";
+            line_res("Début");
+            string[] files = Directory.GetFiles(Program.folder + @"\in", "*.json ");
+            foreach (string file in files)
+            {
+                StreamReader readStream = new StreamReader(file, Encoding.UTF8);
+                if (file.ToUpper().Contains(".GLOBAL."))
+                    streamtolist_glob(readStream, file);
+                else
+                    streamtolist_uniq(readStream, file);
+                readStream.Close();
+            }
+            line_res("F I N");
+            if (err == 0 && ok == false)
+            {
+                if (MessageBox.Show("Voulez-vous enregister les achats", "Aucune erreur", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+                {
+                    ok = true;
+                    init_vente();
+                    bt_trait_Click(sender, e);
+                    tb_vente.WriteXml(Program.subfolder + @"\vente.xml", XmlWriteMode.WriteSchema);
+                    hasChanged = false;
+                    foreach (string file in files2move)
+                        File.Move(file, file.Replace(Program.folder + @"\in", Program.folder + @"\in\done"));
+                }
+            }
+            else
+                ok = false;
+            this.Cursor = Cursors.Default;
+        }
+
+        private void init_vente()
+        {
+            tb_vente.Clear();
+            if (File.Exists(Program.subfolder + @"\vente.json"))
+                tb_vente = DbUtil.LoadFromJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente.json", tb_vente);
+            tb_vente.AcceptChanges();
+            tbventeBindingSource.DataSource = tb_vente;
+
+        }
+
+        /// <summary>
+        /// Récupère les nom de fichiers à partir d'un repertoire listé en HTML
+        /// </summary>
+        /// <param name="url_txt">URL à lister</param>
+        /// <returns>liste  Urls des fichiers distants</returns>
+        private List<string> readHttp_Dir(string url_txt)
+        {
+
+            string dep = "<A HREF=\"";
+            string fin = "\">";
+            string block = "";
+            Uri url = new Uri(url_txt);
+            List<string> lines = new List<string>();
+            try
+            {
+                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+
+                //// Set some reasonable limits on resources used by this request
+                //request.MaximumAutomaticRedirections = 4;
+                //request.MaximumResponseHeadersLength = 4;
+                //// Set credentials to use for this request.
+                //request.Credentials = CredentialCache.DefaultCredentials;
+                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
+                Stream receiveStream = response.GetResponseStream();
+                StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
+                block = readStream.ReadToEnd();
+                response.Close();
+                readStream.Close();
+
+
+                int posd = 0;
+                int posf = 0;
+                while ((posd = block.IndexOf(dep, posd)) > 0)
+                {
+                    Console.WriteLine(posd);
+                    posd += dep.Length;
+                    posf = block.IndexOf(fin, posd);
+                    if (posf < 0) break;
+                    string line = block.Substring(posd, posf - posd);
+                    if (line.Contains("/Station_") && line.ToUpper().EndsWith(".XML"))
+                        lines.Add("http://" + response.ResponseUri.Host + line);
+                }
+            }
+            catch (System.Net.WebException ex)
+            {
+                MessageBox.Show(ex.Message, "Err. Net");
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show(ex.Message, "Err. Autre");
+            }
+            line_res(lines.Count.ToString() + " Fichiers trouvés");
+            return lines;
+        }
+
+        /// <summary>
+        /// Copy localement (sous programmData/xxxx/xxxx) une liste de fichiers issue d"un répertoire HTML
+        /// </summary>
+        /// <param name="lines">liste des URL des fichiers distants</param>
+        private void copyHttp(List<string> lines)
+        {
+            foreach (string line in lines)
+            {
+                Uri url = new Uri(line);
+                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+
+                // Set some reasonable limits on resources used by this request
+                request.MaximumAutomaticRedirections = 4;
+                request.MaximumResponseHeadersLength = 4;
+                // Set credentials to use for this request.
+                request.Credentials = CredentialCache.DefaultCredentials;
+                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
+                if (!File.Exists(Program.folder + @"\in\" + response.ResponseUri.Segments[response.ResponseUri.Segments.Length - 1]) && !File.Exists(Program.folder + @"\in\done\" + response.ResponseUri.Segments[response.ResponseUri.Segments.Length - 1]))
+                {
+                    text_res("Copie de " + response.ResponseUri.Segments[response.ResponseUri.Segments.Length - 1]);
+                    Stream receiveStream = response.GetResponseStream();
+                    StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
+                    StreamWriter writeStream = new StreamWriter(Program.folder + @"\in\" + response.ResponseUri.Segments[response.ResponseUri.Segments.Length - 1], false, Encoding.UTF8);
+                    writeStream.Write(readStream.ReadToEnd());
+                    writeStream.Close();
+                    readStream.Close();
+                    line_res("   . OK");
+                }
+                response.Close();
+            }
+        }
+
+        private void streamtolist_glob(StreamReader readStream, string file)
+        {
+
+            XmlSerializer xs = new XmlSerializer(typeof(List<Achats>));
+            List<Achats> ListAchats = new List<Achats>();
+            try
+            {
+                using (readStream)
+                    ListAchats = xs.Deserialize(readStream) as List<Achats>;
+            }
+            catch (Exception ex)
+            {
+                err++;
+                line_res("ERREUR Fichier : " + file);
+                MessageBox.Show(file + "\r\n" + ex.Message, "streamtolist_glob");
+            }
+
+            foreach (Achats ac in ListAchats)
+            {
+                line_res(string.Format("GLOBAL Date {0} Produit {1}  PTTC {2}", ac.Date, ac.KindCarbu, ac.MontantCarbu));
+                if (ok)
+                {
+                    traite(ac);
+                }
+            }
+            if (ok && err == 0) files2move.Add(file);  // Normalement err toujours à zero pour autoriser le traitement cad ok=true;
+
+        }
+
+        private void streamtolist_uniq(StreamReader readStream, string file)
+        {
+            XmlSerializer xs = new XmlSerializer(typeof(Achats));
+            Achats ac = null;
+            try
+            {
+                using (readStream)
+                    ac = xs.Deserialize(readStream) as Achats;
+
+                line_res(string.Format("UNIQ Date {0} Produit {1}  PTTC {2}", ac.Date, ac.KindCarbu, ac.MontantCarbu));
+                if (ok)
+                {
+                    traite(ac);
+                    files2move.Add(file);
+                }
+            }
+            catch (Exception ex)
+            {
+                err++;
+                line_res("ERREUR Fichier : " + file);
+                MessageBox.Show(file + "\r\n" + ex.Message, "streamtolist_uniq");
+            }
+        }
+
+        private void traite(Achats ac)
+        {
+            if (ac.Volume > 0)
+            {
+                tsLbl1.Text = string.Format("Date {0} Bandeau {1}  Type {2}  Volume {3}  Total {4}", ac.Date, ac.Bandeau, ac.KindCarbu, ac.Volume, ac.MontantTotal);
+                Application.DoEvents();
+                if (tb_vente.FindByepreuve_vtstation_vtvehi_vtprod_vtdate_vt(Program.key_ope, ac.StationId.ToString(), ac.Bandeau, ac.KindCarbu, ac.Date) == null)
+                {
+                    DataSet1.tb_venteRow myrow = tb_vente.NewRow() as DataSet1.tb_venteRow;
+
+                    DataSet1.tb_prestaRow mydata = null;
+                    mydata = tb_presta.FindBysta_prprod_pr(ac.StationId.ToString(), ac.KindCarbu);
+                    if (mydata != null)
+                        ac.TxTva = (float)mydata.tva_pr;
+                    else
+                        ac.TxTva = 0;
+
+                    myrow["epreuve_vt"] = Program.key_ope;
+                    myrow["station_vt"] = ac.StationId.ToString();
+                    myrow["vehi_vt"] = ac.Bandeau;
+                    myrow["prod_vt"] = ac.KindCarbu;
+                    myrow["date_vt"] = ac.Date;
+                    myrow["qtt_vt"] = Math.Round(ac.Volume,2);
+                    myrow["pu_vt"] = Math.Round(ac.PrixCarbu,3);
+                    myrow["tva_vt"] = ac.TxTva ;
+                    myrow["ttc_vt"] = Math.Round(ac.MontantCarbu,2);
+                    myrow["ht_vt"] = Math.Round( ac.MontantCarbu / ( 1+ ( ac.TxTva/100 ) ) ,2);
+
+                    tb_vente.Addtb_venteRow(myrow);
+                    hasChanged = true;
+                }
+            }
+            foreach (PrestasFournies pf in ac.Prestas)
+            {
+                if (pf.Name != null)
+                {
+                    pf.TxTva = 0;
+                    string newName= pf.Name.ToUpper().Contains("FREE") ? (pf.Libel == null ? "Produit inconnu" : pf.Libel) : pf.Name;
+                    if (tb_vente.FindByepreuve_vtstation_vtvehi_vtprod_vtdate_vt(Program.key_ope, ac.StationId.ToString(), ac.Bandeau, newName, ac.Date) == null)
+                    {
+                        DataSet1.tb_venteRow myrow = tb_vente.NewRow() as DataSet1.tb_venteRow;
+                        myrow["epreuve_vt"] = Program.key_ope;
+                        myrow["station_vt"] = ac.StationId.ToString();
+                        myrow["vehi_vt"] = ac.Bandeau;
+                        myrow["prod_vt"] = newName;
+                        myrow["date_vt"] = ac.Date;
+                        myrow["qtt_vt"] = Math.Round(pf.Quantity,2);
+                        myrow["pu_vt"] = Math.Round(pf.PrixUnitaire,2);
+                        myrow["tva_vt"] = pf.TxTva  ; // pf.TxTva == 0 ? 20 : pf.TxTva; ;
+                        myrow["ttc_vt"] = Math.Round(pf.Total,2);
+                        myrow["ht_vt"] = Math.Round(pf.Total,2);  // Math.Round(pf.Total / (1 + ( pf.TxTva / 100)), 2);
+
+                        tb_vente.Addtb_venteRow(myrow);
+                        hasChanged = true;
+                    }
+                }
+
+            }
+            tsLbl1.Text = "";
+        }
+
+        private void text_res(string text)
+        {
+            textResult.Text += text;
+
+            textResult.ScrollToCaret();
+            Application.DoEvents();
+        }
+        private void line_res(string text)
+        {
+            textResult.Text += (text + "\r\n");
+            textResult.SelectionStart = textResult.TextLength;
+            textResult.ScrollToCaret();
+            Application.DoEvents();
+        }
+
+        private void bt_loadVT_Click(object sender, EventArgs e)
+        {
+            init_vente();
+        }
+
+        private void check_modif_CheckedChanged(object sender, EventArgs e)
+        {
+            dg_vente.AllowUserToDeleteRows = check_modif.Checked;
+            dg_vente.ReadOnly = !check_modif.Checked;
+        }
+
+        private void dg_vente_CellEndEdit(object sender, DataGridViewCellEventArgs e)
+        {
+            hasChanged = true;
+        }
+
+        private void f_tools_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if ( hasChanged)
+                if ( MessageBox.Show("Voulez-vous sauvegarder les modifications ?","Modifications non sauvegardées",MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)== System.Windows.Forms.DialogResult.Yes)
+                    DbUtil.SaveToJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente.json", tb_vente);
+            e.Cancel = false;
+        }
+
+        private void f_tools_Load(object sender, EventArgs e)
+        {
+
+        }
+
+        private void f_tools_MouseDoubleClick(object sender, MouseEventArgs e)
+        {
+            string input = "";
+            if (Program.ShowInputDialog("Contrôle", "Entrez le mot de passe", ref input, true) == DialogResult.OK)
+                    splitContainer1.Enabled = (input == "fuel2016");
+        }
+    }
+}

+ 132 - 0
Fuel_ASO/f_tools.resx

@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>404, 17</value>
+  </metadata>
+  <metadata name="tbventeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>232, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>133, 17</value>
+  </metadata>
+</root>

+ 588 - 0
Fuel_ASO/f_vehi.Designer.cs

@@ -0,0 +1,588 @@
+namespace Fuel01
+{
+    partial class f_vehi
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.tbvehiculeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+            this.st1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.StatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.dg_vehi = new System.Windows.Forms.DataGridView();
+            this.sort1_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.categ_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.num_vehiCol = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmpnum_vehiCol = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cond_vehiCol = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.immat_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.famille_vehi = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.label9 = new System.Windows.Forms.Label();
+            this.bt_Sup = new System.Windows.Forms.Button();
+            this.Bt_Abort = new System.Windows.Forms.Button();
+            this.bt_Valid = new System.Windows.Forms.Button();
+            this.bt_Aj = new System.Windows.Forms.Button();
+            this.bt_Mod = new System.Windows.Forms.Button();
+            this.combo_famille = new System.Windows.Forms.ComboBox();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.combo_energy = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.text_cond_vehi = new System.Windows.Forms.TextBox();
+            this.text_kmarr_vehi = new System.Windows.Forms.TextBox();
+            this.text_kmdep_vehi = new System.Windows.Forms.TextBox();
+            this.text_type_vehi = new System.Windows.Forms.TextBox();
+            this.text_cmpnum_vehi = new System.Windows.Forms.TextBox();
+            this.text_num_vehi = new System.Windows.Forms.TextBox();
+            this.text_immat_vehi = new System.Windows.Forms.TextBox();
+            this.combo_categ_vehi = new System.Windows.Forms.ComboBox();
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiculeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            this.statusStrip1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vehi)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // tbvehiculeBindingSource
+            // 
+            this.tbvehiculeBindingSource.DataMember = "tb_vehi";
+            this.tbvehiculeBindingSource.DataSource = this.dataSet1;
+            this.tbvehiculeBindingSource.Sort = "sort1_vehi";
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // statusStrip1
+            // 
+            this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.st1,
+            this.StatusLabel1});
+            this.statusStrip1.Location = new System.Drawing.Point(0, 437);
+            this.statusStrip1.Name = "statusStrip1";
+            this.statusStrip1.Padding = new System.Windows.Forms.Padding(1, 0, 10, 0);
+            this.statusStrip1.Size = new System.Drawing.Size(1030, 22);
+            this.statusStrip1.TabIndex = 27;
+            this.statusStrip1.Text = "statusStrip1";
+            // 
+            // st1
+            // 
+            this.st1.Name = "st1";
+            this.st1.Size = new System.Drawing.Size(0, 17);
+            // 
+            // StatusLabel1
+            // 
+            this.StatusLabel1.Name = "StatusLabel1";
+            this.StatusLabel1.Size = new System.Drawing.Size(16, 17);
+            this.StatusLabel1.Text = "...";
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(1030, 437);
+            this.splitContainer1.SplitterDistance = 28;
+            this.splitContainer1.TabIndex = 29;
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.dg_vehi);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.combo_categ_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.label9);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Sup);
+            this.splitContainer2.Panel2.Controls.Add(this.Bt_Abort);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Valid);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Aj);
+            this.splitContainer2.Panel2.Controls.Add(this.bt_Mod);
+            this.splitContainer2.Panel2.Controls.Add(this.combo_famille);
+            this.splitContainer2.Panel2.Controls.Add(this.label8);
+            this.splitContainer2.Panel2.Controls.Add(this.label7);
+            this.splitContainer2.Panel2.Controls.Add(this.label6);
+            this.splitContainer2.Panel2.Controls.Add(this.label5);
+            this.splitContainer2.Panel2.Controls.Add(this.label4);
+            this.splitContainer2.Panel2.Controls.Add(this.combo_energy);
+            this.splitContainer2.Panel2.Controls.Add(this.label3);
+            this.splitContainer2.Panel2.Controls.Add(this.label2);
+            this.splitContainer2.Panel2.Controls.Add(this.label1);
+            this.splitContainer2.Panel2.Controls.Add(this.text_cond_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_kmarr_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_kmdep_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_type_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_cmpnum_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_num_vehi);
+            this.splitContainer2.Panel2.Controls.Add(this.text_immat_vehi);
+            this.splitContainer2.Size = new System.Drawing.Size(1030, 405);
+            this.splitContainer2.SplitterDistance = 713;
+            this.splitContainer2.TabIndex = 2;
+            // 
+            // dg_vehi
+            // 
+            this.dg_vehi.AllowUserToAddRows = false;
+            this.dg_vehi.AllowUserToDeleteRows = false;
+            this.dg_vehi.AllowUserToOrderColumns = true;
+            this.dg_vehi.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vehi.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.sort1_vehi,
+            this.categ_vehi,
+            this.num_vehiCol,
+            this.cmpnum_vehiCol,
+            this.cond_vehiCol,
+            this.immat_vehi,
+            this.famille_vehi});
+            this.dg_vehi.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_vehi.Location = new System.Drawing.Point(0, 0);
+            this.dg_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.dg_vehi.Name = "dg_vehi";
+            this.dg_vehi.ReadOnly = true;
+            this.dg_vehi.RowTemplate.Height = 24;
+            this.dg_vehi.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_vehi.Size = new System.Drawing.Size(713, 405);
+            this.dg_vehi.TabIndex = 2;
+            // 
+            // sort1_vehi
+            // 
+            this.sort1_vehi.DataPropertyName = "sort1_vehi";
+            this.sort1_vehi.HeaderText = "Clé";
+            this.sort1_vehi.Name = "sort1_vehi";
+            this.sort1_vehi.ReadOnly = true;
+            // 
+            // categ_vehi
+            // 
+            this.categ_vehi.DataPropertyName = "categ_vehi";
+            this.categ_vehi.HeaderText = "Categ";
+            this.categ_vehi.Name = "categ_vehi";
+            this.categ_vehi.ReadOnly = true;
+            this.categ_vehi.Width = 50;
+            // 
+            // num_vehiCol
+            // 
+            this.num_vehiCol.DataPropertyName = "num_vehi";
+            dataGridViewCellStyle2.Format = "###0";
+            dataGridViewCellStyle2.NullValue = null;
+            this.num_vehiCol.DefaultCellStyle = dataGridViewCellStyle2;
+            this.num_vehiCol.HeaderText = "Numéro";
+            this.num_vehiCol.Name = "num_vehiCol";
+            this.num_vehiCol.ReadOnly = true;
+            this.num_vehiCol.Width = 60;
+            // 
+            // cmpnum_vehiCol
+            // 
+            this.cmpnum_vehiCol.DataPropertyName = "cmpnum_vehi";
+            this.cmpnum_vehiCol.HeaderText = "Cp";
+            this.cmpnum_vehiCol.Name = "cmpnum_vehiCol";
+            this.cmpnum_vehiCol.ReadOnly = true;
+            this.cmpnum_vehiCol.Width = 30;
+            // 
+            // cond_vehiCol
+            // 
+            this.cond_vehiCol.DataPropertyName = "cond_vehi";
+            this.cond_vehiCol.HeaderText = "Conducteur";
+            this.cond_vehiCol.Name = "cond_vehiCol";
+            this.cond_vehiCol.ReadOnly = true;
+            this.cond_vehiCol.Width = 120;
+            // 
+            // immat_vehi
+            // 
+            this.immat_vehi.DataPropertyName = "immat_vehi";
+            this.immat_vehi.HeaderText = "Immatriculation";
+            this.immat_vehi.Name = "immat_vehi";
+            this.immat_vehi.ReadOnly = true;
+            // 
+            // famille_vehi
+            // 
+            this.famille_vehi.DataPropertyName = "famille_vehi";
+            this.famille_vehi.HeaderText = "Famille";
+            this.famille_vehi.Name = "famille_vehi";
+            this.famille_vehi.ReadOnly = true;
+            this.famille_vehi.Width = 150;
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.Location = new System.Drawing.Point(52, 64);
+            this.label9.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(35, 13);
+            this.label9.TabIndex = 47;
+            this.label9.Text = "Categ";
+            // 
+            // bt_Sup
+            // 
+            this.bt_Sup.Location = new System.Drawing.Point(206, 259);
+            this.bt_Sup.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Sup.Name = "bt_Sup";
+            this.bt_Sup.Size = new System.Drawing.Size(66, 19);
+            this.bt_Sup.TabIndex = 13;
+            this.bt_Sup.Text = "Supprimer";
+            this.bt_Sup.UseVisualStyleBackColor = true;
+            this.bt_Sup.Click += new System.EventHandler(this.bt_Sup_Click);
+            // 
+            // Bt_Abort
+            // 
+            this.Bt_Abort.Location = new System.Drawing.Point(194, 297);
+            this.Bt_Abort.Margin = new System.Windows.Forms.Padding(2);
+            this.Bt_Abort.Name = "Bt_Abort";
+            this.Bt_Abort.Size = new System.Drawing.Size(77, 19);
+            this.Bt_Abort.TabIndex = 15;
+            this.Bt_Abort.Text = "Abandonner";
+            this.Bt_Abort.UseVisualStyleBackColor = true;
+            this.Bt_Abort.Click += new System.EventHandler(this.Bt_Abort_Click);
+            // 
+            // bt_Valid
+            // 
+            this.bt_Valid.Location = new System.Drawing.Point(55, 297);
+            this.bt_Valid.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Valid.Name = "bt_Valid";
+            this.bt_Valid.Size = new System.Drawing.Size(76, 19);
+            this.bt_Valid.TabIndex = 14;
+            this.bt_Valid.Text = "Valider";
+            this.bt_Valid.UseVisualStyleBackColor = true;
+            this.bt_Valid.Click += new System.EventHandler(this.bt_Valid_Click);
+            // 
+            // bt_Aj
+            // 
+            this.bt_Aj.Location = new System.Drawing.Point(130, 259);
+            this.bt_Aj.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Aj.Name = "bt_Aj";
+            this.bt_Aj.Size = new System.Drawing.Size(56, 19);
+            this.bt_Aj.TabIndex = 12;
+            this.bt_Aj.Text = "Ajouter";
+            this.bt_Aj.UseVisualStyleBackColor = true;
+            this.bt_Aj.Click += new System.EventHandler(this.bt_Aj_Click);
+            // 
+            // bt_Mod
+            // 
+            this.bt_Mod.Location = new System.Drawing.Point(54, 259);
+            this.bt_Mod.Margin = new System.Windows.Forms.Padding(2);
+            this.bt_Mod.Name = "bt_Mod";
+            this.bt_Mod.Size = new System.Drawing.Size(56, 19);
+            this.bt_Mod.TabIndex = 11;
+            this.bt_Mod.Text = "Modifier";
+            this.bt_Mod.UseVisualStyleBackColor = true;
+            this.bt_Mod.Click += new System.EventHandler(this.bt_Mod_Click);
+            // 
+            // combo_famille
+            // 
+            this.combo_famille.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "famille_vehi", true));
+            this.combo_famille.FormattingEnabled = true;
+            this.combo_famille.Items.AddRange(new object[] {
+            "Diesel",
+            "SS plomb 95",
+            "SS plomb 98"});
+            this.combo_famille.Location = new System.Drawing.Point(91, 187);
+            this.combo_famille.Margin = new System.Windows.Forms.Padding(2);
+            this.combo_famille.Name = "combo_famille";
+            this.combo_famille.Size = new System.Drawing.Size(164, 21);
+            this.combo_famille.TabIndex = 9;
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(22, 214);
+            this.label8.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(62, 13);
+            this.label8.TabIndex = 45;
+            this.label8.Text = "Conducteur";
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(43, 189);
+            this.label7.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(39, 13);
+            this.label7.TabIndex = 44;
+            this.label7.Text = "Famille";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(150, 162);
+            this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(41, 13);
+            this.label6.TabIndex = 7;
+            this.label6.Text = "KM arr.";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(37, 158);
+            this.label5.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(47, 13);
+            this.label5.TabIndex = 42;
+            this.label5.Text = "KM dép.";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(29, 135);
+            this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(53, 13);
+            this.label4.TabIndex = 41;
+            this.label4.Text = "Carburant";
+            // 
+            // combo_energy
+            // 
+            this.combo_energy.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "carbu_vehi", true));
+            this.combo_energy.FormattingEnabled = true;
+            this.combo_energy.Items.AddRange(new object[] {
+            "Diesel",
+            "SS plomb 95",
+            "SS plomb 98"});
+            this.combo_energy.Location = new System.Drawing.Point(91, 138);
+            this.combo_energy.Margin = new System.Windows.Forms.Padding(2);
+            this.combo_energy.Name = "combo_energy";
+            this.combo_energy.Size = new System.Drawing.Size(164, 21);
+            this.combo_energy.TabIndex = 5;
+            this.combo_energy.TextUpdate += new System.EventHandler(this.combo_energy_TextUpdate);
+            this.combo_energy.TextChanged += new System.EventHandler(this.combo_energy_TextUpdate);
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(52, 113);
+            this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(31, 13);
+            this.label3.TabIndex = 39;
+            this.label3.Text = "Type";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(34, 89);
+            this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(50, 13);
+            this.label2.TabIndex = 38;
+            this.label2.Text = "N°Immat.";
+            this.label2.Click += new System.EventHandler(this.label2_Click);
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(39, 40);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(44, 13);
+            this.label1.TabIndex = 37;
+            this.label1.Text = "Numero";
+            // 
+            // text_cond_vehi
+            // 
+            this.text_cond_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "cond_vehi", true));
+            this.text_cond_vehi.Location = new System.Drawing.Point(91, 212);
+            this.text_cond_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_cond_vehi.Name = "text_cond_vehi";
+            this.text_cond_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_cond_vehi.TabIndex = 10;
+            // 
+            // text_kmarr_vehi
+            // 
+            this.text_kmarr_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "kmarr_vehi", true));
+            this.text_kmarr_vehi.Location = new System.Drawing.Point(199, 161);
+            this.text_kmarr_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_kmarr_vehi.Name = "text_kmarr_vehi";
+            this.text_kmarr_vehi.Size = new System.Drawing.Size(56, 20);
+            this.text_kmarr_vehi.TabIndex = 8;
+            // 
+            // text_kmdep_vehi
+            // 
+            this.text_kmdep_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "kmdep_vehi", true));
+            this.text_kmdep_vehi.Location = new System.Drawing.Point(91, 163);
+            this.text_kmdep_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_kmdep_vehi.Name = "text_kmdep_vehi";
+            this.text_kmdep_vehi.Size = new System.Drawing.Size(52, 20);
+            this.text_kmdep_vehi.TabIndex = 6;
+            // 
+            // text_type_vehi
+            // 
+            this.text_type_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "type_vehi", true));
+            this.text_type_vehi.Location = new System.Drawing.Point(91, 114);
+            this.text_type_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_type_vehi.Name = "text_type_vehi";
+            this.text_type_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_type_vehi.TabIndex = 4;
+            // 
+            // text_cmpnum_vehi
+            // 
+            this.text_cmpnum_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "cmpnum_vehi", true));
+            this.text_cmpnum_vehi.Location = new System.Drawing.Point(207, 40);
+            this.text_cmpnum_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_cmpnum_vehi.Name = "text_cmpnum_vehi";
+            this.text_cmpnum_vehi.Size = new System.Drawing.Size(55, 20);
+            this.text_cmpnum_vehi.TabIndex = 1;
+            this.text_cmpnum_vehi.Leave += new System.EventHandler(this.text_num_vehi_Leave);
+            // 
+            // text_num_vehi
+            // 
+            this.text_num_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "num_vehi", true));
+            this.text_num_vehi.Location = new System.Drawing.Point(91, 40);
+            this.text_num_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_num_vehi.Name = "text_num_vehi";
+            this.text_num_vehi.Size = new System.Drawing.Size(112, 20);
+            this.text_num_vehi.TabIndex = 0;
+            this.text_num_vehi.Leave += new System.EventHandler(this.text_num_vehi_Leave);
+            // 
+            // text_immat_vehi
+            // 
+            this.text_immat_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "immat_vehi", true));
+            this.text_immat_vehi.Location = new System.Drawing.Point(91, 90);
+            this.text_immat_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.text_immat_vehi.Name = "text_immat_vehi";
+            this.text_immat_vehi.Size = new System.Drawing.Size(164, 20);
+            this.text_immat_vehi.TabIndex = 3;
+            this.text_immat_vehi.TextChanged += new System.EventHandler(this.text_immat_vehi_TextChanged);
+            // 
+            // combo_categ_vehi
+            // 
+            this.combo_categ_vehi.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.tbvehiculeBindingSource, "categ_vehi", true));
+            this.combo_categ_vehi.FormattingEnabled = true;
+            this.combo_categ_vehi.Items.AddRange(new object[] {
+            "A",
+            "M"});
+            this.combo_categ_vehi.Location = new System.Drawing.Point(91, 65);
+            this.combo_categ_vehi.Margin = new System.Windows.Forms.Padding(2);
+            this.combo_categ_vehi.Name = "combo_categ_vehi";
+            this.combo_categ_vehi.Size = new System.Drawing.Size(52, 21);
+            this.combo_categ_vehi.TabIndex = 2;
+            // 
+            // f_vehi
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1030, 459);
+            this.Controls.Add(this.splitContainer1);
+            this.Controls.Add(this.statusStrip1);
+            this.Margin = new System.Windows.Forms.Padding(2);
+            this.Name = "f_vehi";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.Text = "Véhicules";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.f_vehi_FormClosing);
+            this.Load += new System.EventHandler(this.vehi_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.tbvehiculeBindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            this.statusStrip1.ResumeLayout(false);
+            this.statusStrip1.PerformLayout();
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            this.splitContainer2.Panel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vehi)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.BindingSource tbvehiculeBindingSource;
+        private System.Windows.Forms.DataGridViewTextBoxColumn idDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn immatDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn familleDataGridViewTextBoxColumn;
+        private System.Windows.Forms.StatusStrip statusStrip1;
+        private System.Windows.Forms.ToolStripStatusLabel st1;
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.DataGridView dg_vehi;
+        private System.Windows.Forms.Button bt_Sup;
+        private System.Windows.Forms.Button Bt_Abort;
+        private System.Windows.Forms.Button bt_Valid;
+        private System.Windows.Forms.Button bt_Aj;
+        private System.Windows.Forms.Button bt_Mod;
+        private System.Windows.Forms.ComboBox combo_famille;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.ComboBox combo_energy;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox text_cond_vehi;
+        private System.Windows.Forms.TextBox text_kmarr_vehi;
+        private System.Windows.Forms.TextBox text_kmdep_vehi;
+        private System.Windows.Forms.TextBox text_type_vehi;
+        private System.Windows.Forms.TextBox text_cmpnum_vehi;
+        private System.Windows.Forms.TextBox text_num_vehi;
+        private System.Windows.Forms.TextBox text_immat_vehi;
+        private System.Windows.Forms.ToolStripStatusLabel StatusLabel1;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn famille_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn immat_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cond_vehiCol;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cmpnum_vehiCol;
+        private System.Windows.Forms.DataGridViewTextBoxColumn num_vehiCol;
+        private System.Windows.Forms.DataGridViewTextBoxColumn categ_vehi;
+        private System.Windows.Forms.DataGridViewTextBoxColumn sort1_vehi;
+        private System.Windows.Forms.ComboBox combo_categ_vehi;
+    }
+}

+ 244 - 0
Fuel_ASO/f_vehi.cs

@@ -0,0 +1,244 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Xml.Linq;
+
+namespace Fuel01
+{
+    public partial class f_vehi : Form
+    {
+        DataSet1.tb_vehiDataTable tb_vehi = new DataSet1.tb_vehiDataTable();
+        private bool hasChanged = false;
+
+        List<produit> lproduit = new List<produit>();
+        List<produit> lcarbu = new List<produit>();
+        List<famille> lfamille = new List<famille>();
+
+        public f_vehi()
+        {
+            InitializeComponent();
+            dg_vehi.AutoGenerateColumns = false;
+            dg_vehi.DataSource = tbvehiculeBindingSource;
+        }
+
+        private void vehi_Load(object sender, EventArgs e)
+        {
+
+            Program.subfolder = Program.folder + @"\" + Program.key_ope;
+            if (!Directory.Exists(Program.subfolder))
+                Directory.CreateDirectory(Program.subfolder);
+            else
+                if ( File.Exists(Program.subfolder + @"\vehicule.json"))
+                    tb_vehi = DbUtil.LoadFromJson<DataSet1.tb_vehiDataTable>(Program.subfolder + @"\vehicule.json", tb_vehi);
+            tb_vehi.AcceptChanges();
+            tbvehiculeBindingSource.DataSource = tb_vehi;
+            turn_txt(false);
+            turn_bt(false);
+            if (Program.key_ope != null)
+                this.Text = "Véhicules " + Program.nom_ope;
+
+            if (File.Exists(Program.folder + @"\param\famille.xml"))
+                init_list_famille();
+            if (File.Exists(Program.folder + @"\param\produit.xml"))
+                init_list_produit();
+
+           
+        }
+
+        private void init_list_famille()
+        {
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\famille.xml");
+            var data = from item in xRoot.Descendants("tb_famille")
+                       orderby item.Element("key_fam").Value
+                       select new famille()
+                       {
+                           key_fam = item.Element("key_fam").Value
+                       };
+            lfamille = data.ToList();
+            combo_famille.Items.Clear();
+            combo_famille.DisplayMember = "key_fam";
+            foreach (famille f in lfamille)
+                combo_famille.Items.Add(f);
+        }
+
+        private void init_list_produit()
+        {
+
+            XDocument xRoot = XDocument.Load(Program.folder + @"\param\produit.xml");
+            var data = from item in xRoot.Descendants("tb_prod")
+                       orderby item.Element("type_prod").Value, item.Element("lib_prod").Value
+                       select new produit()
+                       {
+                           key_prod = item.Element("key_prod").Value,
+                           lib_prod = item.Element("lib_prod").Value,
+                           type_prod = item.Element("type_prod").Value
+                       };
+            lproduit = data.ToList();
+            lcarbu=lproduit.Where(p => p.type_prod == "Carburant").ToList();
+            combo_energy.Items.Clear();
+            combo_energy.DisplayMember = "key_prod";
+            foreach (produit p in lcarbu)
+                combo_energy.Items.Add(p);
+        }
+
+        #region affichage
+        private void turn_txt(bool act)
+        {
+            text_immat_vehi.Enabled = act;
+            text_num_vehi.Enabled = act;
+            text_cmpnum_vehi.Enabled = act;
+            combo_categ_vehi.Enabled = act;
+            text_type_vehi.Enabled = act;
+            text_kmdep_vehi.Enabled = act;
+            text_kmarr_vehi.Enabled = act;
+            text_cond_vehi.Enabled = act;
+            combo_energy.Enabled = act;
+            combo_famille.Enabled = act;
+
+        }
+
+        private void turn_bt(bool act)
+        {
+            Bt_Abort.Enabled = act;
+            bt_Valid.Enabled = act;
+            bt_Mod.Enabled = !act;
+            bt_Aj.Enabled = !act;
+            bt_Sup.Enabled = !act;
+            dg_vehi.Enabled = !act;
+        }
+        #endregion
+
+        #region Boutons
+       
+
+        private void bt_Mod_Click(object sender, EventArgs e)
+        {
+            maj_sort_vehi();
+            turn_bt(true);
+            turn_txt(true);
+        }
+
+        private void bt_Aj_Click(object sender, EventArgs e)
+        {
+            turn_txt(true);
+            turn_bt(true);
+            string key = findNewkey();
+            DataSet1.tb_vehiRow myNewRow=tb_vehi.Newtb_vehiRow();
+            myNewRow["key_vehi"] = key;
+            myNewRow["ope_vehi"] = Program.key_ope;
+            tb_vehi.Addtb_vehiRow(myNewRow);
+            tbvehiculeBindingSource.MoveFirst();
+
+            DataRowView myRow = tbvehiculeBindingSource.Current as DataRowView;
+            while (myRow.Row["key_vehi"].ToString() != key)
+            {
+                tbvehiculeBindingSource.MoveNext();
+                myRow = tbvehiculeBindingSource.Current as DataRowView;
+            }
+        }
+
+        private void bt_Sup_Click(object sender, EventArgs e)
+        {
+            DataRowView myRow = tbvehiculeBindingSource.Current as DataRowView;
+            if (myRow == null) return;
+            string msg = string.Format("Vehicule {0}\nEtes-vous certain de vouloir supprimer \n{1}", myRow.Row["num_vehi"].ToString(), myRow.Row["immat_vehi"].ToString());
+            string caption = "Suppression définitive";
+            if (MessageBox.Show(msg, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
+            {
+                DataSet1.tb_vehiRow vehiRow = tb_vehi.FindBykey_vehi(myRow.Row["key_vehi"].ToString());
+                if (vehiRow != null)
+                    tb_vehi.Removetb_vehiRow(vehiRow);
+                hasChanged = true;
+            }
+        }
+
+        private void bt_Valid_Click(object sender, EventArgs e)
+        {
+            maj_sort_vehi();
+            tb_vehi.AcceptChanges();
+            turn_txt(false);
+            turn_bt(false);
+            hasChanged = true;
+
+        }
+
+        private void Bt_Abort_Click(object sender, EventArgs e)
+        {
+            tb_vehi.RejectChanges();
+            turn_txt(false);
+            turn_bt(false);
+        }
+        #endregion
+
+        #region fonctions
+
+        private string findNewkey()
+        {
+            Random rand1 = new Random();
+            string key = rand1.Next(99999).ToString();
+            while (tb_vehi.FindBykey_vehi(key) != null)
+            {
+                MessageBox.Show(key);
+                key = rand1.Next(99999).ToString();
+            }
+            return key;
+        }
+
+        #endregion
+
+        private void f_vehi_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (hasChanged) saveData();
+            DataTable tb_vehi_change = tb_vehi.GetChanges();
+            tb_vehi_change = null;
+            if (tb_vehi_change != null) MessageBox.Show("Veuillez Valider ou Abandonner", "Modifications en cours");
+            e.Cancel = (tb_vehi_change != null);
+        }
+
+        private void saveData()
+        {
+            if (File.Exists(Program.subfolder + @"\vehicule.json"))
+                File.Copy(Program.subfolder + @"\vehicule.json", Program.subfolder + @"\vehicule.back.json",true);
+
+            tb_vehi = DbUtil.LoadFromJson<DataSet1.tb_vehiDataTable>(Program.subfolder + @"\vehicule.json", tb_vehi);
+        }
+
+        private void combo_energy_TextUpdate(object sender, EventArgs e)
+        {
+            produit cur_Prod = lproduit.Find(p => p.key_prod == combo_energy.Text);
+            if (cur_Prod != null)
+                StatusLabel1.Text = cur_Prod.lib_prod;
+            else
+                StatusLabel1.Text = "...";
+        }
+
+        private void maj_sort_vehi()
+        {
+            DataRowView myRow = tbvehiculeBindingSource.Current as DataRowView;
+            if ( myRow!=null)
+                myRow["sort1_vehi"]= string.Format("{0}{1:00000}{2}", myRow["categ_vehi"],  myRow["num_vehi"], myRow["cmpnum_vehi"]);
+        }
+
+        private void text_num_vehi_Leave(object sender, EventArgs e)
+        {
+            maj_sort_vehi();
+        }
+
+        private void label2_Click(object sender, EventArgs e)
+        {
+
+        }
+
+        private void text_immat_vehi_TextChanged(object sender, EventArgs e)
+        {
+
+        }
+    }
+}

+ 177 - 0
Fuel_ASO/f_vehi.resx

@@ -0,0 +1,177 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tbvehiculeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>340, 17</value>
+  </metadata>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>340, 17</value>
+  </metadata>
+  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>224, 17</value>
+  </metadata>
+  <metadata name="sort1_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="categ_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="num_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="cmpnum_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="cond_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="immat_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="famille_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="sort1_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="categ_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="num_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="cmpnum_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="cond_vehiCol.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="immat_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="famille_vehi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>81</value>
+  </metadata>
+</root>

+ 319 - 0
Fuel_ASO/f_verif.Designer.cs

@@ -0,0 +1,319 @@
+namespace Fuel01
+{
+    partial class f_verif
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.dataSet1 = new Fuel01.DataSet1();
+            this.tbventeBindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+            this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+            this.button1 = new System.Windows.Forms.Button();
+            this.dg_vente = new System.Windows.Forms.DataGridView();
+            this.button2 = new System.Windows.Forms.Button();
+            this.epreuvevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.stationvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.vehivtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.prodvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.datevtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.qttvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.puvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ht_vt = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.tvavtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ttcvtDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.textErr = new System.Windows.Forms.TextBox();
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+            this.splitContainer1.Panel1.SuspendLayout();
+            this.splitContainer1.Panel2.SuspendLayout();
+            this.splitContainer1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+            this.splitContainer2.Panel1.SuspendLayout();
+            this.splitContainer2.Panel2.SuspendLayout();
+            this.splitContainer2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // dataSet1
+            // 
+            this.dataSet1.DataSetName = "DataSet1";
+            this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
+            // 
+            // tbventeBindingSource
+            // 
+            this.tbventeBindingSource.DataMember = "tb_vente";
+            this.tbventeBindingSource.DataSource = this.dataSet1;
+            // 
+            // splitContainer1
+            // 
+            this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+            this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer1.Name = "splitContainer1";
+            this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer1.Panel1
+            // 
+            this.splitContainer1.Panel1.Controls.Add(this.button2);
+            this.splitContainer1.Panel1.Controls.Add(this.button1);
+            // 
+            // splitContainer1.Panel2
+            // 
+            this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
+            this.splitContainer1.Size = new System.Drawing.Size(769, 584);
+            this.splitContainer1.SplitterDistance = 68;
+            this.splitContainer1.TabIndex = 0;
+            // 
+            // splitContainer2
+            // 
+            this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+            this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+            this.splitContainer2.Name = "splitContainer2";
+            this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // splitContainer2.Panel1
+            // 
+            this.splitContainer2.Panel1.Controls.Add(this.dg_vente);
+            this.splitContainer2.Panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.splitContainer2_Panel1_Paint);
+            // 
+            // splitContainer2.Panel2
+            // 
+            this.splitContainer2.Panel2.Controls.Add(this.textErr);
+            this.splitContainer2.Size = new System.Drawing.Size(769, 512);
+            this.splitContainer2.SplitterDistance = 365;
+            this.splitContainer2.TabIndex = 0;
+            // 
+            // button1
+            // 
+            this.button1.Location = new System.Drawing.Point(30, 21);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(288, 23);
+            this.button1.TabIndex = 0;
+            this.button1.Text = "Chargerment des Ventes";
+            this.button1.UseVisualStyleBackColor = true;
+            this.button1.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // dg_vente
+            // 
+            this.dg_vente.AllowUserToAddRows = false;
+            this.dg_vente.AllowUserToDeleteRows = false;
+            this.dg_vente.AutoGenerateColumns = false;
+            this.dg_vente.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dg_vente.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.epreuvevtDataGridViewTextBoxColumn,
+            this.stationvtDataGridViewTextBoxColumn,
+            this.vehivtDataGridViewTextBoxColumn,
+            this.prodvtDataGridViewTextBoxColumn,
+            this.datevtDataGridViewTextBoxColumn,
+            this.qttvtDataGridViewTextBoxColumn,
+            this.puvtDataGridViewTextBoxColumn,
+            this.ht_vt,
+            this.tvavtDataGridViewTextBoxColumn,
+            this.ttcvtDataGridViewTextBoxColumn});
+            this.dg_vente.DataSource = this.tbventeBindingSource;
+            this.dg_vente.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dg_vente.Location = new System.Drawing.Point(0, 0);
+            this.dg_vente.Name = "dg_vente";
+            this.dg_vente.ReadOnly = true;
+            this.dg_vente.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dg_vente.Size = new System.Drawing.Size(769, 365);
+            this.dg_vente.TabIndex = 3;
+            // 
+            // button2
+            // 
+            this.button2.Location = new System.Drawing.Point(348, 21);
+            this.button2.Name = "button2";
+            this.button2.Size = new System.Drawing.Size(288, 23);
+            this.button2.TabIndex = 1;
+            this.button2.Text = "Correction et générartion du fichier ventes2.json";
+            this.button2.UseVisualStyleBackColor = true;
+            this.button2.Click += new System.EventHandler(this.button2_Click);
+            // 
+            // epreuvevtDataGridViewTextBoxColumn
+            // 
+            this.epreuvevtDataGridViewTextBoxColumn.DataPropertyName = "epreuve_vt";
+            this.epreuvevtDataGridViewTextBoxColumn.HeaderText = "epreuve_vt";
+            this.epreuvevtDataGridViewTextBoxColumn.Name = "epreuvevtDataGridViewTextBoxColumn";
+            this.epreuvevtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.epreuvevtDataGridViewTextBoxColumn.Visible = false;
+            // 
+            // stationvtDataGridViewTextBoxColumn
+            // 
+            this.stationvtDataGridViewTextBoxColumn.DataPropertyName = "station_vt";
+            this.stationvtDataGridViewTextBoxColumn.HeaderText = "Station";
+            this.stationvtDataGridViewTextBoxColumn.Name = "stationvtDataGridViewTextBoxColumn";
+            this.stationvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.stationvtDataGridViewTextBoxColumn.Width = 60;
+            // 
+            // vehivtDataGridViewTextBoxColumn
+            // 
+            this.vehivtDataGridViewTextBoxColumn.DataPropertyName = "vehi_vt";
+            this.vehivtDataGridViewTextBoxColumn.HeaderText = "Bandeau";
+            this.vehivtDataGridViewTextBoxColumn.Name = "vehivtDataGridViewTextBoxColumn";
+            this.vehivtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.vehivtDataGridViewTextBoxColumn.Width = 60;
+            // 
+            // prodvtDataGridViewTextBoxColumn
+            // 
+            this.prodvtDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.prodvtDataGridViewTextBoxColumn.DataPropertyName = "prod_vt";
+            this.prodvtDataGridViewTextBoxColumn.HeaderText = "Produit";
+            this.prodvtDataGridViewTextBoxColumn.Name = "prodvtDataGridViewTextBoxColumn";
+            this.prodvtDataGridViewTextBoxColumn.ReadOnly = true;
+            // 
+            // datevtDataGridViewTextBoxColumn
+            // 
+            this.datevtDataGridViewTextBoxColumn.DataPropertyName = "date_vt";
+            dataGridViewCellStyle7.Format = "M";
+            dataGridViewCellStyle7.NullValue = null;
+            this.datevtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle7;
+            this.datevtDataGridViewTextBoxColumn.HeaderText = "Date";
+            this.datevtDataGridViewTextBoxColumn.Name = "datevtDataGridViewTextBoxColumn";
+            this.datevtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.datevtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // qttvtDataGridViewTextBoxColumn
+            // 
+            this.qttvtDataGridViewTextBoxColumn.DataPropertyName = "qtt_vt";
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle8.Format = "N2";
+            this.qttvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle8;
+            this.qttvtDataGridViewTextBoxColumn.HeaderText = "Qtt";
+            this.qttvtDataGridViewTextBoxColumn.Name = "qttvtDataGridViewTextBoxColumn";
+            this.qttvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.qttvtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // puvtDataGridViewTextBoxColumn
+            // 
+            this.puvtDataGridViewTextBoxColumn.DataPropertyName = "pu_vt";
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle9.Format = "N3";
+            dataGridViewCellStyle9.NullValue = null;
+            this.puvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle9;
+            this.puvtDataGridViewTextBoxColumn.HeaderText = "PU";
+            this.puvtDataGridViewTextBoxColumn.Name = "puvtDataGridViewTextBoxColumn";
+            this.puvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.puvtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // ht_vt
+            // 
+            this.ht_vt.DataPropertyName = "ht_vt";
+            dataGridViewCellStyle10.Format = "N2";
+            dataGridViewCellStyle10.NullValue = null;
+            this.ht_vt.DefaultCellStyle = dataGridViewCellStyle10;
+            this.ht_vt.HeaderText = "HT";
+            this.ht_vt.Name = "ht_vt";
+            this.ht_vt.ReadOnly = true;
+            // 
+            // tvavtDataGridViewTextBoxColumn
+            // 
+            this.tvavtDataGridViewTextBoxColumn.DataPropertyName = "tva_vt";
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle11.Format = "N2";
+            this.tvavtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle11;
+            this.tvavtDataGridViewTextBoxColumn.HeaderText = "TVA";
+            this.tvavtDataGridViewTextBoxColumn.Name = "tvavtDataGridViewTextBoxColumn";
+            this.tvavtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.tvavtDataGridViewTextBoxColumn.Width = 50;
+            // 
+            // ttcvtDataGridViewTextBoxColumn
+            // 
+            this.ttcvtDataGridViewTextBoxColumn.DataPropertyName = "ttc_vt";
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle12.Format = "N2";
+            dataGridViewCellStyle12.NullValue = null;
+            this.ttcvtDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle12;
+            this.ttcvtDataGridViewTextBoxColumn.HeaderText = "PrixTTC";
+            this.ttcvtDataGridViewTextBoxColumn.Name = "ttcvtDataGridViewTextBoxColumn";
+            this.ttcvtDataGridViewTextBoxColumn.ReadOnly = true;
+            this.ttcvtDataGridViewTextBoxColumn.Width = 60;
+            // 
+            // textErr
+            // 
+            this.textErr.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.textErr.Location = new System.Drawing.Point(0, 0);
+            this.textErr.Multiline = true;
+            this.textErr.Name = "textErr";
+            this.textErr.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+            this.textErr.Size = new System.Drawing.Size(769, 143);
+            this.textErr.TabIndex = 0;
+            // 
+            // f_verif
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(769, 584);
+            this.Controls.Add(this.splitContainer1);
+            this.Name = "f_verif";
+            this.Text = "Vérification du fichier des ventes.json";
+            ((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbventeBindingSource)).EndInit();
+            this.splitContainer1.Panel1.ResumeLayout(false);
+            this.splitContainer1.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+            this.splitContainer1.ResumeLayout(false);
+            this.splitContainer2.Panel1.ResumeLayout(false);
+            this.splitContainer2.Panel2.ResumeLayout(false);
+            this.splitContainer2.Panel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+            this.splitContainer2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dg_vente)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DataSet1 dataSet1;
+        private System.Windows.Forms.BindingSource tbventeBindingSource;
+        private System.Windows.Forms.SplitContainer splitContainer1;
+        private System.Windows.Forms.SplitContainer splitContainer2;
+        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.DataGridView dg_vente;
+        private System.Windows.Forms.Button button2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn epreuvevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn stationvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn vehivtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn prodvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn datevtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn qttvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn puvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ht_vt;
+        private System.Windows.Forms.DataGridViewTextBoxColumn tvavtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ttcvtDataGridViewTextBoxColumn;
+        private System.Windows.Forms.TextBox textErr;
+    }
+}

+ 86 - 0
Fuel_ASO/f_verif.cs

@@ -0,0 +1,86 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Fuel01
+{
+    public partial class f_verif : Form
+    {
+        DataSet1.tb_venteDataTable tb_vente = new DataSet1.tb_venteDataTable();
+
+        public f_verif()
+        {
+            InitializeComponent();
+        }
+
+        private void button1_Click(object sender, EventArgs e)
+        {
+            init_vente();
+        }
+
+        private void init_vente()
+        {
+            tb_vente.Clear();
+
+            if (File.Exists(Program.subfolder + @"\vente.json"))
+                tb_vente = DbUtil.LoadFromJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente.json", tb_vente);
+
+            tb_vente.AcceptChanges();
+            tbventeBindingSource.DataSource = tb_vente;
+
+        }
+
+        private void splitContainer2_Panel1_Paint(object sender, PaintEventArgs e)
+        {
+
+        }
+
+        private void button2_Click(object sender, EventArgs e)
+        {
+            decimal puttc, qtt, tva, totht, totttc,calcttcQ,calcttcT,ecart;
+            ecart = 0.02M;
+            tbventeBindingSource.MoveFirst();
+            DataRowView myrow_b = tbventeBindingSource.Current as DataRowView;
+            DataSet1.tb_venteRow myrow = myrow_b.Row as DataSet1.tb_venteRow;
+            DataSet1.tb_venteRow oldrow = null;
+            while ( myrow!=oldrow)
+            {
+                Console.WriteLine(myrow.prod_vt.ToString());
+                puttc = myrow.pu_vt;
+                qtt = myrow.qtt_vt;
+                tva = myrow.tva_vt;
+                totht = myrow.ht_vt;
+                totttc = Math.Round(myrow.ttc_vt,2);
+                calcttcQ = Math.Round(qtt * puttc, 2);
+                calcttcT = Math.Round(totht * (1 + tva / 100), 2);
+                if (totttc != calcttcQ)
+                    if (Math.Abs(totttc - calcttcQ) > ecart)
+                    {
+                       textErr.Text += string.Format("Err TTC...... ttc={0}   calc={1}    delta={2}\r\n", totttc, calcttcQ, totttc - calcttcQ);
+                        myrow.ttc_vt = totttc= calcttcQ;
+                    }
+                if (totttc != calcttcT)
+                    if (Math.Abs(totttc - calcttcT) > ecart)
+                    {
+                        textErr.Text += string.Format("Err TVA...... ttc={0}   calc={1}    delta={2}\r\n", totttc, calcttcT, totttc - calcttcT);
+                        myrow.ht_vt = Math.Round(totttc / (1 + tva / 100), 2);
+                    }
+                tbventeBindingSource.MoveNext();
+                myrow_b = tbventeBindingSource.Current as DataRowView;
+                oldrow = myrow;
+                myrow = myrow_b.Row as DataSet1.tb_venteRow;
+                Application.DoEvents();
+            }
+            textErr.Text += "END";
+
+            DbUtil.SaveToJson<DataSet1.tb_venteDataTable>(Program.subfolder + @"\vente2.json", tb_vente);
+        }
+    }
+}

+ 129 - 0
Fuel_ASO/f_verif.resx

@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="dataSet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>404, 17</value>
+  </metadata>
+  <metadata name="tbventeBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>503, 17</value>
+  </metadata>
+  <metadata name="ht_vt.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>

+ 5 - 0
Fuel_ASO/packages.config

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="Microsoft.AspNet.SignalR.Client" version="2.2.0" targetFramework="net45" />
+  <package id="Newtonsoft.Json" version="9.0.1" targetFramework="net45" />
+</packages>

部分文件因为文件数量过多而无法显示