Files
C2P/C2P_Data/DtProxy.cs
T
Samuele E. Locatelli 1983c4de76 v 2.3.175 --> #440 redmine
- fix parametri ab inizio per SIM
- fix calcolo con doUpdate a N
2015-05-26 12:42:44 +02:00

126 lines
6.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SteamWare;
using System.Reflection;
using System.Data.SqlClient;
namespace C2P_Data
{
public class DtProxy
{
#region area protected
protected DtProxy()
{
// inizializzo i table adapters
avvioTableAdapters();
setupConnectionString();
// aggiunta x gestione timeout esteso (ove necessario)!
fixCommandTimeout();
}
/// <summary>
/// sistemazione timeout comandi nei tableadapter
/// </summary>
private void fixCommandTimeout()
{
//SetAllCommandTimeouts(taQL, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taQFQ, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taQRM, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taRMD, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taSCL, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taVSCli, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taVSItm, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taVSRM, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taRPT, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taO4I, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taOH, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
//SetAllCommandTimeouts(taSC2C, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
SetAllCommandTimeouts(taImpTL, memLayer.ML.confReadInt("sqlLongCommandTimeout"));
}
void SetAllCommandTimeouts(object adapter, int timeout)
{
var commands = adapter.GetType().InvokeMember(
"CommandCollection",
BindingFlags.GetProperty | BindingFlags.Instance | BindingFlags.NonPublic,
null, adapter, new object[0]);
var sqlCommand = (SqlCommand[])commands;
foreach (var cmd in sqlCommand)
{
cmd.CommandTimeout = timeout;
}
}
/// <summary>
/// procedura di avvio dei tableAdapter
/// </summary>
protected virtual void avvioTableAdapters()
{
taQL = new DS_QuotesTableAdapters.QuoteListTableAdapter();
taQFQ = new DS_QuotesTableAdapters.QuoteFull_QTableAdapter();
taQRM = new DS_QuotesTableAdapters.QuoteRMTableAdapter();
taRMD = new DS_QuotesTableAdapters.RawMatDetTableAdapter();
taSCL = new DS_QuotesTableAdapters.StdCostListTableAdapter();
taCVQ = new DS_QuotesTableAdapters.stp_checkValidQuoteTableAdapter();
taVSCli = new DS_UtilityTableAdapters.v_selClientTableAdapter();
taVSItm = new DS_UtilityTableAdapters.v_selItemsTableAdapter();
taVSRM = new DS_UtilityTableAdapters.v_selRawMatTableAdapter();
taRPT = new DS_UtilityTableAdapters.ReportPrintTicketTableAdapter();
taO4I = new DS_UtilityTableAdapters.Offers4ItemTableAdapter();
taOH = new DS_UtilityTableAdapters.OrderHistTableAdapter();
taSC2C = new DS_UtilityTableAdapters.StdCost2createTableAdapter();
taImpTL = new DS_UtilityTableAdapters.Import_TicketListTableAdapter();
taListVal = new DS_UtilityTableAdapters.ListValuesTableAdapter();
}
/// <summary>
/// effettua setup dei connection strings da web.config della singola applicazione
/// </summary>
protected virtual void setupConnectionString()
{
string connStr = memLayer.ML.confReadString("C2PConnectionString");
// connections del db vocabolario
taQL.Connection.ConnectionString = connStr;
taQFQ.Connection.ConnectionString = connStr;
taQRM.Connection.ConnectionString = connStr;
taRMD.Connection.ConnectionString = connStr;
taSCL.Connection.ConnectionString = connStr;
taCVQ.Connection.ConnectionString = connStr;
taVSCli.Connection.ConnectionString = connStr;
taVSItm.Connection.ConnectionString = connStr;
taVSRM.Connection.ConnectionString = connStr;
taRPT.Connection.ConnectionString = connStr;
taO4I.Connection.ConnectionString = connStr;
taOH.Connection.ConnectionString = connStr;
taSC2C.Connection.ConnectionString = connStr;
taImpTL.Connection.ConnectionString = connStr;
taListVal.Connection.ConnectionString = connStr;
}
#endregion
#region area public
public DS_QuotesTableAdapters.QuoteListTableAdapter taQL;
public DS_QuotesTableAdapters.QuoteFull_QTableAdapter taQFQ;
public DS_QuotesTableAdapters.QuoteRMTableAdapter taQRM;
public DS_QuotesTableAdapters.RawMatDetTableAdapter taRMD;
public DS_QuotesTableAdapters.StdCostListTableAdapter taSCL;
public DS_QuotesTableAdapters.stp_checkValidQuoteTableAdapter taCVQ;
public DS_UtilityTableAdapters.v_selClientTableAdapter taVSCli;
public DS_UtilityTableAdapters.v_selItemsTableAdapter taVSItm;
public DS_UtilityTableAdapters.v_selRawMatTableAdapter taVSRM;
public DS_UtilityTableAdapters.ReportPrintTicketTableAdapter taRPT;
public DS_UtilityTableAdapters.Offers4ItemTableAdapter taO4I;
public DS_UtilityTableAdapters.OrderHistTableAdapter taOH;
public DS_UtilityTableAdapters.StdCost2createTableAdapter taSC2C;
public DS_UtilityTableAdapters.Import_TicketListTableAdapter taImpTL;
public DS_UtilityTableAdapters.ListValuesTableAdapter taListVal;
public static DtProxy man = new DtProxy();
#endregion
}
}