Continua senza sosta lo sviluppo del saldaconto
git-svn-id: svn://10.65.10.50/trunk@1174 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
ab49a4f5d7
commit
350fc53821
@ -1025,9 +1025,15 @@ END
|
||||
|
||||
STRING F_CODAG 5
|
||||
BEGIN
|
||||
PROMPT 46 15 "Codice agente "
|
||||
PROMPT 44 15 "Codice agente "
|
||||
FLAGS "UZ"
|
||||
FIELD LF_CFVEN->CODAG
|
||||
USE AGE
|
||||
INPUT CODTAB F_CODAG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_CODAG CODTAB
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 7
|
||||
HELP "Codice dell'agente di cui si serve il cliente"
|
||||
END
|
||||
|
65
cg/cg2100.h
65
cg/cg2100.h
@ -131,37 +131,38 @@
|
||||
|
||||
#define S_ANNO 101
|
||||
#define S_NUM 102
|
||||
#define S_DATADOC 103
|
||||
#define S_NUMPROT 104
|
||||
#define S_NUMDOC 105
|
||||
#define S_DESCR 106
|
||||
#define S_RATA 107
|
||||
#define S_DATASCAD 108
|
||||
#define S_IMPORTO 109
|
||||
#define S_IMPORTOVAL 110
|
||||
#define S_SEZIONE 111
|
||||
#define S_IMPORTOPAG 112
|
||||
#define S_RITENUTE 113
|
||||
#define S_SEZRITENUTE 114
|
||||
#define S_SALDOACC 115
|
||||
#define S_RESIDUO 116
|
||||
#define S_DATAPAG 117
|
||||
#define S_CODPAG 118
|
||||
#define S_TIPOPAG 119
|
||||
#define S_TIPO 120
|
||||
#define S_GRUPPO 121
|
||||
#define S_CONTO 122
|
||||
#define S_SOTTOCONTO 123
|
||||
#define S_DESCRCONTO 124
|
||||
#define S_DESCAGG 125
|
||||
#define S_VSABI 126
|
||||
#define S_VSCAB 127
|
||||
#define S_DESCVSABI 128
|
||||
#define S_AGENTE 129
|
||||
#define S_DESCAGENTE 130
|
||||
#define S_NSABI 131
|
||||
#define S_NSCAB 132
|
||||
#define S_DESCNSABI 133
|
||||
#define S_DESPAG 134
|
||||
#define S_RIGA 103
|
||||
#define S_DATADOC 104
|
||||
#define S_NUMPROT 105
|
||||
#define S_NUMDOC 106
|
||||
#define S_DESCR 107
|
||||
#define S_RATA 108
|
||||
#define S_DATASCAD 109
|
||||
#define S_IMPORTO 110
|
||||
#define S_IMPORTOVAL 111
|
||||
#define S_SEZIONE 112
|
||||
#define S_IMPORTOPAG 113
|
||||
#define S_RITENUTE 114
|
||||
#define S_SEZRITENUTE 115
|
||||
#define S_SALDOACC 116
|
||||
#define S_RESIDUO 117
|
||||
#define S_DATAPAG 118
|
||||
#define S_CODPAG 119
|
||||
#define S_TIPOPAG 120
|
||||
#define S_TIPO 121
|
||||
#define S_GRUPPO 122
|
||||
#define S_CONTO 123
|
||||
#define S_SOTTOCONTO 124
|
||||
#define S_DESCRCONTO 125
|
||||
#define S_DESCAGG 126
|
||||
#define S_VSABI 127
|
||||
#define S_VSCAB 128
|
||||
#define S_DESCVSABI 129
|
||||
#define S_AGENTE 130
|
||||
#define S_DESCAGENTE 131
|
||||
#define S_NSABI 132
|
||||
#define S_NSCAB 133
|
||||
#define S_DESCNSABI 134
|
||||
#define S_DESPAG 135
|
||||
|
||||
#endif
|
||||
|
677
cg/cg2100s.uml
677
cg/cg2100s.uml
@ -1,316 +1,361 @@
|
||||
#include "cg2100.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
|
||||
BUTTON DLG_OK 10 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 10 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
|
||||
PAGE "Pagamento" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
BEGIN
|
||||
PROMPT 1 0 "@BPartita"
|
||||
END
|
||||
|
||||
NUMBER S_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 1 "Anno partita "
|
||||
FLAGS "RD"
|
||||
END
|
||||
|
||||
STRING S_NUM 7
|
||||
BEGIN
|
||||
PROMPT 38 1 "Numero partita "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING S_DESCR 50
|
||||
BEGIN
|
||||
PROMPT 2 2 "Descrizione "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_RATA 4
|
||||
BEGIN
|
||||
PROMPT 2 3 "Rata "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE S_DATASCAD
|
||||
BEGIN
|
||||
PROMPT 20 3 "Data "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_RESIDUO 15
|
||||
BEGIN
|
||||
PROMPT 44 3 "Residuo "
|
||||
PICTURE "."
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTOVAL 15 3
|
||||
BEGIN
|
||||
PROMPT 2 4 "Importo in valuta "
|
||||
PICTURE ".3"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTO 15
|
||||
BEGIN
|
||||
PROMPT 44 4 "Importo in lire "
|
||||
PICTURE "."
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
|
||||
GROUPBOX DLG_NULL 78 13
|
||||
BEGIN
|
||||
PROMPT 1 6 "@BPagamento"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTOPAG 15
|
||||
BEGIN
|
||||
PROMPT 2 7 "Importo pagamento "
|
||||
PICTURE "."
|
||||
FIELD IMPORTOPAG
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTOPAG 15
|
||||
BEGIN
|
||||
PROMPT 38 7 "Ritenute professionali "
|
||||
PICTURE "."
|
||||
FIELD RITENUTE
|
||||
END
|
||||
|
||||
BOOLEAN S_SALDOACC
|
||||
BEGIN
|
||||
PROMPT 2 8 "Saldo "
|
||||
FIELD SALDOACC
|
||||
END
|
||||
|
||||
DATE S_DATAPAG
|
||||
BEGIN
|
||||
PROMPT 38 8 "Data pagamento "
|
||||
FIELD DATAPAG
|
||||
END
|
||||
|
||||
STRING S_CODPAG 4
|
||||
BEGIN
|
||||
PROMPT 2 9 "Pagamento "
|
||||
FLAGS "UZ"
|
||||
USE CPG
|
||||
INPUT CODTAB S_CODPAG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Tipo" I0
|
||||
OUTPUT S_CODPAG CODTAB
|
||||
OUTPUT S_DESPAG S0
|
||||
OUTPUT S_TIPOPAG I0
|
||||
FIELD CODPAG
|
||||
END
|
||||
|
||||
STRING S_DESPAG 50
|
||||
BEGIN
|
||||
PROMPT 24 9 ""
|
||||
USE CPG KEY 2
|
||||
INPUT S0 S_DESPAG
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Tipo" I0
|
||||
COPY OUTPUT S_CODPAG
|
||||
END
|
||||
|
||||
LIST S_TIPOPAG 2 40
|
||||
BEGIN
|
||||
PROMPT 2 10 "Tipo pagamento "
|
||||
ITEM "1|Rimessa Diretta"
|
||||
ITEM "2|Tratta"
|
||||
ITEM "3|Ricevuta Bancaria"
|
||||
ITEM "4|Cessione"
|
||||
ITEM "5|Paghero'"
|
||||
ITEM "6|Lettera di credito"
|
||||
ITEM "7|Tratta accettata"
|
||||
ITEM "8|Rapporti interbancari diretti"
|
||||
ITEM "9|Bonifico"
|
||||
ITEM "10|Altro"
|
||||
FIELD TIPOPAG
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 11 "@bConto di contropartita"
|
||||
END
|
||||
|
||||
LIST S_TIPO 1 12
|
||||
BEGIN
|
||||
PROMPT 2 12 "Tipo "
|
||||
ITEM " |Conto"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
FIELD TIPOCF
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER S_GRUPPO 3
|
||||
BEGIN
|
||||
PROMPT 28 11 "Gruppo "
|
||||
FIELD GRUPPO
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
NUMBER S_CONTO 3
|
||||
BEGIN
|
||||
PROMPT 44 11 "Conto "
|
||||
FIELD CONTO
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
NUMBER S_SOTTOCONTO 6
|
||||
BEGIN
|
||||
PROMPT 58 11 "Sottoconto "
|
||||
FIELD SOTTOCONTO
|
||||
USE LF_PCON
|
||||
INPUT GRUPPO S_GRUPPO
|
||||
INPUT CONTO S_CONTO
|
||||
INPUT SOTTOCONTO S_SOTTOCONTO
|
||||
DISPLAY "Gruppo" GRUPPO
|
||||
DISPLAY "Conto" CONTO
|
||||
DISPLAY "Sottoconto" SOTTOCONTO
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT S_GRUPPO GRUPPO
|
||||
OUTPUT S_CONTO CONTO
|
||||
OUTPUT S_SOTTOCONTO SOTTOCONTO
|
||||
OUTPUT S_DESCRCONTO DESCR
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_DESCRCONTO 50
|
||||
BEGIN
|
||||
PROMPT 2 12 "Descrizione conto "
|
||||
USE LF_PCON KEY 2
|
||||
INPUT DESCR S_DESCRCONTO
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
DISPLAY "Gruppo" GRUPPO
|
||||
DISPLAY "Conto" CONTO
|
||||
DISPLAY "Sottoconto" SOTTOCONTO
|
||||
COPY OUTPUT S_SOTTOCONTO
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_DESCAGG 50
|
||||
BEGIN
|
||||
PROMPT 2 14 "Descrizione aggiuntiva "
|
||||
FIELD DESCAGG
|
||||
END
|
||||
|
||||
NUMBER S_VSABI 5
|
||||
BEGIN
|
||||
PROMPT 2 15 "Vostra Banca - ABI "
|
||||
FLAGS "Z"
|
||||
USE %BAN
|
||||
INPUT CODTAB[1,5] S_VSABI
|
||||
INPUT CODTAB[6,10] S_VSCAB
|
||||
DISPLAY "ABI@5" CODTAB[1,5]
|
||||
DISPLAY "CAB@5" CODTAB[6,10]
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT S_VSABI CODTAB[1,5]
|
||||
OUTPUT S_VSCAB CODTAB[6,10]
|
||||
OUTPUT S_DESCVSABI S0
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD VSABI
|
||||
END
|
||||
|
||||
NUMBER S_VSCAB 5
|
||||
BEGIN
|
||||
PROMPT 30 15 "CAB "
|
||||
FLAGS "Z"
|
||||
COPY ALL S_VSABI
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD VSCAB
|
||||
END
|
||||
|
||||
STRING S_DESCVSABI 50 32
|
||||
BEGIN
|
||||
PROMPT 42 15 ""
|
||||
USE %BAN KEY 2
|
||||
INPUT S0 S_DESCVSABI
|
||||
DISPLAY "Denominazione@50" S0
|
||||
DISPLAY "ABI@5" CODTAB[1,5]
|
||||
DISPLAY "CAB@5" CODTAB[6,10]
|
||||
COPY OUTPUT S_VSABI
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_AGENTE 5
|
||||
BEGIN
|
||||
PROMPT 2 16 "Agente "
|
||||
FLAGS "UZ"
|
||||
USE AGE
|
||||
INPUT CODTAB S_AGENTE
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione @50" S0
|
||||
OUTPUT S_AGENTE CODTAB
|
||||
OUTPUT S_DESCAGENTE S0
|
||||
CHECKTYPE NORMAL
|
||||
FIELD AGENTE
|
||||
END
|
||||
|
||||
STRING S_DESCAGENTE 50
|
||||
BEGIN
|
||||
PROMPT 24 16 ""
|
||||
USE AGE KEY 2
|
||||
INPUT S0 S_DESCAGENTE
|
||||
DISPLAY "Descrizione @50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT S_AGENTE
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
|
||||
NUMBER S_NSABI 5
|
||||
BEGIN
|
||||
PROMPT 2 17 "Nostra Banca - ABI "
|
||||
FLAGS "Z"
|
||||
COPY USE S_VSABI
|
||||
INPUT CODTAB[1,5] S_NSABI
|
||||
INPUT CODTAB[6,10] S_NSCAB
|
||||
COPY DISPLAY S_VSABI
|
||||
OUTPUT S_NSABI CODTAB[1,5]
|
||||
OUTPUT S_NSCAB CODTAB[6,10]
|
||||
FIELD NSABI
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
NUMBER S_VSCAB 5
|
||||
BEGIN
|
||||
PROMPT 30 17 "CAB "
|
||||
FLAGS "Z"
|
||||
COPY ALL S_NSABI
|
||||
FIELD NSCAB
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_DESCNSABI 50 32
|
||||
BEGIN
|
||||
PROMPT 42 15 ""
|
||||
COPY USE S_DESCVSABI
|
||||
INPUT S0 S_DESCNSABI
|
||||
COPY DISPLAY S_DESCVSABI
|
||||
COPY OUTPUT S_NSABI
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
#include "cg2100.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
|
||||
BUTTON DLG_OK 10 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 10 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
|
||||
PAGE "Pagamento" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL 78 7
|
||||
BEGIN
|
||||
PROMPT 1 0 "@BPartita"
|
||||
END
|
||||
|
||||
NUMBER S_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 1 "Anno "
|
||||
FLAGS "D"
|
||||
FIELD ANNO
|
||||
END
|
||||
|
||||
STRING S_NUM 7
|
||||
BEGIN
|
||||
PROMPT 19 1 "Numero "
|
||||
FLAGS "DR"
|
||||
FIELD NUMPART
|
||||
END
|
||||
|
||||
STRING S_RIGA 4
|
||||
BEGIN
|
||||
PROMPT 40 1 "Riga "
|
||||
FLAGS "DR"
|
||||
FIELD NRIGA
|
||||
END
|
||||
|
||||
STRING S_NUMDOC 7
|
||||
BEGIN
|
||||
PROMPT 2 2 "Numero Documento "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE S_DATADOC
|
||||
BEGIN
|
||||
PROMPT 28 2 "Data documento "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_NUMPROT 5
|
||||
BEGIN
|
||||
PROMPT 56 2 "Protocollo IVA "
|
||||
FLAGS "DR"
|
||||
END
|
||||
|
||||
STRING S_DESCR 50
|
||||
BEGIN
|
||||
PROMPT 2 3 "Descrizione "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_RATA 4
|
||||
BEGIN
|
||||
PROMPT 2 4 "Rata "
|
||||
FLAGS "DR"
|
||||
END
|
||||
|
||||
DATE S_DATASCAD
|
||||
BEGIN
|
||||
PROMPT 21 4 "Data "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER S_RESIDUO 15
|
||||
BEGIN
|
||||
PROMPT 44 4 "Residuo "
|
||||
PICTURE "."
|
||||
FLAGS "DR"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTOVAL 15 2
|
||||
BEGIN
|
||||
PROMPT 2 5 "Importo in valuta "
|
||||
PICTURE ".2"
|
||||
FLAGS "DR"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTO 15
|
||||
BEGIN
|
||||
PROMPT 38 5 "Importo "
|
||||
PICTURE "."
|
||||
FLAGS "DR"
|
||||
END
|
||||
|
||||
LIST S_SEZIONE 6
|
||||
BEGIN
|
||||
PROMPT 68 5 ""
|
||||
ITEM "A|Avere"
|
||||
ITEM "D|Dare"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
|
||||
|
||||
GROUPBOX DLG_NULL 78 12
|
||||
BEGIN
|
||||
PROMPT 1 7 "@BPagamento"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTOPAG 15
|
||||
BEGIN
|
||||
PROMPT 2 8 "Importo pagamento "
|
||||
PICTURE "."
|
||||
FIELD IMPORTO
|
||||
FLAGS "UR"
|
||||
WARNING "Inserire un importo inferiore al residuo"
|
||||
END
|
||||
|
||||
NUMBER S_IMPORTOPAG 15
|
||||
BEGIN
|
||||
PROMPT 38 8 "Ritenute professionali "
|
||||
PICTURE "."
|
||||
FLAGS "UR"
|
||||
FIELD RITENUTE
|
||||
END
|
||||
|
||||
BOOLEAN S_SALDOACC
|
||||
BEGIN
|
||||
PROMPT 2 9 "Saldo "
|
||||
FIELD SALACC
|
||||
END
|
||||
|
||||
DATE S_DATAPAG
|
||||
BEGIN
|
||||
PROMPT 38 9 "Data pagamento "
|
||||
FIELD DATAREG
|
||||
END
|
||||
|
||||
STRING S_CODPAG 4
|
||||
BEGIN
|
||||
PROMPT 2 10 "Pagamento "
|
||||
FLAGS "UZ"
|
||||
USE %CPG
|
||||
INPUT CODTAB S_CODPAG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Tipo" I0
|
||||
OUTPUT S_CODPAG CODTAB
|
||||
OUTPUT S_DESPAG S0
|
||||
OUTPUT S_TIPOPAG I0
|
||||
FIELD CODPAG
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_DESPAG 50
|
||||
BEGIN
|
||||
PROMPT 24 10 ""
|
||||
USE CPG KEY 2
|
||||
INPUT S0 S_DESPAG
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Tipo" I0
|
||||
COPY OUTPUT S_CODPAG
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
LIST S_TIPOPAG 2 35
|
||||
BEGIN
|
||||
PROMPT 2 11 "Tipo pagamento "
|
||||
ITEM "1|Rimessa Diretta"
|
||||
ITEM "2|Tratta"
|
||||
ITEM "3|Ricevuta Bancaria"
|
||||
ITEM "4|Cessione"
|
||||
ITEM "5|Paghero'"
|
||||
ITEM "6|Lettera di credito"
|
||||
ITEM "7|Tratta accettata"
|
||||
ITEM "8|Rapporti interbancari diretti"
|
||||
ITEM "9|Bonifico"
|
||||
ITEM "10|Altro"
|
||||
FIELD TIPOPAG
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 12 "@bConto di contropartita"
|
||||
END
|
||||
|
||||
LIST S_TIPO 1 12
|
||||
BEGIN
|
||||
PROMPT 2 12 "Tipo "
|
||||
ITEM " |Conto"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
FIELD TIPOCF
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER S_GRUPPO 3
|
||||
BEGIN
|
||||
PROMPT 24 12 "Gruppo "
|
||||
FIELD GRUPPO
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER S_CONTO 3
|
||||
BEGIN
|
||||
PROMPT 42 12 "Conto "
|
||||
FIELD CONTO
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER S_SOTTOCONTO 6
|
||||
BEGIN
|
||||
PROMPT 57 12 "Sottoconto "
|
||||
FIELD SOTTOCONTO
|
||||
USE LF_PCON
|
||||
INPUT GRUPPO S_GRUPPO
|
||||
INPUT CONTO S_CONTO
|
||||
INPUT SOTTOCONTO S_SOTTOCONTO
|
||||
DISPLAY "Gruppo" GRUPPO
|
||||
DISPLAY "Conto" CONTO
|
||||
DISPLAY "Sottoconto" SOTTOCONTO
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT S_GRUPPO GRUPPO
|
||||
OUTPUT S_CONTO CONTO
|
||||
OUTPUT S_SOTTOCONTO SOTTOCONTO
|
||||
OUTPUT S_DESCRCONTO DESCR
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
STRING S_DESCRCONTO 50
|
||||
BEGIN
|
||||
PROMPT 2 13 "Descrizione conto "
|
||||
USE LF_PCON KEY 2
|
||||
INPUT DESCR S_DESCRCONTO
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
DISPLAY "Gruppo" GRUPPO
|
||||
DISPLAY "Conto" CONTO
|
||||
DISPLAY "Sottoconto" SOTTOCONTO
|
||||
COPY OUTPUT S_SOTTOCONTO
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_DESCAGG 50
|
||||
BEGIN
|
||||
PROMPT 2 14 "Descrizione agg. "
|
||||
FIELD DESCR
|
||||
END
|
||||
|
||||
NUMBER S_VSABI 5
|
||||
BEGIN
|
||||
PROMPT 2 15 "Vs. Banca ABI "
|
||||
FLAGS "Z"
|
||||
USE %BAN
|
||||
INPUT CODTAB[1,5] S_VSABI
|
||||
INPUT CODTAB[6,10] S_VSCAB
|
||||
DISPLAY "ABI@5" CODTAB[1,5]
|
||||
DISPLAY "CAB@5" CODTAB[6,10]
|
||||
DISPLAY "Denominazione@50" S0
|
||||
OUTPUT S_VSABI CODTAB[1,5]
|
||||
OUTPUT S_VSCAB CODTAB[6,10]
|
||||
OUTPUT S_DESCVSABI S0
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD CODABI
|
||||
END
|
||||
|
||||
NUMBER S_VSCAB 5
|
||||
BEGIN
|
||||
PROMPT 25 15 "CAB "
|
||||
FLAGS "Z"
|
||||
COPY ALL S_VSABI
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD CODCAB
|
||||
END
|
||||
|
||||
STRING S_DESCVSABI 50 37
|
||||
BEGIN
|
||||
PROMPT 37 15 ""
|
||||
USE %BAN KEY 2
|
||||
INPUT S0 S_DESCVSABI
|
||||
DISPLAY "Denominazione@50" S0
|
||||
DISPLAY "ABI@5" CODTAB[1,5]
|
||||
DISPLAY "CAB@5" CODTAB[6,10]
|
||||
COPY OUTPUT S_VSABI
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_AGENTE 5
|
||||
BEGIN
|
||||
PROMPT 2 16 "Agente "
|
||||
FLAGS "UZ"
|
||||
USE AGE
|
||||
INPUT CODTAB S_AGENTE
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione @50" S0
|
||||
OUTPUT S_AGENTE CODTAB
|
||||
OUTPUT S_DESCAGENTE S0
|
||||
CHECKTYPE NORMAL
|
||||
FIELD CODAG
|
||||
END
|
||||
|
||||
STRING S_DESCAGENTE 50
|
||||
BEGIN
|
||||
PROMPT 24 16 ""
|
||||
USE AGE KEY 2
|
||||
INPUT S0 S_DESCAGENTE
|
||||
DISPLAY "Descrizione @50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT S_AGENTE
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
|
||||
NUMBER S_NSABI 5
|
||||
BEGIN
|
||||
PROMPT 2 17 "Ns. Banca ABI "
|
||||
FLAGS "Z"
|
||||
COPY USE S_VSABI
|
||||
INPUT CODTAB[1,5] S_NSABI
|
||||
INPUT CODTAB[6,10] S_NSCAB
|
||||
COPY DISPLAY S_VSABI
|
||||
OUTPUT S_NSABI CODTAB[1,5]
|
||||
OUTPUT S_NSCAB CODTAB[6,10]
|
||||
OUTPUT S_DESCNSABI S0
|
||||
FIELD CODABIPR
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
NUMBER S_NSCAB 5
|
||||
BEGIN
|
||||
PROMPT 25 17 "CAB "
|
||||
FLAGS "Z"
|
||||
COPY ALL S_NSABI
|
||||
FIELD CODCABPR
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING S_DESCNSABI 50 37
|
||||
BEGIN
|
||||
PROMPT 37 17 ""
|
||||
COPY USE S_DESCVSABI
|
||||
INPUT S0 S_DESCNSABI
|
||||
COPY DISPLAY S_DESCVSABI
|
||||
COPY OUTPUT S_NSABI
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
@ -380,8 +380,11 @@ const char* TCausale::causale_inc_imm() const
|
||||
const char* TCausale::tipo_doc() const
|
||||
{ return _rec.get("TIPODOC"); }
|
||||
|
||||
int TCausale::tipomov() const
|
||||
{ return _rec.get_int("TIPOMOV"); }
|
||||
|
||||
bool TCausale::saldaconto() const
|
||||
{ return _rec.get_int("TIPOMOV") > 0; }
|
||||
{ return tipomov() > 0; }
|
||||
|
||||
bool TCausale::ok() const
|
||||
{
|
||||
|
@ -114,6 +114,7 @@ public:
|
||||
TRegistro& reg() const { return (TRegistro&)_reg; }
|
||||
TipoIVA iva() const { return _iva; }
|
||||
bool corrispettivi() const { return _corrisp; }
|
||||
int tipomov() const;
|
||||
bool saldaconto() const;
|
||||
|
||||
virtual bool ok() const;
|
||||
|
293
cg/cg2104.cpp
293
cg/cg2104.cpp
@ -355,19 +355,19 @@ void TPrimanota_application::write_scadenze(const TMask& m)
|
||||
|
||||
TRectype& r = _rel->lfile().curr();
|
||||
|
||||
TString nreg(r.get("NUMREG"));
|
||||
TString ndoc(r.get("NUMDOC"));
|
||||
TString tmov(r.get("TIPOMOV"));
|
||||
TDate ddoc(r.get_date("DATADOC"));
|
||||
TDate dreg(r.get_date("DATAREG"));
|
||||
TString reg (r.get("REG"));
|
||||
TString desc(r.get("DESCR"));
|
||||
TString protiva(r.get("PROTIVA"));
|
||||
TString codcaus(r.get("CODCAUS"));
|
||||
TString codval (r.get("CODVAL"));
|
||||
TString cambio (r.get("CAMBIO"));
|
||||
const long nreg = r.get_long("NUMREG");
|
||||
const TString16 ndoc(r.get("NUMDOC"));
|
||||
const int tmov = r.get_int("TIPOMOV");
|
||||
const TDate ddoc(r.get_date("DATADOC"));
|
||||
const TDate dreg(r.get_date("DATAREG"));
|
||||
const TString16 reg (r.get("REG"));
|
||||
const TString80 desc(r.get("DESCR"));
|
||||
const int protiva = r.get_int("PROTIVA");
|
||||
const TString16 codcaus(r.get("CODCAUS"));
|
||||
const TString16 codval (r.get("CODVAL"));
|
||||
const real cambio (r.get("CAMBIO"));
|
||||
|
||||
TString numpart = m.get(F_NUMRIF);
|
||||
const TString16 numpart = m.get(F_NUMRIF);
|
||||
const int anno = m.get_int(F_ANNORIF);
|
||||
|
||||
char sezione = _rel->cg(0).get_char("SEZIONE"); // Dare/Avere
|
||||
@ -416,6 +416,7 @@ void TPrimanota_application::write_scadenze(const TMask& m)
|
||||
partita.put("NREG", nreg);
|
||||
partita.put("DATAREG",dreg);
|
||||
partita.put("DATADOC",ddoc);
|
||||
partita.put("NUMDOC", ndoc);
|
||||
partita.put("REG", reg);
|
||||
partita.put("DESCR", desc);
|
||||
partita.put("PROTIVA",protiva);
|
||||
@ -651,6 +652,8 @@ bool TPrimanota_application::edit_scadenze(int currig, const TBill& b, int anno,
|
||||
while (k == K_ENTER)
|
||||
{
|
||||
k = a.run();
|
||||
|
||||
long pos;
|
||||
if (k == K_ENTER)
|
||||
{
|
||||
const int rata = a.row().get_int(0);
|
||||
@ -661,30 +664,150 @@ bool TPrimanota_application::edit_scadenze(int currig, const TBill& b, int anno,
|
||||
err = scadenza.read();
|
||||
CHECKD(err == NOERR, "Non ritrovo piu' la rata ", rata);
|
||||
|
||||
int urig = 1;
|
||||
int nrig = a.row().get_int(4);
|
||||
if (nrig == 0) // Ho cliccato su una scadenza
|
||||
{
|
||||
for (long i = a.selected()+1; i < a.items(); i++) // Cerca pagamento
|
||||
for (pos = a.selected()+1; pos < a.items(); pos++) // Cerca pagamento
|
||||
{
|
||||
const int r = a.row(i).get_int(4);
|
||||
if (r == 0 || a.enabled(i))
|
||||
{
|
||||
nrig = r;
|
||||
const int nr = a.row(pos).get_int(4);
|
||||
if (nr) urig = nr;
|
||||
if (nr == 0 || a.enabled(pos))
|
||||
{
|
||||
nrig = nr;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const bool nuovo = nrig == 0;
|
||||
TRectype part(parbas);
|
||||
if (nrig == 0) // Inserimento di un nuovo pagamento
|
||||
part.zero();
|
||||
if (nuovo) // Inserimento di un nuovo pagamento
|
||||
{
|
||||
// PART_ANNO viene preso dalla partita base
|
||||
// PART_NUMPART viene preso dalla partita base
|
||||
|
||||
nrig = urig+1;
|
||||
part.put(PART_NRIGA, nrig); // Riga di partita
|
||||
|
||||
part.put(PART_TIPOMOV, causale().tipomov()); // Dati causale corrente
|
||||
part.put(PART_CODCAUS, causale().codice());
|
||||
|
||||
part.put(PART_NUMRIG, currig); // Riga su cui ho cliccato
|
||||
|
||||
// Copia dati movimento corrente
|
||||
part.put(PART_DATAREG, curr_mask().get(F_DATAREG));
|
||||
part.put(PART_DATADOC, curr_mask().get(F_DATADOC));
|
||||
part.put(PART_NUMDOC, curr_mask().get(F_NUMDOC));
|
||||
part.put(PART_DESCR, curr_mask().get(F_DESCR));
|
||||
|
||||
part.zero(PART_REG);
|
||||
part.zero(PART_PROTIVA);
|
||||
|
||||
TImporto imp; imp = cgs().row(currig);
|
||||
part.put(PART_SEZ, imp.sezione()); // Sezione della riga cliccata
|
||||
|
||||
part.zero(PART_IMPOSTA);
|
||||
part.zero(PART_IMPORTO);
|
||||
part.zero(PART_SPESE);
|
||||
|
||||
TString80 tmp;
|
||||
|
||||
tmp = scadenza.get(SCAD_CODPAG);
|
||||
part.put(PART_CODPAG, tmp);
|
||||
|
||||
tmp = scadenza.get(SCAD_TIPOPAG);
|
||||
part.put(PART_TIPOPAG, tmp);
|
||||
|
||||
part.zero(PART_CODVAL);
|
||||
part.zero(PART_CAMBIO);
|
||||
part.zero(PART_IMPORTOVAL);
|
||||
part.zero(PART_DATACAM);
|
||||
|
||||
int caus = 2; // Calcola riga causale per la contropartita
|
||||
switch (atoi(tmp))
|
||||
{
|
||||
case 2: // Tratta
|
||||
case 7: // Tratta accettata
|
||||
caus = 3; break;
|
||||
case 3: // Ricevuta bancaria
|
||||
caus = 4; break;
|
||||
case 4: // Cessione
|
||||
caus = 5; break;
|
||||
case 5: // Paghero'
|
||||
caus = 6; break;
|
||||
case 6: // Fattura di credito
|
||||
caus = 7; break;
|
||||
case 1: // Rimessa
|
||||
case 8: // Rapporti interbancari diretti
|
||||
case 9: // Bonifico
|
||||
default:
|
||||
caus = 2; break;
|
||||
}
|
||||
|
||||
TBill bill; causale().bill(caus, bill);
|
||||
if (bill.empty()) causale().bill(caus = 1, bill);
|
||||
bill.put(part);
|
||||
|
||||
if (b.tipo() > ' ') // Se cliente o fornitore cerca sua banca
|
||||
{
|
||||
TRelation cliforel(LF_CLIFO);
|
||||
cliforel.add(LF_CFVEN, "TIPOCF=TIPOCF|CODCF=CODCF");
|
||||
TRectype& clifo = cliforel.lfile().curr();
|
||||
|
||||
clifo.put(CLI_TIPOCF, b.tipo());
|
||||
clifo.put(CLI_CODCF, b.codclifo());
|
||||
const int err = cliforel.read();
|
||||
CHECK(err == NOERR, "Chiss'e' fregato il clifo");
|
||||
|
||||
tmp = clifo.get(CLI_CODABI);
|
||||
part.put(PART_CODABI, tmp);
|
||||
tmp = clifo.get(CLI_CODCAB);
|
||||
part.put(PART_CODCAB, tmp);
|
||||
tmp = cliforel.lfile(LF_CFVEN).get(CLI_CODAG);
|
||||
part.put(PART_CODAG, tmp);
|
||||
}
|
||||
else
|
||||
{
|
||||
part.zero(PART_CODABI);
|
||||
part.zero(PART_CODCAB);
|
||||
part.zero(PART_CODAG);
|
||||
}
|
||||
|
||||
part.zero(PART_IMPTOTPAG);
|
||||
part.zero(PART_RITENUTE);
|
||||
|
||||
part.zero(PART_DATARIFPAG);
|
||||
part.zero(PART_NUMRIFPAG);
|
||||
part.zero(PART_CHIUSA);
|
||||
|
||||
tmp = scadenza.get(SCAD_NRATA);
|
||||
part.put(PART_NRATA, tmp);
|
||||
|
||||
tmp = scadenza.get(SCAD_CODABIPR);
|
||||
part.put(PART_CODABIPR, tmp);
|
||||
|
||||
tmp = scadenza.get(SCAD_CODCABPR);
|
||||
part.put(PART_CODCABPR, tmp);
|
||||
}
|
||||
else
|
||||
{
|
||||
}
|
||||
|
||||
if (edit_pagamento(parbas, scadenza.curr(), part))
|
||||
{
|
||||
err = (nrig == 0) ? partita.write(part) : partita.rewrite(part);
|
||||
err = nuovo ? partita.write(part) : partita.rewrite(part);
|
||||
|
||||
if (nuovo && err == NOERR)
|
||||
{
|
||||
r.cut(0);
|
||||
r.add(part.get(PART_NRATA));
|
||||
r.add(part.get(PART_DATADOC));
|
||||
r.add(part.get(PART_IMPORTO));
|
||||
r.add(part.get(PART_DESCR));
|
||||
r.add(part.get(PART_NRIGA));
|
||||
a.insert(r, pos);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -692,102 +815,70 @@ bool TPrimanota_application::edit_scadenze(int currig, const TBill& b, int anno,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TPrimanota_application::edit_pagamento(const TRectype& parbas,
|
||||
const TRectype& scaden,
|
||||
TRectype& part)
|
||||
|
||||
|
||||
static bool importopag_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
if (f.to_check(k))
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
const real r(m.get(S_RESIDUO));
|
||||
real i(f.get());
|
||||
|
||||
if (i > r)
|
||||
{
|
||||
warning_box("Non e' possibile inserire un importo superiore al residuo");
|
||||
i = r;
|
||||
f.set(i.string());
|
||||
}
|
||||
if (i == r)
|
||||
{
|
||||
m.set(S_SALDOACC, "X");
|
||||
m.disable(S_SALDOACC);
|
||||
}
|
||||
else
|
||||
m.enable(S_SALDOACC);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
bool TPrimanota_application::edit_pagamento(const TRectype& parbas, const TRectype& scaden, TRectype& part)
|
||||
{
|
||||
TMask m("cg2100s");
|
||||
m.set_handler(S_IMPORTOPAG, importopag_handler);
|
||||
|
||||
TRelation rel(LF_PARTITE); // Working relation
|
||||
|
||||
rel.lfile().curr() = part;
|
||||
TLocalisamfile& partita = rel.lfile();
|
||||
partita.curr() = part;
|
||||
m.autoload(&rel); // Load current record on mask
|
||||
|
||||
const real importo(scaden.get(SCAD_IMPORTO));
|
||||
const real importopag(part.get(SCAD_IMPORTO));
|
||||
const real ritenute(part.get(PART_RITENUTE));
|
||||
const real residuo = importo - importopag;
|
||||
|
||||
m.set(S_RESIDUO, residuo.string());
|
||||
m.set(S_DATADOC, parbas.get(PART_DATADOC));
|
||||
m.set(S_NUMPROT, parbas.get(PART_PROTIVA));
|
||||
m.set(S_NUMDOC, parbas.get(PART_NUMDOC));
|
||||
m.set(S_DESCR, parbas.get(PART_DESCR));
|
||||
|
||||
m.set(S_RATA, scaden.get(SCAD_NRATA));
|
||||
m.set(S_DATASCAD, scaden.get(SCAD_DATASCAD));
|
||||
m.set(S_IMPORTO, scaden.get(SCAD_IMPORTO));
|
||||
m.set(S_IMPORTOVAL, scaden.get(SCAD_IMPORTOVAL));
|
||||
m.set(S_SEZIONE, parbas.get(PART_SEZ));
|
||||
m.set(S_IMPORTOPAG, importopag.string());
|
||||
|
||||
if (part.empty()) // Insert mode
|
||||
{
|
||||
TString80 tmp;
|
||||
|
||||
tmp = curr_mask().get(F_DATAREG);
|
||||
m.set(S_DATAPAG, tmp);
|
||||
|
||||
tmp = scaden.get(SCAD_CODPAG);
|
||||
m.set(S_CODPAG, tmp);
|
||||
|
||||
tmp = scaden.get(SCAD_TIPOPAG);
|
||||
m.set(S_TIPOPAG, tmp);
|
||||
// Dati del documento (fattura) che ha generato la scadenza
|
||||
m.set(S_NUMDOC, parbas.get(PART_NUMDOC)); // Numero documento
|
||||
m.set(S_DATADOC, parbas.get(PART_DATADOC)); // Data documento
|
||||
m.set(S_NUMPROT, parbas.get(PART_PROTIVA)); // Protocollo IVA
|
||||
m.set(S_DESCR, parbas.get(PART_DESCR)); // Descrizione documento
|
||||
|
||||
int caus = 2; // Calcola riga causale
|
||||
switch (atoi(tmp))
|
||||
{
|
||||
case 2:
|
||||
caus = 3; break; // Tratta
|
||||
case 3:
|
||||
caus = 4; break; // Ricevuta bancaria
|
||||
case 4:
|
||||
caus = 5; break; // Cessione
|
||||
case 5:
|
||||
caus = 6; break; // Paghero'
|
||||
case 6:
|
||||
caus = 7; break; // Fattura di credito
|
||||
case 7:
|
||||
caus = 3; break; // Tratta accettata
|
||||
case 1: // Rimessa
|
||||
case 8: // Rapporti interbancari diretti
|
||||
case 9: // Bonifico
|
||||
default:
|
||||
caus = 2; break;
|
||||
}
|
||||
|
||||
TBill bill; causale().bill(caus, bill);
|
||||
m.set(S_TIPO, bill.tipo());
|
||||
m.set(S_GRUPPO, bill.gruppo());
|
||||
m.set(S_CONTO, bill.conto());
|
||||
m.set(S_SOTTOCONTO, bill.sottoconto());
|
||||
// Dati della scadenza che ha generato la partita
|
||||
m.set(S_RESIDUO, residuo.string()); // Residuo da pagare
|
||||
m.set(S_DATASCAD, scaden.get(SCAD_DATASCAD)); // Data della scadenza
|
||||
m.set(S_IMPORTO, scaden.get(SCAD_IMPORTO)); // Importo della rata
|
||||
m.set(S_IMPORTOVAL, scaden.get(SCAD_IMPORTOVAL)); // " in valuta
|
||||
m.set(S_RATA, scaden.get(SCAD_NRATA));
|
||||
|
||||
tmp = curr_mask().get(F_DESCR);
|
||||
m.set(S_DESCR, tmp);
|
||||
|
||||
bill.get(parbas);
|
||||
if (bill.tipo() > ' ')
|
||||
{
|
||||
TLocalisamfile clifo(LF_CLIFO);
|
||||
clifo.put(CLI_TIPOCF, bill.tipo());
|
||||
clifo.put(CLI_CODCF, bill.codclifo());
|
||||
tmp = clifo.get(CLI_CODABI);
|
||||
m.set(S_VSABI, tmp);
|
||||
tmp = clifo.get(CLI_CODBAN);
|
||||
m.set(S_VSCAB, tmp);
|
||||
tmp = clifo.get(CLI_CODAG);
|
||||
m.set(S_AGENTE, tmp);
|
||||
}
|
||||
tmp = scaden.get(SCAD_CODABIPR);
|
||||
m.set(S_NSABI, tmp);
|
||||
tmp = scaden.get(SCAD_CODCABPR);
|
||||
m.set(S_NSCAB, tmp);
|
||||
}
|
||||
|
||||
if (importopag.is_zero())
|
||||
m.set(S_IMPORTOPAG, residuo.string());
|
||||
|
||||
const KEY key = m.run();
|
||||
if (key == K_ENTER)
|
||||
{
|
||||
m.autosave(&rel);
|
||||
part = rel.lfile().curr();
|
||||
part = partita.curr();
|
||||
}
|
||||
|
||||
return key == K_ENTER;
|
||||
|
Loading…
x
Reference in New Issue
Block a user