//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: //ORIGINAL LINE: public void calculate(boolean paramBoolean) throws org.boris.expr.ExprException public override void calculate(bool paramBoolean) { if (this.autoCalculate && !paramBoolean) { return; } this.graph.sort(); IDictionary <string, ResourceToAssignmentTable> .KeyCollection hashSet = new HashSet <object>(this.assignmentsWithFormulasMap.Keys); foreach (Range range in this.graph) { string str = range.Dimension1Name; bool @bool = hashSet.contains(str); if (@bool) { hashSet.remove(str); } Expr expr = (Expr)this.inputs[range]; if (expr is ExprEvaluatable) { if (@bool) { CurrentField = "QTYPUNITFORM"; ResourceToAssignmentTable resourceToAssignmentTable = (ResourceToAssignmentTable)this.assignmentsWithFormulasMap[str]; 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); } } Expr expr1 = ((ExprEvaluatable)expr).evaluate(this); this.provider.valueChanged(range, expr1); if (@bool) { ((ResourceToAssignmentTable)this.assignmentsWithFormulasMap[str]).PvVars = (string.ReferenceEquals(PvVars, null)) ? "" : PvVars; } this.values[range] = expr1; } } foreach (string str in hashSet) { CurrentField = "QTYPUNITFORM"; ResourceToAssignmentTable resourceToAssignmentTable = (ResourceToAssignmentTable)this.assignmentsWithFormulasMap[str]; Expr expr = parseStatement(resourceToAssignmentTable.QuantityPerUnitFormula); Range range = new Range(str); this.provider.valueChanged(range, expr); this.values[range] = expr; resourceToAssignmentTable.PvVars = (string.ReferenceEquals(PvVars, null)) ? "" : PvVars; } }
public virtual void valueChanged(Range param1Range, Expr param1Expr) { string str = BoqItemFormulaEvaluator.fieldFromVariable(param1Range.Dimension1Name); if (!string.ReferenceEquals(str, null) && formulaFields.Contains(str + "Formula")) { try { object @object = valueFromExpression(param1Expr); if (@object is decimal) { @object = ((decimal)@object).setScale(10, 4); } BlankResourceInitializer.setFieldValue(outerInstance.boqTable, str, @object); } catch (Exception exception) { Console.WriteLine("CAN NOT EVALUATE: " + str + " = " + param1Expr + " = " + valueFromExpression(param1Expr)); Console.WriteLine(exception.ToString()); Console.Write(exception.StackTrace); } } else { ResourceToAssignmentTable resourceToAssignmentTable = (ResourceToAssignmentTable)outerInstance.assignmentsWithFormulasMap[param1Range.Dimension1Name]; if (resourceToAssignmentTable != null) { decimal bigDecimal = resourceToAssignmentTable.QuantityPerUnit.setScale(10, 4); object @object = valueFromExpression(param1Expr); if (@object is decimal) { decimal bigDecimal1 = (decimal)@object; if (resourceToAssignmentTable.AssignmentResourceTable is nomitech.common.db.local.LaborTable || resourceToAssignmentTable.AssignmentResourceTable is nomitech.common.db.local.EquipmentTable) { bigDecimal1 = bigDecimal1 * (ProjectDBUtil.currentProjectDBUtil().Properties.getHoursFromUnit(resourceToAssignmentTable.AssignmentResourceTable.Unit)); } bigDecimal1.setScale(10, 4); if (BigDecimalMath.cmpCheckNulls(bigDecimal, bigDecimal1) != 0) { resourceToAssignmentTable.QuantityPerUnit = bigDecimal1; outerInstance.updatedResourceToAssignmentQtyPerUnitSet.Add(resourceToAssignmentTable); outerInstance.someAssignemntFormulaValueChanged = true; } } } } }
//private Long parentId; internal AssignmentWithResource(object[] res, bool fetchPersisted) { //parentId = (Long)res[0]; assignmentTable = (ResourceToAssignmentTable)res[1]; resourceTable = (ResourceTable)res[2]; assignmentTable = (ResourceToAssignmentTable)assignmentTable.clone(false, false); if (resourceTable is ResourceToResourceTable) { bool isPredicted = fetchPersisted && resourceTable.Predicted != null && resourceTable.Predicted.booleanValue(); if (isPredicted) { // Very slow without fetching here: ISet <object> historySet = resourceTable.ResourceHistorySet; resourceTable = ((ResourceToResourceTable)resourceTable).copyWithParent(); resourceTable.ResourceHistorySet = historySet; } else { resourceTable = ((ResourceToResourceTable)resourceTable).copyWithParent(); } } else { bool isPredicted = fetchPersisted && resourceTable.Predicted != null && resourceTable.Predicted.booleanValue(); if (isPredicted) { // Very slow without fetching here: ISet <object> historySet = resourceTable.ResourceHistorySet; resourceTable = (ResourceTable)resourceTable.clone(); resourceTable.ResourceHistorySet = historySet; } else { resourceTable = (ResourceTable)resourceTable.clone(); } //System.out.println("Loaded -> "+resourceTable.getTitle()+" -> "+resourceTable.getClass()+" -> "+resourceTable.getTableRate()); } assignmentTable.AssignmentResourceTable = resourceTable; }
//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; } } }
private void assignToResource(Session paramSession, AssemblyTable paramAssemblyTable, ResourceTable paramResourceTable, decimal paramBigDecimal) { AssemblyConsumableTable assemblyConsumableTable; if (paramResourceTable is AssemblyTable) { assemblyConsumableTable = new AssemblyAssemblyTable(); ((AssemblyAssemblyTable)assemblyConsumableTable).LastUpdate = this.lastUpdate; } else if (paramResourceTable is EquipmentTable) { assemblyConsumableTable = new AssemblyEquipmentTable(); ((AssemblyEquipmentTable)assemblyConsumableTable).LastUpdate = this.lastUpdate; } else if (paramResourceTable is SubcontractorTable) { assemblyConsumableTable = new AssemblySubcontractorTable(); ((AssemblySubcontractorTable)assemblyConsumableTable).LastUpdate = this.lastUpdate; } else if (paramResourceTable is LaborTable) { assemblyConsumableTable = new AssemblyLaborTable(); ((AssemblyLaborTable)assemblyConsumableTable).LastUpdate = this.lastUpdate; } else if (paramResourceTable is MaterialTable) { assemblyConsumableTable = new AssemblyMaterialTable(); ((AssemblyMaterialTable)assemblyConsumableTable).LastUpdate = this.lastUpdate; } else if (paramResourceTable is ConsumableTable) { assemblyConsumableTable = new AssemblyConsumableTable(); ((AssemblyConsumableTable)assemblyConsumableTable).LastUpdate = this.lastUpdate; } else { return; } assemblyConsumableTable.ExchangeRate = BigDecimalMath.ONE; assemblyConsumableTable.LocalStateProvince = ""; assemblyConsumableTable.LocalCountry = ""; assemblyConsumableTable.LocalFactor = BigDecimalMath.ONE; assemblyConsumableTable.Factor1 = BigDecimalMath.ONE; assemblyConsumableTable.Factor2 = BigDecimalMath.ONE; assemblyConsumableTable.Factor3 = BigDecimalMath.ONE; assemblyConsumableTable.QuantityPerUnit = paramBigDecimal; assemblyConsumableTable.QuantityPerUnitFormula = ""; assemblyConsumableTable.QuantityPerUnitFormulaState = ResourceToAssignmentTable.QTYPUFORM_NOFORMULA; long?long = (long?)paramSession.save(assemblyConsumableTable); ResourceToAssignmentTable resourceToAssignmentTable = (ResourceToAssignmentTable)paramSession.load(assemblyConsumableTable.GetType(), long); if (paramResourceTable is AssemblyTable) { paramAssemblyTable.AssemblyChildSet.Add((AssemblyAssemblyTable)resourceToAssignmentTable); } else if (paramResourceTable is EquipmentTable) { paramAssemblyTable.AssemblyEquipmentSet.Add((AssemblyEquipmentTable)resourceToAssignmentTable); } else if (paramResourceTable is SubcontractorTable) { paramAssemblyTable.AssemblySubcontractorSet.Add((AssemblySubcontractorTable)resourceToAssignmentTable); } else if (paramResourceTable is LaborTable) { paramAssemblyTable.AssemblyLaborSet.Add((AssemblyLaborTable)resourceToAssignmentTable); } else if (paramResourceTable is MaterialTable) { paramAssemblyTable.AssemblyMaterialSet.Add((AssemblyMaterialTable)resourceToAssignmentTable); } else if (paramResourceTable is ConsumableTable) { paramAssemblyTable.AssemblyConsumableSet.Add((AssemblyConsumableTable)resourceToAssignmentTable); } resourceToAssignmentTable.setResourceTable(paramAssemblyTable); resourceToAssignmentTable.AssignmentResourceTable = paramResourceTable; paramSession.update(paramAssemblyTable); paramSession.update(paramResourceTable); paramSession.update(resourceToAssignmentTable); }