private void DisplayPercentageCheckbox_CheckedChanged(object sender, EventArgs e) { if (DisplayPercentageCheckbox.Checked == true) { EntityFieldAnalyserManager.SetChartFieldsType(entityFields, ChartFieldTypes, false); EntityFieldAnalyserManager.SetChartFieldAvailable(entityFields, ChartFieldAvailable, true); EntityFieldAnalyserManager.SetChartManagedUnmanagedFields(chartManagedUnmanagedFields, false); } else { EntityFieldAnalyserManager.SetChartFieldsType(entityFields, ChartFieldTypes, true); EntityFieldAnalyserManager.SetChartFieldAvailable(entityFields, ChartFieldAvailable, false); EntityFieldAnalyserManager.SetChartManagedUnmanagedFields(chartManagedUnmanagedFields, true); } }
private void analyseButton_Click(object sender, EventArgs e) { String[] entitySelected = EntityFieldAnalyserManager.SelectedEntity(EntityGridView.Rows); if (entitySelected.Length > 0) { entitySelectedName = entitySelected[0]; entitySelectedSchemaName = entitySelected[1]; ExecuteMethod(AnalyseEntity); } else { MessageBox.Show("No Entity Was Selected! Please Select an Entity", "Warning"); return; } }
private void fieldTypeCombobox_SelectedIndexChanged(object sender, EventArgs e) { #region clear grid view DataTable DT = (DataTable)fieldPropretiesView.DataSource; if (DT != null) { DT.Clear(); } #endregion #region Set Fields DataGridView Data After Change The Type EntityFieldAnalyserManager.SetFieldDataGridViewContent(entityFields[(AttributeTypeCode)fieldTypeCombobox.SelectedItem], dtFields); EntityFieldAnalyserManager.SetFieldDataGridViewHeaders((DataTable)dtFields, fieldPropretiesView); //Display the Column Target Just in case of Lookup Type if (fieldTypeCombobox.SelectedItem.ToString() == AttributeTypeCode.Lookup.ToString() || fieldTypeCombobox.SelectedItem.ToString() == AttributeTypeCode.Owner.ToString()) { fieldPropretiesView.Columns[8].Visible = true; } #endregion }
private void button1_Click(object sender, EventArgs e) { if (String.IsNullOrEmpty(textBox1.Text) || String.IsNullOrEmpty(textBox2.Text) || String.IsNullOrEmpty(textBox3.Text)) { MessageBox.Show("Please Fill All The Types", "Warning"); return; } volumedescription1.Visible = true; volumedescription2.Visible = true; bool isItPossibleToCreateThisFields = EntityFieldAnalyserManager.CanICreateThisNumberOfFields(textBox1.Text, textBox2.Text, textBox3.Text); if (isItPossibleToCreateThisFields) { MessageBox.Show("You Can Create This Number of Fields!!", "Success"); } else { MessageBox.Show("You Can't Create This Number of Fields!!", "Warning"); } }
private void searchEntity_TextChaneged(object sender, EventArgs e) { if (searchEntity.Text == "" && dtEntities.Rows.Count > 0 && EntityGridView.Rows.Count != dtEntities.Rows.Count) { EntityFieldAnalyserManager.SetEntitiesGridViewHeaders(dtEntities, EntityGridView); } else if (searchEntity.Text != "Search" && searchEntity.Text != "" && dtEntities.Rows.Count > 0) { string searchValue = searchEntity.Text.ToLower(); try { DataRow[] filtered = dtEntities.Select("DisplayName LIKE '%" + searchValue + "%' OR SchemaName LIKE '%" + searchValue + "%'"); if (filtered.Count() > 0) { EntityFieldAnalyserManager.SetEntitiesGridViewHeaders(filtered.CopyToDataTable(), EntityGridView); } } catch (Exception) { MessageBox.Show("Invalid Search Character. Please do not use ' [ ] within searches."); } } }
private void loadEntities() { InitComponents(); string selectedTypeOfEntities = entityTypeComboBox.SelectedItem.ToString(); searchEntity.Enabled = false; WorkAsync(new WorkAsyncInfo { Message = "Retrieving Entities...", Work = (worker, args) => { #region Variables dtEntities = new DataTable(); #endregion #region getEntitiesMetadata RetrieveMetadataChangesResponse _allEntitiesResp = EntityFieldAnalyserManager.GetEntitiesMetadat(Service, selectedTypeOfEntities); groupBox1.Text = "Entities : " + selectedTypeOfEntities + " " + _allEntitiesResp.EntityMetadata.Count(); #endregion worker.ReportProgress(0, string.Format("Metadata has been retrieved!")); #region Entities Data Table Set dtEntities.Columns.Add("DisplayName", typeof(string)); dtEntities.Columns.Add("SchemaName", typeof(string)); dtEntities.Columns.Add("Analyse", typeof(bool)); foreach (var item in _allEntitiesResp.EntityMetadata) { DataRow row = dtEntities.NewRow(); row["DisplayName"] = item.DisplayName.LocalizedLabels.Count > 0 ? item.DisplayName.UserLocalizedLabel.Label.ToString() : "N/A"; row["SchemaName"] = item.LogicalName; row["Analyse"] = false; dtEntities.Rows.Add(row); } #endregion args.Result = dtEntities; }, ProgressChanged = e => { // If progress has to be notified to user, use the following method: SetWorkingMessage(e.UserState.ToString()); }, PostWorkCallBack = (args) => { if (args.Error != null) { MessageBox.Show(args.Error.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } var result = args.Result; if (result != null) { #region Set Retrieved Data in the Data Grid View EntityFieldAnalyserManager.SetEntitiesGridViewHeaders((DataTable)args.Result, EntityGridView); #endregion #region ManageComponenetVisibility searchEntity.Enabled = true; analyseButton.Enabled = true; #endregion } } }); }
private void buttonExport_Click(object sender, EventArgs e) { EntityFieldAnalyserManager.CallExportFunction(entityFields); }
private void AnalyseEntity() { fieldTypeCombobox.Enabled = false; buttonExport.Enabled = false; analyseButton.Enabled = false; DisplayPercentageCheckbox.Enabled = false; WorkAsync(new WorkAsyncInfo { Message = "Analysing ...", Work = (worker, args) => { try { dtFields = new DataTable(); entityFields = EntityFieldAnalyserManager.getEntityFields(Service, entitySelectedSchemaName, entitySelectedName, worker); #region Entity Fiels Metadata Set dtFields.Columns.Add("Display Name", typeof(string)); dtFields.Columns.Add("Schema Name", typeof(string)); dtFields.Columns.Add("Managed/Unmanaged", typeof(string)); dtFields.Columns.Add("IsAuditable", typeof(bool)); dtFields.Columns.Add("IsSearchable", typeof(bool)); dtFields.Columns.Add("Required Level", typeof(string)); dtFields.Columns.Add("Introduced Version", typeof(String)); dtFields.Columns.Add("CreatedOn", typeof(DateTime)); dtFields.Columns.Add("Target", typeof(string)); dtFields.Columns.Add("Percentage Of Use", typeof(string)); #endregion args.Result = entityFields; } catch (Exception e) { MessageBox.Show(e.Message, "Warning"); } }, ProgressChanged = e => { // If progress has to be notified to user, use the following method: SetWorkingMessage(e.UserState.ToString()); }, PostWorkCallBack = (args) => { fieldTypeCombobox.Items.Clear(); if (args.Error != null) { MessageBox.Show(args.Error.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } var result = (Dictionary <AttributeTypeCode, List <entityParam> >)args.Result; if (result != null) { foreach (var type in result.Keys) { fieldTypeCombobox.Items.Add(type); } #region Set Charts Data EntityFieldAnalyserManager.setStatisticsFieldText(label7); EntityFieldAnalyserManager.SetChartFieldsType(result, ChartFieldTypes); EntityFieldAnalyserManager.SetChartFieldAvailable(result, ChartFieldAvailable); EntityFieldAnalyserManager.SetChartManagedUnmanagedFields(chartManagedUnmanagedFields); #endregion #region Manage Componenet Visibilty searchEntity.Enabled = true; DisplayPercentageCheckbox.Enabled = true; DisplayPercentageCheckbox.Visible = true; fieldTypeCombobox.Enabled = true; DisplayPercentageCheckbox.Checked = false; EntityFieldsCreatedGroupBox.Visible = true; ManagedUnmanagedFieldsgroupBox.Visible = true; EntityFieldsTypesGroupBox.Visible = true; fieldCalculatorGroupBox.Visible = true; buttonExport.Enabled = true; analyseButton.Enabled = true; #endregion fieldTypeCombobox.SelectedIndex = 0; //Select the second type in the fields type combobox #region Chart ToolTip ToolTip toolTip = new ToolTip(); toolTip.SetToolTip(this.EntityFieldsCreatedGroupBox, "This Chart Display The Percentage of Use of the Entity Total Fields Volume"); toolTip.SetToolTip(this.ManagedUnmanagedFieldsgroupBox, "This Chart Display The Count Managed/Unmanaged Fields in Your Entity"); toolTip.SetToolTip(this.EntityFieldsTypesGroupBox, "This Chart Display The Count of Fields Per Type"); #endregion } } }); }