Patch level : 10.0 patch 828
Files correlati : ve0,exe Ricompilazione Demo : [ ] Commento Aggiunta la stringa ORDER sul profilo tipo riga documento per ordinare le righe in evasione (handler 5) per HABA git-svn-id: svn://10.65.10.50/branches/R_10_00@21067 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
e163536c47
commit
3ea68c62a8
@ -1371,7 +1371,7 @@ protected:
|
||||
virtual bool get_ini_paragraph(const TEdit_field& field, TString& parag) const;
|
||||
|
||||
public:
|
||||
TLink_article_sheet(TCursor& cur, TEdit_field& f);
|
||||
TLink_article_sheet(TCursor& cur, TEdit_field& f, const char * fieldlist, const char * headers);
|
||||
};
|
||||
|
||||
bool TLink_article_sheet::get_ini_paragraph(const TEdit_field& field, TString& parag) const
|
||||
@ -1382,13 +1382,10 @@ bool TLink_article_sheet::get_ini_paragraph(const TEdit_field& field, TString& p
|
||||
return ok;
|
||||
}
|
||||
|
||||
TLink_article_sheet::TLink_article_sheet(TCursor& cur, TEdit_field& f)
|
||||
: TBrowse_sheet(&cur, "-201->S0|-202->S0|NDOC|33->DATADOC|QTA|QTAEVASA",
|
||||
TR("Ricerca Prezzi"),
|
||||
HR("Numerazione@18|Tipo Documento@18|Num.|Data@10|Quantità@15P|Evaso@15P"),
|
||||
0, f, TToken_string())
|
||||
{ }
|
||||
|
||||
TLink_article_sheet::TLink_article_sheet(TCursor& cur, TEdit_field& f, const char * fieldlist, const char * headers)
|
||||
: TBrowse_sheet(&cur, fieldlist, TR("Evasione"), headers, 0, f, TToken_string())
|
||||
{ }
|
||||
|
||||
bool link_row_handler(TMask_field& f, KEY key )
|
||||
{
|
||||
@ -1406,7 +1403,7 @@ bool link_row_handler(TMask_field& f, KEY key )
|
||||
if ((tipo.search_active_docs().blank()) || (tipo.search_active_docs().find(doc.tipo().codice()) >= 0))
|
||||
{
|
||||
TEdit_field& ef = (TEdit_field&)f;
|
||||
const TString& codart = row_mask.get(FR_CODART);
|
||||
const TCodice_articolo codart(row_mask.get(FR_CODART));
|
||||
const bool select_clifo = tipo.select_clifo();
|
||||
|
||||
if (codart.full() && r.get(RDOC_DACODNUM).empty())
|
||||
@ -1468,6 +1465,7 @@ bool link_row_handler(TMask_field& f, KEY key )
|
||||
filter << ")";
|
||||
}
|
||||
|
||||
|
||||
TRelation rel(LF_RIGHEDOC);
|
||||
TRectype from(rel.curr());
|
||||
TRectype to(rel.curr());
|
||||
@ -1475,6 +1473,15 @@ bool link_row_handler(TMask_field& f, KEY key )
|
||||
rel.lfile().set_curr(new TLink_riga_documento(&mask));
|
||||
|
||||
rel.add(LF_DOC, "PROVV==PROVV|ANNO=ANNO|CODNUM==CODNUM|NDOC==NDOC");
|
||||
|
||||
if (select_clifo)
|
||||
{
|
||||
filter << "&&(33->TIPOCF==\"" << doc.get(DOC_TIPOCF) << "\")";
|
||||
filter << "&&(33->CODCF==\"" << doc.get(DOC_CODCF) << "\")";
|
||||
}
|
||||
else
|
||||
rel.add(LF_CLIFO, "TIPOCF==TIPOCF|CODCF==CODCF", 1, LF_DOC);
|
||||
|
||||
|
||||
const int last_anno = mask.get_int(F_ANNO);
|
||||
const int first_anno = last_anno - tipo.search_years();
|
||||
@ -1489,13 +1496,31 @@ bool link_row_handler(TMask_field& f, KEY key )
|
||||
to.put(RDOC_CODNUM, last_num);
|
||||
to.put(RDOC_ANNO, last_anno);
|
||||
to.put(RDOC_PROVV, 'D');
|
||||
TSorted_cursor cur(&rel, "33->DATADOC|CODNUM|NDOC", filter, 5, &from, &to);
|
||||
TString order = tipo.order();
|
||||
|
||||
if (order.blank())
|
||||
order ="33->DATADOC|CODNUM|NDOC";
|
||||
|
||||
TSorted_cursor cur(&rel, order, filter, 5, &from, &to);
|
||||
|
||||
cur.items();
|
||||
cur.freeze();
|
||||
cur.relation()->add("%NUM", "CODTAB==CODNUM", 1, 0, 201);
|
||||
cur.relation()->add("%TIP", "CODTAB==TIPODOC", 1, LF_DOC, 202);
|
||||
TToken_string fieldlist = tipo.field_list();
|
||||
TToken_string header = tipo.header();
|
||||
|
||||
if (fieldlist.blank())
|
||||
fieldlist = "-201->S0|-202->S0|NDOC|33->DATADOC|QTA|QTAEVASA";
|
||||
if (header.blank())
|
||||
header = HR("Numerazione@18|Tipo Documento@18|Num.|Data@10|Quantità@15P|Evaso@15P");
|
||||
|
||||
TLink_article_sheet sheet(cur, (TEdit_field&)f);
|
||||
if (!select_clifo)
|
||||
{
|
||||
fieldlist << "|20->CODCF|20->RAGSOC";
|
||||
header << HR("|Codice|Ragione sociale@50");
|
||||
}
|
||||
TLink_article_sheet sheet(cur, (TEdit_field&)f, fieldlist, header);
|
||||
sheet.add_string (FR_DESCR, 0, "", 38, 0, 50, "D", 30);
|
||||
sheet.set(FR_CODART, codart);
|
||||
sheet.set(FR_DESCR, cache().get(LF_ANAMAG, codart, "DESCR"));
|
||||
@ -1512,8 +1537,9 @@ bool link_row_handler(TMask_field& f, KEY key )
|
||||
|
||||
father_row.set_doc(&doc);
|
||||
r.put(RDOC_LIVELLO, livello);
|
||||
r.put(RDOC_QTA, father_row.qtaresidua());
|
||||
TToken_string flds = tipo.fields_to_update();
|
||||
r.put(r.field_qta(), father_row.qtaresidua());
|
||||
|
||||
TToken_string & flds = tipo.fields_to_update();
|
||||
|
||||
FOR_EACH_TOKEN(flds, fld)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user