diff --git a/src/ba/ba8200.cpp b/src/ba/ba8200.cpp
index ab99b05c5..4def16f70 100755
--- a/src/ba/ba8200.cpp
+++ b/src/ba/ba8200.cpp
@@ -1486,7 +1486,7 @@ bool TSQL_recordset_app::create()
{
if (!has_module(RSAUT))
return error_box(TR("Modulo non autorizzato"));
-
+ xvt_vobj_show(TASK_WIN);
_msk = new TQuery_mask;
xvt_sys_sleep(500); // Lasciamo il tempo di leggere il titolo
diff --git a/src/ps/cast/aa.qry b/src/ps/cast/aa.qry
new file mode 100644
index 000000000..dfaad51bc
--- /dev/null
+++ b/src/ps/cast/aa.qry
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ps/cast/cgaddon.men b/src/ps/cast/cgaddon.men
new file mode 100644
index 000000000..c92f8b562
--- /dev/null
+++ b/src/ps/cast/cgaddon.men
@@ -0,0 +1,8 @@
+[CGADDON]
+Caption = "Personalizzazioni"
+Module = 0
+Flags = ""
+Item_01 = "Importazione Clienti", "cg0.exe -1 -iC:\TEMPprassi\CLIENTE*.ini /uADMIN"
+Item_02 = "Importazione Fatture", "cg2.exe -0 -iC:\TEMPprassiFatt\FATTUR*.ini /uADMIN"
+Item_03 = "Esp. Saldi per Contr. Cast", "ba8.exe -1 saldi_c X"
+Item_03 = "Esp. Saldi per Contr. Magazzino", "ba8.exe -1 saldi_m X"
\ No newline at end of file
diff --git a/src/ps/cast/saldi_c.msk b/src/ps/cast/saldi_c.msk
new file mode 100644
index 000000000..f883e843d
--- /dev/null
+++ b/src/ps/cast/saldi_c.msk
@@ -0,0 +1,258 @@
+TOOLBAR "topbar" 0 0 0 2
+BU 24 2 2
+BE
+PR 1 1 "Elabora"
+PI 120
+EN
+BU 25 2 2
+BE
+PR 2 1 "Imposta"
+PI 165
+EN
+BU -1 2 2
+BE
+PR -1 1 ""
+PI 0
+EN
+BU 33 2 2
+BE
+PR 1 1 "Info"
+ME EXIT,332
+PI 162
+EN
+BU 34 2 2
+BE
+PR 2 1 "Help"
+ME EXIT,331
+PI 163
+EN
+BU -1 2 2
+BE
+PR -1 0 ""
+PI 0
+EN
+BU 9 2 2
+BE
+PR 3 1 "Fine"
+ME EXIT,20334
+PI 114
+EN
+EN
+PA "Stampa Saldi con Contropartita" -1 -1 76 16
+NU 101 5
+BE
+PR 2 1 "Ditta "
+FL "FRD"
+US 9 KE 1
+CH REQUIRED
+IN CODDITTA 101
+DI "Codice" CODDITTA
+DI "Ragione sociale @50" RAGSOC
+OU 101 CODDITTA
+OU 104 RAGSOC
+EN
+ST 104 50
+BE
+PR 2 2 "Ragione sociale "
+FL "D"
+EN
+
+NU 106 4
+BE
+PR 2 3 "Codice esercizio "
+HE "Esercizio di cui si vuole ottenere il bilancio"
+US ESC
+IN CODTAB 106
+DI "Codice" CODTAB
+DI "Data inizio esercizio" D0
+DI "Data fine esercizio" D1
+OU 106 CODTAB
+FL "Z"
+CH NORMAL
+WA "L'esercizio non esiste"
+FI ANNOSEL
+ME 0 CLEAR,4@
+ME ENABLE,4@
+EN
+DA 109
+BE
+PR 2 4 "Periodo da Data "
+HE "Data dalla quale si vuole la stampa"
+FI DADATA
+EN
+NU 112 2
+BE
+PR 2 5 ""
+FL "DH"
+VA 14 1 #109[7,8]
+FI DAG
+DR 109
+EN
+NU 113 2
+BE
+PR 6 5 ""
+FL "DH"
+VA 14 1 #109[5,6]
+FI DAM
+DR 109
+EN
+
+DA 110
+BE
+PR 35 4 "A Data "
+HE "Data fino alla quale si vuole la stampa"
+FI ADATA
+EN
+NU 114 2
+BE
+PR 42 5 ""
+FL "DH"
+VA 14 1 #110[7,8]
+FI AGIO
+DR 110
+EN
+NU 115 2
+BE
+PR 46 5 ""
+FL "DH"
+VA 14 1 #110[5,6]
+FI AM
+DR 110
+EN
+
+
+
+GR -1 55 6
+BE
+PR 2 6 "@bSelezione sui conti"
+EN
+NU 132 3
+BE
+PR 3 7 "Da: Gruppo "
+US 19 KE 1 SE (CONTO="")
+IN GRUPPO 132
+DI "Gruppo" GRUPPO
+DI "Descrizione@50" DESCR
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+FI DGR
+EN
+NU 133 3
+BE
+PR 23 7 "Conto "
+US 19 KE 1 SE (SOTTOCONTO="")
+IN GRUPPO 132
+IN CONTO 133
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Descrizione@50" DESCR
+OU 133 CONTO
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+FI DCNT
+EN
+NU 134 6
+BE
+PR 36 7 "Sottoconto "
+US 19
+IN GRUPPO 132
+IN CONTO 133
+IN SOTTOCONTO 134
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+DI "Descrizione@50" DESCR
+OU 134 SOTTOCONTO
+OU 132 GRUPPO
+OU 133 CONTO
+OU 135 DESCR
+CH NORMAL
+FI DSTCNT
+FL "H"
+EN
+ST 135 50
+BE
+PR 3 8 ""
+US 19 KE 2
+IN DESCR 135
+DI "Descrizione@50" DESCR
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+OU 134 SOTTOCONTO
+OU 133 CONTO
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+EN
+NU 136 3
+BE
+PR 3 9 "A: Gruppo "
+US 19 KE 1 SE (CONTO="")
+IN GRUPPO 136
+DI "Gruppo" GRUPPO
+DI "Descrizione@50" DESCR
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+FI AGR
+EN
+NU 137 3
+BE
+PR 23 9 "Conto "
+US 19 KE 1 SE (SOTTOCONTO="")
+IN GRUPPO 136
+IN CONTO 137
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Descrizione@50" DESCR
+OU 137 CONTO
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+FI ACNT
+EN
+NU 138 6
+BE
+PR 36 9 "Sottoconto "
+US 19
+IN GRUPPO 136
+IN CONTO 137
+IN SOTTOCONTO 138
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+DI "Descrizione@50" DESCR
+OU 138 SOTTOCONTO
+OU 136 GRUPPO
+OU 137 CONTO
+OU 139 DESCR
+CH NORMAL
+FI ASTCNT
+FL "H"
+EN
+ST 139 50
+BE
+PR 3 10 ""
+US 19 KE 2
+IN DESCR 139
+DI "Descrizione@50" DESCR
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+OU 138 SOTTOCONTO
+OU 137 CONTO
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+EN
+BO 401
+BE
+PR 3 12 "Stampa i Totali"
+FI SHOW_TOT
+FL "H"
+EN
+EN
+ENDMASK
diff --git a/src/ps/cast/saldi_c.qry b/src/ps/cast/saldi_c.qry
new file mode 100644
index 000000000..7876e8434
--- /dev/null
+++ b/src/ps/cast/saldi_c.qry
@@ -0,0 +1,10 @@
+
+
+ Saldi per contropartita cast
+ ODBC(cast)
+SELECT rmov.datareg,mov.codcaus,caus.descr,mov.descr, rmov.GRUPPO,rmov.CONTO,rmov.SOTTOCONTO,rmov.sezione,iif(rmov.sezione='A',-rmov.IMPORTO,rmov.IMPORTO),mov.numdoc,mov.datadoc,mov.protiva,rmov.TIPOCC,rmov.GRUPPOC,rmov.CONTOC,rmov.SOTTOCONTC,iif(rmov.tipocc='',pcon.descr,clifo.ragsoc),rmov.gruppo*100+rmov.conto as mastro
+FROM RMOV join mov on (rmov.numreg=mov.numreg) left join clifo on (rmov.tipocc=clifo.tipocf and rmov.sottocontc=clifo.codcf) left join pcon on (rmov.gruppoc=pcon.gruppo and rmov.contoc=pcon.conto and rmov.sottocontc=pcon.sottoconto) left join caus on (caus.codcaus=mov.codcaus)
+where rmov.annoes=#ANNOSEL and (rmov.dataregE;=datetime(#ANNOSEL,#DAM,#DAG)) and (rmov.dataregC;=datetime(#ANNOSEL,#AM,#AGIO))
+ORDER BY rmov.GRUPPO,rmov.CONTO,rmov.SOTTOCONTO,rmov.TIPOCC,rmov.GRUPPOC,rmov.CONTOC,rmov.SOTTOCONTC
+HAVING mastroE;=(#DGR*100+#DCNT) and mastroC;=(#AGR*100+#ACNT)
+
\ No newline at end of file
diff --git a/src/ps/cast/saldi_controp.msk b/src/ps/cast/saldi_controp.msk
new file mode 100644
index 000000000..c4951bd70
--- /dev/null
+++ b/src/ps/cast/saldi_controp.msk
@@ -0,0 +1,219 @@
+TOOLBAR "topbar" 0 0 0 2
+BU 24 2 2
+BE
+PR 1 1 "Stampa"
+PI 118
+EN
+BU 25 2 2
+BE
+PR 2 1 "Imposta"
+PI 165
+EN
+BU -1 2 2
+BE
+PR -1 1 ""
+PI 0
+EN
+BU 33 2 2
+BE
+PR 1 1 "Info"
+ME EXIT,332
+PI 162
+EN
+BU 34 2 2
+BE
+PR 2 1 "Help"
+ME EXIT,331
+PI 163
+EN
+BU -1 2 2
+BE
+PR -1 0 ""
+PI 0
+EN
+BU 9 2 2
+BE
+PR 3 1 "Fine"
+ME EXIT,20334
+PI 114
+EN
+EN
+PA "Stampa Saldi con Contropartita" -1 -1 76 16
+NU 101 5
+BE
+PR 2 1 "Ditta "
+FL "FRD"
+US 9 KE 1
+CH REQUIRED
+IN CODDITTA 101
+DI "Codice" CODDITTA
+DI "Ragione sociale @50" RAGSOC
+OU 101 CODDITTA
+OU 104 RAGSOC
+EN
+ST 104 50
+BE
+PR 2 2 "Ragione sociale "
+FL "D"
+EN
+
+NU 106 4
+BE
+PR 2 3 "Codice esercizio "
+HE "Esercizio di cui si vuole ottenere il bilancio"
+US ESC
+IN CODTAB 106
+DI "Codice" CODTAB
+DI "Data inizio esercizio" D0
+DI "Data fine esercizio" D1
+OU 106 CODTAB
+FL "Z"
+CH NORMAL
+WA "L'esercizio non esiste"
+FI ANNOSEL
+ME 0 CLEAR,4@
+ME ENABLE,4@
+EN
+DA 109
+BE
+PR 2 4 "Periodo da Data "
+HE "Data dalla quale si vuole la stampa"
+FI DADATA
+EN
+DA 110
+BE
+PR 35 4 "A Data "
+HE "Data fino alla quale si vuole la stampa"
+FI ADATA
+EN
+GR -1 55 6
+BE
+PR 2 6 "@bSelezione sui conti"
+EN
+NU 132 3
+BE
+PR 3 7 "Da: Gruppo "
+US 19 KE 1 SE (CONTO="")
+IN GRUPPO 132
+DI "Gruppo" GRUPPO
+DI "Descrizione@50" DESCR
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+FI DGR
+EN
+NU 133 3
+BE
+PR 23 7 "Conto "
+US 19 KE 1 SE (SOTTOCONTO="")
+IN GRUPPO 132
+IN CONTO 133
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Descrizione@50" DESCR
+OU 133 CONTO
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+FI DCNT
+EN
+NU 134 6
+BE
+PR 36 7 "Sottoconto "
+US 19
+IN GRUPPO 132
+IN CONTO 133
+IN SOTTOCONTO 134
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+DI "Descrizione@50" DESCR
+OU 134 SOTTOCONTO
+OU 132 GRUPPO
+OU 133 CONTO
+OU 135 DESCR
+CH NORMAL
+FI DSTCNT
+EN
+ST 135 50
+BE
+PR 3 8 ""
+US 19 KE 2
+IN DESCR 135
+DI "Descrizione@50" DESCR
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+OU 134 SOTTOCONTO
+OU 133 CONTO
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+EN
+NU 136 3
+BE
+PR 3 9 "A: Gruppo "
+US 19 KE 1 SE (CONTO="")
+IN GRUPPO 136
+DI "Gruppo" GRUPPO
+DI "Descrizione@50" DESCR
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+FI AGR
+EN
+NU 137 3
+BE
+PR 23 9 "Conto "
+US 19 KE 1 SE (SOTTOCONTO="")
+IN GRUPPO 136
+IN CONTO 137
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Descrizione@50" DESCR
+OU 137 CONTO
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+FI ACNT
+EN
+NU 138 6
+BE
+PR 36 9 "Sottoconto "
+US 19
+IN GRUPPO 136
+IN CONTO 137
+IN SOTTOCONTO 138
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+DI "Descrizione@50" DESCR
+OU 138 SOTTOCONTO
+OU 136 GRUPPO
+OU 137 CONTO
+OU 139 DESCR
+CH NORMAL
+FI ASTCNT
+EN
+ST 139 50
+BE
+PR 3 10 ""
+US 19 KE 2
+IN DESCR 139
+DI "Descrizione@50" DESCR
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+OU 138 SOTTOCONTO
+OU 137 CONTO
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+EN
+BO 401
+BE
+PR 3 12 "Stampa i Totali"
+FI SHOW_TOT
+EN
+EN
+ENDMASK
diff --git a/src/ps/cast/saldi_controp.rep b/src/ps/cast/saldi_controp.rep
new file mode 100644
index 000000000..3b541f375
--- /dev/null
+++ b/src/ps/cast/saldi_controp.rep
@@ -0,0 +1,206 @@
+
+
+ query saldi per contropartita
+
+
+
+
+
+
+
+
+
+
+
+
+
+ "SALDO-" +(#ANNOSEL-1)
+
+
+ "SALDO al " +#ADATA
+
+
+
+
+
+
+ GRUPPO+CONTO+SOTTOCONTO
+ MESSAGE RESET,F2
+
+ RMOV.TIPOC
+
+
+ RMOV.GRUPPO
+
+
+ RMOV.CONTO
+
+
+ RMOV.SOTTOCONTO
+
+
+ PCON.DESCR
+
+
+ MESSAGE ISAMREAD,20,TIPOCF=#5!CODCF=#30,RAGSOC
+
+
+
+ GRUPPOC+CONTOC+SOTTOCONTC
+ MESSAGE RESET,F3
+
+ RMOV.TIPOCC
+
+
+ RMOV.GRUPPOC
+
+
+ RMOV.CONTOC
+
+
+ RMOV.SOTTOCONTC
+
+
+
+
+ ANNOES=(#ANNOSEL-1)
+
+
+ RMOV.DATAREG
+
+
+ RMOV.NUMREG
+
+
+ MOV.CODCAUS
+
+
+ RMOV.TIPOCC
+
+
+ RMOV.GRUPPOC
+
+
+ RMOV.CONTOC
+
+
+ RMOV.SOTTOCONTC
+
+
+ RMOV.SEZIONE
+
+
+ IF(NUM(RMOV.SEZIONE="A"),RMOV.IMPORTO,-RMOV.IMPORTO)
+ MESSAGE ADD,F3.100
+
+
+
+ ANNOES=#ANNOSEL
+
+
+ RMOV.DATAREG
+
+
+ RMOV.NUMREG
+
+
+ MOV.CODCAUS
+
+
+ RMOV.SEZIONE
+
+
+ RMOV.TIPOCC
+
+
+ RMOV.GRUPPOC
+
+
+ RMOV.CONTOC
+
+
+ RMOV.SOTTOCONTC
+
+
+ IF(NUM(RMOV.SEZIONE="A"),RMOV.IMPORTO,-RMOV.IMPORTO)
+ MESSAGE ADD,F3.200
+
+
+
+
+
+
+
+ #SHOW_TOT
+ MESSAGE EMPTY HIDE,F2
+MESSAGE SHOW,F2
+
+
+ #H2.10
+
+
+ #H2.20
+
+
+ #H2.30
+
+
+ #H2.40
+
+
+
+
+ #100+#200
+
+
+
+
+ #H3.5
+
+
+ #H2.10
+
+
+ #H3.10
+
+
+ #H2.20
+
+
+ #H3.20
+
+
+ #H2.30
+
+
+ #H3.30
+
+
+ #H2.40
+ #H2.50
+
+
+ MESSAGE ISAMREAD,19,GRUPPO=#10!CONTO=#20!SOTTOCONTO=#30,DESCR
+
+
+ MESSAGE ISAMREAD,20,TIPOCF=#5!CODCF=#30,RAGSOC
+
+
+ MESSAGE ADD,F2.100
+
+
+ MESSAGE ADD,F2.200
+
+
+ #100+#200
+ MESSAGE EMPTY HIDE,F3
+MESSAGE SHOW,F3
+
+
+ USE RMOV KEY 2 SELECT (MOV.ANNOES=#ANNOSEL)||(#SHOW_TOT="M")
+BY GRUPPO CONTO SOTTOCONTO GRUPPOC CONTOC SOTTOCONTC
+JOIN MOV INTO NUMREG==NUMREG
+JOIN PCON INTO GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO
+FROM GRUPPO=#DGR CONTO=#DCNT SOTTOCONTO=#DSTCNT
+TO GRUPPO=#AGR CONTO=#ACNT SOTTOCONTO=#ASTCNT
+
\ No newline at end of file
diff --git a/src/ps/cast/saldi_m.msk b/src/ps/cast/saldi_m.msk
new file mode 100644
index 000000000..f883e843d
--- /dev/null
+++ b/src/ps/cast/saldi_m.msk
@@ -0,0 +1,258 @@
+TOOLBAR "topbar" 0 0 0 2
+BU 24 2 2
+BE
+PR 1 1 "Elabora"
+PI 120
+EN
+BU 25 2 2
+BE
+PR 2 1 "Imposta"
+PI 165
+EN
+BU -1 2 2
+BE
+PR -1 1 ""
+PI 0
+EN
+BU 33 2 2
+BE
+PR 1 1 "Info"
+ME EXIT,332
+PI 162
+EN
+BU 34 2 2
+BE
+PR 2 1 "Help"
+ME EXIT,331
+PI 163
+EN
+BU -1 2 2
+BE
+PR -1 0 ""
+PI 0
+EN
+BU 9 2 2
+BE
+PR 3 1 "Fine"
+ME EXIT,20334
+PI 114
+EN
+EN
+PA "Stampa Saldi con Contropartita" -1 -1 76 16
+NU 101 5
+BE
+PR 2 1 "Ditta "
+FL "FRD"
+US 9 KE 1
+CH REQUIRED
+IN CODDITTA 101
+DI "Codice" CODDITTA
+DI "Ragione sociale @50" RAGSOC
+OU 101 CODDITTA
+OU 104 RAGSOC
+EN
+ST 104 50
+BE
+PR 2 2 "Ragione sociale "
+FL "D"
+EN
+
+NU 106 4
+BE
+PR 2 3 "Codice esercizio "
+HE "Esercizio di cui si vuole ottenere il bilancio"
+US ESC
+IN CODTAB 106
+DI "Codice" CODTAB
+DI "Data inizio esercizio" D0
+DI "Data fine esercizio" D1
+OU 106 CODTAB
+FL "Z"
+CH NORMAL
+WA "L'esercizio non esiste"
+FI ANNOSEL
+ME 0 CLEAR,4@
+ME ENABLE,4@
+EN
+DA 109
+BE
+PR 2 4 "Periodo da Data "
+HE "Data dalla quale si vuole la stampa"
+FI DADATA
+EN
+NU 112 2
+BE
+PR 2 5 ""
+FL "DH"
+VA 14 1 #109[7,8]
+FI DAG
+DR 109
+EN
+NU 113 2
+BE
+PR 6 5 ""
+FL "DH"
+VA 14 1 #109[5,6]
+FI DAM
+DR 109
+EN
+
+DA 110
+BE
+PR 35 4 "A Data "
+HE "Data fino alla quale si vuole la stampa"
+FI ADATA
+EN
+NU 114 2
+BE
+PR 42 5 ""
+FL "DH"
+VA 14 1 #110[7,8]
+FI AGIO
+DR 110
+EN
+NU 115 2
+BE
+PR 46 5 ""
+FL "DH"
+VA 14 1 #110[5,6]
+FI AM
+DR 110
+EN
+
+
+
+GR -1 55 6
+BE
+PR 2 6 "@bSelezione sui conti"
+EN
+NU 132 3
+BE
+PR 3 7 "Da: Gruppo "
+US 19 KE 1 SE (CONTO="")
+IN GRUPPO 132
+DI "Gruppo" GRUPPO
+DI "Descrizione@50" DESCR
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+FI DGR
+EN
+NU 133 3
+BE
+PR 23 7 "Conto "
+US 19 KE 1 SE (SOTTOCONTO="")
+IN GRUPPO 132
+IN CONTO 133
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Descrizione@50" DESCR
+OU 133 CONTO
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+FI DCNT
+EN
+NU 134 6
+BE
+PR 36 7 "Sottoconto "
+US 19
+IN GRUPPO 132
+IN CONTO 133
+IN SOTTOCONTO 134
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+DI "Descrizione@50" DESCR
+OU 134 SOTTOCONTO
+OU 132 GRUPPO
+OU 133 CONTO
+OU 135 DESCR
+CH NORMAL
+FI DSTCNT
+FL "H"
+EN
+ST 135 50
+BE
+PR 3 8 ""
+US 19 KE 2
+IN DESCR 135
+DI "Descrizione@50" DESCR
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+OU 134 SOTTOCONTO
+OU 133 CONTO
+OU 132 GRUPPO
+OU 135 DESCR
+CH NORMAL
+EN
+NU 136 3
+BE
+PR 3 9 "A: Gruppo "
+US 19 KE 1 SE (CONTO="")
+IN GRUPPO 136
+DI "Gruppo" GRUPPO
+DI "Descrizione@50" DESCR
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+FI AGR
+EN
+NU 137 3
+BE
+PR 23 9 "Conto "
+US 19 KE 1 SE (SOTTOCONTO="")
+IN GRUPPO 136
+IN CONTO 137
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Descrizione@50" DESCR
+OU 137 CONTO
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+FI ACNT
+EN
+NU 138 6
+BE
+PR 36 9 "Sottoconto "
+US 19
+IN GRUPPO 136
+IN CONTO 137
+IN SOTTOCONTO 138
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+DI "Descrizione@50" DESCR
+OU 138 SOTTOCONTO
+OU 136 GRUPPO
+OU 137 CONTO
+OU 139 DESCR
+CH NORMAL
+FI ASTCNT
+FL "H"
+EN
+ST 139 50
+BE
+PR 3 10 ""
+US 19 KE 2
+IN DESCR 139
+DI "Descrizione@50" DESCR
+DI "Gruppo" GRUPPO
+DI "Conto" CONTO
+DI "Sottoconto" SOTTOCONTO
+OU 138 SOTTOCONTO
+OU 137 CONTO
+OU 136 GRUPPO
+OU 139 DESCR
+CH NORMAL
+EN
+BO 401
+BE
+PR 3 12 "Stampa i Totali"
+FI SHOW_TOT
+FL "H"
+EN
+EN
+ENDMASK
diff --git a/src/ps/cast/saldi_m.qry b/src/ps/cast/saldi_m.qry
new file mode 100644
index 000000000..4177da488
--- /dev/null
+++ b/src/ps/cast/saldi_m.qry
@@ -0,0 +1,10 @@
+
+
+ Saldi per contropartita magaz
+ ODBC(magazzino)
+SELECT rmov.datareg,mov.codcaus,caus.descr,mov.descr, rmov.GRUPPO,rmov.CONTO,rmov.SOTTOCONTO,rmov.sezione,iif(rmov.sezione='A',-rmov.IMPORTO,rmov.IMPORTO),mov.numdoc,mov.datadoc,mov.protiva,rmov.TIPOCC,rmov.GRUPPOC,rmov.CONTOC,rmov.SOTTOCONTC,iif(rmov.tipocc='',pcon.descr,clifo.ragsoc),rmov.gruppo*100+rmov.conto as mastro
+FROM RMOV join mov on (rmov.numreg=mov.numreg) left join clifo on (rmov.tipocc=clifo.tipocf and rmov.sottocontc=clifo.codcf) left join pcon on (rmov.gruppoc=pcon.gruppo and rmov.contoc=pcon.conto and rmov.sottocontc=pcon.sottoconto) left join caus on (caus.codcaus=mov.codcaus)
+where rmov.annoes=#ANNOSEL and (rmov.dataregE;=datetime(#ANNOSEL,#DAM,#DAG)) and (rmov.dataregC;=datetime(#ANNOSEL,#AM,#AGIO))
+ORDER BY rmov.GRUPPO,rmov.CONTO,rmov.SOTTOCONTO,rmov.TIPOCC,rmov.GRUPPOC,rmov.CONTOC,rmov.SOTTOCONTC
+HAVING mastroE;=(#DGR*100+#DCNT) and mastroC;=(#AGR*100+#ACNT)
+
\ No newline at end of file