Lavoro del 14/08/96
git-svn-id: svn://10.65.10.50/trunk@3397 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
b4e7eacffa
commit
09d52f7af1
@ -3,6 +3,5 @@
|
|||||||
|
|
||||||
#define F_CODICE 101
|
#define F_CODICE 101
|
||||||
#define F_DESCR 102
|
#define F_DESCR 102
|
||||||
|
#define F_TIPOPERC 103
|
||||||
|
#define F_PROVV 104
|
||||||
|
|
||||||
|
@ -130,8 +130,10 @@ DATADOCRIF = S_NASCOSTO //1000
|
|||||||
NUMDOCRIF = S_NASCOSTO //1000
|
NUMDOCRIF = S_NASCOSTO //1000
|
||||||
CODAGVIS = S_NASCOSTO //1110
|
CODAGVIS = S_NASCOSTO //1110
|
||||||
DESAGVIS = S_NASCOSTO //1110
|
DESAGVIS = S_NASCOSTO //1110
|
||||||
CODAG = S_NORMALE //1100
|
CODAG = S_NASCOSTO //1100
|
||||||
DESAG = S_NORMALE //1100
|
DESAG = S_NASCOSTO //1100
|
||||||
|
CODZON = S_NORMALE //1100
|
||||||
|
DESZON = S_NORMALE //1100
|
||||||
CODSPMEZZO = S_OBBLIGATORIO //1200
|
CODSPMEZZO = S_OBBLIGATORIO //1200
|
||||||
DESSPMEZZO = S_NORMALE //1200
|
DESSPMEZZO = S_NORMALE //1200
|
||||||
CODPORTO = S_OBBLIGATORIO //1210
|
CODPORTO = S_OBBLIGATORIO //1210
|
||||||
@ -163,6 +165,7 @@ DESCRBENI1 = S_NORMALE //2100
|
|||||||
ASPBENI2 = S_NASCOSTO //2100
|
ASPBENI2 = S_NASCOSTO //2100
|
||||||
DESCRBENI2 = S_NASCOSTO //2100
|
DESCRBENI2 = S_NASCOSTO //2100
|
||||||
IMPNETTI = S_NASCOSTO //2200
|
IMPNETTI = S_NASCOSTO //2200
|
||||||
|
RAGGR = S_NORMALE //2300
|
||||||
RAGGREFF = S_NASCOSTO //2300
|
RAGGREFF = S_NASCOSTO //2300
|
||||||
SPESEINC = S_NASCOSTO //2400
|
SPESEINC = S_NASCOSTO //2400
|
||||||
GRADD = S_NASCOSTO //2500
|
GRADD = S_NASCOSTO //2500
|
||||||
@ -186,7 +189,6 @@ DESCRMAG1 = S_NASCOSTO //2900
|
|||||||
CAUSMAG2 = S_NASCOSTO //2900
|
CAUSMAG2 = S_NASCOSTO //2900
|
||||||
DESCRMAG2 = S_NASCOSTO //2900
|
DESCRMAG2 = S_NASCOSTO //2900
|
||||||
|
|
||||||
//RAGGR = S_NORMALE
|
|
||||||
|
|
||||||
[DEFAULT]
|
[DEFAULT]
|
||||||
NDEFAULTS=1
|
NDEFAULTS=1
|
||||||
@ -266,18 +268,18 @@ NGROUPS=29
|
|||||||
9=810
|
9=810
|
||||||
10=820
|
10=820
|
||||||
11=830
|
11=830
|
||||||
12=900
|
12=2300
|
||||||
13=1100
|
13=900
|
||||||
14=1200
|
14=1100
|
||||||
15=1210
|
15=1200
|
||||||
16=1300
|
16=1210
|
||||||
17=1400
|
17=1300
|
||||||
18=1700
|
18=1400
|
||||||
19=1800
|
19=1700
|
||||||
20=1900
|
20=1800
|
||||||
21=2100
|
21=1900
|
||||||
22=2200
|
22=2100
|
||||||
23=2300
|
23=2200
|
||||||
24=2400
|
24=2400
|
||||||
25=2700
|
25=2700
|
||||||
26=2710
|
26=2710
|
||||||
|
@ -239,7 +239,7 @@ void TRiga::load(TSheet_field & f, TToken_string& row, TRectype * r)
|
|||||||
_data.put( "ASPBENI", row.get( f.cid2index(FR_ASPBENI )) );
|
_data.put( "ASPBENI", row.get( f.cid2index(FR_ASPBENI )) );
|
||||||
carica_profilo( );
|
carica_profilo( );
|
||||||
_piede.destroy( );
|
_piede.destroy( );
|
||||||
somma( _piede );
|
// somma( _piede );
|
||||||
_data.put( "G1", _piede.string( ) );
|
_data.put( "G1", _piede.string( ) );
|
||||||
if (r)
|
if (r)
|
||||||
*r = _data;
|
*r = _data;
|
||||||
@ -312,75 +312,6 @@ void TRiga::configura_sheet( TSheet_field& f, int numriga )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TRiga::somma( TPiede_documento& piede )
|
|
||||||
{
|
|
||||||
// Metti solo i campi numerici poichh sono gli unici che si calcolano
|
|
||||||
//static const TString tabella_campi( "#STATORIGA#TIPORIGA#PROFRIGA#CODMAG#CODART#DESCR#DESCLUNGA#PREZZO#UMQTA#QTA#QTAEVASA#RIGAEVASA#TARA#PNETTO#NCOLLI#DAEVADERE#SCONTO#PERCPROV#IMPFISSO#IMPFISUN#CODIVA#ADDIVA#ASPBENI#" );
|
|
||||||
static const TString tabella_campi( "#PREZZO#QTA#QTAEVASA#TARA#PNETTO#NCOLLI#PERCPROV#" );
|
|
||||||
|
|
||||||
TToken_string s( _pro->get( "PROGPIEDE", "MAIN" ) );
|
|
||||||
TString16 progpiede( s.get( ) );
|
|
||||||
TTable ppd( "PPD" );
|
|
||||||
while( !progpiede.blank( ) )
|
|
||||||
{
|
|
||||||
TString formula = s.get( );
|
|
||||||
if( formula.blank( ) )
|
|
||||||
{
|
|
||||||
// Se non h indicata alcuna formula, la prendo dalla tabella piedi
|
|
||||||
ppd.zero( );
|
|
||||||
ppd.put( "CODTAB", progpiede );
|
|
||||||
if( ppd.read( ) == NOERR )
|
|
||||||
formula = ppd.get( "S0" );
|
|
||||||
else
|
|
||||||
yesnofatal_box( "Progressivo piede non definito( %s ).", ( const char * ) progpiede );
|
|
||||||
}
|
|
||||||
// Calcolo la espressione
|
|
||||||
TExpression espr( "" );
|
|
||||||
if ( espr.set( formula ) )
|
|
||||||
{
|
|
||||||
int last = espr.numvar( );
|
|
||||||
for( int i = 0; i < last; i ++ )
|
|
||||||
{
|
|
||||||
TString varname( espr.varname( i ) );
|
|
||||||
TString cerca;
|
|
||||||
cerca.format( "#%s#", ( const char *)varname );
|
|
||||||
if ( tabella_campi.find( cerca ) != -1 )
|
|
||||||
{
|
|
||||||
real value ( _data.get_real( varname ) );
|
|
||||||
espr.setvar( varname, value );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if ( varname[ 0 ] == 'F' || varname[ 0 ] == 'f' )
|
|
||||||
{
|
|
||||||
TString16 nfunz ( varname );
|
|
||||||
nfunz.rtrim( 1 );
|
|
||||||
espr.setvar( varname, atoi( nfunz ) );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
yesnofatal_box( "Variabile non definita nella funzione di calcolo della riga ( %s ).", ( const char * ) varname );
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
piede.somma( progpiede, espr );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
yesnofatal_box( "Espressione non valida( %s )", ( const char * )formula );
|
|
||||||
progpiede = s.get( );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void TRiga::sottrai( TPiede_documento& piede )
|
|
||||||
{
|
|
||||||
|
|
||||||
TPiede_documento temp_piede;
|
|
||||||
|
|
||||||
somma( temp_piede );
|
|
||||||
piede.sottrai( temp_piede );
|
|
||||||
}
|
|
||||||
|
|
||||||
TVariable_mask * TRiga::getmask( )
|
TVariable_mask * TRiga::getmask( )
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -430,7 +361,7 @@ void TRiga::edit_keys( const KEY key, TPiede_documento& nuovo )
|
|||||||
// Inizio modifica
|
// Inizio modifica
|
||||||
case K_SPACE:
|
case K_SPACE:
|
||||||
vecchio.destroy( );
|
vecchio.destroy( );
|
||||||
somma( vecchio );
|
// somma( vecchio );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Cancellazione
|
// Cancellazione
|
||||||
@ -444,7 +375,7 @@ void TRiga::edit_keys( const KEY key, TPiede_documento& nuovo )
|
|||||||
// Toglie i vecchi valori
|
// Toglie i vecchi valori
|
||||||
nuovo.sottrai( vecchio );
|
nuovo.sottrai( vecchio );
|
||||||
// Aggiunge i nuovi all
|
// Aggiunge i nuovi all
|
||||||
somma( nuovo );
|
// somma( nuovo );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -83,11 +83,6 @@ class TRiga : public TObject
|
|||||||
// Disabilita le colonne dello sheet come da profilo riga
|
// Disabilita le colonne dello sheet come da profilo riga
|
||||||
void configura_sheet( TSheet_field& f, int numriga );
|
void configura_sheet( TSheet_field& f, int numriga );
|
||||||
// Somma la riga su di un piede documento
|
// Somma la riga su di un piede documento
|
||||||
void somma( TPiede_documento& piede );
|
|
||||||
// Sottrae la riga da un piede documento
|
|
||||||
void sottrai( TPiede_documento& piede );
|
|
||||||
// Gestisce la modifica/cancellazione della riga sul piede
|
|
||||||
// documento indicato. Va chiamata negli handler degli sheet
|
|
||||||
void edit_keys( const KEY key, TPiede_documento& nuovo );
|
void edit_keys( const KEY key, TPiede_documento& nuovo );
|
||||||
// Costruisce e Ritorna la maschera della riga per la editazione
|
// Costruisce e Ritorna la maschera della riga per la editazione
|
||||||
TVariable_mask * getmask();
|
TVariable_mask * getmask();
|
||||||
|
@ -264,39 +264,15 @@ bool TCond_vendita::cerca( int tiporicerca )
|
|||||||
break;
|
break;
|
||||||
case 'C':
|
case 'C':
|
||||||
{
|
{
|
||||||
const TRectype rec_to_found(_rcondv.curr());
|
_rcondv.put( "CODRIGA", anamag().get("GRMERC"));
|
||||||
|
|
||||||
_rcondv.put( "CODRIGA", anamag().get( "GRMERC1" ) );
|
|
||||||
if (_rcondv.read( ) != NOERR )
|
|
||||||
{
|
|
||||||
_rcondv.curr() = rec_to_found;
|
|
||||||
_rcondv.put( "CODRIGA", anamag().get( "GRMERC2" ) );
|
|
||||||
if (_rcondv.read( ) != NOERR )
|
|
||||||
{
|
|
||||||
_rcondv.curr() = rec_to_found;
|
|
||||||
_rcondv.put( "CODRIGA", anamag().get( "GRMERC3" ) );
|
|
||||||
_rcondv.read( );
|
_rcondv.read( );
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case 'L':
|
case 'L':
|
||||||
{
|
{
|
||||||
const TRectype rec_to_found(_rcondv.curr());
|
_rcondv.put( "CODRIGA", anamag().get("GRMERC").left(3));
|
||||||
|
|
||||||
_rcondv.put( "CODRIGA", anamag().get("GRMERC1").left(3) );
|
|
||||||
if (_rcondv.read( ) != NOERR )
|
|
||||||
{
|
|
||||||
_rcondv.curr() = rec_to_found;
|
|
||||||
_rcondv.put( "CODRIGA", anamag().get("GRMERC2").left(3) );
|
|
||||||
if (_rcondv.read( ) != NOERR )
|
|
||||||
{
|
|
||||||
_rcondv.curr() = rec_to_found;
|
|
||||||
_rcondv.put( "CODRIGA", anamag().get("GRMERC3").left(3) );
|
|
||||||
_rcondv.read( );
|
_rcondv.read( );
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -433,39 +409,15 @@ void TCond_vendita::ricerca(bool full_load)
|
|||||||
break;
|
break;
|
||||||
case 'C':
|
case 'C':
|
||||||
{
|
{
|
||||||
const TRectype rec_to_found(_sconti.curr());
|
_sconti.put( "CODART", anamag().get("GRMERC"));
|
||||||
|
|
||||||
_sconti.put( "CODART", anamag().get( "GRMERC1" ) );
|
|
||||||
if (_sconti.read() != NOERR )
|
|
||||||
{
|
|
||||||
_sconti.curr() = rec_to_found;
|
|
||||||
_sconti.put( "CODART", anamag().get( "GRMERC2" ) );
|
|
||||||
if (_sconti.read() != NOERR )
|
|
||||||
{
|
|
||||||
_sconti.curr() = rec_to_found;
|
|
||||||
_sconti.put( "CODART", anamag().get( "GRMERC3" ) );
|
|
||||||
_sconti.read( );
|
_sconti.read( );
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case 'L':
|
case 'L':
|
||||||
{
|
{
|
||||||
const TRectype rec_to_found(_sconti.curr());
|
_sconti.put("CODART", anamag().get("GRMERC").left(3));
|
||||||
|
|
||||||
_sconti.put("CODART", anamag().get("GRMERC1").left(3));
|
|
||||||
if (_sconti.read() != NOERR )
|
|
||||||
{
|
|
||||||
_sconti.curr() = rec_to_found;
|
|
||||||
_sconti.put("CODART", anamag().get("GRMERC2").left(3));
|
|
||||||
if (_sconti.read() != NOERR )
|
|
||||||
{
|
|
||||||
_sconti.curr() = rec_to_found;
|
|
||||||
_sconti.put("CODART", anamag().get("GRMERC3").left(3));
|
|
||||||
_sconti.read();
|
_sconti.read();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
error_box("Tipo di chiave righe sconti '%c' non valida!", rigakey);
|
error_box("Tipo di chiave righe sconti '%c' non valida!", rigakey);
|
||||||
|
@ -107,7 +107,7 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
{
|
{
|
||||||
TString16 stato;
|
TString16 stato;
|
||||||
const TString16 codval(m.get(F_CODVAL));
|
const TString16 codval(m.get(F_CODVAL));
|
||||||
const TString16 datacambio(m.get(F_DATACAMBIO));
|
const TString16 datacambio(m.get(F_DATACAMBIO1));
|
||||||
|
|
||||||
// Setta i campi che appartengono al file LF_CLIFO
|
// Setta i campi che appartengono al file LF_CLIFO
|
||||||
const bool occas = app().config_ditta().get_bool("GESOCCAS") && occasionale();
|
const bool occas = app().config_ditta().get_bool("GESOCCAS") && occasionale();
|
||||||
@ -121,7 +121,11 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
m.enable(F_RAGSOC, !occas);
|
m.enable(F_RAGSOC, !occas);
|
||||||
if(!onload)
|
if(!onload)
|
||||||
{
|
{
|
||||||
|
if (m.id2pos(F_CODVAL) >= 0 && m.field(F_CODVAL).active())
|
||||||
set( m, F_CODVAL, LF_CLIFO, "CODVAL" );
|
set( m, F_CODVAL, LF_CLIFO, "CODVAL" );
|
||||||
|
if (m.id2pos(F_CODVAL1) >= 0 && m.field(F_CODVAL1).active())
|
||||||
|
set( m, F_CODVAL1, LF_CLIFO, "CODVAL" );
|
||||||
|
if (m.id2pos(F_CODLIN) >= 0 && m.field(F_CODLIN).active())
|
||||||
set( m, F_CODLIN, LF_CLIFO, "CODLIN" );
|
set( m, F_CODLIN, LF_CLIFO, "CODLIN" );
|
||||||
set( m, F_CODPAG, LF_CLIFO, "CODPAG" );
|
set( m, F_CODPAG, LF_CLIFO, "CODPAG" );
|
||||||
set( m, F_CODABIA, LF_CLIFO, "CODABI" );
|
set( m, F_CODABIA, LF_CLIFO, "CODABI" );
|
||||||
@ -143,6 +147,14 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
set( m, F_ADDBRB, LF_CFVEN, "ADDBOLLIRB" );
|
set( m, F_ADDBRB, LF_CFVEN, "ADDBOLLIRB" );
|
||||||
set( m, F_ADDBTR, LF_CFVEN, "ADDBOLLITR" );
|
set( m, F_ADDBTR, LF_CFVEN, "ADDBOLLITR" );
|
||||||
set(m, F_CATVEN, LF_CFVEN, "CATVEN");
|
set(m, F_CATVEN, LF_CFVEN, "CATVEN");
|
||||||
|
if (m.id2pos(F_CODLIST) >= 0 && m.field(F_CODLIST).active())
|
||||||
|
set(m, F_CODLIST, LF_CFVEN, "CODLIST");
|
||||||
|
if (m.id2pos(F_CODLIST1) >= 0 && m.field(F_CODLIST1).active())
|
||||||
|
set(m, F_CODLIST1, LF_CFVEN, "CODLIST");
|
||||||
|
if (m.id2pos(F_CODAG) >= 0 && m.field(F_CODAG).active())
|
||||||
|
set(m, F_CODAG, LF_CFVEN, "CODAG");
|
||||||
|
set(m, F_CODZON, LF_CFVEN, "CODZONA");
|
||||||
|
set(m, F_RAGGR, LF_CFVEN, "RAGGDOC");
|
||||||
}
|
}
|
||||||
if ( occasionale ( ) )
|
if ( occasionale ( ) )
|
||||||
{
|
{
|
||||||
@ -172,22 +184,32 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
}
|
}
|
||||||
// m.set( F_DESSTATOCF, get( "%STA", stato, "S0" ) );
|
// m.set( F_DESSTATOCF, get( "%STA", stato, "S0" ) );
|
||||||
const TString16 newcodval(m.get(F_CODVAL));
|
const TString16 newcodval(m.get(F_CODVAL));
|
||||||
const TString16 newdatacambio(m.get(F_DATACAMBIO));
|
const TString16 newdatacambio(m.get(F_DATACAMBIO1));
|
||||||
|
|
||||||
if ((m.id2pos(F_CAMBIO) >= 0) && (newcodval.empty() || newdatacambio.empty()))
|
if ((m.id2pos(F_CAMBIO) >= 0) && (newcodval.empty() || newdatacambio.empty()))
|
||||||
m.reset(F_CAMBIO);
|
m.reset(F_CAMBIO);
|
||||||
|
if (m.id2pos(F_CODVAL) >= 0 && m.field(F_CODVAL).active())
|
||||||
m.check_field(F_CODVAL);
|
m.check_field(F_CODVAL);
|
||||||
if (codval != newcodval || datacambio != newdatacambio)
|
if (m.id2pos(F_CODVAL1) >= 0 && m.field(F_CODVAL1).active())
|
||||||
m.check_field(F_DATACAMBIO);
|
m.check_field(F_CODVAL1);
|
||||||
|
if (m.id2pos(F_DATACAMBIO1) >= 0 && m.field(F_DATACAMBIO1).active() &&
|
||||||
|
(codval != newcodval || datacambio != newdatacambio))
|
||||||
|
m.check_field(F_DATACAMBIO1);
|
||||||
m.check_field(F_COMCF);
|
m.check_field(F_COMCF);
|
||||||
m.check_field(F_STATOCF);
|
m.check_field(F_STATOCF);
|
||||||
m.check_field( F_CODPAG );
|
m.check_field( F_CODPAG );
|
||||||
|
if (m.id2pos(F_CODLIN) >= 0 && m.field(F_CODLIN).active())
|
||||||
m.check_field( F_CODLIN );
|
m.check_field( F_CODLIN );
|
||||||
// m.check_field( F_CODABIA );
|
// m.check_field( F_CODABIA );
|
||||||
m.check_field( F_CODCABA );
|
m.check_field( F_CODCABA );
|
||||||
// m.check_field( F_CODABIP );
|
// m.check_field( F_CODABIP );
|
||||||
|
if (m.id2pos(F_CODLIST) >= 0 && m.field(F_CODLIST).active())
|
||||||
|
m.check_field( F_CODLIST );
|
||||||
|
if (m.id2pos(F_CODLIST1) >= 0 && m.field(F_CODLIST1).active())
|
||||||
|
m.check_field( F_CODLIST1);
|
||||||
m.check_field( F_CODCABP );
|
m.check_field( F_CODCABP );
|
||||||
m.check_field( F_CODINDSP );
|
m.check_field( F_CODINDSP );
|
||||||
|
if (m.id2pos(F_CODAG) >= 0 && m.field(F_CODAG).active())
|
||||||
m.check_field( F_CODAG );
|
m.check_field( F_CODAG );
|
||||||
m.check_field( F_CODSPMEZZO );
|
m.check_field( F_CODSPMEZZO );
|
||||||
m.check_field( F_CODPORTO );
|
m.check_field( F_CODPORTO );
|
||||||
@ -197,6 +219,7 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
m.check_field( F_CODVETT2 );
|
m.check_field( F_CODVETT2 );
|
||||||
m.check_field( F_CODVETT3 );
|
m.check_field( F_CODVETT3 );
|
||||||
m.check_field( F_CATVEN );
|
m.check_field( F_CATVEN );
|
||||||
|
m.check_field( F_CODZON );
|
||||||
// imposta_dati_comune( m );
|
// imposta_dati_comune( m );
|
||||||
imposta_indirizzo_spedizione( m );
|
imposta_indirizzo_spedizione( m );
|
||||||
imposta_sconto_testa( m );
|
imposta_sconto_testa( m );
|
||||||
@ -350,7 +373,7 @@ void TCliForVendite::imposta_valuta( TMask& m )
|
|||||||
if ( codtab.sub( 0, 2 ) == val )
|
if ( codtab.sub( 0, 2 ) == val )
|
||||||
{
|
{
|
||||||
m.set( F_CAMBIO, cambi.get( "R10" ) );
|
m.set( F_CAMBIO, cambi.get( "R10" ) );
|
||||||
m.set( F_DATACAMBIO, cambi.get( "D0" ) );
|
m.set( F_DATACAMBIO1, cambi.get( "D0" ) );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@ void TMotore_application::init_query_mode( TMask& m )
|
|||||||
_msk->field(F_CODNUM).set_focusdirty(TRUE);
|
_msk->field(F_CODNUM).set_focusdirty(TRUE);
|
||||||
_msk->field(F_CODNUM).on_key(K_TAB);
|
_msk->field(F_CODNUM).on_key(K_TAB);
|
||||||
_msk->field(F_CODNUM).set_dirty(FALSE);
|
_msk->field(F_CODNUM).set_dirty(FALSE);
|
||||||
_msk->set( F_TIPODOC, _doc->tipodoc(), TRUE);
|
_msk->set( F_TIPODOC, _doc->tipo().codice(), TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void TMotore_application::init_insert_mode( TMask& m )
|
void TMotore_application::init_insert_mode( TMask& m )
|
||||||
@ -347,6 +347,7 @@ bool TMotore_application::clifo_handler( TMask_field& f, KEY key )
|
|||||||
|
|
||||||
void TMotore_application::carica_piedi( )
|
void TMotore_application::carica_piedi( )
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
TToken_string s( pro( ).get( "PROGPIEDE", "MAIN" ) ); // prof
|
TToken_string s( pro( ).get( "PROGPIEDE", "MAIN" ) ); // prof
|
||||||
TString s1 = s.get( );
|
TString s1 = s.get( );
|
||||||
TTable ppd( "PPD" );
|
TTable ppd( "PPD" );
|
||||||
@ -365,6 +366,7 @@ void TMotore_application::carica_piedi( )
|
|||||||
message_box( "Piede non trovato( %s )", ( const char * )s1 );
|
message_box( "Piede non trovato( %s )", ( const char * )s1 );
|
||||||
s1 = s.get( );
|
s1 = s.get( );
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
void TMotore_application::somma_piedi( )
|
void TMotore_application::somma_piedi( )
|
||||||
@ -524,7 +526,7 @@ TMask* TMotore_application::get_mask( int mode )
|
|||||||
msk1->enable(F_CODLIN, geslin);
|
msk1->enable(F_CODLIN, geslin);
|
||||||
msk1->enable(F_DESLIN, geslin);
|
msk1->enable(F_DESLIN, geslin);
|
||||||
|
|
||||||
const bool geslis = _config_ditta->get_bool("GES[1]");
|
const bool geslis = _config_ditta->get_bool("GES", "ve", 1);
|
||||||
const bool gesliscatven = _config_ditta->get_bool("GESLISCV");
|
const bool gesliscatven = _config_ditta->get_bool("GESLISCV");
|
||||||
|
|
||||||
if (geslis)
|
if (geslis)
|
||||||
@ -538,7 +540,7 @@ TMask* TMotore_application::get_mask( int mode )
|
|||||||
msk1->hide(F_CODLIST1);
|
msk1->hide(F_CODLIST1);
|
||||||
}
|
}
|
||||||
|
|
||||||
const bool gescontr = _config_ditta->get_bool("GES[2]");
|
const bool gescontr = _config_ditta->get_bool("GES", "ve", 2);
|
||||||
const bool gescontrcli = _config_ditta->get_bool("GESCONCC");
|
const bool gescontrcli = _config_ditta->get_bool("GESCONCC");
|
||||||
|
|
||||||
if (gescontr)
|
if (gescontr)
|
||||||
@ -552,7 +554,7 @@ TMask* TMotore_application::get_mask( int mode )
|
|||||||
msk1->hide(F_CODCONT1);
|
msk1->hide(F_CODCONT1);
|
||||||
}
|
}
|
||||||
|
|
||||||
const bool gesoff = _config_ditta->get_bool("GES[3]");
|
const bool gesoff = _config_ditta->get_bool("GES", "ve", 3);
|
||||||
|
|
||||||
msk1->enable(F_CODCAMP, gesoff);
|
msk1->enable(F_CODCAMP, gesoff);
|
||||||
|
|
||||||
@ -600,7 +602,7 @@ const char* TMotore_application::get_next_key( )
|
|||||||
|
|
||||||
if (value.not_empty())
|
if (value.not_empty())
|
||||||
{
|
{
|
||||||
TTable tabnum( "NUM" );
|
TTable tabnum( "%NUM" );
|
||||||
tabnum.zero( );
|
tabnum.zero( );
|
||||||
tabnum.put( "CODTAB", value );
|
tabnum.put( "CODTAB", value );
|
||||||
if ( tabnum.read( ) == NOERR && tabnum.get_bool ( "B1" ))
|
if ( tabnum.read( ) == NOERR && tabnum.get_bool ( "B1" ))
|
||||||
@ -658,7 +660,6 @@ int TMotore_application::read( TMask& m )
|
|||||||
currentrow.load( rec );
|
currentrow.load( rec );
|
||||||
currentrow.save(f, srow);
|
currentrow.save(f, srow);
|
||||||
f.post_insert(i - 1);
|
f.post_insert(i - 1);
|
||||||
currentrow.somma( _piede );
|
|
||||||
}
|
}
|
||||||
carica_piedi( );
|
carica_piedi( );
|
||||||
}
|
}
|
||||||
@ -683,7 +684,7 @@ int TMotore_application::write( const TMask& m ) // C 90
|
|||||||
for ( int i = 0; i < f.items( ); i ++ )
|
for ( int i = 0; i < f.items( ); i ++ )
|
||||||
{
|
{
|
||||||
TToken_string& t = f.row( i );
|
TToken_string& t = f.row( i );
|
||||||
TRectype& rec = _doc->add_row();
|
TRectype& rec = _doc->new_row();
|
||||||
store_riga( f, i, rec );
|
store_riga( f, i, rec );
|
||||||
}
|
}
|
||||||
err = _doc->write( );
|
err = _doc->write( );
|
||||||
@ -718,7 +719,7 @@ int TMotore_application::rewrite( const TMask& m ) // C 90
|
|||||||
for ( int i = 0; i < f.items( ); i ++ )
|
for ( int i = 0; i < f.items( ); i ++ )
|
||||||
{
|
{
|
||||||
TToken_string& t = f.row( i );
|
TToken_string& t = f.row( i );
|
||||||
TRectype& rec = _doc->add_row();
|
TRectype& rec = _doc->new_row();
|
||||||
store_riga( f, i, rec );
|
store_riga( f, i, rec );
|
||||||
}
|
}
|
||||||
err = _doc->rewrite( );
|
err = _doc->rewrite( );
|
||||||
@ -853,7 +854,7 @@ bool TMotore_application::user_destroy( )
|
|||||||
// Registro l'ultimo tipo documento e l'ultima numerazione
|
// Registro l'ultimo tipo documento e l'ultima numerazione
|
||||||
TConfig utente( CONFIG_USER );
|
TConfig utente( CONFIG_USER );
|
||||||
utente.set( "CODNUM", _doc->numerazione(), "ve" );
|
utente.set( "CODNUM", _doc->numerazione(), "ve" );
|
||||||
utente.set( "TIPODOC", _doc->tipodoc(), "ve" );
|
utente.set( "TIPODOC", _doc->tipo().codice(), "ve" );
|
||||||
|
|
||||||
if (_config_ditta != NULL)
|
if (_config_ditta != NULL)
|
||||||
delete _config_ditta;
|
delete _config_ditta;
|
||||||
|
@ -260,7 +260,7 @@ public:
|
|||||||
TConfig & pro() { CHECK( _pro, "Profilo del documento nullo!" ); return *_pro; }
|
TConfig & pro() { CHECK( _pro, "Profilo del documento nullo!" ); return *_pro; }
|
||||||
const TFilename & proname() { return _pro->name(); }
|
const TFilename & proname() { return _pro->name(); }
|
||||||
TMask & query_mask() { CHECK( _msk, "Maschera di ricerca nulla!" ); return *_msk; }
|
TMask & query_mask() { CHECK( _msk, "Maschera di ricerca nulla!" ); return *_msk; }
|
||||||
TMask & edit_mask() { return (TMask &) _doc_masks[_doc->tipodoc()]; }
|
TMask & edit_mask() { return (TMask &) _doc_masks[_doc->tipo().codice()]; }
|
||||||
TRelation & rel() { CHECK( _rel, "Relazione nulla!" ); return *_rel; }
|
TRelation & rel() { CHECK( _rel, "Relazione nulla!" ); return *_rel; }
|
||||||
TSheet_field & sheet() { CHECK( _sheet, "Sheet nullo!" ); return *_sheet; }
|
TSheet_field & sheet() { CHECK( _sheet, "Sheet nullo!" ); return *_sheet; }
|
||||||
TCliForVendite & clifo() { CHECK( _clifor, "Oggetto cliente nullo!" ); return *_clifor; }
|
TCliForVendite & clifo() { CHECK( _clifor, "Oggetto cliente nullo!" ); return *_clifor; }
|
||||||
|
@ -148,6 +148,7 @@ public:
|
|||||||
|
|
||||||
// PICTURE
|
// PICTURE
|
||||||
void picture( const int p) { _out << "PI " << p << "\n"; };
|
void picture( const int p) { _out << "PI " << p << "\n"; };
|
||||||
|
void picture( const TString & s) { _out << "PI " << s << "\n"; };
|
||||||
|
|
||||||
// FIELD
|
// FIELD
|
||||||
void field( const TString& s ) { outline( s, "FI "); };
|
void field( const TString& s ) { outline( s, "FI "); };
|
||||||
@ -1385,10 +1386,12 @@ void TMask_generator::genera( const TString& profilo )
|
|||||||
if (s.not_empty())
|
if (s.not_empty())
|
||||||
{
|
{
|
||||||
intestazione_pagina( );
|
intestazione_pagina( );
|
||||||
TTable ppd( "PPD" );
|
TTable ppd( "%PPD" );
|
||||||
int cp = 1;
|
int nr = 1;
|
||||||
for (const char * codpiede = s.get(0); codpiede && *codpiede; codpiede = s.get())
|
int id = 0;
|
||||||
|
for (const char * cp = s.get(0); cp && *cp; cp = s.get())
|
||||||
{
|
{
|
||||||
|
const TString16 codpiede(cp);
|
||||||
do_events();
|
do_events();
|
||||||
ppd.zero( );
|
ppd.zero( );
|
||||||
ppd.put( "CODTAB", codpiede );
|
ppd.put( "CODTAB", codpiede );
|
||||||
@ -1396,21 +1399,26 @@ void TMask_generator::genera( const TString& profilo )
|
|||||||
{
|
{
|
||||||
const TString80 picture(ppd.get( "S3"));
|
const TString80 picture(ppd.get( "S3"));
|
||||||
|
|
||||||
_m->control( T_NUMERO, BASE_PIEDE + ppd.get_int("I0"), 1805);
|
id++;
|
||||||
|
_m->control( T_NUMERO, BASE_PIEDE + id, 1805);
|
||||||
_m->begin( );
|
_m->begin( );
|
||||||
|
|
||||||
TString80 header(ppd.get("S1")); header.left_just(40 - picture.len());
|
TString80 header(ppd.get("S0")); header.left_just(40 - picture.len());
|
||||||
|
|
||||||
_m->prompt( 2, 7 + cp, header );
|
_m->prompt( 2, 7 + nr, header );
|
||||||
|
_m->field(codpiede);
|
||||||
|
|
||||||
|
if (picture.not_empty())
|
||||||
|
_m->picture(picture);
|
||||||
_m->flag( "D" );
|
_m->flag( "D" );
|
||||||
_m->end( );
|
_m->end( );
|
||||||
cp++;
|
nr++;
|
||||||
if( cp + MASK_FIRST_LINE > MAX_LINES_PER_PAGE )
|
if( nr + MASK_FIRST_LINE > MAX_LINES_PER_PAGE )
|
||||||
{
|
{
|
||||||
_m->end( );
|
_m->end( );
|
||||||
intestazione_pagina( );
|
intestazione_pagina( );
|
||||||
_m->line( MASK_FIRST_LINE );
|
_m->line( MASK_FIRST_LINE );
|
||||||
cp = 1;
|
nr = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,8 +85,9 @@ FLAG=R
|
|||||||
USE=20
|
USE=20
|
||||||
INPUT=TIPOCF F_TIPOCF SELECT~CODCF F_CODCF
|
INPUT=TIPOCF F_TIPOCF SELECT~CODCF F_CODCF
|
||||||
DISPLAY="Codice" CODCF~"Ragione sociale@50" RAGSOC~"Indirizzo@35" INDCF
|
DISPLAY="Codice" CODCF~"Ragione sociale@50" RAGSOC~"Indirizzo@35" INDCF
|
||||||
OUTPUT=F_CODCF CODCF~F_RAGSOC RAGSOC~F_INDCF INDCF~F_CIVCF CIVCF~F_CODAG CODAG~F_CODVAL CODVAL~F_OCCAS OCCAS~F_CODLIN CODLIN~F_CODABIA CODABI~F_CODCABA CODCAB~F_CODLIST LF_CFVEN->CODLIST~F_CODPAG CODPAG
|
OUTPUT=F_CODCF CODCF~F_RAGSOC RAGSOC~F_INDCF INDCF~F_CIVCF CIVCF
|
||||||
SPECIAL=ME 9,F_CODVAL~ME 9,F_CODLIN~ME 9,F_CODABIA~ME 9,F_CODCABA~ME 9,F_CODPAG~JO LF_CFVEN TO LF_CLIFO INTO TIPOCF=TIPOCF CODCF=CODCF
|
//SPECIAL=ME 9,F_CODVAL~ME 9,F_CODLIN~ME 9,F_CODABIA~ME 9,F_CODCABA~ME 9,F_CODPAG~JO LF_CFVEN TO LF_CLIFO INTO TIPOCF=TIPOCF CODCF=CODCF
|
||||||
|
SPECIAL=JO LF_CFVEN TO LF_CLIFO INTO TIPOCF=TIPOCF CODCF=CODCF
|
||||||
WARNING=Cliente non presente
|
WARNING=Cliente non presente
|
||||||
HELP=Inserire il codice del cliente
|
HELP=Inserire il codice del cliente
|
||||||
|
|
||||||
@ -650,8 +651,9 @@ MSKID=F_CODCONT
|
|||||||
TYPE=T_STRINGA
|
TYPE=T_STRINGA
|
||||||
PROMPT="Contratto "
|
PROMPT="Contratto "
|
||||||
SIZE=3
|
SIZE=3
|
||||||
USE=LF_CONDV SE CODCF==""
|
FLAG=U
|
||||||
INPUT=TIPO "C"~CATVEN ""~TIPOCF F_TIPOCF~COD F_CODCONT
|
USE=LF_CONDV
|
||||||
|
INPUT=TIPO "C"~TIPOCF ""~COD F_CODCONT
|
||||||
DISPLAY="Codice" LF_CONDV->COD~"Descrizione@35" LF_CONDV->DESCR
|
DISPLAY="Codice" LF_CONDV->COD~"Descrizione@35" LF_CONDV->DESCR
|
||||||
OUTPUT=F_CODCONT LF_CONDV->COD~F_DESCONT LF_CONDV->DESCR
|
OUTPUT=F_CODCONT LF_CONDV->COD~F_DESCONT LF_CONDV->DESCR
|
||||||
SPECIAL=ADD RUN ve2 -1 c
|
SPECIAL=ADD RUN ve2 -1 c
|
||||||
@ -665,6 +667,7 @@ MSKID=F_CODCONT1
|
|||||||
TYPE=T_STRINGA
|
TYPE=T_STRINGA
|
||||||
PROMPT="Contratto "
|
PROMPT="Contratto "
|
||||||
SIZE=3
|
SIZE=3
|
||||||
|
FLAG=U
|
||||||
USE=LF_CONDV SELECT CODCF!=""
|
USE=LF_CONDV SELECT CODCF!=""
|
||||||
INPUT=TIPO "C"~TIPOCF F_TIPOCF SE~CODCF F_CODCF SE~COD F_CODCONT1
|
INPUT=TIPO "C"~TIPOCF F_TIPOCF SE~CODCF F_CODCF SE~COD F_CODCONT1
|
||||||
DISPLAY="Cliente" LF_CONDV->CODCF~"Codice" LF_CONDV->COD~"Descrizione@35" LF_CONDV->DESCR
|
DISPLAY="Cliente" LF_CONDV->CODCF~"Codice" LF_CONDV->COD~"Descrizione@35" LF_CONDV->DESCR
|
||||||
@ -716,6 +719,24 @@ PROMPT="Sconto "
|
|||||||
SIZE=25
|
SIZE=25
|
||||||
SPECIAL=VA 23 0
|
SPECIAL=VA 23 0
|
||||||
|
|
||||||
|
[RAGGR]
|
||||||
|
GROUP=2300
|
||||||
|
X=2
|
||||||
|
Y=0
|
||||||
|
FIELDNAME=RAGGR
|
||||||
|
MSKID=F_RAGGR
|
||||||
|
TYPE=T_CHECKBOX
|
||||||
|
PROMPT="Raggruppamento documento "
|
||||||
|
|
||||||
|
[RAGGREFF]
|
||||||
|
GROUP=2300
|
||||||
|
X=40
|
||||||
|
Y=0
|
||||||
|
FIELDNAME=RAGGREFF
|
||||||
|
MSKID=F_RAGGREFF
|
||||||
|
TYPE=T_CHECKBOX
|
||||||
|
PROMPT="Raggruppamento effetti "
|
||||||
|
|
||||||
[GRINDSPED]
|
[GRINDSPED]
|
||||||
GROUP=900
|
GROUP=900
|
||||||
X=1
|
X=1
|
||||||
@ -725,7 +746,6 @@ TYPE=T_CORNICE
|
|||||||
PROMPT=Indirizzo spedizione
|
PROMPT=Indirizzo spedizione
|
||||||
SIZE=7807
|
SIZE=7807
|
||||||
|
|
||||||
|
|
||||||
[CODINDSP]
|
[CODINDSP]
|
||||||
GROUP=900
|
GROUP=900
|
||||||
X=2
|
X=2
|
||||||
@ -889,6 +909,35 @@ INPUT=S0 F_DESAG
|
|||||||
DISPLAY="Descrizione@50" S0~"Codice" CODTAB
|
DISPLAY="Descrizione@50" S0~"Codice" CODTAB
|
||||||
OUTPUT=F_CODAG CODTAB~F_DESAG S0
|
OUTPUT=F_CODAG CODTAB~F_DESAG S0
|
||||||
|
|
||||||
|
[CODZON]
|
||||||
|
GROUP=1100
|
||||||
|
X=2
|
||||||
|
Y=1
|
||||||
|
FIELDNAME=ZONA
|
||||||
|
MSKID=F_CODZON
|
||||||
|
TYPE=T_STRINGA
|
||||||
|
PROMPT="Zona "
|
||||||
|
SIZE=3
|
||||||
|
FLAG=U
|
||||||
|
USE=ZON
|
||||||
|
INPUT=CODTAB F_CODZON
|
||||||
|
DISPLAY="Codice" CODTAB~"Descrizione@50" S0
|
||||||
|
OUTPUT=F_CODZON CODTAB~F_DESZON S0
|
||||||
|
SPECIAL=CH NORMAL
|
||||||
|
|
||||||
|
[DESZON]
|
||||||
|
GROUP=1100
|
||||||
|
X=24
|
||||||
|
Y=1
|
||||||
|
MSKID=F_DESZON
|
||||||
|
TYPE=T_STRINGA
|
||||||
|
PROMPT=""
|
||||||
|
SIZE=50
|
||||||
|
USE=ZON KEY 2
|
||||||
|
INPUT=S0 F_DESZON
|
||||||
|
DISPLAY="Descrizione@50" S0~"Codice" CODTAB
|
||||||
|
OUTPUT=F_CODZON CODTAB~F_DESZON S0
|
||||||
|
|
||||||
[CODAGVIS]
|
[CODAGVIS]
|
||||||
GROUP=1110
|
GROUP=1110
|
||||||
X=2
|
X=2
|
||||||
@ -1340,15 +1389,6 @@ MSKID=F_IMPNETTI
|
|||||||
TYPE=T_CHECKBOX
|
TYPE=T_CHECKBOX
|
||||||
PROMPT="Importi netti "
|
PROMPT="Importi netti "
|
||||||
|
|
||||||
[RAGGREFF]
|
|
||||||
GROUP=2300
|
|
||||||
X=2
|
|
||||||
Y=0
|
|
||||||
FIELDNAME=RAGGREFF
|
|
||||||
MSKID=150
|
|
||||||
TYPE=T_CHECKBOX
|
|
||||||
PROMPT="Raggruppamento effetti "
|
|
||||||
|
|
||||||
[SPESEINC]
|
[SPESEINC]
|
||||||
GROUP=2400
|
GROUP=2400
|
||||||
X=2
|
X=2
|
||||||
|
@ -42,7 +42,7 @@ HEIGHT=8
|
|||||||
HEIGHT=2
|
HEIGHT=2
|
||||||
|
|
||||||
[1100]
|
[1100]
|
||||||
HEIGHT=1
|
HEIGHT=2
|
||||||
|
|
||||||
[1110]
|
[1110]
|
||||||
HEIGHT=1
|
HEIGHT=1
|
||||||
|
@ -94,4 +94,5 @@
|
|||||||
#define F_DATACAMBIO1 202
|
#define F_DATACAMBIO1 202
|
||||||
#define F_CODLIST1 203
|
#define F_CODLIST1 203
|
||||||
#define F_CODCONT1 204
|
#define F_CODCONT1 204
|
||||||
|
#define F_CODZON 205
|
||||||
#endif // veuml.h
|
#endif // veuml.h
|
||||||
|
@ -70,4 +70,5 @@
|
|||||||
#define F_DESPORTO 355
|
#define F_DESPORTO 355
|
||||||
#define F_DESNOTESP1 356
|
#define F_DESNOTESP1 356
|
||||||
#define F_DESNOTESP2 357
|
#define F_DESNOTESP2 357
|
||||||
|
#define F_DESZON 358
|
||||||
#endif // __VEUML1_H
|
#endif // __VEUML1_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user