diff --git a/MP-TAB/WebUserControls/BaseUserControl.cs b/MP-TAB/WebUserControls/BaseUserControl.cs
index 012d083c..a5e1e828 100644
--- a/MP-TAB/WebUserControls/BaseUserControl.cs
+++ b/MP-TAB/WebUserControls/BaseUserControl.cs
@@ -86,6 +86,21 @@ namespace MoonProTablet.WebUserControls
}
}
+ ///
+ /// Idx macchina selezionata FIX (esempio x nuovo ODL su doppia tavola)
+ ///
+ public string idxMacchinaFix
+ {
+ get
+ {
+ return memLayer.ML.StringSessionObj("IdxMacchinaFix");
+ }
+ set
+ {
+ memLayer.ML.setSessionVal("IdxMacchinaFix", value);
+ }
+ }
+
///
/// idxOdl corrente in sessione
///
diff --git a/MP-TAB/WebUserControls/cmp_newODL.ascx.cs b/MP-TAB/WebUserControls/cmp_newODL.ascx.cs
index f646db3a..dfe4329f 100644
--- a/MP-TAB/WebUserControls/cmp_newODL.ascx.cs
+++ b/MP-TAB/WebUserControls/cmp_newODL.ascx.cs
@@ -7,17 +7,17 @@ namespace MoonProTablet.WebUserControls
{
public partial class cmp_newODL : BaseUserControl
{
+ #region Public Events
+
///
/// registrato nuovo valore
///
public event EventHandler eh_newVal;
- protected void Page_Load(object sender, EventArgs e)
- {
- if (!Page.IsPostBack)
- {
- setDefaults();
- }
- }
+
+ #endregion Public Events
+
+ #region Private Methods
+
///
/// imposta valori std
///
@@ -28,6 +28,10 @@ namespace MoonProTablet.WebUserControls
txtTC_sec.Text = "0";
}
+ #endregion Private Methods
+
+ #region Protected Methods
+
protected void lbtCreaOdlProvv_Click(object sender, EventArgs e)
{
// effettua creazione ODL provvisorio e riporta a parent...
@@ -40,13 +44,13 @@ namespace MoonProTablet.WebUserControls
decimal tCiclo = numMin + ((decimal)numSec) / 60;
string note = txtNote.Text.Trim();
// insert su DB
- DataLayerObj.taODL.insertProvv(ddlArticolo.SelectedValue, DataLayerObj.MatrOpr, idxMacchina, numPz, tCiclo, note);
- // calcolo stringa macchina e articolo...
- var rMacchina = DataLayerObj.taMacchine.GetByIdx(idxMacchina)[0];
+ DataLayerObj.taODL.insertProvv(ddlArticolo.SelectedValue, DataLayerObj.MatrOpr, idxMacchinaFix, numPz, tCiclo, note);
+ // calcolo stringa macchina e articolo...
+ var rMacchina = DataLayerObj.taMacchine.GetByIdx(idxMacchinaFix)[0];
var rArticolo = DataLayerObj.taAnagArt.getByCod(ddlArticolo.SelectedValue)[0];
- string macchina = string.Format("{0} ({1} | {2} | {3})", rMacchina.Nome, rMacchina.IdxMacchina, rMacchina.CodMacchina, rMacchina.Descrizione);
+ string macchina = string.Format("{0} ({1} | {2} | {3})", rMacchina.Nome, idxMacchinaFix, rMacchina.CodMacchina, rMacchina.Descrizione);
string articolo = string.Format("{0} ({1} | {2})", rArticolo.DescArticolo, rArticolo.CodArticolo, rArticolo.Disegno);
- // invio email notifica creazione ODL PROVVISORIO (da riconciliare...)
+ // invio email notifica creazione ODL PROVVISORIO (da riconciliare...)
string subject = "Effettuato attrezzaggio con ODL provvisorio";
string oggetto = string.Format("E' stato effettuato un attrezzaggio con ODL provvisorio.
Macchina: {0}
Articolo: {1}
Lanciati {2} pezzi con T.Ciclo {3:N3} (min.cent) / {4}:{5} (min:sec).
Note operatore: {6}", macchina, articolo, numPz, tCiclo, numMin, numSec, note);
gestEmail.geAuth.mandaEmail(memLayer.ML.CRS("_fromEmail"), memLayer.ML.CRS("_adminEmail"), subject, oggetto);
@@ -57,10 +61,20 @@ namespace MoonProTablet.WebUserControls
}
}
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!Page.IsPostBack)
+ {
+ setDefaults();
+ }
+ }
+
protected void txtSearch_TextChanged(object sender, EventArgs e)
{
// bind dati!
ddlArticolo.DataBind();
}
+
+ #endregion Protected Methods
}
}
\ No newline at end of file
diff --git a/MP-TAB/WebUserControls/mod_ODL.ascx.cs b/MP-TAB/WebUserControls/mod_ODL.ascx.cs
index ecdbc4ba..40cfd395 100644
--- a/MP-TAB/WebUserControls/mod_ODL.ascx.cs
+++ b/MP-TAB/WebUserControls/mod_ODL.ascx.cs
@@ -335,7 +335,7 @@ namespace MoonProTablet.WebUserControls
{
memLayer.ML.setSessionVal(string.Format("idxMacchina-{0}", uid), value);
hfIdxMacchina.Value = value;
- cmp_newODL.idxMacchina = value;
+ cmp_newODL.idxMacchinaFix = value;
}
}
diff --git a/MP-TAB/WebUserControls/mod_confProd.ascx.cs b/MP-TAB/WebUserControls/mod_confProd.ascx.cs
index 9bba0380..dd3572f4 100644
--- a/MP-TAB/WebUserControls/mod_confProd.ascx.cs
+++ b/MP-TAB/WebUserControls/mod_confProd.ascx.cs
@@ -405,15 +405,24 @@ namespace MoonProTablet.WebUserControls
protected void ddlSubMacc_DataBound(object sender, EventArgs e)
{
// se ho in memoria un valore LO REIMPOSTO...
- if (subMaccSel != "")
+ if (!string.IsNullOrEmpty(subMaccSel))
{
- // provo a preselezionare...
- try
+ // se è una SUB machcina (contiene "#")
+ if (subMaccSel.Contains("#"))
{
- ddlSubMacc.SelectedValue = subMaccSel;
+ // provo a preselezionare...
+ try
+ {
+ ddlSubMacc.SelectedValue = subMaccSel;
+ }
+ catch
+ { }
+ }
+ // altrimenti salvo!
+ else
+ {
+ subMaccSel = ddlSubMacc.SelectedValue;
}
- catch
- { }
}
}
diff --git a/MP-TAB/WebUserControls/mod_dettaglioProd.ascx.cs b/MP-TAB/WebUserControls/mod_dettaglioProd.ascx.cs
index 8888b7da..01a38373 100644
--- a/MP-TAB/WebUserControls/mod_dettaglioProd.ascx.cs
+++ b/MP-TAB/WebUserControls/mod_dettaglioProd.ascx.cs
@@ -6,6 +6,113 @@ namespace MoonProTablet.WebUserControls
{
public partial class mod_dettaglioProd : BaseUserControl
{
+ #region Private Methods
+
+ ///
+ /// popola le labels
+ ///
+ private void popolaLabels()
+ {
+ if (!string.IsNullOrEmpty(idxMacchina))
+ {
+ // forzo ricalcolo
+ DataLayerObj.taMSE.forceRecalc(0, idxMacchina);
+ // leggo riga...
+ DS_ProdTempi.MappaStatoExplRow rigaDati = DataLayerObj.taMSE.getByIdxMacchina(idxMacchina)[0];
+
+ // carico le info!
+ lblOdl.Text = string.Format("ODL num: {0}, iniziato il {1:dd/MM/yy} alle {1:HH:mm}", rigaDati.idxODL, rigaDati.DataInizioODL);
+ /************************************
+ * data la postazione corrente decide cosa mostrare e come
+ ************************************/
+ lblCodArticolo.Text = rigaDati.CodArticolo;
+ lblNumPzLanciati.Text = string.Format("{0} pz.", rigaDati.NumPezzi);
+ lblNumPzConf.Text = string.Format("{0} pz.", rigaDati.PezziConf);
+ lblNumPzFatti.Text = string.Format("({0} pz.)", rigaDati.PezziProd);
+
+ /************************************
+ * calcolo efficienza totale
+ * se il calcolo non è possibile mette n/a
+ ************************************/
+ decimal tempoProd = rigaDati.TCAssegnato * rigaDati.PezziConf;
+ try
+ {
+ lblEfficienzaTot.Text = Convert.ToString(String.Format("{0:p2}", tempoProd / rigaDati.TempoOn / 100));
+ }
+ catch
+ {
+ lblEfficienzaTot.Text = "n/a";
+ }
+ // calcolo efficienza lavoro - se il calcolo non è possibile mette n/a
+ try
+ {
+ lblEfficienzaLavoro.Text = Convert.ToString(String.Format("{0:p2}", tempoProd / rigaDati.TempoAuto / 100));
+ }
+ catch
+ {
+ lblEfficienzaLavoro.Text = "n/a";
+ }
+ // calcolo efficienza Teorica - se il calcolo non è possibile mette n/a
+ try
+ {
+ lblEfficienzaEff.Text = Convert.ToString(String.Format("{0:p2}", tempoProd / rigaDati.TempoRun / 100));
+ }
+ catch
+ {
+ lblEfficienzaEff.Text = "n/a";
+ }
+
+ /************************************
+ * imposto i TEMPI CICLO
+ ************************************/
+ // riporto Tempo ciclo impostato
+ lblTcImpostato.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCAssegnato));
+ // riporto Tempo ciclo medio
+ lblTcMedio.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCMedio));
+ lblTcMedioRT.Text = Convert.ToString(String.Format("({0:0.###})", rigaDati.TCMedioRT));
+ // riporto Tempo ciclo lavoro
+ lblTcLavoro.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCLav));
+ lblTcLavoroRT.Text = Convert.ToString(String.Format("({0:0.###})", rigaDati.TCLavRT));
+ // riporto Tempo ciclo effettivo/tecnico, come media dei 10 migliori delle ultime 8 ore
+ lblTcEffettivo.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCEff));
+ lblTcEffettivoRT.Text = Convert.ToString(String.Format("({0:0.###})", rigaDati.TCEffRT));
+
+ /************************************
+ * Sistemo efficienze RT da tempi ciclo
+ ************************************/
+ try
+ {
+ lblEfficienzaTotRT.Text = Convert.ToString(String.Format("({0:p2})", rigaDati.TCAssegnato / rigaDati.TCMedioRT));
+ }
+ catch
+ {
+ lblEfficienzaTotRT.Text = "n/a";
+ }
+ // calcolo efficienza lavoro - se il calcolo non è possibile mette n/a
+ try
+ {
+ lblEfficienzaLavoroRT.Text = Convert.ToString(String.Format("({0:p2})", rigaDati.TCAssegnato / rigaDati.TCLavRT));
+ }
+ catch
+ {
+ lblEfficienzaLavoroRT.Text = "n/a";
+ }
+ // calcolo efficienza Teorica - se il calcolo non è possibile mette n/a
+ try
+ {
+ lblEfficienzaEffRT.Text = Convert.ToString(String.Format("({0:p2})", rigaDati.TCAssegnato / rigaDati.TCEffRT));
+ }
+ catch
+ {
+ lblEfficienzaEffRT.Text = "n/a";
+ }
+ }
+ }
+
+ #endregion Private Methods
+
+ #region Protected Methods
+
///
/// caricamento pagina
///
@@ -13,107 +120,16 @@ namespace MoonProTablet.WebUserControls
///
protected void Page_Load(object sender, EventArgs e)
{
- popolaLabels();
- }
- ///
- /// popola le labels
- ///
- private void popolaLabels()
- {
- // forzo ricalcolo
- DataLayerObj.taMSE.forceRecalc(0, idxMacchina);
- // leggo riga...
- DS_ProdTempi.MappaStatoExplRow rigaDati = DataLayerObj.taMSE.getByIdxMacchina(idxMacchina)[0];
-
- // carico le info!
- lblOdl.Text = string.Format("ODL num: {0}, iniziato il {1:dd/MM/yy} alle {1:HH:mm}", rigaDati.idxODL, rigaDati.DataInizioODL);
- /************************************
- * data la postazione corrente decide cosa mostrare e come
- ************************************/
- lblCodArticolo.Text = rigaDati.CodArticolo;
- lblNumPzLanciati.Text = string.Format("{0} pz.", rigaDati.NumPezzi);
- lblNumPzConf.Text = string.Format("{0} pz.", rigaDati.PezziConf);
- lblNumPzFatti.Text = string.Format("({0} pz.)", rigaDati.PezziProd);
-
-
- /************************************
- * calcolo efficienza totale
- * se il calcolo non è possibile mette n/a
- ************************************/
- decimal tempoProd = rigaDati.TCAssegnato * rigaDati.PezziConf;
try
{
- lblEfficienzaTot.Text = Convert.ToString(String.Format("{0:p2}", tempoProd / rigaDati.TempoOn / 100));
+ popolaLabels();
}
- catch
+ catch (Exception exc)
{
- lblEfficienzaTot.Text = "n/a";
- }
- // calcolo efficienza lavoro - se il calcolo non è possibile mette n/a
- try
- {
- lblEfficienzaLavoro.Text = Convert.ToString(String.Format("{0:p2}", tempoProd / rigaDati.TempoAuto / 100));
- }
- catch
- {
- lblEfficienzaLavoro.Text = "n/a";
-
- }
- // calcolo efficienza Teorica - se il calcolo non è possibile mette n/a
- try
- {
- lblEfficienzaEff.Text = Convert.ToString(String.Format("{0:p2}", tempoProd / rigaDati.TempoRun / 100));
- }
- catch
- {
- lblEfficienzaEff.Text = "n/a";
- }
-
- /************************************
- * imposto i TEMPI CICLO
- ************************************/
- // riporto Tempo ciclo impostato
- lblTcImpostato.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCAssegnato));
- // riporto Tempo ciclo medio
- lblTcMedio.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCMedio));
- lblTcMedioRT.Text = Convert.ToString(String.Format("({0:0.###})", rigaDati.TCMedioRT));
- // riporto Tempo ciclo lavoro
- lblTcLavoro.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCLav));
- lblTcLavoroRT.Text = Convert.ToString(String.Format("({0:0.###})", rigaDati.TCLavRT));
- // riporto Tempo ciclo effettivo/tecnico, come media dei 10 migliori delle ultime 8 ore
- lblTcEffettivo.Text = Convert.ToString(String.Format("{0:0.###}", rigaDati.TCEff));
- lblTcEffettivoRT.Text = Convert.ToString(String.Format("({0:0.###})", rigaDati.TCEffRT));
-
- /************************************
- * Sistemo efficienze RT da tempi ciclo
- ************************************/
- try
- {
- lblEfficienzaTotRT.Text = Convert.ToString(String.Format("({0:p2})", rigaDati.TCAssegnato / rigaDati.TCMedioRT));
- }
- catch
- {
- lblEfficienzaTotRT.Text = "n/a";
- }
- // calcolo efficienza lavoro - se il calcolo non è possibile mette n/a
- try
- {
- lblEfficienzaLavoroRT.Text = Convert.ToString(String.Format("({0:p2})", rigaDati.TCAssegnato / rigaDati.TCLavRT));
- }
- catch
- {
- lblEfficienzaLavoroRT.Text = "n/a";
-
- }
- // calcolo efficienza Teorica - se il calcolo non è possibile mette n/a
- try
- {
- lblEfficienzaEffRT.Text = Convert.ToString(String.Format("({0:p2})", rigaDati.TCAssegnato / rigaDati.TCEffRT));
- }
- catch
- {
- lblEfficienzaEffRT.Text = "n/a";
+ logger.lg.scriviLog($"Eccezione in popolaLablels:{Environment.NewLine}{exc}");
}
}
+
+ #endregion Protected Methods
}
}
\ No newline at end of file
diff --git a/MP-TAB/WebUserControls/mod_mappaStato.ascx.cs b/MP-TAB/WebUserControls/mod_mappaStato.ascx.cs
index ec087324..58663968 100644
--- a/MP-TAB/WebUserControls/mod_mappaStato.ascx.cs
+++ b/MP-TAB/WebUserControls/mod_mappaStato.ascx.cs
@@ -7,9 +7,7 @@ namespace MoonProTablet.WebUserControls
{
public partial class mod_mappaStato : BaseUserControl
{
- protected void Page_Load(object sender, EventArgs e)
- {
- }
+ #region Protected Methods
///
/// rimanda alla pagina di dettaglio della macchina scelta
@@ -20,17 +18,14 @@ namespace MoonProTablet.WebUserControls
{
LinkButton lnkbtn = (LinkButton)sender;
memLayer.ML.setSessionVal("IdxMacchina", lnkbtn.CommandArgument);
- memLayer.ML.setSessionVal("subMaccSel", lnkbtn.CommandArgument);
+ subMaccSel = lnkbtn.CommandArgument;
Response.Redirect("~/DettaglioMacchina.aspx");
}
- ///
- /// fa update del controllo
- ///
- public void doUpdate()
+
+ protected void Page_Load(object sender, EventArgs e)
{
- ods.DataBind();
- repLI.DataBind();
}
+
///
/// timeout scaduto
///
@@ -41,5 +36,20 @@ namespace MoonProTablet.WebUserControls
doUpdate();
ScriptManager.RegisterStartupScript(Page, GetType(), "temp", "", false);
}
+
+ #endregion Protected Methods
+
+ #region Public Methods
+
+ ///
+ /// fa update del controllo
+ ///
+ public void doUpdate()
+ {
+ ods.DataBind();
+ repLI.DataBind();
+ }
+
+ #endregion Public Methods
}
}
\ No newline at end of file