您的位置:首页 > 其它

递归导入access数据程序|自动匹配企业分类

2009-05-19 11:38 225 查看

递归导入access数据程序|自动匹配企业分类

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.Collections;

using System.IO;

using System.Data.SqlClient;

namespace DataImportFromAccess

{

public partial class DataImport : Projects.Utils.ManageForm

{

protected ArrayList al = new ArrayList();

protected StringBuilder sbSql = new StringBuilder();

protected int i = 0;

protected int k = 0;

public DataImport()

{

InitializeComponent();

}

public void InItData()

{

}

public void Dirs(string path)

{

DirectoryInfo dis = new DirectoryInfo(path);

FileInfo[] files = dis.GetFiles();

foreach (FileInfo fi in files)

{

i++;

Application.DoEvents();

this.label1.Text = i.ToString();

try

{

if (fi.FullName.ToString().ToLower().Contains("mdb"))

{

al.Add(fi.FullName.ToString());

}

else

{

}

// File.Delete(fi.FullName);

}

catch (Exception ex)

{

//this.richTextBox1.Text += ex.Message;.

MessageBox.Show(ex.Message);

}

}

if (dis.GetDirectories().Length > 0)

{

for (int i = 0; i < dis.GetDirectories().Length; i++)

{

Dirs(dis.GetDirectories()[i].FullName);

}

}

}

private void BtSelectFile_Click(object sender, EventArgs e)

{

//this.OpdFiles.ShowDialog();

this.FbdFiles.ShowDialog();

//this.OpdFiles.

}

private void BtImport_Click(object sender, EventArgs e)

{

Dirs(this.FbdFiles.SelectedPath);

ArrayList alsql = new ArrayList();

string tempCompanyName = "";//公司名称

string tempCode = "";//邮 编

string tempAdd = "";//地 址

string tempLinkMan = "";//联 系 人

string tempTel = "";//联系电话

string tempMobile = "";//手  机

string tempFax = ""; //传  真

string tempSql = "";

string Gid = "";

string C_ID = "";

string userName = "";

string 公司名称 = "";

string 基本信息 = "";

string 主营产品或服务 = "";

string 主营行业 = "";

string 企业类型 = "";

string 经营模式 = "";

string 法人代表负责人 = "";

string 公司注册地 = "";

string 注册资金 = "";

string 员工人数 = "";

string 公司成立时间 = "";

string 年营业额 = "";

string 主要经营地点 = "";

string 主要市场 = "";

string 经营品牌 = "";

string 主要客户 = "";

string 管理体系认证 = "";

string 开户银行 = "";

string 银行帐号 = "";

string 是否提供OEM代加工 = "";

string 研发部门人数 = "";

string 厂房面积 = "";

string 质量控制 = "";

string 月产量 = "";

string 联系人 = "";

string 性别 = "";

string 部门 = "";

string 电话 = "";

string 移动电话 = "";

string 传真 = "";

string 地址 = "";

string 邮编 = "";

string 邮箱 = "";

string 公司主页 = "";

string 信用等级参考 = "";

string 年进口额 = "";

string 年出口额 = "";

string 诚信 = "";

string Fid = "";

string Sid = "";

string Tid = "";

string Province = "";

string City = "";

string Area = "";

/*

公司名称

公司简介

主营产品或服务

主营行业:

企业类型:

经营模式

法人代表

注册地点

注册资金

成立时间

年营业额

主要市场

主要客户群

管理体系认证

地址

研发人数

OEM服务

厂房面积

质量控制

月产量

联系人

电话

移动电话

传真

邮编

邮箱

网址

年出口额

年进口额

*/

int l = 0;

foreach (string str in al)

{

try

{

//this.richTextBox1.Text+=l.ToString();

DataTable dt = this.Db.GetTable(string.Format("select replace(replace(replace(cast(公司名称 as varchar(600)),char(10),''),char(13),''),char(9),'') 公司名称, replace(replace(replace(cast(公司简介 as varchar(600)),char(10),''),char(13),''),char(9),'') 公司简介,replace(replace(replace(cast(主营产品或服务 as varchar(600)),char(10),''),char(13),''),char(9),'') 主营产品或服务,[主营行业:],[企业类型:],replace(replace(replace(cast(经营模式 as varchar(600)),char(10),''),char(13),''),char(9),'') 经营模式,法人代表, 注册地点,注册资金,成立时间,年营业额,主要市场,主要客户群,管理体系认证,地址,研发人数,case cast(OEM服务 as varchar(80)) when '提供' then '1' else '0' end as OEM服务 , 厂房面积,质量控制,月产量,联系人,电话,移动电话,传真,邮编,邮箱,网址,年出口额,年进口额 from openrowset('Microsoft.Jet.OLEDB.4.0','{0}';'admin';'',Content)", str));

if (dt != null)

{

for (int i = 0; i < dt.Rows.Count; i++)

{

DataRow dr = dt.Rows[i];

Gid = "";

C_ID = "";

k++;

int model = 500000;

userName = (model + k).ToString();

公司名称 = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ", "");

基本信息 = Convert.ToString(dr["公司简介"]).Replace("'", "''").Replace(" ", "");

主营产品或服务 = Convert.ToString(dr["主营产品或服务"]).Replace("'", "''").Replace(" ", "");

主营行业 = Convert.ToString(dr["主营行业:"]).Replace("'", "''").Replace(" ", "");

企业类型 = Convert.ToString(dr["企业类型:"]).Replace("'", "''").Replace(" ", "");

经营模式 = Convert.ToString(dr["经营模式"]).Replace("'", "''").Replace(" ", "");

法人代表负责人 = Convert.ToString(dr["法人代表"]).Replace("'", "''").Replace(" ", "");

公司注册地 = Convert.ToString(dr["注册地点"]).Replace("'", "''").Replace(" ", "");

注册资金 = Convert.ToString(dr["注册资金"]).Replace("'", "''").Replace(" ", "");

员工人数 = "";// Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

公司成立时间 = Convert.ToString(dr["成立时间"]).Replace("'", "''").Replace(" ", "");

年营业额 = Convert.ToString(dr["年营业额"]).Replace("'", "''").Replace(" ", "");

主要经营地点 = ""; //Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

主要市场 = Convert.ToString(dr["主要市场"]).Replace("'", "''").Replace(" ", "");

经营品牌 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

主要客户 = Convert.ToString(dr["主要客户群"]).Replace("'", "''").Replace(" ", "");

管理体系认证 = Convert.ToString(dr["管理体系认证"]).Replace("'", "''").Replace(" ", "");

开户银行 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

银行帐号 = "";// Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

是否提供OEM代加工 = Convert.ToString(dr["OEM服务"]).Replace("'", "''").Replace(" ", "");

研发部门人数 = Convert.ToString(dr["研发人数"]).Replace("'", "''").Replace(" ", "");

厂房面积 = Convert.ToString(dr["厂房面积"]).Replace("'", "''").Replace(" ", "");

质量控制 = Convert.ToString(dr["质量控制"]).Replace("'", "''").Replace(" ", "");

月产量 = Convert.ToString(dr["月产量"]).Replace("'", "''").Replace(" ", "");

联系人 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "");

性别 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "").Contains("女士") ? ("女") : ("男");

部门 = "销售部";

电话 = Convert.ToString(dr["电话"]).Replace("'", "''").Replace(" ", "");

移动电话 = Convert.ToString(dr["移动电话"]).Replace("'", "''").Replace(" ", "");

传真 = Convert.ToString(dr["传真"]).Replace("'", "''").Replace(" ", "");

地址 = Convert.ToString(dr["地址"]).Replace("'", "''").Replace(" ", "");

邮编 = Convert.ToString(dr["邮编"]).Replace("'", "''").Replace(" ", "");

邮箱 = Convert.ToString(dr["邮箱"]).Replace("'", "''").Replace(" ", "");

公司主页 = Convert.ToString(dr["网址"]).Replace("'", "''").Replace(" ", "");

// 信用等级参考 = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

年进口额 = Convert.ToString(dr["年出口额"]).Replace("'", "''").Replace(" ", "");

年出口额 = Convert.ToString(dr["年进口额"]).Replace("'", "''").Replace(" ", "");

诚信 = "";

Fid = "";

Sid = "";

Tid = "";

Province = "";

City = "";

Area = "";

tempSql = string.Format("insert into companys(C_ID ,userName ,公司名称,基本信息 ,主营产品或服务,主营行业,企业类型,经营模式,法人代表负责人,公司注册地,注册资金,员工人数,公司成立时间,年营业额,主要经营地点,主要市场,经营品牌,主要客户,管理体系认证,开户银行,银行帐号,是否提供OEM代加工,研发部门人数,厂房面积,质量控制,月产量,联系人,性别,部门,电话,移动电话,传真,地址,邮编,邮箱,公司主页,年进口额,年出口额) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}','{22}','{23}','{24}','{25}','{26}','{27}','{28}','{29}','{30}','{31}','{32}','{33}','{34}','{35}','{36}','{37}')", C_ID, userName, 公司名称, 基本信息, 主营产品或服务, 主营行业, 企业类型, 经营模式, 法人代表负责人, 公司注册地, 注册资金, 员工人数, 公司成立时间, 年营业额, 主要经营地点, 主要市场, 经营品牌, 主要客户, 管理体系认证, 开户银行, 银行帐号, 是否提供OEM代加工, 研发部门人数, 厂房面积, 质量控制, 月产量, 联系人, 性别, 部门, 电话, 移动电话, 传真, 地址, 邮编, 邮箱, 公司主页, 年进口额, 年出口额);

sbSql.Append(tempSql).Append("\r\n");

}

WriteSqls(sbSql.ToString());

Application.DoEvents();

//this.richTextBox1.Text += sbSql.ToString() + "\r\n";

sbSql.Remove(0, sbSql.Length);

}

}

catch (Exception ex)

{

continue;

MessageBox.Show(ex.Message);

}

}

MessageBox.Show("success");

}

public void WriteSqls(params string[] sql)

{

if (sql.Length < 2)

{

using (StreamWriter sw = new StreamWriter("D:\\sql.txt", true, System.Text.Encoding.GetEncoding("GB2312")))

{

sw.Write(sql[0]);

sw.Flush();

}

}

else if (sql[1] == "pro")

{

using (StreamWriter sw = new StreamWriter("D:\\sqlContent.txt", true, System.Text.Encoding.GetEncoding("GB2312")))

{

sw.Write(sql[0]);

sw.Flush();

}

}

else if (sql[1] == "updateCity")

{

using (StreamWriter sw = new StreamWriter("D:\\sqlupdateCity.txt", true, System.Text.Encoding.GetEncoding("GB2312")))

{

sw.Write(sql[0]);

sw.Flush();

}

}

else

{

using (StreamWriter sw = new StreamWriter("D:\\sql" + sql[1] + ".txt", true, System.Text.Encoding.GetEncoding("GB2312")))

{

sw.Write(sql[0]);

sw.Flush();

}

}

}

private void button1_Click(object sender, EventArgs e)

{

Dirs(this.FbdFiles.SelectedPath);

ArrayList alsql = new ArrayList();

string tempCompanyName = "";//公司名称

string tempCode = "";//邮 编

string tempAdd = "";//地 址

string tempLinkMan = "";//联 系 人

string tempTel = "";//联系电话

string tempMobile = "";//手  机

string tempFax = ""; //传  真

string tempSql = "";

//,标题,产品品牌,产品图,单价,发布时间,公司名称,供货总量,计量单位,缩略图,所在地

string 标题 = "";

string 产品描述 = "";

string 产品品牌 = "";

string 产品图 = "";

string 单价 = "";

string 发布时间 = "";

string 公司名称 = "";

string 供货总量 = "";

string 计量单位 = "";

string 所在地 = "";

/*

string 法人代表负责人 = "";

string 公司注册地 = "";

string 注册资金 = "";

string 员工人数 = "";

string 公司成立时间 = "";

string 年营业额 = "";

string 主要经营地点 = "";

string 主要市场 = "";

string 经营品牌 = "";

string 主要客户 = "";

string 管理体系认证 = "";

string 开户银行 = "";

string 银行帐号 = "";

string 是否提供OEM代加工 = "";

string 研发部门人数 = "";

string 厂房面积 = "";

string 质量控制 = "";

string 月产量 = "";

string 联系人 = "";

string 性别 = "";

string 部门 = "";

string 电话 = "";

string 移动电话 = "";

string 传真 = "";

string 地址 = "";

string 邮编 = "";

string 邮箱 = "";

string 公司主页 = "";

string 信用等级参考 = "";

string 年进口额 = "";

string 年出口额 = "";

string 诚信 = "";

string Fid = "";

string Sid = "";

string Tid = "";

string Province = "";

string City = "";

string Area = "";*/

/*

公司名称

公司简介

主营产品或服务

主营行业:

企业类型:

经营模式

法人代表

注册地点

注册资金

成立时间

年营业额

主要市场

主要客户群

管理体系认证

地址

研发人数

OEM服务

厂房面积

质量控制

月产量

联系人

电话

移动电话

传真

邮编

邮箱

网址

年出口额

年进口额

*/

//,标题,产品品牌,产品图,单价,发布时间,公司名称,供货总量,计量单位,缩略图,所在地

// 公司名称,产品名,数量,规格,品牌,产地,单位,详细信息,产品图

int l = 0;

foreach (string str in al)

{

try

{

//this.richTextBox1.Text+=l.ToString();

DataTable dt = this.Db.GetTable(string.Format("select 公司名称,产品名,replace(replace(replace(cast(详细信息 as varchar(600)),char(10),''),char(13),''),char(9),'') 详细信息,replace(replace(replace(cast(单价 as varchar(600)),char(10),''),char(13),''),char(9),'') 单价,replace(replace(replace(cast(数量 as varchar(600)),char(10),''),char(13),''),char(9),'') 数量,replace(replace(replace(cast(规格 as varchar(600)),char(10),''),char(13),''),char(9),'') 规格,replace(replace(replace(cast(品牌 as varchar(600)),char(10),''),char(13),''),char(9),'') as 品牌,replace(replace(replace(cast(产地 as varchar(600)),char(10),''),char(13),''),char(9),'') 产地,replace(replace(replace(cast(单位 as varchar(600)),char(10),''),char(13),''),char(9),'') 单位,replace(replace(replace(cast(产品图 as varchar(600)),char(10),''),char(13),''),char(9),'') 产品图 from openrowset('Microsoft.Jet.OLEDB.4.0','{0}';'admin';'',Content)", str));

if (dt != null)

{

for (int i = 0; i < dt.Rows.Count; i++)

{

DataRow dr = dt.Rows[i];

//Gid = "";

// C_ID = "";

k++;

int model = 500000;

//userName = (model + k).ToString();

标题 = Convert.ToString(dr["产品名"]).Replace("'", "''").Replace(" ", "");

产品描述 = Convert.ToString(dr["详细信息"]).Replace("'", "''").Replace(" ", "");

产品品牌 = Convert.ToString(dr["品牌"]).Replace("'", "''").Replace(" ", "");

产品图 = Convert.ToString(dr["产品图"]).Replace("'", "''").Replace(" ", "");

单价 = Convert.ToString(dr["单价"]).Replace("'", "''").Replace(" ", "");

发布时间 = "";// Convert.ToString(dr["企业类型:"]).Replace("'", "''").Replace(" ", "");

公司名称 = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ", "");

供货总量 = Convert.ToString(dr["数量"]).Replace("'", "''").Replace(" ", "");

计量单位 = Convert.ToString(dr["单位"]).Replace("'", "''").Replace(" ", "");

所在地 = Convert.ToString(dr["产地"]).Replace("'", "''").Replace(" ", "");

//insert into ProContent(标题,产品品牌,产品图,单价,公司名称,供货总量,计量单位,所在地) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}')

tempSql = string.Format("insert into ProContent(标题,产品描述,产品品牌,产品图,单价,公司名称,供货总量,计量单位,所在地) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}')", 标题, 产品描述, 产品品牌, 产品图, 单价, 公司名称, 供货总量, 计量单位, 所在地);

//alsql.Add(tempSql);

sbSql.Append(tempSql).Append("\r\n");

/* 公司成立时间 = Convert.ToString(dr["成立时间"]).Replace("'", "''").Replace(" ", "");

年营业额 = Convert.ToString(dr["年营业额"]).Replace("'", "''").Replace(" ", "");

主要经营地点 = ""; //Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

主要市场 = Convert.ToString(dr["主要市场"]).Replace("'", "''").Replace(" ", "");

经营品牌 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

主要客户 = Convert.ToString(dr["主要客户群"]).Replace("'", "''").Replace(" ", "");

管理体系认证 = Convert.ToString(dr["管理体系认证"]).Replace("'", "''").Replace(" ", "");

开户银行 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

银行帐号 = "";// Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

是否提供OEM代加工 = Convert.ToString(dr["OEM服务"]).Replace("'", "''").Replace(" ", "");

研发部门人数 = Convert.ToString(dr["研发人数"]).Replace("'", "''").Replace(" ", "");

厂房面积 = Convert.ToString(dr["厂房面积"]).Replace("'", "''").Replace(" ", "");

质量控制 = Convert.ToString(dr["质量控制"]).Replace("'", "''").Replace(" ", "");

月产量 = Convert.ToString(dr["月产量"]).Replace("'", "''").Replace(" ", "");

联系人 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "");

性别 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "").Contains("女士") ? ("女") : ("男");

部门 = "销售部";

电话 = Convert.ToString(dr["电话"]).Replace("'", "''").Replace(" ", "");

移动电话 = Convert.ToString(dr["移动电话"]).Replace("'", "''").Replace(" ", "");

传真 = Convert.ToString(dr["传真"]).Replace("'", "''").Replace(" ", "");

地址 = Convert.ToString(dr["地址"]).Replace("'", "''").Replace(" ", "");

邮编 = Convert.ToString(dr["邮编"]).Replace("'", "''").Replace(" ", "");

邮箱 = Convert.ToString(dr["邮箱"]).Replace("'", "''").Replace(" ", "");

公司主页 = Convert.ToString(dr["网址"]).Replace("'", "''").Replace(" ", "");

// 信用等级参考 = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

年进口额 = Convert.ToString(dr["年出口额"]).Replace("'", "''").Replace(" ", "");

年出口额 = Convert.ToString(dr["年进口额"]).Replace("'", "''").Replace(" ", "");

诚信 = "";

Fid = "";

Sid = "";

Tid = "";

Province = "";

City = "";

Area = "";

//tempCompanyName = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");

//tempAdd = Convert.ToString(dr["地址"]).Replace("'", "''");

//tempLinkMan = Convert.ToString(dr["联系人"]).Replace("'", "''");

//tempTel = Convert.ToString(dr["电话"]).Replace("'", "''");

//tempMobile = Convert.ToString(dr["移动电话"]).Replace("'", "''");

//tempFax = Convert.ToString(dr["传真"]).Replace("'", "''");*/

}

WriteSqls(sbSql.ToString(), "");

Application.DoEvents();

//this.richTextBox1.Text += sbSql.ToString() + "\r\n";

sbSql.Remove(0, sbSql.Length);

}

}

catch (Exception ex)

{

continue;

MessageBox.Show(ex.Message);

}

}

MessageBox.Show("success");

}

private void DataImport_Load(object sender, EventArgs e)

{

}

private void richTextBox1_TextChanged(object sender, EventArgs e)

{

}

private void btCompanys_Click(object sender, EventArgs e)

{

try

{

SqlDataReader drd = null;

DataTable dtProvince = this.Db.GetTable("select province from province");

DataTable dtCity = this.Db.GetTable("select city,province from city b,province c where b.father=c.provinceid order by province,city");

DataTable dtArea = this.Db.GetTable("select area,city,province from area a,city b,province c where a.father=b.cityid and b.father=c.provinceid order by province,city");

string Columns = this.Tbcolumn.Text.Trim();

string[] tempColumns = Columns.Split(',');

string tempColumn = "";

string tempArea = "";

string tempCity = "";

string tempProvince = "";

int tempCount = 0;

StringBuilder tempSql = new StringBuilder("");

DataRow dr = null;

for (int i = 0; i < tempColumns.Length; i++)

{

//drd.Dispose();

//drd = null;

// MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");

drd = this.Db.GetDataReader("select Gid,userName,[" + tempColumns[i] + "] from companys");

// MessageBox.Show(tempColumns[i] + drd.Read().ToString());

while (drd.Read())

{

bool tempState = false;

//MessageBox.Show(Columns + "--" + tempColumn + "-");

//if (i == 0) { drd.Close(); break; }

tempColumn = Convert.ToString(drd[tempColumns[i]]);

for (int j = 0; j < dtArea.Rows.Count; j++)

{

dr = dtArea.Rows[j];

tempArea = Convert.ToString(dr["area"]);//.Replace("区", "").Replace("县", "");

if (tempColumn.Contains(tempArea))

{

sbSql.AppendFormat("update companys set Province='{0}',city='{1}',area='{2}' where Gid={3} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(dr["City"]), Convert.ToString(dr["Area"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

}

}

if (!tempState)

{

for (int j = 0; j < dtCity.Rows.Count; j++)

{

dr = dtCity.Rows[j];

tempArea = Convert.ToString(dr["city"]).Replace("市", "");

if (tempColumn.Contains(tempArea))

{

sbSql.AppendFormat("update companys set Province='{0}',city='{1}',area='市辖区' where Gid={2} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(dr["City"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

}

}

}

if (!tempState)

{

for (int j = 0; j < dtProvince.Rows.Count; j++)

{

dr = dtProvince.Rows[j];

tempArea = Convert.ToString(dr["Province"]).Replace("省", "");

if (tempColumn.Contains(tempArea))

{

sbSql.AppendFormat("update companys set Province='{0}',city='市辖区',area='市辖区' where Gid={1} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

}

}

}

if (!tempState)

{

for (int j = 0; j < dtArea.Rows.Count; j++)

{

dr = dtArea.Rows[j];

tempArea = Convert.ToString(dr["area"]).Replace("镇", "").Replace("区", "").Replace("县", "");

if (tempColumn.Contains(tempArea))

{

sbSql.AppendFormat("update companys set Province='{0}',city='{1}',area='{2}' where Gid={3} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(dr["City"]), Convert.ToString(dr["Area"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

}

}

}

if (tempCount % 20000 == 0)

{

WriteSqls(sbSql.ToString(), "updateCity");

sbSql.Remove(0, sbSql.Length);

}

this.label2.Text = tempCount.ToString();

Application.DoEvents();

}

drd.Close();

//

}

WriteSqls(sbSql.ToString(), "updateCity");

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

}

private void btCompanySort_Click(object sender, EventArgs e)

{

try

{

SqlDataReader drd = null;

DataTable dtProvince = this.Db.GetTable("select Column_Name,Column_ID from Sort where Column_depth=1");

DataTable dtCity = this.Db.GetTable("select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName");

DataTable dtArea = this.Db.GetTable("select a.Column_Name TName,a.Column_ID Tid,b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort a,Sort b,Sort c where a.Parent_ID=b.Column_ID and b.Parent_ID=c.Column_ID order by FName,SName");

string Columns = this.tbCompanySort.Text.Trim();

string[] tempColumns = Columns.Split(',');

string tempColumn = "";

string tempArea = "";

string tempCity = "";

string tempProvince = "";

int tempCount = 0;

StringBuilder tempSql = new StringBuilder("");

DataRow dr = null;

for (int i = 0; i < tempColumns.Length; i++)

{

//drd.Dispose();

//drd = null;

// MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");

drd = this.Db.GetDataReader("select Gid,userName,[" + tempColumns[i] + "] from companys");

// MessageBox.Show(tempColumns[i] + drd.Read().ToString());

while (drd.Read())

{

bool tempState = false;

//MessageBox.Show(Columns + "--" + tempColumn + "-");

//if (i == 0) { drd.Close(); break; }

tempColumn = Convert.ToString(drd[tempColumns[i]]);

for (int j = 0; j < dtArea.Rows.Count; j++)

{

dr = dtArea.Rows[j];

tempArea = Convert.ToString(dr["TName"]);//.Replace("区", "").Replace("县", "");

if (tempColumn.Contains(tempArea) && tempArea!="其他")

{

sbSql.AppendFormat("update companys set Fid='{0}',Sid='{1}',Tid='{2}' where Gid={3} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(dr["Tid"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

if (!tempState)

{

for (int j = 0; j < dtCity.Rows.Count; j++)

{

dr = dtCity.Rows[j];

tempArea = Convert.ToString(dr["SName"]);//.Replace("市", "");

if (tempColumn.Contains(tempArea) && tempArea != "其他")

{

sbSql.AppendFormat("update companys set Fid='{0}',Sid='{1}',Tid='' where Gid={2} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

}

if (!tempState)

{

for (int j = 0; j < dtProvince.Rows.Count; j++)

{

dr = dtProvince.Rows[j];

tempArea = Convert.ToString(dr["Column_Name"]);//.Replace("省", "");

if (tempColumn.Contains(tempArea) && tempArea != "其他")

{

sbSql.AppendFormat("update companys set Fid='{0}',Sid='',Tid='' where Gid={1} and Fid is null;\r\n", Convert.ToString(dr["Column_ID"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

}

if (tempCount % 20000 == 0)

{

WriteSqls(sbSql.ToString(), "updateSort");

sbSql.Remove(0, sbSql.Length);

}

this.label2.Text = tempCount.ToString();

Application.DoEvents();

}

drd.Close();

//

}

WriteSqls(sbSql.ToString(), "updateSort");

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

MessageBox.Show("success!");

}

private void BtProductSort_Click(object sender, EventArgs e)

{

try

{

SqlDataReader drd = null;

DataTable dtProvince = this.Db.GetTable("select Column_Name,Column_ID from Sort where Column_depth=1");

DataTable dtCity = this.Db.GetTable("select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName");

DataTable dtArea = this.Db.GetTable("select a.Column_Name TName,a.Column_ID Tid,b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort a,Sort b,Sort c where a.Parent_ID=b.Column_ID and b.Parent_ID=c.Column_ID order by FName,SName");

string Columns = this.tbProductSort.Text.Trim();

string[] tempColumns = Columns.Split(',');

string tempColumn = "";

string tempArea = "";

string tempCity = "";

string tempProvince = "";

int tempCount = 0;

StringBuilder tempSql = new StringBuilder("");

DataRow dr = null;

for (int i = 0; i < tempColumns.Length; i++)

{

//drd.Dispose();

//drd = null;

// MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");

drd = this.Db.GetDataReader("select Gid,[" + tempColumns[i] + "] from ProContent");

// MessageBox.Show(tempColumns[i] + drd.Read().ToString());

while (drd.Read())

{

bool tempState = false;

tempColumn = Convert.ToString(drd[tempColumns[i]]);

for (int j = 0; j < dtArea.Rows.Count; j++)

{

dr = dtArea.Rows[j];

tempArea = Convert.ToString(dr["TName"]);//.Replace("区", "").Replace("县", "");

if (tempColumn.Contains(tempArea) && tempArea != "其他")

{

sbSql.AppendFormat("update ProContent set Fid='{0}',Sid='{1}',Tid='{2}' where Gid={3} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(dr["Tid"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

if (!tempState)

{

for (int j = 0; j < dtCity.Rows.Count; j++)

{

dr = dtCity.Rows[j];

tempArea = Convert.ToString(dr["SName"]);//.Replace("市", "");

if (tempColumn.Contains(tempArea) && tempArea != "其他")

{

sbSql.AppendFormat("update ProContent set Fid='{0}',Sid='{1}',Tid='' where Gid={2} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

}

if (!tempState)

{

for (int j = 0; j < dtProvince.Rows.Count; j++)

{

dr = dtProvince.Rows[j];

tempArea = Convert.ToString(dr["Column_Name"]);//.Replace("省", "");

if (tempColumn.Contains(tempArea) && tempArea != "其他")

{

sbSql.AppendFormat("update ProContent set Fid='{0}',Sid='',Tid='' where Gid={1} and Fid is null;\r\n", Convert.ToString(dr["Column_ID"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

}

if (tempCount % 20000 == 0)

{

WriteSqls(sbSql.ToString(), "updateProContentSort");

sbSql.Remove(0, sbSql.Length);

}

this.label2.Text = tempCount.ToString();

Application.DoEvents();

}

drd.Close();

//

}

WriteSqls(sbSql.ToString(), "updateProContentSort");

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

MessageBox.Show("success!");

}

public string replaceCharacter(string str)

{

string[] tempStr = new string[] { "经营部", "贸易部", "采购部", "销售中心", "办事处", "有限公司", "公司","代表处","经营部","采购中心","上海分公司","宁波分公司","上海办事处","营销中心","浙江办事处","宁波分公司","(销售部)","(业务部)","(经销商)" };

foreach (string s in tempStr)

{

str = str.Replace(s,"");

}

return str;

}

private void btProductCompany_Click(object sender, EventArgs e)

{

///匹配产品公司

try

{

SqlDataReader drd = null;

//DataTable dtProvince = this.Db.GetTable("select C_ID,公司名称 from companys");

////DataTable dtCity = this.Db.GetTable("select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName");

DataTable dtArea = this.Db.GetTable("select C_ID,公司名称 from companys");

string Columns = this.TbProductCompany.Text.Trim();

string[] tempColumns = Columns.Split(',');

string tempColumn = "";

string tempArea = "";

string tempCity = "";

string tempProvince = "";

int tempCount = 0;

StringBuilder tempSql = new StringBuilder("");

DataRow dr = null;

for (int i = 0; i < tempColumns.Length; i++)

{

//drd.Dispose();

//drd = null;

// MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");

drd = this.Db.GetDataReader("select Gid,[" + tempColumns[i] + "] from ProContent");

while (drd.Read())

{

bool tempState = false;

tempColumn = Convert.ToString(drd[tempColumns[i]]);

for (int j = 0; j < dtArea.Rows.Count; j++)

{

dr = dtArea.Rows[j];

tempArea = replaceCharacter(Convert.ToString(dr["公司名称"]));//.Replace("区", "").Replace("县", "");

if (tempColumn.Contains(tempArea) && tempArea != "其他")

{

sbSql.AppendFormat("update ProContent set C_ID='{0}' where Gid={1} and C_ID is null;\r\n", Convert.ToString(dr["C_ID"]), Convert.ToString(drd["Gid"]));

tempCount++;

tempState = true;

break;

}

}

if (tempCount % 20000 == 0)

{

WriteSqls(sbSql.ToString(), "updateProContentC_ID");

sbSql.Remove(0, sbSql.Length);

}

this.label2.Text = tempCount.ToString();

Application.DoEvents();

}

drd.Close();

//

}

WriteSqls(sbSql.ToString(), "updateProContentC_ID");

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

MessageBox.Show("success!");

}

private void btCompanyProduct_Click(object sender, EventArgs e)

{

//将没有分类的产品用公司的分类表示

this.Db.GetState("update ProContnt set Fid=(select Fid from companys where C_ID=ProContnt.C_ID),Sid=(select Sid from companys where C_ID=ProContnt.C_ID),Tid=(select Tid from companys where C_ID=ProContnt.C_ID) where Fid is null");

MessageBox.Show("success!");

}

}

}

/*

* select a.Column_Name TName,a.Column_ID Tid,b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort a,Sort b,Sort c where

a.Parent_ID=b.Column_ID and b.Parent_ID=c.Column_ID order by FName,SName

select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where

b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName

*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: