Foros del Web » Programación para mayores de 30 ;) » .NET »

controlar que no se ingrese información repetida

Estas en el tema de controlar que no se ingrese información repetida en el foro de .NET en Foros del Web. hola como puedo hacer para que un usuario no ingrese información repetida estoy almacenando facturas y no se debe ingresar el mismo código de la ...
  #1 (permalink)  
Antiguo 25/03/2008, 11:02
 
Fecha de Ingreso: enero-2006
Mensajes: 88
Antigüedad: 18 años, 3 meses
Puntos: 0
controlar que no se ingrese información repetida

hola como puedo hacer para que un usuario no ingrese información repetida estoy almacenando facturas y no se debe ingresar el mismo código de la factura como puedo hacer de antemano gracias estoy programando en c sharp
  #2 (permalink)  
Antiguo 25/03/2008, 14:13
Avatar de jlbautista  
Fecha de Ingreso: enero-2007
Ubicación: Durango, Méx.
Mensajes: 175
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: controlar que no se ingrese información repetida

Puedes explicarnos, por favor, q usas para capturar la info de parte del usuario?

Gracias y seguimos en contacto.
  #3 (permalink)  
Antiguo 25/03/2008, 14:22
 
Fecha de Ingreso: enero-2006
Mensajes: 88
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: controlar que no se ingrese información repetida

Gracias por responder es un formulario de orden de compra,el usuario ingresa en una grilla el número de factura y la fecha,lo que quiero hacer es que el usuario no pueda ingresar el número de factura repetido.

#de factura fecha
1 17/02/2008
1 18/02/2008
  #4 (permalink)  
Antiguo 25/03/2008, 15:03
Avatar de jlbautista  
Fecha de Ingreso: enero-2007
Ubicación: Durango, Méx.
Mensajes: 175
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: controlar que no se ingrese información repetida

Intenta con esto, solo faltaría algo de adecuación a tú código
Código:
Private Sub DataGridView1_UserAddedRow(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewRowEventArgs) Handles DataGridView1.UserAddedRow
        Try
            If DataGridView1.Item(1, DataGridView1.CurrentRow.Index).EditedFormattedValue = DataGridView1.Item(1, DataGridView1.CurrentRow.Index - 1).Value Then
                MessageBox.Show("Error")
            End If
        Catch ex As Exception

        End Try
End Sub
Lo coloreado en Rojo indica el INDICE de la columna donde se encuentra el valor de tu factura, q me imagino será la columna(0).
Lo de AZUL indica el INDICE del Renglón q estás editando - 1, esto funcionaría si checas solo contra el renglón anterior. De tener q checar todos los valores introducidos anteriormente, sería cosa de implementar algún FOR EACH o alguna otra Estructura de Control Cíclica.

Espero te sirva

Última edición por jlbautista; 25/03/2008 a las 15:09 Razón: Indicación sobre el Indice de la Columna...
  #5 (permalink)  
Antiguo 25/03/2008, 16:01
Avatar de jlbautista  
Fecha de Ingreso: enero-2007
Ubicación: Durango, Méx.
Mensajes: 175
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: controlar que no se ingrese información repetida

Corregido y Aumentado

Código:
Private Sub DataGridView1_UserAddedRow(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewRowEventArgs) Handles DataGridView1.UserAddedRow
        Try
            For i As Integer = 0 To DataGridView1.Rows.Count
                If DataGridView1.Item(1, DataGridView1.CurrentRow.Index).EditedFormattedValue = DataGridView1.Item(1, i).Value Then
                    DataGridView1.CancelEdit()
                End If
            Next
        Catch ex As Exception

        End Try
    End Sub
Dale gracias al Ocio q tengo
Mismas indicaciones de arriba, en cuanto al color ROJO

Espero te sirva
  #6 (permalink)  
Antiguo 26/03/2008, 11:13
 
Fecha de Ingreso: enero-2006
Mensajes: 88
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: controlar que no se ingrese información repetida

Gracias jlbautista me ayudo mucho tu código
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

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 14:40.