//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: //ORIGINAL LINE: public org.boris.expr.Expr evaluateVariable(org.boris.expr.IEvaluationContext param1IEvaluationContext, org.boris.expr.ExprVariable param1ExprVariable) throws org.boris.expr.ExprException public virtual Expr evaluateVariable(IEvaluationContext param1IEvaluationContext, ExprVariable param1ExprVariable) { string str1 = param1ExprVariable.Name.ToUpper(); if (outerInstance.hasAdditionalVariable(str1)) { return(outerInstance.getAdditionalVariableValue(str1)); } if (outerInstance.localVariablesMap.ContainsKey(str1)) { return(new ExprDouble(((decimal)outerInstance.localVariablesMap[str1]).doubleValue())); } string str2 = BoqItemFormulaEvaluator.fieldFromVariable(str1); if (string.ReferenceEquals(str2, null)) { throw new ExprException("Variable " + str1 + " not found"); } object @object = outerInstance.getFieldValue(outerInstance.boqTable, str2); if (@object == null) { if (BoqItemTable.isFieldDate(str2)) { @object = Convert.ToDouble(0.0D); } else { @object = ""; } } ExprBoolean exprBoolean = null; if (@object is Number) { exprBoolean = new ExprDouble(((Number)@object).doubleValue()); } else if (@object is string) { ExprString exprString = new ExprString(@object.ToString()); } else if (@object is DateTime) { exprBoolean = new ExprDouble(ExcelDate.toExcelDate(((DateTime)@object).Ticks)); } else if (@object is bool?) { exprBoolean = new ExprBoolean(((bool?)@object).Value); } return(exprBoolean); }
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: //ORIGINAL LINE: private void reloadVariables() throws org.boris.expr.ExprException private void reloadVariables() { this.assignmentsWithFormulasMap.Clear(); this.updatedResourceToAssignmentQtyPerUnitSet.Clear(); this.pvVarsCalled = new StringBuilder(); foreach (string str in BoqItemTable.VIEWABLE_FIELDS) { if (!this.currentField.Equals(str)) { object @object = getFieldFormulaValue(this.boqTable, str + "Formula"); string str1 = variableFromField(str); if (@object != null) { set(str1, "=" + @object.ToString()); } else if (BoqItemTable.isFieldEditable(str)) { object object1 = getFieldValue(this.boqTable, str); if (BoqItemTable.isFieldDate(str)) { object1 = Convert.ToDouble(0.0D); } else { object1 = ""; } setExprValue(str1, object1); } } } this.boqTable.PvVars = (this.pvVarsCalled == null) ? "" : this.pvVarsCalled.ToString(); this.boqTable.HasPVFormula = Convert.ToBoolean((this.pvVarsCalled != null && this.pvVarsCalled.ToString().Length > 0)); foreach (object @object in this.boqTable.ResourceAssignmentsList) { ResourceToAssignmentTable resourceToAssignmentTable = (ResourceToAssignmentTable)@object; resourceToAssignmentTable.PvVars = ""; ResourceWithAssignmentsTable resourceWithAssignmentsTable = resourceToAssignmentTable.getResourceTable(); if (resourceToAssignmentTable.getResourceTable() is AssemblyTable) { AssemblyTable assemblyTable = (AssemblyTable)resourceToAssignmentTable.getResourceTable(); loadLocalVariables(assemblyTable.Vars); } else if (resourceToAssignmentTable.getResourceTable() is BoqItemTable) { BoqItemTable boqItemTable = (BoqItemTable)resourceToAssignmentTable.getResourceTable(); loadLocalVariables(boqItemTable.Vars); } if (resourceToAssignmentTable.QuantityPerUnitFormulaState == ResourceToAssignmentTable.QTYPUFORM_NOFORMULA) { continue; } string str = resourceToAssignmentTable.QuantityPerUnitFormula; if (!StringUtils.isNullOrBlank(str)) { string str1 = System.Guid.randomUUID().ToString(); set(str1, "=" + str.ToString()); this.assignmentsWithFormulasMap[str1] = resourceToAssignmentTable; } } if (this.boqTable.BoqItemAssemblySet != null) { foreach (BoqItemAssemblyTable boqItemAssemblyTable in this.boqTable.BoqItemAssemblySet) { AssemblyTable assemblyTable = boqItemAssemblyTable.AssemblyTable; loadLocalVariables(assemblyTable.Vars); QuantityPerUnitFieldFormula = assemblyTable; } } }