Collegamento ca <-> ci
git-svn-id: svn://10.65.10.50/branches/R_10_00@22900 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
56722f3773
commit
a9517e3cf5
@ -50,7 +50,7 @@ END
|
||||
|
||||
STRING F_CMS_LOC 35
|
||||
BEGIN
|
||||
PROMPT 2 16 "Localita' "
|
||||
PROMPT 2 16 "Località "
|
||||
FIELD LOC
|
||||
END
|
||||
|
||||
@ -130,7 +130,7 @@ PAGE "Parametri" -1 -1 64 6
|
||||
|
||||
LIST F_CMS_REGIVA 2 14
|
||||
BEGIN
|
||||
PROMPT 2 2 "Regime IVA "
|
||||
PROMPT 2 2 "Regime IVA "
|
||||
ITEM " |Normale" MESSAGE CLEAR,F_CMS_INDETR
|
||||
ITEM "NR|Non rilevante" MESSAGE CLEAR,F_CMS_INDETR
|
||||
ITEM "ES|Esente" MESSAGE CLEAR,F_CMS_INDETR
|
||||
@ -148,7 +148,7 @@ BEGIN
|
||||
USE LF_ATTIV
|
||||
INPUT CODDITTA F_CMS_CODDITTA SELECT
|
||||
INPUT CODATT F_CMS_CODATT
|
||||
DISPLAY "Attivita'" CODATT
|
||||
DISPLAY "Attività" CODATT
|
||||
DISPLAY "Prevalente" ATTPREV
|
||||
DISPLAY " @48" DESCR
|
||||
OUTPUT F_CMS_CODATT CODATT
|
||||
@ -158,7 +158,7 @@ END
|
||||
|
||||
STRING F_CMS_INDETR 1
|
||||
BEGIN
|
||||
PROMPT 62 2 "Indetraibilita' "
|
||||
PROMPT 62 2 "Indetraibilità "
|
||||
USE %DET
|
||||
INPUT CODTAB F_CMS_INDETR
|
||||
DISPLAY "Codice" CODTAB
|
||||
@ -208,19 +208,19 @@ END
|
||||
|
||||
BOOLEAN F_CMS_PUBBLICA
|
||||
BEGIN
|
||||
PROMPT 22 6 "Pubblica"
|
||||
PROMPT 26 6 "Pubblica"
|
||||
FIELD PUBBLICA
|
||||
END
|
||||
|
||||
BOOLEAN F_CMS_RENDIC
|
||||
BEGIN
|
||||
PROMPT 35 6 "Da rendicontare"
|
||||
PROMPT 42 6 "Da rendicontare"
|
||||
FIELD RENDIC
|
||||
END
|
||||
|
||||
BOOLEAN F_CMS_CHIUSA
|
||||
BEGIN
|
||||
PROMPT 55 6 "Chiusa"
|
||||
PROMPT 68 6 "Chiusa"
|
||||
FIELD CHIUSA
|
||||
END
|
||||
|
||||
@ -240,7 +240,7 @@ END
|
||||
|
||||
STRING F_CMS_CODTIPCM 5
|
||||
BEGIN
|
||||
PROMPT 2 8 "Tipologia di commessa "
|
||||
PROMPT 2 8 "Tipo commessa "
|
||||
FIELD CODTIPCM
|
||||
USE TPC
|
||||
INPUT CODTAB F_CMS_CODTIPCM
|
||||
@ -251,9 +251,9 @@ BEGIN
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_CMS_DESTIPCM 50 42
|
||||
STRING F_CMS_DESTIPCM 50 44
|
||||
BEGIN
|
||||
PROMPT 32 8 ""
|
||||
PROMPT 30 8 ""
|
||||
USE TPC KEY 2
|
||||
INPUT S0 F_CMS_DESTIPCM
|
||||
DISPLAY "Descrizione@50" S0
|
||||
@ -263,7 +263,7 @@ END
|
||||
|
||||
STRING F_CMS_CODTIPOL 5
|
||||
BEGIN
|
||||
PROMPT 2 9 "Tipologia di lavoro "
|
||||
PROMPT 2 9 "Tipo lavoro "
|
||||
FIELD CODTIPO
|
||||
USE TPL
|
||||
INPUT CODTAB F_CMS_CODTIPOL
|
||||
@ -274,9 +274,9 @@ BEGIN
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_CMS_DESTIPOL 50 42
|
||||
STRING F_CMS_DESTIPOL 50 44
|
||||
BEGIN
|
||||
PROMPT 32 9 ""
|
||||
PROMPT 30 9 ""
|
||||
USE TPL KEY 2
|
||||
INPUT S0 F_CMS_DESTIPOL
|
||||
DISPLAY "Descrizione@50" S0
|
||||
@ -286,7 +286,7 @@ END
|
||||
|
||||
STRING F_CMS_CODRESP 10
|
||||
BEGIN
|
||||
PROMPT 2 10 "Responsabile "
|
||||
PROMPT 2 10 "Responsabile "
|
||||
FIELD CODRESP
|
||||
USE RSP
|
||||
INPUT CODTAB F_CMS_CODRESP
|
||||
@ -297,9 +297,9 @@ BEGIN
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_CMS_DESRESP 50 42
|
||||
STRING F_CMS_DESRESP 50 44
|
||||
BEGIN
|
||||
PROMPT 32 10 ""
|
||||
PROMPT 30 10 ""
|
||||
USE RSP KEY 2
|
||||
INPUT S0 F_CMS_DESRESP
|
||||
DISPLAY "Descrizione@50" S0
|
||||
|
@ -86,6 +86,7 @@ protected:
|
||||
virtual TMask* get_mask(int);
|
||||
virtual bool get_next_key(TToken_string& key);
|
||||
|
||||
bool link_ci(const TMask& m);
|
||||
void write_rows(const TMask& m);
|
||||
void read_rows(const TMask& m);
|
||||
|
||||
@ -1055,8 +1056,8 @@ void TMovanal_msk::create_sheet()
|
||||
|
||||
if (!main_app().has_module(CIAUT))
|
||||
{
|
||||
hide(S_CODART);
|
||||
hide(S_DESCART);
|
||||
sm.hide(S_CODART);
|
||||
sm.hide(S_DESCART);
|
||||
sf.delete_column(S_CODART);
|
||||
sf.delete_column(S_DESCART);
|
||||
}
|
||||
@ -1108,17 +1109,24 @@ void TMovanal_app::write_rows(const TMask& m)
|
||||
TRectype& rec = mov.new_row(); // Crea una riga nuova
|
||||
_msk->row2rec(i, rec);
|
||||
} //FOR_EACH_SHEET...
|
||||
}
|
||||
|
||||
if (has_module(CIAUT))
|
||||
bool TMovanal_app::link_ci(const TMask& m)
|
||||
{
|
||||
bool done = has_module(CIAUT);
|
||||
if (done)
|
||||
{
|
||||
const TRectype& caus = cache().get(LF_CAUSALI, m.get(F_CODCAUS));
|
||||
if (caus.get_bool(CAU_MOVCGIND))
|
||||
const TRectype& mov = _rel->curr();
|
||||
const TRectype& caus = cache().get(LF_CAUSALI, mov.get(MOVANA_CODCAUS));
|
||||
done = caus.get_bool(CAU_MOVCGIND);
|
||||
if (done)
|
||||
{
|
||||
TFilename n; n.tempdir(); n.add("mov_caci.ini");
|
||||
n.fremove();
|
||||
if (n.full()) // dummy test
|
||||
{
|
||||
TConfig cini(n, "105");
|
||||
m.field(F_NUMREG).set(mov.get(MOVANA_NUMREG));
|
||||
TConfig cini(n, "107");
|
||||
mask2ini(m, cini);
|
||||
}
|
||||
TString cmd; cmd << "ci0 -6 -i" << n;
|
||||
@ -1126,6 +1134,7 @@ void TMovanal_app::write_rows(const TMask& m)
|
||||
ci0.run();
|
||||
}
|
||||
}
|
||||
return done;
|
||||
}
|
||||
|
||||
void TMovanal_app::read_rows(const TMask& m)
|
||||
@ -1156,14 +1165,20 @@ int TMovanal_app::write(const TMask& m)
|
||||
{
|
||||
m.autosave(*_rel);
|
||||
write_rows(m);
|
||||
return _rel->write();
|
||||
const int err = _rel->write();
|
||||
if (err == NOERR)
|
||||
link_ci(m);
|
||||
return err;
|
||||
}
|
||||
|
||||
int TMovanal_app::rewrite(const TMask& m)
|
||||
{
|
||||
m.autosave(*_rel);
|
||||
write_rows(m);
|
||||
return _rel->rewrite();
|
||||
const int err = _rel->rewrite();
|
||||
if (err == NOERR)
|
||||
link_ci(m);
|
||||
return err;
|
||||
}
|
||||
|
||||
int TMovanal_app::read(TMask& m)
|
||||
|
@ -111,6 +111,7 @@ BEGIN
|
||||
FLAGS "UG"
|
||||
FIELD CODCAUS
|
||||
GROUP 5
|
||||
ADD RUN cg0 -4
|
||||
END
|
||||
|
||||
STRINGA F_DESCAUS 50 40
|
||||
@ -124,6 +125,7 @@ BEGIN
|
||||
COPY OUTPUT F_CODCAUS
|
||||
CHECKTYPE REQUIRED
|
||||
GROUP 5
|
||||
ADD RUN cg0 -4
|
||||
END
|
||||
|
||||
STRING F_TIPODOC 2
|
||||
|
@ -1,5 +1,5 @@
|
||||
[CMMENU_001]
|
||||
Caption = "Contabilita' analitica"
|
||||
Caption = "Contabilità analitica"
|
||||
Picture = <ca01>
|
||||
Module = 15
|
||||
Flags = "F"
|
||||
|
@ -655,6 +655,16 @@ void ca_create_browse1(TEdit_field& kfld, int level, int logic, short key_id, sh
|
||||
ca_append_select_clause(out, level, logic, add_select);
|
||||
ca_append_run_clause(out, logic);
|
||||
|
||||
bool req = false;
|
||||
if ((logic == LF_COMMESSE || logic == LF_CDC) && kfld.mask().get_sheet()) // Sono in una maschera di riga?
|
||||
{
|
||||
TConfig& ini = ca_config();
|
||||
if (logic == LF_COMMESSE)
|
||||
req = ini.get_bool("CmsRequired");
|
||||
else
|
||||
req = ini.get_bool("CdcRequired");
|
||||
}
|
||||
|
||||
for (int i = 0; i <= level; i++)
|
||||
{
|
||||
const TString& picture = mci.picture(i);
|
||||
@ -681,7 +691,7 @@ void ca_create_browse1(TEdit_field& kfld, int level, int logic, short key_id, sh
|
||||
out << "DI \"" << TR("Chiusa") << "\" CHIUSA" << '\n';
|
||||
}
|
||||
out << "OU " << (des_id+level) << ' ' << field << '\n';
|
||||
out << "CH NO" << '\n';
|
||||
out << "CH " << (req ? "RE" : "NO") << '\n';
|
||||
out << "FI " << main_info.fieldref(level) << '\n';
|
||||
out << "EN" << '\n';
|
||||
out.close();
|
||||
@ -745,9 +755,9 @@ void ca_create_browse2(TEdit_field& kfld, int level, int logic, short key_id)
|
||||
}
|
||||
if (logic == LF_COMMESSE)
|
||||
{
|
||||
out << "DI \"" << TR("Proroga") << "\" PROROGA" << '\n';
|
||||
out << "DI \"" << TR("Data") << "@10" << "\" DATAPROR" << '\n';
|
||||
out << "DI \"" << TR("Chiusa") << "\" CHIUSA" << '\n';
|
||||
out << "DI \"" << HR("Proroga") << "\" PROROGA" << '\n';
|
||||
out << "DI \"" << HR("Data") << "@10" << "\" DATAPROR" << '\n';
|
||||
out << "DI \"" << HR("Chiusa") << "\" CHIUSA" << '\n';
|
||||
}
|
||||
|
||||
out << "CH NO" << '\n';
|
||||
@ -934,7 +944,8 @@ int ca_create_fields_compact(TMask& msk, int page, int logicnum, int x, int y,
|
||||
str.format("%s[%d,%d]", fieldname, fr.from()+from+1, fr.to()+from);
|
||||
kfld->set_field(str);
|
||||
}
|
||||
kfld->set_warning(mci.prompt(i));
|
||||
TString war; war << mci.prompt(i) << ' ' << TR("assente");
|
||||
kfld->set_warning(war);
|
||||
offset += prompt.len() + picture.len() + 4;
|
||||
if (desc_offset < offset)
|
||||
desc_offset = offset;
|
||||
@ -943,6 +954,11 @@ int ca_create_fields_compact(TMask& msk, int page, int logicnum, int x, int y,
|
||||
row_offset++;
|
||||
offset = 0;
|
||||
}
|
||||
|
||||
// Copio il checktype nel campo fantasma per colorare correttamente la colonna
|
||||
if (msk.get_sheet() != NULL && kfld->required())
|
||||
msk.efield(kid-100).check_type(kfld->check_type());
|
||||
|
||||
}
|
||||
}
|
||||
row_offset = 0;
|
||||
@ -1051,11 +1067,18 @@ int ca_create_fields_ext(TMask& m, int page, int x, int y, short first_id,
|
||||
{
|
||||
TMask_field& f = m.fld(pos);
|
||||
const int size = f.size();
|
||||
const TString prompt = ((TEditable_field &)f).get_warning();
|
||||
|
||||
TString80 prompt = f.prompt(); prompt.trim();
|
||||
if (prompt.blank())
|
||||
{
|
||||
TToken_string ts(((TEditable_field &)f).get_warning(), ' ');
|
||||
prompt = ts.get(0);
|
||||
}
|
||||
s.set_column_header(id, prompt);
|
||||
s.set_column_justify(id, f.is_kind_of(CLASS_REAL_FIELD));
|
||||
s.set_column_width(id, (max(3+size, prompt.len()+1)) * CHARX);
|
||||
s.enable_column(id);
|
||||
m.efield(id-100).check_type(f.check_type()); // Copio il checktype nel campo fantasma per colorare correttamente la colonna
|
||||
}
|
||||
else
|
||||
s.delete_column(id);
|
||||
@ -1492,7 +1515,7 @@ void TSimple_anal_msk::read(const char* name)
|
||||
|
||||
read_mask(outname, 0, 0);
|
||||
xvt_fsys_remove_file(outname);
|
||||
set_source_file(name);
|
||||
set_source_file(inpname);
|
||||
}
|
||||
else
|
||||
read_mask(name, 0, 0);
|
||||
|
@ -1,5 +1,5 @@
|
||||
[CAMENU_001]
|
||||
Caption = "Contabilita' analitica"
|
||||
Caption = "Contabilità analitica"
|
||||
Picture = <ca01>
|
||||
Module = 22
|
||||
Flags = "F"
|
||||
@ -16,7 +16,7 @@ Caption = "Configurazione"
|
||||
Picture = <ca01>
|
||||
Module = 22
|
||||
Flags = ""
|
||||
Item_01 = "Parametri Contabilita' Analitica", "ca0 -2", "F"
|
||||
Item_01 = "Parametri Contabilità Analitica", "ca0 -2", "F"
|
||||
Item_02 = "Tabelle di ripartizione", "ca0 -7", "F"
|
||||
|
||||
[CAMENU_020]
|
||||
|
Loading…
x
Reference in New Issue
Block a user