function OpeningValue($ItemId, $LeftQuantity)
{
    global $PurchaseValue;
    global ${$ItemId};
    global $GRNLeftQuantity;
    //echo $LeftQuantity."<br>";
    $sql_purchase = "select * from ms_GRN_transaction where item_id = '" . $ItemId . "' order by GRN_transaction_id ASC limit " . ${$ItemId} . ",1";
    //echo $sql_purchase."<br>";
    //echo $$ItemId."<br>";
    $res_purchase = mysql_query($sql_purchase) or die("Error in : " . $sql_purchase . "<br>" . mysql_errno() . " :" . mysql_error());
    if (mysql_num_rows($res_purchase) > 0) {
        while ($row_purchase = mysql_fetch_array($res_purchase)) {
            if ($LeftQuantity > $row_purchase["rec_qty"] && $GRNLeftQuantity <= 0) {
                //echo "A ".$ItemId." : ".$LeftQuantity." : ".$row_purchase["rec_qty"]." : ".$row_purchase["net_rate"];
                //echo "<br>";
                $PurchaseValue += $row_purchase["rec_qty"] * $row_purchase["net_rate"];
                $LeftQuantity = $LeftQuantity - $row_purchase["rec_qty"];
                //echo "<br>";
                ${$ItemId}++;
                OpeningValue($ItemId, $LeftQuantity);
            } else {
                if ($GRNLeftQuantity > 0 && $LeftQuantity > $GRNLeftQuantity) {
                    //echo "B ".$ItemId." : ".$LeftQuantity." : ".$row_purchase["rec_qty"]." : ".$row_purchase["net_rate"];
                    //echo "<br>";
                    $PurchaseValue += $GRNLeftQuantity * $row_purchase["net_rate"];
                    $LeftQuantity = $LeftQuantity - $GRNLeftQuantity;
                    ${$ItemId}++;
                    $GRNLeftQuantity = 0;
                    if ($LeftQuantity > 0) {
                        OpeningValue($ItemId, $LeftQuantity);
                    }
                } else {
                    if ($GRNLeftQuantity > 0 && $LeftQuantity <= $GRNLeftQuantity) {
                        //echo "C ".$ItemId." : ".$LeftQuantity." : ".$row_purchase["rec_qty"]." : ".$row_purchase["net_rate"];
                        //echo "<br>";
                        $PurchaseValue += $LeftQuantity * $row_purchase["net_rate"];
                        $GRNLeftQuantity = $GRNLeftQuantity - $LeftQuantity;
                    } else {
                        //echo "D ".$ItemId." : ".$LeftQuantity." : ".$row_purchase["rec_qty"]." : ".$row_purchase["net_rate"];
                        //echo "<br>";
                        $PurchaseValue += $LeftQuantity * $row_purchase["net_rate"];
                        $GRNLeftQuantity = $row_purchase["rec_qty"] - $LeftQuantity;
                        if ($GRNLeftQuantity == 0) {
                            ${$ItemId}++;
                        }
                    }
                }
            }
        }
    }
    return $PurchaseValue;
}
function OpeningValue($ItemId, $LeftQuantity)
{

	//echo $ItemId." : ".$LeftQuantity;
	//echo "<br>";
	global $PurchaseValue;
	global $$ItemId;
	
	
	$sql_purchase = "select * from ms_GRN_transaction where item_id = '".$ItemId."' order by GRN_transaction_id ASC limit ".$$ItemId.",1";
	//echo $sql_purchase."<br>";
	
	$res_purchase=mysql_query($sql_purchase) or die("Error in : ".$sql_purchase."<br>".mysql_errno()." :".mysql_error());
	if(mysql_num_rows($res_purchase)>0)
	{
		while($row_purchase=mysql_fetch_array($res_purchase))
		{
			
			if($LeftQuantity > $row_purchase["rec_qty"])
			{
				$PurchaseValue += $row_purchase["rec_qty"] * $row_purchase["net_rate"];
				//echo $LeftQuantity." : ".$row_purchase["rec_qty"]." : ".$row_purchase["net_rate"]. " : ".$PurchaseValue;
				//echo "<br>";
				$LeftQuantity = $LeftQuantity - $row_purchase["rec_qty"];
				
				OpeningValue($ItemId,$LeftQuantity);
				
				
			}
			else if($LeftQuantity>0)
			{
				$PurchaseValue += $LeftQuantity * $row_purchase["net_rate"];
				//echo $LeftQuantity." : ".$row_purchase["rec_qty"]." : ".$row_purchase["net_rate"]. " : ".$PurchaseValue;
				//echo "<br>";
				$LeftQuantity = 0;
				//$$ItemId++;
			}
			
		}
	}
	return $PurchaseValue;
}
													
											$res_opening_issue=mysql_query($sql_opening_issue) or die("Error in : ".$sql_opening_issue."<br>".mysql_errno()." :".mysql_error());
											
											if(mysql_num_rows($res_opening_issue)>0)
											{
												
												while($row_opening_issue=mysql_fetch_array($res_opening_issue))
												{
													//echo $OpneingIssueValue;
													if($row_opening_issue["OpeningIssueQuantity"] > $row_opening_issue["OpeningQuantity"] && $OpneingIssueValue!=0)
													{
														$IssueValue += $row_opening_issue["OpeningQuantity"]*$row_opening_issue["OpeningRate"];
														
														$LeftQuantity = $row_opening_issue["OpeningIssueQuantity"] - $row_opening_issue["OpeningQuantity"];
														
														$IssueValue += OpeningValue($row_opening_issue["ItemId"],$LeftQuantity);
														
													}
													else
													{
														$IssueValue += $row_opening_issue["OpeningIssueQuantity"]*$row_opening_issue["OpeningRate"];
													}
												}
											}
										}
									}
									
									$sql_purchase = "select
							
													(select 
														sum(ms_GRN_transaction.rec_qty*ms_GRN_transaction.net_rate) as OpeningPurchase