From c98dcef404d486c7bba0c553d952744a5deb7dd2 Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 23 Nov 2010 14:37:27 +0000 Subject: [PATCH] Patch level : 10.0 838 Files correlati : lv4.exe Ricompilazione Demo : [ ] Commento : Aggiunta Tabella riclassificazione conti Cogeco git-svn-id: svn://10.65.10.50/branches/R_10_00@21164 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- lv/lv4.cpp | 8 +- lv/lv4.h | 3 +- lv/lv4600.cpp | 171 +++++++++++++++++++++++++++++++++++ lv/lv4600a.h | 16 ++++ lv/lv4600a.uml | 239 +++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 433 insertions(+), 4 deletions(-) create mode 100755 lv/lv4600.cpp create mode 100755 lv/lv4600a.h create mode 100755 lv/lv4600a.uml diff --git a/lv/lv4.cpp b/lv/lv4.cpp index 915998e5b..0d39e5f7d 100755 --- a/lv/lv4.cpp +++ b/lv/lv4.cpp @@ -8,11 +8,13 @@ int main(int argc, char** argv) switch(n) { case 1: - lv4200(argc, argv); break; //importazione saldaconto + lv4200(argc, argv); break; // Importazione saldaconto case 2: - lv4300(argc, argv); break; //importazione cespiti + lv4300(argc, argv); break; // Importazione cespiti case 3: - lv4400(argc, argv); break; //riscrittura movimenti + lv4400(argc, argv); break; // Riscrittura movimenti + case 5: + lv4600(argc, argv); break; // Riclassificazione conti COGECO case 0: default: lv4100(argc, argv); break; //importazione movimenti contabili diff --git a/lv/lv4.h b/lv/lv4.h index e5bcadabc..51876ad3f 100755 --- a/lv/lv4.h +++ b/lv/lv4.h @@ -1,4 +1,5 @@ int lv4100(int argc, char* argv[]); // importazione movimenti contabili int lv4200(int argc, char* argv[]); // importazione saldaconto int lv4300(int argc, char* argv[]); // importazione cespiti -int lv4400(int argc, char* argv[]); // riscrittura movimenti \ No newline at end of file +int lv4400(int argc, char* argv[]); // riscrittura movimenti +int lv4600(int argc, char* argv[]); // riclassificazione conti COGECO \ No newline at end of file diff --git a/lv/lv4600.cpp b/lv/lv4600.cpp new file mode 100755 index 000000000..6b901f47c --- /dev/null +++ b/lv/lv4600.cpp @@ -0,0 +1,171 @@ +// gestione files Contabilita' Analitica: CENTRI DI COSTO +#include +#include +#include +#include +#include + +#include "lv4600a.h" + +//////////////////////////////////////////////////////////////////////// +//MASCHERA +//////////////////////////////////////////////////////////////////////// +class TCG_ricl_msk : public TAutomask +{ + virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); + +public: + TCG_ricl_msk() : TAutomask("lv4600a") {} +}; + +bool TCG_ricl_msk::on_field_event(TOperable_field& o, TField_event e, long jolly) +{ + switch (o.dlg()) + { + case F_CONTO: + break; + default: + break; + } + return true; +} + +class TCGRiclass_application : public TRelation_application + +// @author:(INTERNAL) Vari +// @access:(INTERNAL) Private Member +{ + // @cmember:(INTERNAL) Maschera corrente dell'applicazione + TMask* _msk; + // @cmember:(INTERNAL) Relazione corrente dell'applicazione + TRelation* _rel; + + // @access Protected Member +protected: + virtual TMask* get_mask(int mode = MODE_QUERY) { CHECK(_msk, "Null mask"); return _msk; } + // @cmember Indica se la futura ritornera' una maschera diversa + // dalla corrente. + virtual bool changing_mask(int mode) { return false; } + // @cmember Ritorna la relazione da modificare + virtual TRelation* get_relation() const { CHECK(_rel, "Null relation"); return _rel; } + // @cmember Inizializza la maschera per il modo ricerca + virtual void init_query_mode(TMask& m); + // @cmember Inizializza la maschera per il modo ricerca ed inserimento (chiama ) + virtual void init_query_insert_mode(TMask& m) ; + // @cmember Inizializza la maschera per il modo inserimento + virtual void init_insert_mode(TMask& m); + // @cmember Inizializza la maschera per il modo modifica + virtual void init_modify_mode(TMask& m); + // @cmember Inizializzazione dei dati dell'utente + virtual bool user_create() ; + // @cmember Distruzione dei dati dell'utente + virtual bool user_destroy() ; + // @cmember Chiama il programma di stampa + virtual void print(); + +// @access Public Member +public: + // @cmember Costruttore + TCGRiclass_application() : _msk(NULL), _rel(NULL) { } + + + // @cmember Distruttore + virtual ~TCGRiclass_application() {} +}; + + +void TCGRiclass_application::print() +{ + TFilename rep("lvcgricl.rep"); + TString cmd; + + rep.custom_path(); + cmd << "ba8 -4 "<< rep; + TExternal_app stampa(cmd); + stampa.run(); +} + +void TCGRiclass_application::init_query_mode(TMask& m) +{ + TRelation_application::init_query_mode(m); + + m.show(-1); + m.enable(-1); + m.hide(-2); + m.disable(-2); + m.disable(-10); +} + +void TCGRiclass_application::init_query_insert_mode(TMask& m) +{ + TRelation_application::init_query_insert_mode(m); + + m.hide(-1); + m.disable(-1); + m.show(-2); + m.enable(-2); + m.enable(-10); +} + +void TCGRiclass_application::init_modify_mode(TMask& m) +{ + TRelation_application::init_modify_mode(m); + + m.show(-1); + m.disable(-1); + m.hide(-2); + m.disable(-10); +} + +void TCGRiclass_application::init_insert_mode(TMask& m) +{ + TRelation_application::init_insert_mode(m); + + m.show(-1); + m.disable(-1); + m.hide(-2); + m.disable(-2); + m.disable(-10); +} + +bool TCGRiclass_application::user_create() +{ + _rel = new TRelation(LF_RICLPDC); + _msk = new TCG_ricl_msk; + + TConfig config(CONFIG_DITTA); + + set_search_field(F_SOTTOCONTO); + + TFilename rep("lvcgricl.rep"); + + if (rep.custom_path()) + enable_menu_item(M_FILE_PRINT); + + TString title; + _msk->get_caption(title); + set_title(title); + + return true; +} + +bool TCGRiclass_application::user_destroy() +{ + if (_msk) + delete _msk; + if (_rel) + delete _rel; + + return true; +} + + + +int lv4600(int argc, char* argv[]) +{ + TCGRiclass_application a; + + a.run(argc, argv, TR("Riclassificazione piano dei conti Cogeco")); + return 0; +} + diff --git a/lv/lv4600a.h b/lv/lv4600a.h new file mode 100755 index 000000000..0153c70fe --- /dev/null +++ b/lv/lv4600a.h @@ -0,0 +1,16 @@ +//id campi maschera tc0800a (file piano dei conti Team System) +//campi normali +#define F_COD 101 +#define F_CGMASTRO 102 +#define F_CGCONTO 103 +#define F_CGSOTTOCONTO 104 +#define F_DESCRIZ 105 +#define F_GRUPPO 106 +#define F_CONTO 107 +#define F_SOTTOCONTO 108 +#define F_DESCG 109 +#define F_DESCC 110 +#define F_CGDESCR 111 +#define F_GRUPPO2 115 +#define F_CONTO2 116 +#define F_SOTTOCONTO2 117 diff --git a/lv/lv4600a.uml b/lv/lv4600a.uml new file mode 100755 index 000000000..60606ee17 --- /dev/null +++ b/lv/lv4600a.uml @@ -0,0 +1,239 @@ +#include "lv4600a.h" + +TOOLBAR "topbar" 0 0 0 2 +#include +ENDPAGE + +PAGE "Riclassificazione Conti" 0 2 0 0 + +LIST F_COD 7 +BEGIN + PROMPT 50 50 "" + ITEM "CGCONTI|CGCONTI" + FIELD TIPORIC + FLAGS "D" + KEY 1 +END + +GROUPBOX DLG_NULL 78 9 +BEGIN + PROMPT 1 1 "Conto Campo" +END + +NUMBER F_GRUPPO2 3 +BEGIN + PROMPT 2 2 "Gruppo " + HELP "Codice del gruppo" + FIELD GRUPPO + USE LF_RICLPDC + JOIN LF_PCON INTO GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO + JOIN &LCO TO LF_RICLPDC INTO CODTAB==CODICE + INPUT TIPORIC F_COD SELECT + INPUT GRUPPO F_GRUPPO2 + INPUT CONTO F_CONTO2 + INPUT SOTTOCONTO F_SOTTOCONTO2 + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + DISPLAY "Descrizione@50" LF_PCON->DESCR + DISPLAY "Gruppo TS" CODICE[1,2] + DISPLAY "Conto TS" CODICE[3,4] + DISPLAY "Sottoconto TS" CODICE[5,7] + DISPLAY "Descrizione@50" &LCO->S0 + OUTPUT F_GRUPPO2 GRUPPO + OUTPUT F_CONTO2 CONTO + OUTPUT F_SOTTOCONTO2 SOTTOCONTO + OUTPUT F_GRUPPO GRUPPO + OUTPUT F_CONTO CONTO + OUTPUT F_SOTTOCONTO SOTTOCONTO + KEY 1 + GROUP 1 + CHECKTYPE REQUIRED +END + +NUMBER F_GRUPPO 3 +BEGIN + PROMPT 2 2 "Gruppo " + HELP "Codice del gruppo" + FIELD GRUPPO + KEY 1 + GROUP 2 + USE LF_PCON KEY 1 SELECT CONTO="" + JOIN LF_RICLPDC INTO TIPORIC=="TSCONTI" GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO + JOIN &LCO TO LF_RICLPDC INTO CODTAB==CODICE + INPUT GRUPPO F_GRUPPO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Descrizione@50" DESCR + DISPLAY "Gruppo TS" LF_RICLPDC->CODICE[1,2] + DISPLAY "Conto TS" LF_RICLPDC->CODICE[3,4] + DISPLAY "Sottoconto TS" LF_RICLPDC->CODICE[5,7] + DISPLAY "Descrizione@50" &LCO->S0 + OUTPUT F_GRUPPO GRUPPO + OUTPUT F_GRUPPO2 GRUPPO + OUTPUT F_DESCG DESCR + CHECKTYPE REQUIRED + ADD RUN cg0 -0 + FLAGS "G" +END + +STRING F_DESCG 50 +BEGIN + PROMPT 24 2 "" + FLAGS "D" +END + +NUMBER F_CONTO2 3 +BEGIN + PROMPT 2 4 "Conto " + HELP "Codice dell'eventuale conto" + FIELD CONTO + COPY ALL F_GRUPPO2 + KEY 1 + GROUP 1 + CHECKTYPE NORMAL + WARNING "Manca il conto" +END + +NUMBER F_CONTO 3 +BEGIN + PROMPT 2 4 "Conto " + HELP "Codice dell'eventuale conto" + FIELD CONTO + KEY 1 + GROUP 2 + USE LF_PCON KEY 1 SELECT ((CONTO!="")&&(SOTTOCONTO="")) + JOIN LF_RICLPDC INTO TIPORIC=="CGCONTI" GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO + JOIN &LCO TO LF_RICLPDC INTO CODTAB==CODICE + COPY INPUT F_GRUPPO + INPUT CONTO F_CONTO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Descrizione@50" DESCR + DISPLAY "Gruppo TS" LF_RICLPDC->CODICE[1,2] + DISPLAY "Conto TS" LF_RICLPDC->CODICE[3,4] + DISPLAY "Sottoconto TS" LF_RICLPDC->CODICE[5,7] + DISPLAY "Descrizione@50" &LCO->S0 + OUTPUT F_GRUPPO GRUPPO + OUTPUT F_GRUPPO2 GRUPPO + OUTPUT F_CONTO CONTO + OUTPUT F_CONTO2 CONTO + OUTPUT F_DESCC DESCR + CHECKTYPE NORMAL + WARNING "Manca il conto" + ADD RUN cg0 -0 + FLAGS "G" +END + +STRING F_DESCC 50 +BEGIN + PROMPT 24 4 "" + FLAGS "D" +END + +NUMBER F_SOTTOCONTO2 6 +BEGIN + PROMPT 2 6 "Sottoconto " + HELP "Codice dell'eventuale sottoconto" + FIELD SOTTOCONTO + COPY ALL F_GRUPPO2 + KEY 1 + GROUP 1 + CHECKTYPE NORMAL +END + +NUMBER F_SOTTOCONTO 6 +BEGIN + PROMPT 2 6 "Sottoconto " + HELP "Codice dell'eventuale sottoconto" + FIELD SOTTOCONTO + KEY 1 + GROUP 2 + USE LF_PCON KEY 1 SELECT (SOTTOCONTO!="") + JOIN LF_RICLPDC INTO TIPORIC=="CGCONTI" GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO + JOIN &LCO TO LF_RICLPDC INTO CODTAB==CODICE + COPY INPUT F_CONTO + INPUT SOTTOCONTO F_SOTTOCONTO + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + DISPLAY "Sosp." SOSPESO + DISPLAY "Descrizione@50" DESCR + DISPLAY "Gruppo TS" LF_RICLPDC->CODICE[1,2] + DISPLAY "Conto TS" LF_RICLPDC->CODICE[3,4] + DISPLAY "Sottoconto TS" LF_RICLPDC->CODICE[5,7] + DISPLAY "Descrizione@50" &LCO->S0 + OUTPUT F_GRUPPO GRUPPO + OUTPUT F_GRUPPO2 GRUPPO + OUTPUT F_CONTO CONTO + OUTPUT F_CONTO2 CONTO + OUTPUT F_SOTTOCONTO SOTTOCONTO + OUTPUT F_SOTTOCONTO2 SOTTOCONTO + OUTPUT F_DESCRIZ DESCR + ADD RUN cg0 -0 + CHECKTYPE NORMAL + FLAGS "G" +END + +STRING F_DESCRIZ 50 +BEGIN + PROMPT 2 8 "Descrizione" + USE LF_PCON KEY 2 + JOIN LF_RICLPDC INTO TIPORIC=="CGCONTI" GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO + JOIN &LCO TO LF_RICLPDC INTO CODTAB==CODICE + INPUT DESCR F_DESCRIZ + DISPLAY "Descrizione@50" DESCR + DISPLAY "Gruppo" GRUPPO + DISPLAY "Conto" CONTO + DISPLAY "Sottoconto" SOTTOCONTO + DISPLAY "Gruppo TS" LF_RICLPDC->CODICE[1,2] + DISPLAY "Conto TS" LF_RICLPDC->CODICE[3,4] + DISPLAY "Sottoconto TS" LF_RICLPDC->CODICE[5,7] + DISPLAY "Descrizione@50" &LCO->S0 + COPY OUTPUT F_SOTTOCONTO + KEY 2 + CHECKTYPE REQUIRED + GROUP 10 +END + +STRING F_CGMASTRO 6 +BEGIN + PROMPT 2 10 "Mastro " + CHECKTYPE SEARCH + USE &LCO + INPUT CODTAB[1,6] F_CGMASTRO + INPUT CODTAB[7,12] F_CGCONTO + DISPLAY "Mastro" CODTAB[1,6] + DISPLAY "Conto" CODTAB[7,12] + DISPLAY "Sottoconto" CODTAB[5,7] + DISPLAY "Descrizione@60" S0 + OUTPUT F_CGMASTRO CODTAB[1,6] + OUTPUT F_CGCONTO CODTAB[7,12] + OUTPUT F_CGDESCR S0 + FLAGS "Z" + FIELD CODICE[1,6] +END + +STRING F_CGCONTO 6 +BEGIN + PROMPT 25 10 "Conto " + COPY ALL F_CGMASTRO + CHECKTYPE SEARCH + FIELD CODICE[7,12] + FLAGS "Z" +END + +STRING F_CGDESCR 50 +BEGIN + PROMPT 2 12 "Descrizione " + USE &LCO KEY 2 + INPUT S0 F_CGDESCR + DISPLAY "Descrizione@60" S0 + DISPLAY "Mastro" CODTAB[1,6] + DISPLAY "Conto" CODTAB[7,12] + COPY OUTPUT F_CGMASTRO + CHECKTYPE SEARCH +END + +ENDPAGE + +ENDMASK \ No newline at end of file