<?php
	//-------------------------
	$LIMPIAR=0;
	$StrId=V($_POST['TxtId']);
	$StrCmd=V($_POST['TxtAc']);
	//++++
	$StrEmp=V($_POST['CboEmp']);
	$StrAlm=V($_POST['CboAlm']);
	$StrFec=V($_POST['TxtFec']);
	$StrNum=V($_POST['TxtNum']);
	$StrCli=V($_POST['TxtCli']);
	$StrTot=vbval(V($_POST['TxtTot']));
	$StrAcu=vbval(V($_POST['TxtAcu']));
	$StrCob=vbval(V($_POST['TxtCob']));
	$StrMod=V($_POST['CboMod']);
	$StrSal=vbval(V($_POST['TxtSal']));
	//
	if(strlen($StrEmp)==0)$StrEmp=GE("N");
	//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="";
	}}}

	//FUNCION PARA ACTIVAR UN REGISTRO
	if(strlen($StrCmd)==0){
		$StrFec=date("d-m-y");
	}
	if(strlen($StrId)>0 && $StrCmd=="AR"){
		$Id=$StrId;
		$StrEmp=gs("EMPC","vis_contratos_ingresos","ID=$Id");
		$StrAlm=gs("ALM_NC","vis_contratos_ingresos","ID=$Id");
		$StrNro=gs("NUM","vis_contratos_ingresos","ID=$Id");
		$StrFec=gs("DATE_FORMAT(FEC,'%d-%m-%y')","vis_contratos_ingresos","ID=$Id");
		$StrNum=gs("CON_NRO","vis_contratos_ingresos","ID=$Id");
		$StrCli=gs("CLI","vis_contratos_ingresos","ID=$Id");
		$StrTot=NF(gn("CON_TOT","vis_contratos_ingresos","ID=$Id"),1);
		$StrAcu=NF(gn("ACU","vis_contratos_ingresos","ID=$Id"),1);
		$StrCob=NF(gn("TOT","vis_contratos_ingresos","ID=$Id"),1);
		$StrMod=gs("TIP","vis_contratos_ingresos","ID=$Id");
		$StrSal=NF(gn("SAL","vis_contratos_ingresos","ID=$Id"),1);		
		//		
		$LStrFoc="document.getElementById('CboEmp').focus();";		
		$StrGT="S";
	}
	//	
	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_");	
		$StrFec_=ToDate($StrFec);
		$StrCon_=gn("id_contrato","contratos",
					"con_numero='$StrNum' AND con_id_empresa=$StrEmp_");
		$StrCli_=gn("id_cliente","clientes","cli_nombre='$StrCli'");
		if($StrCon_==0){
			$LStrMsg="Numero de contrato no registrado";
			$LStrFoc="document.getElementById('TxtNum').focus();";		
			$StrGT="S";
		}
		if(strlen($StrGT)==0){
			if($StrCli_==0){
				$LStrMsg="Cliente no registrado";
				$LStrFoc="document.getElementById('TxtNum').focus();";		
				$StrGT="S";
			}
		}
	}
	//FUNCIONES DE ACTUALIZACION
	if($StrCmd=="G"){
		//++++
		$KOB_ANU="NO";
		$KOB_REG_FEC=date("Y-m-d");
		$KOB_REG_HOR=GetHoraAP();
		$KOB_REG_TIM=time();
		$KOD_ANU_FEC="1900-01-01";
		$KOB_ANU_HOR="";
		$KOB_ANU_TIM=0;
		$KOB_ANU_USU=0;
		//
		$Id=GenId("id_con_ing","contratos_ingresos");		
		$GII=GenGI();
		$StrNro=vbr("00000".$Id,5);
		$s="INSERT INTO contratos_ingresos VALUES ".
		   "($Id,$StrCon_,'$StrFec_','$StrNro',".
		   "$StrCob,'$StrMod',$GII,".GetIDU().",$StrAcu,$StrSal,'$KOB_ANU','".
		   $KOB_REG_FEC."','".$KOB_REG_HOR."',".$KOB_REG_TIM.",'".
		   $KOD_ANU_FEC."','".$KOB_ANU_HOR."',".$KOB_ANU_TIM.",".$KOB_ANU_USU.",$StrAlm_)";
		ejt($s);
		//BIT
		$_BIT_MOD_ID=$Id;
		$_BIT_SQL_CAB=$s;
		$_BIT_SQL_DET="";
		$_BIT_PHP="contratos_ingresos.php";
		$_BIT_ID=BIT_ADD("VENTAS","CONTRATOS - INGRESOS","GUARDAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,$s);
		//BIT	
		$qqq=ejt("UPDATE contratos 
			SET 
			con_acuenta=con_acuenta + $StrCob,
			con_saldo=con_saldo - $StrCob 
			WHERE id_contrato=$StrCon_");	
		BIT_DET_ADD($_BIT_ID,$qqq);	
		//				
		$LStrMsg="Datos registrados. El numero generado es : $StrNro";
		$LStrFoc="document.getElementById('CboEmp').focus();";		
		$StrGT="S";
		$LIMPIAR=1;
	}
	//
	if($StrCmd=="A"){
		if(vbval($StrId)==0){
			$LStrMsg="Ningun registro activo";
			$LStrFoc="document.getElementById('CboEmp').focus();";		
			$StrGT="S";
		}
		if(strlen($StrGT)==0){
			$StrCon_=gn("ci_id_contrato","contratos_ingresos","id_con_ing=$StrId");	
			$StrCob=gn("ci_total","contratos_ingresos","id_con_ing=$StrId");
			$StrAcu=gn("con_acuenta","contratos","id_contrato=$StrCon_");
			$StrUsa=gn("con_usado","contratos","id_contrato=$StrCon_");
			//
			if($StrUsa>($StrAcu - $StrCob)){
				$LStrMsg="No se puede anular, debido a que ".
				         "monto que se ha usado para pagar una venta/proforma";
				$LStrFoc="document.getElementById('CboEmp').focus();";
				$StrGT="S";
			}
			//
			if(strlen($StrGT)==0){
				$qqq=ejt("UPDATE contratos 
							SET 
							con_acuenta=con_acuenta - $StrCob,
							con_saldo=con_saldo + $StrCob 
							WHERE id_contrato=$StrCon_");
				//BIT
				$_BIT_MOD_ID=$StrId;
				$_BIT_SQL_CAB=$qqq;
				$_BIT_SQL_DET="";
				$_BIT_PHP="contratos_ingresos.php";
				$_BIT_ID=BIT_ADD("VENTAS","CONTRATOS - INGRESOS","ANULAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
				BIT_DET_ADD($_BIT_ID,$s);
				//BIT	
				$KOD_ANU_FEC=date("Y-m-d");
				$KOB_ANU_HOR=GetHoraAP();
				$KOB_ANU_TIM=time();
				$KOB_ANU_USU=GetIDU();
				//	
				$s="UPDATE contratos_ingresos 
					SET 
					ci_anu='SI',
					ci_anu_fec='$KOD_ANU_FEC',
					ci_anu_hor='$KOB_ANU_HOR',
					ci_anu_tim=$KOB_ANU_TIM,
					ci_anu_usu=$KOB_ANU_USU WHERE id_con_ing=$StrId";	
				ejt($s);
				BIT_DET_ADD($_BIT_ID,$s);
				//
				$LStrMsg="Registro Anulado";
				$LStrFoc="document.getElementById('CboEmp').focus();";
				$StrGT="S";
				$LIMPIAR=1;
			}
		}		
	}
	//
	if($StrCmd=="E"){
		if($POL_USU_PER_ELI==0){
			$LStrMsg="El usuario no tiene los permisos para esta accion";
			$LStrFoc="document.getElementById('TxtNum').focus();";		
			$StrGT="S";
		}
		//
		if(strlen($StrGT)==0){
			$E_ANU=gs("ci_anu","contratos_ingresos","id_con_ing=$StrId");	
			if($E_ANU=="SI"){
				$LStrMsg="El registro se encuentra anulado por lo tanto no se puede eliminar";
				$LStrFoc="document.getElementById('TxtNum').focus();";		
				$StrGT="S";
			}
		}
		//
		if(strlen($StrGT)==0){
			if(vbval($StrId)==0){
				$LStrMsg="Ningun registro activo";
				$LStrFoc="document.getElementById('CboEmp').focus();";		
				$StrGT="S";
			}
		}
		if(strlen($StrGT)==0){
			$StrCon_=gn("ci_id_contrato","contratos_ingresos","id_con_ing=$StrId");	
			$StrCob=gn("ci_total","contratos_ingresos","id_con_ing=$StrId");
			$StrAcu=gn("con_acuenta","contratos","id_contrato=$StrCon_");
			$StrUsa=gn("con_usado","contratos","id_contrato=$StrCon_");
			//
			if($StrUsa>($StrAcu - $StrCob)){
				$LStrMsg="No se puede eliminar, debido a que ".
				         "monto que se ha usado para pagar una venta/proforma";
				$LStrFoc="document.getElementById('CboEmp').focus();";
				$StrGT="S";
			}
			//
			if(strlen($StrGT)==0){
				ejt("UPDATE contratos 
					SET 
					con_acuenta=con_acuenta - $StrCob,
					con_saldo=con_saldo + $StrCob 
					WHERE id_contrato=$StrCon_");
				//BIT
				$_BIT_MOD_ID=$StrId;
				$_BIT_SQL_CAB=$qqq;
				$_BIT_SQL_DET="";
				$_BIT_PHP="contratos_ingresos.php";
				$_BIT_ID=BIT_ADD("VENTAS","CONTRATOS - INGRESOS","ELIMINAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
				BIT_DET_ADD($_BIT_ID,$s);
				//BIT	
				$s="DELETE FROM contratos_ingresos WHERE id_con_ing=$StrId";	
				ejt($s);
				BIT_DET_ADD($_BIT_ID,$s);
				//
				$LStrMsg="Registro Eliminado";
				$LStrFoc="document.getElementById('CboEmp').focus();";
				$StrGT="S";
				$LIMPIAR=1;
			}
		}
		//
	}
	//
	if($LIMPIAR==1){
		$StrId="";		
		$StrFec=date("d-m-y");		
		$StrNum="";
		$StrCli="";
		$StrTot="";
		$StrAcu="";
		$StrCob="";
		$StrMod="";
		$StrSal="";
		$StrNro="";
	}
	//
	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('CboEmp').focus();";
		$LStrMsg="onload=\"$LStrFoc;\"";
	}

?>