none
Filtrar propiedad Value de DateTimePicker1 y obtener solo mes y año para where en sql server

    Pregunta

  •  Hola buenos dìas, Tengo un DateTimePicker1.value, que como pueden ver en la imagen muestra el mes y año actual, pero en la propiedad value muestra fecha y hora completa, mi primera pregunta es como formateo la propiedad value del DateTimePicker1 para que solo tome el mes y el año  01/2017 y luego con esa cadena tener mi filtro para el where.

    espero me puedan orientar gracias.


    viernes, 20 de enero de 2017 15:26

Respuestas

  • Vladimir Angarita,

    Debes escribir la misma cadena con formato que especificaste para la presentación:

    Dim FormatoFecha As String = dtpMes.Value.ToString("MM/yyyy")
    'Resultado: 01/2017


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    viernes, 20 de enero de 2017 16:07
  • Complementando un poco (conjuntando la respuesta de Williams)

            Dim fecha_s, FormatoFecha   As String
            Dim fecha_a As DateTime
            fecha_a = calendario1.SelectedDate
            FormatoFecha = fecha_a.ToString("MM/yyyy")
            fecha_s = fecha_a.ToString("yyyyMMdd")  'formato ANSI


    Ahora FormatoFecha  es una cadena con el mes / año, el mes a 2 dígitos y el año a 4 según anoto Williams

    Dentro de la consulta:

    ... Where mes = Month(fecha_s) and año = year(fecha_s)

    suponiendo que "mes" y "año" son los campos que tienen los valores a consultar

    Si para la clausula WHERE te resulta correcto marca la respuesta como correcta

    Saludos

    sábado, 21 de enero de 2017 1:31
  • La funcionalidad del DateTimePicker es editar fechas con hora, independientemente el formato o mascara que se utilice para dar salida por pantalla este siempre almacenara fecha completa incluyendo la hora de cuando le asignaste el valor a la propiedad VALUE.

    luego de esto, para la consulta a la base de datos solo deberías de tomar la parte "Month" y la Parte "Year" de la fecha y dependiendo como tengas almacenado tal valor en la tabla deberas hacer el where.

    DATEPART() con respecto a SQL o utilizar CONVERT() según las conversiones en la documentacion del SQL Server.

    así que dependerá de lo que quieres hacer ya que tu pregunta es muy limitada.

    luego de esto, si la idea es que el DateTimePicker solo te muestre el Mes y el año tendras que personalizarlo ya que la finalidad de este no es tal. yme refiero al calendario desplegado

    a la espera de tus comentarios.

    Salu2,


    Marvin E. Pineda

      ComboBoxMultiColumns

     NetBarControl

      TextEditor



    sábado, 21 de enero de 2017 1:24
    Moderador

Todas las respuestas

  • Vladimir Angarita,

    Debes escribir la misma cadena con formato que especificaste para la presentación:

    Dim FormatoFecha As String = dtpMes.Value.ToString("MM/yyyy")
    'Resultado: 01/2017


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    viernes, 20 de enero de 2017 16:07
  • La funcionalidad del DateTimePicker es editar fechas con hora, independientemente el formato o mascara que se utilice para dar salida por pantalla este siempre almacenara fecha completa incluyendo la hora de cuando le asignaste el valor a la propiedad VALUE.

    luego de esto, para la consulta a la base de datos solo deberías de tomar la parte "Month" y la Parte "Year" de la fecha y dependiendo como tengas almacenado tal valor en la tabla deberas hacer el where.

    DATEPART() con respecto a SQL o utilizar CONVERT() según las conversiones en la documentacion del SQL Server.

    así que dependerá de lo que quieres hacer ya que tu pregunta es muy limitada.

    luego de esto, si la idea es que el DateTimePicker solo te muestre el Mes y el año tendras que personalizarlo ya que la finalidad de este no es tal. yme refiero al calendario desplegado

    a la espera de tus comentarios.

    Salu2,


    Marvin E. Pineda

      ComboBoxMultiColumns

     NetBarControl

      TextEditor



    sábado, 21 de enero de 2017 1:24
    Moderador
  • Complementando un poco (conjuntando la respuesta de Williams)

            Dim fecha_s, FormatoFecha   As String
            Dim fecha_a As DateTime
            fecha_a = calendario1.SelectedDate
            FormatoFecha = fecha_a.ToString("MM/yyyy")
            fecha_s = fecha_a.ToString("yyyyMMdd")  'formato ANSI


    Ahora FormatoFecha  es una cadena con el mes / año, el mes a 2 dígitos y el año a 4 según anoto Williams

    Dentro de la consulta:

    ... Where mes = Month(fecha_s) and año = year(fecha_s)

    suponiendo que "mes" y "año" son los campos que tienen los valores a consultar

    Si para la clausula WHERE te resulta correcto marca la respuesta como correcta

    Saludos

    sábado, 21 de enero de 2017 1:31