diff --git a/DataUploader/GestData.cs b/DataUploader/GestData.cs
index a849f84..2654f7b 100644
--- a/DataUploader/GestData.cs
+++ b/DataUploader/GestData.cs
@@ -1,67 +1,63 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
+using NLog;
+using System;
using System.Configuration;
using System.Data.Odbc;
-using System.Configuration;
-using NLog;
namespace DataUploader
{
- public class GestData
+ public class GestData
+ {
+
+ private static Logger logger = LogManager.GetCurrentClassLogger();
+
+ protected GestData()
+ {
+ setupConnString();
+ }
+ protected OdbcConnection conn;
+ ///
+ /// configurazione stringa connesisone dati
+ ///
+ private void setupConnString()
+ {
+ conn = new OdbcConnection();
+ // ho creato un DSN di sistema a nome "DB_Sigla" cui faccio riferimento (32 perché 32 bit x mia demo... ho dovuto convertire accdb in mdb...)
+ //string connectionString = "Dsn=DB_Sigla32;Initial Catalog=TESDOCUM;"; // Questa va su un MDB di cui esiste un DSN
+ //string connectionString = "Driver={Microsoft Access Driver(*.mdb, *.accdb)};DBQ=C:\\DB_SIGLA.accdb;";
+ //string connectionString = "Dsn=DITTA1;Initial Catalog=TESDOCUM;"; // Questa non funziona senza una password eslpicita, anche se esiste un DSN DITTA1 con pwd salvata
+ //string connectionString = "Dsn=DITTA1;Uid=DB2;Pwd=ccL21x$1wow;Initial Catalog=TESDOCUM;"; // Questa funziona se esiste un DSN DITTA1
+ //string connectionString = "Driver={IBM DB2 ODBC DRIVER};DataBase=DITTA1; HostName=RigaSRV02; Protocol=TCPIP;Port=50000;Uid=DB2;Pwd=ccL21x$1wow"; //questa funziona anche senza DSN esistente
+ string connectionString = ConfigurationManager.AppSettings["connString"];
+ conn.ConnectionString = connectionString;
+ }
+
+ public static GestData proc = new GestData();
+
+
+ ///
+ /// restituisce un array di stringhe URL da chiamare per caricare i dati documento / cliente
+ ///
+ /// numero ultimo doc caricato (restituirà docs successivi)
+ ///
+ public string[] getNewDocsUrls(int numeroFrom)
{
- private static Logger logger = LogManager.GetCurrentClassLogger();
+ if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ {
+ logger.Info("Inizio getNewDocsUrls");
+ }
- protected GestData()
- {
- setupConnString();
- }
- protected OdbcConnection conn;
- ///
- /// configurazione stringa connesisone dati
- ///
- private void setupConnString()
- {
- conn = new OdbcConnection();
- // ho creato un DSN di sistema a nome "DB_Sigla" cui faccio riferimento (32 perché 32 bit x mia demo... ho dovuto convertire accdb in mdb...)
- //string connectionString = "Dsn=DB_Sigla32;Initial Catalog=TESDOCUM;"; // Questa va su un MDB di cui esiste un DSN
- //string connectionString = "Driver={Microsoft Access Driver(*.mdb, *.accdb)};DBQ=C:\\DB_SIGLA.accdb;";
- //string connectionString = "Dsn=DITTA1;Initial Catalog=TESDOCUM;"; // Questa non funziona senza una password eslpicita, anche se esiste un DSN DITTA1 con pwd salvata
- //string connectionString = "Dsn=DITTA1;Uid=DB2;Pwd=ccL21x$1wow;Initial Catalog=TESDOCUM;"; // Questa funziona se esiste un DSN DITTA1
- //string connectionString = "Driver={IBM DB2 ODBC DRIVER};DataBase=DITTA1; HostName=RigaSRV02; Protocol=TCPIP;Port=50000;Uid=DB2;Pwd=ccL21x$1wow"; //questa funziona anche senza DSN esistente
- string connectionString = ConfigurationManager.AppSettings["connString"];
- conn.ConnectionString = connectionString;
- }
+ // ipotesi: si caricano maxDocsToUpload documenti alal volta (e quindi altrettanti clienti)
+ int maxDocsToUpload = Convert.ToInt32(ConfigurationManager.AppSettings["maxDocsToUpload"]);
+ string[] answ = new string[maxDocsToUpload * 2]; // 2 stringhe, una x doc e 1 x cliente x ogni invio...
+ string[] rDoc = new string[20];
+ string[] rCli = new string[12];
+ string comandoDoc;
- public static GestData proc = new GestData();
-
-
- ///
- /// restituisce un array di stringhe URL da chiamare per caricare i dati documento / cliente
- ///
- /// numero ultimo doc caricato (restituirà docs successivi)
- ///
- public string[] getNewDocsUrls(int numeroFrom)
- {
-
- if (ConfigurationManager.AppSettings["debugMode"] == "true")
- {
- logger.Info("Inizio getNewDocsUrls");
- }
-
- // ipotesi: si caricano maxDocsToUpload documenti alal volta (e quindi altrettanti clienti)
- int maxDocsToUpload = Convert.ToInt32(ConfigurationManager.AppSettings["maxDocsToUpload"]);
- string[] answ = new string[maxDocsToUpload * 2]; // 2 stringhe, una x doc e 1 x cliente x ogni invio...
- string[] rDoc = new string[20];
- string[] rCli = new string[12];
- string comandoDoc;
-
- // qui va fatto ciclo x spazzare 1 ad 1 i documenti ed i relativi clienti
- if (false)
- { // query in formato ACCESS 2010
- comandoDoc = string.Format(@"SELECT TOP {0}
+ // qui va fatto ciclo x spazzare 1 ad 1 i documenti ed i relativi clienti
+ if (false)
+ { // query in formato ACCESS 2010
+ comandoDoc = string.Format(@"SELECT TOP {0}
TESDOCUM.TIPOPROTOC, TESDOCUM.NUMERO, TESDOCUM.ESERPROTOC,
TESDOCUM.NUMEPROTOC, TESDOCUM.DATAPROTOC, TESDOCUM.ESERRIFERI,
TESDOCUM.NUMERIFERI, TESDOCUM.TIPORIFERI, TESDOCUM.DATARIFERI,
@@ -71,14 +67,14 @@ namespace DataUploader
TESDOCUM.ULT_AGG, TESDOCUM.ANNOTAZION
FROM TESDOCUM
WHERE (CLng(TESDOCUM.NUMERO) > ({1}))
- AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC'))
+ AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC', 'PR'))
ORDER BY TESDOCUM.NUMERO
",
- maxDocsToUpload, numeroFrom);
- }
- else
- { // query in formato DB2
- comandoDoc = string.Format(@"SELECT
+ maxDocsToUpload, numeroFrom);
+ }
+ else
+ { // query in formato DB2
+ comandoDoc = string.Format(@"SELECT
TESDOCUM.TIPOPROTOC, TESDOCUM.NUMERO, TESDOCUM.ESERPROTOC,
TESDOCUM.NUMEPROTOC, TESDOCUM.DATAPROTOC, TESDOCUM.ESERRIFERI,
TESDOCUM.NUMERIFERI, TESDOCUM.TIPORIFERI, TESDOCUM.DATARIFERI,
@@ -88,51 +84,51 @@ namespace DataUploader
TESDOCUM.ULT_AGG, TESDOCUM.ANNOTAZION
FROM TESDOCUM
WHERE (INT(TESDOCUM.NUMERO) > ({1}))
- AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC'))
+ AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC', 'PR'))
ORDER BY TESDOCUM.NUMERO
FETCH FIRST {0} ROWS ONLY
",
- maxDocsToUpload, numeroFrom);
- }
- // try/catch x db e ciclo su dati...
- try
+ maxDocsToUpload, numeroFrom);
+ }
+ // try/catch x db e ciclo su dati...
+ try
+ {
+ conn.Open();
+ if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ {
+ logger.Info("Aperta connessione ODBC");
+ }
+
+ // dati documento
+ int num = 0;
+ using (OdbcCommand com = new OdbcCommand(comandoDoc, conn))
+ {
+ using (OdbcDataReader reader = com.ExecuteReader())
+ {
+ while (reader.Read())
{
- conn.Open();
- if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ for (int i = 0; i < 20; i++)
+ {
+ try
{
- logger.Info("Aperta connessione ODBC");
+ rDoc[i] = reader.GetString(i).Trim().Replace(" ", "+");
}
-
- // dati documento
- int num = 0;
- using (OdbcCommand com = new OdbcCommand(comandoDoc, conn))
+ catch
{
- using (OdbcDataReader reader = com.ExecuteReader())
- {
- while (reader.Read())
- {
- for (int i = 0; i < 20; i++)
- {
- try
- {
- rDoc[i] = reader.GetString(i).Trim().Replace(" ", "+");
- }
- catch
- {
- rDoc[i] = "";
- }
- }
+ rDoc[i] = "";
+ }
+ }
- //if (ConfigurationManager.AppSettings["debugMode"] == "true")
- //{
- // logger.Info("Completata lettura ODBC x DOC");
- //}
+ //if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ //{
+ // logger.Info("Completata lettura ODBC x DOC");
+ //}
- // il campo 12 è il cod cliente!
- rCli[0] = rDoc[12];
+ // il campo 12 è il cod cliente!
+ rCli[0] = rDoc[12];
- // cellulare e email trovati in USRCLIFO, relazionato su CODSIGLA
- string comandoCli = string.Format(@"SELECT CLIFO.CODICE, CLIFO.RAGIONESOC, CLIFO.COFI,
+ // cellulare e email trovati in USRCLIFO, relazionato su CODSIGLA
+ string comandoCli = string.Format(@"SELECT CLIFO.CODICE, CLIFO.RAGIONESOC, CLIFO.COFI,
CLIFO.TEL, USRCLIFO.CELNM AS CELL,
CASE WHEN USRCLIFO.CELNM <> ' ' THEN 1 ELSE 0 END AS ENABLE_SMS,
USRCLIFO.E_MAILL AS EMAIL,
@@ -142,92 +138,92 @@ namespace DataUploader
ON CLIFO.CODICE = USRCLIFO.CODSIGLA
WHERE CLIFO.TIPO='C'
AND CLIFO.CODICE = '{0}'",
- rCli[0]);
+ rCli[0]);
- try
- {
- using (OdbcCommand comCli = new OdbcCommand(comandoCli, conn))
- {
- using (OdbcDataReader readerCli = comCli.ExecuteReader())
- {
- while (readerCli.Read())
- {
- for (int j = 0; j < 12; j++)
- {
- try
- {
- rCli[j] = readerCli.GetString(j).Trim().Replace(" ", "+");
- }
- catch
- {
- rCli[j] = "";
- }
- }
- }
- }
- }
-
- //if (ConfigurationManager.AppSettings["debugMode"] == "true")
- //{
- // logger.Info("Completata lettura ODBC x CLI");
- //}
-
- // formatto answ... prima CLI poi DOCS...
- answ[num++] = createUrlCli(rCli);
- answ[num++] = createUrlDoc(rDoc);
- }
- catch (Exception ex)
- {
- logger.Error("Eccezione in comandoCli{0}Comando: {1}{0}{2}", Environment.NewLine, comandoCli, ex);
- }
+ try
+ {
+ using (OdbcCommand comCli = new OdbcCommand(comandoCli, conn))
+ {
+ using (OdbcDataReader readerCli = comCli.ExecuteReader())
+ {
+ while (readerCli.Read())
+ {
+ for (int j = 0; j < 12; j++)
+ {
+ try
+ {
+ rCli[j] = readerCli.GetString(j).Trim().Replace(" ", "+");
}
+ catch
+ {
+ rCli[j] = "";
+ }
+ }
}
+ }
}
- }
- catch (Exception ex)
- {
- logger.Error("Eccezione{0}Comando: {1}{0}{2}", Environment.NewLine, comandoDoc, ex);
- }
- finally
- {
- conn.Close();
- }
+ //if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ //{
+ // logger.Info("Completata lettura ODBC x CLI");
+ //}
- if (ConfigurationManager.AppSettings["debugMode"] == "true")
- {
- logger.Info("Chiusura connessione ODBC");
+ // formatto answ... prima CLI poi DOCS...
+ answ[num++] = createUrlCli(rCli);
+ answ[num++] = createUrlDoc(rDoc);
+ }
+ catch (Exception ex)
+ {
+ logger.Error("Eccezione in comandoCli{0}Comando: {1}{0}{2}", Environment.NewLine, comandoCli, ex);
+ }
}
-
- // end ciclo, resituisco tutti i records
- return answ;
+ }
}
+ }
+ catch (Exception ex)
+ {
+ logger.Error("Eccezione{0}Comando: {1}{0}{2}", Environment.NewLine, comandoDoc, ex);
+ }
- ///
- /// restituisce un array di stringhe URL da chiamare per caricare i dati documento / cliente
- ///
- /// numero ultimo doc caricato (restituirà docs successivi)
- /// numero di doc da ricaricare (prima dell'ultimo caricato...)
- ///
- public string[] reloadLastDocs(int numeroFrom, int num2reload)
- {
+ finally
+ {
+ conn.Close();
+ }
- if (ConfigurationManager.AppSettings["debugMode"] == "true")
- {
- logger.Info("Inizio getNewDocsUrls");
- }
+ if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ {
+ logger.Info("Chiusura connessione ODBC");
+ }
- // ipotesi: si caricano maxDocsToUpload documenti alla volta (e quindi altrettanti clienti)
- int maxDocsToUpload = num2reload + 1;
- string[] answ = new string[maxDocsToUpload * 2]; // 2 stringhe, una x doc e 1 x cliente x ogni invio...
- string[] rDoc = new string[20];
- string[] rCli = new string[12];
- string comandoDoc;
+ // end ciclo, resituisco tutti i records
+ return answ;
+ }
- // qui va fatto ciclo x spazzare 1 ad 1 i documenti ed i relativi clienti
- if (false)
- { // query in formato ACCESS 2010
- comandoDoc = string.Format(@"SELECT TOP {0}
+ ///
+ /// restituisce un array di stringhe URL da chiamare per caricare i dati documento / cliente
+ ///
+ /// numero ultimo doc caricato (restituirà docs successivi)
+ /// numero di doc da ricaricare (prima dell'ultimo caricato...)
+ ///
+ public string[] reloadLastDocs(int numeroFrom, int num2reload)
+ {
+
+ if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ {
+ logger.Info("Inizio getNewDocsUrls");
+ }
+
+ // ipotesi: si caricano maxDocsToUpload documenti alla volta (e quindi altrettanti clienti)
+ int maxDocsToUpload = num2reload + 1;
+ string[] answ = new string[maxDocsToUpload * 2]; // 2 stringhe, una x doc e 1 x cliente x ogni invio...
+ string[] rDoc = new string[20];
+ string[] rCli = new string[12];
+ string comandoDoc;
+
+ // qui va fatto ciclo x spazzare 1 ad 1 i documenti ed i relativi clienti
+ if (false)
+ { // query in formato ACCESS 2010
+ comandoDoc = string.Format(@"SELECT TOP {0}
TESDOCUM.TIPOPROTOC, TESDOCUM.NUMERO, TESDOCUM.ESERPROTOC,
TESDOCUM.NUMEPROTOC, TESDOCUM.DATAPROTOC, TESDOCUM.ESERRIFERI,
TESDOCUM.NUMERIFERI, TESDOCUM.TIPORIFERI, TESDOCUM.DATARIFERI,
@@ -237,14 +233,14 @@ namespace DataUploader
TESDOCUM.ULT_AGG, TESDOCUM.ANNOTAZION
FROM TESDOCUM
WHERE (CLng(TESDOCUM.NUMERO) > ({1}))
- AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC'))
+ AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC', 'PR'))
ORDER BY TESDOCUM.NUMERO
",
- maxDocsToUpload, numeroFrom);
- }
- else
- { // query in formato DB2
- comandoDoc = string.Format(@"SELECT
+ maxDocsToUpload, numeroFrom);
+ }
+ else
+ { // query in formato DB2
+ comandoDoc = string.Format(@"SELECT
TESDOCUM.TIPOPROTOC, TESDOCUM.NUMERO, TESDOCUM.ESERPROTOC,
TESDOCUM.NUMEPROTOC, TESDOCUM.DATAPROTOC, TESDOCUM.ESERRIFERI,
TESDOCUM.NUMERIFERI, TESDOCUM.TIPORIFERI, TESDOCUM.DATARIFERI,
@@ -254,51 +250,51 @@ namespace DataUploader
TESDOCUM.ULT_AGG, TESDOCUM.ANNOTAZION
FROM TESDOCUM
WHERE (INT(TESDOCUM.NUMERO) > ({1}))
- AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC'))
+ AND (TESDOCUM.TIPOPROTOC IN ('OC', 'DC', 'PR'))
ORDER BY TESDOCUM.NUMERO
FETCH FIRST {0} ROWS ONLY
",
- maxDocsToUpload, numeroFrom - num2reload);
- }
- // try/catch x db e ciclo su dati...
- try
+ maxDocsToUpload, numeroFrom - num2reload);
+ }
+ // try/catch x db e ciclo su dati...
+ try
+ {
+ conn.Open();
+ if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ {
+ logger.Info("Aperta connessione ODBC");
+ }
+
+ // dati documento
+ int num = 0;
+ using (OdbcCommand com = new OdbcCommand(comandoDoc, conn))
+ {
+ using (OdbcDataReader reader = com.ExecuteReader())
+ {
+ while (reader.Read())
{
- conn.Open();
- if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ for (int i = 0; i < 20; i++)
+ {
+ try
{
- logger.Info("Aperta connessione ODBC");
+ rDoc[i] = reader.GetString(i).Trim().Replace(" ", "+");
}
-
- // dati documento
- int num = 0;
- using (OdbcCommand com = new OdbcCommand(comandoDoc, conn))
+ catch
{
- using (OdbcDataReader reader = com.ExecuteReader())
- {
- while (reader.Read())
- {
- for (int i = 0; i < 20; i++)
- {
- try
- {
- rDoc[i] = reader.GetString(i).Trim().Replace(" ", "+");
- }
- catch
- {
- rDoc[i] = "";
- }
- }
+ rDoc[i] = "";
+ }
+ }
- //if (ConfigurationManager.AppSettings["debugMode"] == "true")
- //{
- // logger.Info("Completata lettura ODBC x DOC");
- //}
+ //if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ //{
+ // logger.Info("Completata lettura ODBC x DOC");
+ //}
- // il campo 12 è il cod cliente!
- rCli[0] = rDoc[12];
+ // il campo 12 è il cod cliente!
+ rCli[0] = rDoc[12];
- // cellulare e email trovati in USRCLIFO, relazionato su CODSIGLA
- string comandoCli = string.Format(@"SELECT CLIFO.CODICE, CLIFO.RAGIONESOC, CLIFO.COFI,
+ // cellulare e email trovati in USRCLIFO, relazionato su CODSIGLA
+ string comandoCli = string.Format(@"SELECT CLIFO.CODICE, CLIFO.RAGIONESOC, CLIFO.COFI,
CLIFO.TEL, USRCLIFO.CELNM AS CELL,
CASE WHEN USRCLIFO.CELNM <> ' ' THEN 1 ELSE 0 END AS ENABLE_SMS,
USRCLIFO.E_MAILL AS EMAIL,
@@ -308,87 +304,87 @@ namespace DataUploader
ON CLIFO.CODICE = USRCLIFO.CODSIGLA
WHERE CLIFO.TIPO='C'
AND CLIFO.CODICE = '{0}'",
- rCli[0]);
+ rCli[0]);
- try
- {
- using (OdbcCommand comCli = new OdbcCommand(comandoCli, conn))
- {
- using (OdbcDataReader readerCli = comCli.ExecuteReader())
- {
- while (readerCli.Read())
- {
- for (int j = 0; j < 12; j++)
- {
- try
- {
- rCli[j] = readerCli.GetString(j).Trim().Replace(" ", "+");
- }
- catch
- {
- rCli[j] = "";
- }
- }
- }
- }
- }
-
- //if (ConfigurationManager.AppSettings["debugMode"] == "true")
- //{
- // logger.Info("Completata lettura ODBC x CLI");
- //}
-
- // formatto answ... prima CLI poi DOCS...
- answ[num++] = createUrlCli(rCli);
- answ[num++] = createUrlDoc(rDoc);
- }
- catch (Exception ex)
- {
- logger.Error("Eccezione in comandoCli{0}Comando: {1}{0}{2}", Environment.NewLine, comandoCli, ex);
- }
+ try
+ {
+ using (OdbcCommand comCli = new OdbcCommand(comandoCli, conn))
+ {
+ using (OdbcDataReader readerCli = comCli.ExecuteReader())
+ {
+ while (readerCli.Read())
+ {
+ for (int j = 0; j < 12; j++)
+ {
+ try
+ {
+ rCli[j] = readerCli.GetString(j).Trim().Replace(" ", "+");
}
+ catch
+ {
+ rCli[j] = "";
+ }
+ }
}
+ }
}
- }
- catch (Exception ex)
- {
- logger.Error("Eccezione{0}Comando: {1}{0}{2}", Environment.NewLine, comandoDoc, ex);
- }
- finally
- {
- conn.Close();
- }
+ //if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ //{
+ // logger.Info("Completata lettura ODBC x CLI");
+ //}
- if (ConfigurationManager.AppSettings["debugMode"] == "true")
- {
- logger.Info("Chiusura connessione ODBC");
+ // formatto answ... prima CLI poi DOCS...
+ answ[num++] = createUrlCli(rCli);
+ answ[num++] = createUrlDoc(rDoc);
+ }
+ catch (Exception ex)
+ {
+ logger.Error("Eccezione in comandoCli{0}Comando: {1}{0}{2}", Environment.NewLine, comandoCli, ex);
+ }
}
-
- // end ciclo, resituisco tutti i records
- return answ;
+ }
}
- ///
- /// restituisce un array di stringhe URL da chiamare per caricare i dati documento / cliente
- ///
- /// Codice documento richiesto
- /// Anno documento richiesto
- ///
- public string[] getDocsUrls(string CodDoc, string Anno)
- {
- string[] answ = new string[2]; // 2 stringhe, una x doc e 1 x cliente x ogni invio...
- // per ogni record trovato compongo un record DOCS ed uno CLI
- string[] rDoc = new string[20];
- string[] rCli = new string[12];
+ }
+ catch (Exception ex)
+ {
+ logger.Error("Eccezione{0}Comando: {1}{0}{2}", Environment.NewLine, comandoDoc, ex);
+ }
- // effettuo chaimata ODBC e recupero dati
- try
- {
- conn.Open();
- string tipoDoc = CodDoc.Substring(0, 2);
- string NumDoc = CodDoc.Replace(tipoDoc, "");
- // questa è la vera stringa SQL
- string comandoDoc = string.Format(@"SELECT TESDOCUM.TIPOPROTOC, TESDOCUM.NUMERO, TESDOCUM.ESERPROTOC,
+ finally
+ {
+ conn.Close();
+ }
+
+ if (ConfigurationManager.AppSettings["debugMode"] == "true")
+ {
+ logger.Info("Chiusura connessione ODBC");
+ }
+
+ // end ciclo, resituisco tutti i records
+ return answ;
+ }
+ ///
+ /// restituisce un array di stringhe URL da chiamare per caricare i dati documento / cliente
+ ///
+ /// Codice documento richiesto
+ /// Anno documento richiesto
+ ///
+ public string[] getDocsUrls(string CodDoc, string Anno)
+ {
+ string[] answ = new string[2]; // 2 stringhe, una x doc e 1 x cliente x ogni invio...
+ // per ogni record trovato compongo un record DOCS ed uno CLI
+ string[] rDoc = new string[20];
+ string[] rCli = new string[12];
+
+ // effettuo chaimata ODBC e recupero dati
+ try
+ {
+ conn.Open();
+ string tipoDoc = CodDoc.Substring(0, 2);
+ string NumDoc = CodDoc.Replace(tipoDoc, "");
+ // questa è la vera stringa SQL
+ string comandoDoc = string.Format(@"SELECT TESDOCUM.TIPOPROTOC, TESDOCUM.NUMERO, TESDOCUM.ESERPROTOC,
TESDOCUM.NUMEPROTOC, TESDOCUM.DATAPROTOC, TESDOCUM.ESERRIFERI,
TESDOCUM.NUMERIFERI, TESDOCUM.TIPORIFERI, TESDOCUM.DATARIFERI,
TESDOCUM.NUMEDOCRIF, TESDOCUM.DATADOCRIF, TESDOCUM.ESERCOLLEG,
@@ -399,33 +395,33 @@ namespace DataUploader
WHERE TESDOCUM.TIPOPROTOC='{0}'
AND TESDOCUM.NUMEPROTOC ='{1}'
AND TESDOCUM.ESERPROTOC ='{2}';",
- tipoDoc, NumDoc, Anno);
- // dati documento
- using (OdbcCommand com = new OdbcCommand(comandoDoc, conn))
+ tipoDoc, NumDoc, Anno);
+ // dati documento
+ using (OdbcCommand com = new OdbcCommand(comandoDoc, conn))
+ {
+ using (OdbcDataReader reader = com.ExecuteReader())
+ {
+ while (reader.Read())
+ {
+ for (int i = 0; i < 20; i++)
+ {
+ try
{
- using (OdbcDataReader reader = com.ExecuteReader())
- {
- while (reader.Read())
- {
- for (int i = 0; i < 20; i++)
- {
- try
- {
- rDoc[i] = reader.GetString(i).Trim().Replace(" ", "+");
- }
- catch
- {
- rDoc[i] = "";
- }
- }
- // il campo 12 è il cod cliente!
- rCli[0] = rDoc[12];
- }
- }
+ rDoc[i] = reader.GetString(i).Trim().Replace(" ", "+");
}
+ catch
+ {
+ rDoc[i] = "";
+ }
+ }
+ // il campo 12 è il cod cliente!
+ rCli[0] = rDoc[12];
+ }
+ }
+ }
- // cellulare e email trovati in USRCLIFO, relazionato su CODSIGLA
- string comandoCli = string.Format(@"SELECT CLIFO.CODICE, CLIFO.RAGIONESOC, CLIFO.COFI,
+ // cellulare e email trovati in USRCLIFO, relazionato su CODSIGLA
+ string comandoCli = string.Format(@"SELECT CLIFO.CODICE, CLIFO.RAGIONESOC, CLIFO.COFI,
CLIFO.TEL, USRCLIFO.CELNM AS CELL,
CASE WHEN USRCLIFO.CELNM <> ' ' THEN 1 ELSE 0 END AS ENABLE_SMS,
USRCLIFO.E_MAILL AS EMAIL,
@@ -435,76 +431,76 @@ namespace DataUploader
ON CLIFO.CODICE = USRCLIFO.CODSIGLA
WHERE CLIFO.TIPO='C'
AND CLIFO.CODICE = '{0}';",
- rCli[0]);
- using (OdbcCommand comCli = new OdbcCommand(comandoCli, conn))
+ rCli[0]);
+ using (OdbcCommand comCli = new OdbcCommand(comandoCli, conn))
+ {
+ using (OdbcDataReader readerCli = comCli.ExecuteReader())
+ {
+ while (readerCli.Read())
+ {
+ for (int i = 0; i < 12; i++)
+ {
+ try
{
- using (OdbcDataReader readerCli = comCli.ExecuteReader())
- {
- while (readerCli.Read())
- {
- for (int i = 0; i < 12; i++)
- {
- try
- {
- rCli[i] = readerCli.GetString(i).Trim().Replace(" ", "+");
- }
- catch
- {
- rCli[i] = "";
- }
- }
- }
- }
+ rCli[i] = readerCli.GetString(i).Trim().Replace(" ", "+");
}
- // formatto answ... prima CLI poi doc...
- answ[0] = createUrlCli(rCli);
- answ[1] = createUrlDoc(rDoc);
+ catch
+ {
+ rCli[i] = "";
+ }
+ }
}
- catch (Exception ex)
- {
- logger.Error("Eccezione{0}{1}", Environment.NewLine, ex);
- }
- finally
- {
- conn.Close();
- }
- return answ;
- }
- ///
- /// crea url formattato x upload DOC
- ///
- ///
- ///
- protected string createUrlDoc(string[] rDoc)
- {
- string answ = "";
- try
- {
- answ = string.Format(@"{0}?TIPOPROTOC={1}&NUMERO={2}&ESERPROTOC={3}&NUMEPROTOC={4}&DATAPROTOC={5}&ESERRIFERI={6}&NUMERIFERI={7}&TIPORIFERI={8}&DATARIFERI={9}&NUMEDOCRIF={10}&DATADOCRIF={11}&ESERCOLLEG={12}&CLI_FOR={13}&DESTINATAR={14}&RGSOC_DEST={15}&INDIR_DEST={16}&LOCAL_DEST={17}&CAP_DEST={18}&ULT_AGG={19}&ANNOTAZION={20}", ConfigurationManager.AppSettings["remoteDocUrl"], rDoc[0], rDoc[1], rDoc[2], rDoc[3], rDoc[4], rDoc[5], rDoc[6], rDoc[7], rDoc[8], rDoc[9], rDoc[10], rDoc[11], rDoc[12], rDoc[13], rDoc[14], rDoc[15], rDoc[16], rDoc[17], rDoc[18], rDoc[19]);
- }
- catch (Exception exc)
- {
- logger.Error("Eccezione in createUrlDoc{0}{1}", Environment.NewLine, exc);
- }
- return answ;
- }
- ///
- /// crea url formattato x upload CLI
- ///
- ///
- ///
- protected string createUrlCli(string[] rCli)
- {
- string answ = "";
- try
- {
- answ = string.Format("{0}?CodCliente={1}&RagSoc={2}&CodFis={3}&Tel={4}&Cell={5}&EnableSMS={6}&Email={7}&Indir={8}&Cap={9}&Localita={10}&Prov={11}&Note={12}", ConfigurationManager.AppSettings["remoteCliUrl"], rCli[0], rCli[1], rCli[2], rCli[3], rCli[4], rCli[5], rCli[6], rCli[7], rCli[8], rCli[9], rCli[10], rCli[11]);
- }
- catch (Exception exc)
- {
- logger.Error("Eccezione in createUrlCli{0}{1}", Environment.NewLine, exc);
- }
- return answ;
+ }
}
+ // formatto answ... prima CLI poi doc...
+ answ[0] = createUrlCli(rCli);
+ answ[1] = createUrlDoc(rDoc);
+ }
+ catch (Exception ex)
+ {
+ logger.Error("Eccezione{0}{1}", Environment.NewLine, ex);
+ }
+ finally
+ {
+ conn.Close();
+ }
+ return answ;
}
+ ///
+ /// crea url formattato x upload DOC
+ ///
+ ///
+ ///
+ protected string createUrlDoc(string[] rDoc)
+ {
+ string answ = "";
+ try
+ {
+ answ = string.Format(@"{0}?TIPOPROTOC={1}&NUMERO={2}&ESERPROTOC={3}&NUMEPROTOC={4}&DATAPROTOC={5}&ESERRIFERI={6}&NUMERIFERI={7}&TIPORIFERI={8}&DATARIFERI={9}&NUMEDOCRIF={10}&DATADOCRIF={11}&ESERCOLLEG={12}&CLI_FOR={13}&DESTINATAR={14}&RGSOC_DEST={15}&INDIR_DEST={16}&LOCAL_DEST={17}&CAP_DEST={18}&ULT_AGG={19}&ANNOTAZION={20}", ConfigurationManager.AppSettings["remoteDocUrl"], rDoc[0], rDoc[1], rDoc[2], rDoc[3], rDoc[4], rDoc[5], rDoc[6], rDoc[7], rDoc[8], rDoc[9], rDoc[10], rDoc[11], rDoc[12], rDoc[13], rDoc[14], rDoc[15], rDoc[16], rDoc[17], rDoc[18], rDoc[19]);
+ }
+ catch (Exception exc)
+ {
+ logger.Error("Eccezione in createUrlDoc{0}{1}", Environment.NewLine, exc);
+ }
+ return answ;
+ }
+ ///
+ /// crea url formattato x upload CLI
+ ///
+ ///
+ ///
+ protected string createUrlCli(string[] rCli)
+ {
+ string answ = "";
+ try
+ {
+ answ = string.Format("{0}?CodCliente={1}&RagSoc={2}&CodFis={3}&Tel={4}&Cell={5}&EnableSMS={6}&Email={7}&Indir={8}&Cap={9}&Localita={10}&Prov={11}&Note={12}", ConfigurationManager.AppSettings["remoteCliUrl"], rCli[0], rCli[1], rCli[2], rCli[3], rCli[4], rCli[5], rCli[6], rCli[7], rCli[8], rCli[9], rCli[10], rCli[11]);
+ }
+ catch (Exception exc)
+ {
+ logger.Error("Eccezione in createUrlCli{0}{1}", Environment.NewLine, exc);
+ }
+ return answ;
+ }
+ }
}
\ No newline at end of file