diff --git a/ve/ve1300.cpp b/ve/ve1300.cpp index 9de0ad912..a0dead98e 100755 --- a/ve/ve1300.cpp +++ b/ve/ve1300.cpp @@ -935,6 +935,7 @@ class TReport_doc_app : public TSkeleton_application TString16 _codnum; // codice numerazione / profilo long _ndoc, _codcf; char _tipocf; + bool _no_print_dlg; protected: void add_data_filter(TString& query, bool from) const; @@ -1230,7 +1231,12 @@ bool TReport_doc_app::print_loop(TRecordset& doc, TOutput_mode mode, bool is_def xvt_sys_goto_url(pdf, "open"); } break; - default: book.print(); break; + default: + if (_no_print_dlg) + book.print(1, book.pages()); // Evita di chiedere da pag. a pag. + else + book.print(); + break; } } @@ -1272,8 +1278,9 @@ void TReport_doc_app::print_selection(TOutput_mode mode) // Elabora una transazione del tipo // [Transaction] -// Action = Print +// Action = Stampa // Mode = D +// NoPrintDlg = X // [33] // Doc(0)=D|2009|F01|1 // Doc(1)=D|2009|A02|2 @@ -1282,12 +1289,13 @@ void TReport_doc_app::print_trans(const char* ininame) TTrans_recordset doc(ininame); if (doc.items() > 0) { - char a='P', m='D'; + char a='S', m='P'; if (ininame && *ininame) // Dummy test { TConfig ini(ininame, "Transaction"); - a = ini.get("Action")[0]; - m = ini.get("Mode")[0]; + a = ini.get("Action")[0]; // Stampa, Anteprima, Pdf, ... + m = ini.get("Mode")[0]; // Definitivo o Provvisori + _no_print_dlg = ini.get_bool("NoPrintDlg"); } const TOutput_mode mode = key2mode(a); const bool is_definitive = m == 'D'; @@ -1297,7 +1305,7 @@ void TReport_doc_app::print_trans(const char* ininame) cantread_box(ininame); } -//Allah!! +// Traduce un carattere ASCII nella corrispondente modalita' di stampa TReport_doc_app::TOutput_mode TReport_doc_app::key2mode(KEY k) const { TOutput_mode mode = out_print; @@ -1322,8 +1330,8 @@ TReport_doc_app::TOutput_mode TReport_doc_app::key2mode(KEY k) const void TReport_doc_app::main_loop() { + _no_print_dlg = false; const int a = argc(); - if (a > 2) { const TFixed_string arg = argv(2);