CodeCharge Studio | All ASP PHP Perl ColdFusion Java C#.NET VB.NET |
This example shows how to create a column with a calculated value in a Grid. In this case, we have a Grid called Tasks which has the fields task_name, estimated_time and expended_time. We shall add a new field called task_percent which will contain the calculated value.
Function Tasks_BeforeShowRow(Sender) If Tasks.Estimated_Time.Value > 0 Then Tasks.Task_Percent.Value = (Tasks.Expended_Time.Value*100)/Tasks.Estimated_Time.Value Else Tasks.Task_Percent.Value = 0 End if End Function
function Tasks_BeforeShowRow(& $sender) { global$Tasks; if($Tasks->Estimated_Time->GetValue() > 0){ $Tasks->Task_Percent->SetValue( ($Tasks->Expended_Time->GetValue()*100)/$Tasks->Estimated_Time->GetValue()); } else{ $Tasks->Task_Percent->SetValue(0); } }
sub Tasks_BeforeShowRow() { if ($Tasks->{Estimated_Time}->GetValue() > 0) { $Tasks->{Task_Percent}->SetValue( ($Tasks->{Expended_Time}->GetValue()*100)/$Tasks->{Estimated_Time}->GetValue()); } else { $Tasks->{Task_Percent}->SetValue(0); } }
<!---Tasks_BeforeShowRow ---> <CFIF fldEstimated_Time GT 0> <CFSET fldTask_Percent=(fldExpended_Time*100)/fldEstimated_Time> <CFELSE> <CFSET fldTask_Percent=0> </CFIF>
'Tasks_BeforeShowRow If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then Dim TasksTask_Percent As System.Web.UI.WebControls.Literal = DirectCast(e.Item.FindControl("TasksTask_Percent"),System.Web.UI.WebControls.Literal) If DataItem.Estimated_Time.Value > 0 Then TasksTask_Percent.Text = ((DataItem.Expended_Time.Value*100)/DataItem.Estimated_Time.Value).ToString() Else TasksTask_Percent.Text = "0" End if End If
//Tasks_BeforeShowRow if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { System.Web.UI.WebControls.Literal TasksTask_Percent = (System.Web.UI.WebControls.Literal)e.Item.FindControl("TasksTask_Percent"); if ((Double)DataItem.Estimated_Time.Value > 0) { TasksTask_Percent.Text = (((Double)DataItem.Expended_Time.Value*100)/(Double)DataItem.Estimated_Time.Value).ToString(); } else { TasksTask_Percent.Text = "0"; } }
//Tasks_BeforeShowRow if(e.getGrid().getControl("Estimated_Time").getValue() != null && Utils.convertToDouble(e.getGrid().getControl("Estimated_Time").getValue()).doubleValue()>0 ){ e.getGrid().getControl("Task_Percent").setValue( (Utils.convertToDouble(e.getGrid().getControl("Expended_Time").getValue()).doubleValue()*100)/Utils.convertToDouble(e.getGrid().getControl("Estimated_Time").getValue()).doubleValue()); } else { e.getGrid().getControl("Task_Percent").setValue(0); }