campo-sirio/cg/cg6900.h
ale 9cebacf72d - Correzione errori su invio a sistema del saldaconto scoperti con le mie prove prima di spedire a Milano.
- Trovato anche un errore nella funzione recupera_scadenze() di cglib04.cpp che riguarda la ricezione saldaconto da sistema.


git-svn-id: svn://10.65.10.50/trunk@3856 c028cbd2-c16b-5b4b-a496-9718f37d4682
1996-10-30 15:19:21 +00:00

199 lines
6.2 KiB
C++
Executable File

// Invio contabilita'
#define STRICT
#include <windows.h>
#include <direct.h>
#include <colors.h>
#include <isam.h>
#include <math.h>
#include <dos.h>
#include <applicat.h>
#include <mask.h>
#include <relation.h>
#include <tabutil.h>
#include <utility.h>
#include <config.h>
#include <urldefid.h>
#include <prefix.h>
#include <lffiles.h>
#include <progind.h>
#include <execp.h>
#include <mailbox.h>
#include <archives.h>
#include <nditte.h>
#include <mov.h>
#include <rmov.h>
#include <rmoviva.h>
#include <causali.h>
#include <rcausali.h>
#include <clifo.h>
#include <pconti.h>
#include <comuni.h>
#include <occas.h>
#include <partite.h>
#include <scadenze.h>
#include <pagsca.h>
#include "cg6901.h"
#include "cg6903.h"
#include "cg6905.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;
TLocalisamfile* _scad;
TLocalisamfile* _pagsca;
TIsamtempfile* _tcaus;
TIsamtempfile* _trcaus;
TIsamtempfile* _tclifo;
TIsamtempfile* _tpcon;
TIsamtempfile* _tmov;
TIsamtempfile* _trmov;
TIsamtempfile* _triva;
TIsamtempfile* _toccas;
TIsamtempfile* _tpart;
TIsamtempfile* _tscad;
TIsamtempfile* _tpagsca;
TArchive _arc;
TAssoc_array _riga_interna, _ultima_rata;
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, _codval;
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,_numrec_sc;
int _num,_annoes;
TDate _data, _datadoc, _data74ter,_datalimsk,_dataregiva,_datareg;
real _corrlire, _cambioi, _corrval,_cambio;
long _ultima_nreg;
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,long nreg);
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);
void movSC2tempfile(TString& key,TMask& m);
void scrivi_righeSCAD(char,int,int,long,int,TString&,int);
void scrivi_righePAGSCA(char,int,int,long,int,TString&,int);
void SC_inviato(char,int,int,long,int,TString&,int);
int nprogre_interno(long nreg, int nrig);
void aggiorna_array_rate(char tipo,int g,int c,long s,int anno,TString& npart, int nrata);
int ultima_rata_partita(char tipo,int g,int c,long s,int anno,TString& npart);
void partita2trasfer(TString& record, bool crea_record_riferimento = TRUE);
void pagsca2trasfer (TString& record, real& importo, real& importoval);
long crea_record_riferimento_PN();
bool invio_contabilita();
bool invio_tab_cau();
bool invio_clifo ();
bool invio_pcon ();
bool invio_mov_PN ();
bool invio_mov_IVA();
bool invio_mov_SC ();
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,TString& floppy);
FILE* chiedi_disco(const char* name, int disk, TString& floppy, bool lettura);
bool scrivi_disco(TString& 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 invio_partite();
void invio_scadenze();
void invio_pagsca();
void tipodocumento(long nreg,TString& tipodoc);
TInv_cont(char mov);
};
HIDDEN TInv_cont& app() { return (TInv_cont &) main_app(); }