Informazioni di chiusura anno inserite nella prima linea di storico
git-svn-id: svn://10.65.10.50/trunk@4573 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
2782535535
commit
a2a967d125
360
ve/ve2400.cpp
360
ve/ve2400.cpp
@ -8,19 +8,14 @@
|
|||||||
#include <modaut.h>
|
#include <modaut.h>
|
||||||
#include "velib.h"
|
#include "velib.h"
|
||||||
#include "..\mg\mglib.h"
|
#include "..\mg\mglib.h"
|
||||||
|
#include "..\mg\stomag.h"
|
||||||
#include "ve2400.h"
|
#include "ve2400.h"
|
||||||
|
|
||||||
|
|
||||||
// maschera dell'anagrafica di magazzino
|
// maschera dell'anagrafica di magazzino
|
||||||
class TMask_anamag: public TMask {
|
class TMask_anamag: public TMask {
|
||||||
// TLocalisamfile *_codcorr; // file di accesso ai codici corrispondenti
|
|
||||||
// TLocalisamfile *_deslin; // file di accesso alle descrizioni in lingua
|
|
||||||
// TLocalisamfile *_umart; // file di accesso alle unità di misura
|
|
||||||
// TLocalisamfile *_giacenze; // file di accesso alle giacenze
|
|
||||||
TRelation * _rel; // relazione principale
|
TRelation * _rel; // relazione principale
|
||||||
|
|
||||||
TRecord_array *_linee_rec_giac; // record array di accoppiamento delle giacenze con lo sheet
|
|
||||||
|
|
||||||
TMag_livelli * livelli_giac;// oggetto handler per i livelli di giacenza
|
TMag_livelli * livelli_giac;// oggetto handler per i livelli di giacenza
|
||||||
TMag_livelli * livelli_art;// oggetto handler per i livelli di anagraficca
|
TMag_livelli * livelli_art;// oggetto handler per i livelli di anagraficca
|
||||||
TMetachar * metac;
|
TMetachar * metac;
|
||||||
@ -40,12 +35,17 @@ class TMask_anamag: public TMask {
|
|||||||
static bool handle_sheet_um_um(TMask_field &, KEY); // handler del campo UM dello sheet delle unità di misura
|
static bool handle_sheet_um_um(TMask_field &, KEY); // handler del campo UM dello sheet delle unità di misura
|
||||||
static bool handle_sheet_um_price(TMask_field &, KEY); // handler del campo PREZZO e PREZZO_LORDO dello sheet delle unità di misura
|
static bool handle_sheet_um_price(TMask_field &, KEY); // handler del campo PREZZO e PREZZO_LORDO dello sheet delle unità di misura
|
||||||
|
|
||||||
|
static void sheetgiac_get(TSheet_field &fld_righe, int item);
|
||||||
|
static void sheetgiac_put(TSheet_field &fld_righe, int item);
|
||||||
|
static void sheetsto_get(TSheet_field &fld_righe, int item);
|
||||||
|
static void sheetsto_put(TSheet_field &fld_righe, int item);
|
||||||
|
|
||||||
|
void clear_info_sto();
|
||||||
|
bool info_sto_dirty();
|
||||||
public:
|
public:
|
||||||
TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv);
|
TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv);
|
||||||
virtual ~TMask_anamag();
|
virtual ~TMask_anamag();
|
||||||
|
|
||||||
static void sheetgiac_get(TSheet_field &fld_righe, int item);
|
|
||||||
static void sheetgiac_put(TSheet_field &fld_righe, int item);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -53,12 +53,6 @@ public:
|
|||||||
TMask_anamag::TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv) : TMask("ve2400")
|
TMask_anamag::TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv) : TMask("ve2400")
|
||||||
{
|
{
|
||||||
_rel=rel;
|
_rel=rel;
|
||||||
/* _umart= new TLocalisamfile(LF_UMART); // apre i file per disporre dei tracciati record
|
|
||||||
_deslin= new TLocalisamfile(LF_DESLIN);
|
|
||||||
_codcorr= new TLocalisamfile(LF_CODCORR);
|
|
||||||
_giacenze= new TLocalisamfile(LF_MAG);
|
|
||||||
_linee_rec_giac= new TRecord_array(LF_MAG, "NRIGA");// alloca i record
|
|
||||||
*/
|
|
||||||
// imposta il riconoscimento dei caratteri del formato dell'ultima parte dell'articolo
|
// imposta il riconoscimento dei caratteri del formato dell'ultima parte dell'articolo
|
||||||
TString80 format("");
|
TString80 format("");
|
||||||
TTable _tabfca("FCA");
|
TTable _tabfca("FCA");
|
||||||
@ -83,6 +77,8 @@ TMask_anamag::TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv)
|
|||||||
((TSheet_field &)field(F_SHEETGIAC)).set_userget(sheetgiac_get);
|
((TSheet_field &)field(F_SHEETGIAC)).set_userget(sheetgiac_get);
|
||||||
((TSheet_field &)field(F_SHEETGIAC)).set_userput(sheetgiac_put);
|
((TSheet_field &)field(F_SHEETGIAC)).set_userput(sheetgiac_put);
|
||||||
set_handler(F_SHEETSTOMAG, handle_sheetstomag);
|
set_handler(F_SHEETSTOMAG, handle_sheetstomag);
|
||||||
|
((TSheet_field &)field(F_SHEETSTOMAG)).set_userget(sheetsto_get);
|
||||||
|
((TSheet_field &)field(F_SHEETSTOMAG)).set_userput(sheetsto_put);
|
||||||
|
|
||||||
|
|
||||||
TSheet_field &f= (TSheet_field &)field(F_SHEETUM);
|
TSheet_field &f= (TSheet_field &)field(F_SHEETUM);
|
||||||
@ -134,7 +130,6 @@ TMask_anamag::TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv)
|
|||||||
field(F_CODART).hide();
|
field(F_CODART).hide();
|
||||||
field(F_GCA).hide();
|
field(F_GCA).hide();
|
||||||
|
|
||||||
|
|
||||||
for (int i=0; i<3; i++)
|
for (int i=0; i<3; i++)
|
||||||
{
|
{
|
||||||
// versione con campi predefiniti sulla maschera
|
// versione con campi predefiniti sulla maschera
|
||||||
@ -161,15 +156,61 @@ TMask_anamag::TMask_anamag(TRelation * rel, bool enable_mag, bool enable_artliv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TMask_anamag::sheetsto_put(TSheet_field &sheet_sto, int item)
|
||||||
|
{
|
||||||
|
if (item>1) return;
|
||||||
|
TMask_anamag & m=(TMask_anamag & )sheet_sto.mask();
|
||||||
|
TRectype & first_rec=sheet_sto.record()->row(1,TRUE);
|
||||||
|
first_rec.put(STOMAG_ULTCOS1,m.get_real(F_STOULTCOS1 ));
|
||||||
|
first_rec.put(STOMAG_ULTCOS2,m.get_real(F_STOULTCOS2 ));
|
||||||
|
first_rec.put(STOMAG_COSTSTD,m.get_real(F_STOCOSTOSTD ));
|
||||||
|
first_rec.put(STOMAG_COSTOMEDIO,m.get_real(F_STOCOSTOMEDIO ));
|
||||||
|
first_rec.put(STOMAG_CATVEN,m.get(F_STOCATVEN ));
|
||||||
|
first_rec.put(STOMAG_CODLISTINO,m.get(F_STOCODLIST));
|
||||||
|
first_rec.put(STOMAG_PRZLIST,m.get(F_STOPREZZOLIST ));
|
||||||
|
}
|
||||||
|
|
||||||
|
void TMask_anamag::sheetsto_get(TSheet_field &sheet_sto, int item)
|
||||||
|
{
|
||||||
|
if (item>1) return;
|
||||||
|
TMask_anamag & m=(TMask_anamag &) sheet_sto.mask();
|
||||||
|
TRectype & first_rec=sheet_sto.record()->row(1,TRUE);
|
||||||
|
m.set(F_STOULTCOS1, first_rec.get_real(STOMAG_ULTCOS1));
|
||||||
|
m.set(F_STOULTCOS2, first_rec.get_real(STOMAG_ULTCOS2 ));
|
||||||
|
m.set(F_STOCOSTOSTD, first_rec.get_real( STOMAG_COSTSTD ));
|
||||||
|
m.set(F_STOCOSTOMEDIO, first_rec.get_real(STOMAG_COSTOMEDIO));
|
||||||
|
m.set(F_STOCATVEN , first_rec.get(STOMAG_CATVEN));
|
||||||
|
m.set(F_STOCODLIST , first_rec.get(STOMAG_CODLISTINO));
|
||||||
|
m.set(F_STOPREZZOLIST ,first_rec.get(STOMAG_PRZLIST));
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TMask_anamag::info_sto_dirty()
|
||||||
|
{
|
||||||
|
return
|
||||||
|
field(F_STOULTCOS1).dirty() ||
|
||||||
|
field(F_STOULTCOS2).dirty() ||
|
||||||
|
field(F_STOCOSTOSTD).dirty() ||
|
||||||
|
field(F_STOCOSTOMEDIO).dirty()||
|
||||||
|
field(F_STOCATVEN ).dirty()||
|
||||||
|
field(F_STOCODLIST).dirty()||
|
||||||
|
field(F_STOPREZZOLIST).dirty();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void TMask_anamag::clear_info_sto()
|
||||||
|
{
|
||||||
|
reset(F_STOULTCOS1);
|
||||||
|
reset(F_STOULTCOS2);
|
||||||
|
reset(F_STOCOSTOSTD);
|
||||||
|
reset(F_STOCOSTOMEDIO);
|
||||||
|
reset(F_STOCATVEN );
|
||||||
|
reset(F_STOCODLIST);
|
||||||
|
reset(F_STOPREZZOLIST);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
TMask_anamag::~TMask_anamag()
|
TMask_anamag::~TMask_anamag()
|
||||||
{
|
{
|
||||||
/* delete _linee_rec_giac;
|
|
||||||
delete _giacenze;
|
|
||||||
delete _codcorr;
|
|
||||||
delete _deslin;
|
|
||||||
delete _umart;
|
|
||||||
*/
|
|
||||||
delete livelli_art;
|
delete livelli_art;
|
||||||
delete livelli_giac;
|
delete livelli_giac;
|
||||||
}
|
}
|
||||||
@ -264,14 +305,18 @@ bool TMask_anamag::handle_stoanno(TMask_field &fld, KEY k)
|
|||||||
|
|
||||||
if (mask.last_annosto>0 && mask.last_annosto!=fld.mask().get_int(F_STOANNO))
|
if (mask.last_annosto>0 && mask.last_annosto!=fld.mask().get_int(F_STOANNO))
|
||||||
{
|
{
|
||||||
if (fld.mask().field(F_SHEETSTOMAG).dirty() && handle_sheetstomag(fld_stomag,K_ENTER)) {
|
if ((mask.field(F_SHEETSTOMAG).dirty() || mask.info_sto_dirty()) &&
|
||||||
|
handle_sheetstomag(fld_stomag,K_ENTER) &&
|
||||||
|
fld_stomag.items()>0 )
|
||||||
|
{
|
||||||
if (fld.yesno_box("Vuoi salvare le righe di storico per l'anno %d",mask.last_annosto)) {
|
if (fld.yesno_box("Vuoi salvare le righe di storico per l'anno %d",mask.last_annosto)) {
|
||||||
fld_stomag.autosave(*mask._rel);
|
fld_stomag.autosave(*mask._rel);
|
||||||
fld_stomag.record()->write(TRUE);
|
fld_stomag.record()->write(TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mask.field(F_STOANNORIF).set(fld.get());
|
mask.field(F_STOANNORIF).set(fld.get());
|
||||||
// rilegge le giacenze relative a quell'anno ed aggiorna il layout
|
// rilegge lo storico relativo a quell'anno ed aggiorna il layout
|
||||||
|
mask.clear_info_sto();
|
||||||
fld_stomag.record()->read(*fld_stomag.putkey(*mask._rel));
|
fld_stomag.record()->read(*fld_stomag.putkey(*mask._rel));
|
||||||
fld_stomag.autoload(*mask._rel);
|
fld_stomag.autoload(*mask._rel);
|
||||||
fld_stomag.force_update();
|
fld_stomag.force_update();
|
||||||
@ -282,7 +327,6 @@ bool TMask_anamag::handle_stoanno(TMask_field &fld, KEY k)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
bool TMask_anamag::handle_sheet_um(TMask_field &fld, KEY k)
|
bool TMask_anamag::handle_sheet_um(TMask_field &fld, KEY k)
|
||||||
{
|
{
|
||||||
if (k == K_ENTER)
|
if (k == K_ENTER)
|
||||||
@ -620,38 +664,13 @@ int TAnagrafica_magazzino::read(TMask& m)
|
|||||||
if (err == NOERR)
|
if (err == NOERR)
|
||||||
{
|
{
|
||||||
// LETTURA SHEET STORICO MAGAZZINO IN AUTOMATICO
|
// LETTURA SHEET STORICO MAGAZZINO IN AUTOMATICO
|
||||||
TSheet_field &fld_stomag= (TSheet_field &)m.field(F_SHEETSTOMAG); // prende il sheet delle unità di misura
|
/*TSheet_field &fld_stomag= (TSheet_field &)m.field(F_SHEETSTOMAG); // prende il sheet delle unità di misura
|
||||||
fld_stomag.sheet_mask().field(F_STOCODART).set(m.field(F_CODART).get());
|
fld_stomag.sheet_mask().field(F_STOCODART).set(m.field(F_CODART).get()); */
|
||||||
|
|
||||||
//int i;
|
|
||||||
// *****************************
|
// *****************************
|
||||||
// LETTURA SHEET UNITA' DI MISURA
|
// LETTURA SHEET UNITA' DI MISURA
|
||||||
|
|
||||||
TSheet_field &fld_um= (TSheet_field &)m.field(F_SHEETUM); // prende il sheet delle unità di misura
|
TSheet_field &fld_um= (TSheet_field &)m.field(F_SHEETUM); // prende il sheet delle unità di misura
|
||||||
/*
|
|
||||||
TRectype rum(LF_UMART); // crea il record dal file delle unità di misura
|
|
||||||
TString codiva(m.get(F_CODIVA));
|
|
||||||
real netto = 0.0, lordo = 0.0;
|
|
||||||
|
|
||||||
fld_um.destroy(); // cancella lo sheet
|
|
||||||
rum.put("CODART", m.get(F_CODART)); // imposta il record corrente sul codice articolo (dalla maschera)
|
|
||||||
_linee_rec_um->read(rum); // legge il record array
|
|
||||||
|
|
||||||
const int lastum = _linee_rec_um->last_row();
|
|
||||||
for (int i= 1; i <= lastum; i++)
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_um->row(i, TRUE); // prende il record della riga corrente dal record array
|
|
||||||
TToken_string &row= fld_um.row(i-1);
|
|
||||||
row = "";
|
|
||||||
row.add(rec.get("UM")); // imposta la riga dello sheet con i campi del record della riga corrente
|
|
||||||
row.add(rec.get("FC"));
|
|
||||||
row.add(rec.get("PREZZO"));
|
|
||||||
netto = real(rec.get("PREZZO"));
|
|
||||||
lordo = netto2lordo(netto,codiva);
|
|
||||||
row.add(lordo.string());
|
|
||||||
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
if (fld_um.items() == 0)
|
if (fld_um.items() == 0)
|
||||||
((TToken_string &)fld_um.row(0)) = "|1"; // aggiunge una riga allo sheet
|
((TToken_string &)fld_um.row(0)) = "|1"; // aggiunge una riga allo sheet
|
||||||
else
|
else
|
||||||
@ -659,55 +678,7 @@ int TAnagrafica_magazzino::read(TMask& m)
|
|||||||
fld_um.disable_cell(0, 1); // mette in sola lettura il secondo campo della prima riga (il fattore di conversione della prima U.M. è fisso a 1)
|
fld_um.disable_cell(0, 1); // mette in sola lettura il secondo campo della prima riga (il fattore di conversione della prima U.M. è fisso a 1)
|
||||||
fld_um.force_update(0); // aggiorna lo stato della riga 0
|
fld_um.force_update(0); // aggiorna lo stato della riga 0
|
||||||
|
|
||||||
|
// preleva le info di storico (prezzi, ultcosti, ecc)
|
||||||
// *****************************
|
|
||||||
// LETTURA SHEET DESCRIZIONI IN LINGUA
|
|
||||||
/*
|
|
||||||
TRectype r(LF_DESLIN); // prende il record corrente dal file delle descrizioni in lingua
|
|
||||||
TSheet_field &fld_deslin= (TSheet_field &)m.field(F_SHEETDESLIN); // prende il sheet delle descrizioni in lingua
|
|
||||||
|
|
||||||
r.zero();
|
|
||||||
r.put("CODART", m.get(F_CODART)); // imposta il record corrente sul codice articolo (dalla maschera)
|
|
||||||
|
|
||||||
_linee_rec_deslin->read(r); // legge il record array
|
|
||||||
fld_deslin.destroy(); // cancella lo sheet
|
|
||||||
const int lastdes= _linee_rec_deslin->last_row();
|
|
||||||
for (i = 1; i <= lastdes; i++)
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_deslin->row(i, TRUE); // prende il record della riga corrente dal record array
|
|
||||||
TToken_string &row= fld_deslin.row(i-1);
|
|
||||||
|
|
||||||
row = "";
|
|
||||||
row.add(rec.get("CODLIN")); // imposta la riga dello sheet con i campi del record della riga corrente
|
|
||||||
row.add(rec.get("DESCR"));
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
// ***************************
|
|
||||||
// LETTURA SHEET CODICI CORRISPONDENTI
|
|
||||||
/*
|
|
||||||
TRectype rcor(LF_CODCORR); // prende il record corrente dal file dei codici corrispondenti
|
|
||||||
TSheet_field &fld_cod= (TSheet_field &)m.field(F_SHEETCOD); // prende lo sheet dei codici corrispondenti
|
|
||||||
|
|
||||||
rcor.zero();
|
|
||||||
rcor.put("CODART", m.get(F_CODART)); // imposta il record corrente sul codice articolo (dalla maschera)
|
|
||||||
_linee_rec_cod->read(rcor); // legge il record array
|
|
||||||
fld_cod.destroy(); // cancella lo sheet
|
|
||||||
const int lastcod = _linee_rec_cod->last_row();
|
|
||||||
for (i= 1; i <= lastcod; i++)
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_cod->row(i, TRUE); // prende il record della riga corrente dal record array
|
|
||||||
TToken_string &row= fld_cod.row(i-1);
|
|
||||||
|
|
||||||
row = "";
|
|
||||||
row.add(rec.get("CODARTALT")); // imposta la riga dello sheet con i campi del record della riga corrente
|
|
||||||
row.add(rec.get("TIPO"));
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
// *****************************
|
|
||||||
// LETTURA SHEET GIACENZE
|
|
||||||
//((TMask_anamag &)m).sheetgiac_read();
|
|
||||||
|
|
||||||
} // no errors in TRelation_application::read(m);
|
} // no errors in TRelation_application::read(m);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@ -715,199 +686,17 @@ int TAnagrafica_magazzino::read(TMask& m)
|
|||||||
bool TAnagrafica_magazzino::remove()
|
bool TAnagrafica_magazzino::remove()
|
||||||
|
|
||||||
{
|
{
|
||||||
return //_linee_rec_um->remove() == NOERR &&
|
return TRelation_application::remove();
|
||||||
// _linee_rec_deslin->remove() == NOERR &&
|
|
||||||
// _linee_rec_cod->remove() == NOERR &&
|
|
||||||
// _msk->sheetgiac_remove() == NOERR &&
|
|
||||||
TRelation_application::remove();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int TAnagrafica_magazzino::write(const TMask& m)
|
int TAnagrafica_magazzino::write(const TMask& m)
|
||||||
{
|
{
|
||||||
int err= TRelation_application::write(m);
|
return TRelation_application::write(m);
|
||||||
|
|
||||||
//if (err != NOERR)
|
|
||||||
// return err;
|
|
||||||
//int i;
|
|
||||||
// ***********************
|
|
||||||
// write dello sheet unita' di misura
|
|
||||||
/*
|
|
||||||
TSheet_field &fld_um= (TSheet_field &)m.field(F_SHEETUM);
|
|
||||||
|
|
||||||
_linee_rec_um->destroy_rows();
|
|
||||||
if (m.insert_mode()) _linee_rec_um->renum_key("CODART", m.get(F_CODART));
|
|
||||||
|
|
||||||
for (int i= 0; i < fld_um.items(); i++)
|
|
||||||
{
|
|
||||||
TToken_string &row= fld_um.row(i);
|
|
||||||
TString16 um(row.get(0));
|
|
||||||
|
|
||||||
um.rtrim();
|
|
||||||
if (um.not_empty())
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_um->row(i+1, TRUE);
|
|
||||||
|
|
||||||
rec.put("UM", um);
|
|
||||||
rec.put("FC", row.get());
|
|
||||||
rec.put("PREZZO", row.get());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
err = _linee_rec_um->write();
|
|
||||||
|
|
||||||
if (err != NOERR)
|
|
||||||
return err;
|
|
||||||
*/
|
|
||||||
// ***********************
|
|
||||||
// write dello sheet descrizioni in lingua
|
|
||||||
/*TSheet_field &fld_deslin= (TSheet_field &)m.field(F_SHEETDESLIN);
|
|
||||||
|
|
||||||
_linee_rec_deslin->destroy_rows();
|
|
||||||
if (m.insert_mode()) _linee_rec_deslin->renum_key("CODART", m.get(F_CODART));
|
|
||||||
|
|
||||||
for (i = 0; i < fld_deslin.items(); i++)
|
|
||||||
{
|
|
||||||
TToken_string &row= fld_deslin.row(i);
|
|
||||||
TString16 codlin(row.get(0));
|
|
||||||
|
|
||||||
codlin.rtrim();
|
|
||||||
|
|
||||||
if (codlin.not_empty())
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_deslin->row(i+1, TRUE);
|
|
||||||
|
|
||||||
rec.put("CODLIN", codlin);
|
|
||||||
rec.put("DESCR", row.get());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
err= _linee_rec_deslin->write();
|
|
||||||
|
|
||||||
if (err != NOERR)
|
|
||||||
return err;
|
|
||||||
*/
|
|
||||||
// ***********************
|
|
||||||
// write dello sheet codici alternativi
|
|
||||||
/*
|
|
||||||
TSheet_field &fld_cod= (TSheet_field &)m.field(F_SHEETCOD);
|
|
||||||
|
|
||||||
_linee_rec_cod->destroy_rows();
|
|
||||||
if (m.insert_mode()) _linee_rec_cod->renum_key("CODART", m.get(F_CODART));
|
|
||||||
|
|
||||||
for (i= 0; i < fld_cod.items(); i++)
|
|
||||||
{
|
|
||||||
TToken_string &row= fld_cod.row(i);
|
|
||||||
TString80 codartalt(row.get(0));
|
|
||||||
|
|
||||||
codartalt.rtrim();
|
|
||||||
if (codartalt.not_empty())
|
|
||||||
{
|
|
||||||
TRectype &reccor= _linee_rec_cod->row(i+1, TRUE);
|
|
||||||
|
|
||||||
reccor.put("CODARTALT", codartalt);
|
|
||||||
reccor.put("TIPO", row.get());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
err= _linee_rec_cod->write();
|
|
||||||
if (err != NOERR)
|
|
||||||
return err;
|
|
||||||
*/
|
|
||||||
// ***********************
|
|
||||||
// write dello sheet giacenze
|
|
||||||
|
|
||||||
//err = ((TMask_anamag &)m).sheetgiac_write(FALSE);
|
|
||||||
return err;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int TAnagrafica_magazzino::rewrite(const TMask& m)
|
int TAnagrafica_magazzino::rewrite(const TMask& m)
|
||||||
{
|
{
|
||||||
int err;
|
return TRelation_application::rewrite(m);
|
||||||
// rewrite dello sheet Unita' di misura
|
|
||||||
/*
|
|
||||||
TSheet_field &fld_um= (TSheet_field &)m.field(F_SHEETUM);
|
|
||||||
|
|
||||||
_linee_rec_um->destroy_rows();
|
|
||||||
if (m.insert_mode()) _linee_rec_um->renum_key("CODART", m.get(F_CODART));
|
|
||||||
|
|
||||||
for (int i= 0; i < fld_um.items(); i++)
|
|
||||||
{
|
|
||||||
TToken_string & row = fld_um.row(i);
|
|
||||||
TString16 um(row.get(0));
|
|
||||||
|
|
||||||
um.rtrim();
|
|
||||||
if (um.not_empty())
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_um->row(i+1, TRUE);
|
|
||||||
|
|
||||||
rec.put("UM", um);
|
|
||||||
rec.put("FC", row.get());
|
|
||||||
rec.put("PREZZO", row.get());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int err = _linee_rec_um->rewrite();
|
|
||||||
|
|
||||||
if (err != NOERR)
|
|
||||||
return err;
|
|
||||||
*/
|
|
||||||
// rewrite dello sheet descrizioni in lingua
|
|
||||||
/*
|
|
||||||
TSheet_field &fld_deslin= (TSheet_field &)m.field(F_SHEETDESLIN);
|
|
||||||
_linee_rec_deslin->destroy_rows();
|
|
||||||
|
|
||||||
if (m.insert_mode()) _linee_rec_deslin->renum_key("CODART", m.get(F_CODART));
|
|
||||||
|
|
||||||
for (i= 0; i < fld_deslin.items(); i++)
|
|
||||||
{
|
|
||||||
TToken_string & row = fld_deslin.row(i);
|
|
||||||
TString16 codlin(row.get(0));
|
|
||||||
|
|
||||||
codlin.rtrim();
|
|
||||||
if (codlin.not_empty())
|
|
||||||
{
|
|
||||||
TRectype &rec= _linee_rec_deslin->row(i+1, TRUE);
|
|
||||||
|
|
||||||
rec.put("CODLIN", codlin);
|
|
||||||
rec.put("DESCR", row.get());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
err = _linee_rec_deslin->rewrite();
|
|
||||||
|
|
||||||
if (err != NOERR)
|
|
||||||
return err;
|
|
||||||
*/
|
|
||||||
// rewrite dello sheet codici alt.
|
|
||||||
/*
|
|
||||||
TSheet_field &fld_cod= (TSheet_field &)m.field(F_SHEETCOD);
|
|
||||||
|
|
||||||
_linee_rec_cod->destroy_rows();
|
|
||||||
if (m.insert_mode()) _linee_rec_cod->renum_key("CODART", m.get(F_CODART));
|
|
||||||
|
|
||||||
for (i = 0; i < fld_cod.items(); i++)
|
|
||||||
{
|
|
||||||
TToken_string &row= fld_cod.row(i);
|
|
||||||
TString80 codartalt(row.get(0));
|
|
||||||
|
|
||||||
codartalt.rtrim();
|
|
||||||
if (codartalt.not_empty())
|
|
||||||
{
|
|
||||||
TRectype &reccor = _linee_rec_cod->row(i+1, TRUE);
|
|
||||||
|
|
||||||
reccor.put("CODARTALT", codartalt);
|
|
||||||
reccor.put("TIPO", row.get());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
err = _linee_rec_cod->rewrite();
|
|
||||||
if (err != NOERR)
|
|
||||||
return err;
|
|
||||||
*/
|
|
||||||
// rewrite dello sheet giacenze
|
|
||||||
//
|
|
||||||
//err = ((TMask_anamag &)m).sheetgiac_write(TRUE);
|
|
||||||
|
|
||||||
//if (err == NOERR)
|
|
||||||
err= TRelation_application::rewrite(m);
|
|
||||||
|
|
||||||
return err;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void TAnagrafica_magazzino::init_insert_mode(TMask &m)
|
void TAnagrafica_magazzino::init_insert_mode(TMask &m)
|
||||||
@ -921,7 +710,6 @@ void TAnagrafica_magazzino::init_insert_mode(TMask &m)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ************************
|
// ************************
|
||||||
//
|
//
|
||||||
int ve2400(int argc, char* argv[])
|
int ve2400(int argc, char* argv[])
|
||||||
|
10
ve/ve2400.h
10
ve/ve2400.h
@ -65,7 +65,6 @@
|
|||||||
#define F_INDBILA 176
|
#define F_INDBILA 176
|
||||||
#define F_INDBILV 177
|
#define F_INDBILV 177
|
||||||
|
|
||||||
|
|
||||||
#define H_ANNO 180
|
#define H_ANNO 180
|
||||||
#define F_ANNO 181
|
#define F_ANNO 181
|
||||||
#define F_ANNORIF 182
|
#define F_ANNORIF 182
|
||||||
@ -90,6 +89,14 @@
|
|||||||
#define F_SHEETGIAC 203
|
#define F_SHEETGIAC 203
|
||||||
#define F_SHEETSTOMAG 204
|
#define F_SHEETSTOMAG 204
|
||||||
|
|
||||||
|
#define F_STOULTCOS1 210
|
||||||
|
#define F_STOULTCOS2 211
|
||||||
|
#define F_STOCOSTOSTD 212
|
||||||
|
#define F_STOCOSTOMEDIO 213
|
||||||
|
#define F_STOCATVEN 214
|
||||||
|
#define F_STOCODLIST 215
|
||||||
|
#define F_STOPREZZOLIST 216
|
||||||
|
|
||||||
// definizioni per l'archivio di misura articoli
|
// definizioni per l'archivio di misura articoli
|
||||||
#define FS_CODUM 101
|
#define FS_CODUM 101
|
||||||
#define FS_FCUM 102
|
#define FS_FCUM 102
|
||||||
@ -114,3 +121,4 @@
|
|||||||
#define F_STOPREZZO 104
|
#define F_STOPREZZO 104
|
||||||
#define F_STOCODART 120
|
#define F_STOCODART 120
|
||||||
|
|
||||||
|
|
||||||
|
@ -839,6 +839,45 @@ BEGIN
|
|||||||
FLAGS "AD"
|
FLAGS "AD"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
NUMBER F_STOULTCOS1 15 5
|
||||||
|
BEGIN
|
||||||
|
FLAGS "U"
|
||||||
|
PROMPT 2 16 "Ultimo costo "
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_STOULTCOS2 15 5
|
||||||
|
BEGIN
|
||||||
|
FLAGS "U"
|
||||||
|
PROMPT 42 16 "Penultimo costo "
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_STOCOSTOSTD 15 5
|
||||||
|
BEGIN
|
||||||
|
FLAGS "U"
|
||||||
|
PROMPT 2 17 "Costo standard "
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_STOCOSTOMEDIO 15 5
|
||||||
|
BEGIN
|
||||||
|
FLAGS "U"
|
||||||
|
PROMPT 42 17 "Costo medio "
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_STOCATVEN 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 18 "Cat.vendita "
|
||||||
|
END
|
||||||
|
STRING F_STOCODLIST 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 26 18 "Cod.listino "
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_STOPREZZOLIST 15 5
|
||||||
|
BEGIN
|
||||||
|
FLAGS "U"
|
||||||
|
PROMPT 47 18 "Prezzo "
|
||||||
|
END
|
||||||
|
|
||||||
SPREADSHEET F_SHEETSTOMAG 77 10
|
SPREADSHEET F_SHEETSTOMAG 77 10
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 4 "Storico Giacenze"
|
PROMPT 2 4 "Storico Giacenze"
|
||||||
@ -852,6 +891,7 @@ BEGIN
|
|||||||
ITEM "Valore@15"
|
ITEM "Valore@15"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
ENDMASK
|
ENDMASK
|
||||||
|
Loading…
x
Reference in New Issue
Block a user