git-svn-id: svn://10.65.10.50/branches/R_10_00@23184 c028cbd2-c16b-5b4b-a496-9718f37d4682

This commit is contained in:
guy 2016-02-25 11:37:39 +00:00
parent bbc06b1603
commit 7fede88bb6
5 changed files with 59 additions and 16 deletions

View File

@ -185,7 +185,7 @@ THEN
<source>#340-#330</source>
</field>
<field x="90" y="3" type="Numero" valign="bottom" align="right" width="6" id="360" pattern="1" hide_zero="1">
<prescript description="F1.360 PRESCRIPT">MON
<prescript description="F1.360 PRESCRIPT">
#330 @
0 &#3E; IF
#350 @

View File

@ -89,7 +89,6 @@
</section>
<section type="Foot" pattern="1" />
<section type="Foot" level="1" pattern="1" />
<section type="Foot" level="2" pattern="1" />
<sql>USE IVADIFF SELECT (BETWEEN(DATAREGP,#DAL,#AL))&#26;&#26;(TIPOIVA==#TIPOIVA)&#26;&#26;(TIPODIFF==#TIPODIFF)&#26;&#26;(NUMPRO>0)&#26;&#26;((CHIUSA=#CHIUSA)||(#CHIUSA="T"))
BY NUMREG DATAREGP NUMREGP
JOIN MOV INTO NUMREG==NUMREG

View File

@ -111,6 +111,7 @@ protected:
public:
void set(const char* key, const char* value);
const TString& get(const char* key) const;
void save();
TJava_profile(const char* path);
~TJava_profile() { if (_dirty) save(); }
@ -129,6 +130,24 @@ const TString& TJava_profile::path2prop(const char* path) const
return get_tmp_string() = percorso;
}
const TString& TJava_profile::get(const char* key) const
{
FOR_EACH_ARRAY_ROW(_row, r, line)
{
if (line->starts_with(key, true))
{
const int equal = line->find('=');
if (equal > 0)
{
TString& value = get_tmp_string();
value = line->mid(equal+1);
value.trim();
return value;
}
}
}
return EMPTY_STRING;
}
void TJava_profile::set(const char* key, const char* value)
{
@ -1534,7 +1553,8 @@ bool TDoc2Paf::genera_xml()
if (tmp.exist())
{
TJava_profile prop(tmp);
prop.set("percorso", _dbname.path());
if (prop.get("percorso").blank())
prop.set("percorso", _dbname.path());
prop.set("nomePAF", _dbname);
}
else

View File

@ -400,15 +400,11 @@ TSAL_tree& TSAL_emsk::tree(bool reset)
return *_tree;
}
static bool set_and_check(TMask_field& f, const TRectype& rec)
static bool rec2field(TMask_field& f, const TRectype& rec)
{
const TFieldref* fr = f.field();
if (fr == NULL)
{
if (f.ghost())
return f.on_hit();
return false;
}
if (fr->name() == RDOC_DESCR)
{
@ -420,21 +416,35 @@ static bool set_and_check(TMask_field& f, const TRectype& rec)
}
else
{
f.set(fr->read(rec));
const TString& val = fr->read(rec);
f.set(val);
if (!f.empty() && f.is_edit() && f.shown())
{
const TBrowse* b = ((TEdit_field&)f).browse();
if (b != NULL)
{
const TFixed_string of = b->get_output_fields();
if (of.find('|') > 0) // C'è un pipe nell'output, per cui ci sono almeno due campi di output
const TFixed_string inf = b->get_input_fields();
const TFixed_string outf = b->get_output_fields();
if (outf.find('|') > 0) // C'è un pipe nell'output, per cui ci sono almeno due campi di output
{
f.check(STARTING_CHECK);
}
}
}
}
return true;
}
static bool chk_field(TMask_field& f)
{
const TFieldref* fr = f.field();
if (fr == NULL)
{
if (f.ghost())
return f.on_hit();
}
return true;
}
// Riempie gli sheet di articoli e misure della distinta selezionata
bool TSAL_emsk::set_dist(const TString& idd)
@ -461,8 +471,10 @@ bool TSAL_emsk::set_dist(const TString& idd)
{
const TRectype& rec = *t.curr_row();
TMask& m = s.sheet_row_mask(n);
FOR_EACH_MASK_FIELD(m, i, f)
set_and_check(*f, rec);
FOR_EACH_MASK_FIELD(m, i, f) if (f->field())
rec2field(*f, rec);
FOR_EACH_MASK_FIELD(m, i, c) if (c->is_edit())
chk_field(*c);
s.update_row(n++);
}
_locked = false;
@ -519,8 +531,10 @@ bool TSAL_emsk::set_fase(const TString& idfase)
{
const TRectype& rec = *t.curr_row();
TMask& m = d.sheet_row_mask(n);
FOR_EACH_MASK_FIELD(m, i, f)
set_and_check(*f, rec);
FOR_EACH_MASK_FIELD(m, i, f) if (f->field())
rec2field(*f, rec);
FOR_EACH_MASK_FIELD(m, i, c) if (c->is_edit())
chk_field(*c);
d.update_row(n++);
} while (t.goto_rbrother());
}

View File

@ -14,6 +14,7 @@
#include <wx/clipbrd.h>
#include <wx/dialup.h>
#include <wx/fileconf.h>
#include <wx/filefn.h>
#include <wx/filename.h>
#include <wx/image.h>
#include <wx/protocol/ftp.h>
@ -1813,12 +1814,21 @@ SLIST xvt_fsys_list_files(const char *type, const char *pat, BOOLEAN dirs)
}
else //normale list_files
{
wxString ext;
if (flags == wxFILE)
wxSplitPath(pat, NULL, NULL, &ext);
wxString f = ::wxFindFirstFile(pat, flags);
while (!f.IsEmpty())
{
if (f.StartsWith(".\\") || f.StartsWith("./"))
f = f.Mid(2);
xvt_slist_add_at_elt(list, NULL, f, 0L);
bool bGood = true;
if (flags == wxFILE && ext.Len() >= 3)
bGood = wxStricmp(ext, f.AfterLast('.')) == 0;
if (bGood)
xvt_slist_add_at_elt(list, NULL, f, 0L);
f = ::wxFindNextFile();
}
}