Patch level : 12.00 1264
Files correlati : lv0.exe lv2.exe Commento : Invio postino con ODBC
This commit is contained in:
parent
9fbb238cc7
commit
f41ad98528
@ -968,6 +968,9 @@ protected:
|
|||||||
bool elimina_planning(const long& codcont, const long& codcf) const;
|
bool elimina_planning(const long& codcont, const long& codcf) const;
|
||||||
bool kill_planning (TISAM_recordset& selrighe) const;
|
bool kill_planning (TISAM_recordset& selrighe) const;
|
||||||
bool menu(MENU_TAG mt);
|
bool menu(MENU_TAG mt);
|
||||||
|
|
||||||
|
virtual void ini2sheet(TConfig& ini, TSheet_field &sheet);
|
||||||
|
virtual void sheet2ini(TSheet_field &sheet, TConfig& ini);
|
||||||
};
|
};
|
||||||
|
|
||||||
//SAVE_ROWS: questo metodo salva effettivamente le righe vislualizzate sullo sheet sul file
|
//SAVE_ROWS: questo metodo salva effettivamente le righe vislualizzate sullo sheet sul file
|
||||||
@ -1168,7 +1171,7 @@ int TContratti_app::read(TMask& m)
|
|||||||
TISAM_recordset righeset(build_query(m));
|
TISAM_recordset righeset(build_query(m));
|
||||||
const TRectype& rec = righeset.cursor()->curr();
|
const TRectype& rec = righeset.cursor()->curr();
|
||||||
|
|
||||||
//instanzio un TLcalisamfile su LF_CLIFOGIAC
|
//instanzio un TLocalisamfile su LF_CLIFOGIAC
|
||||||
TLocalisamfile magcli(LF_CLIFOGIAC);
|
TLocalisamfile magcli(LF_CLIFOGIAC);
|
||||||
//setto alcune variabili di interesse
|
//setto alcune variabili di interesse
|
||||||
|
|
||||||
@ -1269,6 +1272,7 @@ int TContratti_app::rewrite(const TMask& m)
|
|||||||
bool TContratti_app::protected_record(TRectype & rec)
|
bool TContratti_app::protected_record(TRectype & rec)
|
||||||
{
|
{
|
||||||
TLaundry_contract cont(rec);
|
TLaundry_contract cont(rec);
|
||||||
|
|
||||||
return !cont.can_be_deleted();
|
return !cont.can_be_deleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1440,6 +1444,111 @@ bool TContratti_app::menu(MENU_TAG mt)
|
|||||||
return ok;
|
return ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TContratti_app::ini2sheet(TConfig& ini, TSheet_field &sheet)
|
||||||
|
{
|
||||||
|
const int lognum = LF_LVRCONDV;
|
||||||
|
const TMask& sm = sheet.sheet_mask();
|
||||||
|
TString16 defpar; // scrive le righe nello sheet associato
|
||||||
|
|
||||||
|
for (int r = 1; ; r++)
|
||||||
|
{
|
||||||
|
bool found = false;
|
||||||
|
|
||||||
|
defpar.format("%d,%d", lognum, r);
|
||||||
|
for (int i = 0; i < 3 && !(found = ini.set_paragraph(defpar)); i++)
|
||||||
|
{
|
||||||
|
const int pos = defpar.find(',');
|
||||||
|
|
||||||
|
if (pos > 0)
|
||||||
|
defpar.insert("0", pos + 1);
|
||||||
|
}
|
||||||
|
if (found)
|
||||||
|
{
|
||||||
|
TToken_string& row = sheet.row(r - 1);
|
||||||
|
for (int sf = sm.fields() - 1; sf >= 0; sf--)
|
||||||
|
{
|
||||||
|
TMask_field& campo = sm.fld(sf);
|
||||||
|
const TFieldref* fref = campo.field();
|
||||||
|
if (fref)
|
||||||
|
{
|
||||||
|
const TString& str = fref->read(ini, defpar);
|
||||||
|
row.add(str, sheet.cid2index(campo.dlg()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sheet.check_row(r - 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void TContratti_app::sheet2ini(TSheet_field &sheet, TConfig& ini)
|
||||||
|
{
|
||||||
|
const int lognum = LF_LVRCONDV;
|
||||||
|
const TMask& sm = sheet.sheet_mask();
|
||||||
|
const TMask & m = sheet.mask();
|
||||||
|
TString16 defpar; // scrive le righe degli sheet associati
|
||||||
|
TString str;
|
||||||
|
int r;
|
||||||
|
|
||||||
|
for (r = 1; r <= sheet.items(); r++)
|
||||||
|
{
|
||||||
|
bool found = false;
|
||||||
|
|
||||||
|
defpar.format("%d,%d", lognum, r);
|
||||||
|
for (int i = 0; i < 3 && !(found = ini.set_paragraph(defpar)); i++)
|
||||||
|
{
|
||||||
|
const int pos = defpar.find(',');
|
||||||
|
|
||||||
|
if (pos > 0)
|
||||||
|
defpar.insert("0", pos + 1);
|
||||||
|
}
|
||||||
|
if (found)
|
||||||
|
if (ini.set_paragraph(defpar))
|
||||||
|
ini.remove_all();
|
||||||
|
defpar.format("%d,%04d", lognum, r);
|
||||||
|
|
||||||
|
const TFieldref* fcli = m.field(F_CODCF).field();
|
||||||
|
const TFieldref* fcont = m.field(F_CODCONT).field();
|
||||||
|
|
||||||
|
fcli->write(ini, defpar, m.get(F_CODCF));
|
||||||
|
fcont->write(ini, defpar, m.get(F_CODCONT));
|
||||||
|
TToken_string& row = sheet.row(r - 1);
|
||||||
|
const char* value;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0, value = row.get(0); value; i++, value = row.get())
|
||||||
|
{
|
||||||
|
const TMask_field& campo = sm.field(FIRST_FIELD + i);
|
||||||
|
const TFieldref* fr = campo.field();
|
||||||
|
if (fr)
|
||||||
|
{
|
||||||
|
if (value == nullptr || *value == '\0')
|
||||||
|
value = " ";
|
||||||
|
// ini.set(fr->name(), value, defpar);
|
||||||
|
fr->write(ini, defpar, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (r = sheet.items() + 1; ; r++)
|
||||||
|
{
|
||||||
|
defpar.format("%d,%d", lognum, r);
|
||||||
|
bool found = false;
|
||||||
|
|
||||||
|
defpar.format("%d,%d", lognum, r);
|
||||||
|
for (int i = 0; i < 3 && !(found = ini.set_paragraph(defpar)); i++)
|
||||||
|
{
|
||||||
|
const int pos = defpar.find(',');
|
||||||
|
|
||||||
|
if (pos > 0)
|
||||||
|
defpar.insert("0", pos + 1);
|
||||||
|
}
|
||||||
|
if (ini.set_paragraph(defpar))
|
||||||
|
ini.remove_all();
|
||||||
|
else
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int lv0400(int argc, char* argv[])
|
int lv0400(int argc, char* argv[])
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user