Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/03/2013, 07:18
Sandiuga
 
Fecha de Ingreso: febrero-2013
Mensajes: 21
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Ingresar Maximo registros segun campo

Gracias por responder voy a tratar de hacer una funcion en el oracle developer
que haga la comparacion y despues llamarla desde php
bueno de funciones no se mucho y tampoco llamar procesos desde oracle

de momento solo tengo el insert
bueno gracias seguire probando ,saludos...

Código PHP:
<?php include("php_conn.php");
     
$estado "Abierta";//INGRESO POR DEFECTO CARATULA ABIERTA

echo $strSQL "INSERT INTO CARATULAS (id_solicitud, id_nomina, fecha_creacion,fecha_apertura, usuario, 
           dine_apertura, estado, conductor, empresa)                    
              values ('"
.$_POST["n_solicitud"]."',        
            '"
.$_POST["n_nomina"]."',
            TO_DATE('"
.$_POST["f_rendicion"]."','dd-mm-yyyy'),
            TO_DATE('"
.$_POST["f_apertura"]."','dd-mm-yyyy'),            
            '"
.$_POST["usuario"]."',
            '"
.$_POST["p_apertura"]."',      
            '"
.$estado."',//INGRESO POR DEFECTO              
            '"
.$_POST['conductor']."',
            '"
.$_POST["empresa"]."')";
    
$objParse oci_parse($objConnect$strSQL);
    
$objExecute oci_execute($objParseOCI_DEFAULT);
    
    if(
$objExecute)
    {
        
oci_commit($objConnect); //*** Commit Transaction ***//
        
echo "<br><br><br><div align='center' style='color:#FFF; font-family:Arial, Helvetica, sans-serif' ><b>Caratula Creada exitosamente.</b></div>";
        
$tabla true;
    }
    else
    {
        
oci_rollback($objConnect); //*** RollBack Transaction ***//
        
$e oci_error($objParse); 
        echo 
"<br><br><br><div align='center' style='color:#FFF; font-family:Arial, Helvetica, sans-serif' ><b>Error al Crear Caratula: [".$e['message']."]</b></div>";
        
$tabla false;
    }
    
oci_close($objConnect);
    
    if(
$tabla)
    {        
        
    }
    
 }
    
?>



EDITADO::

encontre una funcion que estoy editando
y lo que debe hacer es retorna 1 manda un mensaje de que tiene el límite de caratulas abiertas.
al crearla no me dio problemas pero aparece con errores :

funcion:
Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION caratulas_op (Parametro_id_conductor NUMBER) RETURN NUMBER IS
  2. Var_cantidad NUMBER
  3. BEGIN
  4.  
  5.     SELECT COUNT(*)
  6.     INTO Var_cantidad
  7.     FROM  caratulas
  8.     WHERE conductor = Parametro_id_conductor
  9.     AND estado = 'ABIERTA'
  10.     IF Var_cantidad  > 3 THEN
  11.         RETURN 1;
  12.     ELSE
  13.         RETURN 0;
  14.     END IF;
  15. exception WHEN others THEN
  16.     RETURN 1;
  17. END


captura de los errores:


Última edición por Sandiuga; 01/03/2013 a las 08:12