Patch level :10.0 228
Files correlati :ce0.exe ce0500a.msk Ricompilazione Demo : [ ] Commento : sistemate le ricerche nella maschera di immissione cespiti. Non erano mai funzionate così bene...anzi, non erano mai funzionate git-svn-id: svn://10.65.10.50/trunk@18210 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
3ea712c4cd
commit
26ebee4491
@ -119,6 +119,7 @@ protected:
|
||||
int calcola_stato_attivita();
|
||||
bool cespite_ok() const;
|
||||
void set_cespi_filter();
|
||||
void crea_filtro(TString& filter) const;
|
||||
|
||||
public:
|
||||
int stato_attivita() const { return _staat; }
|
||||
@ -152,6 +153,31 @@ void TQuery_mask::on_user_search(TOperable_field& o)
|
||||
}
|
||||
}
|
||||
|
||||
//metodo per creare il filtro in base ai parametri maschera
|
||||
void TQuery_mask::crea_filtro(TString& filter) const
|
||||
{
|
||||
if (get(F_SELECT) == "I") // Filtro per impianto
|
||||
{
|
||||
const TString& imp = get(F_IMPIANTO);
|
||||
if (imp.full())
|
||||
filter << '(' << CESPI_CODIMP << "=\"" << imp << "\")";
|
||||
}
|
||||
else // Filtro per attività
|
||||
{
|
||||
filter << "(STR(" << CESPI_CODCGRA << "=" << get_int(F_GRUPPO) << ')';
|
||||
TString4 specie = get(F_SPECIE); specie.rtrim(); // Toglie spazi FINALI
|
||||
filter << "&&(" << CESPI_CODSPA << "=\"" << specie << "\"))";
|
||||
}
|
||||
|
||||
const int cat = get_int(F_CATEGORIA);
|
||||
if (cat > 0)
|
||||
{
|
||||
if (filter.full())
|
||||
filter << "&&";
|
||||
filter << "(STR(CODCAT==" << cat << "))";
|
||||
}
|
||||
}
|
||||
|
||||
void TQuery_mask::on_search_event(TOperable_field& o)
|
||||
{
|
||||
TToken_string order, fields, header;
|
||||
@ -181,22 +207,10 @@ void TQuery_mask::on_search_event(TOperable_field& o)
|
||||
rel.add("CIM","CODTAB==CODIMP");
|
||||
|
||||
TString filter;
|
||||
|
||||
if (get(F_SELECT) == "I") // Filtro per impianto
|
||||
{
|
||||
const TString& imp = get(F_IMPIANTO);
|
||||
if (!imp.empty())
|
||||
filter << CESPI_CODIMP << "=\"" << imp << '"';
|
||||
}
|
||||
else // Filtro per attività
|
||||
{
|
||||
filter << "STR(" << CESPI_CODCGRA << "=" << get_int(F_GRUPPO) << ')';
|
||||
TString4 specie = get(F_SPECIE); specie.rtrim(); // Toglie spazi FINALI
|
||||
filter << "&&(" << CESPI_CODSPA << "=\"" << specie << "\")";
|
||||
}
|
||||
crea_filtro(filter);
|
||||
|
||||
TSorted_cursor cur(&rel, order, filter);
|
||||
TCursor_sheet sht(&cur, order, TR("Cespiti"), header, 0, 1);
|
||||
TCursor_sheet sht(&cur, fields, TR("Cespiti"), header, 0, 1);
|
||||
|
||||
if (sht.run() == K_ENTER)
|
||||
{
|
||||
@ -243,18 +257,8 @@ bool TQuery_mask::cespite_ok() const
|
||||
void TQuery_mask::set_cespi_filter()
|
||||
{
|
||||
TString filter;
|
||||
if (get(F_SELECT) == "I") // Filtro per impianto
|
||||
{
|
||||
const TString& imp = get(F_IMPIANTO);
|
||||
if (!imp.empty())
|
||||
filter << CESPI_CODIMP << "=\"" << imp << '"';
|
||||
}
|
||||
else // Filtro per attività
|
||||
{
|
||||
filter << "STR(" << CESPI_CODCGRA << "=" << get_int(F_GRUPPO) << ')';
|
||||
TString4 specie = get(F_SPECIE); specie.rtrim(); // Toglie spazi FINALI
|
||||
filter << "&&(" << CESPI_CODSPA << "=\"" << specie << "\")";
|
||||
}
|
||||
crea_filtro(filter);
|
||||
|
||||
efield(F_IDCESPITE).browse()->set_filter(filter);
|
||||
efield(F_DESC).browse()->set_filter(filter);
|
||||
}
|
||||
@ -319,6 +323,7 @@ bool TQuery_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
}
|
||||
if (e == fe_close && o.empty() && !field(F_IDCESPITE).empty() && !cespite_ok())
|
||||
return error_box(TR("È necessario specificare la categoria del nuovo cespite"));
|
||||
set_cespi_filter();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -6,7 +6,7 @@ ENDPAGE
|
||||
|
||||
PAGE "Anagrafica cespiti" 0 2 0 0
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
GROUPBOX DLG_NULL 78 8
|
||||
BEGIN
|
||||
PROMPT 0 1 "@bParametri ditta"
|
||||
END
|
||||
@ -57,7 +57,7 @@ END
|
||||
|
||||
RADIOBUTTON F_SELECT 1 75
|
||||
BEGIN
|
||||
PROMPT 1 3 ""
|
||||
PROMPT 1 4 "Ricerca per: "
|
||||
FLAGS "Z"
|
||||
ITEM "A|Attività"
|
||||
MESSAGE SHOW,1@|HIDE,2@
|
||||
@ -67,14 +67,14 @@ END
|
||||
|
||||
NUMBER F_GRUPPO 2
|
||||
BEGIN
|
||||
PROMPT 1 5 "Gruppo "
|
||||
PROMPT 1 7 "Gruppo "
|
||||
FLAGS "Z"
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
STRING F_SPECIE 4
|
||||
BEGIN
|
||||
PROMPT 16 5 "Specie "
|
||||
PROMPT 16 7 "Specie "
|
||||
FLAGS "_"
|
||||
USE CCB
|
||||
JOIN %CAT ALIAS 400 INTO CODTAB=CODTAB[5,10]
|
||||
@ -93,14 +93,14 @@ END
|
||||
|
||||
STRING F_DESC_GRSP 60 45
|
||||
BEGIN
|
||||
PROMPT 31 5 ""
|
||||
PROMPT 31 7 ""
|
||||
FLAGS "D"
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_IMPIANTO 10
|
||||
BEGIN
|
||||
PROMPT 1 5 "Impianto "
|
||||
PROMPT 1 7 "Impianto "
|
||||
FLAGS "Z"
|
||||
USE CIM
|
||||
INPUT CODTAB F_IMPIANTO
|
||||
@ -114,7 +114,7 @@ END
|
||||
|
||||
STRING F_DESC_IMP 50 45
|
||||
BEGIN
|
||||
PROMPT 26 5 ""
|
||||
PROMPT 26 7 ""
|
||||
FLAGS "Z"
|
||||
USE CIM KEY 2
|
||||
INPUT S0 F_DESC_IMP
|
||||
@ -127,7 +127,7 @@ END
|
||||
|
||||
NUMBER F_CATEGORIA 2
|
||||
BEGIN
|
||||
PROMPT 1 7 "Categoria "
|
||||
PROMPT 1 9 "Categoria "
|
||||
FLAGS "BZ"
|
||||
DRIVENBY F_GRUPPO
|
||||
DRIVENBY F_SPECIE
|
||||
@ -137,7 +137,7 @@ END
|
||||
|
||||
STRING F_DESC_CAT 60 58
|
||||
BEGIN
|
||||
PROMPT 16 7 ""
|
||||
PROMPT 16 9 ""
|
||||
FLAGS "B"
|
||||
DRIVENBY F_GRUPPO
|
||||
DRIVENBY F_SPECIE
|
||||
@ -145,7 +145,7 @@ END
|
||||
|
||||
STRING F_IDCESPITE 10
|
||||
BEGIN
|
||||
PROMPT 1 8 "Cespite "
|
||||
PROMPT 1 10 "Cespite "
|
||||
FLAGS "UZ"
|
||||
USE LF_CESPI
|
||||
INPUT IDCESPITE F_IDCESPITE
|
||||
@ -167,7 +167,7 @@ END
|
||||
|
||||
STRING F_DESC 60 50
|
||||
BEGIN
|
||||
PROMPT 24 8 ""
|
||||
PROMPT 24 10 ""
|
||||
USE LF_CESPI KEY 3
|
||||
INPUT DESC F_DESC
|
||||
DISPLAY "Descrizione@50" DESC
|
||||
@ -184,24 +184,24 @@ BEGIN
|
||||
KEY 2
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 13
|
||||
GROUPBOX DLG_NULL 78 12
|
||||
BEGIN
|
||||
PROMPT 1 9 "@bRicerce alternative e personalizzate"
|
||||
PROMPT 0 11 "@bRicerche alternative e personalizzate"
|
||||
END
|
||||
|
||||
BUTTON F_SEARCH1 22 2
|
||||
BEGIN
|
||||
PROMPT 2 10 "Per categoria"
|
||||
PROMPT 1 12 "Per categoria"
|
||||
END
|
||||
|
||||
BUTTON F_SEARCH2 22 2
|
||||
BEGIN
|
||||
PROMPT 28 10 "Per impianto"
|
||||
PROMPT 27 12 "Per impianto"
|
||||
END
|
||||
|
||||
BUTTON F_SEARCH3 22 2
|
||||
BEGIN
|
||||
PROMPT 54 10 "Per stabilimento"
|
||||
PROMPT 53 12 "Per stabilimento"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
Loading…
x
Reference in New Issue
Block a user