Corretti errori Gabriella

git-svn-id: svn://10.65.10.50/trunk@2072 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1995-11-03 08:17:08 +00:00
parent 9d350ff36c
commit ea5f02c9cb
7 changed files with 95 additions and 73 deletions

View File

@ -383,9 +383,11 @@ bool TCaus_app::tipomov_hndl (TMask_field& f, KEY k)
bool TCaus_app::codcausim_hndl (TMask_field& f, KEY k) bool TCaus_app::codcausim_hndl (TMask_field& f, KEY k)
{ {
if (f.to_check(k)) if (f.to_check(k))
{ {
TString16 causim(f.get()); TEdit_field& e = (TEdit_field&)f;
TLocalisamfile& caus = app()._rel->lfile(LF_CAUSALI); const TString& causim = e.get();
TLocalisamfile& caus = e.browse()->cursor()->file();
caus.zero(); caus.zero();
caus.put(CAU_CODCAUS, causim); caus.put(CAU_CODCAUS, causim);
if (caus.read() == NOERR) if (caus.read() == NOERR)

View File

@ -428,7 +428,7 @@ void TPrimanota_application::init_mask(TMask& m)
if (_iva == nessuna_iva) if (_iva == nessuna_iva)
{ {
m.enable(-5, _is_saldaconto); // Abilita campi saldaconto m.show(-5, _is_saldaconto); // Abilita campi saldaconto
} }
else else
{ {
@ -872,7 +872,7 @@ int TPrimanota_application::write(const TMask& m)
} }
else else
{ {
if (!m.get_bool(F_SOLAIVA)) if (!m.get_bool(F_SOLAIVA) && !is_saldaconto())
{ {
const TString16 causimm(causale().causale_inc_imm()); const TString16 causimm(causale().causale_inc_imm());
if (causimm.not_empty()) if (causimm.not_empty())

View File

@ -176,6 +176,7 @@ END
GROUPBOX DLG_NULL 78 5 GROUPBOX DLG_NULL 78 5
BEGIN BEGIN
PROMPT 1 10 "Voci per saldaconto" PROMPT 1 10 "Voci per saldaconto"
GROUP 5
END END
STRING S_VALUTA 3 STRING S_VALUTA 3
@ -184,7 +185,7 @@ BEGIN
HELP "Codice della valuta per movimento" HELP "Codice della valuta per movimento"
FIELD CODVAL FIELD CODVAL
FLAGS "UZ" FLAGS "UZ"
GROUP 3 GROUP 3 5
USE %VAL USE %VAL
INPUT CODTAB S_VALUTA INPUT CODTAB S_VALUTA
DISPLAY "Codice" CODTAB DISPLAY "Codice" CODTAB
@ -209,7 +210,7 @@ BEGIN
OUTPUT S_VALUTA CODTAB[1,3] OUTPUT S_VALUTA CODTAB[1,3]
OUTPUT S_DATACAMBIO D0 OUTPUT S_DATACAMBIO D0
OUTPUT S_CAMBIO R10 OUTPUT S_CAMBIO R10
GROUP 3 GROUP 3 5
CHECKTYPE NORMAL CHECKTYPE NORMAL
END END
@ -219,7 +220,7 @@ BEGIN
HELP "Cambio della valuta" HELP "Cambio della valuta"
FIELD CAMBIO FIELD CAMBIO
FLAGS "RU" FLAGS "RU"
GROUP 3 GROUP 3 5
PICTURE ".5" PICTURE ".5"
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
@ -239,7 +240,7 @@ BEGIN
PROMPT 44 12 "Totale in valuta " PROMPT 44 12 "Totale in valuta "
HELP "" HELP ""
PICTURE ".2" PICTURE ".2"
GROUP 3 GROUP 3 5
VALIDATE REQIF_FUNC 1 F_TOTALE VALIDATE REQIF_FUNC 1 F_TOTALE
FIELD TOTDOCVAL FIELD TOTDOCVAL
END END
@ -324,6 +325,7 @@ BEGIN
PROMPT 1 7 "Totale doc. " PROMPT 1 7 "Totale doc. "
PICTURE "." PICTURE "."
FLAGS "D" FLAGS "D"
GROUP 5
END END
NUMBER K_RESIDUO 15 NUMBER K_RESIDUO 15
@ -331,6 +333,7 @@ BEGIN
PROMPT 32 7 "Residuo " PROMPT 32 7 "Residuo "
PICTURE "." PICTURE "."
FLAGS "D" FLAGS "D"
GROUP 5
END END
LIST S_TIPORIGA 1 13 LIST S_TIPORIGA 1 13

View File

@ -36,10 +36,10 @@ bool TPrimanota_application::pag_notify(TSheet_field& ps, int r, KEY k)
TString16 banca; TString16 banca;
bool doit = TRUE, m_imp = FALSE, m_perc = FALSE, m_pag = FALSE; bool doit = TRUE, m_imp = FALSE, m_perc = FALSE, m_pag = FALSE;
bool m_scad = FALSE, m_tipo = FALSE, mod = FALSE; bool m_scad = FALSE, m_tipo = FALSE, m_ulc = FALSE, mod = FALSE;
word ahiahi = P_OK; word ahiahi = P_OK;
TString news(10), newi(15), newp(15), newt(2); TString news(10), newi(15), newp(15), newt(1), newu(1);
bool recalc = msk->get_bool(FS_RECALC); bool recalc = msk->get_bool(FS_RECALC);
bool mcomm = msk->get_bool(FS_MCOMM); bool mcomm = msk->get_bool(FS_MCOMM);
@ -54,6 +54,7 @@ bool TPrimanota_application::pag_notify(TSheet_field& ps, int r, KEY k)
newi = ns.get(impos); // Imponibile (lire o valuta) newi = ns.get(impos); // Imponibile (lire o valuta)
newp = ns.get(3); // Percentuale newp = ns.get(3); // Percentuale
newt = ns.get(4); // Tipo pagamento newt = ns.get(4); // Tipo pagamento
newu = ns.get(5); // Ulteriore classificazione
// qui viene il bello, si fa per dire // qui viene il bello, si fa per dire
if (news != ts.get(0)) // modificata data scadenza if (news != ts.get(0)) // modificata data scadenza
@ -68,6 +69,9 @@ bool TPrimanota_application::pag_notify(TSheet_field& ps, int r, KEY k)
} }
if (newt != ts.get(4)) // modificato tipo pagamento if (newt != ts.get(4)) // modificato tipo pagamento
mod = m_tipo = TRUE; mod = m_tipo = TRUE;
if (newu != ts.get(5)) // modificata ulteriore classificazione
mod = m_ulc = TRUE;
break; break;
case K_DEL: case K_DEL:
case K_INS: case K_INS:
@ -92,7 +96,8 @@ bool TPrimanota_application::pag_notify(TSheet_field& ps, int r, KEY k)
(m_perc ? (const char*)newp : (const char*)newi) : (m_perc ? (const char*)newp : (const char*)newi) :
NULL), NULL),
(m_scad ? (const char*)news : NULL), (m_scad ? (const char*)news : NULL),
(m_tipo ? (const char*)newt : NULL), (m_tipo ? (const char*)newt : NULL),
(m_ulc ? (const char*)newu : NULL),
rdiff, mcomm, need_recalc); rdiff, mcomm, need_recalc);
// see if rdiff changed // see if rdiff changed
msk->set(FS_RDIFFER, pag.rate_differenziate() ? "1" : "2"); msk->set(FS_RDIFFER, pag.rate_differenziate() ? "1" : "2");
@ -215,20 +220,18 @@ bool TPrimanota_application::recalc_handler(TMask_field& f, KEY key)
bool TPrimanota_application::nrate_handler(TMask_field& f, KEY key) bool TPrimanota_application::nrate_handler(TMask_field& f, KEY key)
{ {
const TMask& m = f.mask(); if (key == K_TAB && f.focusdirty())
if (key == K_TAB && m.is_running() && app().is_saldaconto())
{ {
TPagamento* pag = app().pagamento(); TPagamento* pag = app().pagamento();
if (pag != NULL) CHECK(pag != NULL, "Null pagament");
pag->set_numero_rate(atoi(f.get()));
if (pag->dirty())
{ {
pag->set_numero_rate(atoi(f.get())); TMask& m = f.mask();
if (pag->dirty()) TSheet_field& ps = (TSheet_field&)m.field(FS_RATESHEET);
{ pag->set_sheet(ps);
TSheet_field& ps = (TSheet_field&)m.field(FS_RATESHEET); app().pag_rows() = ps.rows_array();
pag->set_sheet(ps); }
}
}
else f.reset();
} }
return TRUE; return TRUE;
} }
@ -239,11 +242,11 @@ bool TPrimanota_application::codcab_handler(TMask_field& f, KEY key)
{ {
const TMask& m = f.mask(); const TMask& m = f.mask();
const short id = f.dlg() == FS_NSCAB ? FS_NSABI : FS_VSABI; const short id = f.dlg() == FS_NSCAB ? FS_NSABI : FS_VSABI;
const int pos = id == FS_NSABI ? 6 : 8; const int pos = id == FS_NSABI ? 7 : 9; // Posizione codici ABI sullo sheet
const TString16 abi = m.get(id); const TString16 abi = m.get(id);
const TString16 cab = m.get(id+1); const TString16 cab = m.get(id+1);
TSheet_field& ps = (TSheet_field&)m.field(FS_RATESHEET); TSheet_field& ps = (TSheet_field&)m.field(FS_RATESHEET);
for (int i = ps.items()-1; i >= 0; i--) for (int i = ps.items()-1; i >= 0; i--) // Setta la banca in tutte le righe
{ {
TToken_string& row = ps.row(i); TToken_string& row = ps.row(i);
row.add(abi, pos); row.add(abi, pos);
@ -421,16 +424,16 @@ bool TPrimanota_application::read_scadenze(TMask& m)
pag.set_rata(i-1, importo, ZERO, scad, tipop, ulc, paid); pag.set_rata(i-1, importo, ZERO, scad, tipop, ulc, paid);
TToken_string& str = ps.row(i-1); TToken_string& str = ps.row(i-1);
str.add(scadenza.get(SCAD_CODABIPR), 6); str.add(scadenza.get(SCAD_CODABIPR), 7);
str.add(scadenza.get(SCAD_CODCABPR), 7); str.add(scadenza.get(SCAD_CODCABPR), 8);
str.add(scadenza.get(SCAD_CODABI), 8); str.add(scadenza.get(SCAD_CODABI), 9);
str.add(scadenza.get(SCAD_CODCAB), 9); str.add(scadenza.get(SCAD_CODCAB), 10);
if (i == 1) if (i == 1)
{ {
m.set(FS_NSABI, str.get(6)); m.set(FS_NSABI, str.get(7));
m.set(FS_NSCAB, str.get(7)); m.set(FS_NSCAB, str.get(8));
m.set(FS_VSABI, str.get(8)); m.set(FS_VSABI, str.get(9));
m.set(FS_VSCAB, str.get(9)); m.set(FS_VSCAB, str.get(10));
m.set(FS_AGENTE, scadenza.get(SCAD_CODAG)); m.set(FS_AGENTE, scadenza.get(SCAD_CODAG));
} }
} }
@ -468,17 +471,17 @@ void TPrimanota_application::write_scadenze(const TMask& m)
real imposta(0.0); real imposta(0.0);
real spese(0.0); real spese(0.0);
const TString16 ndoc(m.get(F_NUMDOC)); const TString ndoc(m.get(F_NUMDOC));
const int tmov = causale().tipomov(); const int tmov = causale().tipomov();
const TDate ddoc(m.get(F_DATADOC)); const TDate ddoc(m.get(F_DATADOC));
const TDate dreg(m.get(F_DATAREG)); const TDate dreg(m.get(F_DATAREG));
const TString16 reg (causale().reg().name()); const TString reg (causale().reg().name());
const TString80 desc(m.get(F_DESCR)); const TString desc(m.get(F_DESCR));
const long protiva = m.get_long(F_PROTIVA); const long protiva = m.get_long(F_PROTIVA);
const TString16 codcaus(causale().codice()); const TString codcaus(causale().codice());
const TString16 codval (m.get(S_VALUTA)); const TString codval (m.get(S_VALUTA));
const real cambio (m.get(S_CAMBIO)); const real cambio (m.get(S_CAMBIO));
const TString16 agente (m.get(FS_AGENTE)); const TString agente (m.get(FS_AGENTE));
const char sezione = get_cgs_imp(0).sezione(); // Dare/Avere const char sezione = get_cgs_imp(0).sezione(); // Dare/Avere
const TBill clifo(cgs().row(0), 2, 0x3); const TBill clifo(cgs().row(0), 2, 0x3);
@ -538,12 +541,12 @@ void TPrimanota_application::write_scadenze(const TMask& m)
scadenza.zero(SCAD_IMPORTOVAL); scadenza.zero(SCAD_IMPORTOVAL);
} }
scadenza.put(SCAD_DATASCAD, pag.data_rata(i)); scadenza.put(SCAD_DATASCAD, pag.data_rata(i));
scadenza.put(SCAD_CODABIPR, row.get(6)); scadenza.put(SCAD_CODABIPR, row.get(7));
scadenza.put(SCAD_CODCABPR, row.get(7)); scadenza.put(SCAD_CODCABPR, row.get(8));
scadenza.put(SCAD_CODABI, row.get(8)); scadenza.put(SCAD_CODABI, row.get(9));
scadenza.put(SCAD_CODCAB, row.get(9)); scadenza.put(SCAD_CODCAB, row.get(10));
scadenza.put(SCAD_PAGATA, pag.ratapagata(i));
scadenza.put(SCAD_CODAG, agente); scadenza.put(SCAD_CODAG, agente);
scadenza.put(SCAD_PAGATA, pag.ratapagata(i));
} }
} }

View File

@ -13,7 +13,7 @@ BEGIN
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
BOOLEAN 111 BOOLEAN 112
BEGIN BEGIN
PROMPT 41 3 "Pagata" PROMPT 41 3 "Pagata"
FLAGS "D" FLAGS "D"
@ -46,36 +46,49 @@ BEGIN
ITEM "7|Tratta accettata" ITEM "7|Tratta accettata"
ITEM "8|Altro pagamento" ITEM "8|Altro pagamento"
OUTPUT 105 OUTPUT 105
OUTPUT 106 OUTPUT 107
END END
STRING 106 32 STRING 106 1
BEGIN
PROMPT 1 6 "Ulter. class. "
USE %CLR
INPUT CODTAB[1,1] 105 SELECT
INPUT CODTAB[2,2] 106
DISPLAY "Tipo pagamento" CODTAB[1,1]
DISPLAY "Classificazione" CODTAB[2,2]
DISPLAY "Descrizione@50" S0
OUTPUT 106 CODTAB[2,2]
CHECKTYPE NORMAL
END
STRING 107 32
BEGIN BEGIN
PROMPT 1 6 "Descrizione " PROMPT 1 6 "Descrizione "
FLAGS "D" FLAGS "D"
END END
NUMBER 107 5 NUMBER 108 5
BEGIN BEGIN
PROMPT 1 7 "Ns. Banca ABI " PROMPT 1 7 "Ns. Banca ABI "
FLAGS "Z" FLAGS "Z"
USE %BAN USE %BAN
INPUT CODTAB[1,5] 107 INPUT CODTAB[1,5] 108
INPUT CODTAB[6,10] 108 INPUT CODTAB[6,10] 109
DISPLAY "ABI@5" CODTAB[1,5] DISPLAY "ABI@5" CODTAB[1,5]
DISPLAY "CAB@5" CODTAB[6,10] DISPLAY "CAB@5" CODTAB[6,10]
DISPLAY "Denominazione@50" S0 DISPLAY "Denominazione@50" S0
OUTPUT 107 CODTAB[1,5] OUTPUT 108 CODTAB[1,5]
OUTPUT 108 CODTAB[6,10] OUTPUT 109 CODTAB[6,10]
OUTPUT 126 S0 OUTPUT 126 S0
CHECKTYPE NORMAL CHECKTYPE NORMAL
END END
NUMBER 108 5 NUMBER 109 5
BEGIN BEGIN
PROMPT 27 7 "Ns. Banca CAB " PROMPT 27 7 "Ns. Banca CAB "
FLAGS "Z" FLAGS "Z"
COPY ALL 107 COPY ALL 108
CHECKTYPE NORMAL CHECKTYPE NORMAL
END END
@ -87,39 +100,39 @@ BEGIN
DISPLAY "Denominazione@50" S0 DISPLAY "Denominazione@50" S0
DISPLAY "ABI@5" CODTAB[1,5] DISPLAY "ABI@5" CODTAB[1,5]
DISPLAY "CAB@5" CODTAB[6,10] DISPLAY "CAB@5" CODTAB[6,10]
COPY OUTPUT 107 COPY OUTPUT 108
CHECKTYPE NORMAL
END
NUMBER 109 5
BEGIN
PROMPT 1 9 "Vs. Banca ABI "
FLAGS "Z"
COPY USE 107
INPUT CODTAB[1,5] 109
INPUT CODTAB[6,10] 110
COPY DISPLAY 107
OUTPUT 109 CODTAB[1,5]
OUTPUT 110 CODTAB[6,10]
OUTPUT 128 S0
CHECKTYPE NORMAL CHECKTYPE NORMAL
END END
NUMBER 110 5 NUMBER 110 5
BEGIN
PROMPT 1 9 "Vs. Banca ABI "
FLAGS "Z"
COPY USE 108
INPUT CODTAB[1,5] 110
INPUT CODTAB[6,10] 111
COPY DISPLAY 108
OUTPUT 110 CODTAB[1,5]
OUTPUT 111 CODTAB[6,10]
OUTPUT 128 S0
CHECKTYPE NORMAL
END
NUMBER 111 5
BEGIN BEGIN
PROMPT 27 9 "Vs. Banca CAB " PROMPT 27 9 "Vs. Banca CAB "
FLAGS "Z" FLAGS "Z"
COPY ALL 109 COPY ALL 110
CHECKTYPE NORMAL CHECKTYPE NORMAL
END END
STRING 128 50 45 STRING 128 50 45
BEGIN BEGIN
PROMPT 1 10 "" PROMPT 1 10 ""
COPY USE 109 COPY USE 110
INPUT S0 128 INPUT S0 128
COPY DISPLAY 126 COPY DISPLAY 126
COPY OUTPUT 109 COPY OUTPUT 110
CHECKTYPE NORMAL CHECKTYPE NORMAL
END END

View File

@ -166,6 +166,7 @@ BEGIN
ITEM "In Valuta@15" ITEM "In Valuta@15"
ITEM "%@6" ITEM "%@6"
ITEM "Tipo" ITEM "Tipo"
ITEM "Classif."
ITEM "Pagamento@32" ITEM "Pagamento@32"
ITEM "Ns.ABI" ITEM "Ns.ABI"
ITEM "Ns.CAB" ITEM "Ns.CAB"

View File

@ -156,7 +156,7 @@ public:
// ritorna TRUE se non si poteva; non occorre che sia inizializzato // ritorna TRUE se non si poteva; non occorre che sia inizializzato
// con un importo // con un importo
word recalc_rate(int row, bool is_perc_modified, const char* new_value, word recalc_rate(int row, bool is_perc_modified, const char* new_value,
const char* scad, const char* typ, int rdiff, const char* scad, const char* typ, const char* ulc, int rdiff,
bool mcomm, bool& need_recalc); bool mcomm, bool& need_recalc);
// determina la prossima scadenza // determina la prossima scadenza