Correzioni al motore

git-svn-id: svn://10.65.10.50/trunk@3015 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1996-06-18 15:55:39 +00:00
parent 51b94ca2eb
commit e808aad33e
14 changed files with 3099 additions and 2031 deletions

284
ve/bollac.src Executable file
View File

@ -0,0 +1,284 @@
#include "veini.h"
#include "veuml.h"
#include "verig.h"
// Esempio di profilo documento : Profilo Bolla Vendita
[MAIN]
// Descrizione a caratteri del documento
TYPE=Bolla di vendita
// Dove sono le risorse per il documento
MSKFILE=BOLLAC
FRMFILE=BOLLAC.FRM
// modifica
PROGPIEDE=TOTNETTI|TRASPORTO|IMBALLO|GENERALI
// modifica
// Procedure utente da chiamare per il documento ( preprocessarle? )
NUOVO=
MODIFICA=
CANCELLA=
STAMPA=
RAGGRUPPA=
USER=
// Indica se il documento è indirizzato ad un cliente o ad un fornitore
TIPOCF=C
[INSERIMENTO]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5,6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=1
[MODIFICA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5
// Stato finale del documento dopo la operazione
STATOFINALE=N
[CANCELLAZIONE]
STATIVALIDI = 1,6,7
STATOFINALE = 4
REMOVE = 0
[STAMPA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5
// Stato finale del documento dopo la operazione
STATOFINALE=6
[RAGGRUPPA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=1
[SPECIALE]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5,6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=9
[PROFILO]
// Si possono indicare, dopo il numero, PROMPT, HELP, WARNING cosi:
// 1|Prompt|Help|Warning
// TIPOCF = S_NORMALE
// CODCF = S_OBBLIGATORIO
// RAGSOC = S_NORMALE
OCCASEDIT = S_NORMALE //100
OCFPI = S_NORMALE //100
COFI = S_NORMALE //100
STATOPAIV = S_NORMALE //100
PAIVA = S_NORMALE //100
GRRECAPITO = S_NORMALE //100
INDCF = S_DISABILITATO //100
CIVCF = S_DISABILITATO //100
LOCALITACF = S_DISABILITATO //100
CAPCF = S_DISABILITATO //100
PROVCOM = S_DISABILITATO //100
COMCF = S_DISABILITATO //100
DENCOM = S_DISABILITATO //100
STATOCF = S_DISABILITATO //100
DESSTATOCF = S_DISABILITATO //100
CODVAL = S_NORMALE //200
NOME_VAL = S_DISABILITATO //200
CAMBIO = S_NORMALE //200
DATA_CAMBIO = S_DISABILITATO //200
CODLIN = S_NORMALE //300
DESLIN = S_DISABILITATO //300
CODPAG = S_OBBLIGATORIO //400
DESCODPAG = S_DISABILITATO //400
GRSCADENZE = S_NORMALE //500
DATAINSC = S_NORMALE //500
DATASCAD1 = S_DISABILITATO //500
DATASCAD2 = S_DISABILITATO //500
DATASCAD3 = S_DISABILITATO //500
DATASCAD4 = S_DISABILITATO //500
DATASCAD5 = S_DISABILITATO //500
CODABIA = S_OBBLIGATORIO //600
CODCABA = S_OBBLIGATORIO //600
DESBANAPP = S_DISABILITATO //600
CODABIP = S_NORMALE //700
CODCABP = S_NORMALE //700
DESBANPRE = S_DISABILITATO //700
CATVEN = S_NORMALE //800
DESCATVEN = S_DISABILITATO //800
CODLIST1 = S_NORMALE //800
CODLIST2 = S_NORMALE //800
DESLIST = S_DISABILITATO //800
CODCONT1 = S_NORMALE //810
CODCONT2 = S_NORMALE //810
DESCONT = S_DISABILITATO //810
CODCAMP = S_NORMALE //820
DESCAMP = S_DISABILITATO //820
SCONTOPERC = S_NORMALE //830
GRINDSPED = S_NORMALE //900
CODINDSP = S_NORMALE //900
RAGSOCSP = S_DISABILITATO //900
INDSP = S_DISABILITATO //900
CIVSP = S_DISABILITATO //900
LOCALITASP = S_DISABILITATO //900
CAPSP = S_DISABILITATO //900
COMSP = S_DISABILITATO //900
DENCOMSP = S_DISABILITATO //900
PROVCOMSP = S_DISABILITATO //900
STATOSP = S_DISABILITATO //900
DESSTATOSP = S_DISABILITATO //900
DATADOCRIF = S_NASCOSTO //1000
NUMDOCRIF = S_NASCOSTO //1000
CODAGVIS = S_NASCOSTO //1110
DESAGVIS = S_NASCOSTO //1110
CODAG = S_NORMALE //1100
DESAG = S_DISABILITATO //1100
CODSPMEZZO = S_OBBLIGATORIO //1200
DESSPMEZZO = S_DISABILITATO //1200
CODPORTO = S_OBBLIGATORIO //1210
DESPORTO = S_DISABILITATO //1210
CODNOTESP1 = S_NORMALE //1300
DESNOTESP1 = S_DISABILITATO //1300
CODNOTESP2 = S_NASCOSTO //1300
DESNOTESP2 = S_NASCOSTO //1300
CAUSTRASP = S_OBBLIGATORIO //1400
DENCAUSTRASP = S_DISABILITATO //1400
CODVETT1 = S_OBBLIGATORIO //1500
CODVETT2 = S_NASCOSTO //1500
CODVETT3 = S_NASCOSTO //1500
NOMEVETT1 = S_DISABILITATO //1500
NOMEVETT2 = S_NASCOSTO //1500
NOMEVETT3 = S_NASCOSTO //1500
NCOPIE = S_OBBLIGATORIO //1600
GRPARTENZA = S_NORMALE //1700
DATAPART = S_NORMALE //1700
ORAPART = S_NORMALE //1700
IMPPAGATO = S_NASCOSTO //1800
ACCSALDO = S_NASCOSTO //1800
DOC1 = S_NASCOSTO //1900
DOC2 = S_NASCOSTO //1900
DOC3 = S_NASCOSTO //1900
DATACONS = S_NASCOSTO //2000
ASPBENI1 = S_OBBLIGATORIO //2100
DESCRBENI1 = S_DISABILITATO //2100
ASPBENI2 = S_NASCOSTO //2100
DESCRBENI2 = S_NASCOSTO //2100
IMPNETTI = S_NASCOSTO //2200
RAGGREFF = S_NASCOSTO //2300
SPESEINC = S_NASCOSTO //2400
GRADD = S_NASCOSTO //2500
ADDBRB = S_NASCOSTO //2500
ADDBTR = S_NASCOSTO //2500
ADDBDE = S_NASCOSTO //2500
GRCODIVA = S_NASCOSTO //2600
CODIVABRB = S_NASCOSTO //2600
CODIVABTR = S_NASCOSTO //2600
CODIVABTRE = S_NASCOSTO //2600
CODIVABDE = S_NASCOSTO //2600
UMTARA = S_NORMALE //2710
TARA = S_NORMALE //2710
DESUMTARA = S_NASCOSTO //2710
UMPNETTO = S_NORMALE //2700
PNETTO = S_NORMALE //2700
DESUMPNETTO = S_NASCOSTO //2700
NCOLLI = S_NORMALE //2800
CAUSMAG1 = S_NASCOSTO //2900
DESCRMAG1 = S_NASCOSTO //2900
CAUSMAG2 = S_NASCOSTO //2900
DESCRMAG2 = S_NASCOSTO //2900
//RAGGR = S_NORMALE
[DEFAULT]
NDEFAULTS=1
1=F_CAUSTRASP|VEN
[SHEET]
NCOLS=10
1=FR_CODMAG
2=FR_CODDEP
3=FR_CODART
4=FR_DESCR
5=FR_UMQTA
6=FR_QTA
7=FR_PREZZO
8=FR_SCONTO
9=FR_PERCPROV
10=FR_CODIVA
[RIGHE]
NTIPIRIGA=4
1=01
2=02
3=03
4=04
[HANDLERS]
NHANDLER=0
1 = F_ORAPART|1
[PROFILOGRUPPO]
101 = S_NASCOSTO
100 = S_NORMALE
200 = S_NORMALE
300 = S_NORMALE
400 = S_NORMALE
500 = S_NORMALE
600 = S_NORMALE
700 = S_NORMALE
800 = S_NORMALE
810 = S_NORMALE
820 = S_NORMALE
830 = S_NORMALE
900 = S_NORMALE
1000 = S_NASCOSTO
1100 = S_NORMALE
1200 = S_NORMALE
1210 = S_NORMALE
1300 = S_NORMALE
1400 = S_NORMALE
1500 = S_NORMALE
1600 = S_NORMALE
1700 = S_NORMALE
1800 = S_NORMALE
1900 = S_NORMALE
2000 = S_NASCOSTO
2100 = S_NORMALE
2200 = S_NORMALE
2300 = S_NORMALE
2400 = S_NORMALE
2500 = S_NASCOSTO
2600 = S_NORMALE
2700 = S_NORMALE
2710 = S_NORMALE
2800 = S_NORMALE
2900 = S_NORMALE
[ORDINEGRUPPI]
NGROUPS=29
1=100
2=200
3=300
4=400
5=500
6=600
7=700
8=800
9=810
10=820
11=830
12=900
13=1100
14=1200
15=1210
16=1300
17=1400
18=1700
19=1800
20=1900
21=2100
22=2200
23=2300
24=2400
25=2700
26=2710
27=2800
28=1500
29=1600

203
ve/bollaf.src Executable file
View File

@ -0,0 +1,203 @@
#include "veini.h"
#include "veuml2.h"
#include "veuml.h"
#include "verig.h"
// Esempio di profilo documento : Profilo Bolla Fornitore
[MAIN]
// Descrizione a caratteri del documento
TYPE=Bolla a fornitore
// Dove sono le risorse per il documento
MSKFILE=BOLLAF
FRMFILE=BOLLAF.FRM
// modifica
PROGPIEDE=TOTNETTI
// modifica
// Procedure utente da chiamare per il documento ( preprocessarle? )
NUOVO=
MODIFICA=
CANCELLA=
STAMPA=
RAGGRUPPA=
USER=
// Indica se il documento è indirizzato ad un cliente o ad un fornitore
TIPOCF=F
[INSERIMENTO]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5,6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=1
[MODIFICA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5
// Stato finale del documento dopo la operazione
STATOFINALE=N
[CANCELLAZIONE]
STATIVALIDI = 6,7
STATOFINALE = 4
REMOVE = 0
[STAMPA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5
// Stato finale del documento dopo la operazione
STATOFINALE=6
[RAGGRUPPA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=1
[SPECIALE]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5,6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=9
[PROFILO]
// Si possono indicare, dopo il numero, PROMPT, HELP, WARNING cosi:
// 1|Prompt|Help|Warning
// TIPOCF = S_NORMALE
// CODCF = S_OBBLIGATORIO
// RAGSOC = S_NORMALE
OCCASEDIT = S_NORMALE //100
OCFPI = S_NORMALE //100
COFI = S_DISABILITATO //100
STATOPAIV = S_DISABILITATO //100
PAIVA = S_DISABILITATO //100
GRRECAPITO = S_NORMALE //100
INDCF = S_DISABILITATO //100
CIVCF = S_DISABILITATO //100
LOCALITACF = S_DISABILITATO //100
CAPCF = S_DISABILITATO //100
PROVCOM = S_DISABILITATO //100
COMCF = S_DISABILITATO //100
DENCOM = S_DISABILITATO //100
STATOCF = S_DISABILITATO //100
//DESSTATOCF = S_DISABILITATO //100
CODLIN = S_NORMALE //300
DESLIN = S_DISABILITATO //300
GRINDSPED = S_NORMALE //900
CODINDSP = S_NORMALE //900
RAGSOCSP = S_DISABILITATO //900
INDSP = S_DISABILITATO //900
CIVSP = S_DISABILITATO //900
LOCALITASP = S_DISABILITATO //900
CAPSP = S_DISABILITATO //900
COMSP = S_DISABILITATO //900
DENCOMSP = S_DISABILITATO //900
PROVCOMSP = S_DISABILITATO //900
STATOSP = S_DISABILITATO //900
//DESSTATOSP = S_DISABILITATO //900
DATADOCRIF = S_NASCOSTO //1000
NUMDOCRIF = S_NASCOSTO //1000
CODSPMEZZO = S_OBBLIGATORIO //1200
DESSPMEZZO = S_DISABILITATO //1200
CODPORTO = S_OBBLIGATORIO //1210
DESPORTO = S_DISABILITATO //1210
CODNOTESP1 = S_NORMALE //1300
DESNOTESP1 = S_DISABILITATO //1300
CODNOTESP2 = S_NASCOSTO //1300
DESNOTESP2 = S_NASCOSTO //1300
CAUSTRASP = S_OBBLIGATORIO //1400
DENCAUSTRASP = S_DISABILITATO //1400
CODVETT1 = S_OBBLIGATORIO //1500
CODVETT2 = S_NASCOSTO //1500
CODVETT3 = S_NASCOSTO //1500
NOMEVETT1 = S_DISABILITATO //1500
NOMEVETT2 = S_NASCOSTO //1500
NOMEVETT3 = S_NASCOSTO //1500
NCOPIE = S_OBBLIGATORIO //1600
GRPARTENZE = S_NORMALE //1700
DATAPART = S_NORMALE //1700
ORAPART = S_NORMALE //1700
DOC1 = S_NASCOSTO //1900
DOC2 = S_NASCOSTO //1900
DOC3 = S_NASCOSTO //1900
DATACONS = S_NASCOSTO //2000
ASPBENI1 = S_OBBLIGATORIO //2100
DESCRBENI1 = S_DISABILITATO //2100
ASPBENI2 = S_NORMALE //2100
DESCRBENI2 = S_DISABILITATO //2100
UMTARA = S_NORMALE //2710
TARA = S_NORMALE //2710
DESUMTARA = S_NASCOSTO //2710
UMPNETTO = S_NORMALE //2700
PNETTO = S_NORMALE //2700
DESUMPNETTO = S_NASCOSTO //2700
NCOLLI = S_NORMALE //2800
CAUSMAG1 = S_NASCOSTO //2900
DESCRMAG1 = S_NASCOSTO //2900
CAUSMAG2 = S_NASCOSTO //2900
DESCRMAG2 = S_NASCOSTO //2900
//RAGGR = S_NORMALE
[DEFAULT]
NDEFAULTS=0
//NDEFAULTS=1
//1=F_CAUSTRASP|VEN
[SHEET]
NCOLS=6
1=FR_CODMAG
2=FR_CODDEP
3=FR_CODART
4=FR_DESCR
5=FR_UMQTA
6=FR_QTA
[RIGHE]
NTIPIRIGA=1
1=01
[HANDLERS]
NHANDLER=0
1 = F_ORAPART|1
[PROFILOGRUPPO]
100 = S_NORMALE
300 = S_NORMALE
900 = S_NORMALE
1000 = S_NASCOSTO
1200 = S_NORMALE
1210 = S_NORMALE
1300 = S_NORMALE
1400 = S_NORMALE
1500 = S_NORMALE
1600 = S_NORMALE
1700 = S_NORMALE
1900 = S_NORMALE
2000 = S_NASCOSTO
2100 = S_NORMALE
2700 = S_NORMALE
2710 = S_NORMALE
2800 = S_NORMALE
2900 = S_NORMALE
[ORDINEGRUPPI]
NGROUPS=18
1=100
2=300
3=900
4=1000
5=1200
6=1210
7=1300
8=1400
9=1700
10=1900
11=2000
12=2100
13=2700
14=2710
15=2800
16=2900
17=1500
18=1600

229
ve/fatturac.src Executable file
View File

@ -0,0 +1,229 @@
#include "veini.h"
#include "veuml2.h"
#include "veuml.h"
#include "verig.h"
[MAIN]
// Descrizione a caratteri del documento
TYPE=Fattura di vendita
// Dove sono le risorse per il documento
MSKFILE=FATTURAC
FRMFILE=FATTURAC.FRM
// modifica
PROGPIEDE=TOTNETTI
// modifica
// Procedure utente da chiamare per il documento ( preprocessarle? )
NUOVO=
MODIFICA=
CANCELLA=
STAMPA=
RAGGRUPPA=
USER=
// Indica se il documento è indirizzato ad un cliente o ad un fornitore
TIPOCF=C
[INSERIMENTO]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5,6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=1
[MODIFICA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5
// Stato finale del documento dopo la operazione
STATOFINALE=N
[CANCELLAZIONE]
STATIVALIDI = 6,7
STATOFINALE = 4
REMOVE = 0
[STAMPA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5
// Stato finale del documento dopo la operazione
STATOFINALE=6
[RAGGRUPPA]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=1
[SPECIALE]
// Stati in cui è possibile effettuare la operazione
STATIVALIDI=1,2,3,4,5,6,7,8,9
// Stato finale del documento dopo la operazione
STATOFINALE=9
[PROFILO]
// Si possono indicare, dopo il numero, PROMPT, HELP, WARNING cosi:
// 1|Prompt|Help|Warning
OCCASEDIT = S_NORMALE //100
OCFPI = S_NORMALE //100
COFI = S_DISABILITATO //100
STATOPAIV = S_DISABILITATO //100
PAIVA = S_DISABILITATO //100
GRRECAPITO = S_NORMALE //100
INDCF = S_DISABILITATO //100
CIVCF = S_DISABILITATO //100
LOCALITACF = S_DISABILITATO //100
CAPCF = S_DISABILITATO //100
PROVCOM = S_DISABILITATO //100
COMCF = S_DISABILITATO //100
DENCOM = S_DISABILITATO //100
STATOCF = S_DISABILITATO //100
//DESSTATOCF = S_DISABILITATO //100
CODVAL = S_NORMALE //200
NOME_VAL = S_DISABILITATO //200
CAMBIO = S_NORMALE //200
DATA_CAMBIO = S_DISABILITATO //200
CODLIN = S_NORMALE //300
DESLIN = S_DISABILITATO //300
CODPAG = S_OBBLIGATORIO //400
DESCODPAG = S_DISABILITATO //400
GRSCADENZE = S_NORMALE //500
DATAINSC = S_NORMALE //500
DATASCAD1 = S_DISABILITATO //500
DATASCAD2 = S_DISABILITATO //500
DATASCAD3 = S_DISABILITATO //500
DATASCAD4 = S_DISABILITATO //500
DATASCAD5 = S_DISABILITATO //500
CODABIA = S_OBBLIGATORIO //600
CODCABA = S_OBBLIGATORIO //600
DESBANAPP = S_DISABILITATO //600
CODABIP = S_NORMALE //700
CODCABP = S_NORMALE //700
DESBANPRE = S_DISABILITATO //700
CATVEN = S_NORMALE //800
DESCATVEN = S_DISABILITATO //800
CODLIST1 = S_NORMALE //800
CODLIST2 = S_NORMALE //800
DESLIST = S_DISABILITATO //800
CODCONT1 = S_NORMALE //810
CODCONT2 = S_NORMALE //810
DESCONT = S_DISABILITATO //810
CODCAMP = S_NORMALE //820
DESCAMP = S_DISABILITATO //820
SCONTOPERC = S_NORMALE //830
CODAG = S_NORMALE //1100
DESAG = S_DISABILITATO //1100
CODPORTO = S_OBBLIGATORIO //1210
DESPORTO = S_DISABILITATO //1210
CODVETT1 = S_NORMALE //1500
CODVETT2 = S_NASCOSTO //1500
CODVETT3 = S_NASCOSTO //1500
NOMEVETT1 = S_DISABILITATO //1500
NOMEVETT2 = S_NASCOSTO //1500
NOMEVETT3 = S_NASCOSTO //1500
NCOPIE = S_OBBLIGATORIO //1600
IMPPAGATO = S_NORMALE //1800
ACCSALDO = S_NORMALE //1800
DOC1 = S_NASCOSTO //1900
DOC2 = S_NASCOSTO //1900
DOC3 = S_NASCOSTO //1900
IMPNETTI = S_NORMALE //2200
RAGGREFF = S_NORMALE //2300
SPESEINC = S_NORMALE //2400
GRADD = S_NORMALE //2500
ADDBRB = S_NORMALE //2500
ADDBTR = S_NORMALE //2500
ADDBDE = S_NORMALE //2500
GRCODIVA = S_NORMALE //2600
CODIVABRB = S_NORMALE //2600
CODIVABTR = S_NORMALE //2600
CODIVABTRE = S_NORMALE //2600
CODIVABDE = S_NORMALE //2600
SCONFIS = S_NORMALE //3000
RICFIS = S_NORMALE //3200
//NATTRASP = S_NASCOSTO //3300
//NATTRANS = S_NASCOSTO //3300
//REGIME = S_NASCOSTO //3300
GRSPESEADD = S_NORMALE //3400
SPESEADD1 = S_NORMALE //3400
SPESEADD2 = S_NORMALE //3400
SPESEADD3 = S_NORMALE //3400
SPESEADD4 = S_NORMALE //3400
[DEFAULT]
NDEFAULTS=0
[SHEET]
NCOLS=10
1=FR_CODMAG
2=FR_CODDEP
3=FR_CODART
4=FR_DESCR
5=FR_UMQTA
6=FR_QTA
7=FR_PREZZO
8=FR_SCONTO
9=FR_PERCPROV
10=FR_CODIVA
[RIGHE]
NTIPIRIGA=1
1=01
[HANDLERS]
NHANDLER=0
1 = F_ORAPART|1
[PROFILOGRUPPO]
100 = S_NORMALE
200 = S_NORMALE
300 = S_NORMALE
400 = S_NORMALE
500 = S_NORMALE
600 = S_NORMALE
700 = S_NORMALE
800 = S_NORMALE
810 = S_NORMALE
820 = S_NORMALE
830 = S_NORMALE
1100 = S_NORMALE
1210 = S_NORMALE
1500 = S_OBBLIGATORIO
1600 = S_NORMALE
1800 = S_NORMALE
1900 = S_NORMALE
2200 = S_NORMALE
2300 = S_NORMALE
2400 = S_NORMALE
2500 = S_NORMALE
2600 = S_NORMALE
3000 = S_NORMALE
3200 = S_NORMALE
//3300 = S_NASCOSTO
3400 = S_NORMALE
[ORDINEGRUPPI]
NGROUPS=25
1=100
2=200
3=300
4=400
5=500
6=600
7=700
8=800
9=810
10=820
11=1100
12=1210
13=1500
14=830
15=1800
16=1900
17=2200
18=2300
19=2400
20=2500
21=2600
22=3000
23=3200
24=3400
25=1600

View File

@ -63,56 +63,68 @@ static bool riga_art_handler( TMask_field& f, KEY key )
}
void TRiga::load( TToken_string& row )
{
_data.put( "STATORIGA", row.get( FR_STATORIGA - 101 ) );
_data.put( "TIPORIGA", row.get( FR_TIPORIGA - 101 ) );
_data.put( "CODMAG", row.get( FR_CODMAG - 101 ) );
_data.put( "CODART", row.get( FR_CODART - 101 ) );
_data.put( "DESCR", row.get( FR_DESCR - 101 ) );
_data.put( "PREZZO", row.get( FR_PREZZO - 101 ) );
_data.put( "UMQTA", row.get( FR_UMQTA - 101 ) );
_data.put( "QTA", row.get( FR_QTA - 101 ) );
_data.put( "QTAEVASA", row.get( FR_QTAEVASA - 101 ) );
_data.put( "RIGAEVASA", row.get( FR_RIGAEVASA - 101 ) );
_data.put( "TARA", row.get( FR_TARA - 101 ) );
_data.put( "PNETTO", row.get( FR_PNETTO - 101 ) );
_data.put( "NCOLLI", row.get( FR_NCOLLI - 101 ) );
_data.put( "DAEVADERE", row.get( FR_DAEVADERE - 101 ) );
_data.put( "SCONTO", row.get( FR_SCONTO - 101 ) );
_data.put( "PERCPROV", row.get( FR_PERCPROV - 101 ) );
_data.put( "IMPFISSO", row.get( FR_IMPFISSO - 101 ) );
_data.put( "CODIVA", row.get( FR_CODIVA - 101 ) );
_data.put( "ADDIVA", row.get( FR_ADDIVA - 101 ) );
_data.put( "ASPBENI", row.get( FR_ASPBENI - 101 ) );
void TRiga::load(TSheet_field & f, TToken_string& row, TRectype * r)
{
if (r)
_data = *r;
_data.put( "STATORIGA", row.get( f.cid2index(FR_STATORIGA) ) );
_data.put( "TIPORIGA", row.get( f.cid2index(FR_TIPORIGA )) );
TString16 codmag(row.get(f.cid2index(FR_CODMAG)));
codmag.left_just(3);
codmag << row.get( f.cid2index(FR_CODDEP ));
_data.put( "CODMAG", codmag);
_data.put( "CODART", row.get( f.cid2index(FR_CODART )) );
_data.put( "DESCR", row.get( f.cid2index(FR_DESCR )) );
_data.put( "PREZZO", row.get( f.cid2index(FR_PREZZO )) );
_data.put( "UMQTA", row.get( f.cid2index(FR_UMQTA )) );
_data.put( "QTA", row.get( f.cid2index(FR_QTA )) );
_data.put( "QTAEVASA", row.get( f.cid2index(FR_QTAEVASA )) );
_data.put( "RIGAEVASA", row.get( f.cid2index(FR_RIGAEVASA )) );
_data.put( "TARA", row.get( f.cid2index(FR_TARA )) );
_data.put( "PNETTO", row.get( f.cid2index(FR_PNETTO )) );
_data.put( "NCOLLI", row.get( f.cid2index(FR_NCOLLI )) );
_data.put( "DAEVADERE", row.get( f.cid2index(FR_DAEVADERE )) );
_data.put( "SCONTO", row.get( f.cid2index(FR_SCONTO )) );
_data.put( "PERCPROV", row.get( f.cid2index(FR_PERCPROV )) );
_data.put( "IMPFISSO", row.get( f.cid2index(FR_IMPFISSO )) );
_data.put( "CODIVA", row.get( f.cid2index(FR_CODIVA )) );
_data.put( "ADDIVA", row.get( f.cid2index(FR_ADDIVA )) );
_data.put( "ASPBENI", row.get( f.cid2index(FR_ASPBENI )) );
carica_profilo( );
_piede.destroy( );
somma( _piede );
// _piede.put( "G1", _piede.string( ) );
if (r)
*r = _data;
}
void TRiga::save( TToken_string& row )
void TRiga::save(TSheet_field & f, TToken_string& row )
{
row.add( _data.get( "STATORIGA" ), FR_STATORIGA - 101 );
row.add( _data.get( "TIPORIGA" ), FR_TIPORIGA - 101 );
row.add( _data.get( "CODMAG" ), FR_CODMAG - 101 );
row.add( _data.get( "CODART" ), FR_CODART - 101 );
row.add( _data.get( "DESCR" ), FR_DESCR - 101 );
row.add( _data.get( "UMQTA" ), FR_UMQTA - 101 );
row.add( _data.get( "PREZZO" ), FR_PREZZO - 101 );
row.add( _data.get( "QTA" ), FR_QTA - 101 );
row.add( _data.get( "QTAEVASA" ), FR_QTAEVASA - 101 );
row.add( _data.get( "RIGAEVASA" ), FR_RIGAEVASA - 101 );
row.add( _data.get( "TARA" ), FR_TARA - 101 );
row.add( _data.get( "PNETTO" ), FR_PNETTO - 101 );
row.add( _data.get( "NCOLLI" ), FR_NCOLLI - 101 );
row.add( _data.get( "DAEVADERE" ), FR_DAEVADERE - 101 );
row.add( _data.get( "SCONTO" ), FR_SCONTO - 101 );
row.add( _data.get( "PERCPROV" ), FR_PERCPROV - 101 );
row.add( _data.get( "IMPFISSO" ), FR_IMPFISSO - 101 );
row.add( _data.get( "CODIVA" ), FR_CODIVA - 101 );
row.add( _data.get( "ADDIVA" ), FR_ADDIVA - 101 );
row.add( _data.get( "ASPBENI" ), FR_ASPBENI - 101 );
// row.add( _piede.string( ), FR_G1 - 101 ); rimettere
row.add( _data.get( "STATORIGA" ), f.cid2index(FR_STATORIGA ));
row.add( _data.get( "TIPORIGA" ), f.cid2index(FR_TIPORIGA ));
const TString codmag(_data.get("CODMAG"));
row.add( codmag.left(3), f.cid2index(FR_CODMAG ));
row.add( codmag.mid(3), f.cid2index(FR_CODDEP ));
row.add( _data.get( "CODART" ), f.cid2index(FR_CODART ));
row.add( _data.get( "DESCR" ), f.cid2index(FR_DESCR ));
row.add( _data.get( "UMQTA" ), f.cid2index(FR_UMQTA ));
row.add( _data.get( "PREZZO" ), f.cid2index(FR_PREZZO ));
row.add( _data.get( "QTA" ), f.cid2index(FR_QTA ));
row.add( _data.get( "QTAEVASA" ), f.cid2index(FR_QTAEVASA ));
row.add( _data.get( "RIGAEVASA" ), f.cid2index(FR_RIGAEVASA ));
row.add( _data.get( "TARA" ), f.cid2index(FR_TARA ));
row.add( _data.get( "PNETTO" ), f.cid2index(FR_PNETTO ));
row.add( _data.get( "NCOLLI" ), f.cid2index(FR_NCOLLI ));
row.add( _data.get( "DAEVADERE" ), f.cid2index(FR_DAEVADERE ));
row.add( _data.get( "SCONTO" ), f.cid2index(FR_SCONTO ));
row.add( _data.get( "PERCPROV" ), f.cid2index(FR_PERCPROV ));
row.add( _data.get( "IMPFISSO" ), f.cid2index(FR_IMPFISSO ));
row.add( _data.get( "CODIVA" ), f.cid2index(FR_CODIVA ));
row.add( _data.get( "ADDIVA" ), f.cid2index(FR_ADDIVA ));
row.add( _data.get( "ASPBENI" ), f.cid2index(FR_ASPBENI ));
// row.add( _piede.string( ), f.cid2index(FR_G1 )); rimettere
}
void TRiga::load( const TRectype& rec )
@ -124,7 +136,6 @@ void TRiga::load( const TRectype& rec )
void TRiga::save( TRectype& rec )
{
rec = _data;
// rec.put( "G1", _piede.string( ) );
}
void TRiga::carica_profilo( )
@ -154,7 +165,7 @@ void TRiga::configura_sheet( TSheet_field& f, int numriga )
void TRiga::somma( TPiede_documento& piede )
{
// Metti solo i campi numerici poichè sono gli unici che si calcolano
// 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#" );
@ -166,7 +177,7 @@ void TRiga::somma( TPiede_documento& piede )
TString formula = s.get( );
if( formula.blank( ) )
{
// Se non è indicata alcuna formula, la prendo dalla tabella piedi
// Se non h indicata alcuna formula, la prendo dalla tabella piedi
ppd.zero( );
ppd.put( "CODTAB", progpiede );
if( ppd.read( ) == NOERR )

View File

@ -69,9 +69,9 @@ class TRiga : public TObject
int numero( ) { return _data.get_int( "NRIGA" ); }
const TString & tipo( ) const { return _data.get( "TIPORIGA" ); }
// Carica la riga dalla riga dello sheet
void load( TToken_string& row );
void load( TSheet_field& f, TToken_string& row , TRectype * r = NULL);
// Registra la riga sullo sheet
void save( TToken_string& row );
void save( TSheet_field& f, TToken_string& row);
// Legge la riga dal record
void load( const TRectype& rec );
// Scrive la riga sul record

View File

@ -82,7 +82,7 @@ void TSconto::set( const TString& exp, bool signal )
break;
case '.':
case ',':
// Se siamo già nella parte decimale ...
// Se siamo gi` nella parte decimale ...
if( dec )
{
// Segnala un errore
@ -102,7 +102,7 @@ void TSconto::set( const TString& exp, bool signal )
break;
}
}
// Controlla la validità
// Controlla la validit`
_valid = ( _errorpos < 0 );
// Se richiesto segnala l'errore
if( !_valid && signal )
@ -132,7 +132,7 @@ real TSconto::sconto( )
}
TSconto_riga::TSconto_riga( TCliFor& clifo, TMask * testa, TMask * riga ) : _condv( LF_CONDV ), _rcondv( LF_RCONDV ), _anamag( LF_ANAGR ), _sconti( LF_SCONTI ), _ditta( CONFIG_DITTA )
TSconto_riga::TSconto_riga( TCliFor& clifo, TMask * testa, TMask * riga ) : _condv( LF_CONDV ), _rcondv( LF_RCONDV ), _anamag( LF_ANAMAG ), _sconti( LF_SCONTI ), _ditta( CONFIG_DITTA )
{
_clifo = &clifo;
_testa = testa;
@ -152,11 +152,11 @@ bool TSconto_riga::cerca_condv( int tiporicerca )
CHECK( ret == NOERR, "Articolo non trovato in anagrafica di magazzino!" );
}
if( tiporicerca == A_ANAMAG )
// Se ricercavo per anagrafica, ho già finito
// Se ricercavo per anagrafica, ho gi` finito
return TRUE;
if( _ditta.get_bool( "GES", "ve", tiporicerca ) )
{
// Se è attiva la gestione contratti ...
// Se h attiva la gestione contratti ...
_condv.setkey( 1 );
_condv.zero( );
switch( tiporicerca )
@ -166,7 +166,7 @@ bool TSconto_riga::cerca_condv( int tiporicerca )
_condv.blank( "CATVEN" );
if( _ditta.get_bool( "GESSCONCC", "ve" ) )
{
// Se in ditta è abilitata la gestione del cliente in chiave
// Se in ditta h abilitata la gestione del cliente in chiave
// al contratto, lo carico con gioia
_condv.put( "TIPOCF", clifo( ).tipocf( ) );
_condv.put( "CODCF", clifo( ).codcf( ) );
@ -182,7 +182,7 @@ bool TSconto_riga::cerca_condv( int tiporicerca )
_condv.put( "TIPO", "L" );
if( _ditta.get_bool( "GESLISCV", "ve" ) )
{
// Se in ditta è abilitata la gestione del cliente in chiave
// Se in ditta h abilitata la gestione del cliente in chiave
// al contratto, lo carico con gioia
_condv.put( "TIPOCF", clifo( ).tipocf( ) );
_condv.put( "CODCF", clifo( ).codcf( ) );
@ -263,11 +263,11 @@ bool TSconto_riga::cerca_condv( int tiporicerca )
return FALSE;
}
else
// La ricerca non è gestita, impossibile trovarlo ...
// La ricerca non h gestita, impossibile trovarlo ...
return FALSE;
}
// Probabilmente dovrebbe lavorare sulla maschera, ma per ora la lasciamo così
// Probabilmente dovrebbe lavorare sulla maschera, ma per ora la lasciamo cosl
void TSconto_riga::calcola( )
{
char gestione = _ditta.get_char( "GESSCORIGA", "ve" );

View File

@ -1,7 +1,6 @@
#ifndef __VE0100_H
#include "ve0100.h"
#endif
// babbalone #3-4 I can't show these, because they are in the mask
TTipo_documento::TTipo_documento(const char * tipodoc)
: _tipodoc(tipodoc), _mask(NULL)
@ -33,19 +32,30 @@ TMotore_application& app( ) { return ( TMotore_application& ) main_app( ); }
void TMotore_application::init_query_mode( TMask& m )
{
_msk->set( F_CODNUM, _codnum );
_msk->check_field(F_CODNUM);
_msk->set( F_PROFILO, _profilo );
_msk->set( F_TIPODOC, _tipodoc );
_msk->set( F_CODNUM, _codnum);
_msk->field(F_CODNUM).set_focusdirty(TRUE);
_msk->field(F_CODNUM).on_key(K_TAB);
// _msk->check_field(F_CODNUM);
_msk->set( F_PROFILO, _profilo, TRUE);
_msk->set( F_TIPODOC, _tipodoc, TRUE);
}
void TMotore_application::init_insert_mode( TMask& m )
{
TString tipocf( "A" );
tipocf[ 0 ] = app( ).tipocf( );
// m.reset( );
tipocf[ 0 ] = app().tipocf();
m.reset();
m.set(F_PROFILO, _profilo);
m.set(F_CODNUM, _codnum);
m.field(F_CODNUM).on_key(K_TAB);
m.set(F_TIPODOC, _tipodoc);
m.field(F_TIPODOC).on_key(K_TAB);
m.set(F_ANNO, _anno);
m.set(F_PROVV, _tiponum);
m.set(F_NDOC, _numdoc);
m.set( F_DATAINSC, m.get( F_DATADOC ) );
m.set( F_TIPOCF, tipocf );
m.set( F_TIPOCF, tipocf , TRUE);
clifo( ).occas_mask( ).reset( );
int ndefaults = pro( ).get_int( "NDEFAULTS", "DEFAULT" ); // prof
for( int i = 1; i <= ndefaults; i++ )
@ -87,23 +97,23 @@ TMask *TMotore_application::ss_getmask( int numriga, TMask& fullmask, bool destr
}
else
{
TSheet_field* ss = fullmask.get_sheet( );
TToken_string& riga = ss->row( numriga );
const TString tipo(riga.get( FR_TIPORIGA - 101 ));
TSheet_field & ss = *fullmask.get_sheet( );
TToken_string& riga = ss.row( numriga );
const TString tipo(riga.get( ss.cid2index(FR_TIPORIGA)));
if ( tipo.blank() ) return &fullmask;
if ( !r )
r = new TRiga;
if(r->tipo() != tipo)
{
r->load( riga );
r->load(ss, riga);
}
TAssoc_array & row_masks = app()._row_masks;
TMask * row_mask = (TMask *) row_masks.objptr(tipo);
if (row_mask == NULL)
{
row_mask = r->getmask();
row_mask->set_sheet( ss );
row_mask->set_sheet( &ss );
row_masks.add(tipo, row_mask);
}
return( row_mask );
@ -149,56 +159,23 @@ bool TMotore_application::ss_handler( TSheet_field& ss, int r, KEY key )
delete riga;
riga = new TRiga;
riga->load( ss.row( r ) );
riga->load(ss, ss.row( r ));
}
if ( key == K_CTRL + K_TAB ) // Lascio una riga nello sheet
{
// TRelation rdoc( LF_RIGHEDOC );
// TToken_string riga( ss.row( r ) );
// rdoc.curr( ).zero( );
// rdoc.curr( ).put( "CODNUM", app( ).edit_mask( ).get( F_CODNUM ) );
// rdoc.curr( ).put( "ANNO", app( ).edit_mask( ).get( F_ANNO ) );
// rdoc.curr( ).put( "PROVV", app( ).edit_mask( ).get( F_PROVV ) );
// rdoc.curr( ).put( "NDOC", app( ).edit_mask( ).get( F_NDOC ) );
// rdoc.curr( ).put( "NRIGA", riga.get( 1 ) );
// rdoc.read( );
// app( ).edit_mask( ).field( F_MEMORIGA ).autosave( &rdoc );
// rdoc.write( );
}
if ( key == K_INS ) // Inserimento
{
TMask & emask = app().edit_mask();
/*
TTable tabtr( "%TRI" );
tabtr.zero( );
tabtr.put( "CODTAB", app( ).edit_mask( ).get( F_LBTIPORIGA ) );
tabtr.read( );
*/
TToken_string& tsr = ss.row( r );
/*
tsr.add(emask.get( F_ANNO ), FR_ANNO - 101 );
tsr.add(emask.get( F_PROVV ), FR_PROVV - 101 );
tsr.add(emask.get( F_NDOC ), FR_NDOC - 101 );
tsr.add(emask.get( F_CODNUM ), FR_CODNUM - 101 );
*/
tsr.add(emask.get( F_LBTIPORIGA ), FR_TIPORIGA - 101 );
tsr.add("", FR_STATORIGA - 101 );
/*
tsr.add( tabtr.get( "S4" ), FR_PROFRIGA - 101 );
*/
if ( riga )
delete riga;
riga = new TRiga;
riga->load( tsr );
riga->load(ss, tsr);
return TRUE;
}
if ( key == K_CTRL + K_INS ) // Dopo inserimento
}
if (key == K_CTRL + K_INS)
{
riga->configura_sheet( ss, r );
ss.force_update();
ss.select(r);
app( ).curr_mask( ).send_key( K_ROWEDIT, F_SHEET );
return TRUE;
}
if ( key == K_DEL ) // Cancellazione
@ -221,9 +198,9 @@ bool TMotore_application::num_handler( TMask_field& f, KEY key )
// Ottengo la maschera
TMask& m = f.mask( );
if ( key == K_TAB && m.is_running( ) )
if ( key == K_TAB && f.focusdirty() )
{
// Se la numerazione non è specificata,
// Se la numerazione non h specificata,
const TString16 value( m.get( F_CODNUM ) );
if ( value.blank( ) )
{
@ -236,10 +213,11 @@ bool TMotore_application::num_handler( TMask_field& f, KEY key )
return TRUE;
}
// Apro la tabella numerazioni
TTable tabnum( "NUM" );
tabnum.zero( );
tabnum.put( "CODTAB", value );
if ( tabnum.read( ) == NOERR )
TTable & tabnum = ((TTable &) ((TEdit_field &)f).browse()->cursor()->file());
// tabnum.zero( );
// tabnum.put( "CODTAB", value );
if ( tabnum.good())
{
// Copio la descrizione della numerazione
m.set( F_DESNUM, tabnum.get( "S0" ) );
@ -254,7 +232,7 @@ bool TMotore_application::num_handler( TMask_field& f, KEY key )
// m.field( F_TIPODOC ).check( );
m.send_key( K_TAB, F_TIPODOC );
}
// Se per questa numerazione è abilitata le numerazione provvisoria
// Se per questa numerazione h abilitata le numerazione provvisoria
if ( tabnum.get_bool ( "B0" ) )
{
// Setta di default la numerazione provvisoria
@ -273,9 +251,10 @@ bool TMotore_application::num_handler( TMask_field& f, KEY key )
}
message_box( "Numerazione non valida!" );
return FALSE;
}
if ( key == K_ENTER && m.is_running( ) )
{ // Se la numerazione non è specificata,
}
if ( key == K_ENTER && f.dirty() )
{ // Se la numerazione non h specificata,
const TString16 value( m.get( F_CODNUM ) );
if ( value.blank( ) )
{
@ -340,13 +319,6 @@ bool TMotore_application::tip_handler( TMask_field& f, KEY key )
TMask& m = f.mask( );
if ( key == K_TAB && m.is_running( ) && m.get(F_TIPODOC).not_empty())
{
// const TString16 value( m.get( F_TIPODOC ) );
// if (value.blank())
// {
// Pulisce il profilo
// m.set( F_PROFILO, "" );
// return TRUE;
// }
TString tipi_consentiti( m.get( F_TIPIDOCS ) );
TString16 tipo( f.get( ) );
tipo.trim( );
@ -380,7 +352,7 @@ bool TMotore_application::tip_handler( TMask_field& f, KEY key )
return TRUE;
}
bool TMotore_application::ndoc_handler( TMask_field& f, KEY key )
/* bool TMotore_application::ndoc_handler( TMask_field& f, KEY key )
{
TMask& m = f.mask( );
if ( key == K_TAB && m.is_running( ) )
@ -396,19 +368,16 @@ bool TMotore_application::ndoc_handler( TMask_field& f, KEY key )
m.set( F_TIPODOC, doc.get( "TIPODOC" ) );
m.send_key(K_TAB, F_TIPODOC);
m.set( F_STATO, doc.get( "STATO" ) );
// TTable tabtip( "%TIP" );
// tabtip.put( "CODTAB", doc.get( "TIPODOC" ) );
// tabtip.read( );
// m.set( F_PROFILO, tabtip.get( "S4" ) );
m.stop_run( K_AUTO_ENTER );
}
}
return TRUE;
}
}
*/
bool TMotore_application::clifo_handler( TMask_field& f, KEY key )
{
if ( key == K_TAB && f.active( ) )
if (f.to_check(key))
{
TMask& m = f.mask( );
@ -421,12 +390,9 @@ bool TMotore_application::clifo_handler( TMask_field& f, KEY key )
clifo.put( "TIPOCF", cf );
clifo.put( "CODCF", f.get( ) );
clifo.read( );
CHECK( clifo.good( ), "Impossibile ritrovare il clifo" );
}
CHECKD( f.is_edit( ), "Can't check suspension of a non edit-field ", f.dlg( ) );
const TEdit_field& c = ( const TEdit_field& )f;
const TBrowse* b = c.browse( );
CHECKD( b, "Can't check suspension of a edit-field without a USE ", f.dlg( ) );
const TLocalisamfile& i = b->cursor( )->file( );
// Tabella File
const char* sf = i.tab( ) ? "B2" : "SOSPESO";
@ -436,18 +402,11 @@ bool TMotore_application::clifo_handler( TMask_field& f, KEY key )
sf = f.get( );
return f.error_box( "Il codice '%s' e' sospeso e non puo' essere utilizzato", sf );
}
/*
if ( !m.is_running( ) || f.dirty( ) )
{
// Equichecazzociva?
}
*/
// Disabilitazioni varie, ma le demando all'oggetto cliente
if ( f.focusdirty( ) )
if (key == K_TAB)
{
app( ).clifo( ).load( cf, atol( f.get( ) ), "" );
app( ).clifo( ).update_mask( m );
app().clifo( ).load( cf, atol( f.get( ) ), "" );
app().clifo( ).update_mask( m );
if( f.mask( ).id2pos( F_OCCASEDIT ) > 0 )
{
if ( app( ).clifo( ).occasionale( ) && app( ).clifo( ).occas_mask( ).get( O_CODICE ).empty( ) )
@ -524,7 +483,10 @@ void TMotore_application::configura_sheet( TSheet_field& sheet, TConfig& config
if (size != 0)
sheet.set_column_width( field_id, size);
}
}
to_delete.reset(0);
to_delete.reset(1);
for ( i = MAX_COLUMNS - 1; i >= 0; i-- )
if( to_delete[i] ) sheet.delete_column( i + FIRST_FIELD);
}
@ -581,6 +543,14 @@ void TMotore_application::get_edit_mask( const char * profilo )
listbox.replace_items( keys, descrs );
configura_sheet( *_sheet, *_pro );
((TVariable_sheet_field&)sheet()).set_getmask( ss_getmask );
if (_msk1->id2pos( F_OCCASEDIT ) > 0 )
_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_CODPAG, condpag_hndl );
_msk1->set_handler( F_DATAINSC, condpag_hndl );
// _msk1->set_handler( 99, elabora_handler );
int numhandler = pro( ).get_int( "NHANDLER", "HANDLERS" ); // prof
for ( i = 1; i <= numhandler; i ++ )
{
@ -608,14 +578,6 @@ TMask* TMotore_application::get_mask( int mode )
_numdoc = _msk->get_long(F_NDOC);
get_edit_mask( _profilo );
TMask & emask = edit_mask();
if (emask.id2pos( F_OCCASEDIT ) > 0 )
emask.set_handler( F_OCCASEDIT, occas_handler );
if ( emask.id2pos( F_CODVAL ) > 0 )
emask.set_handler( F_CODVAL, val_handler );
emask.set_handler( F_CODCF, clifo_handler );
emask.set_handler( F_CODPAG, condpag_hndl );
emask.set_handler( F_DATAINSC, condpag_hndl );
// edit_mask( ).set_handler( 99, elabora_handler );
return( &emask );
break;
}
@ -654,7 +616,7 @@ const char* TMotore_application::get_next_key( )
tabnum.put( "CODTAB", value );
if ( tabnum.read( ) == NOERR )
{
// Se per questa numerazione è abilitata le numerazione automatica
// Se per questa numerazione h abilitata le numerazione automatica
if ( tabnum.get_bool ( "B1" ) )
{
TLocalisamfile doc( LF_DOC );
@ -662,7 +624,7 @@ const char* TMotore_application::get_next_key( )
doc.put( "CODNUM", value );
doc.put( "ANNO", m.get( F_ANNO ) );
doc.put( "NDOC", 9999999L );
// Se per questa numerazione è abilitata le numerazione provvisoria
// Se per questa numerazione h abilitata le numerazione provvisoria
if ( tabnum.get_bool ( "B0" ) )
{
doc.put( "PROVV", "P" );
@ -689,18 +651,22 @@ int TMotore_application::read( TMask& m )
int err = TRelation_application::read( m );
if ( err == NOERR )
{
// edit_mask( ).set( F_DESNUM, query_mask( ).get( F_DESNUM ) );
// edit_mask( ).set( F_DESTIPODOC, query_mask( ).get( F_DESTIPODOC ) );
const char tipocf = m.get( F_TIPOCF )[ 0 ];
clifo( ).load( tipocf, m.get_int( F_CODCF ), rel( ).curr( ).get( "OCFPI" ) );
clifo( ).update_mask( ( TVariable_mask& ) m, TRUE );
TLocalisamfile& rdoc = rel( ).lfile( LF_RIGHEDOC );
TRectype r(rdoc.curr( ));
// TLocalisamfile& rdoc = rel( ).lfile( LF_RIGHEDOC );
TRectype r(_rdoc->curr( ));
r.zero( );
/*
r.put( "CODNUM", _codnum);
r.put( "PROVV", _tiponum);
r.put( "ANNO", _anno);
r.put( "NDOC", _numdoc);
*/
r.put( "CODNUM", m.get(F_CODNUM));
r.put( "PROVV", m.get(F_PROVV));
r.put( "ANNO", m.get(F_ANNO));
r.put( "NDOC", m.get(F_NDOC));
_righe_rec->read( r );
TSheet_field& f = ( TSheet_field& ) m.field( F_SHEET );
f.destroy( );
@ -712,8 +678,8 @@ int TMotore_application::read( TMask& m )
TRiga currentrow;
currentrow.load( rec );
currentrow.save( srow );
currentrow.configura_sheet( f, i - 1 );
currentrow.save(f, srow);
f.post_insert(i - 1);
currentrow.somma( _piede );
}
carica_piedi( );
@ -729,68 +695,71 @@ bool TMotore_application::check_key( TLocalisamfile& rdoc, TString16 codnum, boo
( rdoc.get_bool( "PROVV" ) == provv ) );
}
int TMotore_application::write( const TMask& m )
int TMotore_application::write( const TMask& m ) // C 90
{
int err = NOERR;
if (esegui_procedura(OP_NUOVO) != NOERR )
return FALSE;
m.field(F_STATO).set( _pro->get( "STATOFINALE", "INSERIMENTO" ) );
if ( m.id2pos( F_OCCASEDIT) > 0 )
err = app( ).clifo( ).write_occas( );
if ( err == NOERR )
{
err = TRelation_application::write( m );
int err = esegui_procedura(OP_NUOVO);
if (err == NOERR)
{
m.field(F_STATO).set( _pro->get( "STATOFINALE", "INSERIMENTO" ) );
if ( m.id2pos( F_OCCASEDIT) > 0 )
err = app().clifo().write_occas();
if ( err == NOERR )
{
TSheet_field& f = ss( );
_righe_rec->destroy_rows( );
TRectype * rec = new TRectype(_righe_rec->key());
TRelation * rel = get_relation();
rec->put("CODNUM", rel->lfile().get("CODNUM"));
rec->put("ANNO", rel->lfile().get("ANNO"));
rec->put("PROVV", rel->lfile().get("PROVV"));
rec->put("NDOC", rel->lfile().get("NDOC"));
_righe_rec->set_key(rec);
for ( int i = 0; i < f.items( ); i ++ )
{
TToken_string& t = f.row( i );
TRectype& rec = _righe_rec->row( i + 1, TRUE );
store_riga( f, i, rec );
}
err = _righe_rec->write( );
{
err = TRelation_application::write( m );
if ( err == NOERR )
{
TSheet_field& f = ss( );
_righe_rec->destroy_rows( );
((TRectype &)_righe_rec->key()).zero();
/*
_righe_rec->renum_key("CODNUM", _codnum);
_righe_rec->renum_key("PROVV", _tiponum);
_righe_rec->renum_key("ANNO", _anno);
_righe_rec->renum_key("NDOC", _numdoc);
*/
_righe_rec->renum_key( "CODNUM", m.get(F_CODNUM));
_righe_rec->renum_key( "PROVV", m.get(F_PROVV));
_righe_rec->renum_key( "ANNO", m.get(F_ANNO));
_righe_rec->renum_key( "NDOC", m.get(F_NDOC));
for ( int i = 0; i < f.items( ); i ++ )
{
TToken_string& t = f.row( i );
TRectype& rec = _righe_rec->row( i + 1, TRUE );
store_riga( f, i, rec );
}
err = _righe_rec->write( );
}
}
}
return err;
}
int TMotore_application::rewrite( const TMask& m )
int TMotore_application::rewrite( const TMask& m ) // C 90
{
int err = NOERR;
if ( ! valida_operazione( OP_MODIFICA ) )
return FALSE;
if ( m.id2pos( F_OCCASEDIT) > 0 )
err = app( ).clifo( ).write_occas( );
if ( err == NOERR )
{
err = TRelation_application::rewrite( m );
if (!valida_operazione(OP_MODIFICA))
return NOERR; // Errore gia' segnalato
int err = esegui_procedura(OP_MODIFICA);
if (err == NOERR)
{
if ( m.id2pos( F_OCCASEDIT) > 0 )
err = app( ).clifo( ).write_occas( );
if ( err == NOERR )
{
TSheet_field& f = ss( );
_righe_rec->destroy_rows( );
TRectype * rec = new TRectype(_righe_rec->key());
TRelation * rel = get_relation();
rec->put("CODNUM", rel->lfile().get("CODNUM"));
rec->put("ANNO", rel->lfile().get("ANNO"));
rec->put("PROVV", rel->lfile().get("PROVV"));
rec->put("NDOC", rel->lfile().get("NDOC"));
_righe_rec->set_key(rec);
for ( int i = 0; i < f.items( ); i ++ )
{
TToken_string& t = f.row( i );
TRectype& rec = _righe_rec->row( i + 1, TRUE );
store_riga( f, i, rec );
}
err = _righe_rec->rewrite( );
{
err = TRelation_application::rewrite( m );
if ( err == NOERR )
{
TSheet_field& f = ss( );
_righe_rec->destroy_rows( );
for ( int i = 0; i < f.items( ); i ++ )
{
TToken_string& t = f.row( i );
TRectype& rec = _righe_rec->row( i + 1, TRUE );
store_riga( f, i, rec );
}
err = _righe_rec->rewrite( );
}
}
}
return err;
@ -828,11 +797,12 @@ int TMotore_application::avanza_numero( bool provv )
return err;
}
bool TMotore_application::remove( void )
bool TMotore_application::remove( void ) // C 80
{
if ( ! valida_operazione( OP_CANCELLA ) )
return FALSE;
return TRelation_application::remove && ( _righe_rec->remove( ) == NOERR );
return FALSE;
int err = esegui_procedura(OP_CANCELLA);
return TRelation_application::remove() && ( _righe_rec->remove() == NOERR );
}
void TMotore_application::load_riga( TSheet_field& f, int numrig, TRectype& r )
@ -881,17 +851,18 @@ void TMotore_application::load_riga( TSheet_field& f, int numrig, TRectype& r )
void TMotore_application::store_riga( TSheet_field& f, int numrig, TRectype& r )
{
TToken_string& rigastr = f.row( numrig );
TRiga riga;
riga.load( rigastr );
riga.set_numero( numrig + 1 );
TRiga riga;
riga.load(f, rigastr, &r);
// riga.set_numero( numrig + 1 );
riga.save( r );
}
bool TMotore_application::user_create( )
{
// Metto in relazione testata e righe
_rel = new TRelation( LF_DOC ); // babbalone #5 creava file dopo maschera che la conteneva
rel( ).add( LF_RIGHEDOC,"CODNUM=CODNUM|ANNO=ANNO|PROVV=PROVV|NDOC=NDOC" );
_rel = new TRelation( LF_DOC );
_rdoc = new TLocalisamfile(LF_RIGHEDOC);
// rel( ).add( LF_RIGHEDOC,"CODNUM=CODNUM|ANNO=ANNO|PROVV=PROVV|NDOC=NDOC" );
// Inizializzo il Record_array
_righe_rec = new TRecord_array( LF_RIGHEDOC, "NRIGA", 1 );
@ -910,7 +881,7 @@ bool TMotore_application::user_create( )
_clifor = new TCliForVendite( );
azzera_piedi( );
_msk = new TMask( "ve1000a" );
query_mask( ).set_handler( F_NDOC, ndoc_handler );
// query_mask( ).set_handler( F_NDOC, ndoc_handler );
query_mask( ).set_handler( F_CODNUM, num_handler );
query_mask( ).set_handler( F_TIPODOC, tip_handler );
TConfig utente( CONFIG_USER );
@ -929,9 +900,6 @@ bool TMotore_application::user_destroy( )
TConfig utente( CONFIG_USER );
utente.set( "CODNUM", _codnum, "ve" );
utente.set( "TIPODOC", _tipodoc, "ve" );
// utente.set( "DESNUM", query_mask( ).get( F_DESNUM ), "ve" );
// utente.set( "DESTIPODOC", query_mask( ).get( F_DESTIPODOC ), "ve" );
// utente.set( "PROFILO", _profilo, "ve" );
// Distruggo la maschera di modifica
if ( _msk != NULL )
@ -939,6 +907,7 @@ bool TMotore_application::user_destroy( )
// Distruggo la relazione
delete _rel;
delete _rdoc;
// Distruggo il Record_array
delete _righe_rec;
@ -955,18 +924,13 @@ int TMotore_application::esegui_procedura( int operazione )
return ( NOERR );
}
bool TMotore_application::valida_operazione( int operazione )
bool TMotore_application::valida_operazione( int operazione ) // C 90
{
if ( operazione != OP_NUOVO )
{
if ( !stato_valido( stato_corrente( ), operazione ) )
{
segnala_stato_non_valido( operazione );
return FALSE;
}
}
if ( esegui_procedura( operazione ) != NOERR )
if (operazione != OP_NUOVO && !stato_valido( stato_corrente( ), operazione))
{
segnala_stato_non_valido( operazione );
return FALSE;
}
return TRUE;
}

View File

@ -1,6 +1,6 @@
#ifndef __VE0100_H
#define __VE0100_H
// Operazioni che può fare il motore su un documento
// Operazioni che pur fare il motore su un documento
#define OP_NUOVO 1
#define OP_MODIFICA 2
@ -18,7 +18,7 @@
#define F_MEMORIGA 501
#define BASE_PIEDE 600
#define CHANGE_MESSAGE "Sono state effettuate modifiche alla configurazione.\nPrima di eseguire la gestione documenti occorrerà rigenerare le maschere.\nDesideri farlo ora ?"
#define CHANGE_MESSAGE "Sono state effettuate modifiche alla configurazione.\nPrima di eseguire la gestione documenti occorrer` rigenerare le maschere.\nDesideri farlo ora ?"
// Modifiche pianificate per il dopo/cattolica:
// Rorganizzazione del codice come:
@ -156,7 +156,7 @@ class TMotore_application : public TRelation_application
// Puntatore al profilo del documento caricato
TConfig* _pro;
// Puntatore al nome, per evitare di ricrearlo se è uguale
// Puntatore al nome, per evitare di ricrearlo se h uguale
TFilename* _proname;
// Puntatore alla maschera di ricerca
@ -167,6 +167,7 @@ class TMotore_application : public TRelation_application
// puntatore alla relazione
TRelation* _rel;
TLocalisamfile * _rdoc;
// Puntatore allo sheet delle righe documento
TSheet_field * _sheet;
@ -223,7 +224,7 @@ class TMotore_application : public TRelation_application
void somma_piedi( );
void sottrai_piedi( );
// Esegue, se c'è, la procedura utente relativa ad una certa operazione
// Esegue, se c'h, la procedura utente relativa ad una certa operazione
int esegui_procedura( int operazione );
protected:

File diff suppressed because it is too large Load Diff

View File

@ -1,272 +1,272 @@
#include "VeUML1.h"
\#include "VeUML1.h"
TIPOCF |TIPOCF |F_TIPOCF |2|Tipo cliente/fornitore |1|
TIPOCF |TIPOCF |F_TIPOCF |2|Tipo cliente/fornitore |1|
CODCF |CODCF |F_CODCF |3|Codice cliente/fornitore |6|R|§
LF_CLIFO KEY 1|§
CODCF F_CODCF|§
"Codice" LF_CLIFO->CODCF~"Ragione sociale@50" LF_CLIFO->RAGSOC~"Indirizzo@35" LF_CLIFO->INDCF|§
F_CODCF LF_CLIFO->CODCF~F_RAGSOC LF_CLIFO->RAGSOC~F_INDCF LF_CLIFO->INDCF~§
F_CIVCF LF_CLIFO->CIVCF~F_CODAG LF_CFVEN->CODAG~F_CODVAL LF_CLIFO->CODVAL~§
F_OCCAS LF_CLIFO->OCCAS~F_CODLIN LF_CLIFO->CODLIN~F_CODABIA LF_CLIFO->CODABI~§
F_CODCABA LF_CLIFO->CODCAB~F_CODLIST LF_CFVEN->CODLIST~§
F_CODPAG LF_CLIFO->CODPAG|§
HELP "Inserire il codice del cliente"~§
WARNING "Cliente non presente"~§
JOIN LF_CFVEN TO LF_CLIFO KEY 1 INTO TIPOCF=TIPOCF CODCF=CODCF|
LF_CLIFO KEY 1|§
CODCF F_CODCF|§
"Codice" LF_CLIFO->CODCF~"Ragione sociale@50" LF_CLIFO->RAGSOC~"Indirizzo@35" LF_CLIFO->INDCF|§
F_CODCF LF_CLIFO->CODCF~F_RAGSOC LF_CLIFO->RAGSOC~F_INDCF LF_CLIFO->INDCF~§
F_CIVCF LF_CLIFO->CIVCF~F_CODAG LF_CFVEN->CODAG~F_CODVAL LF_CLIFO->CODVAL~§
F_OCCAS LF_CLIFO->OCCAS~F_CODLIN LF_CLIFO->CODLIN~F_CODABIA LF_CLIFO->CODABI~§
F_CODCABA LF_CLIFO->CODCAB~F_CODLIST LF_CFVEN->CODLIST~§
F_CODPAG LF_CLIFO->CODPAG|§
HELP "Inserire il codice del cliente"~§
WARNING "Cliente non presente"~§
JOIN LF_CFVEN TO LF_CLIFO KEY 1 INTO TIPOCF=TIPOCF CODCF=CODCF|
RAGSOC | |F_RAGSOC |2|Ragione sociale |50|U|§
LF_CLIFO KEY 2|§
RAGSOC F_RAGSOC|§
"Ragione sociale@50" LF_CLIFO->RAGSOC~"Codice" LF_CLIFO->CODCF~"Indrizzo@35" LF_CLIFO->INDCF|§
|COPY OUTPUT F_CODCF~§
HELP "Inserire la ragione sociale della ditta"~§
WARNING "Ragione sociale non trovata"§
~JOIN LF_CFVEN TO LF_CLIFO KEY 1 INTO TIPOCF=TIPOCF CODCF=CODCF|
LF_CLIFO KEY 2|§
RAGSOC F_RAGSOC|§
"Ragione sociale@50" LF_CLIFO->RAGSOC~"Codice" LF_CLIFO->CODCF~"Indrizzo@35" LF_CLIFO->INDCF|§
|COPY OUTPUT F_CODCF~§
HELP "Inserire la ragione sociale della ditta"~§
WARNING "Ragione sociale non trovata"§
~JOIN LF_CFVEN TO LF_CLIFO KEY 1 INTO TIPOCF=TIPOCF CODCF=CODCF|
INDCF | |F_INDCF |2|Indirizzo |35|U|
CIVCF | |F_CIVCF |2|N. |3|R|
OCFPI |OCFPI |F_OCFPI |2|Partita IVA |16|
OCCAS |OCCAS |F_OCCAS |4|Clienti occasionali ||
OCCAS |OCCAS |F_OCCAS |4|Clienti occasionali ||
CODVAL |CODVAL |F_CODVAL |2|Codice valuta |3|U|§
%VAL|§
CODTAB F_CODVAL|§
"Codice" CODTAB~"Valuta@25" S0~"Cambio" R0|§
F_CODVAL CODTAB~F_NOME_VAL S0~F_CAMBIO R0|§
HELP "Inserisci il codice della valuta"~§
WARNING "Codice valuta non trovata"|
%VAL|§
CODTAB F_CODVAL|§
"Codice" CODTAB~"Valuta@25" S0~"Cambio" R0|§
F_CODVAL CODTAB~F_NOME_VAL S0~F_CAMBIO R0|§
HELP "Inserisci il codice della valuta"~§
WARNING "Codice valuta non trovata"|
CAMBIO |CAMBIO |F_CAMBIO |3|Cambio |1505|R|
NOME_VAL | |F_NOME_VAL |2|Valuta |25|U|
CODLIN |CODLIN |F_CODLIN |2|Codice lingua |1|U|
RAGGR |RAGGR |F_RAGGR |4|Raggruppamenti ||
RAGGR |RAGGR |F_RAGGR |4|Raggruppamenti ||
CODPAG |CODPAG |F_CODPAG |2|Codice pagamento |4|U|§
%CPG|§
CODTAB F_CODPAG|§
"Codice" CODTAB~"Descrizione@50" S0|§
F_CODPAG CODTAB~F_DESCODPAG S0|§
HELP "Inserisci il codice del tipo di pagamento"§
~WARNING "Codice tipo pagamento non trovato"|
%CPG|§
CODTAB F_CODPAG|§
"Codice" CODTAB~"Descrizione@50" S0|§
F_CODPAG CODTAB~F_DESCODPAG S0|§
HELP "Inserisci il codice del tipo di pagamento"§
~WARNING "Codice tipo pagamento non trovato"|
DESCODPAG | |F_DESCODPAG |2|Pagamento |7050|
DESCODPAG | |F_DESCODPAG |2|Pagamento |7050|
DATAINSC |DATAINSC |F_DATAINSC |1|Data inizio scadenza ||A|||||§
HELP "Inserisci la data di inizio scadenza"§
~WARNING "E' richiesta una data valida"|
HELP "Inserisci la data di inizio scadenza"§
~WARNING "E' richiesta una data valida"|
DATASCAD1 | |F_DATASCAD1 |1|Data prima scadenza ||
DATASCAD2 | |F_DATASCAD2 |1|Data seconda scadenza ||
DATASCAD3 | |F_DATASCAD3 |1|Data terza scadenza ||
DATASCAD4 | |F_DATASCAD4 |1|Data quarta scadenza ||
DATASCAD5 | |F_DATASCAD5 |1|Data quinta scadenza ||
DATASCAD1 | |F_DATASCAD1 |1|Data prima scadenza ||
DATASCAD2 | |F_DATASCAD2 |1|Data seconda scadenza ||
DATASCAD3 | |F_DATASCAD3 |1|Data terza scadenza ||
DATASCAD4 | |F_DATASCAD4 |1|Data quarta scadenza ||
DATASCAD5 | |F_DATASCAD5 |1|Data quinta scadenza ||
CODABIA |CODABIA |F_CODABIA |3|Codice ABI banca d'appoggio |5|Z|§
%BAN KEY 1|§
CODTAB[1,5] F_CODABIA~CODTAB[6,10] F_CODCABA|§
"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Denominazione@50" S0|§
F_CODABIA CODTAB[1,5]~F_CODCABA CODTAB[6,10]~F_BANCA_APP S0|§
HELP "Inserisci il codice della Banca (istituto)"~§
WARNING "Codice Banca non trovato"|
%BAN KEY 1|§
CODTAB[1,5] F_CODABIA~CODTAB[6,10] F_CODCABA|§
"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Denominazione@50" S0|§
F_CODABIA CODTAB[1,5]~F_CODCABA CODTAB[6,10]~F_BANCA_APP S0|§
HELP "Inserisci il codice della Banca (istituto)"~§
WARNING "Codice Banca non trovato"|
CODCABA |CODCABA |F_CODCABA |3|Codice CAB banca d'appoggio |5|Z§
|§F_CODABIA||§
"Cod. Fil." CODTAB[6,10]~"Cod. Istit." CODTAB[1,5]~"Denominazione@50" S0||§
COPY INPUT F_CODABIA~§
COPY OUTPUT F_CODABIA~§
HELP "Inserisci il codice della filiale"~§
WARNING "Codice della filiale non trovato"|
|§F_CODABIA||§
"Cod. Fil." CODTAB[6,10]~"Cod. Istit." CODTAB[1,5]~"Denominazione@50" S0||§
COPY INPUT F_CODABIA~§
COPY OUTPUT F_CODABIA~§
HELP "Inserisci il codice della filiale"~§
WARNING "Codice della filiale non trovato"|
BANCA_APP | |F_BANCA_APP |2|Denominazione |50|U|§
%BAN KEY 2|§
S0 F_BANCA_APP|§
"Denominazione@50" S0~"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]||§
COPY OUTPUT F_CODABIA~§
HELP "Inserisci il nome della Banca"~§
WARNING "Nome di Banca non trovato."|
%BAN KEY 2|§
S0 F_BANCA_APP|§
"Denominazione@50" S0~"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]||§
COPY OUTPUT F_CODABIA~§
HELP "Inserisci il nome della Banca"~§
WARNING "Nome di Banca non trovato."|
CODABIP |CODABIP |F_CODABIP |3|Codice ABI banca provenienza |5|Z|§
%BAN KEY 1|§
CODTAB[1,5] F_CODABIP~CODTAB[6,10] F_CODCABP|§
"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Denominazione@50" S0|§
F_CODABIP CODTAB[1,5]~F_CODCABP CODTAB[6,10]~F_BANCA_PRE S0|§
HELP "Inserisci il codice della Banca (istituto)"~§
WARNING "Codice Banca non trovato"|
%BAN KEY 1|§
CODTAB[1,5] F_CODABIP~CODTAB[6,10] F_CODCABP|§
"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]~"Denominazione@50" S0|§
F_CODABIP CODTAB[1,5]~F_CODCABP CODTAB[6,10]~F_BANCA_PRE S0|§
HELP "Inserisci il codice della Banca (istituto)"~§
WARNING "Codice Banca non trovato"|
CODCABP |CODCABP |F_CODCABP |3|Codice CAB banca provenienza |5|Z§
|§F_CODABIP||§
"Cod. Fil." CODTAB[6,10]~"Cod. Istit." CODTAB[1,5]~"Denominazione@50" S0||§
COPY INPUT F_CODABIP~§
COPY OUTPUT F_CODABIP~§
HELP "Inserisci il codice della filiale"~§
WARNING "Codice della filiale non trovato"|
|§F_CODABIP||§
"Cod. Fil." CODTAB[6,10]~"Cod. Istit." CODTAB[1,5]~"Denominazione@50" S0||§
COPY INPUT F_CODABIP~§
COPY OUTPUT F_CODABIP~§
HELP "Inserisci il codice della filiale"~§
WARNING "Codice della filiale non trovato"|
BANCA_PRE | |F_BANCA_PRE |2|Denominazione |50|U|§
%BAN KEY 2|§
S0 F_BANCA_PRE|§
"Denominazione@50" S0~"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]||§
COPY OUTPUT F_CODABIP~§
HELP "Inserisci il nome della Banca"~§
WARNING "Nome di Banca non trovato."|
%BAN KEY 2|§
S0 F_BANCA_PRE|§
"Denominazione@50" S0~"Cod. Istit." CODTAB[1,5]~"Cod. Fil." CODTAB[6,10]||§
COPY OUTPUT F_CODABIP~§
HELP "Inserisci il nome della Banca"~§
WARNING "Nome di Banca non trovato."|
CODLIST |CODLIST |F_CODLIST |2|Codice listini |5|U|||||§
HELP "Inserisci il codice del listino"~§
WARNING "Codice del listino non corretto o non presente !!!"|
HELP "Inserisci il codice del listino"~§
WARNING "Codice del listino non corretto o non presente !!!"|
CODCONT |CODCONT |F_CODCONT |2|Codice contratti |2|
CODCAMP |CODCAMP |F_CODCAMP |2|Codice campagne |1|
SCONTOPERC|SCONTOPERC |F_SCONTOPERC |3|Percentuale di sconto |0602|
CODINDSP |CODINDSP |F_CODINDSP |2|Codice indirizzo spedizione |3||§
LF_INDSP|§
TIPOCF F_TIPOCF~CODCF F_CODCF SELECT~CODIND F_CODINDSP|§
"Codice" CODIND~"Indirizzo@35" INDIR|§
CODCONT |CODCONT |F_CODCONT |2|Codice contratti |2|
CODCAMP |CODCAMP |F_CODCAMP |2|Codice campagne |1|
SCONTOPERC|SCONTOPERC |F_SCONTOPERC |3|Percentuale di sconto |0602|
CODINDSP |CODINDSP |F_CODINDSP |2|Codice indirizzo spedizione |3||§
LF_INDSP|§
TIPOCF F_TIPOCF~CODCF F_CODCF SELECT~CODIND F_CODINDSP|§
"Codice" CODIND~"Indirizzo@35" INDIR|§
F_CODINDSP CODIND~F_INDSP INDIR~F_CIVSP CIV~F_CAPSP CAP~F_LOCALITASP LOCALITA|§
HELP "Inserisci il codice dell'indirizzo di spedizione"~§
WARNING "Indirizzo di spedizione non trovato"|
WARNING "Indirizzo di spedizione non trovato"|
INDSP | |F_INDSP |2|Indirizzo di spedizione |35|U|
CIVSP | |F_CIVSP |2|Numero civico |10|R|
CAPSP | |F_CAPSP |2|CAP |5|R|
LOCALITASP| |F_LOCALITASP |2|Località |35|R|
DATADOCRIF|DATADOCRIF |F_DATADOCRIF |1|Data del documento di riferimento ||
NUMDOCRIF |NUMDOCRIF |F_NUMDOCRIF |2|Numero del documento di riferimento |7|
CODAG |CODAG |F_CODAG |2|Codice |2|
CODAGVIS |CODAGVIS |F_CODAGVIS |2|Codice |2|
DATADOCRIF|DATADOCRIF |F_DATADOCRIF |1|Data del documento di riferimento ||
NUMDOCRIF |NUMDOCRIF |F_NUMDOCRIF |2|Numero del documento di riferimento |7|
CODAG |CODAG |F_CODAG |2|Codice |2|
CODAGVIS |CODAGVIS |F_CODAGVIS |2|Codice |2|
CODSPMEZZO|CODSPMEZZO |F_CODSPMEZZO |5|Codice spedizione mezzo |2||||||§
HELP "Trasporto a mezzo di VETTORE, MITTENTE o DESTINATARIO"~§
WARNING "Il tipo di vettore pùo essere solo 1,2 o 3"|§
HELP "Trasporto a mezzo di VETTORE, MITTENTE o DESTINATARIO"~§
WARNING "Il tipo di vettore pùo essere solo 1,2 o 3"|§
1§MITTENTE £DISABLE,GR_VETTORI@~§
2§VETTORE £ENABLE,GR_VETTORI@~§
3§DESTINATARIO£DISABLE,GR_VETTORI@
CODPORTO |CODPORTO |F_CODPORTO |2|Codice porto |2||§
%POR|§
CODTAB F_CODPORTO|§
"Codice" CODTAB~"Porto@50" S0|F_CODPORTO CODTAB~F_PORTO S0|§
HELP "Inserisci il codice del porto"§
~WARNING "Codice porto non trovato"|
CODPORTO |CODPORTO |F_CODPORTO |2|Codice porto |2||§
%POR|§
CODTAB F_CODPORTO|§
"Codice" CODTAB~"Porto@50" S0|F_CODPORTO CODTAB~F_PORTO S0|§
HELP "Inserisci il codice del porto"§
~WARNING "Codice porto non trovato"|
PORTO | |F_PORTO |2|Porto |50|
CODNOTESP1|CODNOTESP1 |F_CODNOTESP1 |2|Codice note spese 1 |2|
CODNOTESP2|CODNOTESP2 |F_CODNOTESP2 |2|Codice note spese 2 |2|
PORTO | |F_PORTO |2|Porto |50|
CODNOTESP1|CODNOTESP1 |F_CODNOTESP1 |2|Codice note spese 1 |2|
CODNOTESP2|CODNOTESP2 |F_CODNOTESP2 |2|Codice note spese 2 |2|
CAUSTRASP |CAUSTRASP |F_CAUSTRASP |2|Codice causale trasporto |2||§
%CLR|§
CODTAB F_CAUSTRASP|§
"Codice" CODTAB~"Causale trasporto@50" S0|§
F_CAUSTRASP CODTAB~F_DENCAUSTRASP S0|§
HELP "Inserisci il codice dalla causale del trasporto"~§
WARNING "Codice di causale non trovato"|
%CLR|§
CODTAB F_CAUSTRASP|§
"Codice" CODTAB~"Causale trasporto@50" S0|§
F_CAUSTRASP CODTAB~F_DENCAUSTRASP S0|§
HELP "Inserisci il codice dalla causale del trasporto"~§
WARNING "Codice di causale non trovato"|
DENCAUSTRASP| |F_DENCAUSTRASP |2|Causale trasporto |2|U|
CODVETT1 |CODVETT1 |F_CODVETT1 |2|Codice vettore 1 |3||§
%VET|§
CODTAB F_CODVETT1|§
"Codice" CODTAB~"Nome@50" S0|§
F_CODVETT1 CODTAB~F_NOMEVETT1 S0|§
HELP "Inserisci il codice del primo (o unico) vettore"~§
WARNING "Codice primo vettore non trovato"~GROUP GR_VETTORI|
CODVETT1 |CODVETT1 |F_CODVETT1 |2|Codice vettore 1 |3||§
%VET|§
CODTAB F_CODVETT1|§
"Codice" CODTAB~"Nome@50" S0|§
F_CODVETT1 CODTAB~F_NOMEVETT1 S0|§
HELP "Inserisci il codice del primo (o unico) vettore"~§
WARNING "Codice primo vettore non trovato"~GROUP GR_VETTORI|
NOMEVETT1 | |F_NOMEVETT1 |2|Vettore 1 |50|
CODVETT2 |CODVETT2 |F_CODVETT2 |2|Codice vettore 2 |3|§
|§F_CODVETT1|§
NOMEVETT1 | |F_NOMEVETT1 |2|Vettore 1 |50|
CODVETT2 |CODVETT2 |F_CODVETT2 |2|Codice vettore 2 |3|§
|§F_CODVETT1|§
CODTAB F_CODVETT2|§
§F_CODVETT1|§
F_CODVETT2 CODTAB~ F_NOMEVETT2 S0|§
HELP "Inserisci il codice del secondo vettore"~§
WARNING "Codice secondo vettore non trovato"~GROUP GR_VETTORI|
WARNING "Codice secondo vettore non trovato"~GROUP GR_VETTORI|
NOMEVETT2 | |F_NOMEVETT2 |2|Vettore 2 |50|
CODVETT3 |CODVETT3 |F_CODVETT3 |2|Codice vettore 3 |3|§
|§F_CODVETT1|§
NOMEVETT2 | |F_NOMEVETT2 |2|Vettore 2 |50|
CODVETT3 |CODVETT3 |F_CODVETT3 |2|Codice vettore 3 |3|§
|§F_CODVETT1|§
CODTAB F_CODVETT3|§
§F_CODVETT1|§
F_CODVETT3 CODTAB~F_NOMEVETT3 S0|§
F_CODVETT3 CODTAB~F_NOMEVETT3 S0|§
HELP "Inserisci il codice del terzo vettore"~§
WARNING "Codice terzo vettore non trovato"~GROUP GR_VETTORI|
WARNING "Codice terzo vettore non trovato"~GROUP GR_VETTORI|
NOMEVETT3 | |F_NOMEVETT3 |2|Vettore 3 |50|
NCOPIE |NCOPIE |F_NCOPIE |3|Numero copie |0200|
NOMEVETT3 | |F_NOMEVETT3 |2|Vettore 3 |50|
NCOPIE |NCOPIE |F_NCOPIE |3|Numero copie |0200|
DATAPART |DATAPART |F_DATAPART |1|Data partenza |||||||§
HELP "Inserisci la data di partenza nel formato gg-mm-aaaa"|
HELP "Inserisci la data di partenza nel formato gg-mm-aaaa"|
ORAPART |ORAPART |F_ORAPART |2|Ora partenza |0400||||||§
HELP "Inserisci l'orario di partenza nel formato oo:mm (24 ore)"
HELP "Inserisci l'orario di partenza nel formato oo:mm (24 ore)"
IMPPAGATO |IMPPAGATO |F_IMPPAGATO |3|Importo pagato |1802|
ACCSALDO |ACCSALDO |F_ACCSALDO |4|Acconto/saldo ||
DOC1 |DOC1 |F_DOC1 |2|Documento 1 |12|
DOC2 |DOC2 |F_DOC2 |2|Documento 2 |12|
DOC3 |DOC3 |F_DOC3 |2|Documento 3 |12|
DATACONS |DATACONS |F_DATACONS |1|Data consegna ||
ASPBENI1 |ASPBENI1 |F_ASPBENI1 |2|Aspetto beni 1 |2||§
%CLR|§
CODTAB F_ASPBENI1|§
"Codice" CODTAB~"Aspetto beni@50" S0|§
F_ASPBENI1 CODTAB~F_DESCRBENI1 S0|§
HELP "Inserisci il codice dell'aspetto dei beni"~§
WARNING "Codice aspetto beni non trovato"|
IMPPAGATO |IMPPAGATO |F_IMPPAGATO |3|Importo pagato |1802|
ACCSALDO |ACCSALDO |F_ACCSALDO |4|Acconto/saldo ||
DOC1 |DOC1 |F_DOC1 |2|Documento 1 |12|
DOC2 |DOC2 |F_DOC2 |2|Documento 2 |12|
DOC3 |DOC3 |F_DOC3 |2|Documento 3 |12|
DATACONS |DATACONS |F_DATACONS |1|Data consegna ||
ASPBENI1 |ASPBENI1 |F_ASPBENI1 |2|Aspetto beni 1 |2||§
%CLR|§
CODTAB F_ASPBENI1|§
"Codice" CODTAB~"Aspetto beni@50" S0|§
F_ASPBENI1 CODTAB~F_DESCRBENI1 S0|§
HELP "Inserisci il codice dell'aspetto dei beni"~§
WARNING "Codice aspetto beni non trovato"|
DESCRBENI1| |F_DESCRBENI1 |2|Descrizione beni 1 |50|U|
ASPBENI2 |ASPBENI2 |F_ASPBENI2 |2|Aspetto beni 2 |2||§
%CLR|§
CODTAB F_ASPBENI2|§
"Codice" CODTAB~"Aspetto beni@50" S0|§
F_ASPBENI2 CODTAB~F_DESCRBENI2 S0|§
HELP "Inserisci il codice dell'aspetto dei beni"~§
WARNING "Codice aspetto beni non trovato"|
%CLR|§
CODTAB F_ASPBENI2|§
"Codice" CODTAB~"Aspetto beni@50" S0|§
F_ASPBENI2 CODTAB~F_DESCRBENI2 S0|§
HELP "Inserisci il codice dell'aspetto dei beni"~§
WARNING "Codice aspetto beni non trovato"|
DESCRBRNI2| |F_DESCRBENI2 |2|Descrizione beni 2 |50|U|
IMPNETTI |IMPNETTI |F_IMPNETTI |4|Importi netti ||
RAGGREFF |RAGGREFF |F_RAGGREFF |4|Raggruppamento effetti ||
SPESEINC |SPESEINC |F_SPESEINC |4|Spese all'incasso ||
ADDBRB |ADDBRB |F_ADDBRB |4|Addebito bolli ricevute bancarie ||
ADDBTR |ADDBTR |F_ADDBTR |4|Addebito bolli tratte ||
ADDBDE |ADDBDE |F_ADDBDE |4|Addebito bolli debiti esteri ||
CODIVABRB |CODIVABRB |F_CODIVABRB |2|Codice iva bolli ricevute bancarie |4|
CODIVABTR |CODIVABTR |F_CODIVABTR |2|Codice iva bolli tratte |4|
CODIVABTRE|CODIVABTRE |F_CODIVABTRE |2|Codice iva bolli tratte estere |4|
CODIVABDE |CODIVABDE |F_CODIVABDE |2|Codice iva bolli esteri |4|
UMTARA |UMTARA |F_UMTARA |2|Codice Unità misura tara |2||§
%CLR|§
CODTAB F_UMTARA|§
"Codice" CODTAB~"Unità di misura" S0|§
F_UMTARA CODTAB~F_DESUMTARA S0|§
IMPNETTI |IMPNETTI |F_IMPNETTI |4|Importi netti ||
RAGGREFF |RAGGREFF |F_RAGGREFF |4|Raggruppamento effetti ||
SPESEINC |SPESEINC |F_SPESEINC |4|Spese all'incasso ||
ADDBRB |ADDBRB |F_ADDBRB |4|Addebito bolli ricevute bancarie ||
ADDBTR |ADDBTR |F_ADDBTR |4|Addebito bolli tratte ||
ADDBDE |ADDBDE |F_ADDBDE |4|Addebito bolli debiti esteri ||
CODIVABRB |CODIVABRB |F_CODIVABRB |2|Codice iva bolli ricevute bancarie |4|
CODIVABTR |CODIVABTR |F_CODIVABTR |2|Codice iva bolli tratte |4|
CODIVABTRE|CODIVABTRE |F_CODIVABTRE |2|Codice iva bolli tratte estere |4|
CODIVABDE |CODIVABDE |F_CODIVABDE |2|Codice iva bolli esteri |4|
UMTARA |UMTARA |F_UMTARA |2|Codice Unità misura tara |2||§
%CLR|§
CODTAB F_UMTARA|§
"Codice" CODTAB~"Unità di misura" S0|§
F_UMTARA CODTAB~F_DESUMTARA S0|§
HELP "Inserisci il codice dell'unità di misura della tara"~§
WARNING "Codice unità di misura non trovato"|
WARNING "Codice unità di misura non trovato"|
TARA |TARA |F_TARA |3|Tara |1502|R|||||§
HELP "Inserisci la tara della merce"~§
WARNING "Tara errata o non presente !!!"|
HELP "Inserisci la tara della merce"~§
WARNING "Tara errata o non presente !!!"|
DESUMTARA | |F_DESUMTARA |2|Unità di misura della tara |25|U|
UMPNETTO |UMPNETTO |F_UMPNETTO |2|Codice Unità misura peso netto |2||§
%CLR|§
CODTAB F_UMPNETTO|§
"Codice" CODTAB~"Unità di misura" S0|§
F_UMPNETTO CODTAB~F_DESUMPNETTO S0|§
HELP "Inserisci il codice dell'unità di misura del peso netto"~§
WARNING "Codice unità di misura del peso netto non trovato"|
%CLR|§
CODTAB F_UMPNETTO|§
"Codice" CODTAB~"Unità di misura" S0|§
F_UMPNETTO CODTAB~F_DESUMPNETTO S0|§
HELP "Inserisci il codice dell'unità di misura del peso netto"~§
WARNING "Codice unità di misura del peso netto non trovato"|
PNETTO |PNETTO |F_PNETTO |3|Peso netto |1502|R|||||§
HELP "Inserisci il peso netto della merce"~§
WARNING "Peso netto non corretto o non presente !!!"|
HELP "Inserisci il peso netto della merce"~§
WARNING "Peso netto non corretto o non presente !!!"|
DESUMPNETTO| |F_DESUMPNETTO |2|Unità di misura del peso netto |25|U|
NCOLLI |NCOLLI |F_NCOLLI |3|Numero colli |0700||||||§
HELP "Inserisci il numero dei colli"~§
WARNING "Numero di colli errato o non presente !!!"|
NCOLLI |NCOLLI |F_NCOLLI |3|Numero colli |0700||||||§
HELP "Inserisci il numero dei colli"~§
WARNING "Numero di colli errato o non presente !!!"|
CAUSMAG1 |CAUSMAG1 |F_CAUSMAG1 |2|Codice causale di magazzino 1 |3|U|§
LF_CAUSALI|§
CODCAUS F_CAUSMAG1|§
"Codice" CODCAUS~"Causale@50" DESCR|§
F_CAUSMAG1 CODCAUS~F_DESCRMAG1 DESCR|§
HELP "Inserisci il codice della causale"~§
WARNING "Codice causale non trovato"|
LF_CAUSALI|§
CODCAUS F_CAUSMAG1|§
"Codice" CODCAUS~"Causale@50" DESCR|§
F_CAUSMAG1 CODCAUS~F_DESCRMAG1 DESCR|§
HELP "Inserisci il codice della causale"~§
WARNING "Codice causale non trovato"|
DESCRMAG1 |DESCRMAG1 |F_DESCRMAG1 |2|Causale di magazzino 1 |50|U|
CAUSMAG2 |CAUSMAG2 |F_CAUSMAG2 |2|Codice causale di magazzino 2 |3|U|§
LF_CAUSALI|§
CODCAUS F_CAUSMAG2§
|§ F_CAUSMAG1|§
F_CAUSMAG2 CODCAUS~F_DESCRMAG2 DESCR|§
HELP "Inserisci il codice della causale"~§
WARNING "Codice causale non trovato"|
LF_CAUSALI|§
CODCAUS F_CAUSMAG2§
|§ F_CAUSMAG1|§
F_CAUSMAG2 CODCAUS~F_DESCRMAG2 DESCR|§
HELP "Inserisci il codice della causale"~§
WARNING "Codice causale non trovato"|
DESCRMAG2 |DESCRMAG2 |F_DESCRMAG2 |2|Causale di magazzino 2 |50|U|

File diff suppressed because it is too large Load Diff

View File

@ -1,121 +1,121 @@
[100]
HEIGHT=5
CONFIGS=
[200]
HEIGHT=2
CONFIGS=
[300]
HEIGHT=1
CONFIGS=
[400]
HEIGHT=1
CONFIGS=
[500]
HEIGHT=2
CONFIGS=
[600]
HEIGHT=2
CONFIGS=
[700]
HEIGHT=2
CONFIGS=
[800]
HEIGHT=2
CONFIGS=
[900]
HEIGHT=5
CONFIGS=
[1000]
HEIGHT=2
CONFIGS=
[1100]
HEIGHT=1
CONFIGS=
[1200]
HEIGHT=3
CONFIGS=
[1300]
HEIGHT=1
CONFIGS=
[1400]
HEIGHT=1
CONFIGS=
[1500]
HEIGHT=6
CONFIGS=
[1600]
HEIGHT=1
CONFIGS=
[1700]
HEIGHT=2
CONFIGS=
[1800]
HEIGHT=2
CONFIGS=
[1900]
HEIGHT=3
CONFIGS=
[2000]
HEIGHT=1
CONFIGS=
[2100]
HEIGHT=4
CONFIGS=
[2200]
HEIGHT=1
CONFIGS=
[2300]
HEIGHT=1
CONFIGS=
[2400]
HEIGHT=1
CONFIGS=
[2500]
HEIGHT=3
CONFIGS=
[2600]
HEIGHT=4
CONFIGS=
[27]
HEIGHT=6
CONFIGS=
[28]
HEIGHT=1
CONFIGS=
[29]
HEIGHT=4
CONFIGS=
[0]
HEIGHT =

[100]
HEIGHT=7
CONFIGS=
[101]
HEIGHT=1
[200]
HEIGHT=2
[300]
HEIGHT=1
[400]
HEIGHT=1
[500]
HEIGHT=5
[600]
HEIGHT=2
[700]
HEIGHT=2
[800]
HEIGHT=2
[810]
HEIGHT=1
[820]
HEIGHT=1
[830]
HEIGHT=1
[900]
HEIGHT=8
[1000]
HEIGHT=2
[1100]
HEIGHT=1
[1110]
HEIGHT=1
[1200]
HEIGHT=1
[1210]
HEIGHT=1
[1300]
HEIGHT=2
[1400]
HEIGHT=1
[1500]
HEIGHT=3
[1600]
HEIGHT=1
[1700]
HEIGHT=3
[1800]
HEIGHT=2
[1900]
HEIGHT=3
[2000]
HEIGHT=1
[2100]
HEIGHT=2
[2200]
HEIGHT=1
[2300]
HEIGHT=1
[2400]
HEIGHT=1
[2500]
HEIGHT=3
[2600]
HEIGHT=3
[2700]
HEIGHT=2
[2710]
HEIGHT=2
[2800]
HEIGHT=1
[2900]
HEIGHT=2
[3000]
HEIGHT=1
[3200]
HEIGHT=1
[3400]
HEIGHT=4
[0]
HEIGHT =

View File

@ -1,6 +1,7 @@
#ifndef __VEUML_H
#define __VEUML_H
#define DLG_NULL -1 // da eliminare quando si potranno compilare le maschere
#define F_CODNUM 101 // GESTITO DAL MOTORE
#define F_ANNO 102 // GESTITO DAL MOTORE
#define F_PROVV 103 // GESTITO DAL MOTORE
@ -81,5 +82,12 @@
#define DLG_ELABORA 178 // GESTITO DAL MOTORE: bottone Elabora
#define F_ATTIVAANNO 179 // GESTITO DAL MOTORE
#define F_OCCASEDIT 180 // GESTITO DAL MOTORE
#define F_CATVEN 181
#define F_SCONFIS 182 // Andrea ?? verificare
#define F_RICFIS 183 // Andrea ?? verificare
#define F_SPESEADD1 184 // Andrea ?? verificare
#define F_SPESEADD2 185 // Andrea ?? verificare
#define F_SPESEADD3 186 // Andrea ?? verificare
#define F_SPESEADD4 187 // Andrea ?? verificare
#endif // veuml.h

View File

@ -16,7 +16,7 @@
#define F_CIVCF 303
#define F_RAGSOCSP 304
#define F_DESCODPAG 305
// I prossimi 5 campi devono essere consecutivi come numerazione
// I prossimi 5 campi devono essere consecutivi come numerazione
// perchè faccio un ciclo per settarli
#define F_DATASCAD1 306
#define F_DATASCAD2 307
@ -61,4 +61,13 @@
#define F_STATOSP 346
#define F_DESSTATOSP 347
#define F_DESLIST 348
#define F_DESCONT 349
#define F_DESCAMP 350
#define F_DESCATVEN 351
#define F_DESSPMEZZO 352
#define F_DESAG 353
#define F_DESAGVIS 354
#define F_DESPORTO 355
#define F_DESNOTESP1 356
#define F_DESNOTESP2 357
#endif // __VEUML1_H