From f655fd3b109de02eb4e8011fab2596cc845a3edc Mon Sep 17 00:00:00 2001 From: smen Date: Tue, 12 Apr 2022 12:11:29 +0200 Subject: [PATCH] Patch level : 12.0 1136 Files correlati : fp Commento: corretto il report di stampa dei provvisori: che invertiva clienti e fornitori Sistemata la numerazione dei documenti d'integrazioni inviati Aggiunta funzione in fplib per la compilazione del campo PI_DESCRIZIONE (PAF1800) --- src/fp/fp0700.cpp | 24 ++++++++++++++++++------ src/fp/fp0700a.rep | 8 ++++---- src/fp/fplib.h | 2 ++ src/fp/fplib01.cpp | 25 ++++++++++++++++++++++++- src/include/mask.cpp | 1 + 5 files changed, 49 insertions(+), 11 deletions(-) diff --git a/src/fp/fp0700.cpp b/src/fp/fp0700.cpp index 3d40f389d..edfb2f488 100644 --- a/src/fp/fp0700.cpp +++ b/src/fp/fp0700.cpp @@ -31,7 +31,7 @@ protected: void print_reg(); bool on_field_event(TOperable_field& o, TField_event e, long jolly) override; void next_page(int p) override; - bool on_key(KEY key) override; + virtual bool on_key(KEY key) ; bool check_not_empty(); bool check_full_fields() const; void delete_paf(); @@ -51,10 +51,12 @@ public: void save_all_fields(); TPAR_mask(); virtual ~TPAR_mask() {} + }; TPAR_mask *__mask = nullptr; + void TPAR_mask::save_all_fields() { TSheet_field & scaus = sfield(F_CAUSALI_TIPO); @@ -147,6 +149,7 @@ void TPAR_mask::fill() enable(DLG_OK, filter_selected.empty() || filter_selected == "E" || filter_selected == "X" || filter_selected == "D"); enable(DLG_PRINT, true); enable(DLG_SAVEREC, (is_f8() && (filter_selected == "X") || filter_selected == "D")); + enable(DLG_ALL, true); /* VECCHIA QUERY @@ -176,7 +179,6 @@ void TPAR_mask::fill() bool first, show, ask = !((show = (first = true))); int fat_no_cod = 0; - const TString16 tipodocsdi = get(F_TIPO_SDI); const TDate data_inizio = get_date_start_new_fatt(); // Disabilito la colonna del codice ufficio @@ -194,6 +196,8 @@ void TPAR_mask::fill() const TRectype& mov = rec.cursor()->curr(); const TCli_for & cli = cached_clifor(mov.get_char(MOV_TIPO), mov.get_long(MOV_CODCF)); bool sent = false; + const TCausale& caus = cached_causale(rec.get_string(MOV_CODCAUS), rec.get_int(MOV_ANNOES)); + const TString& tipodocsdi = caus.tipodocsdi(); if (chiave_paf_mov(mov, tipodocsdi, hfatt, bfatt)) { @@ -213,8 +217,7 @@ void TPAR_mask::fill() regs.set_row_cell(S_ANNO, rec.get_int(MOV_ANNOES), r); regs.set_row_cell(S_NUMREG, rec.get_string(MOV_NUMREG), r); regs.set_row_cell(S_DATAREG, rec.get_date(MOV_DATAREG), r); - const TCausale& caus = cached_causale(rec.get_string(MOV_CODCAUS), rec.get_int(MOV_ANNOES)); - regs.set_row_cell(S_TIPODOC, caus.tipodocsdi(), r); + regs.set_row_cell(S_TIPODOC,tipodocsdi, r); regs.set_row_cell(S_NUMDOC, rec.get_string(MOV_NUMDOC), r); regs.set_row_cell(S_DATADOC, rec.get_date(MOV_DATADOC), r); regs.set_row_cell(S_CLIENTE, rec.get_long(MOV_CODCF), r); @@ -612,8 +615,17 @@ void TPAR_mask::next_page(int p) TAutomask::next_page(p); } -bool TPAR_mask::on_key(const KEY key) +bool TPAR_mask::on_key(KEY key) { + const bool ok = TMask::on_key(key); + + if (ok && curr_page() == 0) + { + disable(DLG_OK); + disable(DLG_PRINT); + disable(DLG_SAVEREC); + disable(DLG_ALL); + } if (key == K_SHIFT + K_F12) { if (run_fp_psw_mask()) @@ -623,7 +635,7 @@ bool TPAR_mask::on_key(const KEY key) force_reload_sheet(); } } - return true; + return ok; } bool TPAR_mask::check_not_empty() diff --git a/src/fp/fp0700a.rep b/src/fp/fp0700a.rep index de6a1159a..5b12d8252 100644 --- a/src/fp/fp0700a.rep +++ b/src/fp/fp0700a.rep @@ -20,13 +20,13 @@ -