Título: Validaciones Publicado por: piwi en 5 Julio 2010, 20:58 pm Hola.
Cual es la manera correcta de valida los datos de un datagridview enlazado a un origen de datos? Cuando tenemos un PK de una tabla, como controlo que no tenga un nulo? Con CellValidating parece que funciona hasta que cambio de registro y me intenta guardar los cambios pasandose por el forro e.cancel Como puedo interrumpir el evento BindingNavigatorSaveItem? Me estoy volviendo loco y no soy capaz de valida los datos introducidos por el usuario en un datagridview. Un saludo. Título: Re: Validaciones Publicado por: [D4N93R] en 6 Julio 2010, 05:11 am Cual es la manera correcta de valida los datos de un datagridview enlazado a un origen de datos?
Que tipo de validaciones? Cuando tenemos un PK de una tabla, como controlo que no tenga un nulo? En la base de datos lo pones primary key y not null Con CellValidating parece que funciona hasta que cambio de registro y me intenta guardar los cambios pasandose por el forro e.cancel Tendría que ver el código. Como puedo interrumpir el evento BindingNavigatorSaveItem? Me estoy volviendo loco y no soy capaz de valida los datos introducidos por el usuario en un datagridview. Google? http://msdn.microsoft.com/en-us/library/7ehy30d4(VS.80).aspx (http://msdn.microsoft.com/en-us/library/7ehy30d4(VS.80).aspx) http://msdn.microsoft.com/en-us/library/ykdxa0bc.aspx (http://msdn.microsoft.com/en-us/library/ykdxa0bc.aspx) Título: Re: Validaciones Publicado por: piwi en 6 Julio 2010, 07:32 am Cual es la manera correcta de valida los datos de un datagridview enlazado a un origen de datos? Que tipo de validaciones? Me refiero a una tabla con un campo código (PK) y una descripción. Creo el origen de datos y lo arrastro al formulario. En que evento o eventos tengo que realizar la validación que antes de guardar el campo código tenga un valor y que este no esté repetido? Cuando tenemos un PK de una tabla, como controlo que no tenga un nulo? En la base de datos lo pones primary key y not null Eso ya lo tengo y por eso me da error si el usuario solamente introduce la descripción y le da al grabar. Me refiero desde vb. Con CellValidating parece que funciona hasta que cambio de registro y me intenta guardar los cambios pasandose por el forro e.cancel Tendría que ver el código. El cellvalidating cuando utilizo e e.cancel = true no me dejar salir de la celda que se está validando pero me deja cambiar del registro con el ratón. Como puedo hacer para que no salga de la celda de ninguna manera hasta que los datos estén validados? Como puedo interrumpir el evento BindingNavigatorSaveItem? Me estoy volviendo loco y no soy capaz de valida los datos introducidos por el usuario en un datagridview. Google? http://msdn.microsoft.com/en-us/library/7ehy30d4(VS.80).aspx (http://msdn.microsoft.com/en-us/library/7ehy30d4(VS.80).aspx) http://msdn.microsoft.com/en-us/library/ykdxa0bc.aspx (http://msdn.microsoft.com/en-us/library/ykdxa0bc.aspx) Ahora miro los link pero por más que busco en google, no encuentro un código que funcione al 100% y haciendo pruebas siempre acabo con el mensaje de que la clave no puede ser nula. Título: Re: Validaciones Publicado por: piwi en 6 Julio 2010, 07:38 am Ya he visto estos link y todo esto está bien mientras que no utilice el ratón, me controla bien no salir del campo pero en el momento que utilizo el ratón me permite dejar el regisro con la celda sin valida y entonces cuando doy a grabar da el error
Título: Re: Validaciones Publicado por: [D4N93R] en 6 Julio 2010, 16:18 pm Y en la base de datos, esas celdas permiten NULL?
Título: Re: Validaciones Publicado por: piwi en 6 Julio 2010, 23:41 pm Hola.
soy muy malo explicándome. Voy a poner un ejemplo muy simple. Tenemos una tabla con dos campos ID (este campo seria clave primaria por lo tanto no permite nulos ) y DESCRIPCION (un campo que permite nulos) Creo un origen de datos y lo arrastro al form por lo que me crea un datagridview en el formulario. Lo que tengo que hacer es no permitir grabar si el campo ID es nulo. Pensé que con el evento cellvalidation lo podía controlar utilizando el e.cancel pero solamente me funciona cuando doy a la tabulación y no me permite cambiar de celda pero cuando utilizo el rato y cambio de fila me lo permite y me situo en otra fila donde el cellvalidation lo hace en esta que todo está bien pero cuando doy a guardar me falla el registro donde falta ID que lo he dejado a nulo en el datagridview. Lo que quiero saber que eventos debo utilizar para validar datos. Además del evento cellvalidation, tengo que codficar algun otro? Un saludo Título: Re: Validaciones Publicado por: 43H4FH44H45H4CH49H56H45H en 7 Julio 2010, 00:03 am El ID debe crearse en la BD (autoincremento y demas), no debes hacerlo en tu aplicacion.
Título: Re: Validaciones Publicado por: Shell Root en 7 Julio 2010, 00:19 am Bueno, no leí todo el post así que puedo estar equivocado. Pero lo que dice 43H4FH44H45H4CH49H56H45H <Fucking se registro estando beodo?>. Tal vez, puede hacerse así, pero en ocasiones se pierde algunos ID's, por eso siempre prefiero <Dependiendo del tiempo para la terminación de la aplicación y de la complejidad de ella> generar esos ID's dentro de mi aplicación. Así podré buscar e intentar ocupar los ID's que no están siendo usados por alguna u otra razón.
Título: Re: Validaciones Publicado por: 43H4FH44H45H4CH49H56H45H en 7 Julio 2010, 00:53 am Para aplicaciones pequeñas no creo que haya problema hacerlo de un modo u otro, pero si tenemos una BD con bastantes registros?
generar esos ID's dentro de mi aplicación. Así podré buscar e intentar ocupar los ID's que no están siendo usados por alguna u otra razón. Que la aplicación busque un Id disponible en una cantidad grande de registros ya es otra cosa... Título: Re: Validaciones Publicado por: [D4N93R] en 7 Julio 2010, 04:33 am Para aplicaciones pequeñas no creo que haya problema hacerlo de un modo u otro, pero si tenemos una BD con bastantes registros? generar esos ID's dentro de mi aplicación. Así podré buscar e intentar ocupar los ID's que no están siendo usados por alguna u otra razón. Que la aplicación busque un Id disponible en una cantidad grande de registros ya es otra cosa... Exacto, es diferente, para la creación de registros, ponle Identity 1,1, es decir, que comience del 1 y que vaya de 1 a 1, o a tu preferencia. Nunca crees los ID en la aplicación, a menos de que el modelo de negocios lo requiera. saludos Título: Re: Validaciones Publicado por: piwi en 7 Julio 2010, 07:08 am Gracias por las respuestas.
Pero al final hay alguna manera de no permitir al usuario abandonar una celda en caso que no cumpla la condición como por ejemplo un campo que tenga que rellenarlo? Título: Re: Validaciones Publicado por: 43H4FH44H45H4CH49H56H45H en 7 Julio 2010, 15:30 pm Bueno este modo es "cutre", pero puedes mejorarlo:
Código
Tienes que cambiar los valores de Rows a medida que se hacen las validaciones, lo que hace es tratar de llenar un string con el valor de la 1era fila y celda cuando se hace click en alguna celda que no sea la 1era, si este esta vacio muestra el mensaje. Seguro hay otro modo mejor, pero puedes probarlo. Título: Re: Validaciones Publicado por: [D4N93R] en 7 Julio 2010, 15:37 pm En realidad nunca me gustó que el usuario llene data en el Grid View. Ahora, ya todas las dudas se cubrieron menos la parte de la validación no?
Pregunto ahora, qué evento estás usando para validar los datos? EDIT: Pilla este enlace a ver si te sirve de algo: http://csharplifestyle.blogspot.com/2009/06/validar-celdas-de-un-datagridview.html (http://csharplifestyle.blogspot.com/2009/06/validar-celdas-de-un-datagridview.html) Título: Re: Validaciones Publicado por: piwi en 7 Julio 2010, 16:18 pm Los eventos que estoy utilizando para validar los datos son cellvalidating con el e.cances y dataerror también con su e.cancel correspondiente.
A mi me gusta tambén más utilizar en vez de datagrid, campos simples o como se diga (en origen de datos poner modo detalle) pero tengo problemas con un campo que le he dicho que es de tipo combobox. Ahora estoy intentando averigual como puedo insertar el código (un numerico) pero quiero hacerlo yo y no que sea autoincremental. Con el problema con el que me encuentro que no soy capaz de capturar la linea insertada ya que el evento se lanza antes de insertar la línea y es donde lo capturo por lo que siempre me devuelve row 0 Título: Re: Validaciones Publicado por: [D4N93R] en 7 Julio 2010, 16:30 pm Los eventos que estoy utilizando para validar los datos son cellvalidating con el e.cances y dataerror también con su e.cancel correspondiente. Bueno con los enlaces que te pasé debes solucionar el problema. Sino postea el código de la validación.Ahora estoy intentando averigual como puedo insertar el código (un numerico) pero quiero hacerlo yo y no que sea autoincremental. Simplemente lo pones, y ya, Que no sea Identity en la Base de Datos y lo metes en la consulta del insert.Con el problema con el que me encuentro que no soy capaz de capturar la linea insertada ya que el evento se lanza antes de insertar la línea y es donde lo capturo por lo que siempre me devuelve row 0 A ver, que no entendí bien, estás intentando guardar en el evento de cellvalidating? Puedes intentar guardar en el evento RowLeave o mucho mejor en el RowValidated despues de pasar por un RowValidating.Título: Re: Validaciones Publicado por: piwi en 7 Julio 2010, 21:28 pm En el momento de dar al nuevo registro en bindingdourcenavigation, quiero meter en la celda un valor pero no se en que evento lo tengo que hacer porque no se seleccionar bien la nueva fila del datagridview
Título: Re: Validaciones Publicado por: piwi en 8 Julio 2010, 08:24 am Hola
Estoy haciendo pruebas de lo más sencillo y no encuentro la solución. Estoy intentando mantener una tabla con dos campos: idfabricante clave primaria no nula d_fabricante Para ello he creado un origne de datos de esta tabla y lo he arrastrado al formulario. He codificado los siguientes eventos: En este evento he añadido a mayores el chequeo del validate por si no pasa la validación que no siga con los cambios. Private Sub FABRICANTEBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FABRICANTEBindingNavigatorSaveItem.Click Dim li_retorno As Integer li_retorno = Me.Validate() If li_retorno = -1 Then Me.FABRICANTEBindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.FabricanteDataSet) End If End Sub Esto ha sido creado por vb al arrastrar el origen de datos. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: esta línea de código carga datos en la tabla 'FabricanteDataSet.FABRICANTE' Puede moverla o quitarla según sea necesario. Me.FABRICANTETableAdapter.Fill(Me.FabricanteDataSet.FABRICANTE) End Sub Aquí compruebo si idfabricante está nulo Private Sub FABRICANTEDataGridView_CellValidating(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellValidatingEventArgs) Handles FABRICANTEDataGridView.CellValidating If FABRICANTEDataGridView.Columns(e.ColumnIndex).Name = "DataGridViewTextBoxColumn1" Then If e.FormattedValue IsNot Nothing AndAlso _ String.IsNullOrEmpty(e.FormattedValue.ToString()) Then e.Cancel = True Else e.Cancel = False End If End If End Sub En este he metido un mensaje de aviso por si dan a guardar o al nuevo en bindingnavigator Private Sub FABRICANTEDataGridView_DataError(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs) Handles FABRICANTEDataGridView.DataError MsgBox(e.Exception.Message) e.Cancel = True End Sub Validación de la fila Private Sub FABRICANTEDataGridView_RowValidating(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles FABRICANTEDataGridView.RowValidating If FABRICANTEDataGridView(0, e.RowIndex).Value Is DBNull.Value Then MsgBox("Error") e.Cancel = True Else e.Cancel = False End If End Sub Los dos siguientes son de prueba pero me da error de nulo por lo que creo que no me inserta el valor Private Sub FABRICANTEDataGridView_RowLeave(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles FABRICANTEDataGridView.RowLeave If FABRICANTEDataGridView(0, e.RowIndex).Value Is DBNull.Value Then FABRICANTEDataGridView(0, e.RowIndex).Value = UltimoCodigo() End If End Sub Private Sub FABRICANTEDataGridView_RowValidated(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles FABRICANTEDataGridView.RowValidated If String.IsNullOrEmpty(FABRICANTEDataGridView(0, e.RowIndex).Value) Then FABRICANTEDataGridView(0, e.RowIndex).Value = UltimoCodigo() End If End Sub Función que me retorna el último id Private Function UltimoCodigo() As Integer Dim Conexion As New SqlConnection("Data Source=192.168.1.100;Initial Catalog=PRUEBAS;user id = piwi; password =piwi;") Dim Datos As New DataSet Dim li_ultimo As Integer Conexion.Open() Dim Adaptador As New SqlDataAdapter("SELECT MAX(IDFABRICANTE) FROM FABRICANTE", Conexion) Adaptador.Fill(Datos) li_ultimo = Datos.Tables(0).Rows(0).Item(0) li_ultimo = li_ultimo + 1 Conexion.Close() Return li_ultimo End Function Con esto no me funciona, donde tengo que asignar el valor al idfabricante para que lo tenga antes de que cambie de fila o que de al boton guardar? Título: Re: Validaciones Publicado por: [D4N93R] en 8 Julio 2010, 15:20 pm Hola,
Primero, en el evento DataError, no se por qué estás haciendo e.Cancel = True. Eso no lo deberías hacer, ese evento es para controlar luego de que se produce un error. El Id del fabricante tienes que hacerlo al darle guardar, SIEMPRE, porque imagínate que lo pones al seleccionar la fila, por ejemplo; y te sale el ID 10001 y en otro equipo alguien abre la aplicación y y selecciona otra fila, le aparece el ID 10001, entonces lo que pasa es que al guardar se va a producir un error. Por lo que es mejor SIEMPRE que crees el ID en la base de datos :) EDIT, utiliza las etiquetas Geshi para postear código. Título: Re: Validaciones Publicado por: piwi en 8 Julio 2010, 17:33 pm Probare lo que me dices. En el evento de borrar quiero poner el mensaje si esta seguro pero no soy capaz de parar el borrado ya que el return no funciona y sigue hacia delante.
Lo de calcular el id por la base de datos se hace desde vb? No quiero utilizar los autonumericos Título: Re: Validaciones Publicado por: [D4N93R] en 8 Julio 2010, 17:45 pm ¿Cuál es el problema de usar autonuméricos?
Ah ok, lo de si está seguro o no, tiene que ser ANTES de comenzar el borrado :P Título: Re: Validaciones Publicado por: piwi en 8 Julio 2010, 18:00 pm Hay un evento de preborrado?
Por los autonumericos simplemente me gusta tener control calculandolos Título: Re: Validaciones Publicado por: [D4N93R] en 8 Julio 2010, 18:37 pm Más bien pierdes control, Que ganas teniendo "control" sobre el ID? nada..
Citar Hay un evento de preborrado? Se llama boton de borrar :P Ahi haces la validación xDTítulo: Re: Validaciones Publicado por: piwi en 9 Julio 2010, 07:21 am En mi caso necesito dar un id por tipo que es otro campo por lo que la clave sería id m
Más bien pierdes control, Que ganas teniendo "control" sobre el ID? nada.. En mi caso la clave la forman dos campos, un id y un tipo por lo que tengo que calcular el id dependiendo del tipo. Citar Hay un evento de preborrado? Se llama boton de borrar :P Ahi haces la validación xDEl botón que utilizo es BindingNavigatorDeleteItem_Click pero ahí ya no puedo hacer nada. Me extraña que no puedan insertar una validación cuando utilizar un bindingnavigator. Quizá hay que sobreescribir el evento y en caso que digan que quieren borrar entonces llamarlo. Título: Re: Validaciones Publicado por: piwi en 9 Julio 2010, 07:24 am Creo que con esto ya he conseguido realizar un modelo para un mantenimiento de una tabla. También tengo contemplado preguntar si se quiere borrar un registro por si alguien no sabe como hacerlo. Quizá todos los sabeís pero por si acaso aquí está.
Si alguien ve algo que no está correcto se lo agradecería Código
Título: Re: Validaciones Publicado por: [D4N93R] en 9 Julio 2010, 15:11 pm Buenísimo, que bueno que resolviste el problema, saludos!
Título: Re: Validaciones Publicado por: piwi en 10 Julio 2010, 14:26 pm Ahora me encuentro con otro problema. Tengo dos combobox dentro del datagrid enlazados a datos. Como hago para filtrar el contenido del segundo dependiendo de lo que me seleccionen en el primero?
Un saludo. Título: Re: Validaciones Publicado por: [D4N93R] en 10 Julio 2010, 15:45 pm Una pregunta para poder contestarte, estás queriendo filtrar los resultados con el Combo Box?
Título: Re: Validaciones Publicado por: piwi en 10 Julio 2010, 16:13 pm Si, tengo un combo con fabricantes y otro con productos al seleccionar un fabricante, solamente mostrar los productos de este.
Fabricantes: idfabricante, fabricante Productos idproducto(pk), idfabricante, producto Título: Re: Validaciones Publicado por: [D4N93R] en 10 Julio 2010, 18:02 pm Suscríbete al evento TextChanged o SelectedItemChanged del ComboBox y en ese método setteas
la propiedad Filter del bindingSource apropiadamente. EDIT: Ok, es fácil, xD tiempo sin usarlo!! Simplemente en el bindingSource, espero que estés usando uno, en el TextChange o en el SelectedItemChanged modifica la propiedad Filter con el filtro apropiado, como: Código
Espero te sirva! Saludos! Título: Re: Validaciones Publicado por: piwi en 12 Julio 2010, 12:18 pm Gracias. Ya me filtra. El problema que tengo es cuando cambio el primer combo, como asigno un nulo al segundo para que se borre la selección anterior?
Título: Re: Validaciones Publicado por: [D4N93R] en 12 Julio 2010, 17:58 pm No entendí la pregunta ;D
Título: Re: Validaciones Publicado por: piwi en 12 Julio 2010, 18:13 pm En el datagridview tengo dos campos de tipo combobox, uno es fabricante y otro producto. En el momento que selecciono el fabricante, me filtra los productos de este.
Lo que quiero es dejar el producto a nulo después de seleccionar el fabricante para así en caso que seleccione otro fabricante, no me quede el producto del anterior fabricante. Un saludo. Título: Re: Validaciones Publicado por: [D4N93R] en 12 Julio 2010, 21:40 pm Pero ya vaaa, tu quieres filtrar con los combobox que estan Dentro del Datagrid? Puedes postear un Screenshot de tu formulario por favor.
Título: Re: Validaciones Publicado por: piwi en 20 Julio 2010, 07:23 am Perdón por la tardanza pero he estado un poco liado con otros temas.
Aquí pongo la captura. (http://s2.subirimagenes.com/otros/previo/thump_4822886captura.jpg) Basicamente lo que tengo son tres origenes de datos, uno licencias que es el que está en el formulario y otros tres que son producto, cliente y local que serán lo que utilizaré en los combobox como muestro en el ejemplo. El problema lo tengo que si doy a un registro nuevo y en un combobox selecciono un valor, no me deja pasar el foco a otro campo ni hacer nada, como si se bloqueara, solamente seleccionar otro valor del combo. Como hay que utilizar un combobox que me muestre el nombre del cliente y que contenga la idcliente y lo guarde en licencias? Gracias por todo. Título: Re: Validaciones Publicado por: seba123neo en 20 Julio 2010, 07:44 am la verdad no se como lo estas haciendo, no lei todo el topic, pero para cargar un combo lo podes hacer de varias formas, yo no opto por usar los bindingnavigator o como se llamen y enlazar los controles con sus datasources, prefiero escribir codigo y hacerlo todo en clases, si es posible en 3 capas, sino te lias con los origenes de datos, me acuerdo en visual basic 6 con los controles DATA y ADOC se hacia asi :xD, pero eso es prehistoria ya, pero bueno cada uno lo hace como puede o como le enseñaron.
yo para cargar un combo directamente tengo un metodo que me devuelve un datareader y con eso lo recorro y asigno los valores, es lo unico que te puedo decir ya que no uso esa forma. saludos. Título: Re: Validaciones Publicado por: piwi en 20 Julio 2010, 08:18 am Hola seba123neo
El problema que estoy aprendiendo a marchas forzadas. También lo he intentado de otra forma Código: Imports System.Data.SqlClient Me pasa lo mismo, en el momento que selecciono algo, se queda bloqueado y no me deja salir del combobox. Me podrias explicar o ponerme un codigo para ver la forma correcta de hacerlo? Gracias. Título: Re: Validaciones Publicado por: piwi en 22 Julio 2010, 12:36 pm Por si a alguien le puede ayudar, me respondo a mi mismo
Hay veces que al añadirlo de forma automática, la propiedad que pone como databinding es la propiedad "Text" cuando debería ser "SelectedValue". Para solucionarlo vamos a las propiedades y en la sección "DataBindings" quitamos el binding de la propiedad "Text" y lo ponemos en la propiedad "SelectedValue" Título: Re: Validaciones Publicado por: [D4N93R] en 22 Julio 2010, 14:58 pm Sigo sin entender, no era un DataGridView en donde tenías el problema? Ahora tienes es un formulario :-X No entiendou!!
Título: Re: Validaciones Publicado por: piwi en 22 Julio 2010, 17:04 pm Buenas.
Cuando empecé lo estaba haciendo en un datagrid y lo he conseguido pero me he encontrado con problema que eran varios campos y no me gusta dejar una barra de desplazamiento horizontal porque lo veo poco practico y lo he intentado hacer sin datagridview para que sea más comodo. De todos modos he dejado una captura de pantalla unos post más abajo donde se ve que lo hacía con campos sueltos. Título: Re: Validaciones Publicado por: piwi en 22 Julio 2010, 17:58 pm Cuando doy a nuevo en Bindingnavigator, en que evento puedo darle valor a una caja de texto?
Lo he probado en BindingNavigatorAddNewItem_Click pero este evento se produce justo al dar al boton nuevo así que me inserta el valor en la caja y después me inserta un registro nuevo. Yo lo que quiero es asignar el valor en el nuevo registro. Título: Re: Validaciones Publicado por: [D4N93R] en 22 Julio 2010, 18:32 pm Cual es el origen de datos de ese formulario?
Título: Re: Validaciones Publicado por: piwi en 22 Julio 2010, 18:49 pm No entiendo la pregunta >:( El origen es una tabla de la base de datos. Todo me funciona bien pero lo que quiero es que cuando de al boton nuevo, saber que evento se produce justo despues de insertar el nuevo registro para que cuando asigne un id a la caja de texto, esta sea del registro recien insertado.
Título: Re: Validaciones Publicado por: [D4N93R] en 22 Julio 2010, 19:20 pm "El origen es una tabla de la base de datos"
Ok, pero cuando guardas un registro en la base de datos, lo haces a mano, o utilizas un SqlDataSource? "Todo me funciona bien pero lo que quiero es que cuando de al boton nuevo, saber que evento se produce justo despues de insertar el nuevo registro" Después de insertarlo en la base de datos? o despuès de darle click a nuevo? "para que cuando asigne un id a la caja de texto, esta sea del registro recien insertado." Entonces el evento que quieres es después de darle click al botón nuevo, antes de darle a guardar? Título: Re: Validaciones Publicado por: piwi en 22 Julio 2010, 22:49 pm lo que he hecho es crear y arrastrar el origen de datos al formulario por lo que me ha creado todo automaticamente.
Por un lado la barra de navegacion en la parte superior y los campos sueltos enlazado al origen de datos. Donde codifico la asignación del valor para que al dar al boton nuevo (+ amarillo) pueda asignar un valor a un campo del nuevo registro' Imagina un origen de datos id_campo, campo. Estos dos los tengo en el formulario enlazados como he comentado arriba. Cuando doy al boton nuevo me crea un registro nuevo, donde tengo que codificar id_campo.text = contador? para que asigne la variable contador al id_campo del nuevo registro? Un saludol Título: Re: Validaciones Publicado por: [D4N93R] en 23 Julio 2010, 00:18 am Bueno, primero, hubieses solucionado todo esto si usaras Identity en el Primary Key, pero bueno, veamos, debe haber un objeto llamado ALGOBindingSource que tiene un evento al cual te tienes que subscribir: AddingNew y colocar algo así:
Código
Ahí lo que haces es reemplazar los nombres de los objetos por los de tu formulario, y en vez de poner "123", pones tu contador. Saludos Título: Re: Validaciones Publicado por: piwi en 23 Julio 2010, 07:53 am Gracias por la respuesta.
El evento que me comentas me hace lo mismo que el BindingNavigatorAddNewItem_Click, es decir, en este evento he puesto un mensaje y la asignación. Código: Private Sub LICENCIASBindingSource_AddingNew(ByVal sender As Object, ByVal e As System.ComponentModel.AddingNewEventArgs) Handles LICENCIASBindingSource.AddingNew Abro el formulario y me aparecen los campos. Por defecto estoy en el primer registro y cuando doy al nuevo, me pone 300 en el registro actual, me muestra el mensaje y luego me inserta registro nuevo por lo que idlicencia esta vacía. Yo lo que quiero es que primero inserte nuevo registro y en este que me inserte 300 en idlicenciatextbox. Estoy hasta los :-X Título: Re: Validaciones Publicado por: [D4N93R] en 23 Julio 2010, 15:11 pm Pero hazlo como yo te dije, usando el AddingNewEventArgs... No colocando valor a la caja de texto.
Título: Re: Validaciones Publicado por: piwi en 23 Julio 2010, 18:52 pm Me he perdido :huh:
Título: Re: Validaciones Publicado por: [D4N93R] en 23 Julio 2010, 18:57 pm Código
A ver si así está mejor. |