Correzioni al piano dei conti nella gestione dei codici IV direttiva come

proposto da Gabriella


git-svn-id: svn://10.65.10.50/trunk@320 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1994-10-05 12:18:01 +00:00
parent 2ae5971478
commit 5bc0d3b903
5 changed files with 106 additions and 119 deletions

View File

@ -24,6 +24,8 @@ class CG0100_application : public TRelation_application
virtual void init_query_mode(TMask& m); virtual void init_query_mode(TMask& m);
virtual void init_insert_mode(TMask& m); virtual void init_insert_mode(TMask& m);
virtual void init_modify_mode(TMask& m) {init_insert_mode(m);} virtual void init_modify_mode(TMask& m) {init_insert_mode(m);}
virtual int write(const TMask& m);
virtual int read(TMask& m);
public: public:
virtual TRelation* get_relation() const {return _rel;} virtual TRelation* get_relation() const {return _rel;}
@ -31,6 +33,43 @@ public:
}; };
int CG0100_application::read(TMask& m)
{
const TRelation *r = get_relation();
m.autoload(r);
if (m.get(FLD_CM1_LETTIVD).empty())
{
int sezivd = m.get_int(FLD_CM1_SEZIVD);
if (sezivd == 1 || sezivd == 2)
m.set(FLD_CM1_SEZIVD, sezivd + 5);
}
if (m.get(FLD_CM1_LETTIVDOPP).empty())
{
int sezivd = m.get_int(FLD_CM1_SEZIVDOPP);
if (sezivd == 1 || sezivd == 2)
m.set(FLD_CM1_SEZIVDOPP, sezivd + 5);
}
return NOERR;
}
int CG0100_application::write(const TMask& m)
{
TRelation *r = get_relation();
r->zero();
m.autosave(r);
int sezivd = m.get_int(FLD_CM1_SEZIVD);
if (sezivd == 5 || sezivd == 6)
r->lfile().put(PCN_SEZIVD, sezivd - 5);
sezivd = m.get_int(FLD_CM1_SEZIVDOPP);
if (sezivd == 5 || sezivd == 6)
r->lfile().put(PCN_SEZIVDOPP, sezivd - 5);
return r->write();
}
// Controlla se puo' essere effettuata la cancellazione di un conto // Controlla se puo' essere effettuata la cancellazione di un conto
bool CG0100_application::protected_record(TRectype &rec) bool CG0100_application::protected_record(TRectype &rec)
@ -91,37 +130,6 @@ HIDDEN bool tmcf_handler(TMask_field& f, KEY key)
return TRUE; return TRUE;
} }
HIDDEN bool ivd_enable = TRUE;
HIDDEN bool indbil_handler(TMask_field& f, KEY key)
{
if (f.active() && key == K_SPACE)
{
TMask& m = f.mask();
const int indbil = atoi(f.get());
if (indbil == ORDINE)
{
m.send_key(K_SHIFT + K_CTRL + 'h', -4);
m.show(FLD_CM1_SEZIVDH);
m.enable(FLD_CM1_SEZIVDH);
}
else
{
m.show(FLD_CM1_SEZIVD);
m.hide(FLD_CM1_SEZIVDH);
m.enable(FLD_CM1_SEZIVD, ivd_enable);
m.show(FLD_CM1_LETTIVD, ivd_enable);
m.show(FLD_CM1_NUMRIVD, ivd_enable);
m.show(FLD_CM1_NUMIVD, ivd_enable);
m.show(FLD_CM1_LETTIVDH, !ivd_enable);
m.show(FLD_CM1_NUMRIVDH, !ivd_enable);
m.show(FLD_CM1_NUMIVDH, !ivd_enable);
}
}
return TRUE;
}
void CG0100_application::init_insert_mode(TMask& m) void CG0100_application::init_insert_mode(TMask& m)
@ -129,6 +137,7 @@ void CG0100_application::init_insert_mode(TMask& m)
const int gruppo = atoi(m.get(FLD_CM1_GRUPPO)); const int gruppo = atoi(m.get(FLD_CM1_GRUPPO));
const int conto = atoi(m.get(FLD_CM1_CONTO)); const int conto = atoi(m.get(FLD_CM1_CONTO));
const long sottoc = atol(m.get(FLD_CM1_SOTTOCONTO)); const long sottoc = atol(m.get(FLD_CM1_SOTTOCONTO));
bool ivd_enable = TRUE;
if (conto == 0 && sottoc == 0) if (conto == 0 && sottoc == 0)
m.send_key(K_SHIFT + K_CTRL + 'h', -1); m.send_key(K_SHIFT + K_CTRL + 'h', -1);
@ -161,41 +170,25 @@ void CG0100_application::init_insert_mode(TMask& m)
s4 = pconti.get(PCN_NUMIVD); s4 = pconti.get(PCN_NUMIVD);
indbil = pconti.get_int(PCN_INDBIL); indbil = pconti.get_int(PCN_INDBIL);
} }
if (indbil == ORDINE) ivd_enable = (s1 == 0) && s2.empty() && s3.empty() && s4.empty();
{
m.send_key(K_SHIFT + K_CTRL + 'h', -4);
m.show(FLD_CM1_SEZIVDH);
m.disable(FLD_CM1_SEZIVDH);
m.set(FLD_CM1_SEZIVDH, s1);
ivd_enable = (s1 == 0);
}
else
{
m.show(FLD_CM1_SEZIVD);
m.hide(FLD_CM1_SEZIVDH);
ivd_enable = (s1 == 0) && s2.empty() && s3.empty() && s4.empty();
}
} }
else ivd_enable = TRUE;
m.show(FLD_CM1_RICSER, indbil == PASSIVITA || indbil == RICAVI); m.show(FLD_CM1_RICSER, indbil == PASSIVITA || indbil == RICAVI);
if (conto != 0) if (conto != 0)
{ {
if (indbil != ORDINE) m.enable(FLD_CM1_SEZIVD, ivd_enable);
m.show(FLD_CM1_LETTIVD, ivd_enable);
m.show(FLD_CM1_NUMRIVD, ivd_enable);
m.show(FLD_CM1_NUMIVD, ivd_enable);
m.show(FLD_CM1_LETTIVDH, !ivd_enable);
m.show(FLD_CM1_NUMRIVDH, !ivd_enable);
m.show(FLD_CM1_NUMIVDH, !ivd_enable);
if (!ivd_enable)
{ {
m.enable(FLD_CM1_SEZIVD, ivd_enable); m.set(FLD_CM1_SEZIVD, s1);
m.show(FLD_CM1_LETTIVD, ivd_enable); m.set(FLD_CM1_LETTIVDH, s2);
m.show(FLD_CM1_NUMRIVD, ivd_enable); m.set(FLD_CM1_NUMRIVDH, s3);
m.show(FLD_CM1_NUMIVD, ivd_enable); m.set(FLD_CM1_NUMIVDH, s4);
m.show(FLD_CM1_LETTIVDH, !ivd_enable); m.enable(FLD_CM1_SEZIVDOPP);
m.show(FLD_CM1_NUMRIVDH, !ivd_enable);
m.show(FLD_CM1_NUMIVDH, !ivd_enable);
if (!ivd_enable)
{
m.set(FLD_CM1_SEZIVD, s1);
m.set(FLD_CM1_LETTIVDH, s2);
m.set(FLD_CM1_NUMRIVDH, s3);
m.set(FLD_CM1_NUMIVDH, s4);
}
} }
pconti.zero(); pconti.zero();
pconti.put(PCN_GRUPPO, gruppo); pconti.put(PCN_GRUPPO, gruppo);
@ -288,7 +281,7 @@ bool CG0100_application::user_create()
_msk = new TMask("cg0100a") ; _msk = new TMask("cg0100a") ;
_msk->set_handler(FLD_CM1_GRUPPO, gruppo_handler); _msk->set_handler(FLD_CM1_GRUPPO, gruppo_handler);
_msk->set_handler(FLD_CM1_SOTTOCONTO, sottoc_handler); _msk->set_handler(FLD_CM1_SOTTOCONTO, sottoc_handler);
_msk->set_handler(FLD_CM1_INDBIL, indbil_handler); /* _msk->set_handler(FLD_CM1_INDBIL, indbil_handler); */
_msk->set_handler(FLD_CM1_TMCF, tmcf_handler); _msk->set_handler(FLD_CM1_TMCF, tmcf_handler);
_rel = new TRelation(LF_PCON); _rel = new TRelation(LF_PCON);

View File

@ -109,34 +109,26 @@ BEGIN
ITEM "5|Conti d'ordine" ITEM "5|Conti d'ordine"
END END
LIST FLD_CM1_SEZIVD 1 17 LIST FLD_CM1_SEZIVD 1 19
BEGIN BEGIN
PROMPT 4 7 "Sez. e classe IV dir.: " PROMPT 4 7 "Sez. e classe IV dir.: "
FIELD LF_PCON->SEZIVD FIELD LF_PCON->SEZIVD
GROUP 1 4 GROUP 1 4
ITEM "0|Nessuna" MESSAGE RESET,5@ ITEM "0|Nessuna" MESSAGE CLEAR,5@|CLEAR,6@
ITEM "1|Attivita'" ITEM "1|Attivita'" MESSAGE ENABLE,5@|ENABLE,6@
ITEM "2|Passivita'" ITEM "2|Passivita'" MESSAGE ENABLE,5@|ENABLE,6@
ITEM "9|Conto economico" ITEM "9|Conto economico" MESSAGE ENABLE,5@|ENABLE,6@
ITEM "5|Conto d'ordine" MESSAGE CLEAR,5@|ENABLE,6@
ITEM "6|C.ordine attivo" MESSAGE CLEAR,5@|ENABLE,6@
ITEM "7|C.ordine passivo" MESSAGE CLEAR,5@|ENABLE,6@
HELP "Inserire il codice del conto secondo la IV direttiva CEE" HELP "Inserire il codice del conto secondo la IV direttiva CEE"
END END
LIST FLD_CM1_SEZIVDH 1 19
BEGIN
PROMPT 4 7 "Sez. e classe IV dir.: "
FIELD LF_PCON->SEZIVD
ITEM "0|Nessuna" MESSAGE RESET,5@
ITEM "1|C.ordine attivo"
ITEM "2|C.ordine passivo"
ITEM "5|C.ordine"
FLAGS "H"
END
STRING FLD_CM1_LETTIVD 1 1 STRING FLD_CM1_LETTIVD 1 1
BEGIN BEGIN
PROMPT 51 7 "" PROMPT 51 7 ""
FIELD LF_PCON->LETTIVD FIELD LF_PCON->LETTIVD
GROUP 1 4 5 GROUP 1 5
FLAGS "U" FLAGS "U"
END END
@ -144,14 +136,14 @@ STRING FLD_CM1_LETTIVDH 1
BEGIN BEGIN
PROMPT 51 7 "" PROMPT 51 7 ""
FLAGS "HDU" FLAGS "HDU"
GROUP 4 5 GROUP 5
END END
NUMBER FLD_CM1_NUMRIVD 8 4 NUMBER FLD_CM1_NUMRIVD 8 4
BEGIN BEGIN
PROMPT 55 7 "" PROMPT 55 7 ""
FIELD LF_PCON->NUMRIVD FIELD LF_PCON->NUMRIVD
GROUP 1 4 5 GROUP 1 5
FLAGS "MZ" FLAGS "MZ"
END END
@ -159,7 +151,7 @@ NUMBER FLD_CM1_NUMRIVDH 8 4
BEGIN BEGIN
PROMPT 55 7 "" PROMPT 55 7 ""
FLAGS "HDMZ" FLAGS "HDMZ"
GROUP 4 5 GROUP 5
END END
NUMBER FLD_CM1_NUMIVD 2 NUMBER FLD_CM1_NUMIVD 2
@ -167,7 +159,7 @@ BEGIN
PROMPT 66 7 "" PROMPT 66 7 ""
FIELD LF_PCON->NUMIVD FIELD LF_PCON->NUMIVD
FLAGS "RZ" FLAGS "RZ"
GROUP 1 4 5 GROUP 1 5
USE %IVD USE %IVD
INPUT CODTAB[1,1] FLD_CM1_SEZIVD INPUT CODTAB[1,1] FLD_CM1_SEZIVD
INPUT CODTAB[2,2] FLD_CM1_LETTIVD INPUT CODTAB[2,2] FLD_CM1_LETTIVD
@ -175,7 +167,7 @@ BEGIN
INPUT CODTAB[7,8] FLD_CM1_NUMIVD INPUT CODTAB[7,8] FLD_CM1_NUMIVD
DISPLAY "Sezione" CODTAB[1,1] DISPLAY "Sezione" CODTAB[1,1]
DISPLAY "Lettera" CODTAB[2,2] DISPLAY "Lettera" CODTAB[2,2]
DISPLAY "Classe " CODTAB[3,6] DISPLAY "Classe @M" CODTAB[3,6]
DISPLAY "Numero" CODTAB[7,8] DISPLAY "Numero" CODTAB[7,8]
DISPLAY "Descrizione@50" S0 DISPLAY "Descrizione@50" S0
OUTPUT FLD_CM1_SEZIVD CODTAB[1,1] OUTPUT FLD_CM1_SEZIVD CODTAB[1,1]
@ -190,18 +182,21 @@ NUMBER FLD_CM1_NUMIVDH 2
BEGIN BEGIN
PROMPT 66 7 "" PROMPT 66 7 ""
FLAGS "HDRZ" FLAGS "HDRZ"
GROUP 1 4 5 GROUP 1 5
END END
LIST FLD_CM1_SEZIVDOPP 1 17 LIST FLD_CM1_SEZIVDOPP 1 19
BEGIN BEGIN
PROMPT 4 8 "Classe segno opp.: " PROMPT 4 8 "Classe segno opp.: "
FIELD LF_PCON->SEZIVDOPP FIELD LF_PCON->SEZIVDOPP
GROUP 1 2 4 GROUP 1 2 4 6
ITEM "0|Nessuna" MESSAGE RESET,6@ ITEM "0|Nessuna" MESSAGE CLEAR,7@
ITEM "1|Attivita'" ITEM "1|Attivita'" MESSAGE ENABLE,7@
ITEM "2|Passivita'" ITEM "2|Passivita'" MESSAGE ENABLE,7@
ITEM "9|Conto economico" ITEM "9|Conto economico" MESSAGE ENABLE,7@
ITEM "5|Conto d'ordine" MESSAGE CLEAR,7@
ITEM "6|C.ordine attivo" MESSAGE CLEAR,7@
ITEM "7|C.ordine passivo" MESSAGE CLEAR,7@
HELP "Inserire il codice del conto di sezione opposta secondo la IV direttiva CEE" HELP "Inserire il codice del conto di sezione opposta secondo la IV direttiva CEE"
END END
@ -210,7 +205,7 @@ BEGIN
PROMPT 51 8 "" PROMPT 51 8 ""
FIELD LF_PCON->LETTIVDOPP FIELD LF_PCON->LETTIVDOPP
FLAGS "U" FLAGS "U"
GROUP 1 2 4 6 GROUP 1 2 4 7
END END
NUMBER FLD_CM1_NUMRIVDOPP 8 4 NUMBER FLD_CM1_NUMRIVDOPP 8 4
@ -218,7 +213,7 @@ BEGIN
PROMPT 55 8 "" PROMPT 55 8 ""
FIELD LF_PCON->NUMRIVDOPP FIELD LF_PCON->NUMRIVDOPP
FLAGS "MZ" FLAGS "MZ"
GROUP 1 2 4 6 GROUP 1 2 4 7
END END
NUMBER FLD_CM1_NUMIVDOPP 2 NUMBER FLD_CM1_NUMIVDOPP 2
@ -226,7 +221,7 @@ BEGIN
PROMPT 66 8 "" PROMPT 66 8 ""
FIELD LF_PCON->NUMIVDOPP FIELD LF_PCON->NUMIVDOPP
FLAGS "RZ" FLAGS "RZ"
GROUP 1 2 4 6 GROUP 1 2 4 7
COPY USE FLD_CM1_NUMIVD COPY USE FLD_CM1_NUMIVD
INPUT CODTAB[1,1] FLD_CM1_SEZIVDOPP INPUT CODTAB[1,1] FLD_CM1_SEZIVDOPP
INPUT CODTAB[2,2] FLD_CM1_LETTIVDOPP INPUT CODTAB[2,2] FLD_CM1_LETTIVDOPP

View File

@ -87,12 +87,14 @@ $(O)/cg2102.o: cg2102.cpp cg2102.h $(I6) $(I10) $(I24) $(I27) $(I33)
$(O)/cg2103.o: cg2103.cpp cg2103.h $(O)/cg2103.o: cg2103.cpp cg2103.h
$(O)/cg2200.o: cg2200.cpp cg2200.h
$(O)/cglib02.o: conto.h cglib02.cpp $(I24) $(I31) $(I33) $(I40) $(I42) $(I51) cglib.h $(O)/cglib02.o: conto.h cglib02.cpp $(I24) $(I31) $(I33) $(I40) $(I42) $(I51) cglib.h
$(O)/conto.o: conto.cpp $(I6) $(I10) $(I24) $(I27) $(I33) $(O)/conto.o: conto.cpp $(I6) $(I10) $(I24) $(I27) $(I33)
$(EP)cg2: $(O)/cg2.o $(O)/cg2100.o $(O)/cg2101.o $(O)/cg2102.o $(O)/cg2103.o $(O)/conto.o $(O)/cglib02.o $(LIBD1) $(EP)cg2.frl $(EP)cg2: $(O)/cg2.o $(O)/cg2100.o $(O)/cg2101.o $(O)/cg2102.o $(O)/cg2103.o $(O)/cg2200.o $(O)/conto.o $(O)/cglib02.o $(LIBD1) $(EP)cg2.frl
$(LINK) $(LFLAGSD1) $@ $(O)/cg2.o $(O)/cg2100.o $(O)/cg2101.o $(O)/cg2102.o $(O)/cg2103.o $(O)/cglib02.o $(O)/conto.o $(LINK) $(LFLAGSD1) $@ $(O)/cg2.o $(O)/cg2100.o $(O)/cg2101.o $(O)/cg2102.o $(O)/cg2103.o $(O)/cg2200.o $(O)/cglib02.o $(O)/conto.o
$(O)/cg3.o: cg3.cpp $(I10) $(I24) $(I32) $(O)/cg3.o: cg3.cpp $(I10) $(I24) $(I32)

View File

@ -5,23 +5,24 @@
# Maschera # Maschera
EdMask = cgcfd.msk EdMask = cgcfd.msk
# Anno liquidazione IVA # Anno liquidazione IVA
AnLiIv = 1994 AnLiIv =
# Anagrafica clienti/fornitori in comune # Anagrafica clienti/fornitori in comune
AnCfCm = X AnCfCm =
# Piano conti/tabella causali in comune # Piano conti/tabella causali in comune
PcTcCm = X PcTcCm =
# Gestione libro cronologico # Gestione libro cronologico
GsLbCn = X GsLbCn =
# Codice libro incassi pagamenti # Codice libro incassi pagamenti
CodLIC = CodLIC =
# Stampa totali fatture a fine registro # Stampa totali fatture a fine registro
StTfFr = X StTfFr =
# Stampa libro giornale e libro IVA unico # Stampa libro giornale e libro IVA unico
StLgiU = X StLgiU =
# Gestione saldaconto # Gestione saldaconto
GesSal = GesSal =
# N. rif. allineato a destra per clienti e fornitori # N. rif. allineato a destra per clienti e fornitori
NrCfDx = NrCliDx =
NrForDx =
# Campo misterioso che segue il precedente # Campo misterioso che segue il precedente
CmSgPc = CmSgPc =
# Riferimenti partite # Riferimenti partite
@ -31,7 +32,7 @@ GesVal =
# Codice lingua # Codice lingua
CodLin = CodLin =
# Credito IVA anno precedente # Credito IVA anno precedente
CrIvAp = 0.0 CrIvAp =
# Gestione liquidazione differita # Gestione liquidazione differita
GeLiDi = GeLiDi =
# Codice causale chiusura # Codice causale chiusura
@ -67,9 +68,9 @@ CsPeCeG =
CsPeCeC = CsPeCeC =
CsPeCeS = CsPeCeS =
# Frequenza ratei/riscontri # Frequenza ratei/riscontri
RrFrAm = A RrFrAm =
# Mese commerciale ratei/riscontri # Mese commerciale ratei/riscontri
RrMeCo = X RrMeCo =
# Codice causale ratei # Codice causale ratei
RrCcRa = RrCcRa =
# Codice causale riscontri # Codice causale riscontri

View File

@ -10,28 +10,24 @@ Editor = notepad
# Maschera edit # Maschera edit
EdMask = cg5000a.msk EdMask = cg5000a.msk
#codice azienda banca #codice azienda banca
CodCAB = 1 CodCAB =
#codice dipendenza #codice dipendenza
<<<<<<< prassis.doc CodABI =
CodABI = 1
# Somma imposte non detraibiili agli acquisti/importazioni in mod. IVA 11 # Somma imposte non detraibiili agli acquisti/importazioni in mod. IVA 11
Sind11 = X Sind11 =
=======
CodABI = 1
# Somma imposte non detraibili agli acquist/importazioni in mod. IVA 11
Sind11 = X
>>>>>>> 1.2
# Stampa intestazione su registri bollati # Stampa intestazione su registri bollati
StiReg = X StiReg =
# Non stampa data registrazione su registi IVA # Non stampa data registrazione su registi IVA
NoDtRg = X NoDtRg =
# Posizionamento cursore su data registrazione in immissione documenti # Posizionamento cursore su data registrazione in immissione documenti
PoCuDr = X PoCuDr =
# Codice IVA per ricavi misti relativi ad agenzie di viaggio # Codice IVA per ricavi misti relativi ad agenzie di viaggio
CodAgv = 4 CodAgv =
# Interessi liquid. trimestrali per i 4 trimestri # Interessi liquid. trimestrali per i 4 trimestri
InTr(0) = 1.5 InTr(0) = 1.5
InTr(1) = 1.5 InTr(1) = 1.5
InTr(2) = 1.5 InTr(2) = 1.5
InTr(3) = 1.5 InTr(3) = 1.5
[EOF] [EOF]