<?php
	$StrHWND_A=$_SESSION['SYS_HW']."_A";
	$VAR_USER_ID=0;	
	//-------------------------
	$StrId=V($_POST['TxtId']);
	$StrCmd=V($_POST['TxtAc']);	
	//-------------------------
	$StrFec=V($_POST['TxtFec']);
	$StrAlm=V($_POST['CboAlm']);
	$StrNum=V($_POST['TxtNum']);
	$StrAcc=V($_POST['CboAcc']);
	$StrObs=V($_POST['TxtObs']);
	if(strlen($StrCmd)==0){
		$StrCmd=V($_GET['TxtAc']);
		if($StrCmd=="X")$StrCmd="C";
		$StrFec=date("d-m-y");
	}
	//------------------------
	$StrPro_ID=V($_POST['Pro_TxtId']);
	$StrPro_PR=V($_POST['TxtPre']);
	$StrPro_CA=V($_POST['TxtCant']);	
	//------------------------
	if(strlen($StrPro_ID)==0 || !is_numeric($StrPro_ID)) $StrPro_ID="0";
	if(strlen($StrPro_PR)==0 || !is_numeric($StrPro_PR)) $StrPro_PR="0";
	if(strlen($StrPro_CA)==0 || !is_numeric($StrPro_CA)) $StrPro_CA="0";
	if(strlen($StrAcc)==0) $StrAcc="Q";
	//------------------------
	$StrCod=V($_POST['TxtCod']);
	$StrDes=V($_POST['TxtDes']);
	$StrMARCA=V($_POST['TxtMarca']);
	$StrCant=V($_POST['TxtCant']);
	//ACTIVAR DESDE OTRA PAGINA
	if(strlen($StrId)==0){
		$StrId=V($_GET['Id']);
		if(is_numeric($StrId)==false){
			$StrId="";
		}else{
			$StrCmd="AR";
			$LStrPag=V($_GET['Pag']);
			if(!is_numeric($LStrPag)){
				$LStrPag="";
			}
		}
	}
	//FUNCIONES DE DESZPLAZAMIENTO
	if(strlen($LStrPag)==0)	$LStrPag="0";
	if($StrCmd=="MSig")	$LStrPag=($LStrPag+1);
	if($StrCmd=="MAnt")	$LStrPag=($LStrPag-1);
	if($StrCmd=="MPri")	$LStrPag=0;
	if($StrCmd=="MUlt")	$LStrPag=(floor($LStrTR / $VP_RegXPag));
	//FUNCION PARA ACTIVAR UN REGISTRO
	if(strlen($StrId)>0 && $StrCmd=="AR"){
		$Id=$StrId;
		$StrAlm=gs("ALM","vajustes","ID=$Id");
		$StrAcc=gs("ACC","vajustes","ID=$Id");
		$StrFec=gs("DATE_FORMAT(FEC,'%d-%m-%y')","vajustes","ID=$Id");
		$StrNum=gs("NUM","vajustes","ID=$Id");
		ejt("DELETE FROM temp_compras WHERE cod_temc='$StrHWND_A'");
		$s="SELECT * FROM ajustes_det WHERE id_ajuste=$Id";
		$cx=0;
		$result = grs($s);			
		while ($row = $result->fetch_row()){
			$cx++;
			$AR_ID=$row[2];
			$AR_CA=$row[3];
			$AR_PR=0;
			$AR_IM=0;
			$s="INSERT INTO temp_compras VALUES ('$StrHWND_A',$AR_ID,
			$AR_CA,$AR_PR,$AR_IM,$cx,'','',0)";
			ejt($s);			
		}
	}
	//
	if($StrCmd=="C"){
		ejt("DELETE FROM temp_compras WHERE cod_temc='$StrHWND_A'");		
		$StrAlmD="";
		$StrFec=date("d-m-y");
		$StrNum="";	
		$StrCod="";
		$StrObs="";
		$StrDes="";
		$StrMARCA="";	
		$StrCant="";
		$StrId="";
	}
	//
	if($StrCmd=="KILLER"){
		ejt("DELETE FROM temp_compras WHERE 
				temc_index=$StrPro_ID AND cod_temc='$StrHWND_A'");
		$StrCod="";
		$StrDes="";
		$StrMARCA="";
		$StrCant="";
	}
	//
	if($StrCmd=="ADD"){	
		if($StrPro_ID==0){
			$LStrMsg="No se puede determinar el ID del producto";
			$LStrFoc="document.getElementById('TxtCod').focus();";						
			$StrGT="S";			
		}
		if(strlen($StrGT)==0){
			if($StrPro_CA==0){
				$LStrMsg="La cantidad debe ser mayor a cero";
				$LStrFoc="document.getElementById('TxtCant').focus();";						
				$StrGT="S";							
			}
		}
		if(strlen($StrGT)==0){
			if(gn("count(*)","temp_compras",
				  "temc_id_producto=$StrPro_ID AND cod_temc='$StrHWND_A'")>0){
				$LStrMsg="El producto que desea agregar ya se encuentra en la lista";
				$LStrFoc="document.getElementById('TxtCod').focus();";						
				$StrGT="S";	
			}
		}
		if(strlen($StrGT)==0){			
			$StrImporte="0";
			$StrPro_PR="0";
			$StrIndex=GenId("temc_index","temp_compras");
			$s="INSERT INTO temp_compras VALUES ('$StrHWND_A',
				$StrPro_ID,$StrPro_CA,$StrPro_PR,
				$StrImporte,$StrIndex,'','',0)";
			ejt($s);
			$StrCant="";
			$StrPre="";
			$StrDes="";
			$StrMARCA="";	
			$StrCod="";
			$StrImp="";
			$LStrFoc="document.getElementById('TxtCod').focus();";						
			$StrGT="S";	
		}
	}
	//
	if(($StrCmd=="G" || $StrCmd=="M") && strlen($StrGT)==0){			
		$StrAlm_=gn("id_almacen","almacenes","alm_nombre='$StrAlm'");
		if(gn("count(*)","temp_compras","cod_temc='$StrHWND_A'")==0){
			$LStrMsg="La lista de productos esta vacia";
			$LStrFoc="document.getElementById('TxtCod').focus();";						
			$StrGT="S";
		}
	}
	//FUNCIONES DE ACTUALIZACION
	if($StrCmd=="M" && strlen($StrGT)==0){
		$LStrMsg="";
		$M_AC=gs("acc","ajustes","id_ajuste=$StrId");
		$M_ID_ALM=gs("id_alm","ajustes","id_ajuste=$StrId");
		ejt("DELETE FROM ajustes WHERE id_ajuste=$StrId");
		$s="SELECT id_producto,ca FROM ajustes_det WHERE id_ajuste=$StrId";
		$result = grs($s);			
		while ($row = $result->fetch_row()){
			$E_ID=$row[0];
			$E_CA=$row[1];
			if($M_AC=="A"){
				STOCK_SUB($M_ID_ALM,$E_ID,$E_CA);			
			}else{
				STOCK_ADD($M_ID_ALM,$E_ID,$E_CA);			
			}
		}
		ejt("DELETE FROM ajustes_det WHERE id_ajuste=$StrId");
		$LStrMsg="Los datos han sido modificados";
		$StrGT="";
		$StrCmd="G";
	}
	//FUNCIONES DE ACTUALIZACION
	if($StrCmd=="G" && strlen($StrGT)==0){
		$StrFec_=ToDate($StrFec);
		$StrAcc_=substr($StrAcc,0,1);
		$GII=GenGI();
		$StrId=GenId("id_ajuste","ajustes");
		$StrNum=vbr("00000".$StrId,5);
		$s="INSERT INTO ajustes VALUES ($StrId,'$StrFec_',$StrAlm_,
		   '$StrNum','$StrAcc_','$StrObs',$VAR_USER_ID,'N',$GII)";
	 	ejt($s);
		//
		ejt("DELETE FROM ajustes_det WHERE id_ajuste=$StrId");
		$s="SELECT * FROM temp_compras WHERE cod_temc='$StrHWND_A' 
			ORDER BY temc_index";
		$result = grs($s);			
		$cx=0;			
		while ($row = $result->fetch_row()){
			$cx++;
			$G_ID=$row[1];
			$G_CA=$row[2];
			$ss="INSERT INTO ajustes_det VALUES ($StrId,$cx,$G_ID,$G_CA)";
			ejt($ss);
			if($StrAcc_=="A"){
				STOCK_ADD($StrAlm_,$G_ID,$G_CA);
			}else{
				STOCK_SUB($StrAlm_,$G_ID,$G_CA);
			}
		}
		ejt("DELETE FROM temp_compras WHERE cod_temc='$StrHWND_A'");
		//
		if(strlen($LStrMsg)==0){
			$LStrMsg="Los datos han sido registrado. El numero generado es : $StrNum";
		}
		$LStrFoc="document.getElementById('TxtFec').focus();";						
		$StrGT="S";
		//
		$StrId="";
		$StrFec="";
		$StrNum="";
		$StrObs="";
		$StrCod="";
		$StrDes="";
		$StrMARCA="";	
		$StrCant="";
	}
	
	if($StrCmd=="E"){
		$StrAlm_=gn("id_alm","ajustes","id_ajuste=$StrId");
		$StrAcc_=gs("acc","ajustes","id_ajuste=$StrId");
		ejt("DELETE FROM ajustes WHERE id_ajuste=$StrId");
		$s="SELECT id_producto,ca FROM ajustes_det WHERE id_ajuste=$StrId";
		$result = grs($s);			
		while ($row = $result->fetch_row()){
			$E_ID=$row[0];
			$E_CA=$row[1];
			if($StrAcc_=="A"){
				STOCK_SUB($StrAlm_,$E_ID,$E_CA);			
			}else{
				STOCK_ADD($StrAlm_,$E_ID,$E_CA);			
			}
		}
		ejt("DELETE FROM ajustes_det WHERE id_ajuste=$StrId");
		//
		ejt("DELETE FROM temp_compras WHERE cod_temc='$StrHWND_A'");
		//
		$LStrMsg="Los datos han sido eliminados";
		$LStrFoc="document.getElementById('TxtFec').focus();";						
		$StrGT="S";
		//
		$StrId="";
		$StrFec="";
		$StrNum="";
		$StrObs="";
		$StrCod="";
		$StrDes="";
		$StrMARCA="";	
		$StrCant="";
	}	
	
	if($StrCmd=="A"){
		$StrAlm_=gn("id_alm","ajustes","id_ajuste=$StrId");
		$StrAcc_=gs("acc","ajustes","id_ajuste=$StrId");
		ejt("UPDATE ajustes SET anu='S' WHERE id_ajuste=$StrId");
		$s="SELECT id_producto,ca FROM ajustes_det WHERE id_ajuste=$StrId";
		$result = grs($s);			
		while ($row = $result->fetch_row()){
			$E_ID=$row[0];
			$E_CA=$row[1];
			if($StrAcc_=="A"){
				STOCK_SUB($StrAlm_,$E_ID,$E_CA);			
			}else{
				STOCK_ADD($StrAlm_,$E_ID,$E_CA);			
			}
		}
		//
		ejt("DELETE FROM temp_compras WHERE cod_temc='$StrHWND_A'");
		//
		$LStrMsg="La transferencia ha sido anulada";
		$LStrFoc="document.getElementById('TxtFec').focus();";						
		$StrGT="S";
		//
		$StrId="";
		$StrFec="";
		$StrNum="";
		$StrObs="";
		$StrCod="";
		$StrDes="";
		$StrMARCA="";	
		$StrCant="";
	}	
	//////////////////////////////////
	if($StrGT=="S"){
		if(strlen($LStrMsg)>0){
			if(strlen($LStrFoc)==0){
				$LStrMsg="onload=\"alert('$LStrMsg');\"";
			}else{
				$LStrMsg="onload=\"alert('$LStrMsg');$LStrFoc;\"";
			}
		}else{
			if(strlen($LStrFoc)>0){
				$LStrMsg="onload=\"$LStrFoc;\"";
			}
		}
	}else{
		$LStrFoc="document.getElementById('TxtFec').focus();";
		$LStrMsg="onload=\"$LStrFoc;\"";
	}
	
?>