Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Best way to proceed.
Message
De
05/04/2007 09:25:09
Mike Cole
Yellow Lab Technologies
Stanley, Iowa, États-Unis
 
 
À
05/04/2007 09:20:28
Sergio Ortiz
Tek Services Group, Llc
Hollywood, Floride, États-Unis
Information générale
Forum:
ASP.NET
Catégorie:
ADO.NET
Divers
Thread ID:
01212417
Message ID:
01212427
Vues:
12
Sergio,
My opinion is that you should read your FoxPro data into a datatable, and then do what you want to do. This method would minimize access to disk.

>I tried John Baird code and with minor modifications I was able to read the comma delimited text file and put it into a Datatable.
>
>Here is how:
>
>string colString;
>string[] strItems = null;
>DataRow dr = null;
>TextReader tr = null;
>try
> {
>  DataTable dtMyTable = new DataTable();
>  dtMyTable.Columns.Add("CtrlPn", typeof(String));
>  dtMyTable.Columns.Add("nAmount", typeof(Double));
>  dtMyTable.Columns.Add("CheckNum", typeof(String));
>  dtMyTable.Columns.Add("CheckType", typeof(String));
>
>  string filePath = @"C:\Program Files\UPCI\ExportWachovia\CPRun99_2.run";
>  tr = File.OpenText(filePath);
>  colString = tr.ReadLine();
>  colString = colString.Trim();
>  while ( colString != null )
>   {
>    if (colString.Length > 0)
>     {
>       strItems = colString.Split(",".ToCharArray());
>       dr = dtMyTable.NewRow();
>       dr["CtrlPn"] = strItems[0];
>       dr["nAmount"] = strItems[1];
>       dr["CheckNum"] = strItems[2];
>       dr["CheckType"] = strItems[3];
>       dtMyTable.Rows.Add(dr);
>     } //if
>     colString = tr.ReadLine();
>
>   }   //while ( colString != null )
>}   //try
>catch (Exception ex)
> {
>   MessageBox.Show(ex.Message);
> }
>
>
>
>
>I would like to get opinions about the best way to proceed with my task.
>Here is the situation ( foxpro thinking: scan, use, seek, replace, index ) :
>
>Now that I have the comma delimited text file on a Datatable (dtMyTable ) I need to search for each of the records in the dtMyTable against a free foxpro table called Policy. If I found a match then retrieve information from this Policy table ( control number ) and then insert a record in a foxpro table called Transactions(insert into Trasnactions (controlnumber, .....).
>Also before I insert the records into the transaction I will have to prepare/massage the data in the dtMyTable Datatable for insertion into the foxpro Transaction table.
>
>
>Now here is my troubles since I'm new to ADO.NET.
>What is the best way to interface with the free foxpro tables.
>Do I load all the tables(policy, transaction) to a Dataset and then I seek on this Policy table, update some policy fields and insert into Transaction table. Once I am finished I sent the changes to the free table.
>The Transaction foxpro free table contains 2.5 million records and Policy table has close to a million records.
>
>Or
>
>
>I can send select statements just to bring the records that match from the Policy table( like a seek )? Then once I get the match prepare the data and insert the record into the transaction table.
>I guess this is the most logical way( looks like I have found the best way).
>
>
>
>Anyfeed back is appreciated.
>Sergio
Very fitting: http://xkcd.com/386/
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform