Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Problema al trabajar con fechas en función con parámetros dinámicos

Estas en el tema de Problema al trabajar con fechas en función con parámetros dinámicos en el foro de Oracle en Foros del Web. Buena Noche comunidad Estoy trabajando con Oracle 10g Express Edition necesito que alguien me ayude con la siguiente función que estoy tratando de desarrollar. La ...
  #1 (permalink)  
Antiguo 25/10/2012, 20:51
Avatar de carlosnrv  
Fecha de Ingreso: octubre-2012
Mensajes: 5
Antigüedad: 12 años
Puntos: 0
Pregunta Problema al trabajar con fechas en función con parámetros dinámicos

Buena Noche comunidad

Estoy trabajando con Oracle 10g Express Edition necesito que alguien me ayude con la siguiente función que estoy tratando de desarrollar.
La idea es crear una función que calcule la cantidad total del iva en servicios facturados entre un rago de fechas definido por el usuario.
el codigo que utilice es el siguiente:

Código MySQL:
Ver original
  1. create or replace FUNCTION fn_Obtener_iva(v_codigo number, fechaini date, fechafin date)
  2. RETURN NUMBER IS
  3. result NUMBER(5,2);
  4.       SELECT sum(iva) INTO result FROM factura WHERE id_paciente = v_codigo and          
  5.       fecha_factura between ('fechaini') and to_date('fechafin')+1;
  6.  return(result);
  7. EXCEPTION WHEN NO_DATA_FOUND THEN return 0;
  8. END ;

Al momento de ejecutar la función con los parametros requeridos por ejemplo:

select fn_Obtener_iva(1,'01/01/2010','25/10/2012') from dual;

me tira el siguiente error:

ORA-01858: se ha encontrado un carácter no numérico donde se esperaba uno numérico.

por lo que he podido ver es porque en la condición del select no acepta las variables fechaini y fachafin.

Les agradeceria su ayuda para resolver este inconveniente.

Gracias.

Última edición por gnzsoloyo; 26/10/2012 a las 03:33 Razón: Codigo sin etiquetar.
  #2 (permalink)  
Antiguo 26/10/2012, 00:31
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: Problema al trabajar con fechas en función con parámetros dinámicos

Esto está mal :
Código SQL:
Ver original
  1. fecha_factura BETWEEN ('fechaini') AND to_date('fechafin')+1;

Prueba esto y nos cuentas :
Código SQL:
Ver original
  1. fecha_factura BETWEEN trunc(fechaini) AND trunc(fechafin)+1

Última edición por gnzsoloyo; 27/10/2012 a las 09:58 Razón: Etiquetado
  #3 (permalink)  
Antiguo 26/10/2012, 14:52
Avatar de carlosnrv  
Fecha de Ingreso: octubre-2012
Mensajes: 5
Antigüedad: 12 años
Puntos: 0
Respuesta: Problema al trabajar con fechas en función con parámetros dinámicos

Funciono a la perfección, muchísimas gracias por la ayuda!

Etiquetas: condición, rangos, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:31.