none
Como puedo determinar las fechas RRS feed

  • Pregunta

  • Hola chicos como estan espero que bien. le comento hace algunos meses estoy preparando un aplicacion de reserva de vehiculos para un rent a car o alquiler de vehiculo , pero al ingresar un vehiculo X al sistema  en una fecha  hasta otra fecha cuando sea ingresado, debe colocar como reservado, en caso que sea reserva y rentado en caso que lo fuese, ya me encontre este manera de hacer en SQL.

    select t1.fecha_fin, t1.fecha_fin, case when getdate() between t1.fecha_inic and t1.fecha_fin then 'Reservado' else 'Disponible' end as Reservas from reserva as t1 where t1.matricula = '" + v + "'")

    pero al correr una fecha no cambia a reservado o viceversa

    y en el programa le da el paso, como se podra hacer u indicio de como hacerlo  gracias, no necesariamente debe ser en SQL sino puede ser en C#

    Nos vemos

    Gracias


    Una respuesta JP



    • Editado jpgrover lunes, 22 de octubre de 2018 14:14
    lunes, 22 de octubre de 2018 14:10

Respuestas

  • si tienes la fechas de inicio y fin podrias calcular el valor en c#

    DateTime inicio = Convert.ToDateTime(reader["fecha_inic"]);
    DateTime fin = Convert.ToDateTime(reader["fecha_fin"]);
    
    DateTime actual = DateTime.Now;
    
    if(action >= inicio && actual <= fin){
    
       //reservado
    
    }
    
    //disponible

    ojo en el SELECT estas devolviendo al fecha de fin dos veces

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 22 de octubre de 2018 14:26
  • Hola buenas tardes, yo te recomendaría adicional mente y si tienes el tiempo, trabajar con procedimientos de almacenados tu sistema, porque trabajar las fechas hardcodeando el código de SQL y c# en la programación  genera muchos detalles en especial cuando trabajas consultas de fecha, ya que la configuración regional del PC local "en ocaciones" es distinta a la configuración regional del servidor, y comienza un eterno forsejeo con el tratamiento de las fechas, pero cuando envías los parámetros desde c# llamando un SP de SQl server, especificando bien el tipo de dato, casi nunca da error.
    lunes, 22 de octubre de 2018 18:21

Todas las respuestas

  • si tienes la fechas de inicio y fin podrias calcular el valor en c#

    DateTime inicio = Convert.ToDateTime(reader["fecha_inic"]);
    DateTime fin = Convert.ToDateTime(reader["fecha_fin"]);
    
    DateTime actual = DateTime.Now;
    
    if(action >= inicio && actual <= fin){
    
       //reservado
    
    }
    
    //disponible

    ojo en el SELECT estas devolviendo al fecha de fin dos veces

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 22 de octubre de 2018 14:26
  • Hola buenas tardes, yo te recomendaría adicional mente y si tienes el tiempo, trabajar con procedimientos de almacenados tu sistema, porque trabajar las fechas hardcodeando el código de SQL y c# en la programación  genera muchos detalles en especial cuando trabajas consultas de fecha, ya que la configuración regional del PC local "en ocaciones" es distinta a la configuración regional del servidor, y comienza un eterno forsejeo con el tratamiento de las fechas, pero cuando envías los parámetros desde c# llamando un SP de SQl server, especificando bien el tipo de dato, casi nunca da error.
    lunes, 22 de octubre de 2018 18:21