Преглед изворни кода

新增DmServerInstrumentData.cs文件

develop
OCEAN пре 4 месеци
родитељ
комит
7e280702cd
5 измењених фајлова са 195 додато и 3 уклоњено
  1. +3
    -2
      CNAS_DBSync/frmDatabaseParams.Designer.cs
  2. +74
    -0
      CNAS_DBSync/frmDatabaseParams.cs
  3. +116
    -0
      CnasSynchronusClient/InsturmentData/DmServerInstrumentData.cs
  4. +2
    -1
      CnasSynchrousModel/InstrumentDataSourceInfo.cs
  5. BIN
      dll/CnasSynchrousModel.dll

+ 3
- 2
CNAS_DBSync/frmDatabaseParams.Designer.cs Прегледај датотеку

@@ -1804,7 +1804,7 @@
//
this.btnDmConn.Location = new System.Drawing.Point(167, 226);
this.btnDmConn.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.btnDmConn.Name = "btnDmConn";
this.btnDmConn.Name = "txtDmPort";
this.btnDmConn.Size = new System.Drawing.Size(472, 28);
this.btnDmConn.TabIndex = 68;
//
@@ -1822,11 +1822,12 @@
//
this.button1.Location = new System.Drawing.Point(599, 272);
this.button1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.button1.Name = "button1";
this.button1.Name = "btnDmConn";
this.button1.Size = new System.Drawing.Size(118, 36);
this.button1.TabIndex = 69;
this.button1.Text = "测试连接";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.btnDmConn_Click);
//
// txtDmServer
//


+ 74
- 0
CNAS_DBSync/frmDatabaseParams.cs Прегледај датотеку

@@ -591,6 +591,37 @@ namespace CNAS_DBSync
}
syncInstrumentItem.SyncInstrumentDSInfo.InstrumentDataSourceType = DataSourceType.Kingbase;
}
if (e.TabPage == tabDm)
{
if (!CheckExcelControl() || !CheckAccessControl() || !CheckSQLiteControl() ||
!CheckSQLServerControl() || !CheckMySqlControl() || !CheckOracleControl() ||
!CheckFoxproControl() || !CheckTxtControl() || !CheckPostgreSqlControl() ||
!CheckKingbaseControl())
{
if (MessageBox.Show("其他数据源存在已保存数据,继续将删除这些值,是否继续", "提示",
MessageBoxButtons.OKCancel) == DialogResult.OK)
{
ClearAccessControl();
ClearExcelControl();
ClearSqliteControl();
ClearSQLServerControl();
ClearMySQLControl();
ClearOracleControl();
ClearFoxproControl();
ClearTxtControl();
ClearPostgreSqlControl();
ClearKingbaseControl();

ClearObjectValue();
}
else
{
ChangeSelectTabPageByType();
return;
}
}
syncInstrumentItem.SyncInstrumentDSInfo.InstrumentDataSourceType = DataSourceType.Dm;
}
}

//根据数据源类型切换Tab页
@@ -1266,5 +1297,48 @@ namespace CNAS_DBSync
//else
// MessageBox.Show("连接失败!");
}

private void btnDmConn_Click(object sender, EventArgs e)
{
if (this.txtDmHost.Text.Trim() == "" || this.txtDmServer.Text.Trim() == "" ||
this.txtDmUser.Text.Trim() == "" || this.btnDmConn.Text.Trim() == "")
{
MessageBox.Show("请填写相关连接信息。");
return;
}

InstrumentDataSourceInfo dbinfo = new InstrumentDataSourceInfo();
dbinfo.Host = this.txtDmHost.Text.Trim();
dbinfo.ServerName = this.txtDmServer.Text.Trim();
dbinfo.UserId = this.txtDmUser.Text.Trim();
dbinfo.UserPwd = this.txtDmPwd.Text.Trim();
dbinfo.Port = this.btnDmConn.Text.Trim();

if (new DmServerInstrumentData(dbinfo, new object[] { "", "", "" }).TestSQLServerLink())
MessageBox.Show("连接成功!");
else
MessageBox.Show("连接失败!");
}

private bool CheckDmControl()
{
if (this.txtDmHost.Text.Trim() != "" || this.txtDmServer.Text.Trim() != "" ||
this.txtDmUser.Text.Trim() != "" || this.txtDmPwd.Text.Trim() != "" ||
this.btnDmConn.Text.Trim() != "")
return false;
else
return true;
}

private void ClearDmControl()
{
this.txtDmHost.Text = "";
this.txtDmServer.Text = "";
this.txtDmUser.Text = "";
this.txtDmPwd.Text = "";
this.btnDmConn.Text = "";
}


}
}

+ 116
- 0
CnasSynchronusClient/InsturmentData/DmServerInstrumentData.cs Прегледај датотеку

@@ -0,0 +1,116 @@
using CnasSynchronousCommon;
using CnasSynchronusDAL;
using CnasSynchronusIDAL;
using CnasSynchrousModel;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;

namespace CnasSynchronusClient
{
public class DmServerInstrumentData : InstrumentData
{
public string StrHost { get; set; }
public string StrServerName { get; set; }
public string StrUser { get; set; }
public string StrPwd { get; set; }
public string strTableName { get; set; }
public string strDateColumn { get; set; }
public string strDate { get; set; }
public string StrPort { get; set; }

public IDmDBService dmDataBaseService { get { return new DmDBService(); } }
public DmFormatConfig DmFormat { get; set; }

public DmServerInstrumentData(InstrumentDataSourceInfo dataSourceInfo, object[] vs)
{
try
{
DmFormat = FileOperation.GetFormatConfigData<DmFormatConfig>("DmFormatConfig.xml");

this.StrHost = dataSourceInfo.Host;
this.StrServerName = dataSourceInfo.ServerName;
this.StrUser = dataSourceInfo.UserId;
this.StrPwd = dataSourceInfo.UserPwd;
this.StrPort = dataSourceInfo.Port;

this.strTableName = vs[0].ToString();
this.strDateColumn = vs[1].ToString();
this.strDate = vs[2].ToString();
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
}

public override Dictionary<string, DataTable> GetInstrumentData()
{
return dmDataBaseService.GetInstrumentData(new DmOpenParams
{
StrHost = StrHost,
StrServer = StrServerName,
StrUser = StrUser,
StrPwd = StrPwd,
StrPort = StrPort
});
}

public override DataTable GetInstrumentDataByDate()
{
return dmDataBaseService.GetInstrumentDataByDate(
new DmOpenParams
{
StrHost = StrHost,
StrServer = StrServerName,
StrUser = StrUser,
StrPwd = StrPwd,
StrPort = StrPort,
autoSql = DmFormat.AutoSql
},
new ConditionParams
{
TableName = strTableName,
DateColumn = strDateColumn,
DateValue = strDate
}
);
}

public override DataTable GetInstrumentDataStruct()
{
return dmDataBaseService.GetInstrumentDataStruct(
new DmOpenParams
{
StrHost = StrHost,
StrServer = StrServerName,
StrUser = StrUser,
StrPwd = StrPwd,
StrPort = StrPort,
autoSql = DmFormat.AutoSql
},
new ConditionParams
{
TableName = strTableName
}
);
}

/// <summary>
/// 测试连接
/// </summary>
/// <returns></returns>
public bool TestSQLServerLink()
{
return dmDataBaseService.TestConnect(
StrHost,
StrServerName,
StrUser,
StrPwd,
StrPort
);
}
}
}

+ 2
- 1
CnasSynchrousModel/InstrumentDataSourceInfo.cs Прегледај датотеку

@@ -20,7 +20,8 @@ namespace CnasSynchrousModel
FoxPro,
TXT,
PostgreSQL,
Kingbase
Kingbase,
Dm
}

public enum PathType


BIN
dll/CnasSynchrousModel.dll Прегледај датотеку


Loading…
Откажи
Сачувај