Patch level : 12.00 1256
Files correlati : cg1500ax.msk cg1500b.rep cg1500c.rep cg2.exe Commento : Stammpa bilnci avanzata
This commit is contained in:
		
							parent
							
								
									ba84f84d10
								
							
						
					
					
						commit
						1486dea423
					
				@ -41,18 +41,10 @@
 | 
			
		||||
 | 
			
		||||
#include "cg1.h"
 | 
			
		||||
#include "cg1500.h"                      
 | 
			
		||||
#include "cglib.h"
 | 
			
		||||
 | 
			
		||||
#include "cg1501.h"
 | 
			
		||||
 | 
			
		||||
class TStampa_bilanci : public TPrintapp
 | 
			
		||||
{
 | 
			
		||||
  static bool mask_anno (TMask_field& f, KEY k);
 | 
			
		||||
  static bool mask_datalim (TMask_field& f, KEY k);
 | 
			
		||||
  static bool verifica_handler(TMask_field& f, KEY k);
 | 
			
		||||
  static bool mask_dataini (TMask_field& f, KEY k);
 | 
			
		||||
  static bool mask_bilancio(TMask_field& f, KEY k);
 | 
			
		||||
  static bool mask_tipost (TMask_field& f, KEY k);
 | 
			
		||||
 | 
			
		||||
  struct cli_for
 | 
			
		||||
  {
 | 
			
		||||
    char tipocf;
 | 
			
		||||
@ -180,141 +172,6 @@ public:
 | 
			
		||||
 | 
			
		||||
HIDDEN inline TStampa_bilanci& app() { return (TStampa_bilanci&)main_app(); }
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci::mask_anno(TMask_field& f, KEY k)
 | 
			
		||||
{
 | 
			
		||||
	TMask& m = f.mask();
 | 
			
		||||
 | 
			
		||||
  if (k == K_ENTER)
 | 
			
		||||
  {
 | 
			
		||||
    const int tipo_stampa = m.get_int(F_STAMPA);
 | 
			
		||||
    const int anno     = m.get_int(F_ANNO);
 | 
			
		||||
 | 
			
		||||
    if (tipo_stampa == 2 && anno == 0)
 | 
			
		||||
	    return f.error_box(TR("Indicare l'anno di esercizio"));
 | 
			
		||||
  }
 | 
			
		||||
  if (f.running_check(k))  
 | 
			
		||||
  {
 | 
			
		||||
		const int tipo_stampa = m.get_int(F_STAMPA);
 | 
			
		||||
    const int anno     = m.get_int(F_ANNO);
 | 
			
		||||
    const int bilancio = m.get_int(F_BILANCIO);
 | 
			
		||||
		const TDate datalim = m.get_date(F_DATALIM);
 | 
			
		||||
		TDate data;
 | 
			
		||||
 | 
			
		||||
		if (esercizi().exist(datalim))
 | 
			
		||||
			data = esercizio(datalim).fine();
 | 
			
		||||
		m.enable_page(1, bilancio != 1);
 | 
			
		||||
		m.show(F_DATAINI, bilancio == 2 && tipo_stampa == 1);
 | 
			
		||||
		m.show(F_QUADRATURA, bilancio == 2 && tipo_stampa == 1 && data == datalim);
 | 
			
		||||
  }
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci::mask_bilancio(TMask_field& f, KEY k)
 | 
			
		||||
{ 
 | 
			
		||||
  if (k == K_SPACE)
 | 
			
		||||
  {
 | 
			
		||||
    TMask& m = f.mask();
 | 
			
		||||
    const int anno     = m.get_int(F_ANNO);
 | 
			
		||||
    const int bilancio = m.get_int(F_BILANCIO);
 | 
			
		||||
		const int tipo_stampa = m.get_int(F_STAMPA);
 | 
			
		||||
		const TDate datalim = m.get_date(F_DATALIM);
 | 
			
		||||
		TDate data;
 | 
			
		||||
 | 
			
		||||
		m.enable_page(1, bilancio != 1); 
 | 
			
		||||
		if (esercizi().exist(datalim))
 | 
			
		||||
			data = esercizio(datalim).fine();
 | 
			
		||||
		m.show(F_DATAINI, bilancio == 2 && tipo_stampa == 1);
 | 
			
		||||
		m.show(F_QUADRATURA, bilancio == 2 && tipo_stampa == 1 && data == datalim);
 | 
			
		||||
	}
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci::mask_datalim (TMask_field& f, KEY k)
 | 
			
		||||
{   
 | 
			
		||||
  if (k == K_ENTER)
 | 
			
		||||
  { 
 | 
			
		||||
		TMask& m = f.mask();
 | 
			
		||||
		const int anno     = m.get_int(F_ANNO);
 | 
			
		||||
    const int bilancio = m.get_int(F_BILANCIO);
 | 
			
		||||
    const TDate data = m.get_date(F_DATALIM);
 | 
			
		||||
 | 
			
		||||
    if (anno != 0)
 | 
			
		||||
    { 
 | 
			
		||||
	    if (data.ok())
 | 
			
		||||
      {
 | 
			
		||||
				if (!esercizi().exist(data) || (esercizio(data).codice() != anno))
 | 
			
		||||
					return f.error_box (TR("La data limite deve appartenere all'esercizio indicato"));
 | 
			
		||||
      }
 | 
			
		||||
    //  else 
 | 
			
		||||
    //    m.field(F_DATALIM).set(esercizio(anno).fine());
 | 
			
		||||
			app()._annoapp = anno;
 | 
			
		||||
		}
 | 
			
		||||
    else //anno == 0
 | 
			
		||||
    {
 | 
			
		||||
      if (!data.ok())
 | 
			
		||||
        return f.error_box (TR("La data limite e' obbligatoria"));
 | 
			
		||||
      if (!esercizi().exist(data))
 | 
			
		||||
        return f.error_box (TR("La data limite deve appartenere ad un esercizio attivo della ditta"));
 | 
			
		||||
    }
 | 
			
		||||
		if (m.get_date(F_DATALIM) < m.get_date(F_DATAINI))
 | 
			
		||||
			return f.error_box(TR("La data limite deve essere maggiore o uguale alla data iniziale"));
 | 
			
		||||
  }    
 | 
			
		||||
  return true;
 | 
			
		||||
}       
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci::mask_dataini(TMask_field& f, KEY k)
 | 
			
		||||
{   
 | 
			
		||||
	TMask& m = f.mask();
 | 
			
		||||
	const short id = f.dlg();
 | 
			
		||||
 | 
			
		||||
	if (k == K_ENTER)
 | 
			
		||||
	{
 | 
			
		||||
		const int anno     = m.get_int(F_ANNO);
 | 
			
		||||
		int bilancio = m.get_int(F_BILANCIO);
 | 
			
		||||
		TDate data = f.get_date();
 | 
			
		||||
 | 
			
		||||
		if (anno != 0)
 | 
			
		||||
		{
 | 
			
		||||
			if (data.ok())
 | 
			
		||||
			{
 | 
			
		||||
				if (!esercizi().exist(data) || (esercizio(data).codice() != anno))
 | 
			
		||||
					return f.error_box(TR("La data iniziale deve appartenere all'esercizio indicato"));
 | 
			
		||||
			}
 | 
			
		||||
		//	else
 | 
			
		||||
		//		m.field(F_DATAINI).set(esercizio(anno).inizio());
 | 
			
		||||
			app()._annoapp = anno;
 | 
			
		||||
		}
 | 
			
		||||
		else //anno == 0
 | 
			
		||||
		{
 | 
			
		||||
			const TDate datalim = m.get_date(F_DATALIM);
 | 
			
		||||
 | 
			
		||||
			if (!data.ok() && datalim.ok() && esercizi().exist(datalim))
 | 
			
		||||
				m.field(F_DATAINI).set(data = esercizio(datalim).inizio());
 | 
			
		||||
			if (!data.ok())
 | 
			
		||||
				return f.error_box(TR("La data limite e' obbligatoria"));
 | 
			
		||||
			if (!esercizi().exist(data))
 | 
			
		||||
				return f.error_box(TR("La data limite deve appartenere ad un esercizio attivo della ditta"));
 | 
			
		||||
			app()._annoapp = esercizio(data).codice();
 | 
			
		||||
		}
 | 
			
		||||
  }         
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci::verifica_handler(TMask_field& f, KEY k)
 | 
			
		||||
{
 | 
			
		||||
  if (k == K_SPACE)
 | 
			
		||||
  {
 | 
			
		||||
		TMask& m = f.mask();
 | 
			
		||||
		const int verifica    = m.get_int(F_VERIFICA);
 | 
			
		||||
 | 
			
		||||
		m.show(F_SITUAZIONE, verifica == 3);
 | 
			
		||||
		m.show(F_STAMPAC, verifica == 3);
 | 
			
		||||
		m.show(F_ORDINAMENTO, verifica == 3);
 | 
			
		||||
		m.show(F_STAMPAV, verifica != 3);
 | 
			
		||||
  }
 | 
			
		||||
  return true;
 | 
			
		||||
} 
 | 
			
		||||
 | 
			
		||||
void TStampa_bilanci::scrivig_file_temp()
 | 
			
		||||
{
 | 
			
		||||
  TIsamtempfile* tmp = NULL;
 | 
			
		||||
@ -3387,18 +3244,12 @@ void TStampa_bilanci::stampa_un_bilancio(const TMask& m)
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci::set_print(int)
 | 
			
		||||
{
 | 
			
		||||
	#ifdef CONT_SEP
 | 
			
		||||
  TMask m ("np0300a");
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
  TBilancio_mask m("np0300a");
 | 
			
		||||
#else
 | 
			
		||||
  TMask m ("cg1500a");
 | 
			
		||||
	TBilancio_mask m("cg1500a");
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
	m.set_handler (F_VERIFICA,   verifica_handler);
 | 
			
		||||
  m.set_handler (F_BILANCIO,   mask_bilancio);
 | 
			
		||||
  m.set_handler (F_STAMPA,     mask_bilancio);
 | 
			
		||||
  m.set_handler (F_DATALIM,    mask_datalim);
 | 
			
		||||
  m.set_handler (F_DATAINI,    mask_dataini);
 | 
			
		||||
  m.set_handler (F_ANNO,       mask_anno);
 | 
			
		||||
	m.set(F_NORMALI, "X");
 | 
			
		||||
  
 | 
			
		||||
  while (m.run() == K_ENTER)
 | 
			
		||||
@ -3406,10 +3257,10 @@ bool TStampa_bilanci::set_print(int)
 | 
			
		||||
    _annoes          = m.get_int(F_ANNO);
 | 
			
		||||
    _bilancio        = m.get_int(F_BILANCIO);
 | 
			
		||||
    _data            = m.get(F_DATASTAMPA);
 | 
			
		||||
		_stampa_mov_prov = m.get_bool(F_NORMALI) ? 0x1 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov |= m.get_bool(F_PROVVM) ? 0x2 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov |= m.get_bool(F_PROVVB) ? 0x4 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov |= m.get_bool(F_PROVVC) ? 0x8 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov = m.get_bool(F_NORMALI) ? 0x1 : 0;
 | 
			
		||||
		_stampa_mov_prov |= m.get_bool(F_PROVVM) ? 0x2 : 0;
 | 
			
		||||
		_stampa_mov_prov |= m.get_bool(F_PROVVB) ? 0x4 : 0;
 | 
			
		||||
		_stampa_mov_prov |= m.get_bool(F_PROVVC) ? 0x8 : 0;
 | 
			
		||||
		_quadratura      = m.get_bool(F_QUADRATURA);
 | 
			
		||||
    _hide_clifo      = m.get_bool(F_HIDE_CLIFO);
 | 
			
		||||
    _noseparator     = m.get_bool(F_SEPARATOR);
 | 
			
		||||
@ -3742,7 +3593,17 @@ int np0300(int argc, char* argv[])
 | 
			
		||||
int cg1500(int argc, char* argv[])
 | 
			
		||||
#endif
 | 
			
		||||
{
 | 
			
		||||
  TStampa_bilanci a;
 | 
			
		||||
	if (argc > 2 && toupper(argv[2][0]) == 'A')
 | 
			
		||||
	{
 | 
			
		||||
		TStampa_bilanci_avanzata a;
 | 
			
		||||
 | 
			
		||||
		a.run(argc, argv, TR("Stampa bilanci"));
 | 
			
		||||
	}
 | 
			
		||||
	else
 | 
			
		||||
	{
 | 
			
		||||
		TStampa_bilanci a;
 | 
			
		||||
 | 
			
		||||
		a.run(argc, argv, TR("Stampa bilanci"));
 | 
			
		||||
	}
 | 
			
		||||
  return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -35,9 +35,8 @@
 | 
			
		||||
#define F_PROVVM         141
 | 
			
		||||
#define F_PROVVB         142
 | 
			
		||||
#define F_PROVVC         143
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
#define F_CONTSEP        144
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define F_COMPCR         145
 | 
			
		||||
 | 
			
		||||
#endif  // __CG1500_H
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										372
									
								
								src/cg/cg1500ax.uml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										372
									
								
								src/cg/cg1500ax.uml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,372 @@
 | 
			
		||||
#include "cg1500.h"
 | 
			
		||||
 | 
			
		||||
#define ALL_EXPORT
 | 
			
		||||
#define CLASS_NAME "cg1500a"
 | 
			
		||||
 | 
			
		||||
TOOLBAR "topbar" 0 0 0 2
 | 
			
		||||
#include <aprintbar.h>
 | 
			
		||||
ENDPAGE
 | 
			
		||||
 | 
			
		||||
TOOLBAR "bottombar" 0 -3 0 1
 | 
			
		||||
#include <bprintbar.h>
 | 
			
		||||
ENDPAGE
 | 
			
		||||
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
PAGE "Stampa bilancio Contabilità separata" -1 -1 76 16
 | 
			
		||||
#else
 | 
			
		||||
PAGE "Stampa bilancio" -1 -1 76 16
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
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 "
 | 
			
		||||
  HELP "Data che verra' stampata sul bilancio"
 | 
			
		||||
  FLAGS "A"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_ANNO 4
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 3 "Codice esercizio  "
 | 
			
		||||
  HELP "Esercizio di cui si vuole ottenere il bilancio"
 | 
			
		||||
  USE ESC
 | 
			
		||||
  INPUT CODTAB F_ANNO
 | 
			
		||||
  DISPLAY "Codice" CODTAB
 | 
			
		||||
  DISPLAY "Data inizio esercizio" D0
 | 
			
		||||
  DISPLAY "Data fine esercizio" D1
 | 
			
		||||
  OUTPUT F_ANNO CODTAB
 | 
			
		||||
  FLAGS "Z"
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
  WARNING "L'esercizio non esiste"
 | 
			
		||||
  ADD RUN cg0 -5 esc
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
RADIOBUTTON F_BILANCIO 37
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 1 5 "@bTipo bilancio"
 | 
			
		||||
  HELP "Indicare il tipo di bilancio da stampare"
 | 
			
		||||
  ITEM "1|Bilancio a sezioni contrapposte"
 | 
			
		||||
  MESSAGE SHOW,1@
 | 
			
		||||
  MESSAGE HIDE,2@|RESET,2@
 | 
			
		||||
  MESSAGE HIDE,F_QUADRATURA
 | 
			
		||||
  MESSAGE CLEAR,F_QUADRATURA
 | 
			
		||||
  ITEM "2|Bilancio di verifica"
 | 
			
		||||
  MESSAGE SHOW,F_QUADRATURA
 | 
			
		||||
  MESSAGE HIDE,1@|RESET,1@
 | 
			
		||||
  MESSAGE SHOW,2@
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
RADIOBUTTON F_STAMPA 28
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 41 5 "@bTipo stampa"
 | 
			
		||||
  HELP "Indicare il tipo di stampa"
 | 
			
		||||
  ITEM "1|Per date limite"
 | 
			
		||||
  MESSAGE SHOW,F_DATALIM
 | 
			
		||||
  MESSAGE ENABLE,F_COMPCR
 | 
			
		||||
  MESSAGE ENABLE,F_QUADRATURA
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
  MESSAGE SHOW,F_CONTSEP
 | 
			
		||||
#endif
 | 
			
		||||
  ITEM "2|All'ultima immissione"
 | 
			
		||||
  MESSAGE HIDE,F_DATALIM|RESET,F_DATALIM
 | 
			
		||||
  MESSAGE CLEAR,F_COMPCR
 | 
			
		||||
  MESSAGE CLEAR,F_QUADRATURA
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
  MESSAGE HIDE,F_CONTSEP
 | 
			
		||||
#endif
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
DATE F_DATAINI
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 9 "Data iniziale "
 | 
			
		||||
  HELP "Data dall quale iniziare la stampa"
 | 
			
		||||
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
DATE F_DATALIM
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 42 9 "Data limite      "
 | 
			
		||||
  HELP "Data fino alla quale si vuole la stampa"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_TOTALI
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 33 10 "Non stampare totali per gruppo "
 | 
			
		||||
  HELP "Indicare se non si devono stampare i totali dei gruppi"
 | 
			
		||||
  GROUP 1
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_COMPCR
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 66 10 "Bilancio per competenza costi/ricavi "
 | 
			
		||||
  HELP "Bilancio per competenza costi/ricavi"
 | 
			
		||||
  FLAGS "D"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_CODICI
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 11 "Non stampare codici conti "
 | 
			
		||||
  HELP "Indicare se non si devono stampare i codici dei conti"
 | 
			
		||||
  GROUP 1
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_SALDO
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 33 11 "Non stampare movimenti con saldo a zero "
 | 
			
		||||
  HELP "Indicare se non si devono stampare i movimenti con saldo nullo"
 | 
			
		||||
  GROUP 1
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_NORMALI
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 12 "Movimenti : Normali"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_PROVVM
 | 
			
		||||
BEGIN
 | 
			
		||||
	PROMPT 29 12 "Provvisori : Manuali"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_PROVVB
 | 
			
		||||
BEGIN
 | 
			
		||||
	PROMPT 52 12 "Comp. costi/ricavi"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_PROVVC
 | 
			
		||||
BEGIN
 | 
			
		||||
	PROMPT 73 12 "Cespiti"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_QUADRATURA
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 14 "Quadratura con Libro Giornale"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
STRING F_CONTSEP 6
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 15 "Contabilità separata "
 | 
			
		||||
  USE &NPENT
 | 
			
		||||
  INPUT CODTAB F_CONTSEP
 | 
			
		||||
  DISPLAY "Codice@6" CODTAB
 | 
			
		||||
  DISPLAY "Descrizione@50" S0
 | 
			
		||||
  OUTPUT F_CONTSEP CODTAB
 | 
			
		||||
  CHECKTYPE REQUIRED
 | 
			
		||||
  MODULE NP
 | 
			
		||||
END
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
ENDPAGE
 | 
			
		||||
 | 
			
		||||
PAGE "Parametri bilancio di verifica" -1 -1 74 20
 | 
			
		||||
 | 
			
		||||
RADIOBUTTON F_VERIFICA 27
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 1 "@bStampa bilancio di verifica "
 | 
			
		||||
  HELP "Tipo di bilancio di verifica"
 | 
			
		||||
  ITEM "1|Bilancio"  MESSAGE SHOW,4@|HIDE,6@
 | 
			
		||||
  ITEM "2|Saldi di mastro" MESSAGE SHOW,4@|HIDE,6@
 | 
			
		||||
  ITEM "3|Situazione C/F"  MESSAGE HIDE,4@|SHOW,6@
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
RADIOBUTTON F_STAMPAC 36
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 34 1 "@bTipo stampa"
 | 
			
		||||
  ITEM "1|Conti movimentati"
 | 
			
		||||
  ITEM "2|Conti con saldo diverso da zero"
 | 
			
		||||
  GROUP 6
 | 
			
		||||
  FLAGS "H"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
RADIOBUTTON F_STAMPAV 36
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 34 1 "@bTipo stampa "
 | 
			
		||||
  ITEM "1|Conti movimentati"
 | 
			
		||||
  ITEM "2|Conti con saldo diverso da zero"
 | 
			
		||||
  ITEM "3|Tutti i conti"
 | 
			
		||||
  GROUP 4
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_SEPARATOR
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 7 "Non stampare i separatori delle migliaia"
 | 
			
		||||
  MESSAGE FALSE " 123.456.789.012",F_PICTURE
 | 
			
		||||
  MESSAGE TRUE  "1234567890123456",F_PICTURE
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
STRING F_PICTURE 16
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 50 7 ""
 | 
			
		||||
  FLAGS "DR"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
BOOLEAN F_HIDE_CLIFO
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 10 "Non stampare il dettaglio dei clienti/fornitori"
 | 
			
		||||
  GROUP 4
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
LIST F_SITUAZIONE 11
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 10 "Tipo situazione  "
 | 
			
		||||
  ITEM " |Entrambi"
 | 
			
		||||
  ITEM "C|Clienti"
 | 
			
		||||
  ITEM "F|Fornitori"
 | 
			
		||||
  FLAGS "H"
 | 
			
		||||
  GROUP 6
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
LIST F_ORDINAMENTO 11
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 11 "Tipo ordinamento "
 | 
			
		||||
  ITEM "1|Per codice"
 | 
			
		||||
  ITEM "2|Alfabetico"
 | 
			
		||||
  FLAGS "H"
 | 
			
		||||
  GROUP 6
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
GROUPBOX DLG_NULL 55 6
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 2 13 "@bSelezione sui conti"
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_DA_GRUPPO 3
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 3 14 "Da:   Gruppo "
 | 
			
		||||
  USE LF_PCON KEY 1 SELECT (CONTO="")
 | 
			
		||||
  INPUT GRUPPO F_DA_GRUPPO 
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR
 | 
			
		||||
  OUTPUT F_DA_GRUPPO GRUPPO    
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_DA_CONTO 3
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 23 14 "Conto "
 | 
			
		||||
  USE LF_PCON KEY 1 SELECT (SOTTOCONTO="")
 | 
			
		||||
  INPUT GRUPPO F_DA_GRUPPO 
 | 
			
		||||
  INPUT CONTO  F_DA_CONTO    
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Conto" CONTO
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR   
 | 
			
		||||
  OUTPUT F_DA_CONTO CONTO  
 | 
			
		||||
  OUTPUT F_DA_GRUPPO GRUPPO
 | 
			
		||||
  CHECKTYPE NORMAL 
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_DA_SOTTOCONTO 6
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 36 14 "Sottoconto "
 | 
			
		||||
  USE LF_PCON
 | 
			
		||||
  INPUT GRUPPO F_DA_GRUPPO 
 | 
			
		||||
  INPUT CONTO  F_DA_CONTO 
 | 
			
		||||
  INPUT SOTTOCONTO F_DA_SOTTOCONTO
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Conto" CONTO
 | 
			
		||||
  DISPLAY "Sottoconto" SOTTOCONTO
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR
 | 
			
		||||
  OUTPUT F_DA_SOTTOCONTO SOTTOCONTO
 | 
			
		||||
  OUTPUT F_DA_GRUPPO GRUPPO
 | 
			
		||||
  OUTPUT F_DA_CONTO CONTO  
 | 
			
		||||
  OUTPUT F_DA_DESCRIZIONE DESCR
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
STRING F_DA_DESCRIZIONE 50
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 3 15 ""
 | 
			
		||||
  USE LF_PCON KEY 2
 | 
			
		||||
  INPUT DESCR F_DA_DESCRIZIONE
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Conto" CONTO
 | 
			
		||||
  DISPLAY "Sottoconto" SOTTOCONTO
 | 
			
		||||
  OUTPUT F_DA_SOTTOCONTO SOTTOCONTO
 | 
			
		||||
  OUTPUT F_DA_CONTO CONTO
 | 
			
		||||
  OUTPUT F_DA_GRUPPO GRUPPO
 | 
			
		||||
  OUTPUT F_DA_DESCRIZIONE DESCR
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_A_GRUPPO 3
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 3 16 "A:    Gruppo "
 | 
			
		||||
  USE LF_PCON KEY 1 SELECT (CONTO="")
 | 
			
		||||
  INPUT GRUPPO F_A_GRUPPO 
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR
 | 
			
		||||
  OUTPUT F_A_GRUPPO GRUPPO    
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_A_CONTO 3
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 23 16 "Conto "
 | 
			
		||||
  USE LF_PCON KEY 1 SELECT (SOTTOCONTO="")
 | 
			
		||||
  INPUT GRUPPO F_A_GRUPPO 
 | 
			
		||||
  INPUT CONTO  F_A_CONTO    
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Conto" CONTO
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR   
 | 
			
		||||
  OUTPUT F_A_CONTO CONTO  
 | 
			
		||||
  OUTPUT F_A_GRUPPO GRUPPO
 | 
			
		||||
  CHECKTYPE NORMAL 
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
NUMBER F_A_SOTTOCONTO 6
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 36 16 "Sottoconto "
 | 
			
		||||
  USE LF_PCON
 | 
			
		||||
  INPUT GRUPPO F_A_GRUPPO 
 | 
			
		||||
  INPUT CONTO  F_A_CONTO 
 | 
			
		||||
  INPUT SOTTOCONTO F_A_SOTTOCONTO
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Conto" CONTO
 | 
			
		||||
  DISPLAY "Sottoconto" SOTTOCONTO
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR
 | 
			
		||||
  OUTPUT F_A_SOTTOCONTO SOTTOCONTO
 | 
			
		||||
  OUTPUT F_A_GRUPPO GRUPPO
 | 
			
		||||
  OUTPUT F_A_CONTO CONTO  
 | 
			
		||||
  OUTPUT F_A_DESCRIZIONE DESCR
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
STRING F_A_DESCRIZIONE 50
 | 
			
		||||
BEGIN
 | 
			
		||||
  PROMPT 3 17 ""
 | 
			
		||||
  USE LF_PCON KEY 2
 | 
			
		||||
  INPUT DESCR F_A_DESCRIZIONE
 | 
			
		||||
  DISPLAY "Descrizione@50" DESCR
 | 
			
		||||
  DISPLAY "Gruppo" GRUPPO
 | 
			
		||||
  DISPLAY "Conto" CONTO
 | 
			
		||||
  DISPLAY "Sottoconto" SOTTOCONTO
 | 
			
		||||
  OUTPUT F_A_SOTTOCONTO SOTTOCONTO
 | 
			
		||||
  OUTPUT F_A_CONTO CONTO
 | 
			
		||||
  OUTPUT F_A_GRUPPO GRUPPO
 | 
			
		||||
  OUTPUT F_A_DESCRIZIONE DESCR
 | 
			
		||||
  CHECKTYPE NORMAL
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
ENDPAGE
 | 
			
		||||
 | 
			
		||||
ENDMASK
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										414
									
								
								src/cg/cg1500b.rep
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										414
									
								
								src/cg/cg1500b.rep
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,414 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" ?>
 | 
			
		||||
<report libraries="" page_merge="" save_printer="" name="cg1500b" use_printer_font="" orientation="2" page_split="" lpi="6" command="cg1 -4" class="cg1500b">
 | 
			
		||||
 <description>Stampa bilancio di verifica</description>
 | 
			
		||||
 <font face="Arial" size="7" />
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="1" hide_zero="" text="Ditta" />
 | 
			
		||||
  <field deactivated="" type="Stringa" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="189" codval="" height="1.5" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <font face="Arial" bold="1" size="14" />
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"Stampa Bilancio di verifica" 
 | 
			
		||||
#CODES @
 | 
			
		||||
0
 | 
			
		||||
C;E;
 | 
			
		||||
IF
 | 
			
		||||
" esercizio  "
 | 
			
		||||
+
 | 
			
		||||
#CODES @
 | 
			
		||||
+
 | 
			
		||||
THEN
 | 
			
		||||
#THIS !
 | 
			
		||||
</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="3.5" deactivated="" type="Numero" valign="center" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>#SYSTEM.FIRM</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="9" deactivated="" type="Stringa" valign="bottom" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>#SYSTEM.RAGSOC</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="160.5" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="2" hide_zero="" text="Data">
 | 
			
		||||
   <font italic="1" face="Courier New" bold="1" size="8" />
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="168.5" deactivated="" type="Data" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="11" codval="" id="" pattern="2" hide_zero="" text="">
 | 
			
		||||
   <source>#SYSTEM.DATE</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="180" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="2" hide_zero="" text="Pag.">
 | 
			
		||||
   <font italic="1" face="Courier New" bold="1" size="8" />
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="185" deactivated="" type="Numero" valign="center" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="2" hide_zero="" text="">
 | 
			
		||||
   <source>#PAGE</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="9" y="1" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="40" codval="" height="2" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"!INDIR" 
 | 
			
		||||
GET_FIRM_DATA  </prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="160.5" y="1" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="3" codval="" id="" pattern="1" hide_zero="" text="Dal" />
 | 
			
		||||
  <field x="165" y="1" deactivated="" type="Data" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="10" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DATAINI</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="176.5" y="1" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="3" codval="" id="" pattern="1" hide_zero="" text="Al" />
 | 
			
		||||
  <field x="180" y="1" deactivated="" type="Data" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="10" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DATALIM</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="160" y="2" deactivated="" type="Array" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="30" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>TIPOST</source>
 | 
			
		||||
   <list>
 | 
			
		||||
    <li Value="Per data limite" Code="1" />
 | 
			
		||||
    <li Value="All'ultima immissione" Code="2" />
 | 
			
		||||
   </list>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field y="3" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Codice fiscale" />
 | 
			
		||||
  <field x="15" y="3" deactivated="" type="Stringa" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="16" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"!CF" 
 | 
			
		||||
GET_FIRM_DATA  </prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="31.5" y="3" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="13" codval="" id="" pattern="1" hide_zero="" text="Partita IVA" />
 | 
			
		||||
  <field x="44" y="3" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="11" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="">"!IVA" 
 | 
			
		||||
GET_FIRM_DATA</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="160" y="3" deactivated="" type="Array" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="30" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>TIPOCONTI</source>
 | 
			
		||||
   <list>
 | 
			
		||||
    <li Value="Tutti i conti" Code="1" />
 | 
			
		||||
    <li Value="Tutti i conti movimentati" Code="2" />
 | 
			
		||||
    <li Value="I conto con saldo diverso da zero" Code="3" />
 | 
			
		||||
   </list>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="16" codval="" height="2" id="" pattern="1" hide_zero="" text="Conto" />
 | 
			
		||||
  <field border="1" x="16" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="12" codval="" height="2" id="" pattern="1" hide_zero="" text="Ultima data" />
 | 
			
		||||
  <field border="1" x="28" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="9" codval="" height="2" id="" pattern="1" hide_zero="" text="Ultimo numero" />
 | 
			
		||||
  <field border="1" x="37" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="52" codval="" height="2" id="" pattern="1" hide_zero="" text="Descrizione" />
 | 
			
		||||
  <field border="1" x="89" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="Saldo iniziale" />
 | 
			
		||||
  <field border="1" x="129" y="4" deactivated="" type="Testo" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="Progressivi del periodo" />
 | 
			
		||||
  <field border="1" x="169" y="4" deactivated="" type="Testo" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="21" codval="" height="2" id="" pattern="1" hide_zero="" text="Saldo finale" />
 | 
			
		||||
  <field border="1" x="89" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Dare" />
 | 
			
		||||
  <field border="1" x="109" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Avere" />
 | 
			
		||||
  <field border="1" x="129" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Dare" />
 | 
			
		||||
  <field border="1" x="149" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Avere" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="1" hidden="" page_break="" can_break="" pattern="1" />
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="2" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <groupby>GRUPPO</groupby>
 | 
			
		||||
  <prescript description="H2 PRESCRIPT">MESSAGE_RESET #F2.101
 | 
			
		||||
MESSAGE_RESET #F2.102
 | 
			
		||||
MESSAGE_RESET #F2.103
 | 
			
		||||
MESSAGE_RESET #F2.104
 | 
			
		||||
MESSAGE_RESET #F2.105
 | 
			
		||||
MESSAGE_RESET #F2.106</prescript>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="3" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <groupby>GRUPPO+CONTO</groupby>
 | 
			
		||||
  <prescript description="H3 PRESCRIPT">MESSAGE_RESET #F3.101
 | 
			
		||||
MESSAGE_RESET #F3.102
 | 
			
		||||
MESSAGE_RESET #F3.103
 | 
			
		||||
MESSAGE_RESET #F3.104
 | 
			
		||||
MESSAGE_RESET #F3.105
 | 
			
		||||
MESSAGE_RESET #F3.106</prescript>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Body" level="" hidden="" page_break="" can_break="" pattern="1" />
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Body" level="1" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <prescript description="B1 PRESCRIPT">MESSAGE_RESET F3</prescript>
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DESCR</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="190" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="89" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOINIDARE</source>
 | 
			
		||||
   <postscript description="B1.101 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.101
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="109" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOINIAVERE</source>
 | 
			
		||||
   <postscript description="B1.102 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.102
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="129" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>PDARE</source>
 | 
			
		||||
   <postscript description="B1.103 POSTSCRIPT">#THIS @
 | 
			
		||||
 #F3.103
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOFIN</source>
 | 
			
		||||
   <prescript description="B1.105 PRESCRIPT">#THIS @
 | 
			
		||||
0
 | 
			
		||||
C;
 | 
			
		||||
IF
 | 
			
		||||
"A"
 | 
			
		||||
#106 !
 | 
			
		||||
0
 | 
			
		||||
#THIS @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
ELSE
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
E;
 | 
			
		||||
IF
 | 
			
		||||
"D"
 | 
			
		||||
#106 !
 | 
			
		||||
ELSE
 | 
			
		||||
""
 | 
			
		||||
#106 !
 | 
			
		||||
THEN
 | 
			
		||||
THEN
 | 
			
		||||
</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="188.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="1" codval="" id="106" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="1" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="201" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>GRUPPO</source>
 | 
			
		||||
   <postscript description="B1.201 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.201 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="5" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="202" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>CONTO</source>
 | 
			
		||||
   <postscript description="B1.202 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.202 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="9" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="6" codval="" id="203" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>SOTTOCONTO</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="17" deactivated="" type="Data" hidden="" link="" dynamic_height="" shade_offset="" width="10" codval="" id="204" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DATAULMOV</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="149" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="204" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>PAVERE</source>
 | 
			
		||||
   <postscript description="B1.204 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.104
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="29" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="7" codval="" id="205" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>NUMULTMOV</source>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" y="48" keep_with_next="" deactivated="" hidden_if_needed="1" type="Foot" level="" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="190" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" y="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" width="190" codval="" height="0" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="1" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="TOTALE GENERALE" />
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="190" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" y="1" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="TOTALE GENERALI CON SALDI INIZIALI" />
 | 
			
		||||
  <field border="1" y="2" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" width="190" codval="" height="0" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="89" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="109" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="129" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="149" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="104" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F1.105 PRESCRIPT">#101 @
 | 
			
		||||
#102 @
 | 
			
		||||
-
 | 
			
		||||
#103 @
 | 
			
		||||
+
 | 
			
		||||
#104 @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
C;
 | 
			
		||||
IF
 | 
			
		||||
"A"
 | 
			
		||||
#106 !
 | 
			
		||||
0
 | 
			
		||||
#THIS @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
ELSE
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
E;
 | 
			
		||||
IF 
 | 
			
		||||
"D"
 | 
			
		||||
#106 !
 | 
			
		||||
ELSE
 | 
			
		||||
""
 | 
			
		||||
#THIS !
 | 
			
		||||
THEN
 | 
			
		||||
THEN</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="188.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="1" codval="" id="106" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="129" y="1" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="203" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F1.203 PRESCRIPT">#101 @
 | 
			
		||||
#103 @
 | 
			
		||||
+
 | 
			
		||||
#THIS !</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="149" y="1" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="204" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F1.204 PRESCRIPT">#102 @
 | 
			
		||||
#104 @
 | 
			
		||||
+
 | 
			
		||||
#THIS !</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="2" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="F2.0 PRESCRIPT">MESSAGE ISAMREAD,19,GRUPPO=#201,DESCR</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="190" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="90" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.101 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.101
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="110" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.102 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.102
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="130" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.103 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.103
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="150" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="104" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.104 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.104
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F2.105 PRESCRIPT">#101 @
 | 
			
		||||
#102 @
 | 
			
		||||
-
 | 
			
		||||
#103 @
 | 
			
		||||
+
 | 
			
		||||
#104 @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
C;
 | 
			
		||||
IF
 | 
			
		||||
"A"
 | 
			
		||||
#106 !
 | 
			
		||||
0
 | 
			
		||||
#THIS @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
ELSE
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
E;
 | 
			
		||||
IF
 | 
			
		||||
"D"
 | 
			
		||||
#106 !
 | 
			
		||||
ELSE
 | 
			
		||||
""
 | 
			
		||||
#THIS !
 | 
			
		||||
THEN
 | 
			
		||||
THEN</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="188.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="1" codval="" id="106" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="1" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="201" pattern="1" hide_zero="1" text="" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="3" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="F3.0 PRESCRIPT">MESSAGE ISAMREAD,19,GRUPPO=#201!CONTO=#202,DESCR</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="190" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="89" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.101 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.101
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="109" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.102 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.102
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="130" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.103 POSTSCRIPT">#THIS @
 | 
			
		||||
 #F2.103
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="150" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="104" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.104 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.104
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F3.105 PRESCRIPT">#101 @
 | 
			
		||||
#102 @
 | 
			
		||||
-
 | 
			
		||||
#103 @
 | 
			
		||||
+
 | 
			
		||||
#104 @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
C;
 | 
			
		||||
IF
 | 
			
		||||
"A"
 | 
			
		||||
#106 !
 | 
			
		||||
0
 | 
			
		||||
#THIS @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
ELSE
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
E;
 | 
			
		||||
IF
 | 
			
		||||
"D"
 | 
			
		||||
#106 !
 | 
			
		||||
ELSE
 | 
			
		||||
""
 | 
			
		||||
#106 !
 | 
			
		||||
THEN
 | 
			
		||||
THEN</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="188.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="1" codval="" id="106" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="1" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="201" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <postscript description="F3.201 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.201 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="5" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="202" pattern="1" hide_zero="1" text="" />
 | 
			
		||||
 </section>
 | 
			
		||||
</report>
 | 
			
		||||
							
								
								
									
										338
									
								
								src/cg/cg1500c.rep
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										338
									
								
								src/cg/cg1500c.rep
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,338 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" ?>
 | 
			
		||||
<report libraries="" page_merge="" save_printer="" name="cg1500c" use_printer_font="" orientation="2" page_split="" lpi="6" command="cg1 -4" class="cg1500b">
 | 
			
		||||
 <description>Stampa bilancio di verifica estesa</description>
 | 
			
		||||
 <font face="Arial" size="7" />
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field deactivated="" type="Stringa" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="209" codval="" height="1.5" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <font face="Arial" bold="1" size="14" />
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"Stampa Bilancio di verifica" 
 | 
			
		||||
#CODES @
 | 
			
		||||
0
 | 
			
		||||
C;E;
 | 
			
		||||
IF
 | 
			
		||||
" esercizio  "
 | 
			
		||||
+
 | 
			
		||||
#CODES @
 | 
			
		||||
+
 | 
			
		||||
THEN
 | 
			
		||||
#THIS !
 | 
			
		||||
</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="1" hide_zero="" text="Ditta" />
 | 
			
		||||
  <field x="3.5" deactivated="" type="Numero" valign="center" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>#SYSTEM.FIRM</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="9" deactivated="" type="Stringa" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>#SYSTEM.RAGSOC</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="179.5" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="2" hide_zero="" text="Data">
 | 
			
		||||
   <font italic="1" face="Courier New" bold="1" size="8" />
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="187.5" deactivated="" type="Data" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="11" codval="" id="" pattern="2" hide_zero="" text="">
 | 
			
		||||
   <source>#SYSTEM.DATE</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="199" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="2" hide_zero="" text="Pag.">
 | 
			
		||||
   <font italic="1" face="Courier New" bold="1" size="8" />
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="204" deactivated="" type="Numero" valign="center" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="2" hide_zero="" text="">
 | 
			
		||||
   <source>#PAGE</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="9" y="1" deactivated="" type="Stringa" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"!INDIR" 
 | 
			
		||||
GET_FIRM_DATA  </prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="179.5" y="1" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="3" codval="" id="" pattern="1" hide_zero="" text="Dal" />
 | 
			
		||||
  <field x="195.5" y="1" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="3" codval="" id="" pattern="1" hide_zero="" text="Al" />
 | 
			
		||||
  <field x="199" y="1" deactivated="" type="Data" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="10" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DATALIM</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field y="2" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Codice fiscale" />
 | 
			
		||||
  <field x="15" y="2" deactivated="" type="Stringa" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="16" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"!CF" 
 | 
			
		||||
GET_FIRM_DATA  </prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="31.5" y="2" deactivated="" type="Testo" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="13" codval="" id="" pattern="1" hide_zero="" text="Partita IVA" />
 | 
			
		||||
  <field x="44" y="2" deactivated="" type="Stringa" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="11" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">"!IVA" 
 | 
			
		||||
GET_FIRM_DATA</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="179" y="2" deactivated="" type="Array" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="30" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>TIPOST</source>
 | 
			
		||||
   <list>
 | 
			
		||||
    <li Value="Per data limite" Code="1" />
 | 
			
		||||
    <li Value="All'ultima immissione" Code="2" />
 | 
			
		||||
   </list>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="179" y="3" deactivated="" type="Array" valign="center" hidden="" link="" dynamic_height="" shade_offset="" width="30" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>TIPOCONTI</source>
 | 
			
		||||
   <list>
 | 
			
		||||
    <li Value="Tutti i conti" Code="1" />
 | 
			
		||||
    <li Value="Tutti i conti movimentati" Code="2" />
 | 
			
		||||
    <li Value="I conto con saldo diverso da zero" Code="3" />
 | 
			
		||||
   </list>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="16" codval="" height="2" id="" pattern="1" hide_zero="" text="Conto" />
 | 
			
		||||
  <field border="1" x="16" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="12" codval="" height="2" id="" pattern="1" hide_zero="" text="Ultima data" />
 | 
			
		||||
  <field border="1" x="28" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="9" codval="" height="2" id="" pattern="1" hide_zero="" text="Ultimo numero" />
 | 
			
		||||
  <field border="1" x="37" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="52" codval="" height="2" id="" pattern="1" hide_zero="" text="Descrizione" />
 | 
			
		||||
  <field border="1" x="89" y="4" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="Saldo iniziale" />
 | 
			
		||||
  <field border="1" x="129" y="4" deactivated="" type="Testo" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="Progressivi del periodo" />
 | 
			
		||||
  <field border="1" x="169" y="4" deactivated="" type="Testo" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="Saldo finale" />
 | 
			
		||||
  <field border="1" x="89" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Dare" />
 | 
			
		||||
  <field border="1" x="109" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Avere" />
 | 
			
		||||
  <field border="1" x="129" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Dare" />
 | 
			
		||||
  <field border="1" x="149" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Avere" />
 | 
			
		||||
  <field border="1" x="169" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Dare" />
 | 
			
		||||
  <field border="1" x="189" y="5" deactivated="" type="Testo" valign="center" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="20" codval="" id="" pattern="1" hide_zero="" text="Avere" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="1" hidden="" page_break="" can_break="" pattern="1" />
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="2" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <groupby>GRUPPO</groupby>
 | 
			
		||||
  <prescript description="H2 PRESCRIPT">MESSAGE_RESET #F2.101
 | 
			
		||||
MESSAGE_RESET #F2.102
 | 
			
		||||
MESSAGE_RESET #F2.103
 | 
			
		||||
MESSAGE_RESET #F2.104
 | 
			
		||||
MESSAGE_RESET #F2.105
 | 
			
		||||
MESSAGE_RESET #F2.106</prescript>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="3" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <groupby>GRUPPO+CONTO</groupby>
 | 
			
		||||
  <prescript description="H3 PRESCRIPT">MESSAGE_RESET #F3.101
 | 
			
		||||
MESSAGE_RESET #F3.102
 | 
			
		||||
MESSAGE_RESET #F3.103
 | 
			
		||||
MESSAGE_RESET #F3.104
 | 
			
		||||
MESSAGE_RESET #F3.105
 | 
			
		||||
MESSAGE_RESET #F3.106</prescript>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Body" level="" hidden="" page_break="" can_break="" pattern="1" />
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Body" level="1" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <prescript description="B1 PRESCRIPT">MESSAGE_RESET F3</prescript>
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DESCR</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="189" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="209" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="89" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOINIDARE</source>
 | 
			
		||||
   <postscript description="B1.101 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.101
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="109" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOINIAVERE</source>
 | 
			
		||||
   <postscript description="B1.102 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.102
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="129" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>PDARE</source>
 | 
			
		||||
   <postscript description="B1.103 POSTSCRIPT">#THIS @
 | 
			
		||||
 #F3.103
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOFINDARE</source>
 | 
			
		||||
   <prescript description="B1.105 PRESCRIPT">#THIS @
 | 
			
		||||
0
 | 
			
		||||
C;
 | 
			
		||||
IF
 | 
			
		||||
"A"
 | 
			
		||||
#106 !
 | 
			
		||||
0
 | 
			
		||||
#THIS @
 | 
			
		||||
-
 | 
			
		||||
#THIS !
 | 
			
		||||
ELSE
 | 
			
		||||
#THIS @
 | 
			
		||||
0
 | 
			
		||||
E;
 | 
			
		||||
IF
 | 
			
		||||
"D"
 | 
			
		||||
#106 !
 | 
			
		||||
ELSE
 | 
			
		||||
""
 | 
			
		||||
#106 !
 | 
			
		||||
THEN
 | 
			
		||||
THEN
 | 
			
		||||
</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="189" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="106" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>SALDOFINAVERE</source>
 | 
			
		||||
   <postscript description="B1.106 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.106 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="1" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="201" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>GRUPPO</source>
 | 
			
		||||
   <postscript description="B1.201 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.201 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="5" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="202" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>CONTO</source>
 | 
			
		||||
   <postscript description="B1.202 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.202 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="9" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="6" codval="" id="203" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>SOTTOCONTO</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="17" deactivated="" type="Data" hidden="" link="" dynamic_height="" shade_offset="" width="10" codval="" id="204" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <source>DATAULMOV</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="149" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="204" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <source>PAVERE</source>
 | 
			
		||||
   <postscript description="B1.204 POSTSCRIPT">#THIS @
 | 
			
		||||
#F3.104
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="29" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="7" codval="" id="205" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <source>NUMULTMOV</source>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" y="48" keep_with_next="" deactivated="" hidden_if_needed="1" type="Foot" level="" hidden="" height="1" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="189" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="209" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" y="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" width="209" codval="" height="0" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="1" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="TOTALE GENERALE" />
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="189" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="209" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" height="2" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" y="1" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="TOTALE GENERALI CON SALDI INIZIALI" />
 | 
			
		||||
  <field border="1" y="2" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" width="209" codval="" height="0" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="89" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="109" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="129" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="149" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="104" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="189" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="106" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="">#THIS @
 | 
			
		||||
#F2.106 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="129" y="1" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="203" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F1.203 PRESCRIPT">#101 @
 | 
			
		||||
#103 @
 | 
			
		||||
+
 | 
			
		||||
#THIS !</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="149" y="1" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="204" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <prescript description="F1.204 PRESCRIPT">#102 @
 | 
			
		||||
#104 @
 | 
			
		||||
+
 | 
			
		||||
#THIS !</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="2" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="F2.0 PRESCRIPT">MESSAGE ISAMREAD,19,GRUPPO=#201,DESCR</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="189" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="209" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="90" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.101 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.101
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="110" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.102 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.102
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="130" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.103 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.103
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="150" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="104" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.104 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.104
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="189" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="106" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F2.106 POSTSCRIPT">#THIS @
 | 
			
		||||
#F1.106 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="1" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="201" pattern="1" hide_zero="1" text="" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="3" hidden="" page_break="" can_break="" pattern="1">
 | 
			
		||||
  <field border="1" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="16" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="28" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="37" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="38" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
 | 
			
		||||
   <prescript description="F3.0 PRESCRIPT">MESSAGE ISAMREAD,19,GRUPPO=#201!CONTO=#202,DESCR</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="1" x="89" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="109" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="129" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="149" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="169" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="189" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field border="1" x="209" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" codval="" id="" pattern="1" hide_zero="" text="" />
 | 
			
		||||
  <field x="89" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="101" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.101 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.101
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="109" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="102" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.102 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.102
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="130" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="103" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.103 POSTSCRIPT">#THIS @
 | 
			
		||||
 #F2.103
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="150" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="18" codval="" id="104" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.104 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.104
 | 
			
		||||
+!</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="169" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="105" pattern="1" hide_zero="1" text="###.###.###,@@" />
 | 
			
		||||
  <field x="189" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="19" codval="" id="106" pattern="1" hide_zero="1" text="###.###.###,@@">
 | 
			
		||||
   <postscript description="F3.106 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.106 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="1" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="201" pattern="1" hide_zero="1" text="">
 | 
			
		||||
   <postscript description="F3.201 POSTSCRIPT">#THIS @
 | 
			
		||||
#F2.201 !</postscript>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="5" deactivated="" type="Numero" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="3" codval="" id="202" pattern="1" hide_zero="1" text="" />
 | 
			
		||||
 </section>
 | 
			
		||||
</report>
 | 
			
		||||
							
								
								
									
										745
									
								
								src/cg/cg1501.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										745
									
								
								src/cg/cg1501.cpp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,745 @@
 | 
			
		||||
// Stampa bilanci avanzata
 | 
			
		||||
 | 
			
		||||
#include <progind.h>
 | 
			
		||||
#include <utility.h>
 | 
			
		||||
 | 
			
		||||
#include <mov.h>
 | 
			
		||||
#include <rmov.h>
 | 
			
		||||
#include <rmoviva.h>
 | 
			
		||||
#include <pconti.h>
 | 
			
		||||
#include <comuni.h>
 | 
			
		||||
#include <clifo.h> 
 | 
			
		||||
#include <attiv.h>
 | 
			
		||||
#include <causali.h>
 | 
			
		||||
#include <saldi.h>
 | 
			
		||||
#include <nditte.h>
 | 
			
		||||
#include <anagr.h>
 | 
			
		||||
 | 
			
		||||
#include "cg1500.h"                      
 | 
			
		||||
#include "cg1501.h"  
 | 
			
		||||
#include "cglib.h"
 | 
			
		||||
 | 
			
		||||
const TString & TBilancio_mask::get_report_class() const
 | 
			
		||||
{
 | 
			
		||||
	TReport_select * rs = efield(DLG_REPORT).reportsel();
 | 
			
		||||
 | 
			
		||||
	return rs->get_report_class();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TBilancio_mask::set_report_class(const char * classname)
 | 
			
		||||
{
 | 
			
		||||
	TReport_select * rs = efield(DLG_REPORT).reportsel();
 | 
			
		||||
 | 
			
		||||
	if (rs != nullptr)
 | 
			
		||||
		rs->set_report_class(classname);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TBilancio_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
 | 
			
		||||
{
 | 
			
		||||
	switch (o.dlg())
 | 
			
		||||
	{
 | 
			
		||||
		case F_BILANCIO:
 | 
			
		||||
			if (e == fe_init)
 | 
			
		||||
			{
 | 
			
		||||
				const int bilancio = get_int(F_BILANCIO);
 | 
			
		||||
 | 
			
		||||
				if (bilancio == SEZIONI_CONTRAPPOSTE)
 | 
			
		||||
					set_report_class("cg1500a");
 | 
			
		||||
				else
 | 
			
		||||
					set_report_class("cg1500b");
 | 
			
		||||
			}
 | 
			
		||||
			else
 | 
			
		||||
				if (e == fe_modify)
 | 
			
		||||
				{
 | 
			
		||||
					const int anno = get_int(F_ANNO);
 | 
			
		||||
					const int bilancio = get_int(F_BILANCIO);
 | 
			
		||||
					const int tipo_stampa = get_int(F_STAMPA);
 | 
			
		||||
					const TDate datalim = get_date(F_DATALIM);
 | 
			
		||||
					TDate data;
 | 
			
		||||
 | 
			
		||||
					enable_page(1, bilancio != 1);
 | 
			
		||||
					if (esercizi().exist(datalim))
 | 
			
		||||
						data = esercizio(datalim).fine();
 | 
			
		||||
					o.mask().show(F_DATAINI, bilancio == 2 && tipo_stampa == 1);
 | 
			
		||||
					o.mask().show(F_QUADRATURA, bilancio == 2 && tipo_stampa == 1 && data == datalim);
 | 
			
		||||
					if (bilancio == SEZIONI_CONTRAPPOSTE)
 | 
			
		||||
						set_report_class("cg1500a");
 | 
			
		||||
					else
 | 
			
		||||
						set_report_class("cg1500b");
 | 
			
		||||
				}
 | 
			
		||||
			break;
 | 
			
		||||
		case F_STAMPA:
 | 
			
		||||
			if (e == fe_modify)
 | 
			
		||||
			{
 | 
			
		||||
				const int verifica = get_int(F_VERIFICA);
 | 
			
		||||
 | 
			
		||||
				o.mask().show(F_SITUAZIONE, verifica == 3);
 | 
			
		||||
				o.mask().show(F_STAMPAC, verifica == 3);
 | 
			
		||||
				o.mask().show(F_ORDINAMENTO, verifica == 3);
 | 
			
		||||
				o.mask().show(F_STAMPAV, verifica != 3);
 | 
			
		||||
			}
 | 
			
		||||
			break;
 | 
			
		||||
		case F_DATALIM:
 | 
			
		||||
			if (e == fe_close)
 | 
			
		||||
			{
 | 
			
		||||
				const int anno = get_int(F_ANNO);
 | 
			
		||||
				const int bilancio = get_int(F_BILANCIO);
 | 
			
		||||
				const TDate data = get_date(F_DATALIM);
 | 
			
		||||
 | 
			
		||||
				if (anno != 0)
 | 
			
		||||
				{
 | 
			
		||||
					if (data.ok())
 | 
			
		||||
					{
 | 
			
		||||
						if (!esercizi().exist(data) || (esercizio(data).codice() != anno))
 | 
			
		||||
							return o.error_box(TR("La data limite deve appartenere all'esercizio indicato"));
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				else //anno == 0
 | 
			
		||||
				{
 | 
			
		||||
					if (!data.ok())
 | 
			
		||||
						return o.error_box(TR("La data limite e' obbligatoria"));
 | 
			
		||||
					if (!esercizi().exist(data))
 | 
			
		||||
						return o.error_box(TR("La data limite deve appartenere ad un esercizio attivo della ditta"));
 | 
			
		||||
				}
 | 
			
		||||
				if (get_date(F_DATALIM) < get_date(F_DATAINI))
 | 
			
		||||
					return o.error_box(TR("La data limite deve essere maggiore o uguale alla data iniziale"));
 | 
			
		||||
			}
 | 
			
		||||
			break;
 | 
			
		||||
		case F_DATAINI:
 | 
			
		||||
			if (e == fe_close)
 | 
			
		||||
			{
 | 
			
		||||
				const int anno = get_int(F_ANNO);
 | 
			
		||||
				int bilancio = get_int(F_BILANCIO);
 | 
			
		||||
				TDate data = o.get_date();
 | 
			
		||||
 | 
			
		||||
				if (anno != 0)
 | 
			
		||||
				{
 | 
			
		||||
					if (data.ok())
 | 
			
		||||
					{
 | 
			
		||||
						if (!esercizi().exist(data) || (esercizio(data).codice() != anno))
 | 
			
		||||
							return o.error_box(TR("La data iniziale deve appartenere all'esercizio indicato"));
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				else //anno == 0
 | 
			
		||||
				{
 | 
			
		||||
					const TDate datalim = get_date(F_DATALIM);
 | 
			
		||||
 | 
			
		||||
					if (!data.ok() && datalim.ok() && esercizi().exist(datalim))
 | 
			
		||||
						o.mask().set(F_DATAINI, data = esercizio(datalim).inizio());
 | 
			
		||||
					if (!data.ok())
 | 
			
		||||
						return o.error_box(TR("La data limite e' obbligatoria"));
 | 
			
		||||
					if (!esercizi().exist(data))
 | 
			
		||||
						return o.error_box(TR("La data limite deve appartenere ad un esercizio attivo della ditta"));
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			break;
 | 
			
		||||
		case F_ANNO:
 | 
			
		||||
			if (e == fe_close)
 | 
			
		||||
			{
 | 
			
		||||
				const int tipo_stampa = get_int(F_STAMPA);
 | 
			
		||||
				const int anno = get_int(F_ANNO);
 | 
			
		||||
 | 
			
		||||
				if (tipo_stampa == 2 && anno == 0)
 | 
			
		||||
					return o.error_box(TR("Indicare l'anno di esercizio"));
 | 
			
		||||
			}
 | 
			
		||||
			else
 | 
			
		||||
				if (e == fe_modify)
 | 
			
		||||
				{
 | 
			
		||||
					const int tipo_stampa = get_int(F_STAMPA);
 | 
			
		||||
					const int anno = get_int(F_ANNO);
 | 
			
		||||
					const int bilancio = get_int(F_BILANCIO);
 | 
			
		||||
					const TDate datalim = get_date(F_DATALIM);
 | 
			
		||||
					TDate data;
 | 
			
		||||
 | 
			
		||||
					if (esercizi().exist(datalim))
 | 
			
		||||
						data = esercizio(datalim).fine();
 | 
			
		||||
					enable_page(1, bilancio != 1);
 | 
			
		||||
					show(F_DATAINI, bilancio == 2 && tipo_stampa == 1);
 | 
			
		||||
					show(F_QUADRATURA, bilancio == 2 && tipo_stampa == 1 && data == datalim);
 | 
			
		||||
				}
 | 
			
		||||
			break;
 | 
			
		||||
	}
 | 
			
		||||
	return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TSezioni_contrapposte_recset::TSezioni_contrapposte_recset()
 | 
			
		||||
{
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_GRUPPO, 3, _intfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_CONTO, 3, _intfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_SOTTOCONTO, 6, _longfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_NUMULTMOV, 3, _longfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_DATAULMOV, 10, _datefld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_DESCR, 50, _alfafld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_FLAGSALINI, 1, _alfafld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_SALDO, 18, _realfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_PDARE, 18, _realfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_PAVERE, 18, _realfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_INDBIL, 1, _alfafld));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TVerifica_recset::move_to(TRecnotype pos)
 | 
			
		||||
{
 | 
			
		||||
	_curr = pos;
 | 
			
		||||
	return pos >= 0 && pos < items();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::calculate_saldo(const TRectype & rec)
 | 
			
		||||
{
 | 
			
		||||
	TTipo_data tipo_data;
 | 
			
		||||
 | 
			
		||||
	_last_conto.set(rec.get_int(PCN_GRUPPO), rec.get_int(PCN_CONTO), rec.get_long(PCN_SOTTOCONTO));
 | 
			
		||||
	_last_indbil =_last_conto.indicatore_bilancio();
 | 
			
		||||
 | 
			
		||||
	if (_compcr)
 | 
			
		||||
		tipo_data = CostiRicavi;
 | 
			
		||||
	else
 | 
			
		||||
		if (_esercizio == 0)
 | 
			
		||||
			tipo_data = Registrazione;
 | 
			
		||||
		else
 | 
			
		||||
			tipo_data = Competenza;
 | 
			
		||||
	if (_contsep.full())
 | 
			
		||||
		_last_saldo.saldo_cont_sep(tipo_data, _last_conto.gruppo(), _last_conto.conto(), _last_conto.sottoconto(), _esercizio, _datalim, _last_indbil, _contsep, _tipi_mov);
 | 
			
		||||
	else
 | 
			
		||||
	{
 | 
			
		||||
		if (_tipo_data == ULTIMA_IMMISSIONE)
 | 
			
		||||
			_last_saldo.ultima_immissione_verifica(_esercizio, _last_conto.gruppo(), _last_conto.conto(), _last_conto.sottoconto(), _last_indbil, _tipi_mov);
 | 
			
		||||
		else
 | 
			
		||||
			_last_saldo.saldo_periodo(tipo_data, _last_conto.gruppo(), _last_conto.conto(), _last_conto.sottoconto(), _dataini, _datalim, _last_indbil, _tipi_mov, true, _quadratura);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TVerifica_recset::select_conti(const TRectype & rec)
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	if (_tipo_ver == CLIENTI_FORNITORI && _sit_cf.full() && _sit_cf != _last_conto.tipo())
 | 
			
		||||
		return false;
 | 
			
		||||
	if (_tipo_ver == CLIENTI_FORNITORI && _tipo_ord == ORD_RAGSOC)
 | 
			
		||||
	{
 | 
			
		||||
		if (_sit_cf != _last_conto.tipo())
 | 
			
		||||
			return false;
 | 
			
		||||
		if (_last_conto.descrizione() < _da_descrizione.full() && _last_conto.descrizione() > _a_descrizione)
 | 
			
		||||
			return false;
 | 
			
		||||
	}
 | 
			
		||||
	if (_last_conto < _da_conto && _a_conto.ok() && _last_conto> _a_conto)
 | 
			
		||||
		return false;
 | 
			
		||||
	return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::update_record(const TRectype & rec)
 | 
			
		||||
{
 | 
			
		||||
	if (cli_for())
 | 
			
		||||
		_last_conto.set(0, 0, _last_conto.sottoconto());
 | 
			
		||||
	if (!show_clifo())
 | 
			
		||||
		_last_conto.set(_last_conto.gruppo(), _last_conto.conto(), 0);
 | 
			
		||||
 | 
			
		||||
	TString & key = _last_conto.keystr();
 | 
			
		||||
	const bool new_record = !exist_row(key);
 | 
			
		||||
	
 | 
			
		||||
	if (new_record)
 | 
			
		||||
		_righe.add(key, new TArray);
 | 
			
		||||
 | 
			
		||||
	TArray & row = (TArray &)_righe[key];
 | 
			
		||||
 | 
			
		||||
	if (new_record)
 | 
			
		||||
	{
 | 
			
		||||
		row.add(TString(format("%d", _last_conto.gruppo())), VER_GRUPPO);
 | 
			
		||||
		row.add(TString(format("%d", _last_conto.conto())), VER_CONTO);
 | 
			
		||||
		row.add(TString(format("%ld", _last_conto.sottoconto())), VER_SOTTOCONTO);
 | 
			
		||||
		row.add(EMPTY_STRING, VER_NUMULTMOV);
 | 
			
		||||
		row.add(EMPTY_STRING, VER_DATAULMOV);
 | 
			
		||||
		row.add(_last_conto.descrizione(), VER_DESCR);
 | 
			
		||||
		row.add(TString(format("%d",_last_conto.indicatore_bilancio())), VER_INDBIL);
 | 
			
		||||
		row.add(TString("D"), VER_FLAGSALINI);
 | 
			
		||||
		row.add(EMPTY_STRING, VER_SALDO);
 | 
			
		||||
		row.add(EMPTY_STRING, VER_PDARE);
 | 
			
		||||
		row.add(EMPTY_STRING, VER_PAVERE);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	TToken_string conto_key;
 | 
			
		||||
 | 
			
		||||
	conto_key.add(_esercizio);
 | 
			
		||||
	conto_key.add("");
 | 
			
		||||
	conto_key.add(_last_conto.gruppo());
 | 
			
		||||
	conto_key.add(_last_conto.conto());
 | 
			
		||||
	conto_key.add(_last_conto.sottoconto());
 | 
			
		||||
 | 
			
		||||
	const TRectype & saldo = cache().get(LF_SALDI, conto_key);
 | 
			
		||||
	const long ultmov = atol((TString &&)row[VER_NUMULTMOV]);
 | 
			
		||||
	const long new_ultmov = saldo.get_long(SLD_NUMULTMOV);
 | 
			
		||||
 | 
			
		||||
	if (ultmov < new_ultmov)
 | 
			
		||||
	{
 | 
			
		||||
		row.add(saldo.get(SLD_NUMULTMOV), VER_NUMULTMOV);
 | 
			
		||||
		row.add(saldo.get(SLD_DATAULMOV), VER_DATAULMOV);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	TImporto saldoini(((TString &)row[VER_FLAGSALINI])[0], real((TString &)row[VER_SALDO]));
 | 
			
		||||
	real prgdare((TString &)row[VER_PDARE]);
 | 
			
		||||
	real prgavere((TString &)row[VER_PAVERE]);
 | 
			
		||||
	TImporto salini('D', _last_saldo.saldoini());
 | 
			
		||||
	TString4 flagsalini;
 | 
			
		||||
	
 | 
			
		||||
	saldoini += salini;
 | 
			
		||||
	saldoini.normalize();
 | 
			
		||||
	flagsalini << saldoini.sezione();
 | 
			
		||||
	prgdare += _last_saldo.prgdare();
 | 
			
		||||
	prgavere += _last_saldo.prgavere();
 | 
			
		||||
 | 
			
		||||
	row.add(flagsalini, VER_FLAGSALINI);
 | 
			
		||||
	row.add(TString(saldoini.valore().string()), VER_SALDO);
 | 
			
		||||
	row.add(TString(prgdare.string()), VER_PDARE);
 | 
			
		||||
	row.add(TString(prgavere.string()), VER_PAVERE);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//metodi principali di riempimento degli array da mandare in stampa
 | 
			
		||||
void TVerifica_recset::scan_clifor(const TRectype & rec)
 | 
			
		||||
{
 | 
			
		||||
	TCursor clifor(new TRelation(LF_CLIFO));
 | 
			
		||||
	TRectype reccf(rec);
 | 
			
		||||
	TRectype from(clifor.curr());
 | 
			
		||||
 | 
			
		||||
	from.zero();
 | 
			
		||||
	from.put(CLI_TIPOCF, rec.get(PCN_TMCF));
 | 
			
		||||
 | 
			
		||||
	TRectype to(from);
 | 
			
		||||
 | 
			
		||||
	clifor.setregion(from, to);
 | 
			
		||||
 | 
			
		||||
	const TRecnotype items = clifor.items();
 | 
			
		||||
	TProgress_monitor p(items, "Lettura saldi Clienti/Fornitori");
 | 
			
		||||
 | 
			
		||||
	for (clifor = 0L; p.addstatus() && clifor.pos() < items; ++clifor)
 | 
			
		||||
	{
 | 
			
		||||
		reccf.put(PCN_SOTTOCONTO, clifor.curr().get(CLI_CODCF));
 | 
			
		||||
		reccf.put(PCN_DESCR, clifor.curr().get(CLI_RAGSOC));
 | 
			
		||||
		calculate_saldo(reccf);
 | 
			
		||||
		if (select_conti(reccf))
 | 
			
		||||
			update_record(reccf);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::rebuild()
 | 
			
		||||
{
 | 
			
		||||
	TCursor conti(new TRelation(LF_PCON));
 | 
			
		||||
	const TRecnotype items = conti.items();
 | 
			
		||||
	TProgress_monitor p(items, "Lettura saldi");
 | 
			
		||||
 | 
			
		||||
	_righe.destroy();
 | 
			
		||||
	_index.destroy();
 | 
			
		||||
	for (conti = 0L; p.addstatus() && conti.pos() < items; ++conti)
 | 
			
		||||
	{
 | 
			
		||||
		const TString tipocf = conti.curr().get(PCN_TMCF);
 | 
			
		||||
 | 
			
		||||
		if (tipocf.full())
 | 
			
		||||
			scan_clifor(conti.curr());
 | 
			
		||||
		else
 | 
			
		||||
			if (conti.curr().get_long(PCN_SOTTOCONTO) != 0L)
 | 
			
		||||
			{
 | 
			
		||||
				calculate_saldo(conti.curr());
 | 
			
		||||
				if (select_conti(conti.curr()))
 | 
			
		||||
					update_record(conti.curr());
 | 
			
		||||
			}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
HIDDEN int compare_descr(const TObject** d1, const TObject** d2)
 | 
			
		||||
{
 | 
			
		||||
	TString * desc1 = (TString *)*d1;
 | 
			
		||||
	TString * desc2 = (TString *)*d2;
 | 
			
		||||
 | 
			
		||||
	return desc1->compare(*desc2);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
HIDDEN int compare_conto(const TObject** c1, const TObject** c2)
 | 
			
		||||
{
 | 
			
		||||
	TString * conto1 = (TString *)*c1;
 | 
			
		||||
	TString * conto2 = (TString *)*c2;
 | 
			
		||||
 | 
			
		||||
	return conto1->compare(*conto2);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::filter_rows()
 | 
			
		||||
{
 | 
			
		||||
	TString_array keys;
 | 
			
		||||
 | 
			
		||||
	FOR_EACH_ASSOC_OBJECT(_righe, obj, key, item)
 | 
			
		||||
	{
 | 
			
		||||
		TArray & row = (TArray &)*item;
 | 
			
		||||
		if (_tipo_saldo_ver == SALDO_NOT_ZERO)
 | 
			
		||||
		{
 | 
			
		||||
			real saldo = (TString &) row[VER_SALDO];
 | 
			
		||||
 | 
			
		||||
			if (atoi((TString &)row[VER_GRUPPO]) == 3 &&
 | 
			
		||||
				atoi((TString &)row[VER_CONTO]) == 130)
 | 
			
		||||
			{
 | 
			
		||||
				const long cod = atol((TString &)row[VER_SOTTOCONTO]);
 | 
			
		||||
 | 
			
		||||
				if (cod < 46L)
 | 
			
		||||
					int i = 1;
 | 
			
		||||
			}
 | 
			
		||||
			if ((TString &)row[VER_FLAGSALINI] == "A")
 | 
			
		||||
				saldo = -saldo;
 | 
			
		||||
			saldo += real((TString &)row[VER_PDARE]);
 | 
			
		||||
			saldo -= real((TString &)row[VER_PAVERE]);
 | 
			
		||||
			if (saldo == ZERO)
 | 
			
		||||
				keys.add(key);
 | 
			
		||||
		}
 | 
			
		||||
		else
 | 
			
		||||
			if (_tipo_saldo_ver == MOVIMENTATO)
 | 
			
		||||
			{
 | 
			
		||||
				const TString num = (TString &)row[VER_NUMULTMOV];
 | 
			
		||||
 | 
			
		||||
				if (num.blank())
 | 
			
		||||
					keys.add(key);
 | 
			
		||||
			}
 | 
			
		||||
	}
 | 
			
		||||
	FOR_EACH_ARRAY_ROW(keys, r, k)
 | 
			
		||||
		_righe.remove(*k);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::update_index()
 | 
			
		||||
{
 | 
			
		||||
	if (cli_for() && _tipo_ord == ORD_RAGSOC)
 | 
			
		||||
	{
 | 
			
		||||
		FOR_EACH_ASSOC_OBJECT(_righe, obj, key, item)
 | 
			
		||||
		{
 | 
			
		||||
			TArray & row = (TArray &)*item;
 | 
			
		||||
			TToken_string rowkey((TString &)row[VER_DESCR]);
 | 
			
		||||
 | 
			
		||||
			rowkey.rpad(50);
 | 
			
		||||
			TString conto = format("%03d%03d%06ld", (const char *)((TString &)row[VER_GRUPPO]), 
 | 
			
		||||
				                                      (const char *)((TString &)row[VER_CONTO]),
 | 
			
		||||
																					    (const char *)(TString &)row[VER_SOTTOCONTO]);
 | 
			
		||||
			rowkey.add(conto);
 | 
			
		||||
			_index.add(rowkey);
 | 
			
		||||
		}
 | 
			
		||||
		_index.sort(compare_descr);
 | 
			
		||||
		FOR_EACH_ARRAY_ITEM(_index, r, obj)
 | 
			
		||||
		{
 | 
			
		||||
			TToken_string & rowkey = (TToken_string &)*obj;
 | 
			
		||||
 | 
			
		||||
			rowkey = rowkey.get(1);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	else
 | 
			
		||||
	{
 | 
			
		||||
		FOR_EACH_ASSOC_OBJECT(_righe, obj, key, item)
 | 
			
		||||
		{
 | 
			
		||||
			TArray & row = (TArray &)*item;
 | 
			
		||||
			int gruppo = atoi(((TString &)row[VER_GRUPPO]));
 | 
			
		||||
			int conto = atoi(((TString &)row[VER_CONTO]));
 | 
			
		||||
			long sottoconto = atol((TString &)row[VER_SOTTOCONTO]);
 | 
			
		||||
			TString key = format("%03d%03d%06ld", gruppo, conto, sottoconto);
 | 
			
		||||
 | 
			
		||||
			_index.add(key);
 | 
			
		||||
		}
 | 
			
		||||
		_index.sort(compare_conto);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::requery()
 | 
			
		||||
{
 | 
			
		||||
	//***Metodo principale per la creazione della intera stampa***
 | 
			
		||||
	//Messo nella requery perchè sempre chiamata qualsiasi sia il tipo di stampa
 | 
			
		||||
	rebuild();
 | 
			
		||||
	filter_rows();
 | 
			
		||||
	update_index();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const TArray &  TVerifica_recset::get_row(TRecnotype row) const
 | 
			
		||||
{
 | 
			
		||||
	if (row < 0)
 | 
			
		||||
		row = _curr;
 | 
			
		||||
	return(TArray &)_righe[(const TString &)_index[row]];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const TVariant& TVerifica_recset::get(unsigned int column) const
 | 
			
		||||
{
 | 
			
		||||
	if (_curr >= 0 && _curr < items())
 | 
			
		||||
	{
 | 
			
		||||
		TVariant& var = get_tmp_var();
 | 
			
		||||
		const TArray & row = get_row();
 | 
			
		||||
 | 
			
		||||
		var.set((const TString &)row[column]);
 | 
			
		||||
		return var;
 | 
			
		||||
	}
 | 
			
		||||
	return NULL_VARIANT;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const TVariant& TVerifica_recset::get(const char* column_name) const
 | 
			
		||||
{
 | 
			
		||||
	if (_curr >= 0 && _curr < items())
 | 
			
		||||
	{
 | 
			
		||||
		const TFixed_string fld(column_name);
 | 
			
		||||
		int col = find_column(fld);
 | 
			
		||||
		TVariant& var = get_tmp_var();
 | 
			
		||||
	
 | 
			
		||||
		if (col >= 0)
 | 
			
		||||
		{
 | 
			
		||||
			const TArray & row = get_row();
 | 
			
		||||
 | 
			
		||||
			var.set((const TString &)row[col]);
 | 
			
		||||
		}
 | 
			
		||||
		else
 | 
			
		||||
			if (fld == "SALDOINIDARE")
 | 
			
		||||
			{
 | 
			
		||||
				TImporto saldo(get_string(SLD_FLAGSALINI)[0], get_real(SLD_SALDO));
 | 
			
		||||
 | 
			
		||||
				saldo.normalize('D');
 | 
			
		||||
				if (saldo.valore() >= ZERO)
 | 
			
		||||
					var = saldo.valore();
 | 
			
		||||
				else
 | 
			
		||||
					var = ZERO;
 | 
			
		||||
			}
 | 
			
		||||
			else
 | 
			
		||||
				if (fld == "SALDOINIAVERE")
 | 
			
		||||
				{
 | 
			
		||||
					TImporto saldo(get_string(SLD_FLAGSALINI)[0], get_real(SLD_SALDO));
 | 
			
		||||
 | 
			
		||||
					saldo.normalize('A');
 | 
			
		||||
					if (saldo.valore() >= ZERO)
 | 
			
		||||
						var = saldo.valore();
 | 
			
		||||
					else
 | 
			
		||||
						var = ZERO;
 | 
			
		||||
				}
 | 
			
		||||
				else
 | 
			
		||||
					if (fld == "SALDOFIN") // eliminare
 | 
			
		||||
					{
 | 
			
		||||
						TImporto saldo(get_string(SLD_FLAGSALINI)[0], get_real(SLD_SALDO));
 | 
			
		||||
				
 | 
			
		||||
						saldo += TImporto('D', get_real(SLD_PDARE));
 | 
			
		||||
						saldo += TImporto('A', get_real(SLD_PAVERE));
 | 
			
		||||
						saldo.normalize('D');
 | 
			
		||||
						var = saldo.valore();
 | 
			
		||||
					}
 | 
			
		||||
					else
 | 
			
		||||
						if (fld == "SALDOFINDARE")
 | 
			
		||||
						{
 | 
			
		||||
							TImporto saldo('D', get("SALDOFIN").as_real());
 | 
			
		||||
 | 
			
		||||
							saldo.normalize('D');
 | 
			
		||||
							if (saldo.valore() >= ZERO)
 | 
			
		||||
								var = saldo.valore();
 | 
			
		||||
							else
 | 
			
		||||
								var = ZERO;
 | 
			
		||||
						}
 | 
			
		||||
						else
 | 
			
		||||
							if (fld == "SALDOFINAVERE")
 | 
			
		||||
							{
 | 
			
		||||
								TImporto saldo('D', get("SALDOFIN").as_real());
 | 
			
		||||
 | 
			
		||||
								saldo.normalize('A');
 | 
			
		||||
								if (saldo.valore() >= ZERO)
 | 
			
		||||
									var = saldo.valore();
 | 
			
		||||
								else
 | 
			
		||||
									var = ZERO;
 | 
			
		||||
							}
 | 
			
		||||
							else
 | 
			
		||||
								if (fld == "DATAINI")
 | 
			
		||||
									var = _dataini.stringa();
 | 
			
		||||
								else
 | 
			
		||||
									if (fld == "DATALIM")
 | 
			
		||||
										var = _datalim.stringa();
 | 
			
		||||
									else
 | 
			
		||||
										if (fld == "TIPOST")
 | 
			
		||||
											var = _tipo_data;
 | 
			
		||||
										else
 | 
			
		||||
											if (fld == "TIPOCONTI")
 | 
			
		||||
												var = _tipo_saldo_ver;
 | 
			
		||||
											else
 | 
			
		||||
												if (fld == "#CODES")
 | 
			
		||||
													var = _esercizio;
 | 
			
		||||
				return var;
 | 
			
		||||
	}
 | 
			
		||||
	return NULL_VARIANT;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica_recset::set_filter(const TMask& msk)
 | 
			
		||||
{
 | 
			
		||||
	_esercizio = msk.get_int(F_ANNO);
 | 
			
		||||
	_tipo_data = msk.get_int(F_STAMPA);
 | 
			
		||||
	_dataini = msk.get_date(F_DATAINI);
 | 
			
		||||
	_datalim = msk.get_date(F_DATALIM);
 | 
			
		||||
	if (_esercizio != 0)
 | 
			
		||||
	{
 | 
			
		||||
		TDate datainiesc, datafinesc;
 | 
			
		||||
 | 
			
		||||
		esercizi().code2range(_esercizio, datainiesc, datafinesc);
 | 
			
		||||
		if (!_dataini.ok())
 | 
			
		||||
			_dataini = datainiesc;
 | 
			
		||||
		if (!_datalim.ok())
 | 
			
		||||
			_datalim = datafinesc;
 | 
			
		||||
	}
 | 
			
		||||
	_compcr = msk.get_bool(F_COMPCR);
 | 
			
		||||
	_quadratura = msk.get_bool(F_QUADRATURA);
 | 
			
		||||
	_st_saldo_zero = !msk.get_bool(F_SALDO);
 | 
			
		||||
	_tipi_mov =  msk.get_bool(F_NORMALI) ? 0x1 : 0;
 | 
			
		||||
	_tipi_mov |= msk.get_bool(F_PROVVM) ? 0x2 : 0;
 | 
			
		||||
	_tipi_mov |= msk.get_bool(F_PROVVB) ? 0x4 : 0; 
 | 
			
		||||
	_tipi_mov |= msk.get_bool(F_PROVVC) ? 0x8 : 0;
 | 
			
		||||
	_quad_gior = msk.get_bool(F_QUADRATURA);
 | 
			
		||||
	if (msk.find_by_id(F_CONTSEP))
 | 
			
		||||
		_contsep = msk.get(F_CONTSEP);
 | 
			
		||||
	else
 | 
			
		||||
		_contsep = "";
 | 
			
		||||
	_tipo_ver = msk.get_int(F_VERIFICA);
 | 
			
		||||
	_tipo_saldo_ver = msk.get_int(msk.field(F_STAMPAV).shown()  ? F_STAMPAV : F_STAMPAC);
 | 
			
		||||
	_show_clifo = !msk.get_bool(F_HIDE_CLIFO);
 | 
			
		||||
	_sit_cf = msk.get(F_SITUAZIONE);
 | 
			
		||||
	_tipo_ord = msk.get_int(F_ORDINAMENTO);
 | 
			
		||||
	_da_conto.set(msk.get_int(F_DA_GRUPPO), msk.get_int(F_DA_CONTO), msk.get_long(F_DA_SOTTOCONTO));
 | 
			
		||||
	_da_descrizione = msk.get(F_DA_DESCRIZIONE);
 | 
			
		||||
	_a_conto.set(msk.get_int(F_A_GRUPPO), msk.get_int(F_A_CONTO), msk.get_long(F_A_SOTTOCONTO));
 | 
			
		||||
	_a_descrizione = msk.get(F_A_DESCRIZIONE);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
HIDDEN const char * make_picture(int len, bool hide_points)
 | 
			
		||||
{
 | 
			
		||||
	TString & picture = get_tmp_string();
 | 
			
		||||
 | 
			
		||||
	len /= 100; // è in centesimi
 | 
			
		||||
	len -= 3;
 | 
			
		||||
	for (int i = 0; i < len; i++)
 | 
			
		||||
	{
 | 
			
		||||
		if (!hide_points && (i % 4 == 3) && i < len - 1)
 | 
			
		||||
			picture.insert(".");
 | 
			
		||||
		else
 | 
			
		||||
			picture.insert("#");
 | 
			
		||||
	}
 | 
			
		||||
	picture << ",@@";
 | 
			
		||||
 | 
			
		||||
	return picture;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TVerifica_recset::TVerifica_recset()
 | 
			
		||||
{
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_GRUPPO, 3, _intfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_CONTO, 3, _intfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_SOTTOCONTO, 6, _longfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_NUMULTMOV, 3, _longfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_DATAULMOV, 10, _datefld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_DESCR, 50, _alfafld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_FLAGSALINI, 1, _alfafld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_SALDO, 18, _realfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_PDARE, 18, _realfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(SLD_PAVERE, 18, _realfld));
 | 
			
		||||
	_colonne.add(TRecordset_column_info(PCN_INDBIL, 1, _alfafld));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void TVerifica::init()
 | 
			
		||||
{
 | 
			
		||||
	_tipo_ver = _mask.get_int(F_VERIFICA);
 | 
			
		||||
	_hide_points = _mask.get_bool(F_SEPARATOR);
 | 
			
		||||
 | 
			
		||||
	TReport_section * b1 = find_section('B', 1);
 | 
			
		||||
	TReport_section * f1 = find_section('F', 1);
 | 
			
		||||
	TReport_section * f2 = find_section('F', 2);
 | 
			
		||||
	TReport_section * f3 = find_section('F', 3);
 | 
			
		||||
	TReport_section * h2 = find_section('H', 2);
 | 
			
		||||
	TReport_section * h3 = find_section('H', 3);
 | 
			
		||||
 | 
			
		||||
	if (h2 != nullptr)
 | 
			
		||||
		h2->show(!cli_for());
 | 
			
		||||
	if (f2 != nullptr)
 | 
			
		||||
		f2->show(!cli_for());
 | 
			
		||||
	if (h3 != nullptr)
 | 
			
		||||
		h3->show(!mastro() && !cli_for());
 | 
			
		||||
	if (f3 != nullptr)
 | 
			
		||||
		f3->show(!mastro() && !cli_for());
 | 
			
		||||
	if (b1 != nullptr)
 | 
			
		||||
		b1->show(!mastro());
 | 
			
		||||
 | 
			
		||||
	const TString picture = make_picture(b1->find_field(101)->width(), _hide_points);
 | 
			
		||||
 | 
			
		||||
	for (int i = 101; i < 108; i++)
 | 
			
		||||
	{
 | 
			
		||||
		if (b1 != nullptr)
 | 
			
		||||
		{
 | 
			
		||||
			TReport_field * b1fld = b1->find_field(i);
 | 
			
		||||
 | 
			
		||||
			if (b1fld != nullptr && b1fld->is_valuta())
 | 
			
		||||
				b1fld->set_picture(picture);
 | 
			
		||||
		}
 | 
			
		||||
		if (f1 != nullptr)
 | 
			
		||||
		{
 | 
			
		||||
			TReport_field * f1fld = f1->find_field(i);
 | 
			
		||||
 | 
			
		||||
			if (f1fld != nullptr && f1fld->is_valuta())
 | 
			
		||||
			f1fld->set_picture(picture);
 | 
			
		||||
		}
 | 
			
		||||
		if (f2 != nullptr)
 | 
			
		||||
		{
 | 
			
		||||
			TReport_field * f2fld = f2->find_field(i);
 | 
			
		||||
 | 
			
		||||
			if (f2fld != nullptr && f2fld->is_valuta())
 | 
			
		||||
				f2fld->set_picture(picture);
 | 
			
		||||
		}
 | 
			
		||||
		if (f3 != nullptr)
 | 
			
		||||
		{
 | 
			
		||||
			TReport_field * f3fld = f3->find_field(i);
 | 
			
		||||
 | 
			
		||||
			if (f3fld != nullptr && f3fld->is_valuta())
 | 
			
		||||
				f3fld->set_picture(picture);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if (f1 != nullptr)
 | 
			
		||||
	{
 | 
			
		||||
		TReport_field * f1fld = f1->find_field(203);
 | 
			
		||||
 | 
			
		||||
		if (f1fld != nullptr && f1fld->is_valuta())
 | 
			
		||||
			f1fld->set_picture(picture);
 | 
			
		||||
	}
 | 
			
		||||
	if (f1 != nullptr)
 | 
			
		||||
	{
 | 
			
		||||
		TReport_field * f1fld = f1->find_field(204);
 | 
			
		||||
 | 
			
		||||
		if (f1fld != nullptr && f1fld->is_valuta())
 | 
			
		||||
			f1fld->set_picture(picture);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TTrec * TStampa_bilanci_avanzata::get_dbase_recdesc(TReport & rep, const TAutomask & mask)
 | 
			
		||||
{
 | 
			
		||||
	return new TTrec(LF_SALDI); // cambiare
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci_avanzata::user_destroy()
 | 
			
		||||
{
 | 
			
		||||
	safe_delete(_mask);
 | 
			
		||||
	safe_delete(_verifica_rep);
 | 
			
		||||
	safe_delete(_verifica_clifo_rep);
 | 
			
		||||
	safe_delete(_sezioni_contrapposte_rep);
 | 
			
		||||
	return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TReport & TStampa_bilanci_avanzata::get_report(const TAutomask & m)
 | 
			
		||||
{
 | 
			
		||||
	if (m.get_int(F_BILANCIO) == SEZIONI_CONTRAPPOSTE)
 | 
			
		||||
	{
 | 
			
		||||
		if (_sezioni_contrapposte_rep == nullptr)
 | 
			
		||||
			_sezioni_contrapposte_rep = new TSezioni_contrapposte((TBilancio_mask & )m);
 | 
			
		||||
		_sezioni_contrapposte_rep->load(report_name(m));
 | 
			
		||||
		_sezioni_contrapposte_rep->init();
 | 
			
		||||
		return (TReport &) *_sezioni_contrapposte_rep;
 | 
			
		||||
	}
 | 
			
		||||
	else
 | 
			
		||||
	{
 | 
			
		||||
		if (_verifica_rep == nullptr)
 | 
			
		||||
			_verifica_rep = new TVerifica((TBilancio_mask &)m);
 | 
			
		||||
		_verifica_rep->load(report_name(m));
 | 
			
		||||
		_verifica_rep->init();
 | 
			
		||||
		return (TReport &)*_verifica_rep;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TStampa_bilanci_avanzata::user_create()
 | 
			
		||||
{
 | 
			
		||||
#ifdef CONT_SEP
 | 
			
		||||
	_mask = new TBilancio_mask("np0300a");
 | 
			
		||||
#else
 | 
			
		||||
	_mask = new TBilancio_mask("cg1500ax");
 | 
			
		||||
#endif
 | 
			
		||||
	open_files(LF_CLIFO, LF_MOV, LF_RMOV, LF_COMUNI, LF_PCON, LF_SALDI, LF_NDITTE, LF_ANAG, LF_CAUSALI, 0);
 | 
			
		||||
	return true;
 | 
			
		||||
}
 | 
			
		||||
@ -1659,10 +1659,10 @@ bool TStampa_IVdirettiva::set_print(int)
 | 
			
		||||
    _stampacod        = _msk->get_bool(F_STAMPACOD);
 | 
			
		||||
    _stampa_modulo    = _msk->get_bool(F_STAMPAMODULO);
 | 
			
		||||
    _tipo_bilancio    = _msk->get_int(F_TIPOBIL);
 | 
			
		||||
		_stampa_mov_prov  = _msk->get_bool(F_NORMALI) ? 0x1 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov |= _msk->get_bool(F_PROVVM) ? 0x2 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov |= _msk->get_bool(F_PROVVB) ? 0x4 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov |= _msk->get_bool(F_PROVVC) ? 0x8 : 0; // qui
 | 
			
		||||
		_stampa_mov_prov  = _msk->get_bool(F_NORMALI) ? 0x1 : 0;
 | 
			
		||||
		_stampa_mov_prov |= _msk->get_bool(F_PROVVM) ? 0x2 : 0;
 | 
			
		||||
		_stampa_mov_prov |= _msk->get_bool(F_PROVVB) ? 0x4 : 0;
 | 
			
		||||
		_stampa_mov_prov |= _msk->get_bool(F_PROVVC) ? 0x8 : 0;
 | 
			
		||||
		_quadratura       = _msk->get_bool(F_QUADRATURA);
 | 
			
		||||
    _noseparator      = _msk->get_bool(F_SEPARATOR);
 | 
			
		||||
		_tipo_data = (_annoese == 0 ? Registrazione : (_msk->get_bool(F_COMPCR) ? CostiRicavi : Competenza));
 | 
			
		||||
 | 
			
		||||
@ -447,6 +447,7 @@ class TBill : public TSortable
 | 
			
		||||
  int _tipo_cr;            // Tipo costo/ricavo
 | 
			
		||||
  char _sezione;
 | 
			
		||||
  bool _sospeso;
 | 
			
		||||
	int _indbil;
 | 
			
		||||
  
 | 
			
		||||
protected:           
 | 
			
		||||
  void set_description(const char* d);
 | 
			
		||||
@ -493,6 +494,8 @@ public:
 | 
			
		||||
  long sottoconto() const { return _sottoconto; }
 | 
			
		||||
  long codclifo() const { return _sottoconto; }
 | 
			
		||||
  long& codclifo() { return _sottoconto; }
 | 
			
		||||
	TToken_string & key() const;
 | 
			
		||||
	TString & keystr() const;
 | 
			
		||||
  
 | 
			
		||||
  bool find();
 | 
			
		||||
  const TString& descrizione() const;
 | 
			
		||||
@ -634,7 +637,7 @@ public:
 | 
			
		||||
	bool ultima_immissione_bilancio(int annoes, int g, int c, long s, int indbil, int provv = 0x1, bool saldo_chiusura = true);
 | 
			
		||||
	bool ultima_immissione_verifica(int annoes, int g, int c, long s, int indbil, int provv = 0x1);
 | 
			
		||||
	bool data_limite_bilancio(TTipo_data tipo_data, int g, int c, long s, const TDate& data_inf, const TDate& data_suo, int indbil, int provv = 0x1, const char* filter = nullptr);
 | 
			
		||||
	const real& saldo_periodo(TTipo_data tipo_data, int g, int c, long s, const TDate& dal, const TDate& al, int indbil, int provv = 0x1);
 | 
			
		||||
	const real& saldo_periodo(TTipo_data tipo_data, int g, int c, long s, const TDate& dal, const TDate& al, int indbil, int provv = 0x1, bool apertura = false, bool quadratura = false);
 | 
			
		||||
	bool saldo_cont_sep(TTipo_data tipo_data, int g, int c, long s, const int codes, TDate al, int indbil, const char * cont_sep, int provv = 0x1, bool chiusura = false, bool first = true);
 | 
			
		||||
	bool ricerca_progr_prec(int, int, int, long);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1495,6 +1495,23 @@ int TBill::compare(const TSortable& s) const
 | 
			
		||||
  return res;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TToken_string & TBill::key() const
 | 
			
		||||
{
 | 
			
		||||
	TToken_string & key = get_tmp_string();
 | 
			
		||||
 | 
			
		||||
	key.add(gruppo());
 | 
			
		||||
	key.add(conto());
 | 
			
		||||
	key.add(sottoconto());
 | 
			
		||||
	return key;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TString & TBill::keystr() const
 | 
			
		||||
{
 | 
			
		||||
	TString & key = get_tmp_string();
 | 
			
		||||
 | 
			
		||||
	key.format("%03d%03d%06ld", gruppo(), conto(), sottoconto());
 | 
			
		||||
	return key;
 | 
			
		||||
}
 | 
			
		||||
// Certified 95%
 | 
			
		||||
bool TBill::find()
 | 
			
		||||
{   
 | 
			
		||||
@ -1604,7 +1621,7 @@ const TString& TBill::descrizione() const
 | 
			
		||||
 | 
			
		||||
  // Se il conto e' valido (c'e' almeno il gruppo) cerca la sua descrizione su file
 | 
			
		||||
  if ((_descrizione == nullptr || _descrizione->blank()) &&
 | 
			
		||||
       (gruppo() != 0 || (tipo() > ' ' && codclifo()>0)))
 | 
			
		||||
       (gruppo() != 0 || (tipo() > ' ' && codclifo() > 0)))
 | 
			
		||||
  {
 | 
			
		||||
    if (!myself.find()) 
 | 
			
		||||
      myself.set_description(TR("Sconosciuto"));
 | 
			
		||||
@ -1625,9 +1642,12 @@ int TBill::tipo_cr() const
 | 
			
		||||
 | 
			
		||||
int TBill::indicatore_bilancio() const
 | 
			
		||||
{
 | 
			
		||||
  TString8 str; 
 | 
			
		||||
  str.format("%d|%d", gruppo(), conto());
 | 
			
		||||
  const int ib = atoi(cache().get(LF_PCON, str, PCN_INDBIL));
 | 
			
		||||
	if (conto() <= 0)
 | 
			
		||||
		return ib_null;
 | 
			
		||||
 | 
			
		||||
  TString8 str; str.format("%d|%d", gruppo(), conto());
 | 
			
		||||
  const int ib = cache().get_int(LF_PCON, str, PCN_INDBIL);
 | 
			
		||||
 | 
			
		||||
  if (ib <= 0)
 | 
			
		||||
  {
 | 
			
		||||
    TString msg = str;
 | 
			
		||||
 | 
			
		||||
@ -39,10 +39,6 @@ const TDate  get_date_mov(const TRectype & mov, TTipo_data tipo_data)
 | 
			
		||||
 | 
			
		||||
	if (tipo_data == CostiRicavi && !data.ok())
 | 
			
		||||
		data = mov.get_date(date_field_name(Competenza));
 | 
			
		||||
#ifdef DBG
 | 
			
		||||
	else
 | 
			
		||||
		int i = 1;
 | 
			
		||||
#endif
 | 
			
		||||
	return data;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -455,7 +451,7 @@ bool TSaldo::ultima_immissione_bilancio(int annoes,int g,int c,long s,int indbil
 | 
			
		||||
} 
 | 
			
		||||
 | 
			
		||||
const real& TSaldo::saldo_periodo(TTipo_data tipo_data, int g, int c, long s, const TDate& dal, const TDate& al,
 | 
			
		||||
												          int indbil, int provv)
 | 
			
		||||
												          int indbil, int provv, bool apertura, bool quadratura)
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  _saldo_iniziale  = ZERO;
 | 
			
		||||
@ -509,10 +505,8 @@ const real& TSaldo::saldo_periodo(TTipo_data tipo_data, int g, int c, long s, co
 | 
			
		||||
		prompt.format(FR("Calcolo saldo del conto %d.%d.%ld"), g, c, s);
 | 
			
		||||
		TProgress_monitor p(items, prompt, false);
 | 
			
		||||
 | 
			
		||||
    for (cur = 0L; cur.pos() < items; ++cur)
 | 
			
		||||
    for (cur = 0L; p.addstatus() && cur.pos() < items; ++cur)
 | 
			
		||||
    { 
 | 
			
		||||
			p.addstatus(1L);
 | 
			
		||||
			
 | 
			
		||||
			const real importo  = rmov.get_real(RMV_IMPORTO);
 | 
			
		||||
			
 | 
			
		||||
			if (importo != ZERO)
 | 
			
		||||
@ -523,8 +517,9 @@ const real& TSaldo::saldo_periodo(TTipo_data tipo_data, int g, int c, long s, co
 | 
			
		||||
				const TString8 codcaus = mov.get(MOV_CODCAUS);
 | 
			
		||||
				const TString4 tipoprovv = mov.get(MOV_PROVVIS);
 | 
			
		||||
			  const TString& movap = _causali_apertura.decode(codcaus);
 | 
			
		||||
				bool caus_ok = movap.blank() || (movap == "C" && quadratura) || (movap == "A" && apertura);
 | 
			
		||||
 | 
			
		||||
			  if (!((provv & 0x1) || tipoprovv.empty()) && movap.blank()) // ????
 | 
			
		||||
				if ((provv & 0x1 || tipoprovv.blank()) && caus_ok)
 | 
			
		||||
			  {
 | 
			
		||||
					const char sezione = rmov.get_char(RMV_SEZIONE);
 | 
			
		||||
					
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user