Click here to Skip to main content
15,886,518 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
i have six datatable

aspx.cs code:

C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;

namespace AQCConsolidator1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnGetData_Click(object sender, EventArgs e)
        {
            List<String> list = new List<String>();
            List<String> list1 = new List<String>();

            string request = @"RP/DCA1S219C/DCA1S219C            SL/SU   7FEB13/2215Z   8TXSAK                 
 36 FA PAX 125-7239038457/ETBA/07FEB13/DCA1S211E/49881134                       
       /S4-5/P3                                                                 
 37 FA PAX 125-7239038458/ETBA/07FEB13/DCA1S211E/49881134                       
       /S4-5/P1                                                                 
 38 FA PAX 125-7239038459/ETBA/07FEB13/DCA1S211E/49881134                @       
       /S4-5/P2                                                                 
 39 FB PAX 0700449140 TTP/ET/RT/INVJ OK ETICKET/S4-5/P1-3                       
 40 FE PAX BA ONLY/NONREF/NONEND SEE GGAIRBAGUSA -BG:BA/S4-5/P3                 
 41 FE PAX BA ONLY/NONREF/NONEND SEE GGAIRBAGUSA -BG:BA                         
       /S4-5/P1-2                                                               
 42 FI PAX 0700449140 INV 0011436178/S4-5/P1-3                                  
 43 FI PAX 0700449140 INV 0011436178/S6/P1-3                                    
 44 FI PAX 0700449140 INV 0011436178/S7/P1-3                                    
 45 FM *M*0.00A                                                                 
 46 FP CHECK                                                                    
 47 FT *BT1195364                                                               
 48 FV PAX BA/S4-5/P3                                                           
 49 FV PAX BA/S4-5/P1-2                                                         
 50 FY BULK/TBULK   
";
            string request1 = @"RP/DCA1S219C/DCA1S219C            SL/SU   5APR13/2119Z   23ZEBK                 
 42 FA PAX 220-7242648582-83/ETLH/USD1166.75/04APR13/DCA1S211E/4                
       9881134/S3-7/P1                                                          
 43 FA PAX 220-7242648584-85/ETLH/USD1166.75/04APR13/DCA1S211E/4                
       9881134/S3-7/P2                                                          
 44 FB PAX 0400496645 TTP/INVJ/ET/RT OK ETICKET/S3-7/P1-2                       
 45 FE PAX NONREF/FL/CHG RESTRICTEDCHECK FARE NOTE -BG:LH                       
       /S3-7/P1-2                                                               
 46 FI PAX 0400496645 INV 0011465003/S3-7/P1-2                                  
 47 FI PAX 0400496645 INV 0011465003/S8/P1-2                                    
 48 FI PAX 0400496645 INV 0011465003/S9/P1-2                                    
 49 FM *M*8/P1-2                                                                
 50 FP CHECK                                                                    
 51 FT *815ZU                                                                   
 52 FV PAX LH/S3-7/P1-2                                                         
";

            string request2 = @"RP/DCA1S219C/DCA1S219C            SL/SU   9APR13/2223Z   4YYTR7                 
 45 FA PAX 257-7242858184/ETOS/USD736.23/08APR13/DCA1S211E/49881                
       134/S3-6/P1                                                              
 46 FA PAX 257-7242858185/ETOS/USD736.23/08APR13/DCA1S211E/49881                
       134/S3-6/P2                                                              
 47 FB PAX 0800499541 TTP/ET/INVJ/RT OK ETICKET/S3-6/P1-2                       
 48 FE *M*//REFTHRUAGT/NONEND                                                   
 49 FI PAX 0800499541 INV 0011466820/S3-6/P1-2                                  
 50 FI PAX 0800499541 INV 0011466820/S7/P1-2                                    
 51 FI PAX 0800499541 INV 0011466820/S8/P1-2                                    
 52 FM *M*8                                                                     
 53 FP CHECK                                                                    
 54 FT *815ZU                                                                   
 55 FV PAX OS/S3-6/P1-2            
                                                   
";
            string request3 = @"RP/DCA1S219C/DCA1S219C            SL/SU   9APR13/2211Z   44J6KH                 
 39 FA PAX 001-7242858155-56/ETAA/USD1280.84/08APR13/DCA1S211E/4                
       9881134/S5-6,8-9/P3                                                      
 40 FA PAX 001-7242858157-58/ETAA/USD1280.84/08APR13/DCA1S211E/4                
       9881134/S5-6,8-9/P4                                                      
 41 FA PAX 001-7242858159-60/ETAA/USD1489.84/08APR13/DCA1S211E/4                
       9881134/S5-6,8-9/P1                                                      
 42 FA PAX 001-7242858161-62/ETAA/USD1489.84/08APR13/DCA1S211E/4                
       9881134/S5-6,8-9/P2                                                      
 43 FB PAX 0800499485 TTP/INVJ/ET/RT OK ETICKET/S5-6,8-9/P1-4                   
 44 FE PAX CANCEL/CHNG PENALTY APPLY SEE N-CONS -BG:AA                          
       /S5-6,8-9/P3-4                                                           
 45 FE PAX CANCEL/CHNG PENALTY APPLY SEE N-CONS -BG:AA                          
       /S5-6,8-9/P1-2                                                           
 46 FI PAX 0800499485 INV 0011466787/S5-6,8-9/P1-4                              
 47 FI PAX 0800499485 INV 0011466787/S10/P1-4                                   
 48 FI PAX 0800499485 INV 0011466787/S11/P1-4                                   
 49 FM *M*0                                                                     
 50 FP CHECK                                                                    
 51 FV PAX AA/S5-6,8-9/P3-4                                                     
 52 FV PAX AA/S5-6,8-9/P1-2                                                     
 53 FY BULK/TBULK
";

            string request4 = @"RP/DCA1S219C/DCA1S219C            VP/SU   9APR13/2219Z   43K83B                 
 41 FA PAX 016-7242906971-72/ETUA/USD1161.93/08APR13/DCA1S211E/4                
       9881134/S2-3,5-7                                                         
 42 FB PAX 0800500046 TTP/ET/INVJ/RT OK ETICKET/S2-3,5-7                        
 43 FE PAX NONREF/0VALUEAFTDPT/CHGFEE -BG:UA/S2-3,5-7                           
 44 FI PAX 0800500046 INV 0011467153/S2-3,5-7                                   
 45 FI PAX 0800500046 INV 0011467153/S8                                         
 46 FM *M*0                                                                     
 47 FP CHECK                                                                    
 48 FT PAX 264HW/S2-3,5-7                                                       
 49 FV PAX UA/S2-3,5-7                                                          
 50 FY BULK/TBULK      
";
            string request5 = @"RP/DCA1S219C/DCA1S219C            VP/SU  10APR13/2053Z   5PMTIC                 
 52 FA PAX 220-7242968917/ETLH/09APR13/DCA1S211E/49881134                       
       /S3-6/P1                                                                 
 53 FA PAX 220-7242968918/ETLH/09APR13/DCA1S211E/49881134                       
       /S3-6/P2                                                                 
 54 FB PAX 0900500611 TTP/ET/INVJ/RT OK ETICKET/S3-6/P1-2                       
 55 FE PAX REFTHRUAG/NONEND/NONRERTE/LH/UA/AC/OS/SN/LX ONLY                     
       -BG:LH/S3-6/P1-2                                                         
 56 FI PAX 0900500611 INV 0011467501/S3-6/P1-2                                  
 57 FI PAX 0900500611 INV 0011467501/S7/P1-2                                    
 58 FI PAX 0900500611 INV 0011467501/S8/P1-2                                    
 59 FM *M*0                                                                     
 60 FP CHECK                                                                    
 61 FT PAX 294UA/S3-6/P1-2                                                      
 62 FV PAX LH/S3-6/P1-2      
";
            string request6 = @"RP/DCA1S219C/DCA1S219C            PG/SU  11APR13/2002Z   4XNHSH                 
 71 FA PAX 080-7243098290/ETLO/USD90.46/10APR13/NYC1S21DD/338959                
       34/S7/P3                                                                 
 72 FA PAX 080-7243098295/ETLO/USD162.82/10APR13/NYC1S21DD/33895                
       934/S7/P1                                                                
 73 FA PAX 080-7243098296/ETLO/USD162.82/10APR13/NYC1S21DD/33895                
       934/S7/P2                                                                
 74 FA PAX 724-7243065619/ETLX/USD879.23/10APR13/DCA1S211E/49881                
       134/S4-5,8-9/P3                                                          
 75 FA PAX 724-7243065620/ETLX/USD956.23/10APR13/DCA1S211E/49881                
       134/S4-5,8-9/P1                                                          
 76 FA PAX 724-7243065621/ETLX/USD956.23/10APR13/DCA1S211E/49881                
       134/S4-5,8-9/P2                                                          
 77 FB PAX 1007098717 TTP/ET/RT/INVJ/T17 OK ETICKET/S7/P3                       
 78 FB PAX 1007098721 TTP/ET/RT/INVJ/T18 OK ETICKET/S7/P1-2                     
 79 FB PAX 1000501680 TTP/ET/RT/INVJ/T21,22 OK ETICKET                          
       /S4-5,8-9/P1-3                                                           
 80 FE PAX REFTHRUAG/NONEND/NONRERTE/LH/UA/AC/OS/SN/LX ONLY                     
       -BG:LX/S4-5,8-9/P3                                                       
 81 FE PAX REFTHRUAG/NONEND/NONRERTE/LH/UA/AC/OS/SN/LX ONLY                     
       -BG:LX/S4-5,8-9/P1-2                                                     
 82 FI PAX 1007098717 INV 0206906260/S7/P3      
";


            string Req = @"TST00003     DCA1S211E AD/18APR M 1 LD 20APR13 OD SDFSDF SI                     
T-E                                                                             
FXP/R,U                                                                         
   1.MCKEEL/WESLEY C   2.MCKEEL/MATTHEW M   3.SMITH/ALEXANDER P                 
 1   SDF AA 3273 Q 17MAY 1245P OK QLW0N8B1 CDTP        17AUG 2PC                
 2 X DFW AA  399 Q 17MAY  345P OK QLW0N8B1 CDTP        17AUG 2PC                
 3 X SFO AA 5815 Q 17MAY  705P OK QLW0N8B1 CDTP        17AUG 2PC                
 4   HND    ARNK                                                                
 5 O NRT AA  176 Q 30MAY 1130A OK QLX0N8B1 CDTP   20MAY17AUG 2PC                
 6 X DFW AA  830 Q 30MAY  320P OK QLX0N8B1 CDTP   20MAY17AUG 2PC                
     SDF                                                                        
FARE  F USD     488.00                                                          
TX001 X USD   580.00YRVB TX002 X USD     5.50YCAE TX003 X USD    17.20USAP      
TX004 X USD    17.20USAS TX005 X USD     5.00XACO TX006 X USD     7.00XYCR      
TX007 X USD    10.00AYSE TX008 X USD    21.08SWAE TX009 X USD     5.17OISE      
TX010 X USD    18.00XF                                                          
TOTAL   USD    1174.15                                                          
GRAND TOTAL USD    1174.15                                                      
SDF AA X/DFW AA X/SFO AA TYO M257.60QLW0N8B1/CDTP AA X/DFW AA                   
 SDF M230.00QLX0N8B1/CDTP NUC487.60END ROE1.000000 XF SDF4.5DFW                 
4.5SFO4.5DFW4.5  
";

            string Req1 = @"FXP/R,U,CL-MBT                                                                  
   1.JAYAPAL/HEMACHANDRA                                                        
 1   ORD UA  940 T 21MAY  610P OK TKX6NCE  CN10   21MAY21MAY 1PC                
 2 X FRA LH  758 T 22MAY 1100A OK TKX6NCE  CN10   22MAY22MAY 1PC                
 3 O MAA 9W  470 H 17JUN  710P OK TKX6NCE  CN10   17JUN17JUN 1PC                
 4 X BOM LX  155 T 18JUN  050A OK TKX6NCE  CN10   18JUN18JUN 1PC                
 5 X ZRH LX 2608 T 18JUN  955A OK TKX6NCE  CN10   18JUN18JUN 1PC                
     ORD                                                                        
FARE  I USD     711.00                                                          
TX001 X USD   540.00YQAC TX002 X USD     5.50YCAE TX003 X USD    17.20USAP      
TX004 X USD    17.20USAS TX005 X USD     5.00XACO TX006 X USD     7.00XYCR      
TX007 X USD     2.50AYSE TX008 X USD    25.92RAEB TX009 X USD     8.71DESE      
TX010 X USD     3.65WOMU TX011 X USD    25.66CHAE TX012 X USD     4.50XF        
TOTAL   USD    1373.84                                                          
GRAND TOTAL USD    1373.84                                                      
CHI UA X/FRA LH MAA M/IT TKX6NCE/CN10 9W X/BOM LX X/ZRH LX CHI                  
 M/IT TKX6NCE/CN10 END XF ORD4.5                                         
                                                                                
 55.FE REFTHRUAG/NONEND/NONRERTE/LH/UA/AC/OS/SN/LX ONLY -BG:LH                  
 59.FM *M*0                                                                     
 60.FP CHECK";
            string Req2 = @"FXP/R,U                                                                         
   1.RATTANASAWASD/PANUPONG                                                     
 1   ORD UA  881 V 12MAY  100P OK VKX0ZUMF NCJV   12MAY12MAY 1PC                
 2 X NRT UA  837 V 13MAY  630P OK VKX0ZUMF NCJV   13MAY13MAY 1PC                
 3 O BKK NH  916 S 21AUG 1155P OK SKX04MM3 NCJV   21AUG21AUG 1PC                
 4 X NRT NH  012 S 22AUG 1045A OK SKX04MM3 NCJV   22AUG22AUG 1PC                
     ORD                                                                        
FARE  F USD    1352.00                                                          
TX001 X USD   400.00YQAC TX002 X USD     6.40YQAD TX003 X USD     5.50YCAE      
TX004 X USD    17.20USAP TX005 X USD    17.20USAS TX006 X USD     5.00XACO      
TX007 X USD     7.00XYCR TX008 X USD     2.50AYSE TX009 X USD    21.08SWAE      
TX010 X USD    10.34OISE TX011 X USD    24.02TSLA TX012 X USD     4.50XF        
TOTAL   USD    1872.74                                                          
GRAND TOTAL USD    1872.74                                                      
CHI UA X/TYO UA BKK684.90VKX0ZUMF/NCJV NH X/TYO NH CHI Q200.00                  
 467.55SKX04MM3/NCJV NUC1352.45END ROE1.000000 XF ORD4.5                        
                                                                                
 37.FE REFUNDABLE/CXLFEE/CHGFEE-BG:UA                                           
 41.FM *M*0                                                                     
 42.FP CHECK                                                   
)>";   

            list.Add(request);
            list.Add(request1);
            list.Add(request2);
            list.Add(request3);
            list.Add(request4);
            list.Add(request5);
            list.Add(request6);

            list1.Add(Req);
            list1.Add(Req1);
            list1.Add(Req2);

            MyClass1 mc = new MyClass1();
            DataTable dt = mc.GetNumber(list);
            DataTable dt1= mc.GetPNR(list);
            DataTable dt2 = mc.GetDetail(list1);
            DataTable dt3 = mc.GetDetail1(list1);
            DataTable dt4 = mc.GetDetail2(list1);
            DataTable dt5 = mc.GetDetail3(list1);
            DataTable dt6 = mc.GetDetail4(list1);
            dataGridView1.DataSource = ??// want solution here
            
        }
    }
}


class code::

C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Text.RegularExpressions;

namespace AQCConsolidator1
{
    class MyClass1
    {
        string output;
        string subs;

        DataTable dt = new DataTable();
        DataRow dr = null;

        public DataTable GetPNR(List<string> request)
        {
            dt.Columns.Add("PNR", typeof(string));

            foreach (string data in request)
            {
                string item = data;
                dr = dt.NewRow();
                Regex regexs = new Regex(@"\s[A-Z0-9]{6}\s{2}");
                foreach (Match m in regexs.Matches(item))
                {
                    output = m.ToString();
                }
                dr["PNR"] = output;
                dt.Rows.Add(dr);
            }
            return dt;
        }
        public DataTable GetNumber(List<string> request)
        {
            dt.Columns.Add("TickitNumber", typeof(string));

            foreach (string data in request)
            {
                string item = data;
                while (item.Trim() != "")
                {
                    dr = dt.NewRow();
                    int r1 = item.IndexOf("\r", 3);
                    subs = item.Substring(0, r1);
                    if (subs.Contains("ET"))
                    {
                        Regex regexs = new Regex(@"[0-9||-]{14}");
                        foreach (Match m in regexs.Matches(subs))
                        {
                            output = m.ToString();
                            dr["TickitNumber"] = output;
                        }
                        dt.Rows.Add(dr);
                    }

                    item = item.Substring(subs.Length);

                    r1 = item.IndexOf("\r\n", 0);

                    item = item.Substring(r1);
                }

            }
            return dt;
        }
        public DataTable GetDetail(List<string> request)
        {
            dt.Columns.Add("Base fare", typeof(string));

            foreach (string data in request)
            {
                string item = data;
                dr = dt.NewRow();
                Regex regexs = new Regex(@"(FARE\s{2}\S\s\S{3}\s{5}(\d+\.\d{2}))|(EQUIV\s{3}\S{3}\s{5})(\d+\.\d{2})");
                foreach (Match m in regexs.Matches(item))
                {
                    output = m.ToString();
                }
                dr["Base Fare"] = output;
                dt.Rows.Add(dr);
            }
            return dt;
        }
        public DataTable GetDetail1(List<string> request)
        {
            dt.Columns.Add("Grand Total", typeof(string));
            foreach (string data in request)
            {
                string item = data;
                dr = dt.NewRow();
                Regex regexs = new Regex(@"GRAND.TOTAL....\s+(\d+\.\d{2})");
                foreach (Match m in regexs.Matches(item))
                {
                    output = m.ToString();
                }
                dr["Grand Total"] = output;
                dt.Rows.Add(dr);

            }
            return dt;
        }
        public DataTable GetDetail2(List<string> request)
        {
            dt.Columns.Add("FM", typeof(string));

            foreach (string data in request)
            {
                string item = data;
                dr = dt.NewRow();
                Regex regexs = new Regex(@"FM (\S+)");
                foreach (Match m in regexs.Matches(item))
                {
                    output = m.ToString();
                }
                dr["FM"] = output;
                dt.Rows.Add(dr);
            }
            return dt;
        }
        public DataTable GetDetail3(List<string> request)
        {
            dt.Columns.Add("FOP", typeof(string));

            foreach (string data in request)
            {
                string item = data;
                dr = dt.NewRow();
                Regex regexs = new Regex(@"FP (\S+)");
                foreach (Match m in regexs.Matches(item))
                {
                    output = m.ToString();
                }
                dr["FOP"] = output;
                dt.Rows.Add(dr);
            }
            return dt;
        }
        public DataTable GetDetail4(List<string> request)
        {
            dt.Columns.Add("PAX", typeof(string));

            foreach (string data in request)
            {
                string item = data;
                dr = dt.NewRow();
                Regex regexs = new Regex(@"(FXP/R\s+(.+?)+\s)|(FXP/R.\S{0,10}\s\S{0,10}\s+(.+?)+\s)", RegexOptions.Multiline);
                foreach (Match m in regexs.Matches(item))
                {
                    output = m.ToString();
                }
                dr["PAX"] = output;
                dt.Rows.Add(dr);
            }
            return dt;
        }
    }
}

mc is the object of a class which is used to call function from class on click event of button

now what i want is when i click on button all the data in those datatable get into one datatable and bind that datatable to datagridview so that when i click on button i can view details in datagridview which comes from the function created in class.

i use merge but it didn't work i search a lot on google but i didn't get anythink that i want so i came here i hope i am clear to you guys

thanks in advance
Posted
Updated 3-May-13 1:21am
v5

1 solution

 
Share this answer
 
Comments
amitesh1989 2-May-13 11:14am    
in that link it show how to add two table and store in third one the think is that databind didn't work in window form application
Member 9581488 2-May-13 11:17am    
Oh, I misunderstood it. I thought its web-based application.But you can assign the ResultDataTable to your datagrid! I m not yet sure!
amitesh1989 2-May-13 11:33am    
the think is that if i send dt then it will show all the datatable
Member 9581488 2-May-13 11:54am    
DataTable DTResult = new DataTable();
DTResult.Merge(dt);
DTResult.Merge(dtcmd);
dataGridView1.DataSource=DTResult;

the above code worked for me. I tried with 2 datatables.
amitesh1989 2-May-13 11:56am    
what is dtcmd here

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900