Patch level :2.1 018

Files correlati     :cg1.exe,cg1500a.msk
Ricompilazione Demo : [ ]
Commento            :
60
Implementare nella stampa del solo bilancio di verifica la possibilità di stampare da conto a
conto.


git-svn-id: svn://10.65.10.50/trunk@11896 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2004-03-23 15:10:11 +00:00
parent 20709ae1b4
commit 0f320dc0f2
3 changed files with 203 additions and 36 deletions

@ -141,6 +141,8 @@ class TStampa_bilanci : public TPrintapp
TString _cdc, _fsc;
TBill _bill_from, _bill_to;
TArray _clienti, _fornitori;
public:
@ -1308,7 +1310,18 @@ bool TStampa_bilanci::bil_verifica()
prg_gruppo_avere = ZERO;
_u_max = 0l;
for (_pcn->first(); !_pcn->eof(); _pcn->next())
//controllo sui gr/co/sc selezionati
if (_bill_from.gruppo() > 0) //se ho un gruppo iniziale valido...
{
_pcn->put(PCN_GRUPPO,_bill_from.gruppo()); //lo metto nel file del pianodeiconticorrente..
_pcn->put(PCN_CONTO,_bill_from.conto()); //un valore alla volta
_pcn->put(PCN_SOTTOCONTO,_bill_from.sottoconto());
_pcn->read(_isgteq); //..e la scansione del file _pcn parte da questo
}
else
_pcn->first(); //..se non e' stato selezionato nessun gruppo parto dal primo
for ( ; !_pcn->eof(); _pcn->next())
{
_prog->addstatus(1);
g = _pcn->get_int (PCN_GRUPPO);
@ -1439,7 +1452,12 @@ bool TStampa_bilanci::bil_verifica()
continue;
}
}
//controlla se e' arrivato all'ultimo gruppo/conto/sottoconto selezionato
const TBill curr_bill(g,c,s);
if (curr_bill > _bill_to)
break;
if ( (c == 0) || (s == 0) )
{
esiste_sc = FALSE;
@ -3711,7 +3729,7 @@ void TStampa_bilanci::leggi_pcon()
void TStampa_bilanci::stampa_un_bilancio(const TMask& m)
{
_prog = NULL;
if (_bilancio == 1)
if (_bilancio == 1) //bilancio a sezioni contrapposte
{
printer().footerlen(3);
_prog = new TProgind(_pcn->items(),TR("Elaborazione in corso..."),FALSE);
@ -3737,12 +3755,12 @@ void TStampa_bilanci::stampa_un_bilancio(const TMask& m)
}
bil_sez_contr();
}
else
else //bilancio di verifica (tipo 1,2,3)
{
printer().footerlen(5);
_stampa_width = (m.get_int(F_MODULO) == 1) ? 132 : 148; //perche' questo e' in realta' il margine dx (vedi es. di stampa AS/400)
_verifica = m.get_int(F_VERIFICA);
_verifica = m.get_int(F_VERIFICA); //tipo di bilancio di verifica da stampare
if ( (_verifica == 1)||(_verifica == 2) )
_prog = new TProgind(_pcn->items(),TR("Elaborazione in corso..."),FALSE);
_tipo_stampa1 = m.get_int(F_STAMPA1);
@ -3755,7 +3773,7 @@ void TStampa_bilanci::stampa_un_bilancio(const TMask& m)
_datada = m.get(F_DATADA);
_dataa = m.get(F_DATAA);
}
if ((_verifica == 1)||(_verifica == 2))
if ((_verifica == 1)||(_verifica == 2)) //bilancio di verifica:1bilancio,2saldi mastro
{
_stampav = atoi(m.get(F_STAMPAV));
bil_verifica();
@ -3806,7 +3824,25 @@ bool TStampa_bilanci::set_print(int)
_quadratura = m.get_bool(F_QUADRATURA);
_hide_clifo = m.get_bool(F_HIDE_CLIFO);
_noseparator = m.get_bool(F_SEPARATOR);
//qui getti le terne dei 2 conti da mettere in bill_from e bill_to con un metodo dei TBill
_bill_from.get(m, F_DA_GRUPPO, F_DA_CONTO, F_DA_SOTTOCONTO);
_bill_to.get(m, F_A_GRUPPO, F_A_CONTO, F_A_SOTTOCONTO);
//se non e' stato riempito il gruppo TO, si mette di default il max del gr/co/so
if (_bill_to.gruppo() == 0)
_bill_to.set(999, 999, 999999L);
else
{ //se invece il gruppo c'e' ma il conto no...
if (_bill_to.conto() == 0)
_bill_to.set(_bill_to.gruppo(), 999, 999999L); //il gruppo e' quello selezionato
else
{
if (_bill_to.sottoconto() == 0) //se mancasse solo il sottoconto..
_bill_to.set(_bill_to.gruppo(), _bill_to.conto(), 999999L);
}
}
if (m.field(F_DACDC).active() && (m.get(F_DACDC).not_empty() || m.get(F_ACDC).not_empty()))
{
TRelation cdcrel("CMS");

@ -1,34 +1,42 @@
#ifndef __CG1500_H
#define __CG1500_H
#define F_CODDITTA 101
#define F_DATASTAMPA 102
#define F_RAGSOC 104
#define F_BILANCIO 105
#define F_ANNO 106
#define F_STAMPA 107
#define F_STAMPA1 108
#define F_DATALIM 109
#define F_TOTALI 110
#define F_CODICI 111
#define F_SALDO 112
#define F_VERIFICA 113
#define F_STAMPAV 114
#define F_DATADA 115
#define F_DATAA 116
#define F_SITUAZIONE 118
#define F_STAMPAC 119
#define F_ORDINAMENTO 120
#define F_MODULO 121
#define F_STAMPAMPROV 122
#define F_QUADRATURA 123
#define F_SEPARATOR 124
#define F_PICTURE 125
#define F_DACDC 126
#define F_DAFSC 127
#define F_ACDC 128
#define F_AFSC 129
#define F_HIDE_CLIFO 130
#define F_CODDITTA 101
#define F_DATASTAMPA 102
#define F_RAGSOC 104
#define F_BILANCIO 105
#define F_ANNO 106
#define F_STAMPA 107
#define F_STAMPA1 108
#define F_DATALIM 109
#define F_TOTALI 110
#define F_CODICI 111
#define F_SALDO 112
#define F_VERIFICA 113
#define F_STAMPAV 114
#define F_DATADA 115
#define F_DATAA 116
#define F_SITUAZIONE 118
#define F_STAMPAC 119
#define F_ORDINAMENTO 120
#define F_MODULO 121
#define F_STAMPAMPROV 122
#define F_QUADRATURA 123
#define F_SEPARATOR 124
#define F_PICTURE 125
#define F_DACDC 126
#define F_DAFSC 127
#define F_ACDC 128
#define F_AFSC 129
#define F_HIDE_CLIFO 130
#define F_DA_GRUPPO 132
#define F_DA_CONTO 133
#define F_DA_SOTTOCONTO 134
#define F_DA_DESCRIZIONE 135
#define F_A_GRUPPO 136
#define F_A_CONTO 137
#define F_A_SOTTOCONTO 138
#define F_A_DESCRIZIONE 139
#endif // __CG1500_H

@ -302,6 +302,129 @@ BEGIN
ITEM "2|Alfabetico"
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