public EbDataRow GetAsDataRow() { EbDataRow row = null; EbDataTable dt = new EbDataTable(); if (Parameters != null && Parameters.Any()) { row = dt.NewDataRow(); dt.Rows.Add(row); List <object> dataArray = new List <object>(); for (int i = 0; i < Parameters.Count; i++) { EbMobileStaticParameter pm = Parameters[i]; dt.Columns.Add(new EbDataColumn { ColumnName = pm.Name, ColumnIndex = i }); dataArray.Add(pm.Value); } row.AddRange(dataArray.ToArray()); } return(row ?? dt.NewDataRow()); }
public List <Param> GetRenderValidatorParams(EbDataRow row) { List <Param> param = new List <Param>(); if (row == null) { return(param); } foreach (Param p in RenderValidatorParams) { object val = row[p.Name]; if (val != null) { param.Add(new Param { Name = p.Name, Type = p.Type, Value = val.ToString() }); } } return(param); }
private MobileTableRow DR2TableRow(EbDataRow row) { int dataId = row["id"] != null?Convert.ToInt32(row["id"]) : 0; MobileTableRow tableRow = new MobileTableRow(dataId); foreach (EbMobileControl ctrl in dataGrid.ChildControls) { if (ctrl is INonPersistControl || ctrl is ILinesEnabled) { continue; } MobileTableColumn column = new MobileTableColumn { Name = ctrl.Name, Type = ctrl.EbDbType, Value = row[ctrl.Name] ?? null, Control = ctrl }; column.DisplayValue = ctrl.GetDisplayName4DG(column.Value); tableRow.Columns.Add(column); } return(tableRow); }
private List <DbParameter> GetParamLocal(EbDataRow row) { var parameters = new List <DbParameter>(); try { string sql = HelperFunctions.B64ToString(this.OfflineQuery.Code); List <string> _parameters = HelperFunctions.GetSqlParams(sql); foreach (string param in _parameters) { object data = row[param]; if (data != null) { parameters.Add(new DbParameter { ParameterName = param, Value = data }); } } } catch (Exception ex) { EbLog.Info("Visualization get parameters from local error"); EbLog.Error(ex.Message); } return(parameters); }
public static EbApi GetApiByName(string name, string version, IDatabase ObjectsDB) { EbApi api_o = null; string sql = ObjectsDB.EB_API_BY_NAME; DbParameter[] parameter = { ObjectsDB.GetNewParameter("objname", EbDbTypes.String, name), ObjectsDB.GetNewParameter("version", EbDbTypes.String, version) }; EbDataTable dt = ObjectsDB.DoQuery(sql, parameter); if (dt.Rows.Count > 0) { EbDataRow dr = dt.Rows[0]; EbObjectWrapper _ebObject = (new EbObjectWrapper { Json = dr[0].ToString(), VersionNumber = dr[1].ToString(), EbObjectType = (dr[4] != DBNull.Value) ? Convert.ToInt32(dr[4]) : 0, Status = Enum.GetName(typeof(ObjectLifeCycleStatus), Convert.ToInt32(dr[2])), Tags = dr[3].ToString(), RefId = null, }); api_o = EbSerializers.Json_Deserialize <EbApi>(_ebObject.Json); } return(api_o); }
public object GetBinding(EbDataSet dataSet, string bindingParam) { try { string[] parts = bindingParam.Split(CharConstants.DOT); if (parts.Length >= 2) { string columnName = parts[1]; string tableExpr = parts[0]; int tableIndex = Convert.ToInt32(tableExpr.Substring(tableExpr.Length - 1)); if (dataSet.TryGetTable(tableIndex, out EbDataTable dt)) { EbDataRow dr = dt.Rows?.FirstOrDefault(); if (dr != null) { return(dr[columnName]); } } } } catch (Exception ex) { EbLog.Error("dashboard control [GetBinding] error, " + ex.Message); } return(null); }
public static ContentPage ResolveByContext(EbMobileVisualization vis, EbDataRow row, EbMobilePage page) { ContentPage renderer = null; EbMobileContainer container = page.Container; try { if (container is EbMobileForm form) { if (vis.FormMode == WebFormDVModes.New_Mode) { string msg = GetFormRenderInvalidateMsg(page.NetworkMode); if (msg != null && !form.RenderAsFilterDialog) { renderer = new Redirect(msg, MessageType.disconnected); } else { renderer = new FormRender(page, vis.LinkFormParameters, row); } } else { EbMobileDataColToControlMap map = vis.FormId; if (map == null) { EbLog.Info("form id must be set"); throw new Exception("Form rendering exited! due to null value for 'FormId'"); } else { int id = Convert.ToInt32(row[map.ColumnName]); if (id <= 0) { EbLog.Info($"formid has invalid value {id}, switching to new mode"); renderer = new FormRender(page, vis.LinkFormParameters, row); } else { EbLog.Info($"formid has value {id}, rendering edit mode"); renderer = new FormRender(page, id); } } } } else if (container is EbMobileVisualization) { renderer = new LinkedListRender(page, vis, row); } else if (container is EbMobileDashBoard) { renderer = new DashBoardRender(page); } } catch (Exception ex) { EbLog.Error(ex.Message); } return(renderer); }
private void SetControlValues(EbDataRow masterRow) { foreach (var pair in this.Form.ControlDictionary) { EbMobileControl ctrl = pair.Value; object data = masterRow[ctrl.Name]; try { if (ctrl is IFileUploadControl) { this.SetFileData(ctrl, data); } else if (ctrl is ILinesEnabled line) { EbDataTable lines = this.formData.Tables.Find(table => table.TableName == line.TableName); ctrl.SetValue(lines); } else { ctrl.SetValue(data); } if (this.IsEditButtonVisible) { ctrl.SetAsReadOnly(true); } } catch (Exception ex) { EbLog.Error("Error when setting value to controls on edit"); EbLog.Error(ex.Message); } } }
public FormRenderVMR(EbMobilePage page, EbMobileVisualization source, EbDataRow contextrow) : base(page) { this.Mode = FormMode.REF; context = source; contextRow = contextrow; }
protected void PrepareDataTable(SqliteDataReader reader, EbDataTable dt) { try { int _fieldCount = reader.FieldCount; for (int i = 0; i < _fieldCount; i++) { dt.Columns.Add(new EbDataColumn { ColumnName = reader.GetName(i), ColumnIndex = i, Type = DbTypeConverter.ConvertToDbType(reader.GetFieldType(i)) }); } while (reader.Read()) { EbDataRow dr = dt.NewDataRow(); object[] oArray = new object[_fieldCount]; reader.GetValues(oArray); dr.AddRange(oArray); dt.Rows.Add(dr); } } catch (Exception ex) { EbLog.Error(ex.Message); } }
public SearchRsltData(EbDataRow dr, Eb_Solution SolutionObj, User UserObj) { this.DisplayName = Convert.ToString(dr[1]); this.Data = JsonConvert.DeserializeObject <Dictionary <string, string> >(Convert.ToString(dr[2])); List <string> keys = this.Data.Keys.ToList(); foreach (string k in keys) { this.Data[k] = this.Data[k].Replace("\n", "<br>"); } int linkType = Convert.ToInt32(dr[9]); if (linkType == (int)SH_LinkType.LM) { this.Link = $"/leadmanagement/{Convert.ToString(dr[4])}"; } else { string param = JsonConvert.SerializeObject(new Param[] { new Param() { Name = "id", Type = "7", Value = Convert.ToString(dr[4]) } }).ToBase64(); this.Link = $"/WebForm/Index?_r={Convert.ToString(dr[3])}&_p={param}&_m=1"; } int createdBy = Convert.ToInt32(dr[5]); this.CreatedBy = SolutionObj.Users.ContainsKey(createdBy) ? SolutionObj.Users[createdBy] : "No Name"; this.CreatedAt = Convert.ToDateTime(dr[6]).ConvertFromUtc(UserObj.Preference.TimeZone).ToString(UserObj.Preference.GetShortDatePattern() + " " + UserObj.Preference.GetShortTimePattern(), CultureInfo.InvariantCulture); int modifiedBy = Convert.ToInt32(dr[7]); this.ModifiedBy = SolutionObj.Users.ContainsKey(modifiedBy) ? SolutionObj.Users[modifiedBy] : "No Name"; this.ModifiedAt = Convert.ToDateTime(dr[8]).ConvertFromUtc(UserObj.Preference.TimeZone).ToString(UserObj.Preference.GetShortDatePattern() + " " + UserObj.Preference.GetShortTimePattern(), CultureInfo.InvariantCulture); }
public FormRenderVMPRE(EbMobilePage page, List <EbMobileDataColToControlMap> linkMap, EbDataRow contextrow) : base(page) { this.Mode = FormMode.PREFILL; linkFormParameters = linkMap; Context = contextrow; }
public void DoConditionalFormating(ref string formattedVal, long value, EbDataRow row) { foreach (ColumnCondition cond in ConditionalFormating) { if (cond is AdvancedCondition) { bool result = EvaluateExpression(row, ref globals, (cond as AdvancedCondition), value); if ((cond as AdvancedCondition).RenderAS == AdvancedRenderType.Default) { if (result == (cond as AdvancedCondition).GetBoolValue()) { formattedVal = "<div class='conditionformat' style='background-color:" + cond.BackGroundColor + ";color:" + cond.FontColor + ";'>" + value + "</div>"; } } else { if (result == (cond as AdvancedCondition).GetBoolValue()) { formattedVal = "<i class='fa fa-check' aria-hidden='true' style='color:green'></i>"; } else { formattedVal = "<i class='fa fa-times' aria-hidden='true' style='color:red'></i>"; } } } if (cond.CompareValues(value)) { formattedVal = "<div class='conditionformat' style='background-color:" + cond.BackGroundColor + ";color:" + cond.FontColor + ";'>" + value + "</div>"; } } }
public ListRender(EbMobilePage Page, EbDataRow row) { InitializeComponent(); BindingContext = ViewModel = new ListViewModel(Page, row); ViewModel.EbLayout = EbLayout; EbLayout.ShowLoader(); }
public DynamicFrame(EbDataRow row, EbMobileVisualization viz, bool isHeader = false) { this.IsHeader = isHeader; this.DataRow = row; this.Initialize(viz); }
public bool EvaluateExpression(EbDataRow _datarow, ref EbVisualizationGlobals globals, AdvancedCondition condition, long value) { foreach (FormulaPart formulaPart in condition.FormulaParts) { object __value = null; var __partType = _datarow.Table.Columns[formulaPart.FieldName].Type; if (__partType == EbDbTypes.Decimal || __partType == EbDbTypes.Int32) { if (formulaPart.FieldName == this.DataColumns[0].Name) { __value = value; } else { __value = (_datarow[formulaPart.FieldName] != DBNull.Value) ? _datarow[formulaPart.FieldName] : 0; } } else { __value = _datarow[formulaPart.FieldName]; } globals[formulaPart.TableName].Add(formulaPart.FieldName, new GNTV { Name = formulaPart.FieldName, Type = (GlobalDbType)__partType, Value = __value }); } return(Convert.ToBoolean(condition.GetCodeAnalysisScript().RunAsync(globals).Result.ReturnValue)); }
public EbIntegrationConfData(EbDataRow _row) { Id = Convert.ToInt32(_row["id"]); SolutionId = _row["solution_id"].ToString(); NickName = _row["nickname"].ToString(); Type = _row["type"].ToString(); CreatedOn = Convert.ToDateTime(_row["created_at"]).ToString("dddd, dd MMMM yyyy"); }
public LinkedListRender(EbMobilePage page, EbMobileVisualization context, EbDataRow row) { InitializeComponent(); BindingContext = ViewModel = new LinkedListViewModel(page, context, row); ViewModel.EbLayout = EbLayout; this.DrawContextHeader(row, context); EbLayout.ShowLoader(); }
private void FillLiveId(EbDataTable dt, EbDataRow dr, int liveId, string columName) { EbDataColumn col = dt.Columns[columName]; if (col != null) { dr[col.ColumnIndex] = liveId; } }
public EbIntegrationData(EbDataRow row) { Id = row["id"].ToString(); ConfId = row["confid"].ToString(); NickName = row["nickname"].ToString(); Ctype = row["ctype"].ToString(); Type = row["itype"].ToString(); Preference = row["preference"].ToString(); CreatedOn = Convert.ToDateTime(row["created_at"]).ToString("dddd, dd MMMM yyyy"); }
private void DrawContextHeader(EbDataRow row, EbMobileVisualization context) { var header = new DynamicFrame(row, context, true) { BackgroundColor = Color.Transparent, Padding = new Thickness(20, 10, 20, 0), Margin = 0 }; HeaderContainer.Children.Add(header); }
private SingleRow GetRow(EbMobileForm Form, EbDataTable Dt, EbDataRow DataRow, int RowIndex) { SingleRow row = new SingleRow { RowId = 0, IsUpdate = false, LocId = Convert.ToInt32(DataRow["eb_loc_id"]), }; row.Columns.AddRange(Form.GetColumnValues(Dt, RowIndex)); return(row); }
public void SetValue(EbDataRow currentRow) { foreach (var _key in this.Aggregations.Keys) { this.Aggregations[_key].SetValue(Convert.ToDecimal(currentRow[_key])); } if (ParentFooter != null) { ParentFooter.SetValue(currentRow); } }
public async virtual Task OnControlAction(EbDataRow row) { if (string.IsNullOrEmpty(this.LinkRefId)) { return; } EbMobilePage page = EbPageHelper.GetPage(this.LinkRefId) ?? EbPageHelper.GetExternalPage(this.LinkRefId); if (page != null) { EbMobileContainer container = page.Container; if (container is EbMobileForm) { if (this.FormMode == WebFormDVModes.New_Mode) { await App.Navigation.NavigateMasterAsync(new FormRender(page, this.LinkFormParameters, row)); } else { try { var map = this.FormId; if (map == null) { EbLog.Info("form id should be set"); throw new Exception("Form rendering exited! due to null value for 'FormId'"); } else { int id = Convert.ToInt32(row[map.ColumnName]); if (id <= 0) { EbLog.Info("id has ivalid value" + id); throw new Exception("Form rendering exited! due to invalid id"); } await App.Navigation.NavigateMasterAsync(new FormRender(page, id)); } } catch (Exception ex) { EbLog.Error(ex.Message); } } } else if (container is EbMobileVisualization) { await App.Navigation.NavigateMasterAsync(new ListRender(page, row)); } } }
public static bool EvaluateLinkExpr(EbDataRow row, string script) { try { SetDataRow(row); return(Instance.evaluator.Execute <bool>(script)); } catch (Exception ex) { EbLog.Error("list hide expr failure, " + ex.Message); } return(true); }
private void SetPowerSelectValue(EbDataRow row) { string displayMember = row[DisplayMember.ColumnName]?.ToString(); object valueMember = row[ValueMember.ColumnName]; selected = new ComboBoxLabel { Text = displayMember, Value = valueMember, Row = row }; SearchBox.Text = displayMember; }
private void PrepareDataTable(NpgsqlDataReader reader, EbDataTable dt) { int _fieldCount = reader.FieldCount; while (reader.Read()) { EbDataRow dr = dt.NewDataRow(); for (int i = 0; i < _fieldCount; i++) { var _typ = reader.GetFieldType(i); if (_typ == typeof(DateTime)) { dr[i] = reader.IsDBNull(i) ? DateTime.Now : reader.GetDateTime(i); continue; } else if (_typ == typeof(string)) { dr[i] = reader.IsDBNull(i) ? string.Empty : reader.GetString(i); continue; } else if (_typ == typeof(bool)) { dr[i] = reader.IsDBNull(i) ? false : reader.GetBoolean(i); continue; } else if (_typ == typeof(decimal)) { dr[i] = reader.IsDBNull(i) ? 0 : reader.GetDecimal(i); continue; } else if (_typ == typeof(int) || _typ == typeof(Int32)) { dr[i] = reader.IsDBNull(i) ? 0 : reader.GetInt32(i); continue; } else if (_typ == typeof(Int64)) { dr[i] = reader.IsDBNull(i) ? 0 : reader.GetInt64(i); continue; } else { dr[i] = reader.GetValue(i); continue; } } dt.Rows.Add(dr); } }
public bool TryGetFirstRow(int tableIndex, out EbDataRow row) { EbDataTable dt = Data.Tables[tableIndex]; bool status = false; row = null; if (dt.Rows.Any()) { row = dt.Rows[0]; status = true; } return(status); }
public void UpdateRetryCount(EbDataRow DataRow) { try { int localid = Convert.ToInt32(DataRow["id"]); int retry = Convert.ToInt32(DataRow["eb_retry_count"]); int status = App.DataDB.DoNonQuery($"UPDATE {this.TableName} SET eb_retry_count = {retry + 1} WHERE id = {localid}"); if (status > 0 && retry > 1) { EbLog.Info($"Rety count of {this.TableName}({localid}) updated: {retry + 1}"); } } catch (Exception ex) { EbLog.Error("Rety count increment failed: " + ex.Message); } }
public override async Task OnControlAction(EbDataRow row) { string columnName = Name + "_action_id"; object actionId = row[columnName]; if (actionId != null) { int id = Convert.ToInt32(actionId); if (id == 0) { EbLog.Info("action_id is zero"); return; } await App.Navigation.NavigateMasterAsync(new DoAction(id)); } }