<?php
//+++++++++++++++++++++++
$StrFec=V($_POST['TxtFec']);
$StrEmp=V($_POST['CboEmp']);
$StrAlm=V($_POST['CboAlm']);
//+++++++++++++++++++++++
if(strlen($StrEmp)==0)$StrEmp=GE("N");
if(strlen($StrAlm)==0)$StrAlm=GA($StrEmp,"N");	
//
$StrCod=V($_POST['TxtCod']);
$StrDes=V($_POST['TxtDes']);
$StrCan=V($_POST['TxtCan']);
$StrDe1=V($_POST['TxtDe1']);
$StrUXC=V($_POST['TxtUXC']);
$StrACI=V($_POST['TxtACI']);
$StrDe2=V($_POST['TxtDe2']);
//--ACTIVAR DESDE OTRA PAGINA--
if(strlen($StrId)==0){
	$StrId=V($_GET['Id']);
	if(is_numeric($StrId)==false){
		$StrId="";
		$StrFec=date("d-m-y");
	}else{
		$StrCmd="AR";
		$LStrPag=V($_GET['Pag']);
		if(!is_numeric($LStrPag)){
			$LStrPag="";
		}
	}
}	
//--FUNCION PARA ACTIVAR UN REGISTRO--
if(strlen($StrId)>0 && $StrCmd=="AR"){
	$Id=$StrId;
	$StrFec=gs("DATE_FORMAT(FEC,'%d-%m-%y')","vis_transformaciones","ID=$Id");
	$StrEmp=gs("EMPC","vis_transformaciones","ID=$Id");
	$StrAlm=gs("ALM","vis_transformaciones","ID=$Id");
	$StrCod=gs("COD","vis_transformaciones","ID=$Id");
	$StrDes=gs("DES_PRO","vis_transformaciones","ID=$Id");
	$StrCan=gs("CAN","vis_transformaciones","ID=$Id");
	$StrDe1=gs("D_CAJA","vis_transformaciones","ID=$Id");
	$StrUXC=gs("D_U_X_CAJA","vis_transformaciones","ID=$Id");
	$StrACI=gs("A_CAJA","vis_transformaciones","ID=$Id");
	$StrDe2=gs("A_U_X_CAJA","vis_transformaciones","ID=$Id");	
	$LStrFoc="document.getElementById('TxtFec').focus();";		
}
//
if($StrCmd=="G" || $StrCmd=="M"){		
	$StrEmp_=gn("id_emp","empresas","emp_nomc='$StrEmp'");
	$StrAlm_=gn("id_almacen","almacenes","alm_obs='$StrAlm' AND alm_id_empresa=$StrEmp_");
	$StrCod_=gn("id_producto","productos","pro_codigo='$StrCod'");
	$StrFec_=ToDate($StrFec);
}
//--FUNCIONES DE ACTUALIZACION--
//-------------------------------------------------------------------
if($StrCmd=="G"){
	$StrGI=GenGI();
	//
	if(strlen($StrGT)==0){
		$Id=GenId("id_transformacion","transformaciones");
		$s="INSERT INTO transformaciones VALUES ($Id,
		'$StrFec_',
		$StrAlm_,
		$StrCod_,
		$StrCan,
		$StrDe1,
		$StrUXC,
		$StrACI,
		$StrDe2,
		$StrGI)";
		ejt($s);
		//BIT
		$_BIT_MOD_ID=$Id;
		$_BIT_SQL_CAB=$s;
		$_BIT_SQL_DET="";
		$_BIT_PHP="transformaciones.php";
		$_BIT_ID=BIT_ADD("ALMACEN","TRANSFORMACIONES","GUARDAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,$s);
		//BIT	
		if($LStrMM=="S")	$LStrMsg="Datos registrados";
		$LStrFoc="document.getElementById('TxtFec').focus();";
		$StrGT="S";
		$StrCmd="L";
	}
}

//-------------------------------------------------------------------
if($StrCmd=="M"){
	if(strlen($StrGT)==0){
		$s="UPDATE transformaciones SET 
				fecha='$StrFec_',
				id_almacen=$StrAlm_,
				id_producto=$StrCod_,
				cant=$StrCan,
				de_caja=$StrDe1,
				de_uxc=$StrUXC,
				a_caja=$StrACI,
				a_uxc=$StrDe2
			WHERE id_transformacion=$StrId";
		ejt($s);
		//BIT
		$_BIT_MOD_ID=$StrId;
		$_BIT_SQL_CAB=$s;
		$_BIT_SQL_DET="";
		$_BIT_PHP="transformaciones.php";
		$_BIT_ID=BIT_ADD("ALMACEN","TRANSFORMACIONES","MODIFICAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,$s);
		//BIT	
		if($LStrMM=="S")	$LStrMsg="Datos actualizados";
		$LStrFoc="document.getElementById('TxtFec').focus();";
		$StrGT="S";
		$StrCmd="L";
	}
}
//-------------------------------------------------------------------
if($StrCmd=="E"){
	if(strlen($StrGT)==0){
		//BIT
		$_BIT_MOD_ID=$StrId;
		$_BIT_SQL_CAB="SQL";
		$_BIT_SQL_DET="";
		$_BIT_PHP="transformaciones.php";
		$_BIT_ID=BIT_ADD("ALMACEN","TRANSFORMACIONES","ELIMINAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,"");
		//BIT	
		$IDAlm=gn("id_almacen","transformaciones","id_transformacion=$StrId");
		$IDPro=gn("id_producto","transformaciones","id_transformacion=$StrId");
		//
		$CT=(($StrCan*$StrDe1)/$StrACI) + $StrDe2;			
		if(gn("count(*)","stocks_presentaciones","sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND 
		sp_presentacion=$CT")==0 && $CT>0){
			$s="INSERT INTO stocks_presentaciones VALUES ($IDAlm,$IDPro,$CT,0,$PRO_SI)";
			ejt($s);
			//
			BIT_DET_ADD($_BIT_ID,$s);
			//
		}
		$s="UPDATE stocks_presentaciones SET 
			sp_cantidad=sp_cantidad - $StrACI
			WHERE sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND sp_presentacion=$CT";
		ejt($s);
		//
		BIT_DET_ADD($_BIT_ID,$s);
		//
		$R=$StrUXC - $StrCan;
		if(gn("count(*)","stocks_presentaciones","sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND 
		sp_presentacion=$R")==0 && $R>0){
			$s="INSERT INTO stocks_presentaciones VALUES ($IDAlm,$IDPro,$R,0,$PRO_SI)";
			ejt($s);
			//
			BIT_DET_ADD($_BIT_ID,$s);
			//
		}
		$s="UPDATE stocks_presentaciones SET 
			sp_cantidad=sp_cantidad - $StrDe1
			WHERE sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND sp_presentacion=$R";
		ejt($s);			
		//
		BIT_DET_ADD($_BIT_ID,$s);
		//
		if(gn("count(*)","stocks_presentaciones","sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND 
		sp_presentacion=$StrUXC")==0 && $StrUXC>0){
			$s="INSERT INTO stocks_presentaciones VALUES ($IDAlm,$IDPro,$StrUXC,0,$PRO_SI)";
			ejt($s);
			//
			BIT_DET_ADD($_BIT_ID,$s);
			//
		}
		$s="UPDATE stocks_presentaciones SET 
			sp_cantidad=sp_cantidad + $StrDe1
			WHERE sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND sp_presentacion=$StrUXC";
		ejt($s);
		//
		BIT_DET_ADD($_BIT_ID,$s);
		//
		if($StrDe2>0){
			if(gn("count(*)","stocks_presentaciones","sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND 
			sp_presentacion=$StrDe2")==0){
				$s="INSERT INTO stocks_presentaciones VALUES ($IDAlm,$IDPro,$StrDe2,0,$PRO_SI)";
				ejt($s);
				//
				BIT_DET_ADD($_BIT_ID,$s);
				//
			}	
			$s="UPDATE stocks_presentaciones SET 
				sp_cantidad=sp_cantidad + $StrACI
				WHERE sp_id_almacen=$IDAlm AND sp_id_producto=$IDPro AND sp_presentacion=$StrDe2";
			ejt($s);
			//
			BIT_DET_ADD($_BIT_ID,$s);
			//
		}
		T_P_ACT($IDPro);
		//
		$s="DELETE FROM transformaciones WHERE id_transformacion=$StrId";	
		ejt($s);
		//
		BIT_DET_ADD($_BIT_ID,$s);
		//
		if($LStrMM=="S")	$LStrMsg="Registro Eliminado";
		$LStrFoc="document.getElementById('TxtFec').focus();";
		$StrGT="S";
		$StrCmd="L";
	}
}
//-------------------------------------------------------------------
if($StrCmd=="L"){		
	$StrCod="";
	$StrDes="";
	$StrFec=date("d-m-y");
	$StrCan="";
	$StrDe1="";
	$StrUXC="";
	$StrACI="";
	$StrDe2="";
	$StrId="";
}
//-------------------------------------------------------------------
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;\"";
}
?>