Migliorato supporto per elaborazioni esterne
git-svn-id: svn://10.65.10.50/branches/R_10_00@23027 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
07a1b81dad
commit
d4f58ea1ec
@ -1,3 +1,3 @@
|
|||||||
33
|
33
|
||||||
0
|
0
|
||||||
$doc|0|0|687|0|Documenti di vendita|||
|
$doc|0|0|723|0|Documenti di vendita|||
|
||||||
|
10
ve/f33.trr
10
ve/f33.trr
@ -1,5 +1,5 @@
|
|||||||
33
|
33
|
||||||
95
|
97
|
||||||
CODNUM|1|4|0|Codice della numerazione
|
CODNUM|1|4|0|Codice della numerazione
|
||||||
ANNO|2|4|0|Anno
|
ANNO|2|4|0|Anno
|
||||||
PROVV|1|1|0|Tipo numerazione <P>rovvisorio <D>efinitivo
|
PROVV|1|1|0|Tipo numerazione <P>rovvisorio <D>efinitivo
|
||||||
@ -74,7 +74,7 @@ CODNOTE|1|2|0|Codice note cliente
|
|||||||
NOTE|11|10|0|Note
|
NOTE|11|10|0|Note
|
||||||
G1|11|10|0|Campo generale 1
|
G1|11|10|0|Campo generale 1
|
||||||
DATAAGG|5|8|0|Data ultimo aggiornamento
|
DATAAGG|5|8|0|Data ultimo aggiornamento
|
||||||
UTENTE|1|10|0|Utente ultimo aggiornamento
|
UTENTE|1|16|0|Utente ultimo aggiornamento
|
||||||
COLL_GOLEM|11|10|0|Collegamento lista di GOLEM
|
COLL_GOLEM|11|10|0|Collegamento lista di GOLEM
|
||||||
DOCEVASO|8|1|0|Ordine evaso
|
DOCEVASO|8|1|0|Ordine evaso
|
||||||
CODCMS|1|20|0|Codice Commessa
|
CODCMS|1|20|0|Codice Commessa
|
||||||
@ -93,8 +93,10 @@ CUP|1|15|0|Codice Unico di Progetto
|
|||||||
CIG|1|10|0|Codice Identificativo di Gara
|
CIG|1|10|0|Codice Identificativo di Gara
|
||||||
MODPAG|1|1|0|Tipo contratto P.A.
|
MODPAG|1|1|0|Tipo contratto P.A.
|
||||||
CONTRATTO|1|20|0|Contratto fattura P.A.
|
CONTRATTO|1|20|0|Contratto fattura P.A.
|
||||||
CONTSEP|1|6|0|Contabilita' separata
|
CONTSEP|1|6|0|Contabilità separata
|
||||||
NOLEGGIO|1|1|0|Tipo noleggio (Spesometro)
|
NOLEGGIO|1|1|0|Tipo noleggio (pe)
|
||||||
|
COMMPREL|1|20|0|Commessa di prelievo (ci)
|
||||||
|
FASEPREL|1|10|0|Fase di prelievo (ci)
|
||||||
5
|
5
|
||||||
PROVV+ANNO+CODNUM+NDOC|
|
PROVV+ANNO+CODNUM+NDOC|
|
||||||
TIPOCF+CODCF+PROVV+ANNO+DATADOC+CODNUM+NDOC|X
|
TIPOCF+CODCF+PROVV+ANNO+DATADOC+CODNUM+NDOC|X
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
47
|
47
|
||||||
0
|
0
|
||||||
$anamag|0|0|1137|0|Anagrafica di magazzino|NART||
|
$anamag|0|0|1121|0|Anagrafica di magazzino|NART||
|
||||||
|
@ -96,8 +96,8 @@ USER15|1|20|0|Campo libero 15
|
|||||||
USER16|1|20|0|Campo libero 16
|
USER16|1|20|0|Campo libero 16
|
||||||
USER17|1|20|0|Campo libero 17
|
USER17|1|20|0|Campo libero 17
|
||||||
USER18|1|20|0|Campo libero 18
|
USER18|1|20|0|Campo libero 18
|
||||||
USER19|1|20|0|Campo libero 19
|
DATAAGG|5|8|0|
|
||||||
USER20|1|20|0|Campo libero 20
|
UTENTE|1|16|0|
|
||||||
3
|
3
|
||||||
CODART|
|
CODART|
|
||||||
UPPER(DESCR)|X
|
UPPER(DESCR)|X
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
53
|
53
|
||||||
0
|
0
|
||||||
$rcondv|0|0|217|0|Righe condizioni di vendita|||
|
$rcondv|0|0|233|0|Righe condizioni di vendita|||
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
53
|
53
|
||||||
25
|
27
|
||||||
TIPO|1|1|0|Tipo (<L>istino,<C>ontratto,<O>fferta)
|
TIPO|1|1|0|Tipo (<L>istino,<C>ontratto,<O>fferta)
|
||||||
CATVEN|1|2|0|Categoria di vendita (L)
|
CATVEN|1|2|0|Categoria di vendita (L)
|
||||||
TIPOCF|1|1|0|<C>liente o <F>ornitore (C)
|
TIPOCF|1|1|0|<C>liente o <F>ornitore (C)
|
||||||
@ -25,5 +25,7 @@ ARTES|8|1|0|Articolo in esaurimento (O)
|
|||||||
DATAULTAUM|5|8|0|Data ultimo aumento
|
DATAULTAUM|5|8|0|Data ultimo aumento
|
||||||
PRZSTO|4|18|5|Prezzo storico
|
PRZSTO|4|18|5|Prezzo storico
|
||||||
DATAPRZSTO|5|8|0|Data prezzo storico
|
DATAPRZSTO|5|8|0|Data prezzo storico
|
||||||
|
DATAAGG|5|8|0|
|
||||||
|
UTENTE|1|16|0|
|
||||||
1
|
1
|
||||||
TIPO+CATVEN+TIPOCF+CODCF+COD+TIPORIGA+CODRIGA+UM+NSCAGL|
|
TIPO+CATVEN+TIPOCF+CODCF+COD+TIPORIGA+CODRIGA+UM+NSCAGL|
|
||||||
|
280
ve/movint.src
Normal file
280
ve/movint.src
Normal file
@ -0,0 +1,280 @@
|
|||||||
|
#include "veini.h"
|
||||||
|
#include "veuml.h"
|
||||||
|
#include "verig.h"
|
||||||
|
|
||||||
|
|
||||||
|
[MAIN]
|
||||||
|
TYPE=Movimento interno
|
||||||
|
CAMPICALC=TOTMER|TOTPRE|SPESE|SPESIMB|SPESTRA|SPESINC|BOLLI|IMPONIBILI|IMPOSTE|TOTDOC|SCONTOD|SCONTOT|OMAGGI|TOTPROVV
|
||||||
|
CALCOLI=*
|
||||||
|
TOTPROVV=
|
||||||
|
// Indica se il documento è indirizzato ad un cliente o ad un fornitore
|
||||||
|
TIPOCF=C
|
||||||
|
|
||||||
|
//modulo di riferimento
|
||||||
|
MODULE=
|
||||||
|
Title(1)=Cliente
|
||||||
|
Title(2)=Spedizione
|
||||||
|
Title(3)=Trasporto
|
||||||
|
Title(4)=Righe
|
||||||
|
Title(5)=Totali
|
||||||
|
|
||||||
|
[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
|
||||||
|
OCFPI = S_DISABILITATO
|
||||||
|
COFI = S_NORMALE
|
||||||
|
STATOPAIV = S_NORMALE
|
||||||
|
PAIVA = S_NORMALE
|
||||||
|
LIQDIFF = S_NASCOSTO
|
||||||
|
IVAXCASSA = S_NASCOSTO
|
||||||
|
GOLEM = S_NASCOSTO
|
||||||
|
GRRECAPITO = S_NORMALE
|
||||||
|
INDCF = S_DISABILITATO
|
||||||
|
CIVCF = S_DISABILITATO
|
||||||
|
LOCALITACF = S_DISABILITATO
|
||||||
|
CAPCF = S_DISABILITATO
|
||||||
|
PROVCOM = S_DISABILITATO
|
||||||
|
COMCF = S_DISABILITATO
|
||||||
|
DENCOM = S_DISABILITATO
|
||||||
|
STATOCF = S_DISABILITATO
|
||||||
|
DESSTATOCF = S_DISABILITATO
|
||||||
|
PACONTRATTO = S_NASCOSTO
|
||||||
|
PATIPOCON = S_NASCOSTO
|
||||||
|
CONTSEP = S_NASCOSTO
|
||||||
|
CODVAL1 = S_NORMALE
|
||||||
|
CODVAL2 = S_NORMALE
|
||||||
|
NOME_VAL1 = S_NORMALE
|
||||||
|
NOME_VAL2 = S_NORMALE
|
||||||
|
// CONTROEURO = S_NORMALE
|
||||||
|
CAMBIO = S_NORMALE
|
||||||
|
DATA_CAMBIO1 = S_NORMALE
|
||||||
|
DATA_CAMBIO2 = S_NORMALE
|
||||||
|
CODLIN = S_NORMALE
|
||||||
|
DESLIN = S_NORMALE
|
||||||
|
CODPAG = S_OBBLIGATORIO
|
||||||
|
DESCODPAG = S_NORMALE
|
||||||
|
GRSCADENZE = S_NORMALE
|
||||||
|
DATAINSC = S_NORMALE
|
||||||
|
DATASCAD1 = S_DISABILITATO
|
||||||
|
DATASCAD2 = S_DISABILITATO
|
||||||
|
DATASCAD3 = S_DISABILITATO
|
||||||
|
DATASCAD4 = S_DISABILITATO
|
||||||
|
DATASCAD5 = S_DISABILITATO
|
||||||
|
CODABIA = S_OBBLIGATORIO
|
||||||
|
CODCABA = S_OBBLIGATORIO
|
||||||
|
CODABIA1 = S_NORMALE
|
||||||
|
CODCABA1 = S_NORMALE
|
||||||
|
DESBANAPP = S_NOCHECK
|
||||||
|
DESBANAPP1 = S_NOCHECK
|
||||||
|
IBAN = S_NORMALE
|
||||||
|
IBAN_STATO = S_NORMALE
|
||||||
|
IBAN_CHECK = S_NORMALE
|
||||||
|
BBAN = S_NORMALE
|
||||||
|
BBAN_CIN = S_NORMALE
|
||||||
|
BBAN_ABI = S_NORMALE
|
||||||
|
BBAN_CAB = S_NORMALE
|
||||||
|
BBAN_CONTO = S_NORMALE
|
||||||
|
CODABIP = S_NORMALE
|
||||||
|
CODCABP = S_NORMALE
|
||||||
|
CODABIP1 = S_NORMALE
|
||||||
|
CODCABP1 = S_NORMALE
|
||||||
|
DESBANPRE = S_NOCHECK
|
||||||
|
DESBANPRE1 = S_NOCHECK
|
||||||
|
PROGBNP = S_NOCHECK
|
||||||
|
PROGBNP1 = S_NORMALE
|
||||||
|
CATVEN = S_NORMALE
|
||||||
|
DESCATVEN = S_DISABILITATO
|
||||||
|
CODLIST = S_NORMALE
|
||||||
|
DESLIST = S_NORMALE
|
||||||
|
CODCONT = S_NORMALE
|
||||||
|
DESCONT = S_NORMALE
|
||||||
|
CODCAMP = S_NORMALE
|
||||||
|
DESCAMP = S_NORMALE
|
||||||
|
SCONTOPERC = S_NORMALE
|
||||||
|
GRINDSPED = S_NORMALE
|
||||||
|
CODINDSP = S_NORMALE
|
||||||
|
RAGSOCSP = S_DISABILITATO
|
||||||
|
INDSP = S_DISABILITATO
|
||||||
|
CIVSP = S_DISABILITATO
|
||||||
|
LOCALITASP = S_DISABILITATO
|
||||||
|
CAPSP = S_DISABILITATO
|
||||||
|
COMSP = S_DISABILITATO
|
||||||
|
DENCOMSP = S_DISABILITATO
|
||||||
|
PROVCOMSP = S_DISABILITATO
|
||||||
|
STATOSP = S_DISABILITATO
|
||||||
|
DESSTATOSP = S_DISABILITATO
|
||||||
|
DATADOCRIF = S_NORMALE
|
||||||
|
NUMDOCRIF = S_NOCHECK
|
||||||
|
CODAG = S_NORMALE
|
||||||
|
DESAG = S_NORMALE
|
||||||
|
CODAGVIS = S_NORMALE
|
||||||
|
DESAGVIS = S_NORMALE
|
||||||
|
CODZON = S_NORMALE
|
||||||
|
DESZON = S_NORMALE
|
||||||
|
CODSPMEZZO = S_OBBLIGATORIO
|
||||||
|
DESSPMEZZO = S_NORMALE
|
||||||
|
CODPORTO = S_NORMALE
|
||||||
|
DESPORTO = S_NORMALE
|
||||||
|
CODNOTESP1 = S_NORMALE
|
||||||
|
DESNOTESP1 = S_NORMALE
|
||||||
|
CODNOTESP2 = S_NORMALE
|
||||||
|
DESNOTESP2 = S_NORMALE
|
||||||
|
CAUSTRASP = S_OBBLIGATORIO
|
||||||
|
DENCAUSTRASP = S_NORMALE
|
||||||
|
CODVETT1 = S_NORMALE
|
||||||
|
CODVETT2 = S_NORMALE
|
||||||
|
CODVETT3 = S_NORMALE
|
||||||
|
NOMEVETT1 = S_NORMALE
|
||||||
|
NOMEVETT2 = S_NORMALE
|
||||||
|
NOMEVETT3 = S_NORMALE
|
||||||
|
NCOPIE = S_NASCOSTO
|
||||||
|
GRPARTENZA = S_NORMALE
|
||||||
|
DATAPART = S_NORMALE
|
||||||
|
ORAPART = S_NORMALE
|
||||||
|
IMPPAGATO = S_NASCOSTO
|
||||||
|
ACCSALDO = S_NASCOSTO
|
||||||
|
DOC1 = S_NASCOSTO
|
||||||
|
DOC2 = S_NASCOSTO
|
||||||
|
DOC3 = S_NASCOSTO
|
||||||
|
DATACONS = S_OBBLIGATORIO
|
||||||
|
ASPBENI1 = S_OBBLIGATORIO
|
||||||
|
DESCRBENI1 = S_NORMALE
|
||||||
|
ASPBENI2 = S_NASCOSTO
|
||||||
|
DESCRBENI2 = S_NASCOSTO
|
||||||
|
IMPNETTI = S_NASCOSTO
|
||||||
|
RAGGR = S_NORMALE
|
||||||
|
RAGGREFF = S_NORMALE
|
||||||
|
SPESEINC = S_NORMALE
|
||||||
|
ADDBOLLI = S_NORMALE
|
||||||
|
UMTARA = S_NORMALE
|
||||||
|
TARA = S_NORMALE
|
||||||
|
DESUMTARA = S_NASCOSTO
|
||||||
|
UMPNETTO = S_NORMALE
|
||||||
|
PNETTO = S_NORMALE
|
||||||
|
DESUMPNETTO = S_NASCOSTO
|
||||||
|
NCOLLI = S_NORMALE
|
||||||
|
CAUSMAG = S_OBBLIGATORIO
|
||||||
|
CAUSMAGC = S_DISABILITATO
|
||||||
|
DESCRMAG = S_NORMALE
|
||||||
|
DESCRMAGC = S_DISABILITATO
|
||||||
|
BLANK = S_DISABILITATO
|
||||||
|
CODNOTE = S_NORMALE
|
||||||
|
NOTECLI = S_NOCHECK
|
||||||
|
CUP = S_NORMALE
|
||||||
|
DESCRCUP = S_NORMALE
|
||||||
|
CIG = S_NORMALE
|
||||||
|
DESCRCIG = S_NORMALE
|
||||||
|
CMSH = S_NORMALE
|
||||||
|
|
||||||
|
[DEFAULT]
|
||||||
|
Default(0)=F_CAUSTRASP|VEN
|
||||||
|
|
||||||
|
[SHEET]
|
||||||
|
Col(0)=FR_CODMAG
|
||||||
|
Col(1)=FR_CODDEP
|
||||||
|
Col(2)=FR_CODART
|
||||||
|
Col(3)=FR_LIV1
|
||||||
|
Col(4)=FR_LIV2
|
||||||
|
Col(5)=FR_LIV3
|
||||||
|
Col(6)=FR_LIV4
|
||||||
|
Col(7)=FR_DESCR
|
||||||
|
Col(8)=FR_UMQTA
|
||||||
|
Col(9)=FR_QTA
|
||||||
|
Col(10)=FR_PREZZO
|
||||||
|
Col(11)=FR_SCONTO
|
||||||
|
Col(12)=FR_PERCPROV
|
||||||
|
Col(13)=FR_IMPFISUN
|
||||||
|
Col(14)=FR_IMPFISSO
|
||||||
|
Col(15)=FR_PERCPROV1
|
||||||
|
Col(16)=FR_CODIVA
|
||||||
|
Col(17)=FR_ADDIVA
|
||||||
|
Col(18)=FR_NCOLLI
|
||||||
|
Col(19)=FR_PNETTO
|
||||||
|
Col(20)=FR_TARA
|
||||||
|
Col(21)=FR_CAUS
|
||||||
|
Col(22)=FR_CODMAGC
|
||||||
|
Col(23)=FR_CODDEPC
|
||||||
|
Col(24)=FR_TIPORIGA
|
||||||
|
|
||||||
|
[RIGHE]
|
||||||
|
|
||||||
|
[HANDLERS]
|
||||||
|
// Handler(0) = F_ORAPART|1
|
||||||
|
|
||||||
|
[PROFILOGRUPPO]
|
||||||
|
101 = S_NASCOSTO
|
||||||
|
100 = S_NORMALE
|
||||||
|
200 = S_NORMALE
|
||||||
|
300 = S_NORMALE
|
||||||
|
400 = S_NASCOSTO
|
||||||
|
500 = S_NASCOSTO
|
||||||
|
600 = S_NASCOSTO
|
||||||
|
700 = S_NASCOSTO
|
||||||
|
800 = S_NASCOSTO
|
||||||
|
810 = S_NASCOSTO
|
||||||
|
820 = S_NASCOSTO
|
||||||
|
830 = S_NASCOSTO
|
||||||
|
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_NASCOSTO
|
||||||
|
1700 = S_NORMALE
|
||||||
|
1800 = S_NORMALE
|
||||||
|
1900 = S_NORMALE
|
||||||
|
2000 = S_NORMALE
|
||||||
|
2100 = S_NORMALE
|
||||||
|
2200 = S_NASCOSTO
|
||||||
|
2300 = S_NASCOSTO
|
||||||
|
2400 = S_NASCOSTO
|
||||||
|
2500 = S_NORMALE
|
||||||
|
2700 = S_NORMALE
|
||||||
|
2710 = S_NORMALE
|
||||||
|
2800 = S_NORMALE
|
||||||
|
2900 = S_NORMALE
|
||||||
|
3000 = S_NORMALE
|
||||||
|
4000 = S_NORMALE
|
||||||
|
|
||||||
|
[ORDINEGRUPPI]
|
||||||
|
NGROUPS=30
|
||||||
|
1=100
|
||||||
|
2=2000
|
||||||
|
3=2500
|
||||||
|
4=200
|
||||||
|
5=300
|
||||||
|
6=400
|
||||||
|
7=500
|
||||||
|
8=600
|
||||||
|
9=700
|
||||||
|
10=2400
|
||||||
|
11=800
|
||||||
|
12=810
|
||||||
|
13=820
|
||||||
|
14=830
|
||||||
|
15=900
|
||||||
|
16=1100
|
||||||
|
17=1200
|
||||||
|
18=1500
|
||||||
|
19=1210
|
||||||
|
20=1300
|
||||||
|
21=1400
|
||||||
|
22=2100
|
||||||
|
23=2800
|
||||||
|
24=2700
|
||||||
|
25=2710
|
||||||
|
26=1700
|
||||||
|
27=1800
|
||||||
|
28=1000
|
||||||
|
29=2900
|
||||||
|
30=3000
|
||||||
|
|
@ -456,29 +456,27 @@ void TMotore_application::do_elab( TDocumento& doc, int when) // C 90
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
TToken_string tipi, stati;
|
if (el != NULL && el->is_document_ok(doc))
|
||||||
el->tipi_stati_iniziali(tipi, stati);
|
|
||||||
if (stati.find(doc.stato()) >= 0)
|
|
||||||
{
|
{
|
||||||
TLista_documenti in; in.add(doc);
|
TLista_documenti in; in.add(doc);
|
||||||
TLista_documenti out;
|
TLista_documenti out;
|
||||||
|
|
||||||
TDocumento newdoc(doc.get_char(DOC_PROVV), doc.get_int(DOC_ANNO), el->codice_numerazione_finale(), 0L);
|
|
||||||
if (when == 0)
|
if (when == 0)
|
||||||
{
|
{
|
||||||
TDocumento::copy_data(newdoc.head(), doc.head());
|
TDocumento* newdoc = new TDocumento(doc.get_char(DOC_PROVV), doc.get_int(DOC_ANNO), el->codice_numerazione_finale(), 0L);
|
||||||
newdoc.put(DOC_TIPODOC, el->tipo_finale());
|
TDocumento::copy_data(newdoc->head(), doc.head());
|
||||||
newdoc.put(DOC_STATO, el->stato_finale());
|
newdoc->put(DOC_TIPODOC, el->tipo_finale());
|
||||||
if (newdoc.tipo().mov_mag())
|
newdoc->put(DOC_STATO, el->stato_finale());
|
||||||
newdoc.put(DOC_CAUSMAG, newdoc.tipo().caus_mov());
|
if (newdoc->tipo().mov_mag())
|
||||||
|
newdoc->put(DOC_CAUSMAG, newdoc->tipo().caus_mov());
|
||||||
else
|
else
|
||||||
newdoc.zero(DOC_CAUSMAG);
|
newdoc->zero(DOC_CAUSMAG);
|
||||||
out.add(newdoc);
|
out.add(newdoc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (el->elabora(in, out, TDate(TODAY), true))
|
if (el->elabora(in, out, TDate(TODAY), true))
|
||||||
{
|
{
|
||||||
if (when == 0 && out.items() && out[0] != newdoc)
|
if (when == 0 && out.items() && out[0].numero() > 0L)
|
||||||
out.rewrite();
|
out.rewrite();
|
||||||
if (when < 2 && in.items() && in[0] != doc)
|
if (when < 2 && in.items() && in[0] != doc)
|
||||||
doc = in[0];
|
doc = in[0];
|
||||||
@ -621,9 +619,11 @@ static bool num_filter(const TRelation* r)
|
|||||||
{
|
{
|
||||||
const TCodice_numerazione& cod_num = cached_numerazione(r->curr().get("CODTAB"));
|
const TCodice_numerazione& cod_num = cached_numerazione(r->curr().get("CODTAB"));
|
||||||
const int last = cod_num.ntipi_doc();
|
const int last = cod_num.ntipi_doc();
|
||||||
for (int i = 0; i < last; i++ )
|
for (int i = 0; i < last; i++)
|
||||||
if (tipodoc_ok(cod_num.tipo_doc(i)))
|
{
|
||||||
|
if (is_tipodoc_ok(cod_num.tipo_doc(i)))
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
236
ve/ve0200g.uml
236
ve/ve0200g.uml
@ -6,6 +6,11 @@ ENDPAGE
|
|||||||
|
|
||||||
PAGE "Distinta Base" 0 0 0 0
|
PAGE "Distinta Base" 0 0 0 0
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 9
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "@bParametri esplosione ditinte"
|
||||||
|
END
|
||||||
|
|
||||||
BOOLEAN F_EXPLODEDB
|
BOOLEAN F_EXPLODEDB
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 2 "Esplosione distinte"
|
PROMPT 2 2 "Esplosione distinte"
|
||||||
@ -14,14 +19,9 @@ BEGIN
|
|||||||
FIELD EXPLODEDB
|
FIELD EXPLODEDB
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 78 14
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 4 "Parametri esplosione"
|
|
||||||
END
|
|
||||||
|
|
||||||
LISTBOX F_VALCOMP 15
|
LISTBOX F_VALCOMP 15
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 6 "Calcolo valore su "
|
PROMPT 2 3 "Calcolo valore su "
|
||||||
ITEM " |Prodotto finito"
|
ITEM " |Prodotto finito"
|
||||||
ITEM "X|Componenti"
|
ITEM "X|Componenti"
|
||||||
FIELD VALCOMP
|
FIELD VALCOMP
|
||||||
@ -30,7 +30,7 @@ END
|
|||||||
|
|
||||||
LISTBOX F_TIPOESPL 20
|
LISTBOX F_TIPOESPL 20
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 8 "Tipo esplosione "
|
PROMPT 2 4 "Tipo esplosione "
|
||||||
ITEM " |Scalare"
|
ITEM " |Scalare"
|
||||||
ITEM "X|Materiali di base"
|
ITEM "X|Materiali di base"
|
||||||
FIELD TIPOESPL
|
FIELD TIPOESPL
|
||||||
@ -39,7 +39,7 @@ END
|
|||||||
|
|
||||||
LIST F_RAGGART 34
|
LIST F_RAGGART 34
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 10 "Raggruppo articoli "
|
PROMPT 2 5 "Raggrupp. articoli "
|
||||||
ITEM "0|Nessun raggruppamento"
|
ITEM "0|Nessun raggruppamento"
|
||||||
ITEM "1|Converti nell'unita' principale"
|
ITEM "1|Converti nell'unita' principale"
|
||||||
ITEM "1|Converti nell'unita' di distinta"
|
ITEM "1|Converti nell'unita' di distinta"
|
||||||
@ -52,14 +52,14 @@ END
|
|||||||
|
|
||||||
NUMBER F_LIVELLO 3
|
NUMBER F_LIVELLO 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 12 "Livello esplosione "
|
PROMPT 2 6 "Livello esplosione "
|
||||||
FIELD LIVESPL
|
FIELD LIVESPL
|
||||||
GROUP 8
|
GROUP 8
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_ORDDB 3
|
NUMBER F_ORDDB 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 14 "Ordinamento distinta "
|
PROMPT 2 7 "Ordinamento distinta "
|
||||||
USE ORD
|
USE ORD
|
||||||
INPUT CODTAB F_ORDDB
|
INPUT CODTAB F_ORDDB
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Codice" CODTAB
|
||||||
@ -73,17 +73,76 @@ END
|
|||||||
|
|
||||||
STRING F_DESORDDB 47
|
STRING F_DESORDDB 47
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 30 14 ""
|
PROMPT 30 7 ""
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN F_ELRORIG
|
BOOLEAN F_ELRORIG
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 16 "Elimino la riga originale"
|
PROMPT 2 8 "Eliminare la riga originale"
|
||||||
FIELD ELRORIG
|
FIELD ELRORIG
|
||||||
GROUP 8
|
GROUP 8
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 7
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 10 "@bParametri articoli"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_IVA_OBBL
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 11 "Codice IVA obbligatorio sugli articoli"
|
||||||
|
FIELD IVA_OBBL
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 56 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 12 "@bGenerazione automatica codici"
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST F_GEN_EAN 2 6
|
||||||
|
BEGIN
|
||||||
|
PROMPT 3 13 "Codice articolo "
|
||||||
|
ITEM " |Nulla"
|
||||||
|
ITEM "08|EAN 8"
|
||||||
|
ITEM "13|EAN 13"
|
||||||
|
FIELD GEN_EAN
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST F_ALT_EAN 2 6
|
||||||
|
BEGIN
|
||||||
|
PROMPT 3 14 "Codice alternativo "
|
||||||
|
ITEM " |Nulla"
|
||||||
|
ITEM "08|EAN 8"
|
||||||
|
ITEM "13|EAN 13"
|
||||||
|
FIELD ALT_EAN
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 20 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 57 12 "@bPrefissi"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_EAN8 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 61 13 "EAN 8 "
|
||||||
|
FIELD EAN8
|
||||||
|
FLAGS "Z"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_EAN8CIN
|
||||||
|
BEGIN
|
||||||
|
PROMPT 36 13 "Genera CIN EAN8"
|
||||||
|
FIELD EAN8CIN
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_EAN13 6
|
||||||
|
BEGIN
|
||||||
|
PROMPT 61 14 "EAN 13 "
|
||||||
|
FIELD EAN13
|
||||||
|
FLAGS "Z"
|
||||||
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
PAGE "Articoli 1" 1 1 60 14
|
PAGE "Articoli 1" 1 1 60 14
|
||||||
@ -982,159 +1041,6 @@ BEGIN
|
|||||||
GROUP 28
|
GROUP 28
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 78 3
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 11 ""
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_CHK_USER19
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 11 "Campo libero 19"
|
|
||||||
MESSAGE FALSE CLEAR,29@
|
|
||||||
MESSAGE TRUE ENABLE,29@
|
|
||||||
FIELD CHK_USER[19]
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_PROMPT_USER19 18
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 12 "Prompt "
|
|
||||||
FIELD PROMPT_USER[19]
|
|
||||||
GROUP 29
|
|
||||||
END
|
|
||||||
|
|
||||||
LISTBOX F_TYPE_USER19 7
|
|
||||||
BEGIN
|
|
||||||
PROMPT 30 12 "Tipo "
|
|
||||||
ITEM "S|Stringa" MESSAGE ENABLE,F_LEN_USER19|CLEAR,F_DEC_USER19
|
|
||||||
ITEM "N|Numero" MESSAGE ENABLE,F_LEN_USER19|ENABLE,F_DEC_USER19
|
|
||||||
ITEM "I|Importo" MESSAGE ENABLE,F_LEN_USER19|CLEAR,F_DEC_USER19
|
|
||||||
ITEM "D|Data" MESSAGE CLEAR,F_LEN_USER19|CLEAR,F_DEC_USER19
|
|
||||||
ITEM "X|Si/no" MESSAGE CLEAR,F_LEN_USER19|CLEAR,F_DEC_USER19
|
|
||||||
FIELD TYPE_USER[19]
|
|
||||||
GROUP 29
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_LEN_USER19 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 45 12 "Lunghezza "
|
|
||||||
FIELD LEN_USER[19]
|
|
||||||
GROUP 29
|
|
||||||
FLAGS "U"
|
|
||||||
NUM_EXPR (#THIS_FIELD>0)&&(#THIS_FIELD<=20)
|
|
||||||
WARNING "La lunghezza del campo deve essere maggiore di 0 e non puo' superare 20 caratteri"
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_DEC_USER19 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 58 12 "Decimali "
|
|
||||||
FIELD DEC_USER[19]
|
|
||||||
GROUP 29
|
|
||||||
END
|
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 78 3
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 14 ""
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_CHK_USER20
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 14 "Campo libero 20"
|
|
||||||
MESSAGE FALSE CLEAR,30@
|
|
||||||
MESSAGE TRUE ENABLE,30@
|
|
||||||
FIELD CHK_USER[20]
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_PROMPT_USER20 18
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 15 "Prompt "
|
|
||||||
FIELD PROMPT_USER[20]
|
|
||||||
GROUP 30
|
|
||||||
END
|
|
||||||
|
|
||||||
LISTBOX F_TYPE_USER20 7
|
|
||||||
BEGIN
|
|
||||||
PROMPT 30 15 "Tipo "
|
|
||||||
ITEM "S|Stringa" MESSAGE ENABLE,F_LEN_USER20|CLEAR,F_DEC_USER20
|
|
||||||
ITEM "N|Numero" MESSAGE ENABLE,F_LEN_USER20|ENABLE,F_DEC_USER20
|
|
||||||
ITEM "I|Importo" MESSAGE ENABLE,F_LEN_USER20|CLEAR,F_DEC_USER20
|
|
||||||
ITEM "D|Data" MESSAGE CLEAR,F_LEN_USER20|CLEAR,F_DEC_USER20
|
|
||||||
ITEM "X|Si/no" MESSAGE CLEAR,F_LEN_USER20|CLEAR,F_DEC_USER20
|
|
||||||
FIELD TYPE_USER[20]
|
|
||||||
GROUP 30
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_LEN_USER20 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 45 15 "Lunghezza "
|
|
||||||
FIELD LEN_USER[20]
|
|
||||||
GROUP 30
|
|
||||||
FLAGS "U"
|
|
||||||
NUM_EXPR (#THIS_FIELD>0)&&(#THIS_FIELD<=20)
|
|
||||||
WARNING "La lunghezza del campo deve essere maggiore di 0 e non puo' superare 20 caratteri"
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_DEC_USER20 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT 58 15 "Decimali "
|
|
||||||
FIELD DEC_USER[20]
|
|
||||||
GROUP 30
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_IVA_OBBL
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 17 "Codice IVA obbligatorio sugli articoli"
|
|
||||||
FIELD IVA_OBBL
|
|
||||||
END
|
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 56 4
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 18 "@bGenerazione automatica codici"
|
|
||||||
END
|
|
||||||
|
|
||||||
LIST F_GEN_EAN 2 6
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 19 "Codice articolo "
|
|
||||||
ITEM " |Nulla"
|
|
||||||
ITEM "08|EAN 8"
|
|
||||||
ITEM "13|EAN 13"
|
|
||||||
FIELD GEN_EAN
|
|
||||||
END
|
|
||||||
|
|
||||||
LIST F_ALT_EAN 2 6
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 20 "Codice alternativo "
|
|
||||||
ITEM " |Nulla"
|
|
||||||
ITEM "08|EAN 8"
|
|
||||||
ITEM "13|EAN 13"
|
|
||||||
FIELD ALT_EAN
|
|
||||||
END
|
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 20 4
|
|
||||||
BEGIN
|
|
||||||
PROMPT 59 18 "@bPrefissi"
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_EAN8 4
|
|
||||||
BEGIN
|
|
||||||
PROMPT 62 19 "EAN 8 "
|
|
||||||
FIELD EAN8
|
|
||||||
FLAGS "Z"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_EAN8CIN
|
|
||||||
BEGIN
|
|
||||||
PROMPT 37 19 "Genera CIN EAN8"
|
|
||||||
FIELD EAN8CIN
|
|
||||||
END
|
|
||||||
|
|
||||||
NUMBER F_EAN13 6
|
|
||||||
BEGIN
|
|
||||||
PROMPT 62 20 "EAN 13 "
|
|
||||||
FIELD EAN13
|
|
||||||
FLAGS "Z"
|
|
||||||
END
|
|
||||||
|
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
ENDMASK
|
ENDMASK
|
||||||
|
@ -267,7 +267,7 @@ void TContabilizzazione_analitica_app::contabilize()
|
|||||||
//E finalmente fa l'agognata elaborazione!!!!!
|
//E finalmente fa l'agognata elaborazione!!!!!
|
||||||
TString16 elaborazione = _msk->get(F_CODICE_ELAB);
|
TString16 elaborazione = _msk->get(F_CODICE_ELAB);
|
||||||
TContabilizzazione_analitica contanal(elaborazione);
|
TContabilizzazione_analitica contanal(elaborazione);
|
||||||
contanal.elabora(lista_in, lista_out, data_reg);
|
contanal.elabora(lista_in, lista_out, data_reg, true);
|
||||||
|
|
||||||
if (contanal.processed_docs() > 0L)
|
if (contanal.processed_docs() > 0L)
|
||||||
message_box(FR("Totale documenti contabilizzati: %ld"), contanal.processed_docs());
|
message_box(FR("Totale documenti contabilizzati: %ld"), contanal.processed_docs());
|
||||||
|
@ -210,7 +210,6 @@ Item_04 = "Contabilizzazione spese e bolli", "ve0 -2 -4", "F"
|
|||||||
Item_05 = "Contabilizzazione", "ve0 -2 -5", "F"
|
Item_05 = "Contabilizzazione", "ve0 -2 -5", "F"
|
||||||
Item_06 = "Conti per categoria e gruppo", "ve0 -6 &CVM", "F"
|
Item_06 = "Conti per categoria e gruppo", "ve0 -6 &CVM", "F"
|
||||||
Item_07 = "Gestione spese e bolli", "ve0 -2 -6", "F"
|
Item_07 = "Gestione spese e bolli", "ve0 -2 -6", "F"
|
||||||
Item_08 = "Articoli e Distinte", "ve0 -2 -7", "F"
|
|
||||||
Item_09 = "Configurazione contabilità", "cg5 -1", "F"
|
Item_09 = "Configurazione contabilità", "cg5 -1", "F"
|
||||||
Item_10 = "Fido cliente", "ve0 -2 -8", "F"
|
Item_10 = "Fido cliente", "ve0 -2 -8", "F"
|
||||||
|
|
||||||
@ -221,7 +220,7 @@ Module = 0
|
|||||||
Flags = ""
|
Flags = ""
|
||||||
Item_01 = "Modifica valori", "ve4 -0", "F"
|
Item_01 = "Modifica valori", "ve4 -0", "F"
|
||||||
Item_02 = "Aggiornamento Codici IVA", "ve4 -1", "FP"
|
Item_02 = "Aggiornamento Codici IVA", "ve4 -1", "FP"
|
||||||
Item_03 = "Invio", [ACQVEN_025]
|
Item_03 = "Invio", [ACQVEN_025]
|
||||||
Item_04 = "Ricezione", [ACQVEN_026]
|
Item_04 = "Ricezione", [ACQVEN_026]
|
||||||
|
|
||||||
|
|
||||||
@ -230,9 +229,10 @@ Caption = "Configurazione magazzino"
|
|||||||
Picture = <ba04>
|
Picture = <ba04>
|
||||||
Module = 0
|
Module = 0
|
||||||
Flags = ""
|
Flags = ""
|
||||||
Item_01 = "Parametri di magazzino", "mg0 -2 -1", "F"
|
Item_01 = "Parametri di magazzino", "mg0 -2 -1", "F"
|
||||||
Item_02 = "Formato codice articoli", "mg0 -0 FCA", "F"
|
Item_02 = "Formato codice articoli", "mg0 -0 FCA", "F"
|
||||||
Item_03 = "Formato codice giacenze", "mg0 -0 FCG", "F"
|
Item_03 = "Formato codice giacenze", "mg0 -0 FCG", "F"
|
||||||
|
Item_04 = "Articoli e Distinte", "ve0 -2 -7", "F"
|
||||||
|
|
||||||
[ACQVEN_023]
|
[ACQVEN_023]
|
||||||
Caption = "Archivi contabili"
|
Caption = "Archivi contabili"
|
||||||
@ -287,4 +287,5 @@ Caption = "Verticalizzazioni"
|
|||||||
Picture = <ve01>
|
Picture = <ve01>
|
||||||
Module = 0
|
Module = 0
|
||||||
Flags = ""
|
Flags = ""
|
||||||
Item_01 = "Caffè Hardy", <hamenu.men>, "", 10232
|
Item_01 = "Bee Store", <bsmenu.men>, "", 9015
|
||||||
|
Item_02 = "Caffè Hardy", <hamenu.men>, "", 10232
|
||||||
|
11
ve/velib.h
11
ve/velib.h
@ -296,9 +296,11 @@ public:
|
|||||||
const char stato_mov_iniziale() const {return get_char("S7"); }
|
const char stato_mov_iniziale() const {return get_char("S7"); }
|
||||||
const char stato_mov_finale() const {return get_char("S8"); }
|
const char stato_mov_finale() const {return get_char("S8"); }
|
||||||
const char stato_provvigioni() const {return get("S3")[0]; }
|
const char stato_provvigioni() const {return get("S3")[0]; }
|
||||||
const TString & elaborazione() const {return get("S3").mid(4,8); }
|
const TString& elaborazione() const {return get("S3").mid(4,8); }
|
||||||
const TString & elaborazione_stampa() const {return get("S3").mid(12,8); }
|
const TString& elaborazione_stampa() const {return get("S3").mid(12,8); }
|
||||||
const TString & elaborazione_definitiva() const {return get("S3").mid(20,8); }
|
const TString& elaborazione_definitiva() const {return get("S3").mid(20,8); }
|
||||||
|
const TString& elaborazione_speciale() const {return get("S3").mid(28,8); }
|
||||||
|
bool movimento_interno() const;
|
||||||
const TString & caus_mov() const {return get("S9"); } // Causale di magazzino
|
const TString & caus_mov() const {return get("S9"); } // Causale di magazzino
|
||||||
const TString & caus_anticipo() const {return get("S10"); }
|
const TString & caus_anticipo() const {return get("S10"); }
|
||||||
const TString & tipi_iva_validi() const {return get("S11"); }
|
const TString & tipi_iva_validi() const {return get("S11"); }
|
||||||
@ -318,7 +320,7 @@ public:
|
|||||||
bool mail_print_profile(TFilename& report) const;
|
bool mail_print_profile(TFilename& report) const;
|
||||||
bool is_costo() const ;
|
bool is_costo() const ;
|
||||||
bool is_ricavo() const ;
|
bool is_ricavo() const ;
|
||||||
const TString & module() const { return _module; }
|
const TString& module() const { return _module; }
|
||||||
|
|
||||||
TFormula_documento* first_formula() { return succ_formula(true); }
|
TFormula_documento* first_formula() { return succ_formula(true); }
|
||||||
TFormula_documento* succ_formula(bool restart = false);
|
TFormula_documento* succ_formula(bool restart = false);
|
||||||
@ -1018,6 +1020,7 @@ public:
|
|||||||
static bool codval_handler( TMask_field& f, KEY key );
|
static bool codval_handler( TMask_field& f, KEY key );
|
||||||
static bool confirm_handler( TMask_field& f, KEY key );
|
static bool confirm_handler( TMask_field& f, KEY key );
|
||||||
static bool barcode_handler( TMask_field& f, KEY key );
|
static bool barcode_handler( TMask_field& f, KEY key );
|
||||||
|
static bool movint_handler( TMask_field& f, KEY key );
|
||||||
static bool sort_row_handler( TMask_field& f, KEY key );
|
static bool sort_row_handler( TMask_field& f, KEY key );
|
||||||
static bool ss_notify(TSheet_field& ss, int r, KEY key);
|
static bool ss_notify(TSheet_field& ss, int r, KEY key);
|
||||||
static bool ss_handler(TMask_field& f, KEY key);
|
static bool ss_handler(TMask_field& f, KEY key);
|
||||||
|
@ -3008,6 +3008,10 @@ void TDocumento::update_conai()
|
|||||||
bool TDocumento::is_evaso() const
|
bool TDocumento::is_evaso() const
|
||||||
{
|
{
|
||||||
bool ok = is_ordine() || is_bolla() || is_generic();
|
bool ok = is_ordine() || is_bolla() || is_generic();
|
||||||
|
|
||||||
|
if (ok && tipo().is_ordine_quadro())
|
||||||
|
return false;
|
||||||
|
|
||||||
for (int r = 1; ok && r <= physical_rows(); r++)
|
for (int r = 1; ok && r <= physical_rows(); r++)
|
||||||
{
|
{
|
||||||
const TRiga_documento& riga = physical_row(r);
|
const TRiga_documento& riga = physical_row(r);
|
||||||
|
@ -171,21 +171,29 @@ const TString& TTipo_documento::riferimento(const TDocumento & doc, TString& rif
|
|||||||
}
|
}
|
||||||
|
|
||||||
TString val;
|
TString val;
|
||||||
|
switch (field.file())
|
||||||
if (field.file() == LF_DOC)
|
{
|
||||||
{
|
case LF_CLIFO:
|
||||||
|
case LF_CFVEN:
|
||||||
|
if (doc.get_long(DOC_CODCF) > 0)
|
||||||
|
{
|
||||||
|
TString8 key; key << doc.get(DOC_TIPOCF) << '|' << doc.get(DOC_CODCF);
|
||||||
|
const TRectype& rec = cache().get(field.file(), key);
|
||||||
|
val = field.read(rec);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LF_OCCAS:
|
||||||
|
if (doc.get_char(DOC_TIPOCF) == 'C' && doc.get(DOC_OCFPI).full())
|
||||||
|
{
|
||||||
|
const TRectype& rec = cache().get(LF_OCCAS, doc.get(DOC_OCFPI));
|
||||||
|
val = field.read(rec);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
val = field.read(doc);
|
val = field.read(doc);
|
||||||
rif.insert(val, p);
|
break;
|
||||||
}
|
}
|
||||||
else
|
rif.insert(val, p);
|
||||||
{
|
|
||||||
TString8 key(doc.get(DOC_TIPOCF));
|
|
||||||
key << '|' << doc.get(DOC_CODCF);
|
|
||||||
|
|
||||||
const TRectype& rec = cache().get(field.file(), key);
|
|
||||||
val = field.read(rec);
|
|
||||||
rif.insert(val, p);
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (conn)
|
switch (conn)
|
||||||
{
|
{
|
||||||
@ -449,6 +457,17 @@ void TTipo_documento::read_formule()
|
|||||||
_check_double_art = prof.get_bool("CHECK_DOUBLE_ART");
|
_check_double_art = prof.get_bool("CHECK_DOUBLE_ART");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool TTipo_documento::movimento_interno() const
|
||||||
|
{
|
||||||
|
const TString& elab = elaborazione();
|
||||||
|
if (elab.full())
|
||||||
|
{
|
||||||
|
const TString& app = cache().get("%ELD", elab, "S3");
|
||||||
|
return app.starts_with("ci1 -4", true);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
bool TTipo_documento::stato_with_mov_mag(const char stato) const
|
bool TTipo_documento::stato_with_mov_mag(const char stato) const
|
||||||
{
|
{
|
||||||
if (!mov_mag())
|
if (!mov_mag())
|
||||||
|
@ -537,8 +537,9 @@ bool TElaborazione_esterna::elabora(TLista_documenti& doc_in, TLista_documenti&
|
|||||||
return error_box("Non è stato specificato il nome del'applicazione esterna");
|
return error_box("Non è stato specificato il nome del'applicazione esterna");
|
||||||
CHECK(doc_in.items() == 1, "Si deve specificare un solo documento in entrata");
|
CHECK(doc_in.items() == 1, "Si deve specificare un solo documento in entrata");
|
||||||
CHECK(doc_out.items() <= 1, "Si deve specificare un solo documento in uscita");
|
CHECK(doc_out.items() <= 1, "Si deve specificare un solo documento in uscita");
|
||||||
TFilename name; name.temp("ext");
|
TDocumento& d = doc_in[0];
|
||||||
|
|
||||||
|
TFilename name; name.temp("ext");
|
||||||
TString16 par;
|
TString16 par;
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -554,10 +555,16 @@ bool TElaborazione_esterna::elabora(TLista_documenti& doc_in, TLista_documenti&
|
|||||||
c.set("CodNumOut", doc_out[0].get(DOC_CODNUM));
|
c.set("CodNumOut", doc_out[0].get(DOC_CODNUM));
|
||||||
c.set("NDocOut", doc_out[0].get(DOC_NDOC));
|
c.set("NDocOut", doc_out[0].get(DOC_NDOC));
|
||||||
}
|
}
|
||||||
|
else if (codice_numerazione_finale().full())
|
||||||
|
{
|
||||||
|
c.set("ProvvOut", d.get(DOC_PROVV));
|
||||||
|
c.set("AnnoOut", d.get(DOC_ANNO));
|
||||||
|
c.set("CodNumOut", codice_numerazione_finale());
|
||||||
|
c.set("NDocOut", 0L);
|
||||||
|
}
|
||||||
|
|
||||||
par.format("%d", LF_DOC);
|
par.format("%d", LF_DOC);
|
||||||
|
|
||||||
TDocumento& d = doc_in[0];
|
|
||||||
const int doc_fields = d.items();
|
const int doc_fields = d.items();
|
||||||
for (int i = 0; i < doc_fields; i++)
|
for (int i = 0; i < doc_fields; i++)
|
||||||
{
|
{
|
||||||
@ -608,25 +615,25 @@ bool TElaborazione_esterna::elabora(TLista_documenti& doc_in, TLista_documenti&
|
|||||||
c.list_paragraphs(p);
|
c.list_paragraphs(p);
|
||||||
d.destroy_rows();
|
d.destroy_rows();
|
||||||
|
|
||||||
int r = 1 ;
|
for (int r = 1; ; r++)
|
||||||
par.format("%d,%d", LF_RIGHEDOC, r);
|
{
|
||||||
while (p.find(par) >= 0)
|
par.format("%d,%d", LF_RIGHEDOC, r);
|
||||||
{
|
if (p.find(par) < 0)
|
||||||
const TString& tiporiga = c.get(RDOC_TIPORIGA, par);
|
break;
|
||||||
|
const TString& tiporiga = c.get(RDOC_TIPORIGA, par, -1, "01");
|
||||||
TRiga_documento& row = d.new_row(tiporiga);
|
TRiga_documento& row = d.new_row(tiporiga);
|
||||||
for (int i = row.items()-1; i >= 0; i--)
|
for (int i = row.items()-1; i >= 0; i--)
|
||||||
{
|
{
|
||||||
const char* fname = row.fieldname(i);
|
const char* fname = row.fieldname(i);
|
||||||
const TFieldref f(fname, LF_RIGHEDOC);
|
const TFieldref f(fname, LF_RIGHEDOC);
|
||||||
const TString& val = f.read(c, par);
|
const TString& val = f.read(c, par);
|
||||||
if (val.not_empty())
|
if (val.full())
|
||||||
row.put(fname, val);
|
row.put(fname, val);
|
||||||
}
|
}
|
||||||
par.format("%d,%d", LF_RIGHEDOC, ++r);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const char final = stato_finale_doc_iniziale()[0];
|
const char final = stato_finale_doc_iniziale()[0];
|
||||||
if (d.stato() != final)
|
if (final > '0' && d.stato() != final)
|
||||||
d.stato(final);
|
d.stato(final);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@ -635,11 +642,13 @@ bool TElaborazione_esterna::elabora(TLista_documenti& doc_in, TLista_documenti&
|
|||||||
{
|
{
|
||||||
if (doc_out.items())
|
if (doc_out.items())
|
||||||
{
|
{
|
||||||
|
const TString& ndoc = c.get("NDocOut", "Transaction");
|
||||||
|
if (ndoc != doc_out[0].get(DOC_NDOC))
|
||||||
|
doc_out[0].put(DOC_NDOC, ndoc);
|
||||||
doc_out[0].read();
|
doc_out[0].read();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -642,7 +642,7 @@ protected:
|
|||||||
const TCausale& rdoc2caus(const TRiga_documento& rdoc);
|
const TCausale& rdoc2caus(const TRiga_documento& rdoc);
|
||||||
|
|
||||||
void init_distrib(TString_array& conti, TGeneric_distrib& distrib, bool pareggio);
|
void init_distrib(TString_array& conti, TGeneric_distrib& distrib, bool pareggio);
|
||||||
void calcola_date_comp(const TDocumento& doc, TDate& datacomp, TDate& datafcomp, int annoes);
|
int calcola_date_comp(const TDocumento& doc, TDate& datacomp, TDate& datafcomp) const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
bool search_costo_ricavo(const TRiga_documento& riga, TBill& conto, bool riclassifica_fdr_fde);
|
bool search_costo_ricavo(const TRiga_documento& riga, TBill& conto, bool riclassifica_fdr_fde);
|
||||||
|
@ -220,17 +220,20 @@ void TConsegna_mask::doc2mask(const TDocumento& indoc, const TDocumento& outdoc,
|
|||||||
TEsercizi_contabili esc;
|
TEsercizi_contabili esc;
|
||||||
const int codes = esc.date2esc(oggi);
|
const int codes = esc.date2esc(oggi);
|
||||||
|
|
||||||
const bool show_evaded = indoc.tipo().mostra_righe_evase_in_elaborazione();
|
const TTipo_documento& tip = indoc.tipo();
|
||||||
|
const bool ordine_quadro = tip.is_ordine_quadro();
|
||||||
|
const bool show_evaded = ordine_quadro || tip.mostra_righe_evase_in_elaborazione();
|
||||||
|
|
||||||
TSheet_field& s = sfield(F_ROWS);
|
TSheet_field& s = sfield(F_ROWS);
|
||||||
s.destroy();
|
s.destroy();
|
||||||
|
|
||||||
const int rows = indoc.physical_rows();
|
const int rows = indoc.physical_rows();
|
||||||
int rowno = 0;
|
int rowno = 0;
|
||||||
for (int i = 0; i < rows; i++)
|
for (int i = 0; i < rows; i++)
|
||||||
{
|
{
|
||||||
const TRiga_documento& rec = indoc[i+1];
|
const TRiga_documento& rec = indoc[i+1];
|
||||||
const real residuo = rec.qtaresidua();
|
const real residuo = rec.qtaresidua();
|
||||||
const bool evasa = residuo.is_zero();
|
const bool evasa = residuo.is_zero() && !ordine_quadro;
|
||||||
bool show_line = show_evaded || !evasa;
|
bool show_line = show_evaded || !evasa;
|
||||||
if (rec.is_descrizione())
|
if (rec.is_descrizione())
|
||||||
show_line = !_ignora_descrizioni;
|
show_line = !_ignora_descrizioni;
|
||||||
@ -355,15 +358,13 @@ bool TConsegna_ordini::aggiorna_ncolli_tara_pnetto(TRiga_documento& r) const
|
|||||||
TArticolo& articolo = cached_article(codart);
|
TArticolo& articolo = cached_article(codart);
|
||||||
const real qta = articolo.convert_to_um(r.quantita(), NULL, r.get(RDOC_UMQTA));
|
const real qta = articolo.convert_to_um(r.quantita(), NULL, r.get(RDOC_UMQTA));
|
||||||
real ncolli, tara, pnetto;
|
real ncolli, tara, pnetto;
|
||||||
|
|
||||||
const bool ok = calcola_ncolli_tara_pnetto(codart, qta, ncolli, tara, pnetto);
|
const bool ok = calcola_ncolli_tara_pnetto(codart, qta, ncolli, tara, pnetto);
|
||||||
if (ok)
|
if (ok)
|
||||||
{
|
{
|
||||||
r.put(RDOC_NCOLLI, ncolli);
|
r.put(RDOC_NCOLLI, ncolli);
|
||||||
r.put(RDOC_TARA, tara);
|
r.put(RDOC_TARA, tara);
|
||||||
r.put(RDOC_PNETTO, pnetto);
|
r.put(RDOC_PNETTO, pnetto);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ok;
|
return ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -400,7 +401,6 @@ bool TConsegna_ordini::genera_righe_riferimento(const TDocumento& indoc, TDocume
|
|||||||
}
|
}
|
||||||
|
|
||||||
const TString4 numrif = num_riferimenti_in();
|
const TString4 numrif = num_riferimenti_in();
|
||||||
|
|
||||||
if (numrif.full())
|
if (numrif.full())
|
||||||
{
|
{
|
||||||
TAssoc_array doc_rows;
|
TAssoc_array doc_rows;
|
||||||
@ -425,8 +425,7 @@ bool TConsegna_ordini::genera_righe_riferimento(const TDocumento& indoc, TDocume
|
|||||||
query << "\nFROM " << select;
|
query << "\nFROM " << select;
|
||||||
query << "\nTO " << select;
|
query << "\nTO " << select;
|
||||||
|
|
||||||
TISAM_recordset recset(query);
|
TISAM_recordset recset(query);
|
||||||
|
|
||||||
for (bool ok = recset.move_first(); ok; ok = recset.move_next())
|
for (bool ok = recset.move_first(); ok; ok = recset.move_next())
|
||||||
{
|
{
|
||||||
const char provv = recset.get(RDOC_PROVV).as_string()[0];
|
const char provv = recset.get(RDOC_PROVV).as_string()[0];
|
||||||
@ -820,8 +819,7 @@ bool TConsegna_ordini::elabora(TLista_documenti& doc_in, TLista_documenti& doc_o
|
|||||||
}
|
}
|
||||||
// Crea una nuova riga merce senza articolo e con sola descrizione, qta ed um
|
// Crea una nuova riga merce senza articolo e con sola descrizione, qta ed um
|
||||||
TRiga_documento& outrec = outdoc.insert_row(i+1, tiporiga);
|
TRiga_documento& outrec = outdoc.insert_row(i+1, tiporiga);
|
||||||
TString descr;
|
TString descr; descr << TR("Scarto ") << codart;
|
||||||
descr << TR("Scarto") << ' ' << codart;
|
|
||||||
outrec.put(RDOC_DESCR, descr);
|
outrec.put(RDOC_DESCR, descr);
|
||||||
TToken_string& ska = *(TToken_string*)obj;
|
TToken_string& ska = *(TToken_string*)obj;
|
||||||
outrec.put(RDOC_UMQTA, ska.get(0));
|
outrec.put(RDOC_UMQTA, ska.get(0));
|
||||||
@ -846,8 +844,6 @@ bool TConsegna_ordini::elabora(TLista_documenti& doc_in, TLista_documenti& doc_o
|
|||||||
FOR_EACH_PHYSICAL_RDOC_BACK(indoc, i, rdoc)
|
FOR_EACH_PHYSICAL_RDOC_BACK(indoc, i, rdoc)
|
||||||
{
|
{
|
||||||
TRiga_documento& inrec = *rdoc;
|
TRiga_documento& inrec = *rdoc;
|
||||||
const int nrow = inrec.get_int(RDOC_NRIGA);
|
|
||||||
|
|
||||||
if (inrec.is_evasa())
|
if (inrec.is_evasa())
|
||||||
indoc.destroy_row(i, true);
|
indoc.destroy_row(i, true);
|
||||||
else
|
else
|
||||||
@ -855,7 +851,6 @@ bool TConsegna_ordini::elabora(TLista_documenti& doc_in, TLista_documenti& doc_o
|
|||||||
const real evaso = inrec.qtaevasa();
|
const real evaso = inrec.qtaevasa();
|
||||||
const char* fq = inrec.field_qta();
|
const char* fq = inrec.field_qta();
|
||||||
const char* fqe = inrec.field_qtaevasa();
|
const char* fqe = inrec.field_qtaevasa();
|
||||||
|
|
||||||
inrec.add(fq, -evaso); // nuovo modo di incrementare
|
inrec.add(fq, -evaso); // nuovo modo di incrementare
|
||||||
inrec.zero(fqe);
|
inrec.zero(fqe);
|
||||||
}
|
}
|
||||||
|
@ -41,7 +41,7 @@ const TCausale& TCache_causali::causale(const TDocumento& doc, const TString & f
|
|||||||
|
|
||||||
if (!fld_cms.blank())
|
if (!fld_cms.blank())
|
||||||
{
|
{
|
||||||
const TString & cms = doc.commessa_principale();
|
const TString& cms = doc.commessa_principale();
|
||||||
|
|
||||||
if (!cms.blank())
|
if (!cms.blank())
|
||||||
{
|
{
|
||||||
@ -302,7 +302,7 @@ bool TContabilizzazione_analitica::search_costo_ricavo(const TRiga_documento& r,
|
|||||||
|
|
||||||
if (rdoc != NULL && rdoc->get(RDOC_PROVV).not_empty())
|
if (rdoc != NULL && rdoc->get(RDOC_PROVV).not_empty())
|
||||||
{
|
{
|
||||||
TString80 key(rdoc->get(RDOC_CODNUM));
|
TString80 key = rdoc->get(RDOC_CODNUM);
|
||||||
|
|
||||||
const TCodice_numerazione& num = cached_numerazione(key);
|
const TCodice_numerazione& num = cached_numerazione(key);
|
||||||
if (num.fattura_emettere_ricevere())
|
if (num.fattura_emettere_ricevere())
|
||||||
@ -334,11 +334,12 @@ bool TContabilizzazione_analitica::search_costo_ricavo(const TRiga_documento& r,
|
|||||||
return conto.ok() && conto.find();
|
return conto.ok() && conto.find();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TContabilizzazione_analitica::find_conti_iva_indetraibile(const TRiga_documento& riga, const TBill & bill, TString_array& conti, int annoes, const char tipomov, bool & pareggio)
|
bool TContabilizzazione_analitica::find_conti_iva_indetraibile(const TRiga_documento& riga, const TBill& bill,
|
||||||
|
TString_array& conti, int annoes, const char tipomov, bool& pareggio)
|
||||||
{
|
{
|
||||||
const TString80 riga_cos = riga.codice_costo();
|
const TCodice_cdc riga_cos = riga.codice_costo();
|
||||||
const TString80 riga_cms = riga.codice_commessa();
|
const TCodice_cms riga_cms = riga.codice_commessa();
|
||||||
const TString16 riga_fsc = riga.fase_commessa();
|
const TCodice_fas riga_fsc = riga.fase_commessa();
|
||||||
TToken_string conto;
|
TToken_string conto;
|
||||||
|
|
||||||
conto = bill.string(0x8); // format("%03d%03d%06ld", bill.gruppo(), bill.conto(), bill.sottoconto());
|
conto = bill.string(0x8); // format("%03d%03d%06ld", bill.gruppo(), bill.conto(), bill.sottoconto());
|
||||||
@ -381,7 +382,7 @@ bool TContabilizzazione_analitica::find_conti(const TRiga_documento& riga, TStri
|
|||||||
bool bArcticleFound = false;
|
bool bArcticleFound = false;
|
||||||
|
|
||||||
const char tipocf = riga.doc().get_char(DOC_TIPOCF);
|
const char tipocf = riga.doc().get_char(DOC_TIPOCF);
|
||||||
TString80 contanal;
|
TCodice_con contanal;
|
||||||
TToken_string conto;
|
TToken_string conto;
|
||||||
TBill bill; // Cerco il conto contabile
|
TBill bill; // Cerco il conto contabile
|
||||||
|
|
||||||
@ -442,9 +443,9 @@ bool TContabilizzazione_analitica::find_conti(const TRiga_documento& riga, TStri
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const TString80 riga_cos = riga.codice_costo();
|
const TCodice_cdc riga_cos = riga.codice_costo();
|
||||||
const TString80 riga_cms = riga.codice_commessa();
|
const TCodice_cms riga_cms = riga.codice_commessa();
|
||||||
const TString16 riga_fsc = riga.fase_commessa();
|
const TCodice_fas riga_fsc = riga.fase_commessa();
|
||||||
|
|
||||||
if (contanal.full()) // Non ho trovato il conto in anagrafica ...
|
if (contanal.full()) // Non ho trovato il conto in anagrafica ...
|
||||||
{
|
{
|
||||||
@ -469,18 +470,16 @@ bool TContabilizzazione_analitica::find_conti(const TRiga_documento& riga, TStri
|
|||||||
|
|
||||||
conto = rigarip.get(RRIP_CODCONTO).full() ? rigarip.get(RRIP_CODCONTO) : contanal;
|
conto = rigarip.get(RRIP_CODCONTO).full() ? rigarip.get(RRIP_CODCONTO) : contanal;
|
||||||
|
|
||||||
const TString costo = rigarip.get(RRIP_CODCOSTO);
|
const TString& costo = rigarip.get(RRIP_CODCOSTO);
|
||||||
|
|
||||||
conto.add(costo.full() ? costo : riga_cos, 1);
|
conto.add(costo.full() ? costo : riga_cos, 1);
|
||||||
|
|
||||||
const TString & commessa = rigarip.get(RRIP_CODCMS);
|
const TString& commessa = rigarip.get(RRIP_CODCMS);
|
||||||
|
|
||||||
conto.add(commessa.full() ? commessa : riga_cms, 2);
|
conto.add(commessa.full() ? commessa : riga_cms, 2);
|
||||||
|
|
||||||
const TString & fase = rigarip.get(RRIP_CODFASE);
|
const TString & fase = rigarip.get(RRIP_CODFASE);
|
||||||
|
|
||||||
conto.add(fase.full() ? fase: riga_fsc, 3);
|
conto.add(fase.full() ? fase: riga_fsc, 3);
|
||||||
conto.add(rigarip.get(RRIP_RIPARTO), 4);
|
|
||||||
|
conto.add(rigarip.get(RRIP_RIPARTO), 4);
|
||||||
conti.add(conto);
|
conti.add(conto);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -502,7 +501,7 @@ void TContabilizzazione_analitica::init_distrib(TString_array& conti, TGeneric_d
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TContabilizzazione_analitica::calcola_date_comp(const TDocumento& doc, TDate& datacomp, TDate& datafcomp, int annoes)
|
int TContabilizzazione_analitica::calcola_date_comp(const TDocumento& doc, TDate& datacomp, TDate& datafcomp) const
|
||||||
{
|
{
|
||||||
const TDate datadoc = doc.get_date(DOC_DATADOC);
|
const TDate datadoc = doc.get_date(DOC_DATADOC);
|
||||||
datacomp = doc.get_date(DOC_DATACOMP);
|
datacomp = doc.get_date(DOC_DATACOMP);
|
||||||
@ -512,7 +511,7 @@ void TContabilizzazione_analitica::calcola_date_comp(const TDocumento& doc, TDat
|
|||||||
if (!datafcomp.ok())
|
if (!datafcomp.ok())
|
||||||
datafcomp = datacomp;
|
datafcomp = datacomp;
|
||||||
|
|
||||||
annoes = esercizi().date2esc(datacomp); //ci potrebbe andare datacomp? All'analisi l'ardua sentenza
|
return esercizi().date2esc(datacomp); //ci potrebbe andare datacomp? All'analisi l'ardua sentenza
|
||||||
}
|
}
|
||||||
|
|
||||||
void TContabilizzazione_analitica::split_sp_amount(TAnal_mov & mov, bool pareggio, const TImporto & totdoc,
|
void TContabilizzazione_analitica::split_sp_amount(TAnal_mov & mov, bool pareggio, const TImporto & totdoc,
|
||||||
@ -573,7 +572,7 @@ bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TVis
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
calcola_date_comp(doc, datacomp, datafcomp, annoes);
|
annoes = calcola_date_comp(doc, datacomp, datafcomp);
|
||||||
datareg = datadoc;
|
datareg = datadoc;
|
||||||
|
|
||||||
doc.riferimento(descr);
|
doc.riferimento(descr);
|
||||||
@ -620,7 +619,7 @@ bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TVis
|
|||||||
mov.put(MOVANA_NUMREG, numreg_ca = 0);
|
mov.put(MOVANA_NUMREG, numreg_ca = 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
calcola_date_comp(doc, datacomp, datafcomp, annoes);
|
annoes = calcola_date_comp(doc, datacomp, datafcomp);
|
||||||
|
|
||||||
mov.put(MOVANA_DATAREG, datareg);
|
mov.put(MOVANA_DATAREG, datareg);
|
||||||
mov.put(MOVANA_DATACOMP, datacomp);
|
mov.put(MOVANA_DATACOMP, datacomp);
|
||||||
@ -872,7 +871,9 @@ bool TContabilizzazione_analitica::elabora(TLista_documenti& doc_in, TLista_docu
|
|||||||
p.links().add("Movimento Analitico |r|w", 0);
|
p.links().add("Movimento Analitico |r|w", 0);
|
||||||
p.setlinkhandler(link_handler_ana);
|
p.setlinkhandler(link_handler_ana);
|
||||||
pre_process_input(doc_in);
|
pre_process_input(doc_in);
|
||||||
v.open_modal();
|
|
||||||
|
if (interattivo)
|
||||||
|
v.open_modal();
|
||||||
for (int i = 0; i < doc_in.items(); i++)
|
for (int i = 0; i < doc_in.items(); i++)
|
||||||
{
|
{
|
||||||
TAnal_mov mov;
|
TAnal_mov mov;
|
||||||
@ -897,7 +898,8 @@ bool TContabilizzazione_analitica::elabora(TLista_documenti& doc_in, TLista_docu
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
v.close_print();
|
v.close_print();
|
||||||
v.close_modal();
|
if (interattivo)
|
||||||
|
v.close_modal();
|
||||||
|
|
||||||
if (_total_docs > 0)
|
if (_total_docs > 0)
|
||||||
{
|
{
|
||||||
@ -905,8 +907,11 @@ bool TContabilizzazione_analitica::elabora(TLista_documenti& doc_in, TLista_docu
|
|||||||
post_process(doc_out, doc_in);
|
post_process(doc_out, doc_in);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (v.run() == K_CTRL+'S') // Ho premuto Stampa
|
if (interattivo || _total_docs < doc_in.items())
|
||||||
p.print_txt(v.text());
|
{
|
||||||
|
if (v.run() == K_CTRL+'S') // Ho premuto Stampa
|
||||||
|
p.print_txt(v.text());
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
9185
ve/velib06.cpp
9185
ve/velib06.cpp
File diff suppressed because it is too large
Load Diff
@ -610,7 +610,7 @@ bool iva_handler( TMask_field& f, KEY key )
|
|||||||
bool addiva = false;
|
bool addiva = false;
|
||||||
|
|
||||||
if (pos_ai >= 0)
|
if (pos_ai >= 0)
|
||||||
addiva = row_mask.fld(pos_ai).get() == "X"; // Controlla le righe Omaggio solo se e' settato l'addebito IVA
|
addiva = row_mask.fld(pos_ai).get() == "X"; // Controlla le righe Omaggio solo se è settato l'addebito IVA
|
||||||
|
|
||||||
const bool check = riga.is_merce() || riga.is_spese() || riga.is_prestazione() ||
|
const bool check = riga.is_merce() || riga.is_spese() || riga.is_prestazione() ||
|
||||||
(riga.is_omaggio() && addiva);
|
(riga.is_omaggio() && addiva);
|
||||||
@ -625,7 +625,7 @@ bool iva_handler( TMask_field& f, KEY key )
|
|||||||
const bool qf = qe && row_mask.fld(pos_q).get().not_empty();
|
const bool qf = qe && row_mask.fld(pos_q).get().not_empty();
|
||||||
const bool required = pf && !(qe && !qf);
|
const bool required = pf && !(qe && !qf);
|
||||||
if (required)
|
if (required)
|
||||||
return f.error_box("Il codice IVA e' obbligatorio.");
|
return f.error_box(TR("Il codice IVA è obbligatorio."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@ -892,11 +892,8 @@ void upd_colli_peso_tara(TMask& m, const TString & codart)
|
|||||||
const real peso = qta * articolo.get_real(ANAMAG_PESO);
|
const real peso = qta * articolo.get_real(ANAMAG_PESO);
|
||||||
m.fld(pos).set(peso.string());
|
m.fld(pos).set(peso.string());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
bool pricerange_handler(TMask_field& f, KEY key )
|
bool pricerange_handler(TMask_field& f, KEY key )
|
||||||
{
|
{
|
||||||
if (key == K_TAB && f.focusdirty())
|
if (key == K_TAB && f.focusdirty())
|
||||||
@ -1040,8 +1037,8 @@ bool TPrice_sheet::get_ini_paragraph(const TEdit_field& field, TString& parag) c
|
|||||||
|
|
||||||
TPrice_sheet::TPrice_sheet(TEdit_field& f)
|
TPrice_sheet::TPrice_sheet(TEdit_field& f)
|
||||||
: TArray_sheet(0, 3, -1, 16, TR("Ricerca Prezzi"),
|
: TArray_sheet(0, 3, -1, 16, TR("Ricerca Prezzi"),
|
||||||
HR("Num.|Data@10|Codice articolo@20|Descrizione@40|Quantità@15P|Prezzo@18P|Sconto@10|Numerazione@18|Tipo Documento@18"), 0, 1),
|
HR("Num.|Data@10|Codice articolo@20|Descrizione@40|Quantità@15P|Prezzo@18P|Sconto@10|Numerazione@18|Tipo Documento@18"), 0, 1),
|
||||||
_fld(f)
|
_fld(f)
|
||||||
{
|
{
|
||||||
load_columns_order(_fld);
|
load_columns_order(_fld);
|
||||||
}
|
}
|
||||||
@ -1114,13 +1111,11 @@ static void search_price(TEdit_field& f, KEY key )
|
|||||||
rec.put(RDOC_NDOC, cur.curr().get(DOC_NDOC));
|
rec.put(RDOC_NDOC, cur.curr().get(DOC_NDOC));
|
||||||
r.read(rec);
|
r.read(rec);
|
||||||
|
|
||||||
int last_row = r.last_row();
|
const int last_row = r.last_row();
|
||||||
|
|
||||||
for (int i = r.first_row(); i <= last_row; i = r.succ_row(i))
|
for (int i = r.first_row(); i <= last_row; i = r.succ_row(i))
|
||||||
{
|
{
|
||||||
const TRectype & rdoc = r.row(i);
|
const TRectype& rdoc = r.row(i);
|
||||||
const TString & codart = rdoc.get(RDOC_CODART);
|
const TString& codart = rdoc.get(RDOC_CODART);
|
||||||
|
|
||||||
if (codart.full())
|
if (codart.full())
|
||||||
{
|
{
|
||||||
TToken_string row;
|
TToken_string row;
|
||||||
@ -1437,15 +1432,14 @@ TObject* TCache_documenti::rec2obj(const TRectype& curr) const
|
|||||||
return new TDocumento(curr);
|
return new TDocumento(curr);
|
||||||
}
|
}
|
||||||
|
|
||||||
TDocumento & TCache_documenti::doc(const char* key)
|
TDocumento& TCache_documenti::doc(const char* key)
|
||||||
{
|
{
|
||||||
return (TDocumento &)query(key);
|
return (TDocumento &)query(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
TDocumento & cached_doc(const char* key)
|
TDocumento& cached_doc(const char* key)
|
||||||
{
|
{
|
||||||
static TCache_documenti * _cache_docs = NULL;
|
static TCache_documenti * _cache_docs = NULL;
|
||||||
|
|
||||||
if (_cache_docs == NULL)
|
if (_cache_docs == NULL)
|
||||||
_cache_docs = new TCache_documenti();
|
_cache_docs = new TCache_documenti();
|
||||||
return _cache_docs->doc(key);
|
return _cache_docs->doc(key);
|
||||||
@ -1454,12 +1448,11 @@ TDocumento & cached_doc(const char* key)
|
|||||||
class TLink_riga_documento : public TRiga_documento
|
class TLink_riga_documento : public TRiga_documento
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
|
const TDocumento_mask* _mask;
|
||||||
const TDocumento_mask * _mask;
|
|
||||||
virtual const TString& get_str(const char* fieldname) const;
|
virtual const TString& get_str(const char* fieldname) const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual const TDocumento & doc() const;
|
virtual const TDocumento& doc() const;
|
||||||
void set_mask(const TDocumento_mask * m) { _mask = m;}
|
void set_mask(const TDocumento_mask * m) { _mask = m;}
|
||||||
virtual real qtaresidua() const;
|
virtual real qtaresidua() const;
|
||||||
|
|
||||||
@ -1471,8 +1464,7 @@ const TString& TLink_riga_documento::get_str(const char* fieldname) const
|
|||||||
{
|
{
|
||||||
if (strcmp(fieldname, "RESIDUO") == 0)
|
if (strcmp(fieldname, "RESIDUO") == 0)
|
||||||
{
|
{
|
||||||
TString & value = get_tmp_string(80);
|
TString& value = get_tmp_string();
|
||||||
|
|
||||||
value = qtaresidua().string();
|
value = qtaresidua().string();
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
@ -1480,17 +1472,17 @@ const TString& TLink_riga_documento::get_str(const char* fieldname) const
|
|||||||
return TRiga_documento::get_str(fieldname);
|
return TRiga_documento::get_str(fieldname);
|
||||||
}
|
}
|
||||||
|
|
||||||
const TDocumento & TLink_riga_documento::doc() const
|
const TDocumento& TLink_riga_documento::doc() const
|
||||||
{
|
{
|
||||||
if (has_doc())
|
if (has_doc())
|
||||||
return TRiga_documento::doc();
|
return TRiga_documento::doc();
|
||||||
TToken_string key;
|
|
||||||
|
TToken_string key;
|
||||||
key.add(get_char(RDOC_PROVV));
|
key.add(get_char(RDOC_PROVV));
|
||||||
key.add(get_int(RDOC_ANNO));
|
key.add(get_int(RDOC_ANNO));
|
||||||
key.add(get(RDOC_CODNUM));
|
key.add(get(RDOC_CODNUM));
|
||||||
key.add(get_long(RDOC_NDOC));
|
key.add(get_long(RDOC_NDOC));
|
||||||
return cached_doc(key);;
|
return cached_doc(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
real TLink_riga_documento::qtaresidua() const
|
real TLink_riga_documento::qtaresidua() const
|
||||||
@ -1551,7 +1543,7 @@ bool TLink_article_sheet::get_ini_paragraph(const TEdit_field& field, TString& p
|
|||||||
|
|
||||||
|
|
||||||
TLink_article_sheet::TLink_article_sheet(TCursor& cur, TEdit_field& f, const char * fieldlist, const char * headers)
|
TLink_article_sheet::TLink_article_sheet(TCursor& cur, TEdit_field& f, const char * fieldlist, const char * headers)
|
||||||
: TBrowse_sheet(&cur, fieldlist, TR("Evasione"), headers, 0, f, TToken_string())
|
: TBrowse_sheet(&cur, fieldlist, TR("Evasione"), headers, 0, f, TToken_string())
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
bool link_row_handler(TMask_field& f, KEY key )
|
bool link_row_handler(TMask_field& f, KEY key )
|
||||||
@ -2164,10 +2156,10 @@ bool um_handler( TMask_field& f, KEY key )
|
|||||||
if ( key == K_TAB && f.focusdirty())
|
if ( key == K_TAB && f.focusdirty())
|
||||||
{
|
{
|
||||||
TMask& row_mask = f.mask( );
|
TMask& row_mask = f.mask( );
|
||||||
TTable & ums = (TTable &) ((TEdit_field &) f).browse()->cursor()->file();
|
TTable& ums = (TTable&)((TEdit_field&)f).browse()->cursor()->file();
|
||||||
|
|
||||||
const TString16 um(f.get());
|
const TString4 um = f.get();
|
||||||
real fc(1.0);
|
real fc = UNO;
|
||||||
|
|
||||||
if (um.not_empty() && curr_um.not_empty() && um != curr_um)
|
if (um.not_empty() && curr_um.not_empty() && um != curr_um)
|
||||||
{
|
{
|
||||||
@ -2175,7 +2167,7 @@ bool um_handler( TMask_field& f, KEY key )
|
|||||||
if (ums.read() == NOERR)
|
if (ums.read() == NOERR)
|
||||||
{
|
{
|
||||||
real qta(row_mask.get_real(FR_QTA));
|
real qta(row_mask.get_real(FR_QTA));
|
||||||
const TString16 umsrif0(ums.get("S7"));
|
const TString4 umsrif0 = ums.get("S7");
|
||||||
const real fc0 = ums.get_real("R10");
|
const real fc0 = ums.get_real("R10");
|
||||||
if (um == umsrif0)
|
if (um == umsrif0)
|
||||||
fc = fc0;
|
fc = fc0;
|
||||||
@ -2185,15 +2177,14 @@ bool um_handler( TMask_field& f, KEY key )
|
|||||||
if (ums.read() == NOERR)
|
if (ums.read() == NOERR)
|
||||||
{
|
{
|
||||||
const real fc1 = ums.get_real("R10");
|
const real fc1 = ums.get_real("R10");
|
||||||
const TString16 umsrif1(ums.get("S7"));
|
|
||||||
|
|
||||||
if (fc1 > ZERO)
|
if (fc1 > ZERO)
|
||||||
{
|
{
|
||||||
|
const TString& umsrif1 = ums.get("S7");
|
||||||
if (curr_um == umsrif1)
|
if (curr_um == umsrif1)
|
||||||
fc = 1 / fc1;
|
fc = UNO / fc1;
|
||||||
else
|
else
|
||||||
if (umsrif0 == ums.get("S7"))
|
if (umsrif0 == umsrif1)
|
||||||
fc = fc0 / ums.get_real("R10");
|
fc = fc0 / fc1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3241,12 +3232,12 @@ bool sottocat_conai_handler(TMask_field& f, KEY key )
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool peso_conai_handler(TMask_field& f, KEY key )
|
bool peso_conai_handler(TMask_field& f, KEY key)
|
||||||
{
|
{
|
||||||
if (key == K_F8)
|
if (key == K_F8)
|
||||||
{
|
{
|
||||||
const TString & codart = f.mask().get(FR_CODARTMAG);
|
const TString& codart = f.mask().get(FR_CODARTMAG);
|
||||||
TArticolo & articolo = cached_article(codart);
|
const TArticolo& articolo = cached_article(codart);
|
||||||
const TCONAI_class type = conai_id2class(f.dlg());
|
const TCONAI_class type = conai_id2class(f.dlg());
|
||||||
f.set(articolo.get(conai_peso_name(type, LF_ANAMAG)));
|
f.set(articolo.get(conai_peso_name(type, LF_ANAMAG)));
|
||||||
}
|
}
|
||||||
@ -3258,16 +3249,14 @@ bool datacomp_handler(TMask_field& f, KEY key)
|
|||||||
if (key == K_F8)
|
if (key == K_F8)
|
||||||
f.set(f.mask().get(F_DATADOC));
|
f.set(f.mask().get(F_DATADOC));
|
||||||
|
|
||||||
if (f.to_check(key, false))
|
if (f.to_check(key, false) && !f.empty())
|
||||||
{
|
{
|
||||||
const TDate datadoc = f.mask().get_date(F_DATADOC);
|
const TDate datadoc = f.mask().get_date(F_DATADOC);
|
||||||
const TEsercizi_contabili es_doc;
|
const TEsercizi_contabili esc;
|
||||||
int anno_doc = es_doc.date2esc(datadoc);
|
const int anno_doc = esc.date2esc(datadoc);
|
||||||
|
|
||||||
const TDate datacomp = f.get();
|
const TDate datacomp = f.get();
|
||||||
const TEsercizi_contabili es_comp;
|
const int anno_comp = esc.date2esc(datacomp);
|
||||||
int anno_comp = es_comp.date2esc(datacomp);
|
|
||||||
|
|
||||||
if (anno_doc != anno_comp)
|
if (anno_doc != anno_comp)
|
||||||
return error_box("La data inizio competenza deve appartenere all'esercizio del documento!");
|
return error_box("La data inizio competenza deve appartenere all'esercizio del documento!");
|
||||||
}
|
}
|
||||||
@ -3276,7 +3265,7 @@ bool datacomp_handler(TMask_field& f, KEY key)
|
|||||||
|
|
||||||
bool datafcomp_handler(TMask_field& f, KEY key)
|
bool datafcomp_handler(TMask_field& f, KEY key)
|
||||||
{
|
{
|
||||||
if (f.to_check(key, false))
|
if (f.to_check(key, false) && !f.empty())
|
||||||
{
|
{
|
||||||
const TDate datacomp = f.mask().get_date(F_DATACOMP);
|
const TDate datacomp = f.mask().get_date(F_DATACOMP);
|
||||||
const TDate datafcomp = f.get();
|
const TDate datafcomp = f.get();
|
||||||
|
@ -48,7 +48,7 @@ bool nar_handler(TMask_field& f, KEY key);
|
|||||||
bool subappalto_hndl(TMask_field& f, KEY key);
|
bool subappalto_hndl(TMask_field& f, KEY key);
|
||||||
bool reportba8_hndl(TMask_field& f, KEY key);
|
bool reportba8_hndl(TMask_field& f, KEY key);
|
||||||
|
|
||||||
bool tipodoc_ok(const TString & tipodoc);
|
bool is_tipodoc_ok(const TString & tipodoc);
|
||||||
|
|
||||||
TCONAI_class conai_id2class(short id);
|
TCONAI_class conai_id2class(short id);
|
||||||
short conai_peso_id(TCONAI_class cc);
|
short conai_peso_id(TCONAI_class cc);
|
||||||
|
@ -51,6 +51,13 @@
|
|||||||
#define RSS_MATRICOLA 172
|
#define RSS_MATRICOLA 172
|
||||||
#define RSS_QUALIFICA 173
|
#define RSS_QUALIFICA 173
|
||||||
|
|
||||||
|
#define RSS_TIPOSTRA1 180
|
||||||
|
#define RSS_DOPOSTRA1 181
|
||||||
|
#define RSS_COSTOSTRA1 182
|
||||||
|
#define RSS_TIPOSTRA2 183
|
||||||
|
#define RSS_DOPOSTRA2 184
|
||||||
|
#define RSS_COSTOSTRA2 185
|
||||||
|
|
||||||
#ifndef __VETBANAL_H
|
#ifndef __VETBANAL_H
|
||||||
#include "vetbanal.h"
|
#include "vetbanal.h"
|
||||||
#endif
|
#endif
|
987
ve/vetbrss.uml
987
ve/vetbrss.uml
@ -1,470 +1,517 @@
|
|||||||
#include "vetbrss.h"
|
#include "vetbrss.h"
|
||||||
|
|
||||||
TOOLBAR "Toolbar" 0 0 0 2
|
TOOLBAR "Toolbar" 0 0 0 2
|
||||||
|
|
||||||
#include <relapbar.h>
|
#include <relapbar.h>
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
PAGE "Risorse" 0 0 0 0
|
PAGE "Risorse" 0 0 0 0
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 75 8
|
GROUPBOX DLG_NULL 75 8
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 0 ""
|
PROMPT 1 0 ""
|
||||||
FLAGS "R"
|
FLAGS "R"
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING RSS_CODICE 16
|
STRING RSS_CODICE 16
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Codice "
|
PROMPT 2 1 "Codice "
|
||||||
FIELD CODTAB
|
FIELD CODTAB
|
||||||
KEY 1
|
KEY 1
|
||||||
USE RSS
|
USE RSS
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
INPUT CODTAB RSS_CODICE
|
INPUT CODTAB RSS_CODICE
|
||||||
DISPLAY "Codice@16" CODTAB
|
DISPLAY "Codice@16" CODTAB
|
||||||
DISPLAY "Denominazione@50" S0
|
DISPLAY "Denominazione@50" S0
|
||||||
OUTPUT RSS_CODICE CODTAB
|
OUTPUT RSS_CODICE CODTAB
|
||||||
OUTPUT RSS_RAGSOC S0
|
OUTPUT RSS_RAGSOC S0
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
MESSAGE COPY,10@
|
MESSAGE COPY,10@
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING RSS_RAGSOC 50
|
STRING RSS_RAGSOC 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 9 2 ""
|
PROMPT 2 2 "Nome "
|
||||||
FIELD S0
|
FIELD S0
|
||||||
KEY 2
|
KEY 2
|
||||||
USE RSS KEY 2
|
USE RSS KEY 2
|
||||||
INPUT S0 RSS_RAGSOC
|
INPUT S0 RSS_RAGSOC
|
||||||
DISPLAY "Denominazione@50" S0
|
DISPLAY "Denominazione@50" S0
|
||||||
DISPLAY "Codice@16" CODTAB
|
DISPLAY "Codice@16" CODTAB
|
||||||
COPY OUTPUT RSS_CODICE
|
COPY OUTPUT RSS_CODICE
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
MESSAGE COPY,20@
|
MESSAGE COPY,20@
|
||||||
END
|
END
|
||||||
|
|
||||||
LIST RSS_COLLAB 1 10
|
STRING RSS_MATRICOLA 20
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 3 "Tipo "
|
PROMPT 42 1 "Matricola "
|
||||||
ITEM "|Nessuno"
|
FIELD S3[21,40]
|
||||||
MESSAGE HIDE,1@|HIDE,2@|ENABLE,RSS_RAGSOC
|
END
|
||||||
ITEM "D|Dipendente"
|
|
||||||
MESSAGE HIDE,1@|SHOW,2@|DISABLE,RSS_RAGSOC
|
STRING RSS_QUALIFICA 20
|
||||||
ITEM "F|Fornitore"
|
BEGIN
|
||||||
MESSAGE SHOW,1@|HIDE,2@|DISABLE,RSS_RAGSOC
|
PROMPT 42 3 "Qualifica "
|
||||||
FIELD B0
|
FIELD S3[41,60]
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER RSS_CODFORN 6
|
LIST RSS_COLLAB 1 10
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 32 3 ""
|
PROMPT 2 3 "Tipo "
|
||||||
USE LF_CLIFO
|
ITEM "|Nessuno"
|
||||||
INPUT TIPOCF "F"
|
MESSAGE HIDE,1@|HIDE,2@|ENABLE,RSS_RAGSOC
|
||||||
INPUT CODCF RSS_CODFORN
|
ITEM "D|Dipendente"
|
||||||
DISPLAY "Codice" CODCF
|
MESSAGE HIDE,1@|SHOW,2@|DISABLE,RSS_RAGSOC
|
||||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
ITEM "F|Fornitore"
|
||||||
OUTPUT RSS_CODFORN CODCF
|
MESSAGE SHOW,1@|HIDE,2@|DISABLE,RSS_RAGSOC
|
||||||
OUTPUT RSS_RAGSOC RAGSOC
|
FIELD B0
|
||||||
OUTPUT RSS_ADDRESS_F INDCF
|
END
|
||||||
OUTPUT RSS_CIVICO_F CIVCF
|
|
||||||
OUTPUT RSS_STATO_F STATOCF
|
NUMBER RSS_CODFORN 6
|
||||||
OUTPUT RSS_COMUNE_F COMCF
|
BEGIN
|
||||||
CHECKTYPE REQUIRED
|
PROMPT 30 3 ""
|
||||||
FIELD I6
|
USE LF_CLIFO
|
||||||
WARNING "Codice fornitore inesistente"
|
INPUT TIPOCF "F"
|
||||||
ADD RUN CG0 -1
|
INPUT CODCF RSS_CODFORN
|
||||||
GROUP 1
|
DISPLAY "Codice" CODCF
|
||||||
END
|
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||||
|
OUTPUT RSS_CODFORN CODCF
|
||||||
NUMBER RSS_CODFIS 6
|
OUTPUT RSS_RAGSOC RAGSOC
|
||||||
BEGIN
|
OUTPUT RSS_ADDRESS_F INDCF
|
||||||
PROMPT 32 3 ""
|
OUTPUT RSS_CIVICO_F CIVCF
|
||||||
USE LF_ANAG
|
OUTPUT RSS_STATO_F STATOCF
|
||||||
INPUT TIPOA "F"
|
OUTPUT RSS_COMUNE_F COMCF
|
||||||
INPUT CODANAGR RSS_CODFIS
|
CHECKTYPE REQUIRED
|
||||||
DISPLAY "Codice" CODANAGR
|
FIELD I6
|
||||||
DISPLAY "Cognome@30" RAGSOC[1,30]
|
WARNING "Codice fornitore inesistente"
|
||||||
DISPLAY "Nome@20" RAGSOC[31,50]
|
ADD RUN CG0 -1
|
||||||
OUTPUT RSS_CODFIS CODANAGR
|
GROUP 1
|
||||||
OUTPUT RSS_RAGSOC RAGSOC
|
END
|
||||||
OUTPUT RSS_ADDRESS_C INDRES
|
|
||||||
OUTPUT RSS_CIVICO_C CIVRES
|
NUMBER RSS_CODFIS 6
|
||||||
OUTPUT RSS_STATO_C STATORES
|
BEGIN
|
||||||
OUTPUT RSS_COMUNE_C COMRES
|
PROMPT 30 3 ""
|
||||||
CHECKTYPE REQUIRED
|
USE LF_ANAG
|
||||||
WARNING "Codice persona inesistente"
|
INPUT TIPOA "F"
|
||||||
FIELD I6
|
INPUT CODANAGR RSS_CODFIS
|
||||||
ADD RUN BA4 -1
|
DISPLAY "Codice" CODANAGR
|
||||||
GROUP 2
|
DISPLAY "Cognome@30" RAGSOC[1,30]
|
||||||
END
|
DISPLAY "Nome@20" RAGSOC[31,50]
|
||||||
|
OUTPUT RSS_CODFIS CODANAGR
|
||||||
STRING RSS_ADDRESS_F 35
|
OUTPUT RSS_RAGSOC RAGSOC
|
||||||
BEGIN
|
OUTPUT RSS_ADDRESS_C INDRES
|
||||||
PROMPT 2 4 "Indirizzo "
|
OUTPUT RSS_CIVICO_C CIVRES
|
||||||
FLAGS "D"
|
OUTPUT RSS_STATO_C STATORES
|
||||||
GROUP 1
|
OUTPUT RSS_COMUNE_C COMRES
|
||||||
END
|
CHECKTYPE REQUIRED
|
||||||
|
WARNING "Codice persona inesistente"
|
||||||
STRING RSS_CIVICO_F 5
|
FIELD I6
|
||||||
BEGIN
|
ADD RUN BA4 -1
|
||||||
PROMPT 65 4 "N. "
|
GROUP 2
|
||||||
FLAGS "D"
|
END
|
||||||
GROUP 1
|
|
||||||
END
|
STRING RSS_ADDRESS_F 35
|
||||||
|
BEGIN
|
||||||
NUMBER RSS_STATO_F 3
|
PROMPT 2 4 "Indirizzo "
|
||||||
BEGIN
|
FLAGS "D"
|
||||||
PROMPT 2 5 "Comune: Stato "
|
GROUP 1
|
||||||
FLAGS "DZ"
|
END
|
||||||
USE %STA
|
|
||||||
INPUT CODTAB RSS_STATO_F
|
STRING RSS_CIVICO_F 5
|
||||||
OUTPUT RSS_DESTATO_F S0
|
BEGIN
|
||||||
CHECKTYPE NORMAL
|
PROMPT 65 4 "N. "
|
||||||
GROUP 1
|
FLAGS "D"
|
||||||
END
|
GROUP 1
|
||||||
|
END
|
||||||
STRING RSS_DESTATO_F 50
|
|
||||||
BEGIN
|
NUMBER RSS_STATO_F 3
|
||||||
PROMPT 23 5 ""
|
BEGIN
|
||||||
FLAGS "D"
|
PROMPT 2 5 "Comune: Stato "
|
||||||
GROUP 1
|
FLAGS "DZ"
|
||||||
END
|
USE %STA
|
||||||
|
INPUT CODTAB RSS_STATO_F
|
||||||
STRING RSS_COMUNE_F 4
|
OUTPUT RSS_DESTATO_F S0
|
||||||
BEGIN
|
CHECKTYPE NORMAL
|
||||||
PROMPT 8 6 ":Codice "
|
GROUP 1
|
||||||
FLAGS "DU"
|
END
|
||||||
USE LF_COMUNI
|
|
||||||
INPUT STATO RSS_STATO_F
|
STRING RSS_DESTATO_F 50
|
||||||
INPUT COM RSS_COMUNE_F
|
BEGIN
|
||||||
OUTPUT RSS_DENCOM_F DENCOM
|
PROMPT 23 5 ""
|
||||||
CHECKTYPE NORMAL
|
FLAGS "D"
|
||||||
GROUP 1
|
GROUP 1
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING RSS_DENCOM_F 50
|
STRING RSS_COMUNE_F 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 23 6 ""
|
PROMPT 8 6 ":Codice "
|
||||||
FLAGS "D"
|
FLAGS "DU"
|
||||||
GROUP 1
|
USE LF_COMUNI
|
||||||
END
|
INPUT STATO RSS_STATO_F
|
||||||
|
INPUT COM RSS_COMUNE_F
|
||||||
STRING RSS_ADDRESS_C 35
|
OUTPUT RSS_DENCOM_F DENCOM
|
||||||
BEGIN
|
CHECKTYPE NORMAL
|
||||||
PROMPT 2 4 "Indirizzo "
|
GROUP 1
|
||||||
FLAGS "D"
|
END
|
||||||
GROUP 2
|
|
||||||
END
|
STRING RSS_DENCOM_F 50
|
||||||
|
BEGIN
|
||||||
STRING RSS_CIVICO_C 5
|
PROMPT 23 6 ""
|
||||||
BEGIN
|
FLAGS "D"
|
||||||
PROMPT 65 4 "N. "
|
GROUP 1
|
||||||
FLAGS "D"
|
END
|
||||||
GROUP 2
|
|
||||||
END
|
STRING RSS_ADDRESS_C 35
|
||||||
|
BEGIN
|
||||||
NUMBER RSS_STATO_C 3
|
PROMPT 2 4 "Indirizzo "
|
||||||
BEGIN
|
FLAGS "D"
|
||||||
PROMPT 2 5 "Comune: Stato "
|
GROUP 2
|
||||||
FLAGS "DZ"
|
END
|
||||||
USE %STA
|
|
||||||
INPUT CODTAB RSS_STATO_C
|
STRING RSS_CIVICO_C 5
|
||||||
OUTPUT RSS_DESTATO_C S0
|
BEGIN
|
||||||
CHECKTYPE NORMAL
|
PROMPT 65 4 "N. "
|
||||||
GROUP 2
|
FLAGS "D"
|
||||||
END
|
GROUP 2
|
||||||
|
END
|
||||||
STRING RSS_DESTATO_C 50
|
|
||||||
BEGIN
|
NUMBER RSS_STATO_C 3
|
||||||
PROMPT 23 5 ""
|
BEGIN
|
||||||
FLAGS "D"
|
PROMPT 2 5 "Comune: Stato "
|
||||||
GROUP 2
|
FLAGS "DZ"
|
||||||
END
|
USE %STA
|
||||||
|
INPUT CODTAB RSS_STATO_C
|
||||||
STRING RSS_COMUNE_C 4
|
OUTPUT RSS_DESTATO_C S0
|
||||||
BEGIN
|
CHECKTYPE NORMAL
|
||||||
PROMPT 8 6 ":Codice "
|
GROUP 2
|
||||||
FLAGS "DU"
|
END
|
||||||
USE LF_COMUNI
|
|
||||||
INPUT STATO RSS_STATO_C
|
STRING RSS_DESTATO_C 50
|
||||||
INPUT COM RSS_COMUNE_C
|
BEGIN
|
||||||
OUTPUT RSS_DENCOM_C DENCOM
|
PROMPT 23 5 ""
|
||||||
CHECKTYPE NORMAL
|
FLAGS "D"
|
||||||
GROUP 2
|
GROUP 2
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING RSS_DENCOM_C 50
|
STRING RSS_COMUNE_C 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 23 6 ""
|
PROMPT 8 6 ":Codice "
|
||||||
FLAGS "D"
|
FLAGS "DU"
|
||||||
GROUP 2
|
USE LF_COMUNI
|
||||||
END
|
INPUT STATO RSS_STATO_C
|
||||||
|
INPUT COM RSS_COMUNE_C
|
||||||
STRING RSS_TIPORIGA 4
|
OUTPUT RSS_DENCOM_C DENCOM
|
||||||
BEGIN
|
CHECKTYPE NORMAL
|
||||||
PROMPT 1 8 "Tipo riga "
|
GROUP 2
|
||||||
FIELD S8
|
END
|
||||||
FLAGS "U"
|
|
||||||
USE %TRI SELECT S7=="R"
|
STRING RSS_DENCOM_C 50
|
||||||
INPUT CODTAB RSS_TIPORIGA
|
BEGIN
|
||||||
DISPLAY "Codice" CODTAB
|
PROMPT 23 6 ""
|
||||||
DISPLAY "Descrizione@50" S0
|
FLAGS "D"
|
||||||
OUTPUT RSS_TIPORIGA CODTAB
|
GROUP 2
|
||||||
OUTPUT RSS_DESCRRIGA S0
|
END
|
||||||
CHECKTYPE REQUIRED
|
|
||||||
END
|
STRING RSS_TIPORIGA 4
|
||||||
|
BEGIN
|
||||||
STRING RSS_DESCRRIGA 50
|
PROMPT 1 8 "Tipo riga "
|
||||||
BEGIN
|
FIELD S8
|
||||||
PROMPT 24 8 ""
|
FLAGS "U"
|
||||||
USE %TRI KEY 2 SELECT S7=="R"
|
USE %TRI SELECT S7=="R"
|
||||||
INPUT S0 RSS_DESCRRIGA
|
INPUT CODTAB RSS_TIPORIGA
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Codice" CODTAB
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Descrizione@50" S0
|
||||||
COPY OUTPUT RSS_TIPORIGA
|
OUTPUT RSS_TIPORIGA CODTAB
|
||||||
END
|
OUTPUT RSS_DESCRRIGA S0
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
END
|
||||||
STRING RSS_CODIVA 4
|
|
||||||
BEGIN
|
STRING RSS_DESCRRIGA 50
|
||||||
PROMPT 1 9 "Codice IVA "
|
BEGIN
|
||||||
FIELD S3[1,4]
|
PROMPT 24 8 ""
|
||||||
FLAGS "U"
|
USE %TRI KEY 2 SELECT S7=="R"
|
||||||
USE %IVA
|
INPUT S0 RSS_DESCRRIGA
|
||||||
INPUT CODTAB RSS_CODIVA
|
DISPLAY "Descrizione@50" S0
|
||||||
DISPLAY "Codice " CODTAB
|
DISPLAY "Codice" CODTAB
|
||||||
DISPLAY "Descrizione@50" S0
|
COPY OUTPUT RSS_TIPORIGA
|
||||||
OUTPUT RSS_CODIVA CODTAB
|
END
|
||||||
OUTPUT RSS_DESIVA S0
|
|
||||||
CHECKTYPE NORMAL
|
|
||||||
END
|
STRING RSS_CODIVA 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Codice IVA "
|
||||||
STRING RSS_DESIVA 50
|
FIELD S3[1,4]
|
||||||
BEGIN
|
FLAGS "U"
|
||||||
PROMPT 24 9 ""
|
USE %IVA
|
||||||
USE %IVA KEY 2
|
INPUT CODTAB RSS_CODIVA
|
||||||
INPUT S0 RSS_DESIVA
|
DISPLAY "Codice " CODTAB
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
DISPLAY "Codice " CODTAB
|
OUTPUT RSS_CODIVA CODTAB
|
||||||
COPY OUTPUT RSS_CODIVA
|
OUTPUT RSS_DESIVA S0
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING RSS_CODVAL 4
|
|
||||||
BEGIN
|
STRING RSS_DESIVA 50
|
||||||
PROMPT 1 10 "Codice valuta "
|
BEGIN
|
||||||
FIELD S4
|
PROMPT 24 9 ""
|
||||||
FLAGS "U"
|
USE %IVA KEY 2
|
||||||
USE %VAL
|
INPUT S0 RSS_DESIVA
|
||||||
INPUT CODTAB RSS_CODVAL
|
DISPLAY "Descrizione@50" S0
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Codice " CODTAB
|
||||||
DISPLAY "Descrizione@50" S0
|
COPY OUTPUT RSS_CODIVA
|
||||||
OUTPUT RSS_CODVAL CODTAB
|
CHECKTYPE NORMAL
|
||||||
OUTPUT RSS_DESVAL S0
|
END
|
||||||
CHECKTYPE NORMAL
|
|
||||||
END
|
STRING RSS_CODVAL 4
|
||||||
|
BEGIN
|
||||||
STRING RSS_DESVAL 50
|
PROMPT 1 10 "Codice valuta "
|
||||||
BEGIN
|
FIELD S4
|
||||||
PROMPT 24 10 ""
|
FLAGS "U"
|
||||||
USE %VAL KEY 2
|
USE %VAL
|
||||||
INPUT S0 RSS_DESVAL
|
INPUT CODTAB RSS_CODVAL
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Codice" CODTAB
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Descrizione@50" S0
|
||||||
COPY OUTPUT RSS_CODVAL
|
OUTPUT RSS_CODVAL CODTAB
|
||||||
CHECKTYPE NORMAL
|
OUTPUT RSS_DESVAL S0
|
||||||
END
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
STRING RSS_CODART 20
|
|
||||||
BEGIN
|
STRING RSS_DESVAL 50
|
||||||
PROMPT 1 11 "Articolo (CI) "
|
BEGIN
|
||||||
USE LF_ANAMAG
|
PROMPT 24 10 ""
|
||||||
INPUT CODART RSS_CODART
|
USE %VAL KEY 2
|
||||||
DISPLAY "Codice@20" CODART
|
INPUT S0 RSS_DESVAL
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT RSS_CODART CODART
|
DISPLAY "Codice" CODTAB
|
||||||
OUTPUT RSS_DESCART DESCR
|
COPY OUTPUT RSS_CODVAL
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
FLAGS "U"
|
END
|
||||||
FIELD S2
|
|
||||||
END
|
STRING RSS_CODART 20
|
||||||
|
BEGIN
|
||||||
STRING RSS_DESCART 50 34
|
PROMPT 1 11 "Articolo (CI) "
|
||||||
BEGIN
|
USE LF_ANAMAG
|
||||||
PROMPT 40 11 ""
|
INPUT CODART RSS_CODART
|
||||||
USE LF_ANAMAG KEY 2
|
DISPLAY "Codice@20" CODART
|
||||||
INPUT DESCR RSS_DESCART
|
DISPLAY "Descrizione@50" DESCR
|
||||||
DISPLAY "Descrizione@50" DESCR
|
OUTPUT RSS_CODART CODART
|
||||||
DISPLAY "Codice@20" CODART
|
OUTPUT RSS_DESCART DESCR
|
||||||
COPY OUTPUT RSS_CODART
|
CHECKTYPE NORMAL
|
||||||
CHECKTYPE NORMAL
|
FLAGS "U"
|
||||||
FLAGS "U"
|
FIELD S2
|
||||||
END
|
END
|
||||||
|
|
||||||
LISTBOX RSS_CAMPI 15
|
STRING RSS_DESCART 50 34
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 12 "Campo default "
|
PROMPT 40 11 ""
|
||||||
FIELD S6
|
USE LF_ANAMAG KEY 2
|
||||||
ITEM "Q|Qta prezzo "
|
INPUT DESCR RSS_DESCART
|
||||||
FLAGS "H"
|
DISPLAY "Descrizione@50" DESCR
|
||||||
END
|
DISPLAY "Codice@20" CODART
|
||||||
|
COPY OUTPUT RSS_CODART
|
||||||
CURRENCY RSS_PREZZO 15
|
CHECKTYPE NORMAL
|
||||||
BEGIN
|
FLAGS "U"
|
||||||
PROMPT 1 12 "Prezzo "
|
END
|
||||||
FIELD R10
|
|
||||||
FLAGS "U"
|
LISTBOX RSS_CAMPI 15
|
||||||
END
|
BEGIN
|
||||||
|
PROMPT 1 12 "Campo default "
|
||||||
NUMBER RSS_QTA 13 5
|
FIELD S6
|
||||||
BEGIN
|
ITEM "Q|Qta prezzo "
|
||||||
PROMPT 38 12 "Quantita' "
|
FLAGS "H"
|
||||||
FIELD R1
|
END
|
||||||
END
|
|
||||||
|
CURRENCY RSS_PREZZO 15
|
||||||
STRING RSS_UM 2
|
BEGIN
|
||||||
BEGIN
|
PROMPT 1 12 "Prezzo "
|
||||||
PROMPT 67 12 "U.M. "
|
FIELD R10
|
||||||
FIELD S7
|
FLAGS "U"
|
||||||
FLAGS "U"
|
END
|
||||||
USE %UMS
|
|
||||||
INPUT CODTAB RSS_UM
|
NUMBER RSS_QTA 13 5
|
||||||
DISPLAY "U.M." CODTAB
|
BEGIN
|
||||||
DISPLAY "Descrizione@50" S0
|
PROMPT 38 12 "Quantita' "
|
||||||
OUTPUT RSS_UM CODTAB
|
FIELD R1
|
||||||
CHECKTYPE NORMAL
|
END
|
||||||
END
|
|
||||||
|
STRING RSS_UM 2
|
||||||
STRING RSS_PRESTAZ 8
|
BEGIN
|
||||||
BEGIN
|
PROMPT 67 12 "U.M. "
|
||||||
PROMPT 1 13 "Prestazione per fatturazione "
|
FIELD S7
|
||||||
USE PRS
|
FLAGS "U"
|
||||||
INPUT CODTAB RSS_PRESTAZ
|
USE %UMS
|
||||||
DISPLAY "Codice@8" CODTAB
|
INPUT CODTAB RSS_UM
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "U.M." CODTAB
|
||||||
OUTPUT RSS_PRESTAZ CODTAB
|
DISPLAY "Descrizione@50" S0
|
||||||
CHECKTYPE NORMAL
|
OUTPUT RSS_UM CODTAB
|
||||||
FIELD S5
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN RSS_MRP_ATTIVO
|
STRING RSS_PRESTAZ 8
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 14 "@bCollegamento M.R.P.:"
|
PROMPT 1 13 "Prestazione per fatturazione "
|
||||||
MESSAGE FALSE CLEAR,9@
|
USE PRS
|
||||||
MESSAGE TRUE ENABLE,9@
|
INPUT CODTAB RSS_PRESTAZ
|
||||||
END
|
DISPLAY "Codice@8" CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
STRING RSS_IMPIANTO 5
|
OUTPUT RSS_PRESTAZ CODTAB
|
||||||
BEGIN
|
CHECKTYPE NORMAL
|
||||||
PROMPT 25 14 "Impianto "
|
FIELD S5
|
||||||
FIELD S3[5,9]
|
END
|
||||||
USE IMP
|
|
||||||
INPUT CODTAB RSS_IMPIANTO
|
BOOLEAN RSS_MRP_ATTIVO
|
||||||
DISPLAY "Codice" CODTAB
|
BEGIN
|
||||||
DISPLAY "Descrizione@50" S0
|
PROMPT 1 14 "@bCollegamento M.R.P.:"
|
||||||
OUTPUT RSS_IMPIANTO CODTAB
|
MESSAGE FALSE CLEAR,9@
|
||||||
GROUP 9
|
MESSAGE TRUE ENABLE,9@
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING RSS_LINEA 5
|
STRING RSS_IMPIANTO 5
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 45 14 "Linea "
|
PROMPT 25 14 "Impianto "
|
||||||
FIELD S3[10,14]
|
FIELD S3[5,9]
|
||||||
USE LNP
|
USE IMP
|
||||||
INPUT CODTAB RSS_LINEA
|
INPUT CODTAB RSS_IMPIANTO
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Codice" CODTAB
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT RSS_LINEA CODTAB
|
OUTPUT RSS_IMPIANTO CODTAB
|
||||||
GROUP 9
|
GROUP 9
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER RSS_GRUPPOA 3
|
STRING RSS_LINEA 5
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 15 "Conto acquisti "
|
PROMPT 45 14 "Linea "
|
||||||
FIELD I3
|
FIELD S3[10,14]
|
||||||
END
|
USE LNP
|
||||||
|
INPUT CODTAB RSS_LINEA
|
||||||
NUMBER RSS_CONTOA 3
|
DISPLAY "Codice" CODTAB
|
||||||
BEGIN
|
DISPLAY "Descrizione@50" S0
|
||||||
PROMPT 22 15 ""
|
OUTPUT RSS_LINEA CODTAB
|
||||||
FIELD I4
|
GROUP 9
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER RSS_SOTTOA 6
|
NUMBER RSS_GRUPPOA 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 28 15 ""
|
PROMPT 2 15 "Conto acquisti "
|
||||||
FIELD I5
|
FIELD I3
|
||||||
USE LF_PCON SELECT SOTTOCONTO!=""
|
END
|
||||||
INPUT GRUPPO RSS_GRUPPOA
|
|
||||||
INPUT CONTO RSS_CONTOA
|
NUMBER RSS_CONTOA 3
|
||||||
INPUT SOTTOCONTO RSS_SOTTOA
|
BEGIN
|
||||||
DISPLAY "Gruppo@3" GRUPPO
|
PROMPT 22 15 ""
|
||||||
DISPLAY "Conto@3" CONTO
|
FIELD I4
|
||||||
DISPLAY "Sottoconto@6" SOTTOCONTO
|
END
|
||||||
DISPLAY "Descrizione@50" DESCR
|
|
||||||
OUTPUT RSS_GRUPPOA GRUPPO
|
NUMBER RSS_SOTTOA 6
|
||||||
OUTPUT RSS_CONTOA CONTO
|
BEGIN
|
||||||
OUTPUT RSS_SOTTOA SOTTOCONTO
|
PROMPT 28 15 ""
|
||||||
OUTPUT RSS_DESCRCONTOA DESCR
|
FIELD I5
|
||||||
CHECKTYPE NORMAL
|
USE LF_PCON SELECT SOTTOCONTO!=""
|
||||||
WARNING "Sottoconto errato"
|
INPUT GRUPPO RSS_GRUPPOA
|
||||||
ADD RUN CG0 -0
|
INPUT CONTO RSS_CONTOA
|
||||||
END
|
INPUT SOTTOCONTO RSS_SOTTOA
|
||||||
|
DISPLAY "Gruppo@3" GRUPPO
|
||||||
STRING RSS_DESCRCONTOA 50 35
|
DISPLAY "Conto@3" CONTO
|
||||||
BEGIN
|
DISPLAY "Sottoconto@6" SOTTOCONTO
|
||||||
PROMPT 39 15 ""
|
DISPLAY "Descrizione@50" DESCR
|
||||||
FLAG "U"
|
OUTPUT RSS_GRUPPOA GRUPPO
|
||||||
USE LF_PCON KEY 2 SELECT SOTTOCONTO!=""
|
OUTPUT RSS_CONTOA CONTO
|
||||||
INPUT DESCR RSS_DESCRCONTOA
|
OUTPUT RSS_SOTTOA SOTTOCONTO
|
||||||
DISPLAY "Descrizione@50" DESCR
|
OUTPUT RSS_DESCRCONTOA DESCR
|
||||||
DISPLAY "Gruppo@3" GRUPPO
|
CHECKTYPE NORMAL
|
||||||
DISPLAY "Conto@3" CONTO
|
WARNING "Sottoconto errato"
|
||||||
DISPLAY "Sottoconto@6" SOTTOCONTO
|
ADD RUN CG0 -0
|
||||||
COPY OUTPUT RSS_SOTTOA
|
END
|
||||||
CHECKTYPE NORMAL
|
|
||||||
WARNING "Il conto deve essere un ricavo"
|
STRING RSS_DESCRCONTOA 50 35
|
||||||
ADD RUN CG0 -0
|
BEGIN
|
||||||
END
|
PROMPT 39 15 ""
|
||||||
|
FLAG "U"
|
||||||
STRING RSS_MATRICOLA 20
|
USE LF_PCON KEY 2 SELECT SOTTOCONTO!=""
|
||||||
BEGIN
|
INPUT DESCR RSS_DESCRCONTOA
|
||||||
PROMPT 2 20 "Matricola "
|
DISPLAY "Descrizione@50" DESCR
|
||||||
FIELD S3[21,40]
|
DISPLAY "Gruppo@3" GRUPPO
|
||||||
END
|
DISPLAY "Conto@3" CONTO
|
||||||
|
DISPLAY "Sottoconto@6" SOTTOCONTO
|
||||||
STRING RSS_QUALIFICA 20
|
COPY OUTPUT RSS_SOTTOA
|
||||||
BEGIN
|
CHECKTYPE NORMAL
|
||||||
PROMPT 2 21 "Qualifica "
|
WARNING "Il conto deve essere un ricavo"
|
||||||
FIELD S3[41,60]
|
ADD RUN CG0 -0
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
STRING RSS_TIPOSTRA1 2
|
||||||
|
BEGIN
|
||||||
PAGE "Analitica" 11 60 14
|
PROMPT 1 17 "Tipo ora straordinaria 1 "
|
||||||
|
USE &CIORE
|
||||||
GROUPBOX DLG_NULL 78 4
|
INPUT CODTAB RSS_TIPOSTRA1
|
||||||
BEGIN
|
DISPLAY "Codice" CODTAB
|
||||||
PROMPT 1 0 ""
|
DISPLAY "Descrizione@50" S0
|
||||||
FLAGS "R"
|
OUTPUT RSS_TIPOSTRA1 CODTAB
|
||||||
END
|
CHECKTYPE NORMAL
|
||||||
|
FIELD S9
|
||||||
STRING DLG_NULL 8
|
END
|
||||||
BEGIN
|
|
||||||
PROMPT 2 1 "Codice "
|
NUMBER RSS_DOPOSTRA1 2
|
||||||
GROUP 10
|
BEGIN
|
||||||
FLAGS "D"
|
PROMPT 41 17 "dopo ore "
|
||||||
END
|
FIELD R5
|
||||||
|
END
|
||||||
STRING DLG_NULL 50
|
|
||||||
BEGIN
|
CURRENCY RSS_COSTOSTRA1 9
|
||||||
PROMPT 2 2 "Descrizione "
|
BEGIN
|
||||||
GROUP 20
|
PROMPT 59 17 "Costo "
|
||||||
FLAGS "D"
|
FIELD R6
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
STRING RSS_TIPOSTRA2 2
|
||||||
|
BEGIN
|
||||||
ENDMASK
|
PROMPT 1 18 "Tipo ora straordinaria 2 "
|
||||||
|
COPY USE RSS_TIPOSTRA1
|
||||||
|
INPUT CODTAB RSS_TIPOSTRA2
|
||||||
|
COPY DISPLAY RSS_TIPOSTRA1
|
||||||
|
OUTPUT RSS_TIPOSTRA2 CODTAB
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
FIELD S10
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER RSS_DOPOSTRA2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 41 18 "dopo ore "
|
||||||
|
FIELD R7
|
||||||
|
END
|
||||||
|
|
||||||
|
CURRENCY RSS_COSTOSTRA2 9
|
||||||
|
BEGIN
|
||||||
|
PROMPT 59 18 "Costo "
|
||||||
|
FIELD R8
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Analitica" 11 60 14
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 ""
|
||||||
|
FLAGS "R"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING DLG_NULL 8
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 1 "Codice "
|
||||||
|
GROUP 10
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING DLG_NULL 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 2 "Descrizione "
|
||||||
|
GROUP 20
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
ENDMASK
|
||||||
|
@ -40,6 +40,8 @@
|
|||||||
#define F_DESCELABS 157
|
#define F_DESCELABS 157
|
||||||
#define F_CODELABD 158
|
#define F_CODELABD 158
|
||||||
#define F_DESCELABD 159
|
#define F_DESCELABD 159
|
||||||
|
#define F_CODELABK 160
|
||||||
|
#define F_DESCELABK 161
|
||||||
|
|
||||||
#define F_STATOI_MOD_1 201
|
#define F_STATOI_MOD_1 201
|
||||||
#define F_STATOI_MOD_2 202
|
#define F_STATOI_MOD_2 202
|
||||||
|
@ -209,7 +209,7 @@ END
|
|||||||
|
|
||||||
BOOLEAN F_MOVMAG
|
BOOLEAN F_MOVMAG
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 14 "Mov. mag. a partire dallo stato "
|
PROMPT 2 14 "Mov. magazzino"
|
||||||
FIELD B1
|
FIELD B1
|
||||||
MESSAGE FALSE CLEAR,1@
|
MESSAGE FALSE CLEAR,1@
|
||||||
MESSAGE TRUE ENABLE,1@
|
MESSAGE TRUE ENABLE,1@
|
||||||
@ -219,7 +219,7 @@ END
|
|||||||
|
|
||||||
STRING F_STATO_MOV_I 1
|
STRING F_STATO_MOV_I 1
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 38 14 ""
|
PROMPT 24 14 "dallo stato "
|
||||||
FIELD S7
|
FIELD S7
|
||||||
USE %STD
|
USE %STD
|
||||||
INPUT CODTAB F_STATO_MOV_I
|
INPUT CODTAB F_STATO_MOV_I
|
||||||
@ -1222,14 +1222,14 @@ BEGIN
|
|||||||
FIELD S11[5,5]
|
FIELD S11[5,5]
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 42 3
|
GROUPBOX DLG_NULL 45 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 41 1 "@bIntra"
|
PROMPT 38 1 "@bIntra"
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_NATURA 1
|
STRING F_NATURA 1
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 42 2 "Natura transazione "
|
PROMPT 39 2 "Natura transazione "
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
USE %INT
|
USE %INT
|
||||||
INPUT CODTAB F_NATURA
|
INPUT CODTAB F_NATURA
|
||||||
@ -1256,7 +1256,7 @@ BEGIN
|
|||||||
FIELD B11
|
FIELD B11
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 78 5
|
GROUPBOX DLG_NULL 78 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 12 "@bElaborazioni automatiche"
|
PROMPT 1 12 "@bElaborazioni automatiche"
|
||||||
END
|
END
|
||||||
@ -1336,6 +1336,29 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
|
STRING F_CODELABK 8
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 16 "Speciale "
|
||||||
|
FLAG "U"
|
||||||
|
FIELD S3[29,36]
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
COPY USE F_CODELAB
|
||||||
|
INPUT CODTAB F_CODELABD
|
||||||
|
COPY DISPLAY F_CODELAB
|
||||||
|
OUTPUT F_CODELABK CODTAB
|
||||||
|
OUTPUT F_DESCELABK S0
|
||||||
|
HELP "Codice dell'elaborazione differita da eseguire"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESCELABK 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 26 16 ""
|
||||||
|
COPY USE F_DESCELAB
|
||||||
|
INPUT S0 F_DESCELABD
|
||||||
|
COPY DISPLAY F_DESCELAB
|
||||||
|
COPY OUTPUT F_CODELABK
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ TOOLBAR "Toolbar" 0 0 0 2
|
|||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
PAGE "Unita' di misura " 0 0 0 0
|
PAGE "Unità di misura " 0 0 0 0
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 75 7
|
GROUPBOX DLG_NULL 75 7
|
||||||
BEGIN
|
BEGIN
|
||||||
@ -16,7 +16,7 @@ END
|
|||||||
|
|
||||||
STRING F_UM 2
|
STRING F_UM 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 2 "Unita' di misura "
|
PROMPT 2 2 "Unità di misura "
|
||||||
FIELD CODTAB
|
FIELD CODTAB
|
||||||
KEY 1
|
KEY 1
|
||||||
FLAG "U"
|
FLAG "U"
|
||||||
@ -44,7 +44,7 @@ END
|
|||||||
|
|
||||||
STRING F_UMR 2
|
STRING F_UMR 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 8 "Unita' di riferimento "
|
PROMPT 2 8 "Unità di riferimento "
|
||||||
FIELD S7
|
FIELD S7
|
||||||
FLAG "U"
|
FLAG "U"
|
||||||
USE %UMS
|
USE %UMS
|
||||||
@ -60,7 +60,7 @@ BEGIN
|
|||||||
PROMPT 2 10 "Fatt.conversione al riferim."
|
PROMPT 2 10 "Fatt.conversione al riferim."
|
||||||
FIELD R10
|
FIELD R10
|
||||||
VALIDATE REQIF_FUNC 1 F_UMR
|
VALIDATE REQIF_FUNC 1 F_UMR
|
||||||
WARNING "Fattore di conversione obbligatorio se specificata l'unita' di misura di riferimento"
|
WARNING "Fattore di conversione obbligatorio se specificata l'unità di misura di riferimento"
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOLEAN F_ROUND
|
BOOLEAN F_ROUND
|
||||||
@ -78,6 +78,21 @@ BEGIN
|
|||||||
FIELD I0
|
FIELD I0
|
||||||
END
|
END
|
||||||
|
|
||||||
|
DATE DLG_NULL
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 -1 "Ultimo aggiornamento "
|
||||||
|
FIELD DATAAGG
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING DLG_NULL 16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 41 -1 "Ultimo utente "
|
||||||
|
FIELD UTENTE
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
ENDMASK
|
ENDMASK
|
||||||
|
Loading…
x
Reference in New Issue
Block a user