private System.Data.DataTable prepare_datatable(ref BO.myQuery mq, BO.TheGridState gridState) { mq.explicit_columns = _colsProvider.ParseTheGridColumns(mq.Prefix, gridState.j72Columns); if (string.IsNullOrEmpty(gridState.j75SortDataField) == false) { try { mq.explicit_orderby = _colsProvider.ByUniqueName(gridState.j75SortDataField).getFinalSqlSyntax_ORDERBY() + " " + gridState.j75SortOrder; } catch { } } if (String.IsNullOrEmpty(gridState.j75Filter) == false) { mq.TheGridFilter = _colsProvider.ParseAdhocFilterFromString(gridState.j75Filter, mq.explicit_columns); } mq.lisPeriods = _pp.getPallete(); if (string.IsNullOrEmpty(gridState.j72MasterEntity) && BL.TheEntities.ByTable(gridState.j72Entity).IsGlobalPeriodQuery) { BO.ThePeriod per = InhaleGridPeriodDates(mq.Prefix); mq.global_d1 = per.d1; mq.global_d2 = per.d2; } if (gridState.j72HashJ73Query) { mq.lisJ73 = Factory.j72TheGridTemplateBL.GetList_j73(gridState.j72ID, gridState.j72Entity.Substring(0, 3)); } mq.InhaleMasterEntityQuery(gridState.j72MasterEntity, gridState.MasterPID); return(Factory.gridBL.GetList(mq)); }
Invoke(string entity, int j72id, int go2pid, string master_entity, int master_pid, int contextmenuflag, string ondblclick, string master_flag, int masterviewflag) { var ret = new TheGridViewModel(); ret.Entity = entity; var mq = new BO.myQuery(entity); BO.TheGridState gridState = null; if (j72id > 0) { gridState = _f.j72TheGridTemplateBL.LoadState(j72id, _f.CurrentUser.pid); } if (gridState == null) { gridState = _f.j72TheGridTemplateBL.LoadState(entity, _f.CurrentUser.pid, master_entity); //výchozí, systémový grid: j72IsSystem=1 } if (gridState == null) //pro uživatele zatím nebyl vygenerován záznam v j72 -> vygenerovat { var cols = _colsProvider.getDefaultPallete(false, mq); //výchozí paleta sloupců var recJ72 = new BO.j72TheGridTemplate() { j72IsSystem = true, j72Entity = entity, j03ID = _f.CurrentUser.pid, j72Columns = String.Join(",", cols.Select(p => p.UniqueName)), j72MasterEntity = master_entity }; var intJ72ID = _f.j72TheGridTemplateBL.Save(recJ72, null, null, null); gridState = _f.j72TheGridTemplateBL.LoadState(intJ72ID, _f.CurrentUser.pid); } gridState.j75CurrentRecordPid = go2pid; gridState.ContextMenuFlag = contextmenuflag; gridState.j72MasterEntity = master_entity; gridState.MasterPID = master_pid; gridState.OnDblClick = ondblclick; gridState.MasterViewFlag = masterviewflag; gridState.MasterFlag = master_flag; var cc = new TheGridController(_colsProvider, _pp); cc.Factory = _f; ret.firstdata = cc.render_thegrid_html(gridState); ret.ondblclick = ondblclick; ret.GridState = gridState; ret.Columns = _colsProvider.ParseTheGridColumns(mq.Prefix, gridState.j72Columns); ret.AdhocFilter = _colsProvider.ParseAdhocFilterFromString(gridState.j75Filter, ret.Columns); ret.MasterEntity = master_entity; ret.MasterPID = master_pid; return(View("Default", ret)); }