campo-sirio/ab/ab1200.cpp
alex f9260ba988 Patch level : no patch
Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
MOdificati programmi non ancora utilizzati


git-svn-id: svn://10.65.10.50/trunk@10936 c028cbd2-c16b-5b4b-a496-9718f37d4682
2003-03-20 11:05:31 +00:00

58 lines
2.0 KiB
C++
Executable File

// ab1200 Stampa Piano dei Conti
#include <mask.h>
#include <form.h>
#include <applicat.h>
#include <urldefid.h> //Definisce BAR_ITEM(1)
#include "AB1.h"
#include "ab1200.h"
class AB1200_application : public TSkeleton_application
{
public:
virtual void main_loop(); //Controlla il menu
AB1200_application() {} //Costruttore
virtual ~AB1200_application() {} //Distruttore
};
void AB1200_application::main_loop()
{
TForm f("AB1200"); //form: AB1200.frm
TMask m("AB1200"); //machera: AB1200.uml
while (m.run() != K_QUIT) //Finchè non viene premuto un tasto di uscita
{
TString cod_from, cod_to; //Dichiarazione
cod_from=m.get(F_INIZIO); //Inizializzo con quello che preleva dal campo della maschera
cod_to=m.get(F_FINE);
//Dati validi: (cod_from <= cod_to) and (cod_to = "vuoto")
bool err = ((cod_from > cod_to) && (cod_to != "") );
if (err)
error_box("Il campo iniziale deve essere vuoto o minore del campo finale");
else
{
TCursor* cur = f.cursor(); //Ritorna il cursore corrente (oggetto)
TRectype rec_from(cur->curr()); //TRectype: classe per la definizione del tipo record
//rec_from è l'oggetto a cui associo l'indice corrente
rec_from.zero(); //lo vuoto
rec_from.put("CODCBL",cod_from); //e lo riempio con il campo contenuto nel database all'indice iniziale
TRectype rec_to(cur->curr()); //creo un nuovo oggetto a cui associare l'indice
rec_to.zero(); //lo vuoto
if (cod_to.not_empty()) //se cod_to (letto dal campo della tabella) non è vuoto
rec_to.put("CODCBL",cod_to); //gli inserisco l'indice finale letto
//altrimenti va fino alla ifne del file
cur->setregion(rec_from,rec_to); //all'indice associo la regine di stampa
f.print(); //Stampa
}
}
}
int ab1200(int argc, char** argv)
{
AB1200_application a;
a.run(argc, argv, "Stampa Piano dei Conti");
return 0;
}