/// ////////////////////////////////////////// private void OnChangeVariable() { CResultAErreur result = CResultAErreur.True; if (m_variableEnCoursEdition != null) { if (m_txtFormuleVariable.Text.Trim() != "") { result = GetFormule(m_txtFormuleVariable); if (!result) { CFormAlerte.Afficher(result.Erreur); return; } m_tableIdVariableToFormule[m_variableEnCoursEdition.IdVariable] = result.Data; } else { m_tableIdVariableToFormule[m_variableEnCoursEdition.IdVariable] = null; } } if (m_wndListeVariables.SelectedItems.Count != 1) { m_variableEnCoursEdition = null; m_txtFormuleVariable.Visible = true; return; } m_variableEnCoursEdition = (IVariableDynamique)m_wndListeVariables.SelectedItems[0].Tag; m_lblNomVariable.Text = m_variableEnCoursEdition.Nom; C2iExpression expression = (C2iExpression)m_tableIdVariableToFormule[m_variableEnCoursEdition.IdVariable]; m_txtFormuleVariable.Text = expression == null?"":expression.GetString(); }
//----------------------------------------------------------------- protected override CResultAErreur MyMajChamps() { CResultAErreur result = base.MyMajChamps(); if (result) { CParametreDroitEditionType.CCoupleFormuleToGroupeRestrictions couple = CoupleEdite; if (couple != null) { C2iExpression formule = m_txtFormule.Formule; if (!m_txtFormule.ResultAnalyse) { result.EmpileErreur(result.Erreur); } else { couple.Formule = formule; } m_lblFormule.Text = formule != null?formule.GetString() : ""; couple.SetGroupeRestrictions(m_txtGroupe.ElementSelectionne as CGroupeRestrictionSurType); if (result) { result = couple.VerifieDonnees(); } } } return(result); }
/// //////////////////////////////////////////////////////////////////////////// private void m_btnEvaluer_Click(object sender, System.EventArgs e) { CContexteAnalyse2iExpression ctx = new CContexteAnalyse2iExpression(m_fournisseurProprietes, m_objetTest.GetType()); CAnalyseurSyntaxiqueExpression analyseur = new CAnalyseurSyntaxiqueExpression(ctx); CResultAErreur result = analyseur.AnalyseChaine(m_txtFormule.Text); m_arbreAnalyse.Nodes.Clear(); if (!result) { m_txtResult.Text = result.Erreur.ToString(); return; } C2iExpression expression = (C2iExpression)result.Data; if (expression == null) { m_txtResult.Text = "Analyzed expression is null|30001"; return; } m_txtResult.Text = "Expression :" + Environment.NewLine + expression.GetString() + Environment.NewLine + "**********************"; FillNodes(m_arbreAnalyse.Nodes, expression); m_txtResult.Text += "Evaluation :" + Environment.NewLine; result = expression.Eval(new CContexteEvaluationExpression(m_objetTest)); if (!result) { m_txtResult.Text += result.Erreur.ToString(); } else { m_txtResult.Text = result.Data.ToString(); } }
//------------------------------------------------------------------- public string GetLabel(CDonneesDeChart donnees) { if (m_formule != null) { return(m_formule.GetString()); } return(LabelType); }
//-------------------------------------------------- public string GetLibelle(IObjetDeEasyQuery table) { CColumnEQFromSource col = table.Columns.FirstOrDefault(c => c is CColumnEQFromSource && ((CColumnEQFromSource)c).IdColumnSource == m_strHotelColonneId) as CColumnEQFromSource; return((col != null ? col.ColumnName : "?") + new COperateurComparaisonMassStorage(m_operateur).Libelle + (m_formuleValeur != null ? m_formuleValeur.GetString() : "?")); }
private void FillNodes(TreeNodeCollection nodes, C2iExpression expression) { TreeNode node = nodes.Add(expression.IdExpression + " : " + expression.GetString()); foreach (C2iExpression parametre in expression.Parametres) { FillNodes(node.Nodes, parametre); } }
/// ////////////////////////////////////////////////////// public CDefinitionProprieteDynamiqueFormule(C2iExpression formule) : base( I.T("Reserved Formula Field|164"), formule.GetString(), formule.TypeDonnee, true, true) { m_formule = formule; }
/// ////////////////////////////////////////////////// public override void DrawInterieur(CContextDessinObjetGraphique ctx) { Graphics g = ctx.Graphic; if (m_expression != null) { Text = m_expression.GetString(); } else { Text = I.T("No formula|131"); } base.DrawInterieur(ctx); }
public void Init( string strLibelle, C2iExpression formule, IFournisseurProprietesDynamiques fournisseur, Type typeInterroge) { m_lblLibelle.Text = strLibelle; if (formule != null) { m_txtFormule.Text = formule.GetString(); } else { m_txtFormule.Text = null; } m_txtFormule.Init(fournisseur, typeInterroge); }
private void CFormEditProprieteExpression_Load(object sender, System.EventArgs e) { // Lance la traduction du formulaire sc2i.win32.common.CWin32Traducteur.Translate(this); m_wndAideFormule.ObjetInterroge = m_objetPourSousProprietes; m_wndAideFormule.FournisseurProprietes = m_fournisseurProprietes; m_txtFormule.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge); if (m_expression != null) { m_txtFormule.Text = m_expression.GetString(); } else { m_txtFormule.Text = ""; } }
private void m_wndListeChamps_MouseMove(object sender, MouseEventArgs e) { ListViewItem item = m_wndListeChamps.GetItemAt(e.X, e.Y); if (item != null && item != m_lastItemTooltip) { if (item.Tag is C2iChampExport) { C2iChampExport champ = (C2iChampExport)item.Tag; if (champ.Origine is C2iOrigineChampExportChamp) { m_tooltip.SetToolTip(m_wndListeChamps, ((C2iOrigineChampExportChamp)champ.Origine).ChampOrigine.Nom); return; } if (champ.Origine is C2iOrigineChampExportExpression) { C2iExpression formule = ((C2iOrigineChampExportExpression)champ.Origine).Expression; if (formule != null) { m_tooltip.SetToolTip(m_wndListeChamps, formule.GetString()); return; } } } else if (item.Tag is CInfoChampTable) { m_tooltip.SetToolTip(m_wndListeChamps, ((CInfoChampTable)item.Tag).NomConvivial); return; } else if (item.Tag is C2iChampDeRequete) { C2iChampDeRequete champ = (C2iChampDeRequete)item.Tag; string strInfo = "Origin : " + champ.GetStringSql() + "\r\n" + "Operation : " + champ.OperationAgregation.ToString() + "\r\n" + "Group by : " + (champ.GroupBy ? "Yes" : "No"); m_tooltip.SetToolTip(m_wndListeChamps, strInfo); return; } m_lastItemTooltip = item; } m_tooltip.SetToolTip(m_wndListeChamps, ""); }
public static bool EditeFormule(ref C2iExpression formule, IFournisseurProprietesDynamiques fournisseur, CObjetPourSousProprietes objetAnalyse, bool bAutoriseNull) { CFormStdEditeFormule form = new CFormStdEditeFormule(); form.m_strFormule = formule == null?"":formule.GetString(); form.m_objetAnalyse = objetAnalyse; form.m_fournisseur = fournisseur; form.m_bNullAutorise = bAutoriseNull; bool bRetour = false; if (form.ShowDialog() == DialogResult.OK) { formule = form.m_txtFormule.Formule; bRetour = true; } form.Dispose(); return(bRetour); }
//--------------------------------------------------------------------------------------------- private void m_imageFormuleTable_Click(object sender, EventArgs e) { if (m_tableExport == null || (!(m_tableExport is C2iTableExport))) { return; } if (!m_structureExport.IsStructureComplexe) { return; } Type tpParent = m_structureExport.TypeSource; if (m_tableParente == null && m_tableParente.ChampOrigine != null) { tpParent = m_tableParente.ChampOrigine.TypeDonnee.TypeDotNetNatif; } try { if (!(m_tableExport.ChampOrigine is CDefinitionProprieteDynamiqueFormule)) { return; } C2iExpression formule = ((CDefinitionProprieteDynamiqueFormule)m_tableExport.ChampOrigine).Formule; C2iExpression exTmp = CFormStdEditeFormule.EditeFormule(formule.GetString(), new CFournisseurPropDynStd(true), tpParent); if (exTmp != null) { if (!exTmp.TypeDonnee.Equals(formule.TypeDonnee)) { CFormAlerte.Afficher(I.T("Impossible to modify the return value type of the formula|30005"), EFormAlerteType.Erreur); return; } ((C2iTableExport)m_tableExport).ChampOrigine = new CDefinitionProprieteDynamiqueFormule(exTmp); InitChamps(); } } catch { } }
private void testToolStripMenuItem_Click(object sender, EventArgs e) { ((C2iExpressionGraphique)ObjetEdite).RefreshFormuleFinale(); C2iExpression formule = ((C2iExpressionGraphique)ObjetEdite).FormuleFinale; if (formule != null) { if (MessageBox.Show(formule.GetString() + "\nTest ?", "", MessageBoxButtons.YesNo) == DialogResult.Yes) { CContexteEvaluationExpression ctx = new CContexteEvaluationExpression(m_objetAnalyse != null?m_objetAnalyse.ElementAVariableInstance:null); sc2i.common.CResultAErreur result = formule.Eval(ctx); if (!result) { CFormAfficheErreur.Show(result.Erreur); } else { MessageBox.Show(result.Data == null ? "null" : result.Data.ToString()); } } } }
//-------------------------------------------------------------------------------- private CResultAErreur OnChangeParametreEnCoursEdition() { CResultAErreur result = CResultAErreur.True; if (m_paramEnCoursEdition != null) { if (m_txtFormuleParametre.Text.Trim() != "") { result = GetFormule(m_txtFormuleParametre); if (!result) { return(result); } m_paramEnCoursEdition.Expression = (C2iExpression)result.Data; } else { m_paramEnCoursEdition.Expression = null; } } if (m_wndListeParametres.SelectedItems.Count != 1) { m_paramEnCoursEdition = null; m_splitContainerInfosParam.Visible = false; return(result); } m_splitContainerInfosParam.Visible = true; // Initialise l'édition du paramètre sélectionné m_paramEnCoursEdition = (CWndParametreEnEdition)m_wndListeParametres.SelectedItems[0].Tag; m_lblNomParametre.Text = m_paramEnCoursEdition.InfoParametre != null ? m_paramEnCoursEdition.InfoParametre.Nom : ""; m_lblDescriptionParametre.Text = m_paramEnCoursEdition.InfoParametre != null ? m_paramEnCoursEdition.InfoParametre.Description : ""; C2iExpression expression = (C2iExpression)m_paramEnCoursEdition.Expression; m_txtFormuleParametre.Text = expression == null ? "" : expression.GetString(); return(result); }