I am not an array expert, but from a programming side, it would appear that you are not incrementing the array counter, so you are just constantly reassigning the values to the same array member.
If I wrong about the above, then you are over summing your total.
This is what I would think that you are doing:
whileprintingrecords;
numbervar trial:=sum(
{@RebillOrderCount}, {Order.CreateDateTime}, "daily");
total:= total + tonumber(trial * {OrderProduct.ProductPrice})
trial is a fixed number, the array is never incremented, and total is summing just the 1 value, so you are doing alot of work for nothing.
Is this the number that you are getting? If you want the running total, it should work now, as you are adding to the shared variable, not just constantly reassigning it with the last value.
Let us know how this works for you.