Patch level : 10.0
Files correlati : mg1100.msk mg3.exe mg4.exe Ricompilazione Demo : [ ] Commento : Corretta stampa ed aggiornamento registro di magazzino git-svn-id: svn://10.65.10.50/branches/R_10_00@21376 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
87e660e623
commit
dba14686b9
51
mg/mg1100.h
51
mg/mg1100.h
@ -1,41 +1,42 @@
|
|||||||
#define F_NUMREG 101
|
#define F_NUMREG 101
|
||||||
#define F_DATAREG 102
|
#define F_DATAREG 102
|
||||||
#define F_ANNOES 103
|
#define F_ANNOES 103
|
||||||
#define F_DATACOMP 104
|
#define F_DATACOMP 104
|
||||||
#define F_DESCR 105
|
#define F_DESCR 105
|
||||||
#define F_RIFADOC 106
|
#define F_RIFADOC 106
|
||||||
#define F_CODNUM 107
|
#define F_CODNUM 107
|
||||||
#define F_NUMDOC 108
|
#define F_NUMDOC 108
|
||||||
#define F_ANNODOC 109
|
#define F_ANNODOC 109
|
||||||
#define F_CODCAUS 110
|
#define F_CODCAUS 110
|
||||||
#define F_DESCAU 111
|
#define F_DESCAU 111
|
||||||
#define F_TIPOCF 112
|
#define F_TIPOCF 112
|
||||||
#define F_CODCLI 113
|
#define F_CODCLI 113
|
||||||
#define F_CODFOR 114
|
#define F_CODFOR 114
|
||||||
#define F_RAGSOC 115
|
#define F_RAGSOC 115
|
||||||
#define F_CATVEN 116
|
#define F_CATVEN 116
|
||||||
#define F_CODLIST 117
|
#define F_CODLIST 117
|
||||||
#define F_CODCONTR 118
|
#define F_CODCONTR 118
|
||||||
#define F_CODOFF 119
|
#define F_CODOFF 119
|
||||||
#define F_TIPOCONDV 120
|
#define F_TIPOCONDV 120
|
||||||
#define F_RIGHE 121
|
#define F_RIGHE 121
|
||||||
#define F_NUMPROVV 122
|
#define F_NUMPROVV 122
|
||||||
#define F_CODCF 123
|
#define F_CODCF 123
|
||||||
#define F_CODCONDV 124
|
#define F_CODCONDV 124
|
||||||
#define F_DESCONDV 125
|
#define F_DESCONDV 125
|
||||||
#define F_EXNUMDOC 126
|
#define F_EXNUMDOC 126
|
||||||
#define F_EXANNODOC 127
|
#define F_EXANNODOC 127
|
||||||
#define F_INVENTORYMODE 128
|
#define F_INVENTORYMODE 128
|
||||||
#define F_INVENTORYMODE2 129
|
#define F_INVENTORYMODE2 129
|
||||||
#define F_VALORE_TOT 130
|
#define F_VALORE_TOT 130
|
||||||
|
|
||||||
#define H_NUMREG 131
|
#define H_NUMREG 131
|
||||||
#define H_DATAREG 132
|
#define H_DATAREG 132
|
||||||
#define H_ANNOES 133
|
#define H_ANNOES 133
|
||||||
#define H_DATACOMP 134
|
#define H_DATACOMP 134
|
||||||
#define H_DESCR 135
|
#define H_DESCR 135
|
||||||
#define F_INDSPED 136
|
#define F_INDSPED 136
|
||||||
#define F_INDIR 137
|
#define F_INDIR 137
|
||||||
|
#define F_NUMREGST 138
|
||||||
|
|
||||||
#define G_DEFMOV 1
|
#define G_DEFMOV 1
|
||||||
|
|
||||||
|
@ -1,12 +1,9 @@
|
|||||||
#include "mg1100.h"
|
#include "mg1100.h"
|
||||||
|
|
||||||
TOOLBAR "Toolbar" 0 0 0 2
|
TOOLBAR "Toolbar" 0 0 0 2
|
||||||
|
|
||||||
#include <relapbar.h>
|
#include <relapbar.h>
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
|
|
||||||
PAGE "Testata" 0 0 0 0
|
PAGE "Testata" 0 0 0 0
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 75 6
|
GROUPBOX DLG_NULL 75 6
|
||||||
@ -17,7 +14,6 @@ END
|
|||||||
|
|
||||||
NUMBER F_NUMREG 7
|
NUMBER F_NUMREG 7
|
||||||
BEGIN
|
BEGIN
|
||||||
// FLAGS "D"
|
|
||||||
FLAGS "G"
|
FLAGS "G"
|
||||||
FIELD NUMREG
|
FIELD NUMREG
|
||||||
PROMPT 2 3 "Operazione numero "
|
PROMPT 2 3 "Operazione numero "
|
||||||
@ -102,13 +98,18 @@ BEGIN
|
|||||||
FIELD EX_NUMDOC
|
FIELD EX_NUMDOC
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
DATE F_EXANNODOC
|
DATE F_EXANNODOC
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 30 7 " del "
|
PROMPT 30 7 "del "
|
||||||
FIELD EX_DATADOC
|
FIELD EX_DATADOC
|
||||||
END
|
END
|
||||||
|
|
||||||
|
NUMBER F_NUMREGST 7
|
||||||
|
BEGIN
|
||||||
|
FLAGS "D"
|
||||||
|
PROMPT 50 7 "N. su registro "
|
||||||
|
FIELD NUMREGST
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_CODCAUS 5
|
STRING F_CODCAUS 5
|
||||||
BEGIN
|
BEGIN
|
||||||
@ -372,8 +373,6 @@ SPREADSHEET F_RIGHE
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 6 "RIGHE DI MOVIMENTO"
|
PROMPT 0 6 "RIGHE DI MOVIMENTO"
|
||||||
FLAGS "AI"
|
FLAGS "AI"
|
||||||
//USE LF_RMOVMAG KEY NRIG
|
|
||||||
//INPUT NUMREG F_NUMREG
|
|
||||||
ITEM "@1"
|
ITEM "@1"
|
||||||
ITEM "Codice articolo"
|
ITEM "Codice articolo"
|
||||||
ITEM "Liv1@10"
|
ITEM "Liv1@10"
|
||||||
|
@ -544,8 +544,8 @@ void TForm_schedemag::set_options(bool no_valori, bool no_ff, bool sintetica, bo
|
|||||||
}
|
}
|
||||||
TForm_subsection & ss = ((TForm_subsection &)find_field('B',odd_page,"H_MOVS_INTERESSATI"));
|
TForm_subsection & ss = ((TForm_subsection &)find_field('B',odd_page,"H_MOVS_INTERESSATI"));
|
||||||
|
|
||||||
((TForm_item &)ss.find_field("10")).enable(!print_gio);
|
ss.find_field("10").enable(!print_gio);
|
||||||
((TForm_item &)ss.find_field("110")).enable(print_gio);
|
ss.find_field("110").enable(print_gio);
|
||||||
_no_ff = no_ff;
|
_no_ff = no_ff;
|
||||||
_sintetica = sintetica;
|
_sintetica = sintetica;
|
||||||
}
|
}
|
||||||
|
110
mg/mg4300.cpp
110
mg/mg4300.cpp
@ -138,39 +138,41 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
|
|||||||
return true;
|
return true;
|
||||||
|
|
||||||
} else if (subcode=="INCNUMREGST") {
|
} else if (subcode=="INCNUMREGST") {
|
||||||
_last_num_reg=max(_last_num_reg,_reg_giorn->last_numreg())+1;
|
_last_num_reg = max(_last_num_reg,_reg_giorn->last_numreg()) + 1;
|
||||||
if (stampa_def)
|
|
||||||
{
|
|
||||||
_reg_giorn->set_last_numreg(_last_num_reg);
|
|
||||||
_reg_giorn->rewrite();
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
} else if (subcode== "REGISTRASTAMPA") {
|
} else if (subcode== "REGISTRASTAMPA") {
|
||||||
TRectype& movr = cursor()->curr(LF_MOVMAG);
|
if (stampa_def)
|
||||||
if ((1 || movr.get_long("NUMREGST")<=_last_num_reg )&& stampa_def)
|
|
||||||
{
|
{
|
||||||
// movimento ancora da registrare
|
TRectype& movr = cursor()->curr(LF_MOVMAG);
|
||||||
movr.put("NUMREGST",_last_num_reg+1);
|
if (movr.get_long(MOVMAG_NUMREGST) != _last_num_reg)
|
||||||
cursor()->relation()->lfile(LF_MOVMAG).rewrite();
|
{
|
||||||
|
// movimento ancora da registrare
|
||||||
_reg_giorn->set_pag_stampate(last_pag_stampata+printer().getcurrentpage());
|
movr.put(MOVMAG_NUMREGST, _last_num_reg); // was _last_num_reg + 1
|
||||||
_reg_giorn->set_last_print(TDate(TODAY));
|
cursor()->relation()->lfile(LF_MOVMAG).rewrite();
|
||||||
_reg_giorn->rewrite();
|
}
|
||||||
}
|
if (_last_num_reg > _reg_giorn->last_numreg())
|
||||||
|
{
|
||||||
|
_reg_giorn->set_last_numreg(_last_num_reg);
|
||||||
|
_reg_giorn->set_pag_stampate(last_pag_stampata+printer().getcurrentpage());
|
||||||
|
_reg_giorn->set_last_print(TDate(TODAY));
|
||||||
|
_reg_giorn->rewrite();
|
||||||
|
}
|
||||||
|
}
|
||||||
} else if (subcode== "INFO_CRONO") {
|
} else if (subcode== "INFO_CRONO") {
|
||||||
TDate datamov(cursor()->relation()->curr(LF_MOVMAG).get_date("DATAREG"));
|
TRectype& movr = cursor()->curr(LF_MOVMAG);
|
||||||
switch (freq_stampa ) {
|
const TDate datamov = movr.get_date(MOVMAG_DATAREG);
|
||||||
case 0:
|
switch (freq_stampa )
|
||||||
valore.format(FR("%7g Movimento del %s "), (double)_last_num_reg+1, (const char *)datamov.string());
|
{
|
||||||
valore << cursor()->relation()->curr(LF_MOVMAG).get("DESCR");
|
case 0:
|
||||||
|
valore.format(FR("%7ld Movimento del %s "), _last_num_reg+1, (const char *)datamov.string());
|
||||||
|
valore << movr.get(MOVMAG_DESCR);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
valore.format(FR("%7g Movimenti di %s, dal %d al %d"), (double)_last_num_reg+1,
|
valore.format(FR("%7ld Movimenti di %s, dal %d al %d"), _last_num_reg+1,
|
||||||
(const char *)itom(datamov.month()),
|
(const char*)itom(datamov.month()),
|
||||||
(int)((datamov.day()-1)/freq_stampa)*freq_stampa+1,
|
(int)((datamov.day()-1)/freq_stampa)*freq_stampa+1,
|
||||||
(int)min(((datamov.day()-1)/freq_stampa+1)*freq_stampa,TDate::last_day(datamov.month(),datamov.year())) );
|
(int)min(((datamov.day()-1)/freq_stampa+1)*freq_stampa,TDate::last_day(datamov.month(),datamov.year())) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
cf.set(valore);
|
cf.set(valore);
|
||||||
@ -197,7 +199,7 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
|
|||||||
const TRectype& anamag = cursor()->curr(LF_ANAMAG);
|
const TRectype& anamag = cursor()->curr(LF_ANAMAG);
|
||||||
if (ragg_articoli)
|
if (ragg_articoli)
|
||||||
{
|
{
|
||||||
valore << TR("Art.") << cursor()->curr(LF_ANAMAG).get(ANAMAG_CODART) << ' ';
|
valore << TR("Art.") << anamag.get(ANAMAG_CODART) << ' ';
|
||||||
|
|
||||||
TString livello(cursor()->relation()->curr(LF_RMOVMAG).get("LIVGIAC"));
|
TString livello(cursor()->relation()->curr(LF_RMOVMAG).get("LIVGIAC"));
|
||||||
if (livello.not_empty() && livello_giac != 0)
|
if (livello.not_empty() && livello_giac != 0)
|
||||||
@ -219,17 +221,16 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
|
|||||||
{
|
{
|
||||||
if (ragg_classi)
|
if (ragg_classi)
|
||||||
{
|
{
|
||||||
valore << TR("Classe fiscale ") << cursor()->curr(LF_ANAMAG).get(ANAMAG_CLASSEFIS) << ' ';
|
valore << TR("Classe fiscale ") << anamag.get(ANAMAG_CLASSEFIS) << ' ';
|
||||||
|
|
||||||
if (ragg_raggart)
|
if (ragg_raggart)
|
||||||
{
|
{
|
||||||
valore << TR(" ragg. ") << cursor()->curr(LF_ANAMAG).get(ANAMAG_RAGGFIS) << ' ';
|
valore << TR(" ragg. ") << anamag.get(ANAMAG_RAGGFIS) << ' ';
|
||||||
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
vv.cut(0);
|
vv.cut(0);
|
||||||
vv << TR("Art. ") << cursor()->curr(LF_ANAMAG).get(ANAMAG_CODART);
|
vv << TR("Art. ") << anamag.get(ANAMAG_CODART);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
valore << vv;
|
valore << vv;
|
||||||
@ -263,56 +264,47 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
|
|||||||
|
|
||||||
|
|
||||||
const char * TGiornalemag::get_cronofield(TVariable_rectype & rmovmag)
|
const char * TGiornalemag::get_cronofield(TVariable_rectype & rmovmag)
|
||||||
{
|
{
|
||||||
// static buffer
|
|
||||||
static TString * valore=NULL;
|
|
||||||
if (valore == NULL )
|
|
||||||
valore = new TString16;
|
|
||||||
|
|
||||||
const TRectype& movmag = cache().get(LF_MOVMAG, rmovmag.get(RMOVMAG_NUMREG));
|
const TRectype& movmag = cache().get(LF_MOVMAG, rmovmag.get(RMOVMAG_NUMREG));
|
||||||
const TDate datamov = movmag.get_date(MOVMAG_DATAREG);
|
const TDate datamov = movmag.get_date(MOVMAG_DATAREG);
|
||||||
|
|
||||||
// gestione frequenza
|
// gestione frequenza
|
||||||
valore->cut(0);
|
TString16 valore;
|
||||||
switch (freq_stampa ) {
|
switch (freq_stampa ) {
|
||||||
case 0:
|
case 0:
|
||||||
valore->format("%4d%2d%2d%7d",datamov.year(),
|
valore.format("%4d%2d%2d%7d",datamov.year(),
|
||||||
datamov.month(),
|
datamov.month(),
|
||||||
datamov.day(),
|
datamov.day(),
|
||||||
movmag.get_long("NUMREG"));
|
movmag.get_long("NUMREG"));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
valore->format("%4d%2d%2d",datamov.year(),
|
valore.format("%4d%2d%2d",datamov.year(),
|
||||||
datamov.month(),
|
datamov.month(),
|
||||||
(int)(datamov.day()/freq_stampa));
|
(int)(datamov.day()/freq_stampa));
|
||||||
}
|
}
|
||||||
return *valore;
|
return get_tmp_string() = valore;
|
||||||
}
|
}
|
||||||
|
|
||||||
const char * TGiornalemag::get_fiscfield(TVariable_rectype & rmovmag)
|
const char * TGiornalemag::get_fiscfield(TVariable_rectype & rmovmag)
|
||||||
{
|
{
|
||||||
static TString * valore=NULL;
|
TString80 valore;
|
||||||
if (valore == NULL )
|
|
||||||
valore = new TString80 ;
|
|
||||||
|
|
||||||
TString80 vv;
|
TString80 vv;
|
||||||
valore->cut(0);
|
|
||||||
|
|
||||||
const TString80 codart = rmovmag.get(RMOVMAG_CODART);
|
const TString80 codart = rmovmag.get(RMOVMAG_CODART);
|
||||||
|
|
||||||
// gestione ragruppamenti
|
// gestione ragruppamenti
|
||||||
if (!ragg_mag)
|
if (!ragg_mag)
|
||||||
{
|
{
|
||||||
valore->format("%-15s",(const char *)rmovmag.get(RMOVMAG_CODMAG));
|
valore.format("%-15s",(const char *)rmovmag.get(RMOVMAG_CODMAG));
|
||||||
}
|
}
|
||||||
if (ragg_articoli)
|
if (ragg_articoli)
|
||||||
{
|
{
|
||||||
*valore << codart;
|
valore << codart;
|
||||||
|
|
||||||
if (livello_giac)
|
if (livello_giac)
|
||||||
{
|
{
|
||||||
const TString80 c2 = rmovmag.get("LIVGIAC");
|
const TString80 c2 = rmovmag.get(RMOVMAG_LIVGIAC);
|
||||||
*valore << livelli_giacenza().unpack_grpcode(c2, livello_giac);
|
valore << livelli_giacenza().unpack_grpcode(c2, livello_giac);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -320,9 +312,9 @@ const char * TGiornalemag::get_fiscfield(TVariable_rectype & rmovmag)
|
|||||||
if (ragg_classi)
|
if (ragg_classi)
|
||||||
{
|
{
|
||||||
const TRectype& anamag = cache().get(LF_ANAMAG, codart);
|
const TRectype& anamag = cache().get(LF_ANAMAG, codart);
|
||||||
*valore << anamag.get(ANAMAG_CLASSEFIS);
|
valore << anamag.get(ANAMAG_CLASSEFIS);
|
||||||
if (ragg_raggart)
|
if (ragg_raggart)
|
||||||
*valore << anamag.get(ANAMAG_RAGGFIS);
|
valore << anamag.get(ANAMAG_RAGGFIS);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -337,7 +329,7 @@ const char * TGiornalemag::get_fiscfield(TVariable_rectype & rmovmag)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
TString16 codcaus = rmovmag.get(RMOVMAG_CODCAUS);
|
TString8 codcaus = rmovmag.get(RMOVMAG_CODCAUS);
|
||||||
if (codcaus.empty())
|
if (codcaus.empty())
|
||||||
{
|
{
|
||||||
const TRectype& movmag = cache().get(LF_MOVMAG, rmovmag.get(RMOVMAG_NUMREG));
|
const TRectype& movmag = cache().get(LF_MOVMAG, rmovmag.get(RMOVMAG_NUMREG));
|
||||||
@ -347,12 +339,12 @@ const char * TGiornalemag::get_fiscfield(TVariable_rectype & rmovmag)
|
|||||||
if (ragg_caus) // raggruppo per "tipo" di causale
|
if (ragg_caus) // raggruppo per "tipo" di causale
|
||||||
{
|
{
|
||||||
TCausale_magazzino* caus = (TCausale_magazzino*)_cau_magazzino.objptr(codcaus);
|
TCausale_magazzino* caus = (TCausale_magazzino*)_cau_magazzino.objptr(codcaus);
|
||||||
*valore << caus->get("S8");
|
valore << caus->get("S8");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
*valore << codcaus;
|
valore << codcaus;
|
||||||
*valore << vv;
|
valore << vv;
|
||||||
return *valore;
|
return get_tmp_string() = valore;
|
||||||
}
|
}
|
||||||
|
|
||||||
void TGiornalemag::calcola_range_movimenti(TRecnotype& primo, TRecnotype& ultimo) const
|
void TGiornalemag::calcola_range_movimenti(TRecnotype& primo, TRecnotype& ultimo) const
|
||||||
|
Loading…
x
Reference in New Issue
Block a user