Patch level : 12.0 972

Files correlati     : f90.exe d181.des f181.dir/.trr f9ProspIntegr.rep masks f90104.sql
Commento            :
- Rimosso controllo vendite in ogni caso. Incompatibilita' con diverse situazioni tra cui note di credito interne che non sono fatture elettroniche.
- Rimosso flag check vendite e il suo utilizzo nel codice.
- Aggiornamento stato estrazione solo dopo scrittura f9iva.
- Migliorata e resa piu' sicura query per iva aggiungendo tipi diversi e controllo lunghezza colonna.
- Corretti nomi campi, che venivano invertiti IVA_ANNPROT e IVA_NUMPROT.
- Aggiunto controllo in apertura controllo estrazione solo se il pacchetto e' in errore diag. gest.
- Spostata in una classe separata la maschera per l'apertura del pacchetto (Apri estr.).
- Corretta modifica f9wa rimaneva vuoto il record in alcuni casi.
- Aggiunta possibilita' di esclusione movimenti dall'Apri estr.
This commit is contained in:
Simone Palacino 2020-07-01 10:24:15 +02:00
parent 722382afd5
commit f052478cd4
6 changed files with 26 additions and 13 deletions

View File

@ -187,7 +187,7 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\cg\cg2101.cpp" />
<ClCompile Include="..\src\cg\cglib06.cpp" />
<ClCompile Include="..\src\f9\f90.cpp" />
<ClCompile Include="..\src\f9\f90100.cpp" />
<ClCompile Include="..\src\f9\f90300.cpp" />
@ -200,6 +200,7 @@
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\src\cg\cg2101.h" />
<ClInclude Include="..\src\cg\cglib.h" />
<ClInclude Include="..\src\f9\f90.h" />
<ClInclude Include="..\src\f9\f90100.h" />
<ClInclude Include="..\src\f9\f90100a.h" />

View File

@ -63,6 +63,9 @@
<ClInclude Include="..\src\cg\cg2101.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="..\src\cg\cglib.h">
<Filter>Headers</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\f9\f90.cpp">
@ -86,7 +89,7 @@
<ClCompile Include="..\src\f9\f90400.cpp">
<Filter>Sources</Filter>
</ClCompile>
<ClCompile Include="..\src\cg\cg2101.cpp">
<ClCompile Include="..\src\cg\cglib06.cpp">
<Filter>Sources</Filter>
</ClCompile>
</ItemGroup>

View File

@ -242,7 +242,12 @@ void TEstrai_mask::segna_in_errore() const
bool TEstrai_mask::estrai_handler(TMask_field& f, KEY key)
{
TEstrai_mask& msk = (TEstrai_mask&)f.mask();
TF9_app& a = f9_app();
TF9_app& app = f9_app();
// Controllo che esistano delle categorie documentali.
TCategorie_doc catdoc;
if(catdoc.get_array_rows().items() == 0)
warning_box("");
// Estraggo
const int stato = msk.estrai(); // Main function
@ -251,7 +256,7 @@ bool TEstrai_mask::estrai_handler(TMask_field& f, KEY key)
if (stato == 1)
{
message_box("Estrazione avvenuta con successo!");
a.segna_estratti();
app.segna_estratti();
}
if (stato == 0 || stato == -3)
{
@ -259,7 +264,7 @@ bool TEstrai_mask::estrai_handler(TMask_field& f, KEY key)
if (stato == 0) // Errore scrittura F9IVA, non segno in errore in testata...
msk.segna_in_errore(); // ... se l'errore e' dovuto alla scrittura sul db.
}
a.print_log();
app.print_log();
msk.field(ES_DESCR).set("");
msk.stop_run(K_FORCE_CLOSE);
return true;

View File

@ -6,7 +6,7 @@
#include "f901tab.h"
#include "progind.h"
#include "clifo.h"
#include "cg2103.h"
#include "cglib.h"
#include "mov.h"
#include "../fp/fplib.h"
#include "annessif9.h"

View File

@ -8,10 +8,9 @@
#include "strings.h"
#include "date.h"
#include "real.h"
#include "cglib01.h"
#include "cglib.h"
#include "sheet.h"
#include "sqlset.h"
#include "cg2101.h"
#include "reprint.h"
#define INI_PAR_MOD "F9"
@ -535,8 +534,6 @@ class TProspetto_recset final : public TSQL_recordset
TString* _totimponibile;
TString* _totimposta;
TMovimentoPN* _movimento_pn;
static void format_string(TString& str_out, const TString& str) { str_out.cut(0) << "'" << str << "'"; }
static void format_string(TString& str_out, const char* str) { format_string(str_out, TString(str)); }
static void format_string(TString& str_out, const TDate& date) { TString dt; dt << date.date2ansi(); format_string(str_out, dt); }

View File

@ -383,12 +383,19 @@ TProspetto_recset::TProspetto_recset(const char* numreg_acq, const char* numreg_
// Calcolo dal rmoviva
real s_imponibili, s_imposte;
_movimento_pn = new TMovimentoPN;
TRectype& rec = _movimento_pn->curr();
TMovimento_contabile movimento_pn;
TBaseisamfile mov(LF_MOV);
mov.put(MOV_NUMREG, numreg_ven);
if (movimento_pn.read(mov) != NOERR)
bool simo = true;
s_imponibili = movimento_pn.imponibile("");
s_imposte = movimento_pn.imposta("");
/*TRectype& rec = _movimento_pn->curr();
rec.put(MOV_NUMREG, numreg_ven);
if (_movimento_pn->read() != NOERR)
bool simo = true;
_movimento_pn->get_sum_imponibile_imposta(s_imponibili, s_imposte);
_movimento_pn->get_sum_imponibile_imposta(s_imponibili, s_imposte);*/
format_string(*_totale, TString() << s_imponibili + s_imposte);
format_string(*_totimponibile, s_imponibili.stringa());