"BILANCIO " + YEAR(#DATAFIN) + " - SITUAZIONE AL " + #DATASTACODCCOSTO_1MESSAGE RESET,F2"Situazione al " + #DATASTA"Situazione al " + #DATAFINCODCCOSTO_1MESSAGE ISAMREAD,CDC,CODCOSTO=CODCCOSTO_1,DESCRIZCODCCOSTOMESSAGE RESET,F3CODCCOSTOMESSAGE ISAMREAD,CDC,CODCOSTO=CODCCOSTO,DESCRIZCODCONTOMESSAGE RESET,F4CODCONTOIF(NUM((MOVANA.TIPOMOV="P")||(MOVANA.TIPOMOV="V"));BETWEEN(DATACOMP,#DATAINI,#DATASTA); 0) * IMPORTO#THIS @
EMPTY=
IF
ELSE
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
#THIS @ -1 * \ Cambia segno
#THIS ! \ al campo corrente
THEN
#THIS @ \ Prende il valore attuale con segno
"F4." #THIS GET_ID + \ Costruisce la stringa F4.101
+! \ Somma il campo corrente al corrispondente in F4
THEN
SEZIONEIF(NUM(MOVANA.TIPOMOV="");BETWEEN(DATACOMP,#DATAINI,#DATASTA); 0) * IMPORTO#THIS @
EMPTY=
IF
ELSE
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
#THIS @ -1 * \ Cambia segno
#THIS ! \ al campo corrente
THEN
#THIS @ \ Prende il valore attuale con segno
"F4." #THIS GET_ID + \ Costruisce la stringa F4.101
+! \ Somma il campo corrente al corrispondente in F4
THEN
SEZIONEIF(NUM((MOVANA.TIPOMOV="P")||(MOVANA.TIPOMOV="V"));IMPORTO;0)#THIS @
EMPTY=
IF
ELSE
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
#THIS @ -1 * \ Cambia segno
#THIS ! \ al campo corrente
THEN
#THIS @ \ Prende il valore attuale con segno
"F4." #THIS GET_ID + \ Costruisce la stringa F4.101
+! \ Somma il campo corrente al corrispondente in F4
THEN
SEZIONEIF(NUM(MOVANA.TIPOMOV="");IMPORTO;0)#THIS @
EMPTY=
IF
ELSE
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
#THIS @ -1 * \ Cambia segno
#THIS ! \ al campo corrente
THEN
#THIS @ \ Prende il valore attuale con segno
"F4." #THIS GET_ID + \ Costruisce la stringa F4.101
+! \ Somma il campo corrente al corrispondente in F4
THEN
SEZIONE#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
201 @
203 @
- .201 @
0 = IF
0
ELSE
205 @
201 @
F; 100 *
0 ROUND
THEN
.
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
301 @
303 @
- .301 @
0 = IF
0
ELSE
305 @
301 @
F; 100 *
0 ROUND
THEN
.
#H2.101#H2.102#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F1." #THIS GET_ID + \ Costruisce la stringa F1.201
+! \ Somma il valore corrente al corrispondente in F1#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F1." #THIS GET_ID + \ Costruisce la stringa F1.201
+! \ Somma il valore corrente al corrispondente in F1201 @
203 @
- .201 @
0 = IF
0
ELSE
205 @
201 @
F; 100 *
0 ROUND
THEN
.
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F1." #THIS GET_ID + \ Costruisce la stringa F1.201
+! \ Somma il valore corrente al corrispondente in F1#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F1." #THIS GET_ID + \ Costruisce la stringa F1.201
+! \ Somma il valore corrente al corrispondente in F1301 @
303 @
- .301 @
0 = IF
0
ELSE
305 @
301 @
F; 100 *
0 ROUND
THEN
.
#H3.101#H3.102#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F2." #THIS GET_ID + \ Costruisce la stringa F2.201
+! \ Somma il valore corrente al corrispondente in F2#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F2." #THIS GET_ID + \ Costruisce la stringa F2.203
+! \ Somma il valore corrente al corrispondente in F2
201 @
203 @
- .201 @
0 = IF
0
ELSE
205 @
201 @
F; 100 *
0 ROUND
THEN
.
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F2." #THIS GET_ID + \ Costruisce la stringa F2.301
+! \ Somma il valore corrente al corrispondente in F2
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F2." #THIS GET_ID + \ Costruisce la stringa F2.303
+! \ Somma il valore corrente al corrispondente in F2
301 @
303 @
- .301 @
0 = IF
0
ELSE
305 @
301 @
F; 100 *
0 ROUND
THEN
.
#H4.101#H4.101CA_FORMAT_CONTO_DESCR#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F3." #THIS GET_ID + \ Costruisce la stringa F3.201
+! \ Somma il valore corrente al corrispondente in F3#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F3." #THIS GET_ID + \ Costruisce la stringa F3.203
+! \ Somma il valore corrente al corrispondente in F3
201 @
203 @
- .201 @
0 = IF
0
ELSE
205 @
201 @
F; 100 *
0 ROUND
THEN
.
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F3." #THIS GET_ID + \ Costruisce la stringa F3.301
+! \ Somma il valore corrente al corrispondente in F3
#THIS @ 0 C; IF
#THIS @
-1 *
#THIS !
#THIS GET_ID_NEXT
"A"
ELSE
#THIS @
0 = IF
""
ELSE
"D"
THEN
THEN
#THIS GET_ID_NEXT !
#THIS @ \ Legge il valore del campo corrente
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
-1 * \ Cambia segno
THEN
"F3." #THIS GET_ID + \ Costruisce la stringa F3.303
+! \ Somma il valore corrente al corrispondente in F3
301 @
303 @
- .301 @
0 = IF
0
ELSE
305 @
301 @
F; 100 *
0 ROUND
THEN
.
USE RMOVANA KEY 3 SELECT BETWEEN(CODCCOSTO,#CODCOSTO,#CODCOSTO+'~')
BY CODCCOSTO CODCONTO DATACOMP
JOIN MOVANA INTO NUMREG==NUMREG
FROM DATACOMP=#DATAINI
TO DATACOMP=#DATAFIN: ADD_T0_F3 ( -- )
#THIS @
EMPTY=
IF
ELSE
MON
#THIS GET_ID_NEXT @ \ Legge la sezione dal campo successivo
"A" = IF \ Se vale Avere
#THIS @ -1 * \ Cambia segno
#THIS ! \ al campo corrente
THEN
#THIS @ \ Prende il valore attuale con segno
"F3." #THIS GET_ID + \ Costruisce la stringa F3.101
+! \ Somma il campo corrente al corrispondente in F3
THEN
;