Correzzioni varie a causalki lista movimenti, mastrini e stampa causali
git-svn-id: svn://10.65.10.50/trunk@100 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
11ce8c230c
commit
e00b2a76f8
2234
cg/cg0500.cpp
2234
cg/cg0500.cpp
File diff suppressed because it is too large
Load Diff
579
cg/cg0500a.uml
579
cg/cg0500a.uml
@ -1,288 +1,291 @@
|
||||
#include "cg0500.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
|
||||
#include <toolbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL -1 3
|
||||
BEGIN
|
||||
PROMPT 1 0 ""
|
||||
END
|
||||
|
||||
STRING F_COD_CAUS 3
|
||||
BEGIN
|
||||
PROMPT 3 1 "Codice "
|
||||
FIELD LF_CAUSALI->CODCAUS
|
||||
KEY 1
|
||||
FLAGS "U"
|
||||
USE LF_CAUSALI
|
||||
INPUT CODCAUS F_COD_CAUS
|
||||
DISPLAY "Cod. causale" CODCAUS
|
||||
DISPLAY "Descrizione @50" DESCR
|
||||
DISPLAY "Tipo documento" TIPODOC
|
||||
DISPLAY "Codice registro" REG
|
||||
DISPLAY "Tipo movimento" TIPOMOV
|
||||
OUTPUT F_COD_CAUS CODCAUS
|
||||
OUTPUT F_DESCR DESCR
|
||||
HELP "Codice causale"
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_DESCR 40
|
||||
BEGIN
|
||||
PROMPT 17 1 "Descrizione "
|
||||
FIELD LF_CAUSALI->DESCR
|
||||
COPY USE F_COD_CAUS
|
||||
INPUT CODCAUS F_COD_CAUS
|
||||
INPUT DESCR F_DESCR
|
||||
DISPLAY "Cod. causale" CODCAUS
|
||||
DISPLAY "Descrizione @50" DESCR
|
||||
DISPLAY "Tipo documento" TIPODOC
|
||||
DISPLAY "Codice registro" REG
|
||||
DISPLAY "Tipo movimento" TIPOMOV
|
||||
OUTPUT F_COD_CAUS CODCAUS
|
||||
OUTPUT F_DESCR DESCR
|
||||
HELP "Descrizione della causale"
|
||||
END
|
||||
|
||||
STRING F_TIPO_DOC 2
|
||||
BEGIN
|
||||
PROMPT 2 4 "Tipo doc. "
|
||||
FIELD LF_CAUSALI->TIPODOC
|
||||
USE %TPD
|
||||
INPUT CODTAB F_TIPO_DOC
|
||||
DISPLAY "Tipo " CODTAB
|
||||
DISPLAY "Descrizione @50 " S0
|
||||
OUTPUT F_TIPO_DOC CODTAB
|
||||
HELP "Tipo documento"
|
||||
CHECKTYPE NORMAL
|
||||
MESSAGE HIDE, F_TIPO_MOV_2 | SHOW, 2@
|
||||
MESSAGE EMPTY HIDE, 2@ | SHOW, F_TIPO_MOV_2
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
STRING F_COD_REG 3
|
||||
BEGIN
|
||||
PROMPT 23 4 "Cod. reg. "
|
||||
FIELD LF_CAUSALI->REG
|
||||
USE REG
|
||||
INPUT CODTAB[1,4] F_ANNOES
|
||||
INPUT CODTAB[5,7] F_COD_REG
|
||||
DISPLAY "Anno" CODTAB[1,4]
|
||||
DISPLAY "Codice registro " CODTAB[5,7]
|
||||
DISPLAY "Tipo" I0
|
||||
DISPLAY "Registro corrispettivi" B0
|
||||
DISPLAY "Descrizione @50" S0
|
||||
OUTPUT F_ANNOES CODTAB[1,4]
|
||||
OUTPUT F_COD_REG CODTAB[5,7]
|
||||
OUTPUT F_TIPO_REG I0
|
||||
OUTPUT F_CORRISP B0
|
||||
HELP "Codice registro"
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_TIPO_MOV 2
|
||||
BEGIN
|
||||
PROMPT 68 4 ""
|
||||
FIELD LF_CAUSALI->TIPOMOV
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
LISTBOX F_TIPO_MOV_1 1 20
|
||||
BEGIN
|
||||
PROMPT 44 4 "Tipo mov. "
|
||||
FIELD LF_CAUSALI->TIPOMOV
|
||||
HELP "Tipo movimento"
|
||||
ITEM " |Nessuno" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "1|Fattura" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "2|Nota credito" MESSAGE COPY,F_TIPO_MOV
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
LISTBOX F_TIPO_MOV_2 1 20
|
||||
BEGIN
|
||||
PROMPT 44 4 "Tipo mov. "
|
||||
FIELD LF_CAUSALI->TIPOMOV
|
||||
HELP "Inserire il tipo movimento"
|
||||
ITEM " |Nessuno" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "3|Incasso/pagamento " MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "5|Insoluto" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "6|Pagamento insoluto" MESSAGE COPY,F_TIPO_MOV
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
STRING F_ANNOES 4
|
||||
BEGIN
|
||||
PROMPT 2 6 ""
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
STRING F_TIPO_REG 4
|
||||
BEGIN
|
||||
PROMPT 23 5 ""
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
BOOLEAN F_CORRISP
|
||||
BEGIN
|
||||
PROMPT 33 5 ""
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
SPREADSHEET F_SHEET_GCS
|
||||
BEGIN
|
||||
PROMPT 2 7 ""
|
||||
ITEM "Tipo conto@21"
|
||||
ITEM "C/F"
|
||||
ITEM "Gr."
|
||||
ITEM "Co."
|
||||
ITEM "Sottoc."
|
||||
ITEM "D/A"
|
||||
ITEM "Descrizione@50"
|
||||
ITEM "Descr. agg."
|
||||
ITEM "Iva"
|
||||
ITEM "Cod.Iva"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL -1 3
|
||||
BEGIN
|
||||
PROMPT 1 0 "Campi obbligatori in caricamento documenti"
|
||||
END
|
||||
|
||||
BOOLEAN F_DATA_DOC
|
||||
BEGIN
|
||||
PROMPT 2 1 "Data documento"
|
||||
FIELD LF_CAUSALI->DATADOC
|
||||
HELP ""
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
BOOLEAN F_NUM_DOC
|
||||
BEGIN
|
||||
PROMPT 34 1 "Numero documento"
|
||||
FIELD LF_CAUSALI->NUMDOC
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
BOOLEAN F_AUTO_FAT
|
||||
BEGIN
|
||||
PROMPT 2 4 "Autofattura art.34"
|
||||
FIELD LF_CAUSALI->AUTOFATT
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_ALLEGAT
|
||||
BEGIN
|
||||
PROMPT 34 4 "Documento in allegati"
|
||||
FIELD LF_CAUSALI->ALLEG
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_FAT_RITARDO
|
||||
BEGIN
|
||||
PROMPT 2 6 "Fattura in ritardo"
|
||||
FIELD LF_CAUSALI->RITFATT
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
STRING F_COD_CAUS_IM 3
|
||||
BEGIN
|
||||
PROMPT 34 6 "Codice causale per l'incasso immediato "
|
||||
FIELD LF_CAUSALI->CODCAUSIM
|
||||
COPY USE F_COD_CAUS
|
||||
INPUT CODCAUS F_COD_CAUS_IM
|
||||
COPY DISPLAY F_COD_CAUS
|
||||
OUTPUT F_COD_CAUS_IM CODCAUS
|
||||
CHECKTYPE NORMAL
|
||||
MESSAGE CLEAR, F_M_770
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_OP_INTRACOM
|
||||
BEGIN
|
||||
PROMPT 2 8 "Operazione intracomunitaria"
|
||||
FIELD LF_CAUSALI->INTRACOM
|
||||
MESSAGE TRUE "X", F_MOV_VALU | DISABLE, F_MOV_VALU
|
||||
MESSAGE FALSE "", F_MOV_VALU | ENABLE, F_MOV_VALU
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_VALINTRA
|
||||
BEGIN
|
||||
PROMPT 34 8 "Gestione valuta per operazioni intrac."
|
||||
FIELD LF_CAUSALI->VALINTRA
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_MOV_VALU
|
||||
BEGIN
|
||||
PROMPT 2 10 "Movimento in valuta"
|
||||
FIELD LF_CAUSALI->MOVVAL
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_MOV_SEZ
|
||||
BEGIN
|
||||
PROMPT 34 10 "Movimento solo sezionale"
|
||||
FIELD LF_CAUSALI->MOVSEZ
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
LISTBOX F_OP_FINE_ANNO 1 13
|
||||
BEGIN
|
||||
PROMPT 2 12 "Operazioni di fine anno "
|
||||
ITEM " | "
|
||||
ITEM "C|Chiusura"
|
||||
ITEM "A|Apertura"
|
||||
FIELD LF_CAUSALI->MOVAP
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
|
||||
LISTBOX F_COLL_CESP 1 40
|
||||
BEGIN
|
||||
PROMPT 2 14 "Collegamento cespiti "
|
||||
FIELD LF_CAUSALI->COLLCESP
|
||||
HELP "Inserire il tipo di collegamento cespiti"
|
||||
ITEM " |Nessuno"
|
||||
ITEM "A|Acquisto cespite"
|
||||
ITEM "B|Rettifica acquisto"
|
||||
ITEM "C|Sostenimento costi"
|
||||
ITEM "E|Eliminazione dal processo produttivo"
|
||||
ITEM "M|Rivalutazione monetaria"
|
||||
ITEM "P|Reinvestimento plusvalenze"
|
||||
ITEM "R|Rivalutazione economica"
|
||||
ITEM "T|Trasferimento"
|
||||
ITEM "V|Vendita cespite"
|
||||
ITEM "Z|Rettifica vendita"
|
||||
END
|
||||
|
||||
LISTBOX F_M_770 1 40
|
||||
BEGIN
|
||||
PROMPT 2 16 "Collegamento Mod.770 "
|
||||
FIELD LF_CAUSALI->M770
|
||||
HELP "Inserire il tipo di collegamento Mod.770"
|
||||
ITEM " |Nessuno" MESSAGE ENABLE,F_COD_CAUS_IM
|
||||
ITEM "1|Ricevuta e/o pagamento fattura percip." MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "2|Versamento ritenute percip." MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "3|Versamento ritenute dipendente" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "4|Versamento contributi dipendente" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "5|Compensi non soggetti" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "6|Ritenute per operazioni occasionali" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
#include "cg0500b.uml"
|
||||
#include "cg0500.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
|
||||
#include <toolbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL -1 3
|
||||
BEGIN
|
||||
PROMPT 1 0 ""
|
||||
END
|
||||
|
||||
STRING F_COD_CAUS 3
|
||||
BEGIN
|
||||
PROMPT 3 1 "Codice "
|
||||
FIELD LF_CAUSALI->CODCAUS
|
||||
KEY 1
|
||||
FLAGS "U"
|
||||
USE LF_CAUSALI
|
||||
INPUT CODCAUS F_COD_CAUS
|
||||
DISPLAY "Cod. causale" CODCAUS
|
||||
DISPLAY "Descrizione @50" DESCR
|
||||
DISPLAY "Tipo documento" TIPODOC
|
||||
DISPLAY "Codice registro" REG
|
||||
DISPLAY "Tipo movimento" TIPOMOV
|
||||
OUTPUT F_COD_CAUS CODCAUS
|
||||
OUTPUT F_DESCR DESCR
|
||||
HELP "Codice causale"
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_DESCR 40
|
||||
BEGIN
|
||||
PROMPT 17 1 "Descrizione "
|
||||
FIELD LF_CAUSALI->DESCR
|
||||
COPY USE F_COD_CAUS
|
||||
INPUT CODCAUS F_COD_CAUS
|
||||
INPUT DESCR F_DESCR
|
||||
DISPLAY "Cod. causale" CODCAUS
|
||||
DISPLAY "Descrizione @50" DESCR
|
||||
DISPLAY "Tipo documento" TIPODOC
|
||||
DISPLAY "Codice registro" REG
|
||||
DISPLAY "Tipo movimento" TIPOMOV
|
||||
OUTPUT F_COD_CAUS CODCAUS
|
||||
OUTPUT F_DESCR DESCR
|
||||
HELP "Descrizione della causale"
|
||||
END
|
||||
|
||||
STRING F_TIPO_DOC 2
|
||||
BEGIN
|
||||
PROMPT 2 4 "Tipo doc. "
|
||||
FIELD LF_CAUSALI->TIPODOC
|
||||
USE %TPD
|
||||
INPUT CODTAB F_TIPO_DOC
|
||||
DISPLAY "Tipo " CODTAB
|
||||
DISPLAY "Descrizione @50 " S0
|
||||
OUTPUT F_TIPO_DOC CODTAB
|
||||
HELP "Tipo documento"
|
||||
CHECKTYPE NORMAL
|
||||
MESSAGE SHOW, 2@
|
||||
MESSAGE EMPTY HIDE, 2@
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
STRING F_COD_REG 3
|
||||
BEGIN
|
||||
PROMPT 23 4 "Cod. reg. "
|
||||
FIELD LF_CAUSALI->REG
|
||||
USE REG
|
||||
INPUT CODTAB[1,4] F_ANNOES
|
||||
INPUT CODTAB[5,7] F_COD_REG
|
||||
DISPLAY "Anno" CODTAB[1,4]
|
||||
DISPLAY "Codice registro " CODTAB[5,7]
|
||||
DISPLAY "Tipo" I0
|
||||
DISPLAY "Registro corrispettivi" B0
|
||||
DISPLAY "Descrizione @50" S0
|
||||
OUTPUT F_ANNOES CODTAB[1,4]
|
||||
OUTPUT F_COD_REG CODTAB[5,7]
|
||||
OUTPUT F_TIPO_REG I0
|
||||
OUTPUT F_CORRISP B0
|
||||
HELP "Codice registro"
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
// Questo rimane sempre nascosto
|
||||
STRING F_TIPO_MOV 2
|
||||
BEGIN
|
||||
PROMPT 68 4 ""
|
||||
FIELD LF_CAUSALI->TIPOMOV
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
// Viene mostrato questo se TPD non vuoto e diverso da IN AN PG
|
||||
LISTBOX F_TIPO_MOV_1 1 20
|
||||
BEGIN
|
||||
PROMPT 44 4 "Tipo mov. "
|
||||
FIELD LF_CAUSALI->TIPOMOV
|
||||
HELP "Tipo movimento"
|
||||
ITEM " |Nessuno" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "1|Fattura" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "2|Nota credito" MESSAGE COPY,F_TIPO_MOV
|
||||
// GROUP 2
|
||||
END
|
||||
|
||||
// Viene mostrato questo se TPD vuoto o uguale a IN AN PG
|
||||
LISTBOX F_TIPO_MOV_2 1 20
|
||||
BEGIN
|
||||
PROMPT 44 4 "Tipo mov. "
|
||||
FIELD LF_CAUSALI->TIPOMOV
|
||||
HELP "Inserire il tipo movimento"
|
||||
ITEM " |Nessuno" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "3|Incasso/pagamento " MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "5|Insoluto" MESSAGE COPY,F_TIPO_MOV
|
||||
ITEM "6|Pagamento insoluto" MESSAGE COPY,F_TIPO_MOV
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
STRING F_ANNOES 4
|
||||
BEGIN
|
||||
PROMPT 2 6 ""
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
STRING F_TIPO_REG 4
|
||||
BEGIN
|
||||
PROMPT 23 5 ""
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
BOOLEAN F_CORRISP
|
||||
BEGIN
|
||||
PROMPT 33 5 ""
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
SPREADSHEET F_SHEET_GCS
|
||||
BEGIN
|
||||
PROMPT 2 7 ""
|
||||
ITEM "Tipo conto@21"
|
||||
ITEM "C/F"
|
||||
ITEM "Gr."
|
||||
ITEM "Co."
|
||||
ITEM "Sottoc."
|
||||
ITEM "D/A"
|
||||
ITEM "Descrizione@50"
|
||||
ITEM "Descr. agg."
|
||||
ITEM "Iva"
|
||||
ITEM "Cod.Iva"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "" -1 -1 77 20
|
||||
|
||||
GROUPBOX DLG_NULL -1 3
|
||||
BEGIN
|
||||
PROMPT 1 0 "Campi obbligatori in caricamento documenti"
|
||||
END
|
||||
|
||||
BOOLEAN F_DATA_DOC
|
||||
BEGIN
|
||||
PROMPT 2 1 "Data documento"
|
||||
FIELD LF_CAUSALI->DATADOC
|
||||
HELP ""
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
BOOLEAN F_NUM_DOC
|
||||
BEGIN
|
||||
PROMPT 34 1 "Numero documento"
|
||||
FIELD LF_CAUSALI->NUMDOC
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
BOOLEAN F_AUTO_FAT
|
||||
BEGIN
|
||||
PROMPT 2 4 "Autofattura art.34"
|
||||
FIELD LF_CAUSALI->AUTOFATT
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_ALLEGAT
|
||||
BEGIN
|
||||
PROMPT 34 4 "Documento in allegati"
|
||||
FIELD LF_CAUSALI->ALLEG
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_FAT_RITARDO
|
||||
BEGIN
|
||||
PROMPT 2 6 "Fattura in ritardo"
|
||||
FIELD LF_CAUSALI->RITFATT
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
STRING F_COD_CAUS_IM 3
|
||||
BEGIN
|
||||
PROMPT 34 6 "Codice causale per l'incasso immediato "
|
||||
FIELD LF_CAUSALI->CODCAUSIM
|
||||
COPY USE F_COD_CAUS
|
||||
INPUT CODCAUS F_COD_CAUS_IM
|
||||
COPY DISPLAY F_COD_CAUS
|
||||
OUTPUT F_COD_CAUS_IM CODCAUS
|
||||
CHECKTYPE NORMAL
|
||||
MESSAGE CLEAR, F_M_770
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_OP_INTRACOM
|
||||
BEGIN
|
||||
PROMPT 2 8 "Operazione intracomunitaria"
|
||||
FIELD LF_CAUSALI->INTRACOM
|
||||
MESSAGE TRUE "X", F_MOV_VALU | DISABLE, F_MOV_VALU
|
||||
MESSAGE FALSE "", F_MOV_VALU | ENABLE, F_MOV_VALU
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_VALINTRA
|
||||
BEGIN
|
||||
PROMPT 34 8 "Gestione valuta per operazioni intrac."
|
||||
FIELD LF_CAUSALI->VALINTRA
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_MOV_VALU
|
||||
BEGIN
|
||||
PROMPT 2 10 "Movimento in valuta"
|
||||
FIELD LF_CAUSALI->MOVVAL
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_MOV_SEZ
|
||||
BEGIN
|
||||
PROMPT 34 10 "Movimento solo sezionale"
|
||||
FIELD LF_CAUSALI->MOVSEZ
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
LISTBOX F_OP_FINE_ANNO 1 10
|
||||
BEGIN
|
||||
PROMPT 2 12 "Operazioni di fine anno "
|
||||
ITEM " | "
|
||||
ITEM "C|Chiusura"
|
||||
ITEM "A|Apertura"
|
||||
FIELD LF_CAUSALI->MOVAP
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
|
||||
LISTBOX F_COLL_CESP 1 40
|
||||
BEGIN
|
||||
PROMPT 2 14 "Collegamento cespiti "
|
||||
FIELD LF_CAUSALI->COLLCESP
|
||||
HELP "Inserire il tipo di collegamento cespiti"
|
||||
ITEM " |Nessuno"
|
||||
ITEM "A|Acquisto cespite"
|
||||
ITEM "B|Rettifica acquisto"
|
||||
ITEM "C|Sostenimento costi"
|
||||
ITEM "E|Eliminazione dal processo produttivo"
|
||||
ITEM "M|Rivalutazione monetaria"
|
||||
ITEM "P|Reinvestimento plusvalenze"
|
||||
ITEM "R|Rivalutazione economica"
|
||||
ITEM "T|Trasferimento"
|
||||
ITEM "V|Vendita cespite"
|
||||
ITEM "Z|Rettifica vendita"
|
||||
END
|
||||
|
||||
LISTBOX F_M_770 1 40
|
||||
BEGIN
|
||||
PROMPT 2 16 "Collegamento Mod.770 "
|
||||
FIELD LF_CAUSALI->M770
|
||||
HELP "Inserire il tipo di collegamento Mod.770"
|
||||
ITEM " |Nessuno" MESSAGE ENABLE,F_COD_CAUS_IM
|
||||
ITEM "1|Ricevuta e/o pagamento fattura percip." MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "2|Versamento ritenute percip." MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "3|Versamento ritenute dipendente" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "4|Versamento contributi dipendente" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "5|Compensi non soggetti" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
ITEM "6|Ritenute per operazioni occasionali" MESSAGE CLEAR,F_COD_CAUS_IM
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
#include "cg0500b.uml"
|
||||
|
@ -18,8 +18,9 @@ BEGIN
|
||||
MESSAGE SHOW,205|HIDE,105|HIDE,305
|
||||
ITEM "F|Fornitore"
|
||||
MESSAGE SHOW,305|HIDE,105|HIDE,205
|
||||
FLAGS "U"
|
||||
// FLAGS "DG"
|
||||
FLAGS "DG"
|
||||
GROUP 1
|
||||
// FLAGS "U"
|
||||
END
|
||||
|
||||
NUMBER 103 3
|
||||
@ -34,10 +35,12 @@ BEGIN
|
||||
CHECKTYPE NORMAL
|
||||
OUTPUT 103 GRUPPO
|
||||
OUTPUT 107 DESCR
|
||||
OUTPUT 102 TMCF
|
||||
WARNING "Conto inesistente o mancante"
|
||||
// OUTPUT 102 TMCF
|
||||
WARNING "Gruppo inesistente o mancante"
|
||||
// CHECKTYPE REQUIRED
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 1
|
||||
ADD RUN CG1 -0
|
||||
ADD RUN CG0 -1
|
||||
END
|
||||
|
||||
NUMBER 104 3
|
||||
@ -57,7 +60,7 @@ BEGIN
|
||||
OUTPUT 103 GRUPPO
|
||||
OUTPUT 107 DESCR
|
||||
WARNING "Conto inesistente o mancante"
|
||||
ADD RUN CG1 -0
|
||||
ADD RUN CG0 -1
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
@ -74,11 +77,11 @@ BEGIN
|
||||
DISPLAY "Conto" CONTO
|
||||
DISPLAY "Sottoconto" SOTTOCONTO
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT 105 SOTTOCONTO
|
||||
OUTPUT 103 GRUPPO
|
||||
OUTPUT 104 CONTO
|
||||
OUTPUT 104 CONTO
|
||||
OUTPUT 105 SOTTOCONTO
|
||||
OUTPUT 107 DESCR
|
||||
ADD RUN CG1 -0
|
||||
ADD RUN CG0 -1
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 1
|
||||
END
|
||||
@ -97,9 +100,6 @@ BEGIN
|
||||
DISPLAY "Sottoconto" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
DISPLAY "Tipo C/F" TIPOCF
|
||||
OUTPUT 102 TIPOCF
|
||||
OUTPUT 103 GRUPPO
|
||||
OUTPUT 104 CONTO
|
||||
OUTPUT 205 CODCF
|
||||
OUTPUT 107 RAGSOC
|
||||
CHECKTYPE NORMAL
|
||||
@ -122,9 +122,6 @@ BEGIN
|
||||
DISPLAY "Sottoconto" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
DISPLAY "Tipo C/F" TIPOCF
|
||||
OUTPUT 102 TIPOCF
|
||||
OUTPUT 103 GRUPPO
|
||||
OUTPUT 104 CONTO
|
||||
OUTPUT 305 CODCF
|
||||
OUTPUT 107 RAGSOC
|
||||
CHECKTYPE NORMAL
|
||||
|
668
cg/cg0501.cpp
668
cg/cg0501.cpp
@ -1,338 +1,338 @@
|
||||
#include <applicat.h>
|
||||
#include <tabutil.h>
|
||||
|
||||
#include "cg0501.h"
|
||||
#include "cg0500.h"
|
||||
|
||||
#include <causali.h>
|
||||
|
||||
|
||||
const char* iva2name(TipoIVA iva)
|
||||
{
|
||||
const char* i;
|
||||
switch(iva)
|
||||
{
|
||||
case nessuna_iva : i = "Nessuna IVA"; break;
|
||||
case iva_acquisti: i = "IVA Acquisti"; break;
|
||||
case iva_vendite : i = "IVA Vendite"; break;
|
||||
default : i = "IVA ERRATA!"; break;
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Registro
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
TRegistro::TRegistro(const char* cod, int year) : _rec(LF_TAB), _att(LF_ATTIV)
|
||||
{
|
||||
read(cod, year);
|
||||
}
|
||||
|
||||
|
||||
bool TRegistro::read(const char* cod, int year)
|
||||
{
|
||||
if (year <= 0)
|
||||
{
|
||||
const TDate oggi(TODAY);
|
||||
year = oggi.year();
|
||||
}
|
||||
|
||||
int err = ~NOERR;
|
||||
|
||||
if (cod && *cod > ' ')
|
||||
{
|
||||
TTable reg("REG");
|
||||
TString16 chiave;
|
||||
chiave << year << cod;
|
||||
reg.put("CODTAB", chiave);
|
||||
err = reg.read();
|
||||
if (err == NOERR)
|
||||
_rec = reg.curr();
|
||||
}
|
||||
|
||||
if (_att.ok())
|
||||
_att.zero();
|
||||
if (err != NOERR && _rec.ok())
|
||||
_rec.zero();
|
||||
return err == NOERR;
|
||||
}
|
||||
|
||||
|
||||
TRegistro& TRegistro::operator =(const TRegistro& r)
|
||||
{
|
||||
_rec = r._rec;
|
||||
_att = r._att;
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
||||
bool TRegistro::corrisp() const
|
||||
#include <applicat.h>
|
||||
#include <tabutil.h>
|
||||
|
||||
#include "cg0501.h"
|
||||
#include "cg0500.h"
|
||||
|
||||
#include <causali.h>
|
||||
|
||||
|
||||
const char* iva2name(TipoIVA iva)
|
||||
{
|
||||
const bool t = _rec.ok() ? _rec.get_bool("B0") : FALSE;
|
||||
return t;
|
||||
const char* i;
|
||||
switch(iva)
|
||||
{
|
||||
case nessuna_iva : i = "Nessuna IVA"; break;
|
||||
case iva_acquisti: i = "IVA Acquisti"; break;
|
||||
case iva_vendite : i = "IVA Vendite"; break;
|
||||
default : i = "IVA ERRATA!"; break;
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
|
||||
int TRegistro::tipo() const
|
||||
{
|
||||
const int t = _rec.ok() ? _rec.get_int("I0") : 0;
|
||||
return t;
|
||||
}
|
||||
|
||||
|
||||
TipoIVA TRegistro::iva() const
|
||||
{
|
||||
TipoIVA i = (TipoIVA)tipo();
|
||||
if (i != nessuna_iva && i != iva_vendite && i != iva_acquisti)
|
||||
{
|
||||
error_box("Il registro '%s' non e' un registro iva, tipo: %d",
|
||||
(const char*)_rec.get("CODTAB"), i);
|
||||
i = nessuna_iva;
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
bool TRegistro::read_att()
|
||||
{
|
||||
if (!_att.empty())
|
||||
return TRUE;
|
||||
|
||||
TLocalisamfile attivita(LF_ATTIV);
|
||||
attivita.put("CODDITTA", MainApp()->get_firm());
|
||||
const char* a = _rec.get("S8");
|
||||
attivita.put("CODATT", a);
|
||||
const int err = attivita.read();
|
||||
_att = attivita.curr();
|
||||
if (err != NOERR)
|
||||
_att.zero();
|
||||
|
||||
return err == NOERR;
|
||||
}
|
||||
|
||||
bool TRegistro::agenzia_viaggi()
|
||||
{
|
||||
if (iva() != iva_vendite)
|
||||
return FALSE;
|
||||
|
||||
bool av = FALSE;
|
||||
if (read_att()) av = _att.get_bool("REG74TER");
|
||||
|
||||
return av;
|
||||
}
|
||||
|
||||
const TString& TRegistro::tipo_attivita()
|
||||
{
|
||||
read_att();
|
||||
return _att.get("TIPOATT");
|
||||
}
|
||||
|
||||
|
||||
// Certified 99%
|
||||
bool TRegistro::update(long protiva, const TDate& datareg)
|
||||
{
|
||||
bool updated = TRUE;
|
||||
|
||||
if (protiva > _rec.get_long("I5"))
|
||||
{
|
||||
_rec.put("I5", protiva);
|
||||
updated = FALSE;
|
||||
}
|
||||
if (datareg > _rec.get_date("D2"))
|
||||
{
|
||||
_rec.put("D2", datareg);
|
||||
updated = FALSE;
|
||||
}
|
||||
|
||||
if (!updated)
|
||||
{
|
||||
TTable reg("REG");
|
||||
updated = reg.rewrite(_rec) == NOERR;
|
||||
}
|
||||
|
||||
return updated;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Libro giornale
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
// Legge il libro giornale dell'anno specificato
|
||||
bool TLibro_giornale::read(int y)
|
||||
{
|
||||
if (y <= 0)
|
||||
{
|
||||
const TDate oggi(TODAY);
|
||||
y = oggi.year();
|
||||
}
|
||||
|
||||
if (ok() && y == year()) return TRUE; // Gia' letto!
|
||||
|
||||
TTable reg("REG");
|
||||
bool found = FALSE;
|
||||
|
||||
char anno[8]; sprintf(anno, "%4d", y);
|
||||
reg.put("CODTAB", anno); // Cerca il primo registro dell'anno y
|
||||
|
||||
for (int err = reg.read(_isgteq); err == NOERR; err = reg.next())
|
||||
{
|
||||
if (strncmp(reg.get("CODTAB"), anno, 4) != 0) break;
|
||||
if (reg.get_int("I0") == libro_giornale)
|
||||
{
|
||||
found = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!found) reg.zero(); // Memorizza record (anche vuoto)
|
||||
_rec = reg.curr();
|
||||
|
||||
return found;
|
||||
}
|
||||
|
||||
TLibro_giornale::TLibro_giornale(int y)
|
||||
{
|
||||
read(y);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Causale
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
TCausale::TCausale(const char* cod, int year)
|
||||
: TArray(12), _rec(LF_CAUSALI), _iva(iva_errata)
|
||||
{
|
||||
if (*cod) read(cod, year);
|
||||
}
|
||||
|
||||
// Legge le righe della causale attualmente selezionata sulla maschera
|
||||
bool TCausale::read(const char* cod, int year)
|
||||
{
|
||||
destroy(); // Delete all rows
|
||||
|
||||
if (*cod > ' ')
|
||||
{
|
||||
_iva = iva_errata;
|
||||
|
||||
TLocalisamfile caus(LF_CAUSALI);
|
||||
caus.setkey(1);
|
||||
caus.zero();
|
||||
caus.put(CAU_CODCAUS, cod);
|
||||
|
||||
int err = caus.read();
|
||||
_rec = caus.curr();
|
||||
if (err != NOERR) return FALSE;
|
||||
|
||||
TLocalisamfile rcaus(LF_RCAUSALI);
|
||||
rcaus.setkey(1);
|
||||
rcaus.zero();
|
||||
rcaus.put(CAU_CODCAUS, cod);
|
||||
rcaus.put(CAU_NRIGA, 0);
|
||||
|
||||
err = rcaus.read(_isgteq); // Find first line
|
||||
if (err != NOERR) return FALSE;
|
||||
|
||||
while (err == NOERR && rcaus.get(CAU_CODCAUS) == cod)
|
||||
{
|
||||
const int riga = rcaus.get_int(CAU_NRIGA);
|
||||
add(rcaus.curr(), riga);
|
||||
err = rcaus.next(); // Read next line
|
||||
}
|
||||
rcaus.zero();
|
||||
for (int riga = 1; riga < size(); riga++) // Fill gaps
|
||||
if (objptr(riga) == NULL) add(rcaus.curr(), riga);
|
||||
|
||||
if (year > 0)
|
||||
_reg.read(caus.get("REG"), year); // Read register
|
||||
}
|
||||
else
|
||||
{
|
||||
_iva = nessuna_iva; // Clear IVA data
|
||||
_reg.read("", year);
|
||||
}
|
||||
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
const TRectype& TCausale::row(int num) const
|
||||
{
|
||||
const TRectype* rec = (const TRectype*)objptr(num);
|
||||
CHECKD(rec, "Manca la riga di causale ", num);
|
||||
return *rec;
|
||||
}
|
||||
|
||||
|
||||
TConto& TCausale::bill(int num, TConto& conto) const
|
||||
{
|
||||
const TRectype& rec = row(num);
|
||||
conto.set(rec.get_int("GRUPPO"), rec.get_int("CONTO"),
|
||||
rec.get_long("SOTTOCONTO"), rec.get_char("TIPOCF"));
|
||||
return conto;
|
||||
}
|
||||
|
||||
bool TCausale::data_doc() const
|
||||
{ return _rec.ok() ? _rec.get_bool("DATADOC") : FALSE; }
|
||||
|
||||
bool TCausale::num_doc() const
|
||||
{ return _rec.ok() ? _rec.get_bool("NUMDOC") : FALSE; }
|
||||
|
||||
bool TCausale::apertura() const
|
||||
{ return _rec.ok() ? _rec.get_char("MOVAP") == 'A' : FALSE; }
|
||||
|
||||
bool TCausale::sezionale() const
|
||||
{ return _rec.ok() ? _rec.get_bool("MOVSEZ") : FALSE; }
|
||||
|
||||
bool TCausale::valuta() const
|
||||
{ return _rec.ok() ? _rec.get_bool("MOVVAL") : FALSE; }
|
||||
|
||||
bool TCausale::intra() const
|
||||
{ return _rec.ok() ? _rec.get_bool("INTRACOM") : FALSE; }
|
||||
|
||||
bool TCausale::corrval() const
|
||||
{ return _rec.ok() ? _rec.get_bool("VALINTRA") : FALSE; }
|
||||
|
||||
|
||||
const char* TCausale::causale_inc_imm() const
|
||||
{ return _rec.ok() ? _rec.get("CODCAUSIM") : ""; }
|
||||
|
||||
const char* TCausale::tipo_doc() const
|
||||
{ return _rec.ok() ? _rec.get("TIPODOC") : ""; }
|
||||
|
||||
|
||||
TipoIVA TCausale::iva() const
|
||||
{
|
||||
if (_iva == iva_errata)
|
||||
{
|
||||
TipoIVA i = nessuna_iva;
|
||||
|
||||
if (ok())
|
||||
{
|
||||
TString tipodoc(_rec.get("TIPODOC"));
|
||||
if (tipodoc.not_empty())
|
||||
{
|
||||
TTable tpd("%TPD");
|
||||
tpd.put("CODTAB", tipodoc);
|
||||
if (tpd.read() == NOERR)
|
||||
{
|
||||
i = (TipoIVA)tpd.get_int("I0"); // IVA acquisti, vendite, generica
|
||||
if (i != iva_vendite && i != iva_acquisti)
|
||||
i = _reg.iva();
|
||||
}
|
||||
}
|
||||
}
|
||||
((TCausale*)this)->_iva = i; // Ricorda IVA per la prossima volta
|
||||
}
|
||||
return _iva;
|
||||
}
|
||||
|
||||
|
||||
bool TCausale::similar(const TCausale& c) const
|
||||
{
|
||||
return iva() == c.iva() &&
|
||||
sezionale() == c.sezionale() &&
|
||||
valuta() == c.valuta() &&
|
||||
intra() == c.intra();
|
||||
///////////////////////////////////////////////////////////
|
||||
// Registro
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
TRegistro::TRegistro(const char* cod, int year) : _rec(LF_TAB), _att(LF_ATTIV)
|
||||
{
|
||||
read(cod, year);
|
||||
}
|
||||
|
||||
|
||||
bool TRegistro::read(const char* cod, int year)
|
||||
{
|
||||
if (year <= 0)
|
||||
{
|
||||
const TDate oggi(TODAY);
|
||||
year = oggi.year();
|
||||
}
|
||||
|
||||
int err = ~NOERR;
|
||||
|
||||
if (cod && *cod > ' ')
|
||||
{
|
||||
TTable reg("REG");
|
||||
TString16 chiave;
|
||||
chiave << year << cod;
|
||||
reg.put("CODTAB", chiave);
|
||||
err = reg.read();
|
||||
if (err == NOERR)
|
||||
_rec = reg.curr();
|
||||
}
|
||||
|
||||
if (_att.ok())
|
||||
_att.zero();
|
||||
if (err != NOERR && _rec.ok())
|
||||
_rec.zero();
|
||||
return err == NOERR;
|
||||
}
|
||||
|
||||
|
||||
TRegistro& TRegistro::operator =(const TRegistro& r)
|
||||
{
|
||||
_rec = r._rec;
|
||||
_att = r._att;
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
||||
bool TRegistro::corrisp() const
|
||||
{
|
||||
const bool t = _rec.ok() ? _rec.get_bool("B0") : FALSE;
|
||||
return t;
|
||||
}
|
||||
|
||||
int TRegistro::tipo() const
|
||||
{
|
||||
const int t = _rec.ok() ? _rec.get_int("I0") : 0;
|
||||
return t;
|
||||
}
|
||||
|
||||
|
||||
TipoIVA TRegistro::iva() const
|
||||
{
|
||||
TipoIVA i = (TipoIVA)tipo();
|
||||
if (i != nessuna_iva && i != iva_vendite && i != iva_acquisti)
|
||||
{
|
||||
error_box("Il registro '%s' non e' un registro iva, tipo: %d",
|
||||
(const char*)_rec.get("CODTAB"), i);
|
||||
i = nessuna_iva;
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
bool TRegistro::read_att()
|
||||
{
|
||||
if (!_att.empty())
|
||||
return TRUE;
|
||||
|
||||
TLocalisamfile attivita(LF_ATTIV);
|
||||
attivita.put("CODDITTA", MainApp()->get_firm());
|
||||
const char* a = _rec.get("S8");
|
||||
attivita.put("CODATT", a);
|
||||
const int err = attivita.read();
|
||||
_att = attivita.curr();
|
||||
if (err != NOERR)
|
||||
_att.zero();
|
||||
|
||||
return err == NOERR;
|
||||
}
|
||||
|
||||
bool TRegistro::agenzia_viaggi()
|
||||
{
|
||||
if (iva() != iva_vendite)
|
||||
return FALSE;
|
||||
|
||||
bool av = FALSE;
|
||||
if (read_att()) av = _att.get_bool("REG74TER");
|
||||
|
||||
return av;
|
||||
}
|
||||
|
||||
const TString& TRegistro::tipo_attivita()
|
||||
{
|
||||
read_att();
|
||||
return _att.get("TIPOATT");
|
||||
}
|
||||
|
||||
|
||||
// Certified 99%
|
||||
bool TRegistro::update(long protiva, const TDate& datareg)
|
||||
{
|
||||
bool updated = TRUE;
|
||||
|
||||
if (protiva > _rec.get_long("I5"))
|
||||
{
|
||||
_rec.put("I5", protiva);
|
||||
updated = FALSE;
|
||||
}
|
||||
if (datareg > _rec.get_date("D2"))
|
||||
{
|
||||
_rec.put("D2", datareg);
|
||||
updated = FALSE;
|
||||
}
|
||||
|
||||
if (!updated)
|
||||
{
|
||||
TTable reg("REG");
|
||||
updated = reg.rewrite(_rec) == NOERR;
|
||||
}
|
||||
|
||||
return updated;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Libro giornale
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
// Legge il libro giornale dell'anno specificato
|
||||
bool TLibro_giornale::read(int y)
|
||||
{
|
||||
if (y <= 0)
|
||||
{
|
||||
const TDate oggi(TODAY);
|
||||
y = oggi.year();
|
||||
}
|
||||
|
||||
if (ok() && y == year()) return TRUE; // Gia' letto!
|
||||
|
||||
TTable reg("REG");
|
||||
bool found = FALSE;
|
||||
|
||||
char anno[8]; sprintf(anno, "%4d", y);
|
||||
reg.put("CODTAB", anno); // Cerca il primo registro dell'anno y
|
||||
|
||||
for (int err = reg.read(_isgteq); err == NOERR; err = reg.next())
|
||||
{
|
||||
if (strncmp(reg.get("CODTAB"), anno, 4) != 0) break;
|
||||
if (reg.get_int("I0") == libro_giornale)
|
||||
{
|
||||
found = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!found) reg.zero(); // Memorizza record (anche vuoto)
|
||||
_rec = reg.curr();
|
||||
|
||||
return found;
|
||||
}
|
||||
|
||||
TLibro_giornale::TLibro_giornale(int y)
|
||||
{
|
||||
read(y);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Causale
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
TCausale::TCausale(const char* cod, int year)
|
||||
: TArray(12), _rec(LF_CAUSALI), _iva(iva_errata)
|
||||
{
|
||||
if (*cod) read(cod, year);
|
||||
}
|
||||
|
||||
// Legge le righe della causale attualmente selezionata sulla maschera
|
||||
bool TCausale::read(const char* cod, int year)
|
||||
{
|
||||
destroy(); // Delete all rows
|
||||
|
||||
if (*cod > ' ')
|
||||
{
|
||||
_iva = iva_errata;
|
||||
|
||||
TLocalisamfile caus(LF_CAUSALI);
|
||||
caus.setkey(1);
|
||||
caus.zero();
|
||||
caus.put(CAU_CODCAUS, cod);
|
||||
|
||||
int err = caus.read();
|
||||
_rec = caus.curr();
|
||||
if (err != NOERR) return FALSE;
|
||||
|
||||
TLocalisamfile rcaus(LF_RCAUSALI);
|
||||
rcaus.setkey(1);
|
||||
rcaus.zero();
|
||||
rcaus.put(CAU_CODCAUS, cod);
|
||||
rcaus.put(CAU_NRIGA, 0);
|
||||
|
||||
err = rcaus.read(_isgteq); // Find first line
|
||||
if (err != NOERR) return FALSE;
|
||||
|
||||
while (err == NOERR && rcaus.get(CAU_CODCAUS) == cod)
|
||||
{
|
||||
const int riga = rcaus.get_int(CAU_NRIGA);
|
||||
add(rcaus.curr(), riga);
|
||||
err = rcaus.next(); // Read next line
|
||||
}
|
||||
rcaus.zero();
|
||||
for (int riga = 1; riga < size(); riga++) // Fill gaps
|
||||
if (objptr(riga) == NULL) add(rcaus.curr(), riga);
|
||||
|
||||
if (year > 0)
|
||||
_reg.read(caus.get("REG"), year); // Read register
|
||||
}
|
||||
else
|
||||
{
|
||||
_iva = nessuna_iva; // Clear IVA data
|
||||
_reg.read("", year);
|
||||
}
|
||||
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
const TRectype& TCausale::row(int num) const
|
||||
{
|
||||
const TRectype* rec = (const TRectype*)objptr(num);
|
||||
CHECKD(rec, "Manca la riga di causale ", num);
|
||||
return *rec;
|
||||
}
|
||||
|
||||
|
||||
TConto& TCausale::bill(int num, TConto& conto) const
|
||||
{
|
||||
const TRectype& rec = row(num);
|
||||
conto.set(rec.get_int("GRUPPO"), rec.get_int("CONTO"),
|
||||
rec.get_long("SOTTOCONTO"), rec.get_char("TIPOCF"));
|
||||
return conto;
|
||||
}
|
||||
|
||||
bool TCausale::data_doc() const
|
||||
{ return _rec.ok() ? _rec.get_bool("DATADOC") : FALSE; }
|
||||
|
||||
bool TCausale::num_doc() const
|
||||
{ return _rec.ok() ? _rec.get_bool("NUMDOC") : FALSE; }
|
||||
|
||||
bool TCausale::apertura() const
|
||||
{ return _rec.ok() ? _rec.get_char("MOVAP") == 'A' : FALSE; }
|
||||
|
||||
bool TCausale::sezionale() const
|
||||
{ return _rec.ok() ? _rec.get_bool("MOVSEZ") : FALSE; }
|
||||
|
||||
bool TCausale::valuta() const
|
||||
{ return _rec.ok() ? _rec.get_bool("MOVVAL") : FALSE; }
|
||||
|
||||
bool TCausale::intra() const
|
||||
{ return _rec.ok() ? _rec.get_bool("INTRACOM") : FALSE; }
|
||||
|
||||
bool TCausale::corrval() const
|
||||
{ return _rec.ok() ? _rec.get_bool("VALINTRA") : FALSE; }
|
||||
|
||||
|
||||
const char* TCausale::causale_inc_imm() const
|
||||
{ return _rec.ok() ? _rec.get("CODCAUSIM") : ""; }
|
||||
|
||||
const char* TCausale::tipo_doc() const
|
||||
{ return _rec.ok() ? _rec.get("TIPODOC") : ""; }
|
||||
|
||||
|
||||
TipoIVA TCausale::iva() const
|
||||
{
|
||||
if (_iva == iva_errata)
|
||||
{
|
||||
TipoIVA i = nessuna_iva;
|
||||
|
||||
if (ok())
|
||||
{
|
||||
TString tipodoc(_rec.get("TIPODOC"));
|
||||
if (tipodoc.not_empty())
|
||||
{
|
||||
TTable tpd("%TPD");
|
||||
tpd.put("CODTAB", tipodoc);
|
||||
if (tpd.read() == NOERR)
|
||||
{
|
||||
i = (TipoIVA)tpd.get_int("I0"); // IVA acquisti, vendite, generica
|
||||
if (i != iva_vendite && i != iva_acquisti)
|
||||
i = _reg.iva();
|
||||
}
|
||||
}
|
||||
}
|
||||
((TCausale*)this)->_iva = i; // Ricorda IVA per la prossima volta
|
||||
}
|
||||
return _iva;
|
||||
}
|
||||
|
||||
|
||||
bool TCausale::similar(const TCausale& c) const
|
||||
{
|
||||
return iva() == c.iva() &&
|
||||
sezionale() == c.sezionale() &&
|
||||
valuta() == c.valuta() &&
|
||||
intra() == c.intra();
|
||||
}
|
||||
|
194
cg/cg0501.h
194
cg/cg0501.h
@ -1,97 +1,97 @@
|
||||
#ifndef __CG2103_H
|
||||
#define __CG2103_H
|
||||
|
||||
#ifndef __ISAM_H
|
||||
#include <isam.h>
|
||||
#endif
|
||||
|
||||
#ifndef __CONTO_H
|
||||
#include "conto.h"
|
||||
#endif
|
||||
|
||||
enum TipoIVA {
|
||||
iva_errata = -1,
|
||||
nessuna_iva = 0,
|
||||
iva_vendite = 1,
|
||||
iva_acquisti = 2,
|
||||
iva_generica = 9
|
||||
};
|
||||
|
||||
const char* iva2name(TipoIVA i);
|
||||
|
||||
|
||||
class TRegistro : public TObject
|
||||
{
|
||||
bool read_att();
|
||||
|
||||
protected:
|
||||
enum TipoRegistro { libro_giornale = 5 };
|
||||
TRectype _rec, _att;
|
||||
|
||||
public:
|
||||
bool read(const char* code, int year);
|
||||
TRegistro& operator =(const TRegistro& r);
|
||||
|
||||
virtual bool ok() const { return !_rec.empty(); }
|
||||
|
||||
bool corrisp() const;
|
||||
int tipo() const;
|
||||
TipoIVA iva() const;
|
||||
const char* name() const { return _rec.get("CODTAB").mid(4); }
|
||||
int year() const { return _rec.get_int("CODTAB"); }
|
||||
TDate last_print() const { return _rec.get_date("D3"); }
|
||||
|
||||
bool agenzia_viaggi();
|
||||
const TString& tipo_attivita();
|
||||
|
||||
bool update(long uprotiva, const TDate& lastreg);
|
||||
|
||||
TRegistro(const char* code = "", int year = 0);
|
||||
virtual ~TRegistro() {}
|
||||
};
|
||||
|
||||
|
||||
class TLibro_giornale : public TRegistro
|
||||
{
|
||||
public:
|
||||
bool read(int year);
|
||||
TLibro_giornale(int year = 0);
|
||||
virtual ~TLibro_giornale() {}
|
||||
};
|
||||
|
||||
|
||||
class TCausale : public TArray
|
||||
{
|
||||
TipoIVA _iva;
|
||||
TRectype _rec;
|
||||
TRegistro _reg;
|
||||
|
||||
protected:
|
||||
const TRectype& row(int num) const;
|
||||
|
||||
public:
|
||||
TConto& bill(int num, TConto& c) const;
|
||||
|
||||
bool data_doc() const;
|
||||
bool num_doc() const;
|
||||
bool apertura() const;
|
||||
bool sezionale() const;
|
||||
bool valuta() const;
|
||||
bool intra() const;
|
||||
bool corrval() const;
|
||||
const char* causale_inc_imm() const;
|
||||
const char* tipo_doc() const;
|
||||
|
||||
TRegistro& reg() { return _reg; }
|
||||
TipoIVA iva() const;
|
||||
|
||||
virtual bool ok() const { return !_rec.empty(); }
|
||||
bool similar(const TCausale& c) const;
|
||||
|
||||
bool read(const char* code, int year);
|
||||
|
||||
TCausale(const char* code = "", int year = 0);
|
||||
virtual ~TCausale() {}
|
||||
};
|
||||
|
||||
#endif
|
||||
#ifndef __CG2103_H
|
||||
#define __CG2103_H
|
||||
|
||||
#ifndef __ISAM_H
|
||||
#include <isam.h>
|
||||
#endif
|
||||
|
||||
#ifndef __CONTO_H
|
||||
#include "conto.h"
|
||||
#endif
|
||||
|
||||
enum TipoIVA {
|
||||
iva_errata = -1,
|
||||
nessuna_iva = 0,
|
||||
iva_vendite = 1,
|
||||
iva_acquisti = 2,
|
||||
iva_generica = 9
|
||||
};
|
||||
|
||||
const char* iva2name(TipoIVA i);
|
||||
|
||||
|
||||
class TRegistro : public TObject
|
||||
{
|
||||
bool read_att();
|
||||
|
||||
protected:
|
||||
enum TipoRegistro { libro_giornale = 5 };
|
||||
TRectype _rec, _att;
|
||||
|
||||
public:
|
||||
bool read(const char* code, int year);
|
||||
TRegistro& operator =(const TRegistro& r);
|
||||
|
||||
virtual bool ok() const { return !_rec.empty(); }
|
||||
|
||||
bool corrisp() const;
|
||||
int tipo() const;
|
||||
TipoIVA iva() const;
|
||||
const char* name() const { return _rec.get("CODTAB").mid(4); }
|
||||
int year() const { return _rec.get_int("CODTAB"); }
|
||||
TDate last_print() const { return _rec.get_date("D3"); }
|
||||
|
||||
bool agenzia_viaggi();
|
||||
const TString& tipo_attivita();
|
||||
|
||||
bool update(long uprotiva, const TDate& lastreg);
|
||||
|
||||
TRegistro(const char* code = "", int year = 0);
|
||||
virtual ~TRegistro() {}
|
||||
};
|
||||
|
||||
|
||||
class TLibro_giornale : public TRegistro
|
||||
{
|
||||
public:
|
||||
bool read(int year);
|
||||
TLibro_giornale(int year = 0);
|
||||
virtual ~TLibro_giornale() {}
|
||||
};
|
||||
|
||||
|
||||
class TCausale : public TArray
|
||||
{
|
||||
TipoIVA _iva;
|
||||
TRectype _rec;
|
||||
TRegistro _reg;
|
||||
|
||||
protected:
|
||||
const TRectype& row(int num) const;
|
||||
|
||||
public:
|
||||
TConto& bill(int num, TConto& c) const;
|
||||
|
||||
bool data_doc() const;
|
||||
bool num_doc() const;
|
||||
bool apertura() const;
|
||||
bool sezionale() const;
|
||||
bool valuta() const;
|
||||
bool intra() const;
|
||||
bool corrval() const;
|
||||
const char* causale_inc_imm() const;
|
||||
const char* tipo_doc() const;
|
||||
|
||||
TRegistro& reg() { return _reg; }
|
||||
TipoIVA iva() const;
|
||||
|
||||
virtual bool ok() const { return !_rec.empty(); }
|
||||
bool similar(const TCausale& c) const;
|
||||
|
||||
bool read(const char* code, int year);
|
||||
|
||||
TCausale(const char* code = "", int year = 0);
|
||||
virtual ~TCausale() {}
|
||||
};
|
||||
|
||||
#endif
|
||||
|
598
cg/cg1700.cpp
598
cg/cg1700.cpp
@ -1,299 +1,299 @@
|
||||
//Stampa causali
|
||||
|
||||
#include <mask.h>
|
||||
#include <printapp.h>
|
||||
#include <scanner.h>
|
||||
#include <relation.h>
|
||||
#include <tabutil.h>
|
||||
#include <utility.h>
|
||||
#include <lffiles.h>
|
||||
#include <nditte.h>
|
||||
#include <comuni.h>
|
||||
#include <anagr.h>
|
||||
#include <causali.h>
|
||||
#include <rcausali.h>
|
||||
|
||||
#include "cg1.h"
|
||||
#include "cg1700.h"
|
||||
|
||||
enum descr {causale, conto};
|
||||
|
||||
class CG1700_application : public TPrintapp
|
||||
{
|
||||
TLocalisamfile * _caus, * _rcaus, * _clifo, * _pcon, * _nditte, * _anag, * _com;
|
||||
TRelation * _rel;
|
||||
TCursor * _cur;
|
||||
TMask * _msk;
|
||||
TParagraph_string * _descr_causale, * _descr_conto;
|
||||
TDate _data;
|
||||
TString _cofi, _cap, _paiva, _ragsoc, _comunefis, _provfis, _viafis;
|
||||
|
||||
protected:
|
||||
virtual void preprocess_header();
|
||||
virtual bool preprocess_print(int,int);
|
||||
virtual bool preprocess_page(int,int);
|
||||
virtual bool set_print(int);
|
||||
|
||||
public:
|
||||
void user_create() ;
|
||||
void user_destroy();
|
||||
void get_dati_ditta();
|
||||
void setta_righe_descr(TParagraph_string*,enum descr);
|
||||
int stampa_intestazione_ditta();
|
||||
|
||||
CG1700_application() {}
|
||||
};
|
||||
|
||||
TRectype& leggi_com (const char * cod, TLocalisamfile *comuni)
|
||||
{
|
||||
comuni->zero();
|
||||
comuni->put(COM_COM, cod);
|
||||
comuni->read();
|
||||
if (comuni->bad())
|
||||
comuni->zero();
|
||||
|
||||
return comuni->curr();
|
||||
}
|
||||
|
||||
void CG1700_application::get_dati_ditta()
|
||||
{
|
||||
TLocalisamfile nditte(LF_NDITTE);
|
||||
TLocalisamfile anag(LF_ANAG);
|
||||
TString codanagr;
|
||||
TString tipoa;
|
||||
|
||||
nditte.zero();
|
||||
nditte.put(NDT_CODDITTA, get_firm());
|
||||
nditte.read();
|
||||
|
||||
if (nditte.bad()) nditte.zero();
|
||||
|
||||
codanagr = nditte.get(NDT_CODANAGR);
|
||||
tipoa = nditte.get(NDT_TIPOA);
|
||||
_ragsoc = nditte.get(NDT_RAGSOC);
|
||||
|
||||
anag.setkey(1);
|
||||
anag.zero();
|
||||
anag.put (ANA_TIPOA, tipoa);
|
||||
anag.put (ANA_CODANAGR, codanagr);
|
||||
anag.read();
|
||||
if (anag.bad()) anag.zero();
|
||||
|
||||
_cofi = anag.get(ANA_COFI);
|
||||
_paiva = anag.get(ANA_PAIV);
|
||||
_comunefis = anag.get(ANA_COMRF);
|
||||
|
||||
if (_comunefis.empty())
|
||||
_comunefis = anag.get(ANA_COMRES);
|
||||
|
||||
TRectype dep = leggi_com (_comunefis, _com);
|
||||
|
||||
_comunefis = dep.get(COM_DENCOM);
|
||||
_provfis = dep.get(COM_PROVCOM);
|
||||
_cap = dep.get(COM_CAPCOM);
|
||||
if (_comunefis.empty())
|
||||
{
|
||||
_viafis = anag.get(ANA_INDRF);
|
||||
_viafis.rtrim();
|
||||
_viafis << " " << anag.get (ANA_CIVRF);
|
||||
}
|
||||
else
|
||||
{
|
||||
_viafis = anag.get(ANA_INDRES);
|
||||
_viafis.rtrim();
|
||||
_viafis << " " << anag.get (ANA_CIVRES);
|
||||
}
|
||||
}
|
||||
|
||||
int CG1700_application::stampa_intestazione_ditta()
|
||||
{
|
||||
int r = 1;
|
||||
TString codice_ditta;
|
||||
TString riga(132);
|
||||
|
||||
get_dati_ditta();
|
||||
codice_ditta << get_firm();
|
||||
|
||||
set_header (r, "Ditta %s %s Via %s %s %s %s", (const char*)codice_ditta,
|
||||
(const char*)_ragsoc, (const char*)_viafis,
|
||||
(const char*)_cap, (const char*)_comunefis,
|
||||
(const char*)_provfis);
|
||||
r++;
|
||||
printer().setdate(_data);
|
||||
riga = "Data @< Pag. @#";
|
||||
riga.right_just(127);
|
||||
riga.overwrite (format ("Partita iva %s Codice fiscale %s", (const char*)_paiva, (const char*)_cofi));
|
||||
set_header (r, "%s", (const char*) riga);
|
||||
r++;
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
void CG1700_application::preprocess_header()
|
||||
{
|
||||
int r;
|
||||
TString riga (132);
|
||||
|
||||
reset_header();
|
||||
r = stampa_intestazione_ditta();
|
||||
|
||||
set_header(r, "ELENCO CAUSALI");
|
||||
|
||||
r++;
|
||||
riga.fill('-');
|
||||
set_header(r++, (const char*) riga);
|
||||
//riga = "";
|
||||
//set_header(r, (const char*) riga);
|
||||
set_header(r++, "@5gDescrizione@30gTipo Codice@55gDescrizione@80gDes Reg. All. Mod Gest Num. Data Cau. Intr. Fat");
|
||||
set_header(r++, "Cod. Causale@30gDoc. Conto@51gD/A Conto@80gAgg IVA IVA 770 Cesp Sald Doc. Doc. Rif. Op/v. Rit");
|
||||
set_header(r++, (const char*) riga);
|
||||
}
|
||||
|
||||
bool CG1700_application::preprocess_print(int file, int counter)
|
||||
{
|
||||
switch (file)
|
||||
{
|
||||
case LF_CAUSALI:
|
||||
reset_print();
|
||||
if (current_cursor()->items() == 0)
|
||||
{
|
||||
warning_box ("Non ci sono causali. La stampa e' annullata");
|
||||
return FALSE;
|
||||
}
|
||||
set_wait_message("Stampa in corso");
|
||||
break;
|
||||
case LF_RCAUSALI:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool CG1700_application::preprocess_page(int file,int count)
|
||||
{
|
||||
TString cau_descr, rcau_descr;
|
||||
|
||||
reset_print();
|
||||
switch (file)
|
||||
{
|
||||
case LF_CAUSALI:
|
||||
cau_descr = current_cursor()->file(LF_CAUSALI)->get(CAU_DESCR);
|
||||
*_descr_causale = (const char*) cau_descr;
|
||||
setta_righe_descr(_descr_causale,causale);
|
||||
set_row(1, "@0g@3s", FLD(LF_CAUSALI,CAU_CODCAUS));
|
||||
set_row(1, "@30g@2s", FLD(LF_CAUSALI,CAU_TIPODOC));
|
||||
set_row(1, "@84g@3s", FLD(LF_CAUSALI,CAU_REG));
|
||||
set_row(1, "@89g@f", FLD(LF_CAUSALI,CAU_ALLEG));
|
||||
set_row(1, "@95g@1s", FLD(LF_CAUSALI,CAU_M770));
|
||||
set_row(1, "@99g@1s", FLD(LF_CAUSALI,CAU_COLLCESP));
|
||||
set_row(1, "@104g@1n", FLD(LF_CAUSALI,CAU_TIPOMOV));
|
||||
set_row(1, "@108g@f", FLD(LF_CAUSALI,CAU_NUMDOC));
|
||||
set_row(1, "@113g@f", FLD(LF_CAUSALI,CAU_DATADOC));
|
||||
set_row(1, "@118g@3s", FLD(LF_CAUSALI,CAU_CODCAUSIM));
|
||||
set_row(1, "@123g@f", FLD(LF_CAUSALI,CAU_INTRACOM));
|
||||
set_row(1, "@126g@f", FLD(LF_CAUSALI,CAU_MOVVAL));
|
||||
set_row(1, "@130g@f", FLD(LF_CAUSALI,CAU_RITFATT));
|
||||
break;
|
||||
case LF_RCAUSALI:
|
||||
rcau_descr = current_cursor()->file(LF_RCAUSALI)->get(RCA_DESC);
|
||||
*_descr_conto = (const char*) rcau_descr;
|
||||
setta_righe_descr(_descr_conto,conto);
|
||||
set_row (1, "@35g@3n", FLD(LF_RCAUSALI,RCA_GRUPPO));
|
||||
set_row (1, "@39g@3n", FLD(LF_RCAUSALI,RCA_CONTO));
|
||||
set_row (1, "@43g@6n", FLD(LF_RCAUSALI,RCA_SOTTOCONTO));
|
||||
set_row (1, "@51g@1s", FLD(LF_RCAUSALI,RCA_SEZIONE));
|
||||
set_row (1, "@80g@3s", FLD(LF_RCAUSALI,RCA_CODDESC));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void CG1700_application::setta_righe_descr(TParagraph_string* str, enum descr desc)
|
||||
{
|
||||
const char* r;
|
||||
int i = 1;
|
||||
TString frm;
|
||||
|
||||
switch (desc)
|
||||
{
|
||||
case causale:
|
||||
frm = "@5g%s";
|
||||
break;
|
||||
case conto:
|
||||
frm = "@55g%s";
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
while ((r = str->get()) != NULL)
|
||||
{
|
||||
set_row (i, (const char*)frm, r);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
bool CG1700_application::set_print(int)
|
||||
{
|
||||
KEY tasto;
|
||||
|
||||
tasto = _msk->run();
|
||||
|
||||
if (tasto == K_ENTER)
|
||||
{
|
||||
_data = _msk->get(F_DATASTAMPA);
|
||||
add_file(LF_CAUSALI);
|
||||
add_file(LF_RCAUSALI,LF_CAUSALI);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
void CG1700_application::user_create()
|
||||
{
|
||||
_msk = new TMask("cg1700a");
|
||||
_rel = new TRelation (LF_CAUSALI);
|
||||
_rel->add(LF_RCAUSALI,"CODCAUS=CODCAUS",1);
|
||||
|
||||
_cur = new TCursor (_rel,"", 1);
|
||||
add_cursor(_cur);
|
||||
|
||||
_caus = new TLocalisamfile(LF_CAUSALI);
|
||||
_rcaus = new TLocalisamfile(LF_RCAUSALI);
|
||||
_com = new TLocalisamfile(LF_COMUNI);
|
||||
_pcon = new TLocalisamfile(LF_PCON);
|
||||
_clifo = new TLocalisamfile(LF_CLIFO);
|
||||
_nditte = new TLocalisamfile(LF_NDITTE);
|
||||
_anag = new TLocalisamfile(LF_ANAG);
|
||||
|
||||
_descr_conto = new TParagraph_string ("",23);
|
||||
_descr_causale = new TParagraph_string ("",23);
|
||||
}
|
||||
|
||||
void CG1700_application::user_destroy()
|
||||
{
|
||||
delete _msk;
|
||||
delete _cur;
|
||||
delete _rel;
|
||||
delete _clifo;
|
||||
delete _caus;
|
||||
delete _com;
|
||||
delete _rcaus;
|
||||
delete _pcon;
|
||||
delete _nditte;
|
||||
delete _anag;
|
||||
delete _descr_conto;
|
||||
delete _descr_causale;
|
||||
}
|
||||
|
||||
int cg1700(int argc, char* argv[])
|
||||
{
|
||||
CG1700_application a;
|
||||
a.run(argc, argv, "Stampa causali");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
//Stampa causali
|
||||
|
||||
#include <mask.h>
|
||||
#include <printapp.h>
|
||||
#include <scanner.h>
|
||||
#include <relation.h>
|
||||
#include <tabutil.h>
|
||||
#include <utility.h>
|
||||
#include <lffiles.h>
|
||||
#include <nditte.h>
|
||||
#include <comuni.h>
|
||||
#include <anagr.h>
|
||||
#include <causali.h>
|
||||
#include <rcausali.h>
|
||||
|
||||
#include "cg1.h"
|
||||
#include "cg1700.h"
|
||||
|
||||
enum descr {causale, conto};
|
||||
|
||||
class CG1700_application : public TPrintapp
|
||||
{
|
||||
TLocalisamfile * _caus, * _rcaus, * _clifo, * _pcon, * _nditte, * _anag, * _com;
|
||||
TRelation * _rel;
|
||||
TCursor * _cur;
|
||||
TMask * _msk;
|
||||
TParagraph_string * _descr_causale, * _descr_conto;
|
||||
TDate _data;
|
||||
TString _cofi, _cap, _paiva, _ragsoc, _comunefis, _provfis, _viafis;
|
||||
|
||||
protected:
|
||||
virtual void preprocess_header();
|
||||
virtual bool preprocess_print(int,int);
|
||||
virtual bool preprocess_page(int,int);
|
||||
virtual bool set_print(int);
|
||||
|
||||
public:
|
||||
void user_create() ;
|
||||
void user_destroy();
|
||||
void get_dati_ditta();
|
||||
void setta_righe_descr(TParagraph_string*,enum descr);
|
||||
int stampa_intestazione_ditta();
|
||||
|
||||
CG1700_application() {}
|
||||
};
|
||||
|
||||
TRectype& leggi_com (const char * cod, TLocalisamfile *comuni)
|
||||
{
|
||||
comuni->zero();
|
||||
comuni->put(COM_COM, cod);
|
||||
comuni->read();
|
||||
if (comuni->bad())
|
||||
comuni->zero();
|
||||
|
||||
return comuni->curr();
|
||||
}
|
||||
|
||||
void CG1700_application::get_dati_ditta()
|
||||
{
|
||||
TLocalisamfile nditte(LF_NDITTE);
|
||||
TLocalisamfile anag(LF_ANAG);
|
||||
TString codanagr;
|
||||
TString tipoa;
|
||||
|
||||
nditte.zero();
|
||||
nditte.put(NDT_CODDITTA, get_firm());
|
||||
nditte.read();
|
||||
|
||||
if (nditte.bad()) nditte.zero();
|
||||
|
||||
codanagr = nditte.get(NDT_CODANAGR);
|
||||
tipoa = nditte.get(NDT_TIPOA);
|
||||
_ragsoc = nditte.get(NDT_RAGSOC);
|
||||
|
||||
anag.setkey(1);
|
||||
anag.zero();
|
||||
anag.put (ANA_TIPOA, tipoa);
|
||||
anag.put (ANA_CODANAGR, codanagr);
|
||||
anag.read();
|
||||
if (anag.bad()) anag.zero();
|
||||
|
||||
_cofi = anag.get(ANA_COFI);
|
||||
_paiva = anag.get(ANA_PAIV);
|
||||
_comunefis = anag.get(ANA_COMRF);
|
||||
|
||||
if (_comunefis.empty())
|
||||
_comunefis = anag.get(ANA_COMRES);
|
||||
|
||||
TRectype dep = leggi_com (_comunefis, _com);
|
||||
|
||||
_comunefis = dep.get(COM_DENCOM);
|
||||
_provfis = dep.get(COM_PROVCOM);
|
||||
_cap = dep.get(COM_CAPCOM);
|
||||
if (_comunefis.empty())
|
||||
{
|
||||
_viafis = anag.get(ANA_INDRF);
|
||||
_viafis.rtrim();
|
||||
_viafis << " " << anag.get (ANA_CIVRF);
|
||||
}
|
||||
else
|
||||
{
|
||||
_viafis = anag.get(ANA_INDRES);
|
||||
_viafis.rtrim();
|
||||
_viafis << " " << anag.get (ANA_CIVRES);
|
||||
}
|
||||
}
|
||||
|
||||
int CG1700_application::stampa_intestazione_ditta()
|
||||
{
|
||||
int r = 1;
|
||||
TString codice_ditta;
|
||||
TString riga(132);
|
||||
|
||||
get_dati_ditta();
|
||||
codice_ditta << get_firm();
|
||||
|
||||
set_header (r, "Ditta %s %s %s %s %s %s", (const char*)codice_ditta,
|
||||
(const char*)_ragsoc, (const char*)_viafis,
|
||||
(const char*)_cap, (const char*)_comunefis,
|
||||
(const char*)_provfis);
|
||||
r++;
|
||||
printer().setdate(_data);
|
||||
riga = "Data @< Pag. @#";
|
||||
riga.right_just(127);
|
||||
riga.overwrite (format ("Partita iva %s Codice fiscale %s", (const char*)_paiva, (const char*)_cofi));
|
||||
set_header (r, "%s", (const char*) riga);
|
||||
r++;
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
void CG1700_application::preprocess_header()
|
||||
{
|
||||
int r;
|
||||
TString riga (132);
|
||||
|
||||
reset_header();
|
||||
r = stampa_intestazione_ditta();
|
||||
|
||||
set_header(r, "ELENCO CAUSALI");
|
||||
|
||||
r++;
|
||||
riga.fill('-');
|
||||
set_header(r++, (const char*) riga);
|
||||
//riga = "";
|
||||
//set_header(r, (const char*) riga);
|
||||
set_header(r++, "@5gDescrizione@30gTipo Codice@55gDescrizione@80gDes Reg. All. Mod Gest Num. Data Cau. Intr. Fat");
|
||||
set_header(r++, "Cod. Causale@30gDoc. Conto@51gD/A Conto@80gAgg IVA IVA 770 Cesp Sald Doc. Doc. Rif. Op/v. Rit");
|
||||
set_header(r++, (const char*) riga);
|
||||
}
|
||||
|
||||
bool CG1700_application::preprocess_print(int file, int counter)
|
||||
{
|
||||
switch (file)
|
||||
{
|
||||
case LF_CAUSALI:
|
||||
reset_print();
|
||||
if (current_cursor()->items() == 0)
|
||||
{
|
||||
warning_box ("Non ci sono causali. La stampa e' annullata");
|
||||
return FALSE;
|
||||
}
|
||||
set_wait_message("Stampa in corso");
|
||||
break;
|
||||
case LF_RCAUSALI:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool CG1700_application::preprocess_page(int file,int count)
|
||||
{
|
||||
TString cau_descr, rcau_descr;
|
||||
|
||||
reset_print();
|
||||
switch (file)
|
||||
{
|
||||
case LF_CAUSALI:
|
||||
cau_descr = current_cursor()->file(LF_CAUSALI)->get(CAU_DESCR);
|
||||
*_descr_causale = (const char*) cau_descr;
|
||||
setta_righe_descr(_descr_causale,causale);
|
||||
set_row(1, "@0g@3s", FLD(LF_CAUSALI,CAU_CODCAUS));
|
||||
set_row(1, "@30g@2s", FLD(LF_CAUSALI,CAU_TIPODOC));
|
||||
set_row(1, "@84g@3s", FLD(LF_CAUSALI,CAU_REG));
|
||||
set_row(1, "@89g@f", FLD(LF_CAUSALI,CAU_ALLEG));
|
||||
set_row(1, "@95g@1s", FLD(LF_CAUSALI,CAU_M770));
|
||||
set_row(1, "@99g@1s", FLD(LF_CAUSALI,CAU_COLLCESP));
|
||||
set_row(1, "@104g@1n", FLD(LF_CAUSALI,CAU_TIPOMOV));
|
||||
set_row(1, "@108g@f", FLD(LF_CAUSALI,CAU_NUMDOC));
|
||||
set_row(1, "@113g@f", FLD(LF_CAUSALI,CAU_DATADOC));
|
||||
set_row(1, "@118g@3s", FLD(LF_CAUSALI,CAU_CODCAUSIM));
|
||||
set_row(1, "@123g@f", FLD(LF_CAUSALI,CAU_INTRACOM));
|
||||
set_row(1, "@126g@f", FLD(LF_CAUSALI,CAU_MOVVAL));
|
||||
set_row(1, "@130g@f", FLD(LF_CAUSALI,CAU_RITFATT));
|
||||
break;
|
||||
case LF_RCAUSALI:
|
||||
rcau_descr = current_cursor()->file(LF_RCAUSALI)->get(RCA_DESC);
|
||||
*_descr_conto = (const char*) rcau_descr;
|
||||
setta_righe_descr(_descr_conto,conto);
|
||||
set_row (1, "@35g@3n", FLD(LF_RCAUSALI,RCA_GRUPPO));
|
||||
set_row (1, "@39g@3n", FLD(LF_RCAUSALI,RCA_CONTO));
|
||||
set_row (1, "@43g@6n", FLD(LF_RCAUSALI,RCA_SOTTOCONTO));
|
||||
set_row (1, "@51g@1s", FLD(LF_RCAUSALI,RCA_SEZIONE));
|
||||
set_row (1, "@80g@3s", FLD(LF_RCAUSALI,RCA_CODDESC));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void CG1700_application::setta_righe_descr(TParagraph_string* str, enum descr desc)
|
||||
{
|
||||
const char* r;
|
||||
int i = 1;
|
||||
TString frm;
|
||||
|
||||
switch (desc)
|
||||
{
|
||||
case causale:
|
||||
frm = "@5g%s";
|
||||
break;
|
||||
case conto:
|
||||
frm = "@55g%s";
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
while ((r = str->get()) != NULL)
|
||||
{
|
||||
set_row (i, (const char*)frm, r);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
bool CG1700_application::set_print(int)
|
||||
{
|
||||
KEY tasto;
|
||||
|
||||
tasto = _msk->run();
|
||||
|
||||
if (tasto == K_ENTER)
|
||||
{
|
||||
_data = _msk->get(F_DATASTAMPA);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
void CG1700_application::user_create()
|
||||
{
|
||||
_msk = new TMask("cg1700a");
|
||||
_rel = new TRelation (LF_CAUSALI);
|
||||
_rel->add(LF_RCAUSALI,"CODCAUS=CODCAUS",1);
|
||||
|
||||
_cur = new TCursor (_rel,"", 1);
|
||||
add_cursor(_cur);
|
||||
|
||||
_caus = new TLocalisamfile(LF_CAUSALI);
|
||||
_rcaus = new TLocalisamfile(LF_RCAUSALI);
|
||||
_com = new TLocalisamfile(LF_COMUNI);
|
||||
_pcon = new TLocalisamfile(LF_PCON);
|
||||
_clifo = new TLocalisamfile(LF_CLIFO);
|
||||
_nditte = new TLocalisamfile(LF_NDITTE);
|
||||
_anag = new TLocalisamfile(LF_ANAG);
|
||||
|
||||
_descr_conto = new TParagraph_string ("",23);
|
||||
_descr_causale = new TParagraph_string ("",23);
|
||||
add_file(LF_CAUSALI);
|
||||
add_file(LF_RCAUSALI,LF_CAUSALI);
|
||||
}
|
||||
|
||||
void CG1700_application::user_destroy()
|
||||
{
|
||||
delete _msk;
|
||||
delete _cur;
|
||||
delete _rel;
|
||||
delete _clifo;
|
||||
delete _caus;
|
||||
delete _com;
|
||||
delete _rcaus;
|
||||
delete _pcon;
|
||||
delete _nditte;
|
||||
delete _anag;
|
||||
delete _descr_conto;
|
||||
delete _descr_causale;
|
||||
}
|
||||
|
||||
int cg1700(int argc, char* argv[])
|
||||
{
|
||||
CG1700_application a;
|
||||
a.run(argc, argv, "Stampa causali");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
48
cg/cg1700.h
48
cg/cg1700.h
@ -1,24 +1,24 @@
|
||||
#ifndef __CG1700_H
|
||||
#define __CG1700_H
|
||||
|
||||
#define F_CODDITTA 101
|
||||
#define F_DATASTAMPA 102
|
||||
#define F_RAGSOC 104
|
||||
|
||||
#endif // __CG1700_H
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#ifndef __CG1700_H
|
||||
#define __CG1700_H
|
||||
|
||||
#define F_CODDITTA 101
|
||||
#define F_DATASTAMPA 102
|
||||
#define F_RAGSOC 104
|
||||
|
||||
#endif // __CG1700_H
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,49 +1,49 @@
|
||||
#include "cg1700.h"
|
||||
|
||||
PAGE "" -1 -1 70 10
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 1 1 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale @50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 1 2 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 1 4 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT 30 8 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 9 2
|
||||
BEGIN
|
||||
PROMPT 46 8 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#include "cg1700.h"
|
||||
|
||||
PAGE "" -1 -1 70 10
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 1 1 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale @50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 1 2 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 1 4 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT 30 8 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 9 2
|
||||
BEGIN
|
||||
PROMPT 46 8 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
136
cg/cg3100.h
136
cg/cg3100.h
@ -1,68 +1,68 @@
|
||||
#ifndef __CG3100_H
|
||||
#define __CG3100_H
|
||||
|
||||
#define TAB_REG "REG"
|
||||
#define TAB_TPD "%TPD"
|
||||
#define TAB_VAL "%VAL"
|
||||
#define TAB_IVA "%IVA"
|
||||
|
||||
#define F_CODDITTA 101
|
||||
#define F_DATASTAMPA 102
|
||||
#define F_RAGSOC 104
|
||||
#define F_CONTROLLO 105
|
||||
#define F_ANNO 106
|
||||
#define F_ALLEGATO 107
|
||||
#define F_DATAINI 108
|
||||
#define F_DATAFIN 109
|
||||
#define F_NUMEROINI 110
|
||||
#define F_NUMEROFIN 111
|
||||
#define F_CAUSALEINI 112
|
||||
#define F_CAUSALEFIN 113
|
||||
#define F_REGISTROINI 114
|
||||
#define F_REGISTROFIN 115
|
||||
#define F_STAMPA 116
|
||||
#define F_TIPOELENCO 117
|
||||
#define F_CODICEINI 118
|
||||
#define F_CODICEFIN 119
|
||||
#define F_CAMBIO 120
|
||||
#define F_DECIDI 121
|
||||
#define F_ANNOC 122
|
||||
#define F_CODICEINI1 123
|
||||
#define F_CODICEFIN1 124
|
||||
#define F_MOVIMENTI 125
|
||||
#define F_STAMPAMOVP 126
|
||||
|
||||
#define ST_DATA 0x0001
|
||||
#define ST_NUMERO 0x0002
|
||||
#define ST_CAUSALE 0x0004
|
||||
#define ST_REGISTRO 0x0008
|
||||
#define ST_DATI_IVA 0x0010
|
||||
#define ST_CONTROLLO 0x0020
|
||||
#define ST_SOLO_MOVERR 0x0040
|
||||
#define ST_SENZA_CONTR 0x0080
|
||||
#define ST_MESSAGGI 0x0100
|
||||
#define ST_ANNO_COMP 0x0200
|
||||
#define ST_MESS_ALLEG 0x0400
|
||||
#define ST_COMPLETA_DATA 0x0800
|
||||
#define ST_COMPLETA_NUM 0x1000
|
||||
#define ST_COMPLETA_CAUS 0x2000
|
||||
#define ST_COMPLETA_REG 0x4000
|
||||
#define ST_CODICE 0x8000
|
||||
|
||||
#endif // __CG3100_H
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#ifndef __CG3100_H
|
||||
#define __CG3100_H
|
||||
|
||||
#define TAB_REG "REG"
|
||||
#define TAB_TPD "%TPD"
|
||||
#define TAB_VAL "%VAL"
|
||||
#define TAB_IVA "%IVA"
|
||||
|
||||
#define F_CODDITTA 101
|
||||
#define F_DATASTAMPA 102
|
||||
#define F_RAGSOC 104
|
||||
#define F_CONTROLLO 105
|
||||
#define F_ANNO 106
|
||||
#define F_ALLEGATO 107
|
||||
#define F_DATAINI 108
|
||||
#define F_DATAFIN 109
|
||||
#define F_NUMEROINI 110
|
||||
#define F_NUMEROFIN 111
|
||||
#define F_CAUSALEINI 112
|
||||
#define F_CAUSALEFIN 113
|
||||
#define F_REGISTROINI 114
|
||||
#define F_REGISTROFIN 115
|
||||
#define F_STAMPA 116
|
||||
#define F_TIPOELENCO 117
|
||||
#define F_CODICEINI 118
|
||||
#define F_CODICEFIN 119
|
||||
#define F_CAMBIO 120
|
||||
#define F_DECIDI 121
|
||||
#define F_ANNOC 122
|
||||
#define F_CODICEINI1 123
|
||||
#define F_CODICEFIN1 124
|
||||
#define F_MOVIMENTI 125
|
||||
#define F_STAMPAMOVP 126
|
||||
|
||||
#define ST_DATA 0x0001
|
||||
#define ST_NUMERO 0x0002
|
||||
#define ST_CAUSALE 0x0004
|
||||
#define ST_REGISTRO 0x0008
|
||||
#define ST_DATI_IVA 0x0010
|
||||
#define ST_CONTROLLO 0x0020
|
||||
#define ST_SOLO_MOVERR 0x0040
|
||||
#define ST_SENZA_CONTR 0x0080
|
||||
#define ST_MESSAGGI 0x0100
|
||||
#define ST_ANNO_COMP 0x0200
|
||||
#define ST_MESS_ALLEG 0x0400
|
||||
#define ST_COMPLETA_DATA 0x0800
|
||||
#define ST_COMPLETA_NUM 0x1000
|
||||
#define ST_COMPLETA_CAUS 0x2000
|
||||
#define ST_COMPLETA_REG 0x4000
|
||||
#define ST_CODICE 0x8000
|
||||
|
||||
#endif // __CG3100_H
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
420
cg/cg3100a.uml
420
cg/cg3100a.uml
@ -1,206 +1,216 @@
|
||||
#include "cg3100.h"
|
||||
|
||||
PAGE "" -1 -1 76 20
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 2 1 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 2 2 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 48 1 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 3 "Anno esercizio "
|
||||
//HELP "Se non indicato nessun anno esercizio significa che si richiede la stampa come specificato nei campi: dalla data, alla data"
|
||||
USE ESC
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Anno" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio" D1
|
||||
OUTPUT F_ANNO CODTAB
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
RADIOBUTTON F_MOVIMENTI 38
|
||||
BEGIN
|
||||
PROMPT 30 3 "Scelta stampa "
|
||||
HELP "Indicare il tipo di stampa"
|
||||
ITEM "0|Lista movimenti"
|
||||
#include "cg3100.h"
|
||||
|
||||
PAGE "" -1 -1 76 20
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 2 1 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 2 2 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 48 1 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 3 "Anno esercizio "
|
||||
//HELP "Se non indicato nessun anno esercizio significa che si richiede la stampa come specificato nei campi: dalla data, alla data"
|
||||
USE ESC
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Anno" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio" D1
|
||||
OUTPUT F_ANNO CODTAB
|
||||
END
|
||||
|
||||
RADIOBUTTON F_MOVIMENTI 38
|
||||
BEGIN
|
||||
PROMPT 30 3 "Scelta stampa "
|
||||
HELP "Indicare il tipo di stampa"
|
||||
ITEM "0|Lista movimenti"
|
||||
MESSAGE SHOW,F_CONTROLLO|SHOW,1@|SHOW,F_REGISTROFIN|SHOW,F_REGISTROINI
|
||||
ITEM "1|Lista movimenti di sola prima nota"
|
||||
MESSAGE HIDE,F_CONTROLLO|HIDE,1@|HIDE,F_REGISTROFIN|HIDE,F_REGISTROINI|HIDE,F_STAMPA
|
||||
END
|
||||
|
||||
|
||||
LIST F_CONTROLLO 23
|
||||
BEGIN
|
||||
PROMPT 2 7 "Controllo movimenti errati "
|
||||
HELP "La scelta 1 stampa solo le registrazioni errate; la scelta 2 permette di listare tutte le registrazioni inserite, segnalando quelle errate; la scelta 2 stampa solo le registrazioni non errate"
|
||||
ITEM "1|Stampa movimenti errati" MESSAGE SHOW,1@
|
||||
ITEM "2|Si" MESSAGE SHOW,1@
|
||||
ITEM "3|No" MESSAGE HIDE,1@
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
GROUP 1
|
||||
PROMPT 2 8 "Stampa messaggi : "
|
||||
END
|
||||
|
||||
BOOLEAN F_ANNOC
|
||||
BEGIN
|
||||
GROUP 1
|
||||
PROMPT 20 8 "anno di competenza "
|
||||
END
|
||||
|
||||
BOOLEAN F_ALLEGATO
|
||||
BEGIN
|
||||
GROUP 1
|
||||
PROMPT 20 9 "allegato iva "
|
||||
MESSAGE TRUE DISABLE,F_STAMPA|COPY,F_STAMPA
|
||||
MESSAGE FALSE ENABLE,F_STAMPA
|
||||
END
|
||||
|
||||
RADIOBUTTON F_DECIDI 10
|
||||
BEGIN
|
||||
PROMPT 2 10 "Stampa "
|
||||
ITEM "2|data" MESSAGE DISABLE,2@|RESET,2@|ENABLE,3@
|
||||
ITEM "1|numero" MESSAGE DISABLE,3@|RESET,3@|ENABLE,2@
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 19 11 "Stampa mov. dalla data "
|
||||
HELP "Se non indicato nessun valore viene effettuata una stampa completa in ordine di data"
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 55 11 "alla data "
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROINI 7
|
||||
BEGIN
|
||||
PROMPT 19 12 "Stampa mov. dal numero "
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROFIN 7
|
||||
BEGIN
|
||||
PROMPT 55 12 "al numero "
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
NUMBER F_CAUSALEINI 3
|
||||
BEGIN
|
||||
PROMPT 2 14 "Stampa dalla causale "
|
||||
USE LF_CAUSALI KEY 1
|
||||
INPUT CODCAUS F_CAUSALEINI
|
||||
DISPLAY "Codice causale" CODCAUS
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_CAUSALEINI CODCAUS
|
||||
FLAGS "R"
|
||||
HELP "Introdurre codice causale di inizio stampa: vuoto = inizio archivio"
|
||||
END
|
||||
|
||||
NUMBER F_CAUSALEFIN 3
|
||||
BEGIN
|
||||
PROMPT 40 14 "alla causale "
|
||||
COPY USE F_CAUSALEINI
|
||||
INPUT CODCAUS F_CAUSALEFIN
|
||||
DISPLAY "Codice causale" CODCAUS
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_CAUSALEFIN CODCAUS
|
||||
FLAGS "R"
|
||||
HELP "Introdurre codice causale di fine stampa: vuoto = fine archivio"
|
||||
END
|
||||
|
||||
STRING F_REGISTROINI 3
|
||||
BEGIN
|
||||
PROMPT 2 15 "Stampa dal registro iva "
|
||||
USE REG SELECT I0<"3"
|
||||
INPUT CODTAB[1,5] F_ANNO SELECT
|
||||
INPUT CODTAB[5,7] F_REGISTROINI
|
||||
DISPLAY "Cod. registro iva" CODTAB[5,7]
|
||||
DISPLAY "Descrizione@40" S0
|
||||
OUTPUT F_REGISTROINI CODTAB[5,7]
|
||||
FLAGS "R"
|
||||
CHECKTYPE NORMAL
|
||||
HELP "Introdurre cod. registro iva di inizio stampa: vuoto = inizio archivio"
|
||||
END
|
||||
|
||||
STRING F_REGISTROFIN 3
|
||||
BEGIN
|
||||
PROMPT 40 15 "al reg. iva "
|
||||
COPY USE F_REGISTROINI
|
||||
INPUT CODTAB[1,5] F_ANNO SELECT
|
||||
INPUT CODTAB[5,7] F_REGISTROFIN
|
||||
DISPLAY "Cod. registro iva" CODTAB[5,7]
|
||||
DISPLAY "Descrizione@40" S0
|
||||
OUTPUT F_REGISTROFIN CODTAB[5,7]
|
||||
FLAGS "R"
|
||||
CHECKTYPE NORMAL
|
||||
HELP "Introdurre cod. registro iva di fine stampa: vuoto = fine archivio"
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPA
|
||||
BEGIN
|
||||
PROMPT 2 16 "Stampa imponibili, imposte e codici iva "
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPAMOVP
|
||||
BEGIN
|
||||
PROMPT 2 17 "Stampa movimenti provvisori "
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 17 "N.B. se non indicato nessun valore stampa completa in ordine di data"
|
||||
END
|
||||
*/
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ITEM "1|Lista movimenti di sola prima nota"
|
||||
MESSAGE HIDE,F_CONTROLLO|HIDE,1@|HIDE,F_REGISTROFIN|HIDE,F_REGISTROINI|HIDE,F_STAMPA
|
||||
END
|
||||
|
||||
|
||||
LIST F_CONTROLLO 23
|
||||
BEGIN
|
||||
PROMPT 2 7 "Controllo movimenti errati "
|
||||
HELP "La scelta 1 stampa solo le registrazioni errate; la scelta 2 permette di listare tutte le registrazioni inserite, segnalando quelle errate; la scelta 3 stampa solo le registrazioni non errate"
|
||||
ITEM "1|Stampa movimenti errati" MESSAGE SHOW,1@
|
||||
ITEM "2|Si" MESSAGE SHOW,1@
|
||||
ITEM "3|No" MESSAGE HIDE,1@
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
GROUP 1
|
||||
PROMPT 2 8 "Stampa messaggi : "
|
||||
END
|
||||
|
||||
BOOLEAN F_ANNOC
|
||||
BEGIN
|
||||
GROUP 1
|
||||
PROMPT 20 8 "anno di competenza "
|
||||
END
|
||||
|
||||
BOOLEAN F_ALLEGATO
|
||||
BEGIN
|
||||
GROUP 1
|
||||
PROMPT 20 9 "allegato iva "
|
||||
MESSAGE TRUE DISABLE,F_STAMPA|COPY,F_STAMPA
|
||||
MESSAGE FALSE ENABLE,F_STAMPA
|
||||
END
|
||||
|
||||
RADIOBUTTON F_DECIDI 10
|
||||
BEGIN
|
||||
PROMPT 2 10 "Stampa "
|
||||
ITEM "2|data" MESSAGE DISABLE,2@|RESET,2@|ENABLE,3@
|
||||
ITEM "1|numero" MESSAGE DISABLE,3@|RESET,3@|ENABLE,2@
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 19 11 "Stampa mov. dalla data "
|
||||
HELP "Se non indicato nessun valore viene effettuata una stampa completa in ordine di data"
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 55 11 "alla data "
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROINI 7
|
||||
BEGIN
|
||||
PROMPT 19 12 "Stampa mov. dal numero "
|
||||
USE LF_MOV KEY 1
|
||||
INPUT NUMREG F_NUMEROINI
|
||||
DISPLAY "Numero registrazione" NUMREG
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_NUMEROINI NUMREG
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROFIN 7
|
||||
BEGIN
|
||||
PROMPT 55 12 "al numero "
|
||||
COPY USE F_NUMEROINI
|
||||
INPUT NUMREG F_NUMEROFIN
|
||||
COPY DISPLAY F_NUMEROINI
|
||||
OUTPUT F_NUMEROFIN NUMREG
|
||||
CHECKTYPE NORMAL
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
NUMBER F_CAUSALEINI 3
|
||||
BEGIN
|
||||
PROMPT 2 14 "Stampa dalla causale "
|
||||
USE LF_CAUSALI KEY 1
|
||||
INPUT CODCAUS F_CAUSALEINI
|
||||
DISPLAY "Codice causale" CODCAUS
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_CAUSALEINI CODCAUS
|
||||
FLAGS "R"
|
||||
HELP "Introdurre codice causale di inizio stampa: vuoto = inizio archivio"
|
||||
END
|
||||
|
||||
NUMBER F_CAUSALEFIN 3
|
||||
BEGIN
|
||||
PROMPT 40 14 "alla causale "
|
||||
COPY USE F_CAUSALEINI
|
||||
INPUT CODCAUS F_CAUSALEFIN
|
||||
DISPLAY "Codice causale" CODCAUS
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_CAUSALEFIN CODCAUS
|
||||
FLAGS "R"
|
||||
HELP "Introdurre codice causale di fine stampa: vuoto = fine archivio"
|
||||
END
|
||||
|
||||
STRING F_REGISTROINI 3
|
||||
BEGIN
|
||||
PROMPT 2 15 "Stampa dal registro iva "
|
||||
USE REG SELECT I0<"3"
|
||||
INPUT CODTAB[1,5] F_ANNO SELECT
|
||||
INPUT CODTAB[5,7] F_REGISTROINI
|
||||
DISPLAY "Cod. registro iva" CODTAB[5,7]
|
||||
DISPLAY "Descrizione@40" S0
|
||||
OUTPUT F_REGISTROINI CODTAB[5,7]
|
||||
FLAGS "R"
|
||||
CHECKTYPE NORMAL
|
||||
HELP "Introdurre cod. registro iva di inizio stampa: vuoto = inizio archivio"
|
||||
END
|
||||
|
||||
STRING F_REGISTROFIN 3
|
||||
BEGIN
|
||||
PROMPT 40 15 "al reg. iva "
|
||||
COPY USE F_REGISTROINI
|
||||
INPUT CODTAB[1,5] F_ANNO SELECT
|
||||
INPUT CODTAB[5,7] F_REGISTROFIN
|
||||
DISPLAY "Cod. registro iva" CODTAB[5,7]
|
||||
DISPLAY "Descrizione@40" S0
|
||||
OUTPUT F_REGISTROFIN CODTAB[5,7]
|
||||
FLAGS "R"
|
||||
CHECKTYPE NORMAL
|
||||
HELP "Introdurre cod. registro iva di fine stampa: vuoto = fine archivio"
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPA
|
||||
BEGIN
|
||||
PROMPT 2 16 "Stampa imponibili, imposte e codici iva "
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPAMOVP
|
||||
BEGIN
|
||||
PROMPT 2 17 "Stampa movimenti provvisori "
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 17 "N.B. se non indicato nessun valore stampa completa in ordine di data"
|
||||
END
|
||||
*/
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
312
cg/cg3100b.uml
312
cg/cg3100b.uml
@ -1,156 +1,156 @@
|
||||
#include "cg3100.h"
|
||||
|
||||
PAGE "" -1 -1 76 19
|
||||
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 3 2 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale @50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 3 3 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 3 5 "Anno esercizio "
|
||||
//HELP "Se non indicato nessun anno esercizio significa che si richiede la stampa come specificato nei campi: dalla data, alla data"
|
||||
USE ESC KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Anno esercizio@50" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio" D1
|
||||
OUTPUT F_ANNO CODTAB
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 3 6 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 3 8 "Stampa movimenti dalla data "
|
||||
HELP "Se non indicato nessun valore viene effettuata una stampa completa in ordine di data"
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 46 8 "alla data "
|
||||
END
|
||||
|
||||
LIST F_TIPOELENCO 8
|
||||
BEGIN
|
||||
PROMPT 3 9 "Tipo elenco "
|
||||
//HELP "Se si desidera l'elenco per clienti e fornitori, specificare prima il codice del cliente da cui iniziare la stampa e poi quello del fornitore"
|
||||
ITEM "C|Clienti"
|
||||
MESSAGE HIDE,2@|SHOW,1@|RESET,1@
|
||||
ITEM "F|Fornitori"
|
||||
MESSAGE HIDE,2@|SHOW,1@|RESET,1@
|
||||
ITEM "E|Entrambi"
|
||||
MESSAGE HIDE,1@|SHOW,2@|RESET,2@
|
||||
END
|
||||
|
||||
NUMBER F_CODICEINI 6
|
||||
BEGIN
|
||||
PROMPT 3 10 "Stampa dal codice "
|
||||
HELP "Se si desidera l'elenco per clienti e fornitori, specificare prima il codice del cliente da cui iniziare la stampa e poi quello del fornitore"
|
||||
GROUP 1
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF F_TIPOELENCO SELECT
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEINI CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER F_CODICEFIN 6
|
||||
BEGIN
|
||||
PROMPT 46 10 "al codice "
|
||||
GROUP 1
|
||||
COPY USE F_CODICEINI
|
||||
INPUT TIPOCF F_TIPOELENCO SELECT
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEFIN CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER F_CODICEINI1 6
|
||||
BEGIN
|
||||
PROMPT 3 10 "Stampa dal codice "
|
||||
GROUP 2
|
||||
COPY USE F_CODICEINI
|
||||
INPUT TIPOCF F_CODICEINI1
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEINI1 CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER F_CODICEFIN1 6
|
||||
BEGIN
|
||||
PROMPT 46 10 "al codice "
|
||||
GROUP 2
|
||||
COPY USE F_CODICEINI
|
||||
INPUT TIPOCF F_CODICEFIN1
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEFIN1 CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
BOOLEAN F_CAMBIO
|
||||
BEGIN
|
||||
PROMPT 3 12 "Cambio pagina per cliente/fornitore "
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPAMOVP
|
||||
BEGIN
|
||||
PROMPT 3 13 "Stampa movimenti provvisori "
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 3 15 "(N.B. se non indicato nessun valore stampa completa in ordine di data) "
|
||||
END
|
||||
*/
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#include "cg3100.h"
|
||||
|
||||
PAGE "" -1 -1 73 16
|
||||
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 2 1 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale @50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 2 2 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 48 1 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 4 "Anno esercizio "
|
||||
//HELP "Se non indicato nessun anno esercizio significa che si richiede la stampa come specificato nei campi: dalla data, alla data"
|
||||
USE ESC KEY 1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Anno" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio" D1
|
||||
OUTPUT F_ANNO CODTAB
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 2 6 "Stampa movimenti dalla data "
|
||||
HELP "Se non indicato nessun valore viene effettuata una stampa completa in ordine di data"
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 45 6 "alla data "
|
||||
END
|
||||
|
||||
LIST F_TIPOELENCO 8
|
||||
BEGIN
|
||||
PROMPT 2 7 "Tipo elenco "
|
||||
//HELP "Se si desidera l'elenco per clienti e fornitori, specificare prima il codice del cliente da cui iniziare la stampa e poi quello del fornitore"
|
||||
ITEM "C|Clienti"
|
||||
MESSAGE HIDE,2@|SHOW,1@|RESET,1@
|
||||
ITEM "F|Fornitori"
|
||||
MESSAGE HIDE,2@|SHOW,1@|RESET,1@
|
||||
ITEM "E|Entrambi"
|
||||
MESSAGE HIDE,1@|SHOW,2@|RESET,2@
|
||||
END
|
||||
|
||||
NUMBER F_CODICEINI 6
|
||||
BEGIN
|
||||
PROMPT 2 8 "Stampa dal codice "
|
||||
HELP "Se si desidera l'elenco per clienti e fornitori, specificare prima il codice del cliente da cui iniziare la stampa e poi quello del fornitore"
|
||||
GROUP 1
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF F_TIPOELENCO SELECT
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEINI CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER F_CODICEFIN 6
|
||||
BEGIN
|
||||
PROMPT 45 8 "al codice "
|
||||
GROUP 1
|
||||
COPY USE F_CODICEINI
|
||||
INPUT TIPOCF F_TIPOELENCO SELECT
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEFIN CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER F_CODICEINI1 6
|
||||
BEGIN
|
||||
PROMPT 2 8 "Stampa dal codice "
|
||||
GROUP 2
|
||||
COPY USE F_CODICEINI
|
||||
INPUT TIPOCF F_CODICEINI1
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEINI1 CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
NUMBER F_CODICEFIN1 6
|
||||
BEGIN
|
||||
PROMPT 45 8 "al codice "
|
||||
GROUP 2
|
||||
COPY USE F_CODICEINI
|
||||
INPUT TIPOCF F_CODICEFIN1
|
||||
DISPLAY "Tipo" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_CODICEFIN1 CODCF
|
||||
FLAGS "R"
|
||||
END
|
||||
|
||||
BOOLEAN F_CAMBIO
|
||||
BEGIN
|
||||
PROMPT 2 10 "Cambio pagina per cliente/fornitore "
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPAMOVP
|
||||
BEGIN
|
||||
PROMPT 2 11 "Stampa movimenti provvisori "
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 3 15 "(N.B. se non indicato nessun valore stampa completa in ordine di data) "
|
||||
END
|
||||
*/
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
212
cg/cg3100c.uml
212
cg/cg3100c.uml
@ -1,106 +1,106 @@
|
||||
#include "cg3100.h"
|
||||
|
||||
PAGE "" -1 -1 76 19
|
||||
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 2 2 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale @50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 2 3 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 5 "Anno esercizio "
|
||||
HELP "Se non indicato nessun anno esercizio significa che si richiede la stampa come specificato nei campi: dalla data, alla data"
|
||||
USE ESC KEY 1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Anno esercizio@50" CODTAB
|
||||
OUTPUT F_ANNO CODTAB
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 2 6 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
RADIOBUTTON F_DECIDI 10
|
||||
BEGIN
|
||||
PROMPT 2 8 "Stampa "
|
||||
ITEM "2|data"
|
||||
MESSAGE DISABLE,2@|RESET,2@|ENABLE,1@
|
||||
ITEM "1|numero"
|
||||
MESSAGE DISABLE,1@|RESET,1@|ENABLE,2@
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 19 9 "Stampa mov. dalla data "
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 55 9 "alla data "
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROINI 7
|
||||
BEGIN
|
||||
PROMPT 19 10 "Stampa mov. dal numero "
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROFIN 7
|
||||
BEGIN
|
||||
PROMPT 55 10 "al numero "
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPAMOVP
|
||||
BEGIN
|
||||
PROMPT 2 12 "Stampa movimenti provvisori "
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 15 "(N.B. se non indicato nessun valore stampa completa in ordine di data) "
|
||||
END
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#include "cg3100.h"
|
||||
|
||||
PAGE "" -1 -1 76 19
|
||||
|
||||
|
||||
NUMBER F_CODDITTA 5
|
||||
BEGIN
|
||||
PROMPT 2 2 "Ditta "
|
||||
FLAGS "FRD"
|
||||
USE LF_NDITTE KEY 1
|
||||
CHECKTYPE REQUIRED
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
DISPLAY "Codice" CODDITTA
|
||||
DISPLAY "Ragione sociale @50" RAGSOC
|
||||
OUTPUT F_CODDITTA CODDITTA
|
||||
OUTPUT F_RAGSOC RAGSOC
|
||||
END
|
||||
|
||||
STRING F_RAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 2 3 "Ragione sociale "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 5 "Anno esercizio "
|
||||
HELP "Se non indicato nessun anno esercizio significa che si richiede la stampa come specificato nei campi: dalla data, alla data"
|
||||
USE ESC KEY 1
|
||||
CHECKTYPE NORMAL
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Anno esercizio@50" CODTAB
|
||||
OUTPUT F_ANNO CODTAB
|
||||
END
|
||||
|
||||
DATE F_DATASTAMPA
|
||||
BEGIN
|
||||
PROMPT 2 6 "Data stampa "
|
||||
FLAGS "A"
|
||||
END
|
||||
|
||||
RADIOBUTTON F_DECIDI 10
|
||||
BEGIN
|
||||
PROMPT 2 8 "Stampa "
|
||||
ITEM "2|data"
|
||||
MESSAGE DISABLE,2@|RESET,2@|ENABLE,1@
|
||||
ITEM "1|numero"
|
||||
MESSAGE DISABLE,1@|RESET,1@|ENABLE,2@
|
||||
END
|
||||
|
||||
DATE F_DATAINI
|
||||
BEGIN
|
||||
PROMPT 19 9 "Stampa mov. dalla data "
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
DATE F_DATAFIN
|
||||
BEGIN
|
||||
PROMPT 55 9 "alla data "
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROINI 7
|
||||
BEGIN
|
||||
PROMPT 19 10 "Stampa mov. dal numero "
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
NUMBER F_NUMEROFIN 7
|
||||
BEGIN
|
||||
PROMPT 55 10 "al numero "
|
||||
FLAGS "R"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
BOOLEAN F_STAMPAMOVP
|
||||
BEGIN
|
||||
PROMPT 2 12 "Stampa movimenti provvisori "
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 15 "(N.B. se non indicato nessun valore stampa completa in ordine di data) "
|
||||
END
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
178
cg/cg3200.cpp
178
cg/cg3200.cpp
@ -45,21 +45,22 @@ class CG3200_application : public TPrintapp
|
||||
TDate _data_ini,_data_fine,_data_finese,_data_finesesucc,_ultima_data_reg;
|
||||
TDate _datareg,_datadoc,_data_inizioese;
|
||||
int _cur1,_cur2,_cur3,_gruppo,_conto,_numcarat,_stampanum,_numivd;
|
||||
int _numrig,_gruppocontr,_contocontr,_natdoc,_tipo,_tipostampa;
|
||||
int _numrig,_natdoc,_tipo,_tipostampa;
|
||||
real _progredare,_progreavere,_totprogre_dare_al,_totprogre_avere_al;
|
||||
real _totprogre_dare,_totprogre_avere,_importo;
|
||||
real _riporto_dare,_riporto_avere,_riporto_parziale_dare,_riporto_parziale_avere;
|
||||
real _totale_periodo_dare,_totale_periodo_avere,_totale_prima_dare,_totale_prima_avere;
|
||||
real _saldo_periodo,_saldo_progre,_saldo_progre_al,_saldo_progre_prec;
|
||||
real _saldo_movimenti,_saldo_progressivi,_totale_saldo;
|
||||
TString _codice_ditta,_ragsoc,_indulc,_civulc,_capulc,_com,_prov,_comulc;
|
||||
TString _ragsoc,_indulc,_civulc,_capulc,_com,_prov,_comulc;
|
||||
long _codice_ditta;
|
||||
TString _sezivd,_lettivd,_tipodoc,_codcaus,_descrcaus,_descrdociva,_regiva;
|
||||
TString _descrizione,_sezione,_numdoc,_descrizionemov,_numrivd;
|
||||
TString _dataregs, _datadocs;
|
||||
TString _dataregs, _datadocs,_gruppocontr,_contocontr,_sottocontocontr;
|
||||
|
||||
bool _stampaprogre,_stampatotiva,_stampatot,_prima_volta,_stampa_mov_prov;
|
||||
|
||||
long _annomsk,_annoesmsk,_sottoc,_numreg,_annoes,_sottocontocontr;
|
||||
long _annomsk,_annoesmsk,_sottoc,_numreg,_annoes;
|
||||
long _annomsksucc,_numgio,_protiva;
|
||||
bool _stampa_progressivi_si,_competenza,_inizio_stampa,_puoi_stampare;
|
||||
int _tipocf;
|
||||
@ -107,6 +108,7 @@ public:
|
||||
const char* descrizione_gruppo_clifo();
|
||||
const char* descrizione_conto_clifo();
|
||||
bool almeno_un_record();
|
||||
void ricerca_dati_ditta();
|
||||
|
||||
CG3200_application();
|
||||
};
|
||||
@ -218,33 +220,30 @@ void CG3200_application::saldi_zero()
|
||||
void CG3200_application::fai_stampa132()
|
||||
{
|
||||
set_row (1,"@0g#t", &_dataregs);
|
||||
set_row (1,"@11g#t", &_datadocs);
|
||||
set_row (1,"@22g#7t", &_numdoc);
|
||||
set_row (1,"@30g#3t", &_codcaus);
|
||||
set_row (1,"@34g#.18t", &_descrcaus);
|
||||
_descrizione = current_cursor()->curr(LF_RMOV).get(RMV_DESCR);
|
||||
if (_descrizione == "")
|
||||
set_row (1,"@53g%.23s", (const char*) _descrizionemov);
|
||||
else
|
||||
set_row (1,"@53g%.23s", (const char*) _descrizione);
|
||||
_sezione = current_cursor()->curr(LF_RMOV).get(RMV_SEZIONE);
|
||||
if (_sezione == "D")
|
||||
set_row (1,"@77g#t", &_importo_str);
|
||||
else if (_sezione == "A")
|
||||
set_row (1,"@93g#t", &_importo_str);
|
||||
|
||||
if (_numrig != 0)
|
||||
{
|
||||
set_row (1,"@109g#3d", &_gruppocontr);
|
||||
set_row (1,"@112g#3d", &_contocontr);
|
||||
set_row (1,"@115g#6d", &_sottocontocontr);
|
||||
}
|
||||
if (_stampanum == 1)
|
||||
set_row (1,"@125g$[r]#7d", &_numreg);
|
||||
set_row (1,"@11g#7d", &_numreg);
|
||||
else if (_stampanum == 2)
|
||||
{
|
||||
set_row (1,"@125g#7d", &_numgio);
|
||||
set_row (1,"@11g#7d", &_numgio);
|
||||
}
|
||||
set_row (1,"@19g#t", &_datadocs);
|
||||
set_row (1,"@30g#7t", &_numdoc);
|
||||
set_row (1,"@38g#3t", &_codcaus);
|
||||
set_row (1,"@42g#.18t", &_descrcaus);
|
||||
_descrizione = current_cursor()->curr(LF_RMOV).get(RMV_DESCR);
|
||||
if (_descrizione == "")
|
||||
set_row (1,"@61g%.23s", (const char*) _descrizionemov);
|
||||
else
|
||||
set_row (1,"@61g%.23s", (const char*) _descrizione);
|
||||
_sezione = current_cursor()->curr(LF_RMOV).get(RMV_SEZIONE);
|
||||
if (_sezione == "D")
|
||||
set_row (1,"@85g#t", &_importo_str);
|
||||
else if (_sezione == "A")
|
||||
set_row (1,"@101g#t", &_importo_str);
|
||||
|
||||
set_row (1,"@117g#3t", &_gruppocontr);
|
||||
set_row (1,"@120g#3t", &_contocontr);
|
||||
set_row (1,"@123g#6t", &_sottocontocontr);
|
||||
}
|
||||
|
||||
void CG3200_application::fai_stampa198()
|
||||
@ -278,13 +277,12 @@ void CG3200_application::fai_stampa198()
|
||||
set_row (1,"@119g#t", &_importo_str);
|
||||
|
||||
// Stampa saldo movimenti
|
||||
|
||||
set_row (1,"@153g#t", &_saldo_movimenti_str);
|
||||
if (_numrig != 0)
|
||||
{
|
||||
set_row (1,"@169g#3d", &_gruppocontr);
|
||||
set_row (1,"@172g#3d", &_contocontr);
|
||||
set_row (1,"@175g#6d", &_sottocontocontr);
|
||||
}
|
||||
|
||||
set_row (1,"@169g#3t", &_gruppocontr);
|
||||
set_row (1,"@172g#3t", &_contocontr);
|
||||
set_row (1,"@175g#6t", &_sottocontocontr);
|
||||
|
||||
if (_tipo < 3)
|
||||
set_row (1,"@185g#t" , &_regiva);
|
||||
@ -321,17 +319,17 @@ void CG3200_application::stampa_totali132()
|
||||
_saldo_periodo = _totale_periodo_dare - _totale_periodo_avere;
|
||||
_saldo_progre = _totprogre_dare - _totprogre_avere;
|
||||
_saldo_progre_al = _totprogre_dare_al - _totprogre_avere_al;
|
||||
set_row (3,"@32gTOTALI PERIODO@61g%15.0r", &_saldo_periodo);
|
||||
set_row (3,"@77g%15.0r", &_totale_periodo_dare);
|
||||
set_row (3,"@93g%15.0r", &_totale_periodo_avere);
|
||||
set_row (4,"@32gTOTALI PROGRESSIVI@61g%15.0r", &_saldo_progre);
|
||||
set_row (4,"@77g%15.0r", &_totprogre_dare);
|
||||
set_row (4,"@93g%15.0r", &_totprogre_avere);
|
||||
set_row (3,"@32gTOTALI PERIODO@69g%15.0r", &_saldo_periodo);
|
||||
set_row (3,"@85g%15.0r", &_totale_periodo_dare);
|
||||
set_row (3,"@101g%15.0r", &_totale_periodo_avere);
|
||||
set_row (4,"@32gTOTALI PROGRESSIVI@69g%15.0r", &_saldo_progre);
|
||||
set_row (4,"@85g%15.0r", &_totprogre_dare);
|
||||
set_row (4,"@101g%15.0r", &_totprogre_avere);
|
||||
if (_stampaprogre) //Progressivi attuali
|
||||
{
|
||||
set_row(5,"@32gTOTALI PROGRESSIVI AL@55g%s",(const char*)_ultima_data_reg.string());
|
||||
set_row (5,"@77g%15.0r", &_saldo_progre_al);
|
||||
set_row (5,"@93g%15.0r", &_totprogre_dare_al);
|
||||
set_row (5,"@32gTOTALI PROGRESSIVI AL@55g%s",(const char*)_ultima_data_reg.string());
|
||||
set_row (5,"@69g%15.0r", &_saldo_progre_al);
|
||||
set_row (5,"@85g%15.0r", &_totprogre_dare_al);
|
||||
set_row (5,"@101g%r", &_totprogre_avere_al);
|
||||
}
|
||||
}
|
||||
@ -417,17 +415,17 @@ bool CG3200_application::preprocess_pconti(int file, int counter)
|
||||
int rcontr = atoi(current_cursor()->curr(LF_RMOV).get(RMV_RCONTR));
|
||||
rmov = current_cursor()->file(LF_RMOV);
|
||||
record = rmov->recno();
|
||||
rmov->setkey(1);
|
||||
rmov->curr().zero();
|
||||
rmov->curr().put(RMV_NUMREG,_numreg);
|
||||
rmov->curr().put(RMV_NUMRIG,rcontr);
|
||||
rmov->read();
|
||||
_numrig = atoi(rmov->curr().get(RMV_NUMRIG));
|
||||
if (_numrig != 0)
|
||||
{
|
||||
_gruppocontr = atoi(rmov->curr().get(RMV_GRUPPO));
|
||||
_contocontr = atoi(rmov->curr().get(RMV_CONTO));
|
||||
_sottocontocontr = atol(rmov->curr().get(RMV_SOTTOCONTO));
|
||||
}
|
||||
if (rmov->bad())
|
||||
rmov->curr().zero();
|
||||
_gruppocontr = rmov->curr().get(RMV_GRUPPO);
|
||||
_contocontr = rmov->curr().get(RMV_CONTO);
|
||||
_sottocontocontr = rmov->curr().get(RMV_SOTTOCONTO);
|
||||
rmov->setkey(2);
|
||||
rmov->readat(record);
|
||||
|
||||
// Stampa solo quelli che hanno anno esercizio uguale a quello specificato
|
||||
@ -564,25 +562,26 @@ bool CG3200_application::preprocess_clifo(int file, int counter)
|
||||
case LF_RMOV:
|
||||
{
|
||||
// Ricerca la contropartita di quel movimento
|
||||
|
||||
|
||||
_numreg = atol (current_cursor()->curr(LF_RMOV).get(RMV_NUMREG));
|
||||
|
||||
int rcontr = atoi(current_cursor()->curr(LF_RMOV).get(RMV_RCONTR));
|
||||
rmov = current_cursor()->file(LF_RMOV);
|
||||
record = rmov->recno();
|
||||
rmov->setkey(1);
|
||||
rmov->curr().zero();
|
||||
rmov->curr().put(RMV_NUMREG,_numreg);
|
||||
rmov->curr().put(RMV_NUMRIG,rcontr);
|
||||
rmov->read();
|
||||
_numrig = atoi(rmov->curr().get(RMV_NUMRIG));
|
||||
if (_numrig != 0)
|
||||
{
|
||||
_gruppocontr = atoi(rmov->curr().get(RMV_GRUPPO));
|
||||
_contocontr = atoi(rmov->curr().get(RMV_CONTO));
|
||||
_sottocontocontr = atol(rmov->curr().get(RMV_SOTTOCONTO));
|
||||
}
|
||||
if (rmov->bad())
|
||||
rmov->curr().zero();
|
||||
_gruppocontr = rmov->curr().get(RMV_GRUPPO);
|
||||
_contocontr = rmov->curr().get(RMV_CONTO);
|
||||
_sottocontocontr = rmov->curr().get(RMV_SOTTOCONTO);
|
||||
rmov->setkey(2);
|
||||
rmov->readat(record);
|
||||
|
||||
|
||||
// Stampa solo quelli che hanno anno esercizio uguale a quello specificato
|
||||
// nella maschera. Se non viene specificato li stampa tutti
|
||||
|
||||
@ -787,6 +786,7 @@ print_action CG3200_application::postprocess_page(int file, int counter)
|
||||
_prima_volta = TRUE;
|
||||
return REPEAT_PAGE;
|
||||
case LF_RMOV:
|
||||
force_setpage();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -963,6 +963,9 @@ bool CG3200_application::set_print(int)
|
||||
int formato = atoi(_msk->get(F_FORMATO));
|
||||
int nummast = atoi(_msk->get(F_NUMMAST));
|
||||
_ricerca = _msk->get(F_RICERCA)[0];
|
||||
_codice_ditta = get_firm();
|
||||
|
||||
ricerca_dati_ditta();
|
||||
|
||||
// Scelta del formato e del numero di mastrini per pagina 1 o 2
|
||||
|
||||
@ -996,7 +999,7 @@ bool CG3200_application::set_print(int)
|
||||
a.put(PCN_CONTO,contofine);
|
||||
a.put(PCN_SOTTOCONTO,sottocontofine);
|
||||
|
||||
current_cursor()->setregion(da, a);
|
||||
current_cursor()->setregion(&da, &a);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1026,7 +1029,7 @@ bool CG3200_application::set_print(int)
|
||||
a.put(CLI_CONTO,contofine);
|
||||
a.put(CLI_CODCF,sottocontofine);
|
||||
|
||||
current_cursor()->setregion(da, a);
|
||||
current_cursor()->setregion(&da, &a);
|
||||
}
|
||||
|
||||
if (_stampatotiva)
|
||||
@ -1106,19 +1109,17 @@ void CG3200_application::preprocess_header()
|
||||
|
||||
}
|
||||
|
||||
// Crea l'intestazione per la stampa a 132 e a 198 caratteri
|
||||
void CG3200_application::crea_intestazione()
|
||||
|
||||
void CG3200_application::ricerca_dati_ditta()
|
||||
{
|
||||
TString sep(132),sep1(198), app(8);
|
||||
|
||||
reset_header();
|
||||
|
||||
long app;
|
||||
|
||||
_nditte->setkey(1);
|
||||
_codice_ditta << get_firm();
|
||||
// _codice_ditta << get_firm();
|
||||
_nditte->curr().zero();
|
||||
_nditte->curr().put(NDT_CODDITTA,_codice_ditta);
|
||||
_nditte->read();
|
||||
app=_nditte->curr().get(NDT_CODDITTA);
|
||||
app=_nditte->curr().get_long(NDT_CODDITTA);
|
||||
_ragsoc=_nditte->curr().get(NDT_RAGSOC);
|
||||
|
||||
_unloc->setkey(1);
|
||||
@ -1137,7 +1138,16 @@ void CG3200_application::crea_intestazione()
|
||||
_comuni->read();
|
||||
_com=_comuni->curr().get(COM_DENCOM);
|
||||
_prov=_comuni->curr().get(COM_PROVCOM);
|
||||
|
||||
|
||||
}
|
||||
|
||||
// Crea l'intestazione per la stampa a 132 e a 198 caratteri
|
||||
void CG3200_application::crea_intestazione()
|
||||
{
|
||||
TString sep(132),sep1(198);
|
||||
|
||||
reset_header();
|
||||
|
||||
if (_numcarat == 1)
|
||||
{
|
||||
sep << "Pag. @#";
|
||||
@ -1155,7 +1165,7 @@ void CG3200_application::crea_intestazione()
|
||||
set_header(2,"@1g%s",(const char*) sep1);
|
||||
}
|
||||
|
||||
set_header (1, "@0gDITTA@6g%-5s", (const char*) _codice_ditta);
|
||||
set_header (1, "@0gDITTA@6g%5d", _codice_ditta);
|
||||
set_header (1, "@12g%-45s", (const char*) _ragsoc);
|
||||
set_header (1, "@59g%-25s", (const char*) _indulc);
|
||||
set_header (1, "@86g%-9s", (const char*) _civulc);
|
||||
@ -1189,8 +1199,8 @@ void CG3200_application::crea_intestazione()
|
||||
{
|
||||
sep.fill('-'); //Stampa 132 - (sep(132))
|
||||
set_header (6, (const char *) sep);
|
||||
set_header (7,"Data@11gDocumento@109gContro@122gAn@125gNumero");
|
||||
set_header (8,"Registr.@11gData@22gNumero@30gCod.Causale@53gDescrizione@82gDare@98gAvere@109gPartita@122gCo@125gregistr");
|
||||
set_header (7,"Data@11gNumero@19gDocumento@117gContro@130gAn");
|
||||
set_header (8,"Registr.@11gregistr@19gData@30gNumero@38gCod.Causale@61gDescrizione@90gDare@106gAvere@117gPartita@130gCo");
|
||||
sep.fill('-');
|
||||
set_header (9, (const char *) sep);
|
||||
}
|
||||
@ -1217,9 +1227,9 @@ void CG3200_application::crea_intestazione()
|
||||
if (_numcarat == 1)
|
||||
{
|
||||
TString string = _riporto_dare.string("###############");
|
||||
set_header (10,"@32gA RIPORTO@77g%15s",(const char*) string);
|
||||
set_header (10,"@32gA RIPORTO@85g%15s",(const char*) string);
|
||||
string = _riporto_avere.string("###############");
|
||||
set_header (10,"@93g%15s",(const char*) string);
|
||||
set_header (10,"@101g%15s",(const char*) string);
|
||||
}
|
||||
if (_numcarat == 2)
|
||||
{
|
||||
@ -1316,7 +1326,7 @@ void CG3200_application::calcola_progressivi()
|
||||
pconti.put(PCN_CONTO , _conto);
|
||||
pconti.read();
|
||||
if (pconti.good())
|
||||
indbil = pconti.get_int(PCN_INDBIL);
|
||||
indbil = atoi (pconti.get(PCN_INDBIL));
|
||||
else
|
||||
indbil = 0;
|
||||
}
|
||||
@ -1412,11 +1422,11 @@ void CG3200_application::calcola_progressivi()
|
||||
if (_numcarat == 1)
|
||||
{
|
||||
TString string = _saldo_progre_prec.string("###############");
|
||||
set_header (10,"@32gPROGRESSIVI PRECEDENTI@61g%15s",(const char*) string);
|
||||
set_header (10,"@32gPROGRESSIVI PRECEDENTI@69g%15s",(const char*) string);
|
||||
string = _progredare.string("###############");
|
||||
set_header (10,"@77g%15s",(const char*) string);
|
||||
set_header (10,"@85g%15s",(const char*) string);
|
||||
string = _progreavere.string("###############");
|
||||
set_header (10,"@93g%15s",(const char*) string);
|
||||
set_header (10,"@101g%15s",(const char*) string);
|
||||
}
|
||||
|
||||
if (_numcarat == 2)
|
||||
@ -1507,8 +1517,11 @@ void CG3200_application::ricerca_clifo()
|
||||
|
||||
dataini = _data_ini.string();
|
||||
set_header (5, "@1gPeriodo@10g%s", (const char*) dataini);
|
||||
datafine = _data_fine.string();
|
||||
set_header (5, "@22g%s", (const char*) datafine);
|
||||
if (_data_fine != eotime)
|
||||
{
|
||||
datafine = _data_fine.string();
|
||||
set_header (5, "@22g%s", (const char*) datafine);
|
||||
}
|
||||
set_header (5, "@34g%-11s",(const char*) paiv);
|
||||
set_header (5, "@46g%-16s",(const char*) cofi);
|
||||
set_header (5, "@63g%-25s",(const char*) indcf);
|
||||
@ -1565,8 +1578,11 @@ void CG3200_application::ricerca_gruppo()
|
||||
|
||||
dataini = _data_ini.string();
|
||||
set_header (5, "@0gPeriodo@12g%s", (const char*) dataini);
|
||||
datafine = _data_fine.string();
|
||||
set_header (5, "@24g%s", (const char*) datafine);
|
||||
if (_data_fine != eotime)
|
||||
{
|
||||
datafine = _data_fine.string();
|
||||
set_header (5, "@24g%s", (const char*) datafine);
|
||||
}
|
||||
}
|
||||
|
||||
//Ricerca la descrizione relativa al gruppo da stampare
|
||||
|
@ -47,7 +47,7 @@
|
||||
#define F_ANNO 139
|
||||
#define F_FORMATO 140
|
||||
|
||||
#endif // __CG3200_H
|
||||
#endif // __CG3200_H
|
||||
|
||||
|
||||
|
||||
|
1127
cg/cg3200a.uml
1127
cg/cg3200a.uml
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user