{
			unset($arGeneral['CREATED_BY']);
			if(CCatalogDocs::update($ID, $arGeneral))
				$docId = $ID;
		}
		else
			$ID = $docId = CCatalogDocs::add($arGeneral);
		if($ID > 0)
		{
			$dbElement = CCatalogStoreDocsElement::getList(array(), array("DOC_ID" => $ID), false, false, array("ID"));
			while($arElement = $dbElement->Fetch())
			{
				CCatalogStoreDocsElement::delete($arElement["ID"]);
				$dbDocsBarcode = CCatalogStoreDocsBarcode::getList(array(), array("DOC_ELEMENT_ID" => $arElement["ID"]), false, false, array("ID"));
				while($arDocsBarcode = $dbDocsBarcode->Fetch())
					CCatalogStoreDocsBarcode::delete($arDocsBarcode["ID"]);
			}
		}
		if(isset($_POST["PRODUCT"]) && is_array($_POST["PRODUCT"]) && $docId)
		{
			$arProducts = ($_POST["PRODUCT"]);
			foreach($arProducts as $key => $val)
			{
				$storeTo = $val["STORE_TO"];
				$storeFrom = $val["STORE_FROM"];

				$arAdditional = Array(
					"AMOUNT" => $val["AMOUNT"],
					"ELEMENT_ID" => $val["PRODUCT_ID"],
					"PURCHASING_PRICE" => $val["PURCHASING_PRICE"],
					"STORE_TO" => $storeTo,