Fix controllo PARTICOLARI AMMESSI su postaizoni finiti

This commit is contained in:
Samuele E. Locatelli
2019-06-07 18:52:34 +02:00
parent 86066d5292
commit 1b027e0a7c
2 changed files with 108 additions and 99 deletions
+65 -65
View File
@@ -203,103 +203,103 @@ namespace GMW.WebUserControls
// imposto particolare!
currParticolare = newPart;
// verifico che il particolare NON SIA in veto...
if(checkPartVetoByLinea(currParticolare))
if (checkPartVetoByLinea(currParticolare))
{
Postazione.messaggiText += " - Attenzione, PARTICOLARE NON ATTIVATO / NON PERMESSO sulla LINEA!";
Postazione.CssClass = "stileComandoKo";
}
else
{
int idxCellaCurr = 0;
try
{
idxCellaCurr = MagClass.magazzino.taPosUdcCorr.getByUDC(barcodeIn)[0].IdxCella;
}
catch
{ }
string codBloccoCurr = "";
int idxBlocco = 0;
try
{
idxBlocco = MagClass.magazzino.taCelle.getByIdxCella(idxCellaCurr)[0].IdxBlocco;
codBloccoCurr = MagClass.magazzino.taBlocchi.getByIdx(idxBlocco)[0].CodBlocco;
}
catch
{ }
// 2015.01.12 controllo UDC non già su altre postazioni...
if (codBloccoCurr == Postazione.currCodBlocco && idxCellaCurr != Postazione.currIdxCella)
{
Postazione.messaggiText += " - Attenzione, UDC già caricato su ALTRA LINEA!";
Postazione.messaggiText += $" - Attenzione, PARTICOLARE {currParticolare} NON ATTIVATO / NON PERMESSO sulla LINEA!";
Postazione.CssClass = "stileComandoKo";
}
else
{
// controllo SE esista già UDC in AL dest... altrimenti CREO!!!
udcDest = checkCreaUDC(true, true);
// verifico che NON SIA GIA' associato...
bool udcGiaAssociato = false;
int idxCellaCurr = 0;
try
{
udcGiaAssociato = MagClass.magazzino.checkAssociazioneUdcParent(udcDest, barcodeIn);
idxCellaCurr = MagClass.magazzino.taPosUdcCorr.getByUDC(barcodeIn)[0].IdxCella;
}
catch
{ }
if (!udcGiaAssociato)
string codBloccoCurr = "";
int idxBlocco = 0;
try
{
// associo UDC con quello di destinazione SE NECESSARIO
MagClass.magazzino.associaUdcParent(udcDest, barcodeIn, true);
idxBlocco = MagClass.magazzino.taCelle.getByIdxCella(idxCellaCurr)[0].IdxBlocco;
codBloccoCurr = MagClass.magazzino.taBlocchi.getByIdx(idxBlocco)[0].CodBlocco;
}
// controllo se UDC non sia già stato spostato in posizione... dsMagazzino, posizUdcCorrente, getByUdc
if (idxCellaCurr == Postazione.currIdxCella)
catch
{ }
// 2015.01.12 controllo UDC non già su altre postazioni...
if (codBloccoCurr == Postazione.currCodBlocco && idxCellaCurr != Postazione.currIdxCella)
{
Postazione.messaggiText += " - Attenzione, UDC già caricato!";
Postazione.messaggiText += " - Attenzione, UDC già caricato su ALTRA LINEA!";
Postazione.CssClass = "stileComandoKo";
// controllo SE esista già UDC in AL dest... altrimenti CREO!!!
checkCreaUDC(true, true);
}
else
{
// verifico per eventuale consumo vecchio UDC... cerco nella posizione
DS_magazzino.v_UdcDetailDataTable tabUdcDet = null;
// controllo SE esista già UDC in AL dest... altrimenti CREO!!!
udcDest = checkCreaUDC(true, true);
// verifico che NON SIA GIA' associato...
bool udcGiaAssociato = false;
try
{
// cerco nella posizione
tabUdcDet = MagClass.magazzino.taDettUDC.getUdcDetailByIdxCella(idxCella);
udcGiaAssociato = MagClass.magazzino.checkAssociazioneUdcParent(udcDest, barcodeIn);
}
catch
{ }
// carico UDC letto in cella...
DateTime adesso = DateTime.Now;
string noteTrim = Postazione.currNomeLinea;
// cerco se NON ci sia l'UDC letto...
if (tabUdcDet.Select(string.Format("UDC = '{0}'", barcodeIn)).Length == 0)
if (!udcGiaAssociato)
{
string oldUdc = "";
// associo UDC con quello di destinazione SE NECESSARIO
MagClass.magazzino.associaUdcParent(udcDest, barcodeIn, true);
}
// controllo se UDC non sia già stato spostato in posizione... dsMagazzino, posizUdcCorrente, getByUdc
if (idxCellaCurr == Postazione.currIdxCella)
{
Postazione.messaggiText += " - Attenzione, UDC già caricato!";
Postazione.CssClass = "stileComandoKo";
// controllo SE esista già UDC in AL dest... altrimenti CREO!!!
checkCreaUDC(true, true);
}
else
{
// verifico per eventuale consumo vecchio UDC... cerco nella posizione
DS_magazzino.v_UdcDetailDataTable tabUdcDet = null;
try
{
oldUdc = ((DS_magazzino.v_UdcDetailRow)tabUdcDet.Select(string.Format("Particolare = '{0}'", currParticolare))[0]).UDC;
// cerco nella posizione
tabUdcDet = MagClass.magazzino.taDettUDC.getUdcDetailByIdxCella(idxCella);
}
catch
{ }
// se trovo un altro UDC dello stesso particolare...
if (oldUdc != "")
// carico UDC letto in cella...
DateTime adesso = DateTime.Now;
string noteTrim = Postazione.currNomeLinea;
// cerco se NON ci sia l'UDC letto...
if (tabUdcDet.Select(string.Format("UDC = '{0}'", barcodeIn)).Length == 0)
{
// consumo UDC
consumaUdc(oldUdc);
string oldUdc = "";
try
{
oldUdc = ((DS_magazzino.v_UdcDetailRow)tabUdcDet.Select(string.Format("Particolare = '{0}'", currParticolare))[0]).UDC;
}
catch
{ }
// se trovo un altro UDC dello stesso particolare...
if (oldUdc != "")
{
// consumo UDC
consumaUdc(oldUdc);
}
// se ho cod cella sposto UDC in nuova posizione!
MagClass.magazzino.spostaUDC(memLayer.ML.StringSessionObj("CodCS"), barcodeIn, Postazione.currIdxCella, memLayer.ML.confReadBool("spostaUdcResettaLdp"), Request.UserHostName);
// registro spostamento UDC
MagClass.magazzino.taSAO.insertQuery(adesso, MagClass.magazzino.CodSoggCurrUser, Postazione.name, Postazione.IP, barcodeIn, currParticolare, "spostaUDC", string.Format("Caricato UDC Fusi su linea {2}, qta: {0} {1} ", qta, noteTrim, Postazione.currCodLinea));
}
// se ho cod cella sposto UDC in nuova posizione!
MagClass.magazzino.spostaUDC(memLayer.ML.StringSessionObj("CodCS"), barcodeIn, Postazione.currIdxCella, memLayer.ML.confReadBool("spostaUdcResettaLdp"), Request.UserHostName);
// registro spostamento UDC
MagClass.magazzino.taSAO.insertQuery(adesso, MagClass.magazzino.CodSoggCurrUser, Postazione.name, Postazione.IP, barcodeIn, currParticolare, "spostaUDC", string.Format("Caricato UDC Fusi su linea {2}, qta: {0} {1} ", qta, noteTrim, Postazione.currCodLinea));
Postazione.CssClass = "stileComandoOk";
}
Postazione.CssClass = "stileComandoOk";
}
}
}
}
else
{
@@ -549,7 +549,7 @@ namespace GMW.WebUserControls
{
// controllo SE esista già UDC in AL dest... altrimenti CREO!!!
string udcDest = "";
udcDest = checkCreaUDC(true,true);
udcDest = checkCreaUDC(true, true);
// associo UDC con quello di destinazione
MagClass.magazzino.associaUdcParent(udcDest, udcParent, true);
// registro creazione nuovo UDC
+43 -34
View File
@@ -1062,46 +1062,55 @@ namespace GMW_data
// calcolo nuovo particolare
origParticolare = DataProxy.obj.taCartellini.stp_getByUdc(barcodeIn)[0].Particolare;
// chiamo sempre stored x recuperare GRZ da GRZ (solo alcuni) o LVT da GRZ o LVT da LVT (supercubati)
// calcolo particolare OUT da Distinta Base
string partOut = "";
MagClass.magazzino.taPartIO.particolareLVTFromGRZ(tipoLinea, origParticolare, CodCs, ref partOut);
currParticolare = partOut;
// continuo controlli
if (currParticolare != "")
// verifico che il particolare NON SIA in veto...
if (checkPartVetoByLinea(origParticolare))
{
Postazione.messaggiText += $" - Attenzione, PARTICOLARE {origParticolare} NON ATTIVATO / NON PERMESSO sulla LINEA!";
Postazione.CssClass = "stileComandoKo";
}
else
{
// chiamo sempre stored x recuperare GRZ da GRZ (solo alcuni) o LVT da GRZ o LVT da LVT (supercubati)
// calcolo particolare OUT da Distinta Base
string partOut = "";
MagClass.magazzino.taPartIO.particolareLVTFromGRZ(tipoLinea, origParticolare, CodCs, ref partOut);
currParticolare = partOut;
// continuo controlli
if (currParticolare != "")
{
int idxCellaCurr = 0;
try
{
idxCellaCurr = MagClass.magazzino.taPosUdcCorr.getByUDC(barcodeIn)[0].IdxCella;
int idxCellaCurr = 0;
try
{
idxCellaCurr = MagClass.magazzino.taPosUdcCorr.getByUDC(barcodeIn)[0].IdxCella;
}
catch
{ }
string codBloccoCurr = "";
int idxBlocco = 0;
try
{
idxBlocco = MagClass.magazzino.taCelle.getByIdxCella(idxCellaCurr)[0].IdxBlocco;
codBloccoCurr = MagClass.magazzino.taBlocchi.getByIdx(idxBlocco)[0].CodBlocco;
}
catch
{ }
// 2015.01.12 controllo UDC non già su altre postazioni...
if (codBloccoCurr == Postazione.currCodBlocco && idxCellaCurr != Postazione.currIdxCella)
{
Postazione.messaggiText += " - Attenzione, UDC già caricato su ALTRA LINEA!";
Postazione.CssClass = cssErr;
}
else
{
processUdcInOut(idxCellaCurr, false, true);
}
}
catch
{ }
string codBloccoCurr = "";
int idxBlocco = 0;
try
else // non trovo part LVT
{
idxBlocco = MagClass.magazzino.taCelle.getByIdxCella(idxCellaCurr)[0].IdxBlocco;
codBloccoCurr = MagClass.magazzino.taBlocchi.getByIdx(idxBlocco)[0].CodBlocco;
}
catch
{ }
// 2015.01.12 controllo UDC non già su altre postazioni...
if (codBloccoCurr == Postazione.currCodBlocco && idxCellaCurr != Postazione.currIdxCella)
{
Postazione.messaggiText += " - Attenzione, UDC già caricato su ALTRA LINEA!";
Postazione.messaggiText += traduci("ERR-LVT-001");
Postazione.CssClass = cssErr;
}
else
{
processUdcInOut(idxCellaCurr, false, true);
}
}
else // non trovo part LVT
{
Postazione.messaggiText += traduci("ERR-LVT-001");
Postazione.CssClass = cssErr;
}
}
// controllo SE PER CASO ci fosse NC e ci sia stata deroga, cambio MSG...