Correzzioni al 29/07/96
git-svn-id: svn://10.65.10.50/trunk@3278 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
4359d28caf
commit
3e8f0d1a7d
@ -79,10 +79,13 @@ COMCF = S_DISABILITATO //100
|
|||||||
DENCOM = S_DISABILITATO //100
|
DENCOM = S_DISABILITATO //100
|
||||||
STATOCF = S_DISABILITATO //100
|
STATOCF = S_DISABILITATO //100
|
||||||
DESSTATOCF = S_DISABILITATO //100
|
DESSTATOCF = S_DISABILITATO //100
|
||||||
CODVAL = S_NORMALE //200
|
CODVAL1 = S_NORMALE //200
|
||||||
NOME_VAL = S_NORMALE //200
|
CODVAL2 = S_NORMALE //200
|
||||||
|
NOME_VAL1 = S_NORMALE //200
|
||||||
|
NOME_VAL2 = S_NORMALE //200
|
||||||
CAMBIO = S_NORMALE //200
|
CAMBIO = S_NORMALE //200
|
||||||
DATA_CAMBIO = S_DISABILITATO //200
|
DATA_CAMBIO1 = S_NORMALE //200
|
||||||
|
DATA_CAMBIO2 = S_NORMALE //200
|
||||||
CODLIN = S_NORMALE //300
|
CODLIN = S_NORMALE //300
|
||||||
DESLIN = S_NORMALE //300
|
DESLIN = S_NORMALE //300
|
||||||
CODPAG = S_OBBLIGATORIO //400
|
CODPAG = S_OBBLIGATORIO //400
|
||||||
|
@ -96,7 +96,9 @@ bool TCliFor::load( const char tipocf, const long codcf, const TString& ocfpi )
|
|||||||
|
|
||||||
void TCliForVendite::update_mask( TMask& m, bool onload )
|
void TCliForVendite::update_mask( TMask& m, bool onload )
|
||||||
{
|
{
|
||||||
TString16 stato;
|
TString16 stato;
|
||||||
|
const TString16 codval(m.get(F_CODVAL));
|
||||||
|
const TString16 datacambio(m.get(F_DATACAMBIO));
|
||||||
|
|
||||||
// Setta i campi che appartengono al file LF_CLIFO
|
// Setta i campi che appartengono al file LF_CLIFO
|
||||||
bool occas = occasionale( );
|
bool occas = occasionale( );
|
||||||
@ -158,7 +160,15 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
stato = get( LF_CLIFO, "STATOCF" );
|
stato = get( LF_CLIFO, "STATOCF" );
|
||||||
m.set( F_STATOCF, stato );
|
m.set( F_STATOCF, stato );
|
||||||
}
|
}
|
||||||
// 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 newdatacambio(m.get(F_DATACAMBIO));
|
||||||
|
|
||||||
|
if (newcodval.empty() || newdatacambio.empty())
|
||||||
|
m.reset(F_CAMBIO);
|
||||||
|
m.check_field(F_CODVAL);
|
||||||
|
if (codval != newcodval || datacambio != newdatacambio)
|
||||||
|
m.check_field(F_DATACAMBIO);
|
||||||
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 );
|
||||||
@ -179,7 +189,7 @@ void TCliForVendite::update_mask( TMask& m, bool onload )
|
|||||||
// imposta_dati_comune( m );
|
// imposta_dati_comune( m );
|
||||||
imposta_indirizzo_spedizione( m );
|
imposta_indirizzo_spedizione( m );
|
||||||
imposta_sconto_testa( m );
|
imposta_sconto_testa( m );
|
||||||
imposta_valuta( m );
|
// imposta_valuta( m );
|
||||||
}
|
}
|
||||||
|
|
||||||
void TCliFor::edita_occasionale( )
|
void TCliFor::edita_occasionale( )
|
||||||
|
@ -36,7 +36,7 @@ void TMotore_application::init_query_mode( TMask& m )
|
|||||||
_msk->set( F_CODNUM, _codnum);
|
_msk->set( F_CODNUM, _codnum);
|
||||||
_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->check_field(F_CODNUM);
|
_msk->field(F_CODNUM).set_dirty(FALSE);
|
||||||
_msk->set( F_PROFILO, _profilo, TRUE);
|
_msk->set( F_PROFILO, _profilo, TRUE);
|
||||||
_msk->set( F_TIPODOC, _tipodoc, TRUE);
|
_msk->set( F_TIPODOC, _tipodoc, TRUE);
|
||||||
}
|
}
|
||||||
@ -201,28 +201,12 @@ bool TMotore_application::ss_handler( TSheet_field& ss, int r, KEY key )
|
|||||||
|
|
||||||
bool TMotore_application::num_handler( TMask_field& f, KEY key )
|
bool TMotore_application::num_handler( TMask_field& f, KEY key )
|
||||||
{
|
{
|
||||||
// Ottengo la maschera
|
// Ottengo la maschera
|
||||||
TMask& m = f.mask( );
|
TMask& m = f.mask( );
|
||||||
|
|
||||||
if ( key == K_TAB && f.focusdirty() )
|
if (key == K_TAB && f.focusdirty())
|
||||||
{
|
{
|
||||||
// Se la numerazione non h specificata,
|
|
||||||
const TString16 value( m.get( F_CODNUM ) );
|
|
||||||
if ( value.blank( ) )
|
|
||||||
{
|
|
||||||
// Pulisce la descrizione
|
|
||||||
m.set( F_DESNUM, "" );
|
|
||||||
// Pulisce i tipi di documento consentiti
|
|
||||||
m.set( F_TIPIDOCS, "" );
|
|
||||||
// Pulisce il tipo di documento
|
|
||||||
m.set( F_TIPODOC, "" );
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
// Apro la tabella numerazioni
|
|
||||||
|
|
||||||
TTable & tabnum = ((TTable &) ((TEdit_field &)f).browse()->cursor()->file());
|
TTable & tabnum = ((TTable &) ((TEdit_field &)f).browse()->cursor()->file());
|
||||||
// tabnum.zero( );
|
|
||||||
// tabnum.put( "CODTAB", value );
|
|
||||||
if ( tabnum.good())
|
if ( tabnum.good())
|
||||||
{
|
{
|
||||||
// Copio la descrizione della numerazione
|
// Copio la descrizione della numerazione
|
||||||
@ -231,13 +215,11 @@ bool TMotore_application::num_handler( TMask_field& f, KEY key )
|
|||||||
const TString tipidocs( tabnum.get( "S2" ) );
|
const TString tipidocs( tabnum.get( "S2" ) );
|
||||||
m.set( F_TIPIDOCS, tipidocs );
|
m.set( F_TIPIDOCS, tipidocs );
|
||||||
TString16 curtipo( m.get( F_TIPODOC ) );
|
TString16 curtipo( m.get( F_TIPODOC ) );
|
||||||
if ( curtipo.blank( ) )
|
|
||||||
{
|
|
||||||
// Propone il primo tipo di documento come default
|
// Propone il primo tipo di documento come default
|
||||||
m.set( F_TIPODOC, tipidocs.left( 4 ) );
|
m.set( F_TIPODOC, tipidocs.left( 4 ) );
|
||||||
// m.field( F_TIPODOC ).check( );
|
// m.field( F_TIPODOC ).check( );
|
||||||
m.send_key( K_TAB, F_TIPODOC );
|
m.send_key( K_TAB, F_TIPODOC );
|
||||||
}
|
|
||||||
// Se per questa numerazione h abilitata le numerazione provvisoria
|
// Se per questa numerazione h abilitata le numerazione provvisoria
|
||||||
if ( tabnum.get_bool ( "B0" ) )
|
if ( tabnum.get_bool ( "B0" ) )
|
||||||
{
|
{
|
||||||
@ -252,34 +234,15 @@ bool TMotore_application::num_handler( TMask_field& f, KEY key )
|
|||||||
m.set( F_PROVV, "D" );
|
m.set( F_PROVV, "D" );
|
||||||
// Disabilita il campo per la selezione della numerazione
|
// Disabilita il campo per la selezione della numerazione
|
||||||
m.disable( F_PROVV );
|
m.disable( F_PROVV );
|
||||||
}
|
}
|
||||||
return TRUE;
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m.set( F_DESNUM, "" );
|
||||||
|
m.set( F_TIPIDOCS, "" );
|
||||||
|
m.set( F_TIPODOC, "" );
|
||||||
}
|
}
|
||||||
message_box( "Numerazione non valida!" );
|
|
||||||
return FALSE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( key == K_ENTER && f.dirty() )
|
|
||||||
{ // Se la numerazione non h specificata,
|
|
||||||
const TString16 value( m.get( F_CODNUM ) );
|
|
||||||
if ( value.blank( ) )
|
|
||||||
{
|
|
||||||
message_box( "Occorre una numerazione per inserire un documento!" );
|
|
||||||
m.first_focus( F_NDOC );
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool TMotore_application::val_handler( TMask_field& f, KEY key )
|
|
||||||
{
|
|
||||||
// Ottengo la maschera
|
|
||||||
TMask& m = f.mask( );
|
|
||||||
|
|
||||||
// m.set( F_CAMBIO, "" );
|
|
||||||
// m.set( F_DATACAMBIO, "" );
|
|
||||||
app( ).clifo( ).imposta_valuta( m );
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -460,7 +423,7 @@ bool TMotore_application::changing_mask( int mode )
|
|||||||
}
|
}
|
||||||
|
|
||||||
void TMotore_application::configura_sheet( TSheet_field& sheet, TConfig& config )
|
void TMotore_application::configura_sheet( TSheet_field& sheet, TConfig& config )
|
||||||
{
|
{
|
||||||
TBit_array to_delete(MAX_COLUMNS);
|
TBit_array to_delete(MAX_COLUMNS);
|
||||||
to_delete.set();
|
to_delete.set();
|
||||||
int ncols = config.get_int( "NCOLS", "SHEET" );
|
int ncols = config.get_int( "NCOLS", "SHEET" );
|
||||||
@ -470,7 +433,7 @@ void TMotore_application::configura_sheet( TSheet_field& sheet, TConfig& config
|
|||||||
col.format( "%d", i );
|
col.format( "%d", i );
|
||||||
TToken_string sheet_col( config.get( col, "SHEET" ) );
|
TToken_string sheet_col( config.get( col, "SHEET" ) );
|
||||||
const int field_id = sheet_col.get_int(0);
|
const int field_id = sheet_col.get_int(0);
|
||||||
const int coltomove = field_id - FIRST_FIELD;
|
const int coltomove = sheet.cid2index(field_id);
|
||||||
to_delete.reset(coltomove);
|
to_delete.reset(coltomove);
|
||||||
|
|
||||||
const TString descr(sheet_col.get( 1 ));
|
const TString descr(sheet_col.get( 1 ));
|
||||||
@ -485,9 +448,22 @@ void TMotore_application::configura_sheet( TSheet_field& sheet, TConfig& config
|
|||||||
}
|
}
|
||||||
to_delete.reset(0);
|
to_delete.reset(0);
|
||||||
to_delete.reset(1);
|
to_delete.reset(1);
|
||||||
|
|
||||||
|
const int sconto_col = sheet.cid2index(FR_SCONTO);
|
||||||
|
if (to_delete[sconto_col] == FALSE)
|
||||||
|
{
|
||||||
|
TConfig ditta(CONFIG_DITTA);
|
||||||
|
const bool del = (ditta.get("GESSCORIGA") == "N");
|
||||||
|
|
||||||
|
to_delete.set(sconto_col, del);
|
||||||
|
}
|
||||||
|
|
||||||
for ( i = MAX_COLUMNS - 1; i >= 0; i-- )
|
for ( i = MAX_COLUMNS - 1; i >= 0; i-- )
|
||||||
if( to_delete[i] ) sheet.delete_column( i + FIRST_FIELD);
|
if( to_delete[i] )
|
||||||
|
{
|
||||||
|
sheet.enable_column( i + FIRST_FIELD, FALSE);
|
||||||
|
sheet.delete_column( i + FIRST_FIELD);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TMotore_application::get_edit_mask( const char * profilo )
|
void TMotore_application::get_edit_mask( const char * profilo )
|
||||||
@ -545,8 +521,6 @@ void TMotore_application::get_edit_mask( const char * profilo )
|
|||||||
((TVariable_sheet_field&)sheet()).set_getmask( ss_getmask );
|
((TVariable_sheet_field&)sheet()).set_getmask( ss_getmask );
|
||||||
if (_msk1->id2pos( F_OCCASEDIT ) > 0 )
|
if (_msk1->id2pos( F_OCCASEDIT ) > 0 )
|
||||||
_msk1->set_handler( F_OCCASEDIT, occas_handler );
|
_msk1->set_handler( F_OCCASEDIT, occas_handler );
|
||||||
if (_msk1->id2pos( F_CODVAL ) > 0 )
|
|
||||||
_msk1->set_handler( F_CODVAL, val_handler );
|
|
||||||
_msk1->set_handler( F_CODCF, clifo_handler );
|
_msk1->set_handler( F_CODCF, clifo_handler );
|
||||||
_msk1->set_handler( F_CODPAG, condpag_hndl );
|
_msk1->set_handler( F_CODPAG, condpag_hndl );
|
||||||
_msk1->set_handler( F_DATAINSC, condpag_hndl );
|
_msk1->set_handler( F_DATAINSC, condpag_hndl );
|
||||||
@ -583,7 +557,7 @@ TMask* TMotore_application::get_mask( int mode )
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
if( _msk == NULL)
|
if( _msk == NULL)
|
||||||
_msk = new TMask( "ve1000a" );
|
_msk = new TMask( "ve1000a" );
|
||||||
return _msk;
|
return _msk;
|
||||||
break;
|
break;
|
||||||
|
@ -265,7 +265,6 @@ protected:
|
|||||||
// Handler per la maschera di modifica
|
// Handler per la maschera di modifica
|
||||||
static bool clifo_handler( TMask_field& f, KEY key );
|
static bool clifo_handler( TMask_field& f, KEY key );
|
||||||
static bool occas_handler( TMask_field& f, KEY key );
|
static bool occas_handler( TMask_field& f, KEY key );
|
||||||
static bool val_handler( TMask_field& f, KEY key );
|
|
||||||
static bool elabora_handler( TMask_field& f, KEY key );
|
static bool elabora_handler( TMask_field& f, KEY key );
|
||||||
|
|
||||||
// Configurazione dello sheet dato il profilo
|
// Configurazione dello sheet dato il profilo
|
||||||
|
@ -146,6 +146,9 @@ public:
|
|||||||
// GROUP
|
// GROUP
|
||||||
void group( const int g ) { _out << "GR " << g << "\n"; };
|
void group( const int g ) { _out << "GR " << g << "\n"; };
|
||||||
|
|
||||||
|
// PICTURE
|
||||||
|
void picture( const int p ) { _out << "PI " << p << "\n"; };
|
||||||
|
|
||||||
// FIELD
|
// FIELD
|
||||||
void field( const TString& s ) { outline( s, "FI "); };
|
void field( const TString& s ) { outline( s, "FI "); };
|
||||||
|
|
||||||
@ -1133,7 +1136,9 @@ void TMask_generator::genera( const TString& profilo )
|
|||||||
_m->control( T_BOTTONE, DLG_SAVEREC, 1002 );
|
_m->control( T_BOTTONE, DLG_SAVEREC, 1002 );
|
||||||
_m->begin( );
|
_m->begin( );
|
||||||
_m->prompt( -15, -1, "~Registra" );
|
_m->prompt( -15, -1, "~Registra" );
|
||||||
_m->message( "EXIT,20082" );
|
_m->message( "EXIT,20082" );
|
||||||
|
_m->picture(BMP_SAVEREC);
|
||||||
|
_m->picture(BMP_SAVERECDN);
|
||||||
_m->end( );
|
_m->end( );
|
||||||
|
|
||||||
_m->control( T_BOTTONE, DLG_DELREC, 1002 );
|
_m->control( T_BOTTONE, DLG_DELREC, 1002 );
|
||||||
|
@ -275,8 +275,9 @@ TYPE=T_STRINGA
|
|||||||
PROMPT=""
|
PROMPT=""
|
||||||
SIZE=50
|
SIZE=50
|
||||||
|
|
||||||
[CODVAL]
|
[CODVAL1]
|
||||||
//se codice=LIT il campo cambio e' di sola visualizzazione
|
//se codice=LIT il campo cambio e' di sola visualizzazione
|
||||||
|
//se non abilitato archivio cambi
|
||||||
GROUP=200
|
GROUP=200
|
||||||
X=2
|
X=2
|
||||||
Y=0
|
Y=0
|
||||||
@ -292,9 +293,30 @@ DISPLAY="Codice" CODTAB~"Descrizione@50" S0~"Cambio@15" R10~"Data valuta" D0
|
|||||||
OUTPUT=F_CODVAL CODTAB~F_NOMEVAL S0~F_CAMBIO R10~F_DATACAMBIO D0
|
OUTPUT=F_CODVAL CODTAB~F_NOMEVAL S0~F_CAMBIO R10~F_DATACAMBIO D0
|
||||||
WARNING=Codice valuta non trovato
|
WARNING=Codice valuta non trovato
|
||||||
HELP=Inserisci il codice della valuta
|
HELP=Inserisci il codice della valuta
|
||||||
CONFIGS=GESVAL||S_NASCOSTO
|
CONFIGS=GESVAL||S_NASCOSTO|GESVALAC|X|S_NASCOSTO
|
||||||
|
|
||||||
[NOME_VAL]
|
[CODVAL2]
|
||||||
|
//se codice=LIT il campo cambio e' di sola visualizzazione
|
||||||
|
//se abilitato archivio cambi
|
||||||
|
GROUP=200
|
||||||
|
X=2
|
||||||
|
Y=0
|
||||||
|
FIELDNAME=CODVAL
|
||||||
|
MSKID=F_CODVAL
|
||||||
|
TYPE=T_STRINGA
|
||||||
|
PROMPT="Valuta "
|
||||||
|
SIZE=3
|
||||||
|
FLAG=U
|
||||||
|
USE=%VAL
|
||||||
|
INPUT=CODTAB F_CODVAL
|
||||||
|
DISPLAY="Codice" CODTAB~"Descrizione@50" S0
|
||||||
|
OUTPUT=F_CODVAL CODTAB~F_NOMEVAL S0
|
||||||
|
WARNING=Codice valuta non trovato
|
||||||
|
HELP=Inserisci il codice della valuta
|
||||||
|
CONFIGS=GESVAL||S_NASCOSTO|GESVALAC||S_NASCOSTO
|
||||||
|
|
||||||
|
[NOME_VAL1]
|
||||||
|
//se non abilitato archivio cambi
|
||||||
GROUP=200
|
GROUP=200
|
||||||
X=24
|
X=24
|
||||||
Y=0
|
Y=0
|
||||||
@ -307,12 +329,56 @@ DISPLAY="Descrizione@50" S0~"Codice" CODTAB~"Cambio@15" R10~"Data valuta" D0
|
|||||||
OUTPUT=F_CODVAL CODTAB~F_NOMEVAL S0~F_CAMBIO R10~F_DATACAMBIO D0
|
OUTPUT=F_CODVAL CODTAB~F_NOMEVAL S0~F_CAMBIO R10~F_DATACAMBIO D0
|
||||||
WARNING=Codice valuta non trovato
|
WARNING=Codice valuta non trovato
|
||||||
HELP=Inserisci il codice della valuta
|
HELP=Inserisci il codice della valuta
|
||||||
CONFIGS=GESVAL||S_NASCOSTO
|
CONFIGS=GESVAL||S_NASCOSTO|GESVALAC|X|S_NASCOSTO
|
||||||
|
|
||||||
|
[NOME_VAL2]
|
||||||
|
//se abilitato archivio cambi
|
||||||
|
GROUP=200
|
||||||
|
X=24
|
||||||
|
Y=0
|
||||||
|
MSKID=F_NOMEVAL
|
||||||
|
TYPE=T_STRINGA
|
||||||
|
SIZE=50
|
||||||
|
USE=%VAL KEY 2
|
||||||
|
INPUT=S0 F_NOMEVAL
|
||||||
|
DISPLAY="Descrizione@50" S0~"Codice" CODTAB
|
||||||
|
OUTPUT=F_CODVAL CODTAB~F_NOMEVAL S0
|
||||||
|
WARNING=Codice valuta non trovato
|
||||||
|
HELP=Inserisci il codice della valuta
|
||||||
|
CONFIGS=GESVAL||S_NASCOSTO|GESVALAC||S_NASCOSTO
|
||||||
|
|
||||||
|
[DATA_CAMBIO1]
|
||||||
|
// se non abiltato archivio cambi
|
||||||
|
GROUP=200
|
||||||
|
X=2
|
||||||
|
Y=1
|
||||||
|
FIELDNAME=DATACAMBIO
|
||||||
|
MSKID=F_DATACAMBIO
|
||||||
|
TYPE=T_DATA
|
||||||
|
PROMPT="Data valuta"
|
||||||
|
CONFIGS=GESVAL||S_NASCOSTO|GESVALAC|X|S_NASCOSTO
|
||||||
|
|
||||||
|
[DATA_CAMBIO2]
|
||||||
|
// se abilitato archivio cambi
|
||||||
|
GROUP=200
|
||||||
|
X=2
|
||||||
|
Y=1
|
||||||
|
FLAG=R
|
||||||
|
FIELDNAME=DATACAMBIO
|
||||||
|
MSKID=F_DATACAMBIO
|
||||||
|
TYPE=T_DATA
|
||||||
|
PROMPT="Data valuta"
|
||||||
|
USE=CAM
|
||||||
|
INPUT=CODTAB[1,3] F_CODVAL SELECT~CODTAB[4,11] F_DATACAMBIO
|
||||||
|
DISPLAY="Valuta" CODTAB[1,3]~"Data@10" D0~"Descrizione@25" S0~"Cambio@15" R10
|
||||||
|
OUTPUT=F_CAMBIO R10~F_DATACAMBIO D0
|
||||||
|
CONFIGS=GESVAL||S_NASCOSTO|GESVALAC||S_NASCOSTO
|
||||||
|
SPECIAL=CH SEARCH
|
||||||
|
|
||||||
[CAMBIO]
|
[CAMBIO]
|
||||||
// attenzione se abilitato archivio cambi cambio e data rilevati da tale archivio
|
// attenzione se abilitato archivio cambi cambio e data rilevati da tale archivio
|
||||||
GROUP=200
|
GROUP=200
|
||||||
X=2
|
X=48
|
||||||
Y=1
|
Y=1
|
||||||
FIELDNAME=CAMBIO
|
FIELDNAME=CAMBIO
|
||||||
MSKID=F_CAMBIO
|
MSKID=F_CAMBIO
|
||||||
@ -322,16 +388,6 @@ SIZE=1505
|
|||||||
FLAG=R
|
FLAG=R
|
||||||
CONFIGS=GESVAL||S_NASCOSTO
|
CONFIGS=GESVAL||S_NASCOSTO
|
||||||
|
|
||||||
[DATA_CAMBIO]
|
|
||||||
// attenzione se abilitato archivio cambi cambio e data rilevati da tale archivio
|
|
||||||
GROUP=200
|
|
||||||
X=52
|
|
||||||
Y=1
|
|
||||||
MSKID=F_DATACAMBIO
|
|
||||||
TYPE=T_DATA
|
|
||||||
PROMPT="Data valuta "
|
|
||||||
CONFIGS=GESVAL||S_NASCOSTO
|
|
||||||
|
|
||||||
[CODLIN]
|
[CODLIN]
|
||||||
GROUP=300
|
GROUP=300
|
||||||
X=2
|
X=2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user