diff --git a/XPS/App_Code/extSync.cs b/XPS/App_Code/extSync.cs
index a2fe272..704b06d 100644
--- a/XPS/App_Code/extSync.cs
+++ b/XPS/App_Code/extSync.cs
@@ -32,46 +32,106 @@ public class extSync
///
///
///
- public bool caricaClienti()
+ public string caricaClienti()
{
- bool answ = false;
// carico tab clienti access
DS_import.aclDataTable tabOrig = taACL_orig.GetData();
// carico tab clienti MSSQL
DS_applicazione.AnagClientiDataTable tabDest = taAnagCli.GetData();
DS_applicazione.AnagClientiRow rigaDest;
- string ragSoc;
+ string ragioneSociale;
// verifico uno ad uno i clienti...
+ string ragSoc, indirizzo, localita, cap, prov;
+ int errori;
+ int nonImportati = 0;
+ string ragSocNotImp = "...sync completato!
";
foreach (DS_import.aclRow riga in tabOrig)
{
+ errori = 0;
+ // calcolo i singoli valori...
try
{
- rigaDest = tabDest.FindByCodCliente(riga.clcodcn);
- if (rigaDest != null)
- {
- // se c'è faccio update...
- ragSoc = string.Format("{0}, {1} {2} {3} {4}", riga.clragd, riga.clindi, riga.clcapo, riga.clloca, riga.clprov);
- // controllo se eccedo i 50 char...)
- if (ragSoc.Length > 50)
- {
- rigaDest.RagioneSociale = ragSoc.Substring(0, 50);
- }
- else
- {
- rigaDest.RagioneSociale = ragSoc;
- }
- }
- else
- {
- // se manca aggiungo...
- taAnagCli.Insert(riga.clcodcn, string.Format("{0}, {1} {2} {3} {4}", riga.clragd, riga.clindi, riga.clcapo, riga.clloca, riga.clprov).Substring(0, 50));
- }
+ ragSoc = riga.clragd;
}
catch
{
- SteamWare.logger.lg.scriviLog(string.Format("errore inserimento per cod cliente {0}", riga.clcodcn), SteamWare.tipoLog.EXCEPTION);
+ ragSoc = "rag.soc. nd";
+ errori++;
+ }
+ try
+ {
+ indirizzo = riga.clindi;
+ }
+ catch
+ {
+ indirizzo = "indir. nd";
+ errori++;
+ }
+ try
+ {
+ localita = riga.clloca;
+ }
+ catch
+ {
+ localita = "local. nd";
+ errori++;
+ }
+ try
+ {
+ cap = riga.clcapo;
+ }
+ catch
+ {
+ cap = "cap nd";
+ errori++;
+ }
+ try
+ {
+ prov = riga.clprov;
+ }
+ catch
+ {
+ prov = "prov. nd";
+ errori++;
+ }
+ // compongo stringa descrittiva
+ ragioneSociale = string.Format("{0}, {1} {2} {3} {4}", ragSoc, indirizzo, cap, localita, prov);
+ // inserisco SOLO se non mancano + di 3 valori...
+ if (errori < 4)
+ {
+ // controllo se eccedo i 50 char...
+ if (ragioneSociale.Length > 50)
+ {
+ ragioneSociale = ragioneSociale.Substring(0, 47) + "...";
+ }
+ try
+ {
+ rigaDest = tabDest.FindByCodCliente(riga.clcodcn);
+ if (rigaDest != null)
+ {
+ // se c'è faccio update...
+ rigaDest.RagioneSociale = ragioneSociale;
+ }
+ else
+ {
+ // se manca aggiungo...
+ taAnagCli.Insert(riga.clcodcn, ragioneSociale);
+ }
+ }
+ catch
+ {
+ SteamWare.logger.lg.scriviLog(string.Format("errore inserimento per cod cliente {0}", riga.clcodcn), SteamWare.tipoLog.EXCEPTION);
+ }
+ }
+ else
+ {
+ // mancano + di 2 valori, NON IMPORTO!!!!
+ nonImportati++;
+ ragSocNotImp += string.Format("
Non ho importato la ragione sociale collegata all'id {0} poiché i dati mancanti sono troppi: {1}", riga.clcodcn, ragioneSociale);
+ SteamWare.logger.lg.scriviLog(string.Format("errore inserimento per cod cliente {0}", riga.clcodcn), SteamWare.tipoLog.INFO);
+
}
}
- return answ;
+ return ragSocNotImp;
}
}
diff --git a/XPS/Bin/SteamWare.dll b/XPS/Bin/SteamWare.dll
index 2a9ed1e..c7cadf7 100644
Binary files a/XPS/Bin/SteamWare.dll and b/XPS/Bin/SteamWare.dll differ
diff --git a/XPS/Web.config b/XPS/Web.config
index 6199c1d..c55b22b 100644
--- a/XPS/Web.config
+++ b/XPS/Web.config
@@ -118,8 +118,10 @@
providerName="System.Data.SqlClient" />
-
+
+
diff --git a/XPS/mod_update.ascx b/XPS/mod_update.ascx
index c55b83a..c053a4a 100644
--- a/XPS/mod_update.ascx
+++ b/XPS/mod_update.ascx
@@ -13,13 +13,16 @@
per ora sarà solo visibile SOLO la funzione di sync dati del cliente (x caricare i dati dell'anagrafica...)
--%>
-Aggiorna anagrafica clienti
+ Aggiorna anagrafica clienti
-con questa funzione verranno ricaricate le anagrafiche dei clienti: questo significa che i nuovi clienti saranno importati ed aggiunti, mentr per i vecchi clienti di cui si sia cambiata la descrizione e/o la parte di indirizzo (ma mantenuto il codice cliente) si provvederà all'aggiornamento di questi dati a pari codice.
-
-
-
-
-
+ con questa funzione verranno ricaricate le anagrafiche dei clienti: questo significa
+ che i nuovi clienti saranno importati ed aggiunti, mentr per i vecchi clienti di
+ cui si sia cambiata la descrizione e/o la parte di indirizzo (ma mantenuto il codice
+ cliente) si provvederà all'aggiornamento di questi dati a pari codice.
+
+
+
+
+
diff --git a/XPS/mod_update.ascx.cs b/XPS/mod_update.ascx.cs
index 54a681a..a792faf 100644
--- a/XPS/mod_update.ascx.cs
+++ b/XPS/mod_update.ascx.cs
@@ -13,7 +13,6 @@ public partial class mod_update : System.Web.UI.UserControl
protected void Button1_Click(object sender, EventArgs e)
{
lblStart.Text = "inizio sync...";
- extSync.obj.caricaClienti();
- lblEnd.Text = "...sync completato!";
+ lblEnd.Text = extSync.obj.caricaClienti();
}
}
diff --git a/project/XPS_deploy/Release/bin/SteamWare.dll b/project/XPS_deploy/Release/bin/SteamWare.dll
index 6317f55..c7cadf7 100644
Binary files a/project/XPS_deploy/Release/bin/SteamWare.dll and b/project/XPS_deploy/Release/bin/SteamWare.dll differ
diff --git a/project/XPS_deploy/Release/bin/XPS.dll b/project/XPS_deploy/Release/bin/XPS.dll
index d576c6d..b005bf7 100644
Binary files a/project/XPS_deploy/Release/bin/XPS.dll and b/project/XPS_deploy/Release/bin/XPS.dll differ
diff --git a/project/XPS_deploy/Release/mod_update.ascx b/project/XPS_deploy/Release/mod_update.ascx
new file mode 100644
index 0000000..fe011f4
--- /dev/null
+++ b/project/XPS_deploy/Release/mod_update.ascx
@@ -0,0 +1,28 @@
+<%@ control language="C#" autoeventwireup="true" inherits="mod_update, XPS" %>
+<%--
+ Modulo di update...
+
+
+
+ faremo tante cose
+
+
+
+ 1) wizard install
+ 2) wizard di upgrade db
+
+ per ora sarà solo visibile SOLO la funzione di sync dati del cliente (x caricare i dati dell'anagrafica...)
--%>
+
+ Aggiorna anagrafica clienti
+
+
+ con questa funzione verranno ricaricate le anagrafiche dei clienti: questo significa
+ che i nuovi clienti saranno importati ed aggiunti, mentr per i vecchi clienti di
+ cui si sia cambiata la descrizione e/o la parte di indirizzo (ma mantenuto il codice
+ cliente) si provvederà all'aggiornamento di questi dati a pari codice.
+
+
+
+
+
diff --git a/project/XPS_deploy/Release/update.aspx b/project/XPS_deploy/Release/update.aspx
new file mode 100644
index 0000000..855acba
--- /dev/null
+++ b/project/XPS_deploy/Release/update.aspx
@@ -0,0 +1,8 @@
+<%@ page title="" language="C#" masterpagefile="~/AjaxTitle.master" autoeventwireup="true" inherits="update, XPS" %>
+
+<%@ Register src="mod_update.ascx" tagname="mod_update" tagprefix="uc1" %>
+
+
+
+
+
diff --git a/project/XPS_deploy/Release/web.config b/project/XPS_deploy/Release/web.config
index badebb2..1671c9d 100644
--- a/project/XPS_deploy/Release/web.config
+++ b/project/XPS_deploy/Release/web.config
@@ -79,7 +79,7 @@
-
+
@@ -118,8 +118,10 @@
providerName="System.Data.SqlClient" />
-
+
+
diff --git a/project/XPS_deploy/ResolveAssemblyReference.cache b/project/XPS_deploy/ResolveAssemblyReference.cache
index c46b352..2575a45 100644
Binary files a/project/XPS_deploy/ResolveAssemblyReference.cache and b/project/XPS_deploy/ResolveAssemblyReference.cache differ
diff --git a/project/XPS_deploy/Source/App_Code/extSync.cs b/project/XPS_deploy/Source/App_Code/extSync.cs
index 2ee5b3f..704b06d 100644
--- a/project/XPS_deploy/Source/App_Code/extSync.cs
+++ b/project/XPS_deploy/Source/App_Code/extSync.cs
@@ -20,43 +20,118 @@ public class extSync
#endregion
- public extSync()
+ protected extSync()
{
- // avvio tableAdapters
+ // avvio tableAdapters
caricaTA();
}
-
+ public static extSync obj = new extSync();
+
///
///
///
///
- public bool caricaClienti()
+ public string caricaClienti()
{
- bool answ = false;
// carico tab clienti access
DS_import.aclDataTable tabOrig = taACL_orig.GetData();
// carico tab clienti MSSQL
DS_applicazione.AnagClientiDataTable tabDest = taAnagCli.GetData();
DS_applicazione.AnagClientiRow rigaDest;
+ string ragioneSociale;
// verifico uno ad uno i clienti...
+ string ragSoc, indirizzo, localita, cap, prov;
+ int errori;
+ int nonImportati = 0;
+ string ragSocNotImp = "...sync completato!
";
foreach (DS_import.aclRow riga in tabOrig)
{
+ errori = 0;
+ // calcolo i singoli valori...
try
{
- rigaDest = tabDest.FindByCodCliente(riga.clcodcn);
- if (rigaDest != null)
- {
- // se c'è faccio update...
- }
- rigaDest.RagioneSociale = string.Format("{0}, {1} {2} {3} {4}", riga.clragd, riga.clindi, riga.clcapo, riga.clloca, riga.clprov).Substring(0, 50);
+ ragSoc = riga.clragd;
}
catch
{
- // se manca aggiungo...
- taAnagCli.Insert(riga.clcodcn, string.Format("{0}, {1} {2} {3} {4}", riga.clragd, riga.clindi, riga.clcapo, riga.clloca, riga.clprov).Substring(0, 50));
+ ragSoc = "rag.soc. nd";
+ errori++;
+ }
+ try
+ {
+ indirizzo = riga.clindi;
+ }
+ catch
+ {
+ indirizzo = "indir. nd";
+ errori++;
+ }
+ try
+ {
+ localita = riga.clloca;
+ }
+ catch
+ {
+ localita = "local. nd";
+ errori++;
+ }
+ try
+ {
+ cap = riga.clcapo;
+ }
+ catch
+ {
+ cap = "cap nd";
+ errori++;
+ }
+ try
+ {
+ prov = riga.clprov;
+ }
+ catch
+ {
+ prov = "prov. nd";
+ errori++;
+ }
+ // compongo stringa descrittiva
+ ragioneSociale = string.Format("{0}, {1} {2} {3} {4}", ragSoc, indirizzo, cap, localita, prov);
+ // inserisco SOLO se non mancano + di 3 valori...
+ if (errori < 4)
+ {
+ // controllo se eccedo i 50 char...
+ if (ragioneSociale.Length > 50)
+ {
+ ragioneSociale = ragioneSociale.Substring(0, 47) + "...";
+ }
+ try
+ {
+ rigaDest = tabDest.FindByCodCliente(riga.clcodcn);
+ if (rigaDest != null)
+ {
+ // se c'è faccio update...
+ rigaDest.RagioneSociale = ragioneSociale;
+ }
+ else
+ {
+ // se manca aggiungo...
+ taAnagCli.Insert(riga.clcodcn, ragioneSociale);
+ }
+ }
+ catch
+ {
+ SteamWare.logger.lg.scriviLog(string.Format("errore inserimento per cod cliente {0}", riga.clcodcn), SteamWare.tipoLog.EXCEPTION);
+ }
+ }
+ else
+ {
+ // mancano + di 2 valori, NON IMPORTO!!!!
+ nonImportati++;
+ ragSocNotImp += string.Format("
Non ho importato la ragione sociale collegata all'id {0} poiché i dati mancanti sono troppi: {1}", riga.clcodcn, ragioneSociale);
+ SteamWare.logger.lg.scriviLog(string.Format("errore inserimento per cod cliente {0}", riga.clcodcn), SteamWare.tipoLog.INFO);
+
}
}
- return answ;
+ return ragSocNotImp;
}
}
diff --git a/project/XPS_deploy/Source/App_Data/SP_DB_init.sql b/project/XPS_deploy/Source/App_Data/SP_DB_init.sql
new file mode 100644
index 0000000..ef15a1a
Binary files /dev/null and b/project/XPS_deploy/Source/App_Data/SP_DB_init.sql differ
diff --git a/project/XPS_deploy/Source/Bin/SteamWare.dll b/project/XPS_deploy/Source/Bin/SteamWare.dll
index 6317f55..c7cadf7 100644
Binary files a/project/XPS_deploy/Source/Bin/SteamWare.dll and b/project/XPS_deploy/Source/Bin/SteamWare.dll differ
diff --git a/project/XPS_deploy/Source/Web.config b/project/XPS_deploy/Source/Web.config
index f10171a..c55b22b 100644
--- a/project/XPS_deploy/Source/Web.config
+++ b/project/XPS_deploy/Source/Web.config
@@ -79,7 +79,7 @@
-
+
@@ -118,8 +118,10 @@
providerName="System.Data.SqlClient" />
-
+
+
diff --git a/project/XPS_deploy/Source/mod_update.ascx b/project/XPS_deploy/Source/mod_update.ascx
new file mode 100644
index 0000000..c053a4a
--- /dev/null
+++ b/project/XPS_deploy/Source/mod_update.ascx
@@ -0,0 +1,28 @@
+<%@ Control Language="C#" AutoEventWireup="true" CodeFile="mod_update.ascx.cs" Inherits="mod_update" %>
+<%--
+ Modulo di update...
+
+
+
+ faremo tante cose
+
+
+
+ 1) wizard install
+ 2) wizard di upgrade db
+
+ per ora sarà solo visibile SOLO la funzione di sync dati del cliente (x caricare i dati dell'anagrafica...)
--%>
+
+ Aggiorna anagrafica clienti
+
+
+ con questa funzione verranno ricaricate le anagrafiche dei clienti: questo significa
+ che i nuovi clienti saranno importati ed aggiunti, mentr per i vecchi clienti di
+ cui si sia cambiata la descrizione e/o la parte di indirizzo (ma mantenuto il codice
+ cliente) si provvederà all'aggiornamento di questi dati a pari codice.
+
+
+
+
+
diff --git a/project/XPS_deploy/Source/mod_update.ascx.cs b/project/XPS_deploy/Source/mod_update.ascx.cs
new file mode 100644
index 0000000..a792faf
--- /dev/null
+++ b/project/XPS_deploy/Source/mod_update.ascx.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+public partial class mod_update : System.Web.UI.UserControl
+{
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+ protected void Button1_Click(object sender, EventArgs e)
+ {
+ lblStart.Text = "inizio sync...";
+ lblEnd.Text = extSync.obj.caricaClienti();
+ }
+}
diff --git a/project/XPS_deploy/Source/update.aspx b/project/XPS_deploy/Source/update.aspx
new file mode 100644
index 0000000..2854d4c
--- /dev/null
+++ b/project/XPS_deploy/Source/update.aspx
@@ -0,0 +1,8 @@
+<%@ Page Title="" Language="C#" MasterPageFile="~/AjaxTitle.master" AutoEventWireup="true" CodeFile="update.aspx.cs" Inherits="update" %>
+
+<%@ Register src="mod_update.ascx" tagname="mod_update" tagprefix="uc1" %>
+
+
+
+
+
diff --git a/project/XPS_deploy/Source/update.aspx.cs b/project/XPS_deploy/Source/update.aspx.cs
new file mode 100644
index 0000000..43bd159
--- /dev/null
+++ b/project/XPS_deploy/Source/update.aspx.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+public partial class update : System.Web.UI.Page
+{
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+}
diff --git a/project/XPS_installer/Release/XPS_installer.msi b/project/XPS_installer/Release/XPS_installer.msi
index fa957e5..3aea6e2 100644
Binary files a/project/XPS_installer/Release/XPS_installer.msi and b/project/XPS_installer/Release/XPS_installer.msi differ
diff --git a/project/XPS_installer/XPS_installer.vdproj b/project/XPS_installer/XPS_installer.vdproj
index 474d689..0c7bd8b 100644
--- a/project/XPS_installer/XPS_installer.vdproj
+++ b/project/XPS_installer/XPS_installer.vdproj
@@ -378,7 +378,7 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:XPS"
"ProductCode" = "8:{50DB8641-2B0C-42FA-9D32-A1195B154A3A}"
- "PackageCode" = "8:{B615D9D1-48EA-4666-B01C-8FAC5EABEC5C}"
+ "PackageCode" = "8:{52A4366C-5DDE-45A2-A6B6-58BED6F1B5AE}"
"UpgradeCode" = "8:{71B65361-FEA5-44CA-9B9A-45597433DB20}"
"RestartWWWService" = "11:TRUE"
"RemovePreviousVersions" = "11:TRUE"