--- datasetitems_form.php	2014-03-21 00:26:57.259356141 +0530
+++ patch1.php	2014-03-21 00:42:16.426105013 +0530
@@ -436,11 +436,12 @@
             foreach ($this->datasetdefs as $defid => $datasetdef) {
                 if (!optional_param('updatedatasets', false, PARAM_BOOL) &&
                         !optional_param('updateanswers', false, PARAM_BOOL)) {
-			$formdata["number[$j]"] = $this->qtypeobj->generate_dataset_item( 
-								    $datasetdef->options);
+			$formdata["number[$j]"] = number_format($this->qtypeobj->generate_dataset_item( 
+						$datasetdef->options),$answer->correctanswerlength);
                 } else {
-			$formdata["number[$j]"] = $this->_form->getElementValue("number[$j]");
-	        }
+			$formdata["number[$j]"] = number_format($this->_form->getElementValue("number[$j]"),
+						$answer->correctanswerlength);
+                }
                 $formdata["definition[$j]"] = $defid;
                 $formdata["itemid[$j]"] = isset($datasetdef->items[$itemnumber]) ?
                         $datasetdef->items[$itemnumber]->id : 0;
@@ -482,10 +483,9 @@
             $formdata['outsidelimit']= '<span class="error">' .
                     get_string('oneanswertrueansweroutsidelimits', 'qtype_calculated') . '</span>';
         }
-        $formdata = $this->qtypeobj->custom_generator_set_data($this->datasetdefs, $formdata);
+	 $formdata = $this->qtypeobj->custom_generator_set_data($this->datasetdefs, $formdata);
 
         parent::set_data((object)($formdata + (array)$question));
-
     }
 
     public function validation($data, $files) {
