Corretta gestione ricerca registri nelle causali

git-svn-id: svn://10.65.10.50/trunk@624 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1994-11-15 11:22:16 +00:00
parent af2a5b0337
commit cbfb9ffe34
11 changed files with 608 additions and 600 deletions

View File

@ -91,7 +91,6 @@ protected:
// int cancella(long items);
public:
bool _forcedCopy;
tipo_descr _tipo_des; // Il tipo di causale corrente
void compila_array (const TString&, int, int, int);
@ -184,7 +183,6 @@ void TCaus_app::causale_vendite()
if (_tipo_des == vendita)
return;
clear_descr();
_tipo_des = vendita;
int i=0;
@ -197,7 +195,6 @@ void TCaus_app::causale_vendite()
set_descr(i++, "C Imp. non soggetti");
set_descr(i++, "C Ritenute fiscali");
set_descr(i++, "C Ritenute soc.");
carica_righe_libere();
}
@ -206,7 +203,6 @@ void TCaus_app::causale_acquisti()
if (_tipo_des == acquisto)
return;
clear_descr();
_tipo_des = acquisto;
int i=0;
@ -219,7 +215,6 @@ void TCaus_app::causale_acquisti()
set_descr(i++, "C Imp. non soggetti");
set_descr(i++, "C Ritenute fiscali");
set_descr(i++, "C Ritenute soc.");
carica_righe_libere();
}
void TCaus_app::causale_ritenute()
@ -227,14 +222,12 @@ void TCaus_app::causale_ritenute()
if (_tipo_des == ritenuta_occas)
return;
clear_descr();
_tipo_des = ritenuta_occas;
int i=0;
set_descr (i++, "Costo");
set_descr (i++, "Cassa/banca");
set_descr (i++, "Erario");
carica_righe_libere();
}
void TCaus_app::causale_inc_pag()
@ -244,7 +237,6 @@ void TCaus_app::causale_inc_pag()
if (_tipo_des == tipo_des)
return;
clear_descr();
_tipo_des = tipo_des;
int i=0;
@ -261,7 +253,6 @@ void TCaus_app::causale_inc_pag()
set_descr ( i++, "C Ritenute fiscali");
if (_tipo_des == incasso_pagamento_gesval)
set_descr (i++, "C Differenza cambio");
carica_righe_libere();
}
////////////////////////////////////////////////////////////////////////////
@ -613,41 +604,23 @@ bool TCaus_app::sottoconto_hndl(TMask_field& f, KEY k)
void TCaus_app::compila_array(const TString& tpd, int tpm, int tpr, int m770)
{
_forcedCopy = FALSE;
clear_descr();
if (tpd.empty() || tpd == "IN" || tpd == "AN" || tpd == "PG")
{
if (saldaconto())
switch (tpm)
{
switch (tpm) {
case 3:
case 5:
case 6:
case 3:
case 5:
case 6:
if (saldaconto())
causale_inc_pag();
break;
case 0:
if (m770 == 6)
{
causale_ritenute();
}
else
{
_forcedCopy = TRUE;
clear_descr();
carica_righe_libere();
}
break;
default:
_forcedCopy = TRUE;
clear_descr();
carica_righe_libere();
break;
}
}
else
{ // NO saldaconto
_forcedCopy = TRUE;
clear_descr();
carica_righe_libere();
break;
case 0:
if (m770 == 6)
causale_ritenute();
default:
break;
}
}
else // C'e' il tipodoc.
@ -657,13 +630,8 @@ void TCaus_app::compila_array(const TString& tpd, int tpm, int tpr, int m770)
else
if (tpr == 2)
causale_acquisti();
else
{
_forcedCopy = TRUE;
clear_descr();
carica_righe_libere();
}
}
carica_righe_libere();
}
@ -895,7 +863,7 @@ void TCaus_app::read_firm_params()
_saldaconto = conf.get_bool("GesSal");
_valuta = conf.get_bool("GesVal");
_anno_iva = (int)conf.get_long("AnLiIv", "cg");
if (_anno_iva < 1900)
if (_anno_iva < 1800)
{
_anno_iva = TDate(TODAY).year();
error_box("Nei parametri ditta manca l'anno liquidazione IVA: assumo %d", _anno_iva);
@ -938,8 +906,6 @@ bool TCaus_app::user_create()
cs.sheet_mask().set_handler(SS_SOTTOCONTO+100, sottoconto_hndl);
cs.sheet_mask().set_handler(SS_SOTTOCONTO+200, sottoconto_hndl);
_forcedCopy = FALSE;
return TRUE;
}

View File

@ -143,7 +143,7 @@ END
NUMBER F_ANNOES 4
BEGIN
PROMPT 2 5 ""
FLAGS "H"
FLAGS "AH"
END
NUMBER F_TIPO_REG 1

View File

@ -290,7 +290,6 @@ void TPrimanota_application::init_mask(TMask& m)
read_caus(NULL, 0); // Setta campi obbligatori
fill_sheet(m);
const bool intra = _causale.intra();
const bool valintra = _causale.valintra();
const bool corrisp = _causale.corrispettivi();
@ -311,7 +310,7 @@ void TPrimanota_application::init_mask(TMask& m)
m.send_key(K_SHIFT+K_CTRL+forg, -2); // GROUP 2 (fornitori)
if (corrisp) m.hide(F_STATOPAIV);
m.show(F_CORRLIRE, intra);
m.show(F_CORRLIRE, valintra);
m.show(F_CORRVALUTA, valintra);
m.show(F_CODIVA, m.mode() == MODE_INS);
}

View File

@ -35,8 +35,6 @@ BEGIN
CHECKTYPE REQUIRED
END
// ANDREA E' ARRIVATO FINO A QUESTO PUNTO
NUMBER F_ANNOES 4
BEGIN
PROMPT 52 2 "Esercizio "
@ -47,6 +45,7 @@ END
DATE F_DATADOC
BEGIN
PROMPT 1 3 "Data del documento "
HELP "Data del documento che ha generato il movimento"
FIELD LF_MOV->DATADOC
WARNING "Specificare la data del documento"
END
@ -54,6 +53,7 @@ END
STRING F_NUMDOC 7
BEGIN
PROMPT 52 3 "Documento n. "
HELP "Numero del documento che ha generato il movimento"
FIELD LF_MOV->NUMDOC
WARNING "Specificare il numero documento"
END
@ -61,6 +61,7 @@ END
STRING F_DESCR 50
BEGIN
PROMPT 1 4 "Descrizione documento "
HELP "Descrizione del documento che ha generato il movimento"
FIELD LF_MOV->DESCR
END
@ -88,6 +89,7 @@ END
LIST I_SEZIONE1 1 8
BEGIN
PROMPT 1 7 "Riga 1 "
HELP "Sezione del conto della prima riga"
ITEM "D|Dare"
ITEM "A|Avere"
END
@ -95,6 +97,7 @@ END
NUMBER F_TOTALE 15
BEGIN
PROMPT 18 7 ""
HELP "Importo del conto di prima riga"
FIELD LF_MOV->TOTDOC
FLAGS "R"
PICTURE "."
@ -114,6 +117,7 @@ END
NUMBER F_GRUPPOCLIFO 3
BEGIN
PROMPT 51 7 ""
HELP "Codice del conto di prima riga"
CHECKTYPE REQUIRED
WARNING "Gruppo assente"
END
@ -121,6 +125,7 @@ END
NUMBER F_CONTOCLIFO 3
BEGIN
PROMPT 57 7 ""
HELP "Codice del conto di prima riga"
USE LF_PCON SELECT SOTTOCONTO==""
INPUT GRUPPO F_GRUPPOCLIFO
INPUT CONTO F_CONTOCLIFO
@ -136,6 +141,7 @@ END
NUMBER F_CLIENTE 6
BEGIN
PROMPT 65 7 ""
HELP "Codice del conto di prima riga"
FIELD LF_MOV->CODCF
USE LF_CLIFO
INPUT TIPOCF "C"
@ -151,6 +157,7 @@ END
NUMBER F_FORNITORE 6
BEGIN
PROMPT 65 7 ""
HELP "Codice del conto di prima riga"
FIELD LF_MOV->CODCF
USE LF_CLIFO
INPUT TIPOCF "F"
@ -166,6 +173,7 @@ END
NUMBER I_SOTTOCONTO 6
BEGIN
PROMPT 65 7 ""
HELP "Codice del conto di prima riga"
USE LF_PCON SELECT SOTTOCONTO != ""
INPUT SOTTOCONTO I_SOTTOCONTO
INPUT GRUPPO F_GRUPPOCLIFO
@ -185,6 +193,7 @@ END
LIST I_SEZIONE2 1 8
BEGIN
PROMPT 1 8 "Riga 2 "
HELP "Sezione del conto della prima riga"
ITEM "D|Dare"
ITEM "A|Avere"
END
@ -192,6 +201,7 @@ END
NUMBER I_IMPORTO2 15
BEGIN
PROMPT 18 8 ""
HELP "Importo del conto di seconda riga"
PICTURE "."
FLAGS "R"
END
@ -206,16 +216,19 @@ END
NUMBER I_GRUPPO2 3
BEGIN
PROMPT 51 8 ""
HELP "Codice del conto di seconda riga"
END
NUMBER I_CONTO2 3
BEGIN
PROMPT 57 8 ""
HELP "Codice del conto di seconda riga"
END
NUMBER I_SOTTOCONTO2 6
BEGIN
PROMPT 65 8 ""
HELP "Codice del conto di seconda riga"
COPY USE I_SOTTOCONTO
INPUT GRUPPO I_GRUPPO2
INPUT CONTO I_CONTO2
@ -234,6 +247,7 @@ END
LIST I_SEZIONE3 1 8
BEGIN
PROMPT 1 9 "Riga 3 "
HELP "Sezione del conto di terza riga"
ITEM "D|Dare"
ITEM "A|Avere"
END
@ -241,6 +255,7 @@ END
NUMBER I_IMPORTO3 15
BEGIN
PROMPT 18 9 ""
HELP "Importo del conto di terza riga"
PICTURE "."
FLAGS "R"
END
@ -255,16 +270,19 @@ END
NUMBER I_GRUPPO3 3
BEGIN
PROMPT 51 9 ""
HELP "Codice del conto di terza riga"
END
NUMBER I_CONTO3 3
BEGIN
PROMPT 57 9 ""
HELP "Codice del conto di terza riga"
END
NUMBER I_SOTTOCONTO3 6
BEGIN
PROMPT 65 9 ""
HELP "Codice del conto di terza riga"
COPY USE I_SOTTOCONTO
INPUT GRUPPO I_GRUPPO3
INPUT CONTO I_CONTO3
@ -281,6 +299,7 @@ END
LIST I_SEZIONE4 1 8
BEGIN
PROMPT 1 10 "Riga 4 "
HELP "Sezione del conto di quarta riga"
ITEM "D|Dare"
ITEM "A|Avere"
END
@ -288,6 +307,7 @@ END
NUMBER I_IMPORTO4 15
BEGIN
PROMPT 18 10 ""
HELP "Importo del conto di quarta riga"
PICTURE "."
FLAGS "R"
END
@ -302,16 +322,19 @@ END
NUMBER I_GRUPPO4 3
BEGIN
PROMPT 51 10 ""
HELP "Codice del conto di quarta riga"
END
NUMBER I_CONTO4 3
BEGIN
PROMPT 57 10 ""
HELP "Codice del conto di quarta riga"
END
NUMBER I_SOTTOCONTO4 6
BEGIN
PROMPT 65 10 ""
HELP "Codice del conto di quarta riga"
COPY USE I_SOTTOCONTO
INPUT GRUPPO I_GRUPPO4
INPUT CONTO I_CONTO4
@ -341,4 +364,3 @@ ENDPAGE
ENDMASK

View File

@ -40,18 +40,21 @@ END
STRING O_INDIRIZZO 40
BEGIN
PROMPT 2 4 "Indirizzo "
HELP "Indirizzo di residenza della persona"
FIELD INDIR
END
STRING O_NUMERO 6
BEGIN
PROMPT 55 4 "Numero "
HELP "Numero civico della residenza della persona"
FIELD CIV
END
STRING O_STATO 3
BEGIN
PROMPT 2 5 "Stato "
HELP "Stato di residenza della persona"
FIELD STATO
FLAGS "U"
USE %STA
@ -65,6 +68,7 @@ END
STRING O_COMUNE 4
BEGIN
PROMPT 27 5 "Comune "
HELP "Codice del comune di residenza della persona"
FIELD COM
FLAGS "U"
USE LF_COMUNI
@ -81,12 +85,14 @@ END
NUMBER O_CAP 5
BEGIN
PROMPT 56 5 "C.A.P. "
HELP "CAP della residenza della persona"
FIELD CAP
END
STRING O_DENCOM 50
BEGIN
PROMPT 2 6 "Denominazione "
HELP "Nome del comune di residenza della persona"
USE LF_COMUNI KEY 2
INPUT DENCOM O_DENCOM
DISPLAY "Denominazione@50" DENCOM
@ -111,12 +117,14 @@ END
DATE O_DATANAS
BEGIN
PROMPT 23 9 "Data "
HELP "Data di nascita della persona"
FIELD DNASC
END
STRING O_STATONAS 3
BEGIN
PROMPT 41 9 "Stato "
HELP "Codice dello stato di nascita della persona"
FIELD STATONASC
FLAGS "U"
COPY USE O_STATO
@ -129,6 +137,7 @@ END
STRING O_COMUNENAS 4
BEGIN
PROMPT 55 9 "Comune "
HELP "Codice del comune di nascita della persona"
FIELD COMNASC
FLAGS "U"
COPY USE O_COMUNE
@ -143,6 +152,7 @@ END
STRING O_DENCOMNAS 50
BEGIN
PROMPT 2 10 "Denominazione "
HELP "Nome del comune di nascita della persona"
COPY USE O_DENCOM
INPUT DENCOM O_DENCOMNAS
COPY DISPLAY O_DENCOM

View File

@ -1004,18 +1004,21 @@ bool TPrimanota_application::iva_sottoconto_handler(TMask_field& f, KEY key)
if (!suspended_handler(f, key))
return FALSE;
if (key == K_TAB && f.dirty() && !app().causale().corrispettivi())
if (key == K_TAB && f.dirty())
{
const TLocalisamfile& piano = ((TEdit_field&)f).browse()->cursor()->file();
int spric = piano.get_int("TIPOSPRIC");
if (spric == 2 || spric == 3)
if ((spric == 2 || spric == 3) && !app().causale().corrispettivi())
{
const TFixed_string td(app().causale().tipo_doc());
if (td == "FV" || td == "NC") spric = 4;
}
/*
TMask_field& s = f.mask().field(105);
if (app().iva() == iva_vendite || s.get().empty())
s.set(spric > 0 ? format("%d", spric) : "");
*/
f.mask().set(105, spric > 0 ? format("%d", spric) : "");
}
return TRUE;
}

View File

@ -127,6 +127,7 @@ BEGIN
DISPLAY "Conto" CONTO
DISPLAY "Sottoconto" SOTTOCONTO
DISPLAY "Descrizione@50" DESCR
DISPLAY "C/R" TIPOCR
OUTPUT 109 SOTTOCONTO
OUTPUT 107 GRUPPO
OUTPUT 108 CONTO

View File

@ -10,6 +10,7 @@ END
DATE F_FROMDATE
BEGIN
PROMPT 2 2 "Data "
HELP "Data del primo movimento provvisorio da eliminare"
USE LF_MOV KEY 2 SELECT PROVVIS="P"
INPUT DATAREG F_FROMDATE
INPUT NUMREG F_FROMREG
@ -32,6 +33,7 @@ END
GROUPBOX DLG_NULL 40 3
BEGIN
PROMPT 1 4 "Al movimento"
HELP "Data dell'ultimo movimento provvisorio da eliminare"
END
DATE F_TODATE

View File

@ -1,7 +1,7 @@
#include <applicat.h>
#include <lffiles.h>
#include <mask.h>
#include <isam.h>
#include <mask.h>
#include <pconti.h>
#include <assoc.h>
#include <urldefid.h>
@ -232,7 +232,7 @@ bool TCopia_archivi::menu(MENU_TAG)
return FALSE;
}
int cg4200(int argc, char** argv)
int cg4200(int argc, char* argv[])
{
TCopia_archivi a ;
a.run(argc, argv, "Copia archivi");

View File

@ -10,6 +10,7 @@ END
RADIOBUTTON F_FROMTYPE 60
BEGIN
PROMPT 13 2 ""
HELP "Indicare il tipo di archivi da copiare"
ITEMS "C|Archivi Comuni"
MESSAGE CLEAR,F_FROMFIRM|CLEAR,F_DFROMFIRM
ITEMS "D|Archivi Ditta"
@ -73,7 +74,7 @@ BEGIN
INPUT RAGSOC F_DTOFIRM
COPY DISPLAY F_DFROMFIRM
COPY OUTPUT F_TOFIRM
HELP "Descrizione della ditta su cui duplicare i dati"
HELP "Ragione sociale della ditta su cui duplicare i dati"
WARNING "Ditta assente"
END
@ -85,21 +86,25 @@ END
BOOLEAN F_PCON
BEGIN
PROMPT 4 11 "Piano dei conti"
HELP "Indicare se duplicare l'archivio piano dei conti"
END
BOOLEAN F_CAUS
BEGIN
PROMPT 34 11 "Causali"
HELP "Indicare se duplicare l'archivio causali"
END
BOOLEAN F_CLIFO
BEGIN
PROMPT 54 11 "Clienti/Fornitori"
HELP "Indicare se duplicare l'archivio clienti/fornitori"
END
BOOLEAN F_IVD
BEGIN
PROMPT 4 12 "IV Direttiva C.E.E."
HELP "Indicare se duplicare l'archivio IV Direttiva C.E.E."
END
BUTTON DLG_OK 9 2