Correzioni alla procedura di conversione segnalate da rosalba

git-svn-id: svn://10.65.10.50/trunk@1823 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1995-09-14 13:23:58 +00:00
parent ecdce9d765
commit 2ba0362d65
3 changed files with 20 additions and 10 deletions

View File

@ -531,7 +531,7 @@ void TManutenzione_app::update_dir()
for (int i = 2; i <= items; i++) for (int i = 2; i <= items; i++)
{ {
p.addstatus(1); p.addstatus(1);
prefix().set(""); prefix().set("");
d.get(i, _nolock, _nordir, _sysdirop); d.get(i, _nolock, _nordir, _sysdirop);
bool is_firm = d.is_firm(); bool is_firm = d.is_firm();
TString desc(d.des()); TString desc(d.des());
@ -541,10 +541,22 @@ void TManutenzione_app::update_dir()
long flags = d.flags(); long flags = d.flags();
word len = d.len(); word len = d.len();
prefix().set(pref); prefix().set(pref);
d.get(i);
if (!fexist(d.filename()))
{
if (d.eox() > 0L)
{
d.get(i, _nolock, _nordir, _sysdirop);
d.eod() = 0L;
d.eox() = 0L;
d.put(i, _nordir, _sysdirop);
}
}
else
TLocalisamfile f(i);
d.get(i, _nolock, _nordir, _sysdirop); d.get(i, _nolock, _nordir, _sysdirop);
bool to_create = (is_com ? d.is_com() : d.is_firm()); bool to_create = (is_com ? d.is_com() : d.is_firm());
if (s != d.name())
if (flags < 0 && s != d.name())
{ {
bool ok = TRUE; bool ok = TRUE;
if (to_create) if (to_create)

View File

@ -50,7 +50,7 @@ END
SPREADSHEET F_FIELDS 0 8 SPREADSHEET F_FIELDS 0 8
BEGIN BEGIN
PROMPT 0 4 "" PROMPT 0 4 "Fields"
ITEM "Nome@10" ITEM "Nome@10"
ITEM "Tipo" ITEM "Tipo"
ITEM "Lunghezza" ITEM "Lunghezza"
@ -60,7 +60,7 @@ END
SPREADSHEET F_KEYS SPREADSHEET F_KEYS
BEGIN BEGIN
PROMPT 0 13 "" PROMPT 0 13 "Keys"
ITEM "Espressione@60" ITEM "Espressione@60"
ITEM "Chiavi duplicate" ITEM "Chiavi duplicate"
END END

View File

@ -12,15 +12,14 @@
HIDDEN TRectype* __rec; HIDDEN TRectype* __rec;
HIDDEN TRelation* __rel; HIDDEN TRelation* __rel;
HIDDEN TMask* __msk; HIDDEN TMask* __msk;
HIDDEN int __mid;
bool TEdit_file::memo_handler(TMask_field& f, KEY k) bool TEdit_file::memo_handler(TMask_field& f, KEY k)
{ {
bool ok = TRUE; bool ok = TRUE;
if (k == K_SPACE) if (k == K_SPACE)
{ {
int memoidx = f.dlg() - 400; const int memoidx = f.dlg() - 400;
// recuperate memo id and god (it.: godi) // recuperate memo id and god (it.: godi)
int mcnt = 0; int mcnt = 0;
@ -57,7 +56,7 @@ bool TEdit_file::memo_handler(TMask_field& f, KEY k)
if (mm.run() == K_ENTER) if (mm.run() == K_ENTER)
{ {
mm.autosave(__rel); mm.autosave(__rel);
__msk->set (__mid,__rec->get(__rec->fieldname(i))); __msk->set (f.dlg() - 1,__rec->get(__rec->fieldname(i)));
} }
// se invece va male, l'e' istes // se invece va male, l'e' istes
} }
@ -235,7 +234,6 @@ KEY TEdit_file::edit_record(TRectype& rec, bool readonly)
m.add_button (400+(mcnt++), curpage, "Edit", 35, currow, 9, 1); m.add_button (400+(mcnt++), curpage, "Edit", 35, currow, 9, 1);
__rec = &rec; __rec = &rec;
__msk = &m; __msk = &m;
__mid = nid-1;
m.set_handler(400+(mcnt-1), memo_handler); m.set_handler(400+(mcnt-1), memo_handler);
break; break;
default: default: