![]() |
No se habilita un ClientDataSet al Limpiarlo
Hola Chicos como han estado?
Bueno aprovecho para ver si me ayudan en un comportamiento que tiene el componente ClientDataSet que no he logrado corregir: El usuario me ah comentado que mi tabla temporal trae registro que anteriormente a ingresado haciendo que dichos registros que no pertenece a ese nuevo registro estén dentro de una tabla que he denominado DETALLE_CPENDIENTE. bueno en fin pensando corregir este problema hice esto en el Evento OnCloseQuery del Formulario:
En teoria deberia me limpia pero en un evento que tengo en un dbgrid que me trae registros pendientes y quiero continuar dicho registro seleccionado me pasa que el ClientDataSet no hace nada está vacío.
No entiendo porque ese comportamiento Saludos Novato_erick |
Es que te falta punto y coma.
|
Hola Algonzales
Me falta punto y coma? |
Yo la verdad no entendi nada
En el codigo del evento OnCellClick lo que yo leo es lo siguiente: 1. Cierras un query 2. De ese query, asignas al parametro Id el valor del campo UserID_COMPRAPEN del ClientDataSet cdsComprasPendientes 3. Ejecutas un sql ??? no entiendo el porque del bloque try-finally 4. Abres el ClientDataSet a. No entiendo porque en 1 cierras el query. Como en 3 estas usando ExecSQL imagino que es una sentencia UPDATE o DELETE, en ese caso no necesitas cerrar el query. En realidad lo mas adecuado seria no usar un query, sino un command b. No entiendo porque abres el ClientDataSet. En que momento se cierra? --- Solo me queda adivinar, y es que como nunca cierras el ClientDataSet, entonces "no refresca". Yo agregaria un Close al ClientDataSet |
Hola AustinOrtu
El bloque try finally Cita:
Creo q a la final simplemente es controlar mi codigo. Saludos... |
Hola de nuevo erick
Se como funcionan los bloque try-finally. En este caso mi duda era el porque el empleo del mismo. Basicamente estas diciendo 1. Cerrar el DataSet 2. Asgino un parametro a un query Si en 1 o 2 ocurre una excepcion, el finally se ejecuta siempre. Realmente ese es el efecto deseado? Es decir, falla la asignacion del parametro, supongamos que el DataSet estaba cerrado. Pum, excepcion y se ejecuta el finally |
El dataset q contiene los ID_COMPRASPEN es un codigo q consulta todos los registros q tenga el usuario pendiente en el q al recorrerlo cada vez cierra y abre el dataset q me trae los detalles de esa consulta. Es efectivo cuando tengo mas de un registto pendiente mas no me refresca al tener solo un registro al ser ingresado recientemente como pendiente y solamente lo hace cuando cierro el programa totalmente.
Saludos |
Hola novato_erik.
No tomes esto como una crítica, nada mas alejado de mi intención, es sólo un consejo. Noto que del modo en que describes la situación no hemos podido entenderla, fijate si puedes replantearla de otro modo para así poder ayudarte. Saludos :) |
...Y, por favor, usando puntos, comas y todo lo indispensable para que sea posible entender lo que escribes. ¡Por el amor de Chuck Norris!
|
jajaja Chicos Disculpen la tardanza en contestar...
Cita:
Al González Cita:
al cerrar mi formulario de consulta de compras pendientes en su respectivo evento
En fin al cerrar los ClientDataSet o Desactivarlos al volver abrirlo simplemente los DBGRID asociados al datasource y clienteDataSet no mostraban nada así que hice esto:
y Listo ya me trae los datos recientes que me costaba pero sinceramente estoy en duda porque el DBGRID Pierde su propiedad Enable poniendolo en falso. De todas manera con esto ya corregí mi comportamiento extraño. Chicos Realmente aprecio mucho su colaboración a mejorarme con ustedes he aprendido y me falta mucho más que aprender Cualquier cosa si se dan alguna vez una vuelta por Panamá avisen para tomar algo juntos. Saludos novato_erick PD: en realidad voy a reducir más mi codigo porque al verlo me di cuenta que se puede hacer... |
La franja horaria es GMT +2. Ahora son las 10:12:26. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi