Index: /branches/beta/data/downloads/module/mdl_paygent/mdl_paygent.inc
===================================================================
--- /branches/beta/data/downloads/module/mdl_paygent/mdl_paygent.inc	(revision 16795)
+++ /branches/beta/data/downloads/module/mdl_paygent/mdl_paygent.inc	(revision 16796)
@@ -641,5 +641,5 @@
 	//¡¡ÀßÄê¥Ñ¥é¥á¡¼¥¿¤Î¼èÆÀ
 	$arrPaymentDB = sfGetPaymentDB(MDL_PAYGENT_ID);
-
+	
 	$where = "memo01 = ? AND status = ?";
 	$arrOrder = $objQuery->select("order_id", "dtb_order", $where, array(MDL_PAYGENT_ID, ORDER_PAY_WAIT));
@@ -647,5 +647,5 @@
 	// ¶¦ÄÌ¥Ç¡¼¥¿¤Î¼èÆÀ
 	$arrSend = sfGetPaygentShare(PAYGENT_REF, 0, $arrPaymentDB[0]);
-		
+	
 	if(count($arrOrder) > 0) {
 		sfUpdatePaymentStatus($objPaygent, $arrSend);
@@ -701,4 +701,6 @@
 	$i = 0;
 	$notice_id = $objQuery->max("dtb_order", "memo10", "memo01 = ?", array(MDL_PAYGENT_ID));
+	
+	$objQuery->begin();
 	
 	// ¥¹¥Æ¡¼¥¿¥¹¤Î¼èÆÀ
@@ -736,11 +738,28 @@
 	for ($i = 0; $i < count($arrErrId); $i++) {
 		$arrRet = sfGetPaymentStatus($objPaygent, $arrSend, $arrErrId[$i]);
+		
+		// ºÆ¼èÆÀÀ®¸ù
 		if($arrRet['success_code'] == '0') {
 			sfUpdatePaygentOrder($objQuery, $arrRet);
+		
+		// ºÆ¼èÆÀ¼ºÇÔ
+		} elseif($arrRet['payment_notice_id'] == "") {
+			gfPrintLog("·èºÑÄÌÃÎID=". $arrErrId[$i]. "¤ÎºÆ¼èÆÀ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£¥Ð¥Ã¥Á¤ò¶¯À©½ªÎ»¤·¤Þ¤¹¡£");
+			$err_flg = false;
+			break;
 		}
+		
+		// ºÆ¼èÆÀ´°Î»
 		if($i == count($arrErrId) - 1) {
 			gfPrintLog("º¹Ê¬¤ÎºÆ¼èÆÀ¤¬½ªÎ»¤·¤Þ¤·¤¿¡£");
 		}
 	}
+	
+	// ¥³¥ß¥Ã¥ÈÀ®ÈÝÈ½Äê
+	if ($err_flg === false) {
+		$objQuery->rollback();
+	} else {
+		$objQuery->commit();
+	}
 }
 
@@ -754,6 +773,4 @@
  **************************************************************************************************************/
 function sfGetPaymentStatus($objPaygent, $arrSend, $notice_id = "") {
-	$objQuery = new SC_Query();
-	
 	// ´û¤Ë¼èÆÀ¤·¤¿º¹Ê¬¤ò¼èÆÀ
 	if($notice_id !== "") {
