Patch level : 10.0 577
Files correlati : lv2.exe Ricompilazione Demo : [ ] Commento : Fatturazione 02 e velocizzazione calcolo consegnato mensile git-svn-id: svn://10.65.10.50/trunk@19914 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
12dd0b83a9
commit
1494671c5b
@ -97,6 +97,7 @@ class TFatturazione_lavanderie:public TFatturazione_bolle
|
|||||||
TDate _data_elab;
|
TDate _data_elab;
|
||||||
TToken_string _campi_raggruppamento;
|
TToken_string _campi_raggruppamento;
|
||||||
TAssoc_array _output_rows_02;
|
TAssoc_array _output_rows_02;
|
||||||
|
bool _prova;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void add_rows(TRiga_documento & rout, TRiga_documento & rin);
|
virtual void add_rows(TRiga_documento & rout, TRiga_documento & rin);
|
||||||
@ -112,17 +113,17 @@ protected:
|
|||||||
virtual bool riferimenti_in_testa() const { return true; }
|
virtual bool riferimenti_in_testa() const { return true; }
|
||||||
virtual TRiga_documento& find_or_create_row(TDocumento& doc_out, const TRiga_documento & rin,const char lavtype);
|
virtual TRiga_documento& find_or_create_row(TDocumento& doc_out, const TRiga_documento & rin,const char lavtype);
|
||||||
void aggiorna_fattura(TDocumento & doc, int codcont);
|
void aggiorna_fattura(TDocumento & doc, int codcont);
|
||||||
|
bool fatt_02() const { return !_prova &&lv_is_02_active(); }
|
||||||
public:
|
public:
|
||||||
virtual bool elabora(TLista_documenti& doc_in, TLista_documenti& doc_out,
|
virtual bool elabora(TLista_documenti& doc_in, TLista_documenti& doc_out,
|
||||||
const TDate& data_elab, bool interattivo = false);
|
const TDate& data_elab, bool interattivo = false);
|
||||||
|
|
||||||
TFatturazione_lavanderie(const char* cod);
|
TFatturazione_lavanderie(const char* cod, bool prova = false);
|
||||||
~TFatturazione_lavanderie() {}
|
~TFatturazione_lavanderie() {}
|
||||||
};
|
};
|
||||||
|
|
||||||
TFatturazione_lavanderie::TFatturazione_lavanderie(const char* cod)
|
TFatturazione_lavanderie::TFatturazione_lavanderie(const char* cod, bool prova)
|
||||||
: TFatturazione_bolle(cod)
|
: TFatturazione_bolle(cod), _prova(prova)
|
||||||
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -747,7 +748,7 @@ void TFatturazione_lavanderie::post_process(TLista_documenti& doc_out, TLista_do
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (redditivita > ZERO && lv_is_02_active() && !ragart && tipocan != 1)
|
if (redditivita > ZERO && fatt_02() && !ragart && tipocan != 1)
|
||||||
{
|
{
|
||||||
const real totdoc = doc.totale_doc();
|
const real totdoc = doc.totale_doc();
|
||||||
const real provvigione1 = doc.provvigione();
|
const real provvigione1 = doc.provvigione();
|
||||||
@ -1034,7 +1035,7 @@ TRiga_documento& TFatturazione_lavanderie::find_or_create_row(TDocumento& doc_ou
|
|||||||
row.put("LVTYPE", lavtype);
|
row.put("LVTYPE", lavtype);
|
||||||
r = row.get_int(RDOC_NRIGA);
|
r = row.get_int(RDOC_NRIGA);
|
||||||
}
|
}
|
||||||
if (lv_is_02_active())
|
if (fatt_02())
|
||||||
{
|
{
|
||||||
doc_out.set_row_ids();
|
doc_out.set_row_ids();
|
||||||
const TString key = format("%04d%04d", doc_out.get_int("FATID"), doc_out[r].get_int(RDOC_IDRIGA));
|
const TString key = format("%04d%04d", doc_out.get_int("FATID"), doc_out[r].get_int(RDOC_IDRIGA));
|
||||||
@ -1376,6 +1377,15 @@ bool TFatturazione_lav_app::controlli_preliminari()
|
|||||||
|
|
||||||
void TFatturazione_lav_app::main_loop()
|
void TFatturazione_lav_app::main_loop()
|
||||||
{
|
{
|
||||||
|
bool prova = false;
|
||||||
|
|
||||||
|
if (main_app().argc() > 2)
|
||||||
|
{
|
||||||
|
TString16 tpela = main_app().argv(2);
|
||||||
|
tpela = tpela.mid(4);
|
||||||
|
prova = (tpela == "FatPro");
|
||||||
|
}
|
||||||
|
|
||||||
//instanzio la maschera
|
//instanzio la maschera
|
||||||
_msk = new TFatturazione_msk();
|
_msk = new TFatturazione_msk();
|
||||||
|
|
||||||
@ -1415,7 +1425,7 @@ void TFatturazione_lav_app::main_loop()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//instanzio una TFatturaziome_lavanderie
|
//instanzio una TFatturaziome_lavanderie
|
||||||
TFatturazione_lavanderie elab(_msk->get(F_COD_ELAB));
|
TFatturazione_lavanderie elab(_msk->get(F_COD_ELAB), prova);
|
||||||
//preparo le variabili di interesse
|
//preparo le variabili di interesse
|
||||||
TLista_documenti docsin;
|
TLista_documenti docsin;
|
||||||
TLista_documenti docsout;
|
TLista_documenti docsout;
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
TFatturazione_bolle::TFatturazione_bolle(const char* cod)
|
TFatturazione_bolle::TFatturazione_bolle(const char* cod)
|
||||||
: TElaborazione(cod)
|
: TElaborazione(cod)
|
||||||
{
|
{
|
||||||
TString16 name; name.format("AGGFLD(%s)", cod);
|
TString80 name; name.format("AGGFLD(%s)", cod);
|
||||||
_lista_campi = ini_get_string(CONFIG_DITTA, "ve", name);
|
_lista_campi = ini_get_string(CONFIG_DITTA, "ve", name);
|
||||||
|
|
||||||
name.format("ROWSORT(%s)", cod);
|
name.format("ROWSORT(%s)", cod);
|
||||||
@ -495,6 +495,7 @@ bool TFatturazione_bolle::elabora(TLista_documenti& doc_in, TLista_documenti& do
|
|||||||
|
|
||||||
// Aggiungilo alla lista dei documenti in uscita
|
// Aggiungilo alla lista dei documenti in uscita
|
||||||
od = doc_out.add(new_doc);
|
od = doc_out.add(new_doc);
|
||||||
|
new_doc->put("FATID", od + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (change_clifo())
|
if (change_clifo())
|
||||||
@ -511,7 +512,7 @@ bool TFatturazione_bolle::elabora(TLista_documenti& doc_in, TLista_documenti& do
|
|||||||
}
|
}
|
||||||
|
|
||||||
post_process_input(doc_in);
|
post_process_input(doc_in);
|
||||||
const int tot = doc_out.items();
|
int tot = doc_out.items();
|
||||||
const TString4 codnum(codice_numerazione_finale());
|
const TString4 codnum(codice_numerazione_finale());
|
||||||
|
|
||||||
for (int i = 0; i < tot; i++) // Forza tipo e numerazione documento.
|
for (int i = 0; i < tot; i++) // Forza tipo e numerazione documento.
|
||||||
@ -547,7 +548,14 @@ bool TFatturazione_bolle::elabora(TLista_documenti& doc_in, TLista_documenti& do
|
|||||||
if (_rowsort.full())
|
if (_rowsort.full())
|
||||||
d.sort_rows(_rowsort);
|
d.sort_rows(_rowsort);
|
||||||
}
|
}
|
||||||
post_process_output(doc_out);
|
post_process(doc_out, doc_in);
|
||||||
|
tot = doc_out.items();
|
||||||
|
for (int i = 0; i < tot; i++) // Forza tipo e numerazione documento.
|
||||||
|
{
|
||||||
|
TDocumento& d = doc_out[i];
|
||||||
|
d.put("FATID", 0);
|
||||||
|
}
|
||||||
|
|
||||||
return tot > 0;
|
return tot > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user