Patch level : 10.0 patch 256
Files correlati : lv0400.exe, lv0400a.msk Ricompilazione Demo : [ ] Commento : Corretta gestione campi legati ai pezzi per pacco (disabilitati quando ppconf = 0) e l'origine del dato PPCONf, adesso letto dal magazzino e non più dall'articolo di lavanderia, che non teneva conto dei cambiamenti avvenuti git-svn-id: svn://10.65.10.50/trunk@18492 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
46d0d59f8d
commit
81c3b9c50e
@ -90,7 +90,6 @@ bool TContratti_msk::on_art_select()
|
|||||||
|
|
||||||
//recupero la maschera di riga
|
//recupero la maschera di riga
|
||||||
TMask& rowmask = ss.sheet_mask();
|
TMask& rowmask = ss.sheet_mask();
|
||||||
TMask& mask = ss.mask();
|
|
||||||
|
|
||||||
//se esiste il record su LF_CLIFOGIAC, recupero l'unità di misura dalla riga dello sheet selezionata
|
//se esiste il record su LF_CLIFOGIAC, recupero l'unità di misura dalla riga dello sheet selezionata
|
||||||
//e setto i campi delle dotazioni e dei consegnati ai valori corretti riportati alla giusta unità di misura
|
//e setto i campi delle dotazioni e dei consegnati ai valori corretti riportati alla giusta unità di misura
|
||||||
@ -120,47 +119,38 @@ bool TContratti_msk::on_art_select()
|
|||||||
row.add(consmonth.stringa(), ss.cid2index(S_CONSMESE));
|
row.add(consmonth.stringa(), ss.cid2index(S_CONSMESE));
|
||||||
}
|
}
|
||||||
|
|
||||||
//const bool varclcons = artrec.get_int(ANAMAG_PPCONF) > 0; //MAI UTILIZZATO; PRESUMO VARIABILE DI DEBUG
|
//instanzio una cache sull'anagrafica di magazzino
|
||||||
rowmask.set(S_PPCONF, artrec.get_int(ANAMAG_PPCONF));
|
//per leggere il valore di PPCONF corretto e sempre aggiornato
|
||||||
row.add(artrec.get(ANAMAG_PPCONF), ss.cid2index(S_PPCONF));
|
const TRectype& anamag = cache().get(LF_ANAMAG, codart);
|
||||||
|
rowmask.set(S_PPCONF, anamag.get_int(ANAMAG_PPCONF));
|
||||||
//se PPCONF = 0 allora disabilito S_CALCONS e lo setto al valore di default
|
row.add(anamag.get(ANAMAG_PPCONF), ss.cid2index(S_PPCONF));
|
||||||
//altrimenti abilito la cella e permetto le modifiche
|
|
||||||
if (artrec.get_int(ANAMAG_PPCONF) == 0)
|
|
||||||
{
|
|
||||||
//gestione campi dello sheet
|
|
||||||
//setto il default sulla riga dello sheet
|
|
||||||
rowmask.set(S_CALCCONS, "0");
|
|
||||||
rowmask.set(S_ARROT, "");
|
|
||||||
row.add("0",ss.cid2index(S_CALCCONS));
|
|
||||||
row.add("",ss.cid2index(S_ARROT));
|
|
||||||
//disabilito le celle
|
|
||||||
ss.disable_cell(ss.selected(),ss.cid2index(S_CALCCONS));
|
|
||||||
ss.disable_cell(ss.selected(),ss.cid2index(S_ARROT));
|
|
||||||
//svuoto e disabilito i campi del dettaglio
|
|
||||||
mask.set(F_CALCCONS, "0");
|
|
||||||
mask.set(F_ARROT, "");
|
|
||||||
mask.disable(F_CALCCONS);
|
|
||||||
mask.disable(F_ARROT);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//abilito le celle sullo sheet
|
|
||||||
ss.enable_cell(ss.selected(),ss.cid2index(S_CALCCONS));
|
|
||||||
ss.enable_cell(ss.selected(),ss.cid2index(S_ARROT));
|
|
||||||
//abilito i campi del dettaglio
|
|
||||||
mask.enable(F_CALCCONS);
|
|
||||||
mask.enable(F_ARROT);
|
|
||||||
}
|
|
||||||
|
|
||||||
//ciclo i dati di interesse della riga selezionata nel dettaglio
|
//ciclo i dati di interesse della riga selezionata nel dettaglio
|
||||||
//sulla maschera principale
|
//sulla maschera principale
|
||||||
for (short id = F_CODART; id <= F_CODART+35; id++)
|
for (short id = F_CODART; id <= F_CODART + 35; id++)
|
||||||
{
|
{
|
||||||
const int pos = id2pos(id);
|
const int pos = id2pos(id);
|
||||||
if (pos>0)
|
if (pos > 0)
|
||||||
fld(pos).set(row.get(ss.cid2index(id - 400)));
|
fld(pos).set(row.get(ss.cid2index(id - 400)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (field(F_PPCONF).empty())
|
||||||
|
{
|
||||||
|
set(F_CALCCONS, "0");
|
||||||
|
set(F_ARROT, "");
|
||||||
|
disable(F_CALCCONS);
|
||||||
|
disable(F_ARROT);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
enable(F_CALCCONS);
|
||||||
|
enable(F_ARROT);
|
||||||
|
set(F_ARROT, "X");
|
||||||
|
|
||||||
|
TToken_string row = ss.row(ss.selected());
|
||||||
|
row.add("X", ss.cid2index(S_ARROT));
|
||||||
|
ss.force_update();
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -197,7 +187,7 @@ bool TContratti_msk::on_field_event(TOperable_field& o,TField_event e,long jolly
|
|||||||
_post_contr = lv_find_contract(codcf, indsped, oggi);
|
_post_contr = lv_find_contract(codcf, indsped, oggi);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case DLG_PLANNING:
|
case DLG_PLANNING:
|
||||||
//se viene premuto il bottone "Giri", lancia lv0500 (generatore automatico dei giri)
|
//se viene premuto il bottone "Giri", lancia lv0500 (generatore automatico dei giri)
|
||||||
if (e == fe_button && edit_mode())
|
if (e == fe_button && edit_mode())
|
||||||
@ -272,6 +262,24 @@ bool TContratti_msk::on_field_event(TOperable_field& o,TField_event e,long jolly
|
|||||||
fld(pos).set_dirty(false);
|
fld(pos).set_dirty(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//questo pezzo serve per gestire enable e disable dei campi in modo corretto
|
||||||
|
//senza massage in maschera, sia sullo sheet che sul dettaglio
|
||||||
|
if (field(F_PPCONF).empty())
|
||||||
|
{
|
||||||
|
set(F_CALCCONS, "0");
|
||||||
|
set(F_ARROT, "");
|
||||||
|
disable(F_CALCCONS);
|
||||||
|
disable(F_ARROT);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
enable(F_CALCCONS);
|
||||||
|
enable(F_ARROT);
|
||||||
|
set(F_ARROT, "X");
|
||||||
|
row.add("X", ss.cid2index(S_ARROT));
|
||||||
|
ss.force_update();
|
||||||
|
}
|
||||||
_artrig=row.get(0); //salvo nella variabile globale il codart della riga selezionata
|
_artrig=row.get(0); //salvo nella variabile globale il codart della riga selezionata
|
||||||
}
|
}
|
||||||
//se ho cancellato una riga dello sheet, chiedo conferma che sia effettivamente quello che si vuole fare
|
//se ho cancellato una riga dello sheet, chiedo conferma che sia effettivamente quello che si vuole fare
|
||||||
|
@ -270,8 +270,6 @@ NUMBER F_PPCONF 15 5
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 18 "Pezzi per Confezione "
|
PROMPT 1 18 "Pezzi per Confezione "
|
||||||
FLAGS "DG"
|
FLAGS "DG"
|
||||||
MESSAGE EMPTY CLEAR,F_ARROT|CLEAR,F_CALCCONS
|
|
||||||
MESSAGE ENABLE,F_ARROT|ENABLE,F_CALCCONS
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_BARCODE 20
|
STRING F_BARCODE 20
|
||||||
@ -891,8 +889,6 @@ NUMBER S_PPCONF 15 5
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Pezzi per Confezione "
|
PROMPT 2 1 "Pezzi per Confezione "
|
||||||
FLAGS "DG"
|
FLAGS "DG"
|
||||||
MESSAGE EMPTY CLEAR,S_ARROT|CLEAR,S_CALCCONS
|
|
||||||
MESSAGE ENABLE,S_ARROT|ENABLE,S_CALCCONS
|
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER S_PREC 2
|
NUMBER S_PREC 2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user