From 4aaf60f0c95ab67eb040d90499e4d28b2054b1a6 Mon Sep 17 00:00:00 2001 From: nik Date: Fri, 24 May 1996 10:21:52 +0000 Subject: [PATCH] Modifica inerente il codice ditta che veniva troncato e alla localita' dei c/f che non veniva inviata nell' invio a sistema git-svn-id: svn://10.65.10.50/trunk@2903 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- cg/cg6900.h | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++ cg/cg6902.cpp | 26 ++++++-- 2 files changed, 195 insertions(+), 4 deletions(-) diff --git a/cg/cg6900.h b/cg/cg6900.h index c97c7489b..c7d991a4c 100755 --- a/cg/cg6900.h +++ b/cg/cg6900.h @@ -1,3 +1,175 @@ +<<<<<<< cg6900.h +// Invio contabilita' +#define STRICT +#include +#include + +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "cg6901.h" +#include "cg6903.h" +#include "cglib04.h" + +class TInv_cont : public TApplication +{ + enum { BUFSIZE = 4096 }; + + TTransfer_file _tras_file; + TProgind* _prog; + TLocalisamfile* _caus; + TLocalisamfile* _rcaus; + TLocalisamfile* _clifo; + TLocalisamfile* _pcon; + TLocalisamfile* _mov; + TLocalisamfile* _rmov; + TLocalisamfile* _rmoviva; + TLocalisamfile* _occas; + TLocalisamfile* _part; + TIsamtempfile* _tcaus; + TIsamtempfile* _trcaus; + TIsamtempfile* _tclifo; + TIsamtempfile* _tpcon; + TIsamtempfile* _tmov; + TIsamtempfile* _trmov; + TIsamtempfile* _triva; + TIsamtempfile* _toccas; + TArchive _arc; + + char _scelta; + + TString _control_rec, _header, _trasf, _std, _stato, _marker, _nome_simbolico; + TString _files, _codcaus, _numdoc, _reg, _codpag, _tipodoc, _codcausm, _sigle; + TString _ocfpi, _ragsococc, _indocc, _capocc, _localocc, _provocc, _codvali; + bool _esiste_ditta, _esiste_record, _inviato, _flag_bollato; + long _ditta, _protiva, _uprotiva, _codcf, _numrec, _tot_rec; + long _dim_tot, _dim_disk,_dittaAS; + long _numrec_cau,_numrec_clifo,_numrec_pcon,_numrec_pn,_numrec_iva; + int _num,_annoes; + TDate _data, _datadoc, _data74ter,_datalimsk,_dataregiva,_datareg; + real _corrlire, _cambioi, _corrval; + +public: + TString _titolo; + + virtual bool create(); + virtual bool destroy(); + virtual bool menu(MENU_TAG m); + + bool main_loop(); + + bool esiste_tabella_studio(); + bool record_controllo(); + bool esegui_controlli(); + bool leggi_header(); + bool controlli(); + bool sub_controlli(); + bool tabella_ditta(); + bool controlla_stato_invio(); + bool numero_data(); + void leggi_record_controllo(); + void codifica_ditta (TMask& m); + void testata_mov_PN (); + void testata_trasfer(long nreg, int nrig, TString& record); + void sola_iva(TString& record); + bool testata_mov_IVA(long numreg); + void cerca_occasionale(); + void cerca_comune_occas(const TString& com); + + void apri_file_temp(); + void chiudi_file_temp(); + + void crea_marker(TMask& m); + void setta_parametri_record(TMask& m,const TString& flag); + void setta_tabella_studio(TMask& m, bool flag_ditta = TRUE); + void setta_tabella_ditta(TMask& m, const char* flag, bool comp = TRUE); + void crea_record_controllo(TMask& m); + + bool invio_tempfile(TMask& m); + void causali2tempfile(TString& key,TMask& m); + void cancella_righe_causali(TString& codcaus); + void scrivi_righe_causali(TString& codcaus, char uselab); + void clifo2tempfile(TString& key,TMask& m); + void pcon2tempfile(TString& key,TMask& m); + + void movPN2tempfile(TString& key,TMask& m); + void scrivi_righePN(long numreg); + void primanota_inviata(long numreg); + + void movIVA2tempfile(TString& key,TMask& m); + bool occasionali(const TString& ocfpi); + void iva_inviata(long numreg); + + bool invio_contabilita(); + bool invio_tab_cau(); + bool invio_clifo (); + bool invio_pcon (); + bool invio_mov_PN (); + bool invio_mov_IVA(); + + void aggiorna_header(TString& files); + void aggiorna_trasfer(TString& files); + + void negPC2negAS(TString& numero); + void dec2integer(real& val, long dec); + + void aggiorna_marker(TString& token, int pos); + void calcola_totale_record(); + void scrivi_telefono(TString& app); + + const char* cerca_provincia(const TString& comcf); + void cerca_dencom(TString& comcf,TString& dencom); + + static bool setta_maschera_hnd(TMask_field& f, KEY k); + static bool messaggio_hnd (TMask_field& f, KEY k); + + int calcola_numero_dischi(TMask& m); + FILE* chiedi_disco(const char* name, int disk, char floppy, bool lettura); + bool scrivi_disco(char floppy, int disk, const char* work, FILE* i, TProgind& w); + + bool invio_contabilita_PC(); + void invio_testata_causali(); + void invio_righe_causali(); + void invio_clienti_fornitori(); + void invio_piano_conti(); + void invio_testata_movimenti(); + void invio_righe_contabili(); + void invio_righe_IVA(); + void invio_occasionali(TString& record, TString& ocfpi); + void tipodocumento(long nreg,TString& tipodoc); + + TInv_cont(char mov); +}; + +HIDDEN TInv_cont& app() { return (TInv_cont &) main_app(); } + +======= // Invio contabilita' #define STRICT #include @@ -167,3 +339,4 @@ public: HIDDEN TInv_cont& app() { return (TInv_cont &) main_app(); } +>>>>>>> 1.8 diff --git a/cg/cg6902.cpp b/cg/cg6902.cpp index 97485ddd5..38f219c1c 100755 --- a/cg/cg6902.cpp +++ b/cg/cg6902.cpp @@ -160,7 +160,7 @@ bool TInv_cont::invio_contabilita() if (header) { - TString dittaAS = _control_rec.sub(300,304); + TString dittaAS = _control_rec.sub(301,305); TString app1 = _control_rec.mid(0,15); TString app2 = _control_rec.mid(60,10); @@ -552,6 +552,19 @@ void TInv_cont::scrivi_telefono(TString& appoggio) appoggio << tel; } +void TInv_cont::cerca_dencom(TString& comcf,TString& dencom) +{ + TLocalisamfile comuni(LF_COMUNI); + + comuni.setkey(1); + comuni.zero(); + comuni.put(COM_COM, comcf); + if (comuni.read() == NOERR) + dencom = comuni.get(COM_DENCOM); + else + dencom = ""; +} + bool TInv_cont::invio_clifo() { int size = 256; @@ -631,12 +644,17 @@ bool TInv_cont::invio_clifo() TString capcf = _tclifo->get(CLI_CAPCF); str.format("%05s", (const char*) capcf); record.overwrite(str,128); //Codice di avviamento postale - - TString localita = _tclifo->get(CLI_LOCCF); + + TString comcf = _tclifo->get(CLI_COMCF); + TString localita; + if (comcf.not_empty()) + cerca_dencom(comcf,localita); + else + localita = _tclifo->get(CLI_LOCCF); str.format("%-.20s", (const char*) localita); record.overwrite(str,133); //Localita' - TString comcf = _tclifo->get(CLI_COMCF); +// TString comcf = _tclifo->get(CLI_COMCF); TString provincia = ""; if (comcf.not_empty()) provincia = cerca_provincia(comcf);