Patch level :10.0
Files correlati : Ricompilazione Demo : [ ] Commento : riporti dalla 11 per hardy git-svn-id: svn://10.65.10.50/branches/R_10_00@20944 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
d2d15769e3
commit
1cb6a01820
@ -6,6 +6,7 @@
|
||||
#include <progind.h>
|
||||
#include <relapp.h>
|
||||
#include <recarray.h>
|
||||
#include <recset.h>
|
||||
#include <tabutil.h>
|
||||
#include <utility.h>
|
||||
|
||||
@ -61,6 +62,7 @@ class TCondizioni_vendita: public TRelation_application
|
||||
virtual int write(const TMask &); // metodo usato per scrivere il record sul file
|
||||
virtual int rewrite(const TMask &); // metodo usato per aggiornare il record sul file
|
||||
virtual bool remove(); // metodo usato per cancellare il record sul file
|
||||
virtual void mask2ini(const TMask& m, TConfig& ini);
|
||||
|
||||
public:
|
||||
bool codlis_catven() { return _codlis_catven; }
|
||||
@ -409,6 +411,55 @@ bool TCondizioni_vendita::remove()
|
||||
return (TRelation_application::remove()); // viene invocata la funzione standard di cancellazione del record corrente
|
||||
}
|
||||
|
||||
|
||||
void TCondizioni_vendita::mask2ini(const TMask& m, TConfig& ini)
|
||||
{
|
||||
TRelation_application::mask2ini(m, ini);
|
||||
|
||||
TString query;
|
||||
query << "USE RCONDV";
|
||||
query << "\nFROM TIPO=#TIPO CATVEN=#CATVEN TIPOCF=#TCF CODCF=#CODCF COD=#COD";
|
||||
query << "\nTO TIPO=#TIPO CATVEN=#CATVEN TIPOCF=#TCF CODCF=#CODCF COD=#COD";
|
||||
TISAM_recordset rcondv(query);
|
||||
|
||||
const TString& tipo = m.get(CONDV_TIPO);
|
||||
rcondv.set_var("#TIPO", tipo);
|
||||
if (tipo == "L")
|
||||
rcondv.set_var("#CATVEN", m.get(CONDV_CATVEN));
|
||||
else
|
||||
rcondv.set_var("#CATVEN", "");
|
||||
if (tipo == "C")
|
||||
{
|
||||
rcondv.set_var("#TCF", m.get(CONDV_TIPOCF));
|
||||
rcondv.set_var("#CODCF", m.get(CONDV_CODCF));
|
||||
}
|
||||
else
|
||||
{
|
||||
rcondv.set_var("#TCF", "");
|
||||
rcondv.set_var("#CODCF", "");
|
||||
}
|
||||
rcondv.set_var("#COD", m.get(CONDV_COD));
|
||||
|
||||
const long items = rcondv.items();
|
||||
TString16 paragraph;
|
||||
int j = 0;
|
||||
|
||||
for (bool ok = rcondv.move_first(); ok; ok = rcondv.move_next())
|
||||
{
|
||||
paragraph.format("%d,%d", LF_RCONDV, ++j);
|
||||
ini.set_paragraph(paragraph);
|
||||
|
||||
const TRectype& rec = rcondv.cursor()->curr();
|
||||
const int nfields = rec.items();
|
||||
for (int i = 0; i < nfields; i++)
|
||||
{
|
||||
const char* field_name = rec.fieldname(i);
|
||||
ini.set(field_name, rec.get(field_name));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool TCondizioni_vendita::handle_copy(TMask_field &b, KEY k)
|
||||
{
|
||||
if (k==K_SPACE)
|
||||
|
@ -66,7 +66,7 @@ BEGIN
|
||||
END
|
||||
|
||||
// campo riservato ai contratti
|
||||
LIST F_C_TIPOCF 10
|
||||
LIST F_C_TIPOCF 1 10
|
||||
BEGIN
|
||||
PROMPT 2 2 "Tipo "
|
||||
FIELD LF_CONDV->TIPOCF
|
||||
|
@ -606,6 +606,8 @@ protected:
|
||||
virtual int write(const TMask& m);
|
||||
virtual int rewrite(const TMask& m);
|
||||
virtual bool remove();
|
||||
virtual void mask2ini(const TMask& m, TConfig& ini);
|
||||
virtual void ini2mask(TConfig& ini, TMask&m, bool query);
|
||||
|
||||
const TString& find_descr(TToken_string& row);
|
||||
|
||||
@ -823,6 +825,89 @@ bool TGestione_listini_semplice::remove()
|
||||
}
|
||||
|
||||
|
||||
//metodi per il caricamento e l'invio da files tipo .ini (transizioni)
|
||||
void TGestione_listini_semplice::ini2mask(TConfig& ini, TMask& m, bool query)
|
||||
{
|
||||
TRelation_application::ini2mask(ini, m, query);
|
||||
|
||||
if (!query)
|
||||
{
|
||||
TSheet_field& righe = m.sfield(FA_RIGHE);
|
||||
righe.destroy();
|
||||
TMask& rm = righe.sheet_mask();
|
||||
|
||||
for (int r = 1;; r++)
|
||||
{
|
||||
TString8 paragraph;
|
||||
paragraph.format("%d,%d", LF_RCONDV, r);
|
||||
if (!ini.set_paragraph(paragraph))
|
||||
break;
|
||||
|
||||
TToken_string& row = righe.row(-1);
|
||||
FOR_EACH_MASK_FIELD(rm, i, f)
|
||||
{
|
||||
const TFieldref* fr = f->field();
|
||||
if (fr != NULL)
|
||||
{
|
||||
const int idx = righe.cid2index(f->dlg());
|
||||
const TString& val = ini.get(fr->name());
|
||||
row.add(val, idx);
|
||||
}
|
||||
}
|
||||
righe.check_row(righe.items() - 1);
|
||||
}
|
||||
righe.force_update();
|
||||
}
|
||||
}
|
||||
|
||||
void TGestione_listini_semplice::mask2ini(const TMask& m, TConfig& ini)
|
||||
{
|
||||
TRelation_application::mask2ini(m, ini);
|
||||
|
||||
TString query;
|
||||
query << "USE RCONDV";
|
||||
query << "\nFROM TIPO=#TIPO CATVEN=#CATVEN TIPOCF=#TCF CODCF=#CODCF COD=#COD";
|
||||
query << "\nTO TIPO=#TIPO CATVEN=#CATVEN TIPOCF=#TCF CODCF=#CODCF COD=#COD";
|
||||
TISAM_recordset rcondv(query);
|
||||
|
||||
const TString& tipo = m.get(CONDV_TIPO);
|
||||
rcondv.set_var("#TIPO", tipo);
|
||||
if (tipo == "L")
|
||||
rcondv.set_var("#CATVEN", m.get(CONDV_CATVEN));
|
||||
else
|
||||
rcondv.set_var("#CATVEN", "");
|
||||
if (tipo == "C")
|
||||
{
|
||||
rcondv.set_var("#TCF", m.get(CONDV_TIPOCF));
|
||||
rcondv.set_var("#CODCF", m.get(CONDV_CODCF));
|
||||
}
|
||||
else
|
||||
{
|
||||
rcondv.set_var("#TCF", "");
|
||||
rcondv.set_var("#CODCF", "");
|
||||
}
|
||||
rcondv.set_var("#COD", m.get(CONDV_COD));
|
||||
|
||||
const long items = rcondv.items();
|
||||
TString16 paragraph;
|
||||
int j = 0;
|
||||
|
||||
for (bool ok = rcondv.move_first(); ok; ok = rcondv.move_next())
|
||||
{
|
||||
paragraph.format("%d,%d", LF_RCONDV, ++j);
|
||||
ini.set_paragraph(paragraph);
|
||||
|
||||
const TRectype& rec = rcondv.cursor()->curr();
|
||||
const int nfields = rec.items();
|
||||
for (int i = 0; i < nfields; i++)
|
||||
{
|
||||
const char* field_name = rec.fieldname(i);
|
||||
ini.set(field_name, rec.get(field_name));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void TGestione_listini_semplice::init_query_mode(TMask& m)
|
||||
{
|
||||
m.disable(DLG_CREA);
|
||||
@ -836,6 +921,10 @@ void TGestione_listini_semplice::init_insert_mode(TMask& m)
|
||||
void TGestione_listini_semplice::init_modify_mode(TMask& m)
|
||||
{
|
||||
m.enable(DLG_CREA);
|
||||
const bool ges_um = m.get_bool(FA_GESTUM);
|
||||
|
||||
TSheet_field& righe = m.sfield(FA_RIGHE);
|
||||
righe.enable_column(S_UM, ges_um);
|
||||
}
|
||||
|
||||
bool TGestione_listini_semplice::user_create()
|
||||
|
Loading…
x
Reference in New Issue
Block a user