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;
|
||||
TToken_string _campi_raggruppamento;
|
||||
TAssoc_array _output_rows_02;
|
||||
bool _prova;
|
||||
|
||||
protected:
|
||||
virtual void add_rows(TRiga_documento & rout, TRiga_documento & rin);
|
||||
@ -112,17 +113,17 @@ protected:
|
||||
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);
|
||||
void aggiorna_fattura(TDocumento & doc, int codcont);
|
||||
|
||||
bool fatt_02() const { return !_prova &&lv_is_02_active(); }
|
||||
public:
|
||||
virtual bool elabora(TLista_documenti& doc_in, TLista_documenti& doc_out,
|
||||
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(const char* cod)
|
||||
: TFatturazione_bolle(cod)
|
||||
TFatturazione_lavanderie::TFatturazione_lavanderie(const char* cod, bool prova)
|
||||
: 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 provvigione1 = doc.provvigione();
|
||||
@ -1034,7 +1035,7 @@ TRiga_documento& TFatturazione_lavanderie::find_or_create_row(TDocumento& doc_ou
|
||||
row.put("LVTYPE", lavtype);
|
||||
r = row.get_int(RDOC_NRIGA);
|
||||
}
|
||||
if (lv_is_02_active())
|
||||
if (fatt_02())
|
||||
{
|
||||
doc_out.set_row_ids();
|
||||
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()
|
||||
{
|
||||
bool prova = false;
|
||||
|
||||
if (main_app().argc() > 2)
|
||||
{
|
||||
TString16 tpela = main_app().argv(2);
|
||||
tpela = tpela.mid(4);
|
||||
prova = (tpela == "FatPro");
|
||||
}
|
||||
|
||||
//instanzio la maschera
|
||||
_msk = new TFatturazione_msk();
|
||||
|
||||
@ -1415,7 +1425,7 @@ void TFatturazione_lav_app::main_loop()
|
||||
}
|
||||
|
||||
//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
|
||||
TLista_documenti docsin;
|
||||
TLista_documenti docsout;
|
||||
|
@ -10,7 +10,7 @@
|
||||
TFatturazione_bolle::TFatturazione_bolle(const char* 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);
|
||||
|
||||
name.format("ROWSORT(%s)", cod);
|
||||
@ -311,7 +311,7 @@ bool TFatturazione_bolle::raggruppa(TDocumento& doc_in, TDocumento& doc_out)
|
||||
const bool ragg_rig = campi_riga.full();
|
||||
|
||||
FOR_EACH_PHYSICAL_RDOC(doc_in, r, rin)
|
||||
elabora_riga(*rin, doc_out, usa_dcons, ragg_rig, ignora_desc, campi_riga, dcons, ddoc);
|
||||
elabora_riga(*rin, doc_out, usa_dcons, ragg_rig, ignora_desc, campi_riga, dcons, ddoc);
|
||||
|
||||
//cambio stato documento
|
||||
bool cambia_stato_doc_in = true;
|
||||
@ -494,7 +494,8 @@ bool TFatturazione_bolle::elabora(TLista_documenti& doc_in, TLista_documenti& do
|
||||
new_doc->put(DOC_DATADOC, data_elab);
|
||||
|
||||
// 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())
|
||||
@ -511,7 +512,7 @@ bool TFatturazione_bolle::elabora(TLista_documenti& doc_in, TLista_documenti& do
|
||||
}
|
||||
|
||||
post_process_input(doc_in);
|
||||
const int tot = doc_out.items();
|
||||
int tot = doc_out.items();
|
||||
const TString4 codnum(codice_numerazione_finale());
|
||||
|
||||
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())
|
||||
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;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user