Giustiziata MainApp

Corretti errori(ni) causali e prima nota


git-svn-id: svn://10.65.10.50/trunk@824 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1995-01-04 15:38:10 +00:00
parent 4bde87d871
commit 8d4438bda8
16 changed files with 431 additions and 265 deletions

View File

@ -13,7 +13,7 @@
class TStampa_deleghe_IVA : public TApplication
{
TLocalisamfile *_nditte, *_anag, *_comuni;
TRelation *_nditte;
TTable* _banche;
TArray_sheet* _ditte;
@ -29,7 +29,7 @@ protected:
virtual bool menu(MENU_TAG);
virtual void print();
int select(bool cf);
int select();
bool print_deleghe();
void print_distinta();
@ -42,13 +42,14 @@ bool TStampa_deleghe_IVA::create()
{
TApplication::create();
_nditte = new TLocalisamfile(LF_NDITTE);
_anag = new TLocalisamfile(LF_ANAG);
_comuni = new TLocalisamfile(LF_COMUNI);
_nditte = new TRelation(LF_NDITTE);
_nditte->add(LF_ANAG, "TIPOA=TIPOA|CODANAGR=CODANAGR");
_nditte->add(LF_COMUNI, "STATO=STATORF|COM=COMRF", 1, LF_ANAG);
_banche = new TTable("%BAN");
_ditte = new TArray_sheet(-1, -1, 0, 0, "Selezione Deleghe da stampare",
"@1|Cod.@5|Ragione Sociale@50|Importo@15|Azienda|Dipendenza");
"@1|Cod.@5|Ragione Sociale@50|Importo@15|Azienda|Dipendenza|Concessione");
TConfig c(CONFIG_STUDIO, "cg");
_azienda = c.get("CodABI");
@ -63,17 +64,15 @@ bool TStampa_deleghe_IVA::destroy()
delete _ditte;
delete _nditte;
delete _anag;
delete _comuni;
delete _banche;
return TApplication::destroy();
}
int TStampa_deleghe_IVA::select(bool cf)
int TStampa_deleghe_IVA::select()
{
TMask m(cf ? "cg1400b" : "cg1400a");
TMask m("cg1400a");
TConfig c(CONFIG_STUDIO, "cg");
m.set(F_ABI, _azienda);
m.set(F_CAB, _dipendenza);
@ -100,36 +99,40 @@ int TStampa_deleghe_IVA::select(bool cf)
}
const TDate pd(m.get(F_DATA));
printer().setdate(pd);
const int concessione = m.get_int(F_CONCESSIONE);
const long soloabi = m.get_long(F_SOLO_ABI);
const long solocab = m.get_long(F_SOLO_CAB);
TLocalisamfile nditte(LF_NDITTE);
TTable deleghe("%DEL");
TString16 chiave;
TToken_string d(80);
_ditte->destroy();
for (nditte.first(); !nditte.eof(); nditte.next())
for (_nditte->first(); _nditte->good(); _nditte->next())
{
const long dit = nditte.get_long("CODDITTA");
chiave.format("%05ld", dit);
chiave << format("%04d%02d%d", _anno, _mese, _tipo);
const int co = _nditte->lfile(LF_COMUNI).get_int("UFFCONC");
if (concessione != 0 && concessione != co) continue;
const long dit = _nditte->lfile().get_long("CODDITTA");
chiave.format("%05ld%04d%02d%d", dit, _anno, _mese, _tipo);
deleghe.put("CODTAB", chiave);
if (deleghe.read() == NOERR && deleghe.get_bool("B0") == FALSE) // Da stampare
{
d = " "; // Selezione
d.add(chiave.left(5)); // Codice ditta
d.add(nditte.get("RAGSOC")); // Ragione sociale
const real importo(deleghe.get("R0"));
d.add(importo.string(".")); // Importo
const long az = deleghe.get_long("I0");
d.add(format("%05ld", az)); // Azienda
const long di = deleghe.get_long("I1");
d.add(format("%05ld", di)); // Dipendenza
_ditte->add(d);
if ((soloabi == 0 || soloabi == az) && (solocab == 0 || solocab == di))
{
d = " "; // Selezione
d.add(dit); // Codice ditta
d.add(_nditte->lfile().get("RAGSOC")); // Ragione sociale
d.add(deleghe.get_real("R0").string(".")); // Importo
d.add(format("%05ld", az)); // Azienda
d.add(format("%05ld", di)); // Dipendenza
d.add(format("%03d", co)); // Concessione
_ditte->add(d);
}
}
}
@ -149,10 +152,10 @@ int TStampa_deleghe_IVA::select(bool cf)
bool TStampa_deleghe_IVA::menu(MENU_TAG mt)
{
int s = 0;
while ((s = select(mt == BAR_ITEM(2))) != 0)
int s;
while ((s = select()) != 0)
if (s == 1) print();
return TRUE;
return FALSE;
}
void TStampa_deleghe_IVA::print()
@ -228,23 +231,15 @@ void TStampa_deleghe_IVA::print_distinta()
if (_ditte->checked(i))
{
const TString16 cod(_ditte->row(i).get(1));
_nditte->put("CODDITTA", cod);
_nditte->lfile().put("CODDITTA", cod);
_nditte->read();
_anag->put("TIPOA", _nditte->get("TIPOA"));
_anag->put("CODANAGR", _nditte->get("CODANAGR"));
_anag->read();
_comuni->put("STATO", _anag->get("STATORF"));
_comuni->put("COM", _anag->get("COMRF"));
_comuni->read();
TParagraph_string dencom(_comuni->get("DENCOM"), 18);
TParagraph_string dencom(_nditte->lfile(LF_COMUNI).get("DENCOM"), 18);
row.reset();
row.put(_nditte->get("RAGSOC"), TAB_DITTA);
row.put(_nditte->lfile().get("RAGSOC"), TAB_DITTA);
row.put(dencom.get(), TAB_SEDE);
row.put(_comuni->get("PROVCOM"), TAB_PROV);
row.put(_nditte->lfile(LF_COMUNI).get("PROVCOM"), TAB_PROV);
TString imp(_ditte->row(i).get(3));
row.put(imp, TAB_IMPORTO);

View File

@ -1,100 +1,186 @@
#include "cg1400.h"
PAGE "STAMPA DELEGHE IVA" -1 -1 58 11
PAGE "STAMPA DELEGHE IVA" -1 -1 72 16
GROUPBOX DLG_NULL 70 5
BEGIN
PROMPT 1 1 "Stampa solo"
END
NUMBER F_CONCESSIONE 3
BEGIN
PROMPT 2 2 "Concessione "
HELP "Codice concessione cui fanno capo le ditte da gestire"
USE %UCC
FLAGS "Z"
INPUT CODTAB F_CONCESSIONE
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_CONCESSIONE CODTAB
OUTPUT F_DESC_CONC S0
CHECKTYPE NORMAL
END
STRING F_DESC_CONC 30
BEGIN
PROMPT 24 2 "Descrizione "
USE %UCC KEY 2
INPUT S0 F_DESC_CONC
DISPLAY "Descrizione@30" S0
DISPLAY "Codice" CODTAB
COPY OUTPUT F_CONCESSIONE
CHECKTYPE NORMAL
END
NUMBER F_SOLO_ABI 5
BEGIN
PROMPT 2 3 "Codice ABI "
HELP "Codice ABI della banca delle deleghe da stampare"
FLAGS "Z"
USE %BAN
INPUT CODTAB[1,5] F_SOLO_ABI
INPUT CODTAB[6,10] F_SOLO_CAB
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
DISPLAY "Denominazione@50" S0
OUTPUT F_SOLO_ABI CODTAB[1,5]
OUTPUT F_SOLO_CAB CODTAB[6,10]
OUTPUT F_DESC_SOLO_BAN S0
CHECKTYPE NORMAL
END
NUMBER F_SOLO_CAB 5
BEGIN
PROMPT 50 3 "Codice CAB "
HELP "Codice CAB della banca delle deleghe da stampare"
FLAGS "Z"
COPY ALL F_SOLO_ABI
CHECKTYPE NORMAL
END
STRING F_DESC_SOLO_BAN 50
BEGIN
PROMPT 2 4 "Denominazione "
USE %BAN KEY 2
INPUT S0 F_DESC_SOLO_BAN
DISPLAY "Denominazione@50" S0
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
COPY OUTPUT F_SOLO_ABI
CHECKTYPE NORMAL
END
GROUPBOX DLG_NULL 70 4
BEGIN
PROMPT 1 6 "Intesta deleghe a"
END
NUMBER F_ABI 5
BEGIN
PROMPT 1 1 "Codice ABI "
HELP "Codice ABI della banca per la presentazione delle deleghe"
PROMPT 2 7 "Codice ABI "
HELP "Codice ABI della banca per la presentazione della delega"
FLAGS "Z"
FIELD CNF_STUDIO->cg.CodABI
USE %BAN
COPY USE F_SOLO_ABI
INPUT CODTAB[1,5] F_ABI
INPUT CODTAB[6,10] F_CAB
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
DISPLAY "Nome@50" S0
COPY DISPLAY F_SOLO_ABI
OUTPUT F_ABI CODTAB[1,5]
OUTPUT F_CAB CODTAB[6,10]
OUTPUT F_DESC_BAN S0
CHECKTYPE NORMAL
END
NUMBER F_CAB 5
BEGIN
PROMPT 22 1 "Codice CAB "
PROMPT 50 7 "Codice CAB "
HELP "Codice CAB della banca per la presentazione della delega"
FLAGS "Z"
FIELD CNF_STUDIO->cg.CodCAB
COPY USE F_ABI
INPUT CODTAB[1,5] F_ABI
INPUT CODTAB[6,10] F_CAB
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
DISPLAY "Nome@50" S0
DISPLAY "Filiale@50" S1
OUTPUT F_ABI CODTAB[1,5]
OUTPUT F_CAB CODTAB[6,10]
COPY ALL F_ABI
CHECKTYPE NORMAL
END
DATA F_DATA
STRING F_DESC_BAN 50
BEGIN
PROMPT 1 3 "Data di stampa "
HELP "Data che viene stampata sulla delega"
PROMPT 2 8 "Denominazione "
COPY USE F_DESC_SOLO_BAN
INPUT S0 F_DESC_BAN
COPY DISPLAY F_DESC_SOLO_BAN
COPY OUTPUT F_ABI
CHECKTYPE NORMAL
END
NUMBER F_ANNO 4
BEGIN
PROMPT 2 10 "Anno "
HELP "Anno di cui si vogliono stampare le deleghe"
FLAGS "A"
END
LIST F_TIPO 21
LIST F_MESE 2 11
BEGIN
PROMPT 28 3 "Tipo "
PROMPT 18 10 "Mese "
HELP "Mese di cui si vogliono stampare le deleghe"
FLAGS "AM"
ITEM "13|Annuale" MESSAGE "2",F_TIPO
END
LIST F_TIPO 1 24
BEGIN
PROMPT 2 11 "Tipo "
HELP "Tipo di delega da stampare"
ITEM "1|Periodica" MESSAGE ENABLE,F_MESE
ITEM "2|Annuale" MESSAGE "13",F_MESE|DISABLE,F_MESE
ITEM "7|Acconti IVA" MESSAGE "12",F_MESE|DISABLE,F_MESE
END
NUMBER F_ANNO 4
DATA F_DATA
BEGIN
PROMPT 1 5 "Anno "
HELP "Anno di cui si vuole stampare la delega"
PROMPT 2 12 "Data "
HELP "Data da stampare sulle deleghe"
FLAGS "A"
END
END
LIST F_MESE 10
NUMBER F_PROFILO 5
BEGIN
PROMPT 13 5 "Mese "
HELP "Mese di cui si vuole stampare la delega"
FLAGS "MA"
ITEM "13|Annuale" MESSAGE "2",F_TIPO
END
BOOLEAN F_DEFINITIVA
BEGIN
PROMPT 1 7 "Stampa definitiva"
PROMPT 2 13 "Profilo "
CHECKTYPE REQUIRED
END
BOOLEAN F_AGGIORNA
BEGIN
PROMPT 1 8 "Aggiorna codici banca sulle deleghe"
PROMPT 43 10 "Aggiorna codici banca"
HELP "Scrive i codici banca sulle deleghe che non li riportano"
END
BOOLEAN F_DISTINTA
BEGIN
PROMPT 1 9 "Stampa distinta deleghe"
PROMPT 43 11 "Stampa distinta deleghe"
HELP "Stampa un riepilogo su carta normale delle deleghe stampate"
END
BOOLEAN F_DEFINITIVA
BEGIN
PROMPT 43 12 "Stampa definitiva"
END
BOOLEAN F_CONTOFIS
BEGIN
PROMPT 43 13 "Titolari Conto fiscale"
MESSAGE FALSE CLEAR,F_PROFILO
MESSAGE TRUE ENABLE,F_PROFILO
END
BUTTON DLG_SELECT 9 2
BEGIN
PROMPT 45 6 "Selezione"
PROMPT -12 -1 "Selezione"
HELP "Selezione delle ditte di cui stampare le deleghe"
MESSAGE EXIT,K_ENTER
END
BUTTON DLG_QUIT 9 2
BEGIN
PROMPT 45 8 ""
PROMPT -22 -1 ""
END
ENDPAGE

View File

@ -280,21 +280,6 @@ BEGIN
CHECKTYPE NORMAL
END
BOOLEAN F_OCCASIONALE
BEGIN
PROMPT 2 16 "Occasionale "
FIELD LF_CLIFO->OCCAS
HELP "Indicare se si tratta di un C/F occasionale"
MESSAGE TRUE "2",F_ALLEG
END
BOOLEAN F_SOSPESO
BEGIN
PROMPT 32 16 "Sospeso "
FIELD LF_CLIFO->SOSPESO
HELP "Indicare se il C/F e' movimentato ma non piu' utilizzabile"
END
NUMBER F_ALLEG 1
BEGIN
PROMPT 2 13 "Inserimento in allegato "
@ -333,6 +318,21 @@ BEGIN
FLAGS "D"
END
BOOLEAN F_OCCASIONALE
BEGIN
PROMPT 2 16 "Occasionale "
FIELD LF_CLIFO->OCCAS
HELP "Indicare se si tratta di un C/F occasionale"
MESSAGE TRUE "2",F_ALLEG
END
BOOLEAN F_SOSPESO
BEGIN
PROMPT 32 16 "Sospeso "
FIELD LF_CLIFO->SOSPESO
HELP "Indicare se il C/F e' movimentato ma non piu' utilizzabile"
END
ENDPAGE
PAGE "Pag. 2" -1 -1 78 19
@ -623,7 +623,7 @@ BEGIN
PROMPT 55 5 "Codice CAB "
FIELD LF_CLIFO->CODCAB
FLAGS "Z"
// USE %BAN
// USE %BAN
COPY USE F_CODABI
INPUT CODTAB[1,5] F_CODABI
INPUT CODTAB[6,10] F_CODBAN

View File

@ -875,13 +875,7 @@ void TCaus_app::on_config_change()
_saldaconto = conf.get_bool("GesSal");
_valuta = conf.get_bool("GesVal");
_anno_iva = (int)conf.get_long("AnLiIv");
if (_anno_iva < 1800)
{
_anno_iva = TDate(TODAY).year();
error_box("Nei parametri ditta manca l'anno liquidazione IVA: assumo %d", _anno_iva);
conf.set("AnLiIv", _anno_iva);
}
_anno_iva = (int)conf.get_long("AnLiIv", NULL, -1, TDate(TODAY).year());
}

View File

@ -17,7 +17,7 @@ STRING F_COD_CAUS 3
BEGIN
PROMPT 2 1 "Codice "
HELP "Codice identificativo della causale"
FIELD LF_CAUSALI->CODCAUS
FIELD CODCAUS
KEY 1
FLAGS "UZ"
USE LF_CAUSALI
@ -40,7 +40,7 @@ END
STRING F_DESCR 50
BEGIN
PROMPT 16 1 "Descriz."
FIELD LF_CAUSALI->DESCR
FIELD DESCR
USE LF_CAUSALI KEY 2
INPUT DESCR F_DESCR
DISPLAY "Descrizione @50" DESCR
@ -63,7 +63,7 @@ STRING F_TIPO_DOC 2
BEGIN
PROMPT 2 3 "Tipo documento "
HELP "Tipo di documento collegato alla causale"
FIELD LF_CAUSALI->TIPODOC
FIELD TIPODOC
USE %TPD
INPUT CODTAB F_TIPO_DOC
DISPLAY "Tipo " CODTAB
@ -96,7 +96,7 @@ STRING F_COD_REG 3
BEGIN
PROMPT 2 4 "Cod. registro "
HELP "Codice registro collegato alla causale"
FIELD LF_CAUSALI->REG
FIELD REG
USE REG
INPUT CODTAB[1,4] F_ANNOES SELECT
INPUT CODTAB[5,7] F_COD_REG
@ -156,7 +156,7 @@ END
LISTBOX F_TIPO_MOV_2 1 20
BEGIN
PROMPT 2 5 "Tipo movimento "
FIELD LF_CAUSALI->TIPOMOV
FIELD TIPOMOV
HELP "Tipo di movimento generato dalla causale"
ITEM " |Nessuno" MESSAGE COPY,F_TIPO_MOV
ITEM "3|Incasso/pagamento " MESSAGE COPY,F_TIPO_MOV
@ -168,7 +168,7 @@ END
LISTBOX F_M_770 1 48
BEGIN
PROMPT 2 6 "Collegamento Mod.770 "
FIELD LF_CAUSALI->M770
FIELD M770
HELP "Tipo di collegamento Mod.770"
ITEM " |Nessuno"
ITEM "1|Ricevuta e/o pagamento fattura percipiente"
@ -240,7 +240,7 @@ END
BOOLEAN F_DATA_DOC
BEGIN
PROMPT 2 4 "Data documento"
FIELD LF_CAUSALI->DATADOC
FIELD DATADOC
HELP "Data del documento collegato con la causale"
CHECKTYPE NORMAL
END
@ -248,7 +248,7 @@ END
BOOLEAN F_NUM_DOC
BEGIN
PROMPT 34 4 "Numero documento"
FIELD LF_CAUSALI->NUMDOC
FIELD NUMDOC
HELP "Numero del documento collegato con la causale"
CHECKTYPE NORMAL
END
@ -257,7 +257,7 @@ BOOLEAN F_AUTO_FAT
BEGIN
PROMPT 2 6 "Autofattura art.34"
HELP "Indicare se si tratta di autofattura ex art.34"
FIELD LF_CAUSALI->AUTOFATT
FIELD AUTOFATT
CHECKTYPE NORMAL
GROUP 2
END
@ -266,7 +266,7 @@ BOOLEAN F_ALLEGAT
BEGIN
PROMPT 34 6 "Doc. non va in allegati fine anno"
HELP "Indicare se non inserire negli allegati IVA del documento"
FIELD LF_CAUSALI->ALLEG
FIELD ALLEG
GROUP 2
END
@ -274,7 +274,7 @@ BOOLEAN F_FAT_RITARDO
BEGIN
PROMPT 2 8 "Fattura in ritardo"
HELP "Indicare se le fatture vengono registrate al ricevimento"
FIELD LF_CAUSALI->RITFATT
FIELD RITFATT
GROUP 2
END
@ -283,7 +283,7 @@ BEGIN
PROMPT 34 8 "Codice causale per l'incasso immediato "
HELP "Codice causale nel caso di incasso immediato"
FLAGS "UZ"
FIELD LF_CAUSALI->CODCAUSIM
FIELD CODCAUSIM
COPY USE F_COD_CAUS
INPUT CODCAUS F_COD_CAUS_IM
COPY DISPLAY F_COD_CAUS
@ -296,7 +296,7 @@ BOOLEAN F_OP_INTRACOM
BEGIN
PROMPT 2 10 "Operazione intracomunitaria"
HELP "Indicare se gestire le fatture intracomunitarie"
FIELD LF_CAUSALI->INTRACOM
FIELD INTRACOM
GROUP 2
END
@ -304,9 +304,7 @@ BOOLEAN F_VALINTRA
BEGIN
PROMPT 34 10 "Gestione valuta per operazioni intrac."
HELP "Indicare se registrare l'importo delle fatture CEE in valute"
FIELD LF_CAUSALI->VALINTRA
MESSAGE FALSE " ",F_MOV_VALU|ENABLE,F_MOV_VALU
MESSAGE TRUE "X",F_MOV_VALU|DISABLE,F_MOV_VALU
FIELD VALINTRA
GROUP 2
END
@ -314,7 +312,7 @@ BOOLEAN F_MOV_VALU
BEGIN
PROMPT 2 12 "Movimento in valuta"
HELP "Indicare se si utilizzano gli importi in valuta"
FIELD LF_CAUSALI->MOVVAL
FIELD MOVVAL
GROUP 2
END
@ -322,7 +320,7 @@ BOOLEAN F_MOV_SEZ
BEGIN
PROMPT 34 12 "Movimento solo sezionale"
HELP "Indicare se si tratta solo di moviemto di sezione"
FIELD LF_CAUSALI->MOVSEZ
FIELD MOVSEZ
FLAGS "H"
END
@ -333,7 +331,7 @@ BEGIN
ITEM " | "
ITEM "C|Chiusura"
ITEM "A|Apertura"
FIELD LF_CAUSALI->MOVAP
FIELD MOVAP
FLAGS "H"
END
@ -341,7 +339,7 @@ END
LISTBOX F_COLL_CESP 1 40
BEGIN
PROMPT 2 16 "Collegamento cespiti "
FIELD LF_CAUSALI->COLLCESP
FIELD COLLCESP
HELP "Tipo di collegamento cespiti"
ITEM " |Nessuno"
ITEM "A|Acquisto cespite"

View File

@ -606,11 +606,12 @@ bool mask2_reset_fields(TMask_field& mf, KEY k)
{
if (k == K_SPACE)
{
CG1200_App* a = (CG1200_App*)MainApp();
mf.mask().field(FLD_CGB_STARTROW).set(format("%d",a->_startrow));
mf.mask().field(FLD_CGB_STARTCOL).set(format("%d",a->_startcol));
mf.mask().field(FLD_CGB_ROWSET).set(format("%d",a->_rows_et));
mf.mask().field(FLD_CGB_COLSET).set(format("%d",a->_cols_et));
CG1200_App& a = (CG1200_App&)main_app();
TMask& m = mf.mask();
m.set(FLD_CGB_STARTROW, a._startrow);
m.set(FLD_CGB_STARTCOL, a._startcol);
m.set(FLD_CGB_ROWSET,a._rows_et);
m.set(FLD_CGB_COLSET, a._cols_et);
}
return TRUE;
}

View File

@ -13,7 +13,7 @@
class TStampa_deleghe_IVA : public TApplication
{
TLocalisamfile *_nditte, *_anag, *_comuni;
TRelation *_nditte;
TTable* _banche;
TArray_sheet* _ditte;
@ -29,7 +29,7 @@ protected:
virtual bool menu(MENU_TAG);
virtual void print();
int select(bool cf);
int select();
bool print_deleghe();
void print_distinta();
@ -42,13 +42,14 @@ bool TStampa_deleghe_IVA::create()
{
TApplication::create();
_nditte = new TLocalisamfile(LF_NDITTE);
_anag = new TLocalisamfile(LF_ANAG);
_comuni = new TLocalisamfile(LF_COMUNI);
_nditte = new TRelation(LF_NDITTE);
_nditte->add(LF_ANAG, "TIPOA=TIPOA|CODANAGR=CODANAGR");
_nditte->add(LF_COMUNI, "STATO=STATORF|COM=COMRF", 1, LF_ANAG);
_banche = new TTable("%BAN");
_ditte = new TArray_sheet(-1, -1, 0, 0, "Selezione Deleghe da stampare",
"@1|Cod.@5|Ragione Sociale@50|Importo@15|Azienda|Dipendenza");
"@1|Cod.@5|Ragione Sociale@50|Importo@15|Azienda|Dipendenza|Concessione");
TConfig c(CONFIG_STUDIO, "cg");
_azienda = c.get("CodABI");
@ -63,17 +64,15 @@ bool TStampa_deleghe_IVA::destroy()
delete _ditte;
delete _nditte;
delete _anag;
delete _comuni;
delete _banche;
return TApplication::destroy();
}
int TStampa_deleghe_IVA::select(bool cf)
int TStampa_deleghe_IVA::select()
{
TMask m(cf ? "cg1400b" : "cg1400a");
TMask m("cg1400a");
TConfig c(CONFIG_STUDIO, "cg");
m.set(F_ABI, _azienda);
m.set(F_CAB, _dipendenza);
@ -100,36 +99,40 @@ int TStampa_deleghe_IVA::select(bool cf)
}
const TDate pd(m.get(F_DATA));
printer().setdate(pd);
const int concessione = m.get_int(F_CONCESSIONE);
const long soloabi = m.get_long(F_SOLO_ABI);
const long solocab = m.get_long(F_SOLO_CAB);
TLocalisamfile nditte(LF_NDITTE);
TTable deleghe("%DEL");
TString16 chiave;
TToken_string d(80);
_ditte->destroy();
for (nditte.first(); !nditte.eof(); nditte.next())
for (_nditte->first(); _nditte->good(); _nditte->next())
{
const long dit = nditte.get_long("CODDITTA");
chiave.format("%05ld", dit);
chiave << format("%04d%02d%d", _anno, _mese, _tipo);
const int co = _nditte->lfile(LF_COMUNI).get_int("UFFCONC");
if (concessione != 0 && concessione != co) continue;
const long dit = _nditte->lfile().get_long("CODDITTA");
chiave.format("%05ld%04d%02d%d", dit, _anno, _mese, _tipo);
deleghe.put("CODTAB", chiave);
if (deleghe.read() == NOERR && deleghe.get_bool("B0") == FALSE) // Da stampare
{
d = " "; // Selezione
d.add(chiave.left(5)); // Codice ditta
d.add(nditte.get("RAGSOC")); // Ragione sociale
const real importo(deleghe.get("R0"));
d.add(importo.string(".")); // Importo
const long az = deleghe.get_long("I0");
d.add(format("%05ld", az)); // Azienda
const long di = deleghe.get_long("I1");
d.add(format("%05ld", di)); // Dipendenza
_ditte->add(d);
if ((soloabi == 0 || soloabi == az) && (solocab == 0 || solocab == di))
{
d = " "; // Selezione
d.add(dit); // Codice ditta
d.add(_nditte->lfile().get("RAGSOC")); // Ragione sociale
d.add(deleghe.get_real("R0").string(".")); // Importo
d.add(format("%05ld", az)); // Azienda
d.add(format("%05ld", di)); // Dipendenza
d.add(format("%03d", co)); // Concessione
_ditte->add(d);
}
}
}
@ -149,10 +152,10 @@ int TStampa_deleghe_IVA::select(bool cf)
bool TStampa_deleghe_IVA::menu(MENU_TAG mt)
{
int s = 0;
while ((s = select(mt == BAR_ITEM(2))) != 0)
int s;
while ((s = select()) != 0)
if (s == 1) print();
return TRUE;
return FALSE;
}
void TStampa_deleghe_IVA::print()
@ -228,23 +231,15 @@ void TStampa_deleghe_IVA::print_distinta()
if (_ditte->checked(i))
{
const TString16 cod(_ditte->row(i).get(1));
_nditte->put("CODDITTA", cod);
_nditte->lfile().put("CODDITTA", cod);
_nditte->read();
_anag->put("TIPOA", _nditte->get("TIPOA"));
_anag->put("CODANAGR", _nditte->get("CODANAGR"));
_anag->read();
_comuni->put("STATO", _anag->get("STATORF"));
_comuni->put("COM", _anag->get("COMRF"));
_comuni->read();
TParagraph_string dencom(_comuni->get("DENCOM"), 18);
TParagraph_string dencom(_nditte->lfile(LF_COMUNI).get("DENCOM"), 18);
row.reset();
row.put(_nditte->get("RAGSOC"), TAB_DITTA);
row.put(_nditte->lfile().get("RAGSOC"), TAB_DITTA);
row.put(dencom.get(), TAB_SEDE);
row.put(_comuni->get("PROVCOM"), TAB_PROV);
row.put(_nditte->lfile(LF_COMUNI).get("PROVCOM"), TAB_PROV);
TString imp(_ditte->row(i).get(3));
row.put(imp, TAB_IMPORTO);

View File

@ -1,100 +1,186 @@
#include "cg1400.h"
PAGE "STAMPA DELEGHE IVA" -1 -1 58 11
PAGE "STAMPA DELEGHE IVA" -1 -1 72 16
GROUPBOX DLG_NULL 70 5
BEGIN
PROMPT 1 1 "Stampa solo"
END
NUMBER F_CONCESSIONE 3
BEGIN
PROMPT 2 2 "Concessione "
HELP "Codice concessione cui fanno capo le ditte da gestire"
USE %UCC
FLAGS "Z"
INPUT CODTAB F_CONCESSIONE
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_CONCESSIONE CODTAB
OUTPUT F_DESC_CONC S0
CHECKTYPE NORMAL
END
STRING F_DESC_CONC 30
BEGIN
PROMPT 24 2 "Descrizione "
USE %UCC KEY 2
INPUT S0 F_DESC_CONC
DISPLAY "Descrizione@30" S0
DISPLAY "Codice" CODTAB
COPY OUTPUT F_CONCESSIONE
CHECKTYPE NORMAL
END
NUMBER F_SOLO_ABI 5
BEGIN
PROMPT 2 3 "Codice ABI "
HELP "Codice ABI della banca delle deleghe da stampare"
FLAGS "Z"
USE %BAN
INPUT CODTAB[1,5] F_SOLO_ABI
INPUT CODTAB[6,10] F_SOLO_CAB
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
DISPLAY "Denominazione@50" S0
OUTPUT F_SOLO_ABI CODTAB[1,5]
OUTPUT F_SOLO_CAB CODTAB[6,10]
OUTPUT F_DESC_SOLO_BAN S0
CHECKTYPE NORMAL
END
NUMBER F_SOLO_CAB 5
BEGIN
PROMPT 50 3 "Codice CAB "
HELP "Codice CAB della banca delle deleghe da stampare"
FLAGS "Z"
COPY ALL F_SOLO_ABI
CHECKTYPE NORMAL
END
STRING F_DESC_SOLO_BAN 50
BEGIN
PROMPT 2 4 "Denominazione "
USE %BAN KEY 2
INPUT S0 F_DESC_SOLO_BAN
DISPLAY "Denominazione@50" S0
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
COPY OUTPUT F_SOLO_ABI
CHECKTYPE NORMAL
END
GROUPBOX DLG_NULL 70 4
BEGIN
PROMPT 1 6 "Intesta deleghe a"
END
NUMBER F_ABI 5
BEGIN
PROMPT 1 1 "Codice ABI "
HELP "Codice ABI della banca per la presentazione delle deleghe"
PROMPT 2 7 "Codice ABI "
HELP "Codice ABI della banca per la presentazione della delega"
FLAGS "Z"
FIELD CNF_STUDIO->cg.CodABI
USE %BAN
COPY USE F_SOLO_ABI
INPUT CODTAB[1,5] F_ABI
INPUT CODTAB[6,10] F_CAB
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
DISPLAY "Nome@50" S0
COPY DISPLAY F_SOLO_ABI
OUTPUT F_ABI CODTAB[1,5]
OUTPUT F_CAB CODTAB[6,10]
OUTPUT F_DESC_BAN S0
CHECKTYPE NORMAL
END
NUMBER F_CAB 5
BEGIN
PROMPT 22 1 "Codice CAB "
PROMPT 50 7 "Codice CAB "
HELP "Codice CAB della banca per la presentazione della delega"
FLAGS "Z"
FIELD CNF_STUDIO->cg.CodCAB
COPY USE F_ABI
INPUT CODTAB[1,5] F_ABI
INPUT CODTAB[6,10] F_CAB
DISPLAY "Azienda" CODTAB[1,5]
DISPLAY "Dipendenza" CODTAB[6,10]
DISPLAY "Nome@50" S0
DISPLAY "Filiale@50" S1
OUTPUT F_ABI CODTAB[1,5]
OUTPUT F_CAB CODTAB[6,10]
COPY ALL F_ABI
CHECKTYPE NORMAL
END
DATA F_DATA
STRING F_DESC_BAN 50
BEGIN
PROMPT 1 3 "Data di stampa "
HELP "Data che viene stampata sulla delega"
PROMPT 2 8 "Denominazione "
COPY USE F_DESC_SOLO_BAN
INPUT S0 F_DESC_BAN
COPY DISPLAY F_DESC_SOLO_BAN
COPY OUTPUT F_ABI
CHECKTYPE NORMAL
END
NUMBER F_ANNO 4
BEGIN
PROMPT 2 10 "Anno "
HELP "Anno di cui si vogliono stampare le deleghe"
FLAGS "A"
END
LIST F_TIPO 21
LIST F_MESE 2 11
BEGIN
PROMPT 28 3 "Tipo "
PROMPT 18 10 "Mese "
HELP "Mese di cui si vogliono stampare le deleghe"
FLAGS "AM"
ITEM "13|Annuale" MESSAGE "2",F_TIPO
END
LIST F_TIPO 1 24
BEGIN
PROMPT 2 11 "Tipo "
HELP "Tipo di delega da stampare"
ITEM "1|Periodica" MESSAGE ENABLE,F_MESE
ITEM "2|Annuale" MESSAGE "13",F_MESE|DISABLE,F_MESE
ITEM "7|Acconti IVA" MESSAGE "12",F_MESE|DISABLE,F_MESE
END
NUMBER F_ANNO 4
DATA F_DATA
BEGIN
PROMPT 1 5 "Anno "
HELP "Anno di cui si vuole stampare la delega"
PROMPT 2 12 "Data "
HELP "Data da stampare sulle deleghe"
FLAGS "A"
END
END
LIST F_MESE 10
NUMBER F_PROFILO 5
BEGIN
PROMPT 13 5 "Mese "
HELP "Mese di cui si vuole stampare la delega"
FLAGS "MA"
ITEM "13|Annuale" MESSAGE "2",F_TIPO
END
BOOLEAN F_DEFINITIVA
BEGIN
PROMPT 1 7 "Stampa definitiva"
PROMPT 2 13 "Profilo "
CHECKTYPE REQUIRED
END
BOOLEAN F_AGGIORNA
BEGIN
PROMPT 1 8 "Aggiorna codici banca sulle deleghe"
PROMPT 43 10 "Aggiorna codici banca"
HELP "Scrive i codici banca sulle deleghe che non li riportano"
END
BOOLEAN F_DISTINTA
BEGIN
PROMPT 1 9 "Stampa distinta deleghe"
PROMPT 43 11 "Stampa distinta deleghe"
HELP "Stampa un riepilogo su carta normale delle deleghe stampate"
END
BOOLEAN F_DEFINITIVA
BEGIN
PROMPT 43 12 "Stampa definitiva"
END
BOOLEAN F_CONTOFIS
BEGIN
PROMPT 43 13 "Titolari Conto fiscale"
MESSAGE FALSE CLEAR,F_PROFILO
MESSAGE TRUE ENABLE,F_PROFILO
END
BUTTON DLG_SELECT 9 2
BEGIN
PROMPT 45 6 "Selezione"
PROMPT -12 -1 "Selezione"
HELP "Selezione delle ditte di cui stampare le deleghe"
MESSAGE EXIT,K_ENTER
END
BUTTON DLG_QUIT 9 2
BEGIN
PROMPT 45 8 ""
PROMPT -22 -1 ""
END
ENDPAGE

View File

@ -1,15 +1,11 @@
#include <assoc.h>
#include <config.h>
#include <mask.h>
#include <printapp.h>
#include <scanner.h>
#include <relation.h>
#include <progind.h>
#include <sort.h>
#include <tabutil.h>
#include <utility.h>
#include <prefix.h>
#include <lffiles.h>
#include <sort.h>
#include <assoc.h>
#include <progind.h>
#include <config.h>
#include <comuni.h>
#include <nditte.h>
@ -467,7 +463,6 @@ bool data_limite (TMask_field& f, KEY key)
int tipobil,tipostampa;
TDate datalim;
TDate in="", fin="";
// CG1600_application * a = (CG1600_application*) MainApp();
tipobil = m.get_int(F_TIPOBIL);
tipostampa = m.get_int(F_TIPOSTAMPA);
@ -4972,4 +4967,3 @@ int cg1600 (int argc, char* argv[])
}

View File

@ -45,11 +45,14 @@ TMask* TPrimanota_application::load_mask(int n)
m->set_handler(F_CODCAUS, caus_query_handler);
m->set_handler(F_DATAREG, datareg_handler);
m->set_handler(F_DATACOMP, datacomp_handler);
TConfig c(CONFIG_STUDIO, "cg");
// Scelta primo campo col focus
_firstfocus = c.get_bool("PoCuDr") ? F_DATAREG : F_CODCAUS;
m->first_focus(_firstfocus);
TConfig c(CONFIG_STUDIO, "cg");
const bool dr = c.get_bool("PoCuDr"); // Scelta primo campo col focus
m->first_focus(dr ? F_DATAREG : F_CODCAUS);
// Registra e inserisci immediatamente un nuovo movimento
_savenew = !c.get_bool("Cg21SN");
}
break;
@ -85,6 +88,7 @@ TMask* TPrimanota_application::load_mask(int n)
_iva_showed = FALSE;
case 1:
{
m->first_focus(_firstfocus);
m->set_handler(F_DATAREG, datareg_handler);
m->set_handler(F_DATACOMP, datacomp_handler);
m->set_handler(F_DESCR, descr_handler);
@ -237,11 +241,22 @@ bool TPrimanota_application::read_caus(const char* cod, int year)
if (tc.tipo() > ' ' && tc.ok())
{
TBill clifo(0, 0, tc.sottoconto(), tc.tipo());
clifo.descrizione();
const TBill clifo(0, 0, tc.sottoconto(), tc.tipo());
if (clifo.conto() != 0)
tc = clifo;
}
int err = 0;
if (tc.descrizione() == "Sconosciuto") err = 1; else
if (tc.sospeso()) err = 2;
if (err)
{
error_box("Il conto %03d %03d %06ld della causale e' ",
tc.gruppo(), tc.conto(), tc.sottoconto(),
err == 1 ? "sconosciuto" : "sospeso");
continue;
}
const char sezione = rcaus->get_char(RCA_SEZIONE);
const TImporto zero('D', ZERO);
@ -444,7 +459,9 @@ void TPrimanota_application::init_insert_mode(TMask& m)
if (iva() != nessuna_iva)
occas_mask().reset();
init_mask(m);
init_mask(m);
if (causale().reg().agenzia_viaggi())
m.set(F_DATA74TER, m.get(F_DATAREG));
_saldi.reset(); // Inizializza saldi
}

View File

@ -66,7 +66,7 @@ BEGIN
PROMPT 1 3 "Data operazione "
HELP "Data in cui viene registrata l'operazione"
FIELD LF_MOV->DATAREG
MESSAGE COPY,H_DATAREG|COPY,F_DATA74TER|COPY,F_ANNOIVA,7,10
MESSAGE COPY,H_DATAREG|COPY,F_ANNOIVA,7,10
END
DATE F_DATACOMP
@ -228,7 +228,7 @@ END
NUMBER F_CLIENTE 6
BEGIN
PROMPT 1 10 "Cliente "
HELP "Codice del cliente del documento"
HELP "Codice del cliente"
FIELD LF_MOV->CODCF
GROUP 1
USE LF_CLIFO KEY 1
@ -237,6 +237,7 @@ BEGIN
DISPLAY "Codice" CODCF
DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Partita IVA@12" PAIV
DISPLAY "Sospeso" SOSPESO
OUTPUT F_CLIFO TIPOCF
OUTPUT F_CLIENTE CODCF
OUTPUT F_RAGSOCCLIENTE RAGSOC
@ -258,7 +259,7 @@ END
NUMBER F_FORNITORE 6
BEGIN
PROMPT 1 10 "Fornitore "
HELP "Codice del fornitore del documento"
HELP "Codice del fornitore"
FIELD LF_MOV->CODCF
GROUP 2
USE LF_CLIFO KEY 1
@ -267,6 +268,7 @@ BEGIN
DISPLAY "Codice" CODCF
DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Partita IVA@12" PAIV
DISPLAY "Sospeso" SOSPESO
OUTPUT F_CLIFO TIPOCF
OUTPUT F_FORNITORE CODCF
OUTPUT F_RAGSOCFORNITORE RAGSOC
@ -288,7 +290,7 @@ END
STRING F_RAGSOCFORNITORE 50
BEGIN
PROMPT 25 10 ""
HELP "Ragione sociale del fornitore del documento"
HELP "Ragione sociale del fornitore"
GROUP 2
USE LF_CLIFO KEY 2
INPUT TIPOCF "F"
@ -296,6 +298,7 @@ BEGIN
DISPLAY "Ragione Sociale@50" RAGSOC
DISPLAY "Partita IVA@12" PAIV
DISPLAY "Codice" CODCF
DISPLAY "Sospeso" SOSPESO
COPY OUTPUT F_FORNITORE
CHECKTYPE REQUIRED
ADD RUN cg0 -1 F

View File

@ -41,6 +41,7 @@ class TPrimanota_application : public TRelation_application
TipoIVA _iva; // Tipo di IVA corrente
bool _ges_val, _ges_sal; // Gestione valuta e saldaconto
bool _savenew; // Registra e nuovo
short _firstfocus; // First field to gain focus
bool _iva_showed; // Lo sheet IVA e' gia' stato visualizzato una volta?
TSaldo_agg _saldi; // Saldi da aggiornare

View File

@ -1,6 +1,5 @@
#include <config.h>
#include <execp.h>
#include <isam.h>
#include <mailbox.h>
#include <mask.h>
#include <prefix.h>
@ -175,14 +174,24 @@ HIDDEN int compare_fields(const TObject** o1, const TObject** o2)
bool CG4400_application::stampa_totali_finali()
{
TConfig conf(CONFIG_DITTA);
return conf.get_bool("StTfFr");
static bool st = 2;
if (st == 2)
{
TConfig conf(CONFIG_DITTA);
st = conf.get_bool("StTfFr");
}
return st;
}
bool CG4400_application::stampa_datareg()
{
TConfig conf(CONFIG_STUDIO);
return conf.get_bool("NoDtRg");
{
static bool sd = 2;
if (sd == 2)
{
TConfig conf(CONFIG_STUDIO);
sd = !conf.get_bool("NoDtRg");
}
return sd;
}
bool CG4400_application::mask_select (TMask_field& f, KEY k)
@ -2347,7 +2356,7 @@ bool CG4400_application::stampa_registri_IVA(const TMask& m)
if (_selected[l])
{
bool msg = TRUE;
TApplication::set_firm(_nditte->get_long("CODDITTA"));
set_firm(_nditte->get_long("CODDITTA"));
TString16 y; y << _annoes;
_tablia->zero();
_tablia->put("CODTAB", y);
@ -2366,7 +2375,7 @@ bool CG4400_application::stampa_registri_IVA(const TMask& m)
if (_tipo_stampa == 2 || _tipo_stampa == 4)
if (!controlla_mov())
{
TApplication::set_firm(__firm);
set_firm(__firm);
return fatal_box("Finire di stampare registri anno precedente");
}
if (!_stampa_tutti_i_registri)
@ -2593,7 +2602,6 @@ return TRUE;
void CG4400_application::send_message(char tipo, const TFilename& nome, int mese)
{
//const char* const app = "cg4a -2 -icon";
const char* const app = "cg4a -2";
TToken_string ss(10);
//int mese ;
@ -2621,7 +2629,7 @@ void CG4400_application::send_message(char tipo, const TFilename& nome, int mese
ss.add("x");
//}
TMessage liq ("cg4a -2", "RCL", ss);
TMessage liq (app, "RCL", ss);
liq.send();
TExternal_app pn(app);

View File

@ -276,7 +276,7 @@ bool CG4500_application::setta()
else
{
nditte.zero();
nditte.put("CODDITTA", MainApp()->get_firm());
nditte.put("CODDITTA", main_app().get_firm());
if (nditte.read() == NOERR)
m.set(F_FREQUENZA, nditte.get(NDT_FREQVIVA));
}

View File

@ -66,8 +66,6 @@ public:
CG4600_application() {}
};
HIDDEN CG4600_application* app() { return (CG4600_application *) MainApp(); }
bool mask_datac (TMask_field& f, KEY k)
{
TTable TabEs ("ESC");

View File

@ -112,18 +112,8 @@ void TBill::describe()
if ((_tipo != 'C' && _tipo != 'F') || _sottoconto == 0L)
{
TLocalisamfile pcon(LF_PCON, FALSE);
pcon.setkey(1);
pcon.zero();
pcon.put("GRUPPO", _gruppo);
pcon.put("CONTO", _conto);
pcon.put("SOTTOCONTO", _sottoconto);
err = pcon.read();
if (err == NOERR)
{
_tipo_cr = pcon.get_int("TIPOSPRIC");
_descrizione = pcon.get("DESCR");
}
TRectype pcon(LF_PCON);
read(pcon);
}
if ((_tipo == 'C' || _tipo == 'F') && _sottoconto != 0L)
{
@ -136,6 +126,9 @@ void TBill::describe()
if (err == NOERR)
{
_descrizione = clifo.get("RAGSOC");
if (_tipo_cr < 0) _tipo_cr = 0;
_sospeso = clifo.get_bool("SOSPESO");
const char tipoa = clifo.get_char("TIPOAPER");
if (tipoa == 'F')
{
@ -149,8 +142,6 @@ void TBill::describe()
_gruppo = clifo.get_int("GRUPPO");
_conto = clifo.get_int("CONTO");
}
if (_tipo_cr < 0)
_tipo_cr = 0;
}
}
}
@ -160,7 +151,6 @@ bool TBill::read(TRectype &r)
{
TLocalisamfile pcon(LF_PCON, FALSE);
pcon.setkey(1);
pcon.zero();
pcon.put("GRUPPO", _gruppo);
pcon.put("CONTO", _conto);
pcon.put("SOTTOCONTO", _sottoconto);