Fix ricalcolo MSE x macchina POST evento manuale
This commit is contained in:
@@ -58,13 +58,10 @@
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</div>
|
||||
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByRefreshData"
|
||||
TypeName="MapoDb.DS_ProdTempiTableAdapters.MappaStatoExplTableAdapter" FilterExpression="IdxMacchina = '{0}'">
|
||||
<FilterParameters>
|
||||
<asp:SessionParameter Type="String" DefaultValue="0" SessionField="IdxMacchina" Name="IdxMacchina" />
|
||||
</FilterParameters>
|
||||
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByIdxMacchina"
|
||||
TypeName="MapoDb.DS_ProdTempiTableAdapters.MappaStatoExplTableAdapter">
|
||||
<SelectParameters>
|
||||
<asp:Parameter DefaultValue="1" Name="maxAgeSec" Type="Int32" />
|
||||
<asp:SessionParameter DefaultValue="0" Name="IdxMacchina" SessionField="IdxMacchina" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:HiddenField runat="server" ID="hfIdxMacchina" />
|
||||
|
||||
@@ -58,17 +58,17 @@ namespace MoonProTablet.WebUserControls
|
||||
DS_applicazione.AnagraficaEventiRow rigaEvento = DataLayer.obj.taAnagEventi.GetByIdx(idxEvento)[0];
|
||||
if (rigaEvento != null)
|
||||
{
|
||||
DS_applicazione.StatoMacchineRow rigaStato = DataLayer.obj.taStatoMacchine.GetDataByIdxMacchina(idxMacchina.ToString())[0];
|
||||
DS_applicazione.StatoMacchineRow rigaStato = DataLayer.obj.taStatoMacchine.GetDataByIdxMacchina(idxMacchina)[0];
|
||||
// processo evento...
|
||||
if (insRealtime)
|
||||
{
|
||||
// se realtime
|
||||
controllerMapo.scriviRigaEventoBarcode(idxMacchina.ToString(), idxEvento, rigaStato.CodArticolo, "DRT", DataLayer.MatrOpr, rigaStato.pallet);
|
||||
controllerMapo.scriviRigaEventoBarcode(idxMacchina, idxEvento, rigaStato.CodArticolo, "DRT", DataLayer.MatrOpr, rigaStato.pallet);
|
||||
}
|
||||
else
|
||||
{
|
||||
// in primis disabilito insert...
|
||||
DataLayer.obj.taStatoMacchine.setInsEnabled(idxMacchina.ToString(), false);
|
||||
DataLayer.obj.taStatoMacchine.setInsEnabled(idxMacchina, false);
|
||||
// calcolo evento
|
||||
string evento = idxEvento.ToString();
|
||||
string commento = "";
|
||||
@@ -84,7 +84,7 @@ namespace MoonProTablet.WebUserControls
|
||||
try
|
||||
{
|
||||
// cerco da 1 sec DOPO evento...
|
||||
DS_applicazione.DiarioDiBordoDataTable tabNext = controllerMapo.nextEventoImpiantoFrom(idxMacchina.ToString(), dataOraEv.AddSeconds(1));
|
||||
DS_applicazione.DiarioDiBordoDataTable tabNext = controllerMapo.nextEventoImpiantoFrom(idxMacchina, dataOraEv.AddSeconds(1));
|
||||
|
||||
DateTime nextEvDT = DateTime.Now;
|
||||
if (tabNext.Rows.Count > 0)
|
||||
@@ -98,14 +98,14 @@ namespace MoonProTablet.WebUserControls
|
||||
}
|
||||
// fix salvo la dichiarazione di chiusura
|
||||
commento = string.Format("999 - M.Lav EndEvt: {0} [{1}]", evento, codRich);
|
||||
controllerMapo.scriviRigaEventoBarcode(idxMacchina.ToString(), 1, rigaStato.CodArticolo, commento, DataLayer.MatrOpr, rigaStato.pallet, nextEvDT.AddSeconds(-1), DateTime.Now); // 1 hard-coded x resettare
|
||||
controllerMapo.scriviRigaEventoBarcode(idxMacchina, 1, rigaStato.CodArticolo, commento, DataLayer.MatrOpr, rigaStato.pallet, nextEvDT.AddSeconds(-1), DateTime.Now); // 1 hard-coded x resettare
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
// update commento!
|
||||
commento = string.Format("999 - Dich StartEvt: {0} [{1}]", evento, codRich);
|
||||
// recupero data/ora evento da inserire (quella selezionata) ed AGGIUNGO 1 sec!!! così rimane traccia
|
||||
controllerMapo.scriviRigaEventoBarcode(idxMacchina.ToString(), idxEvento, rigaStato.CodArticolo, commento, DataLayer.MatrOpr, rigaStato.pallet, dataOraEv.AddSeconds(1), DateTime.Now);
|
||||
controllerMapo.scriviRigaEventoBarcode(idxMacchina, idxEvento, rigaStato.CodArticolo, commento, DataLayer.MatrOpr, rigaStato.pallet, dataOraEv.AddSeconds(1), DateTime.Now);
|
||||
// eseguo ricalcolo!
|
||||
DateTime startRicalcolo = dataOraEv.AddMinutes(memLayer.ML.confReadInt("minAnticipoRicalcolo"));
|
||||
|
||||
@@ -113,11 +113,11 @@ namespace MoonProTablet.WebUserControls
|
||||
int rdm_nEvStep = memLayer.ML.CRI("rdm_nEvStep");
|
||||
int rdm_nEvCheck = memLayer.ML.CRI("rdm_nEvCheck");
|
||||
bool rdm_ChkOnly = memLayer.ML.CRB("rdm_ChkOnly");
|
||||
DataLayer.obj.taComm.stp_ricalcolaDatiMacchinaFromDate(idxMacchina.ToString(), startRicalcolo, 1, rdm_nEvStep, rdm_nEvCheck, rdm_ChkOnly); // nella stored imposto macchina OFFline e poi ONline, parto da "minAnticipoRicalcolo" minuti prima...
|
||||
// aggiorno data evento x insert eventuale commento (5 sec...)
|
||||
DataLayer.obj.taComm.stp_ricalcolaDatiMacchinaFromDate(idxMacchina, startRicalcolo, 1, rdm_nEvStep, rdm_nEvCheck, rdm_ChkOnly); // nella stored imposto macchina OFFline e poi ONline, parto da "minAnticipoRicalcolo" minuti prima...
|
||||
// aggiorno data evento x insert eventuale commento (5 sec...)
|
||||
dataOraEv = dataOraEv.AddSeconds(5);
|
||||
// riabilito insert... anche se non dovrebbe servire x stored ricalcolo precedente...
|
||||
DataLayer.obj.taStatoMacchine.setInsEnabled(idxMacchina.ToString(), true);
|
||||
DataLayer.obj.taStatoMacchine.setInsEnabled(idxMacchina, true);
|
||||
}
|
||||
// mostro esito
|
||||
lblOut.Text = "Registrata dichiarazione fermata";
|
||||
@@ -127,7 +127,10 @@ namespace MoonProTablet.WebUserControls
|
||||
lblOut.Text = string.Format("Codice evento non valido! {0}", idxEvento);
|
||||
}
|
||||
}
|
||||
// refresh fermate
|
||||
repLI.DataBind();
|
||||
// faccio refresh SOLO macchina corrente
|
||||
DataLayer.obj.taMSE.forceRefreshMacchina(idxMacchina);
|
||||
// sollevo evento!
|
||||
if (eh_newVal != null)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user