Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: Bases de Datos (https://gambas-es.org/forum-6.html) +--- Tema: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo (/thread-1389.html) |
Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - jackrobot - 04-06-2023 Hola espero estén todos bien no soy muy bueno programando . He retomado el tema por la necesidad de hacer un programa que me agende personas pero tengo un problema con la carga de datos un objeto nulo y no se que hacer, no se donde corregir. Alguien puede ayudarme y revisar el código de mi programa? se los agradecería, lo adjunto por cualquier cosa cualquier consejo sera muy agradecido. No logro entender que pasa, uso diferentes métodos para cargar datos y agregar usuarios pero no se que pasa... me desconcierta, no se que pasa... Gracias de antemano. RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - tincho - 05-06-2023 Hola. Mire un poco tu programa y te comento algunas cosas que vi que tal vez te sirvan. Si ejecutas algo como esto $myconetion.Exec("Select * from mytable") y se lo asignas aun result, puede suceder el caso que el result sea nulo (tu pregunta en el post) suele ser algo común cuando la table no tiene registros. Para solucionar esta situación puedes tomar varios caminos, un es que la base ya tengo al menos un registro (no es lo que recomiendo) otro método consiste en usar varios IF para ver si existe la conexión y si el result es distinto de null (esto ultimo ya lo haces). Para trabajar con una base de datos hay que establecer la conexion antes de nada, si te fijas en tu código intentas obtener un result de una conexión nula, eso no puede ser. Código: If $Conn Then Luego el método mr() yo lo haría así: Código: FMain.vlbid.value = $result["id"] Luego al guardar no sucede nada, el método esta comentado RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - Shordi - 05-06-2023 Bienvenido. Una cosa sobre tu código: No tiene sentido sacar las operaciones sobre un formulario fuera del código del mismo formulario. Es decir, todo lo relativo a FMain, debe ir dentro del propio fMain. Tu código será más claro, te ahorrarás teclear mucho y es más coherente. Dicho esto: Un result obtenido vía Exec(Select...) (o usando el método Find del objecto connection) es de sólo lectura. Si quieres añadir o Editar registros debes usar el método Create o Edit respectivamente. Echa un vistazo al código del formulario FMain del proyecto que te adjunto. (No lo he probado, puede contener errores) Saludos. RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - tincho - 05-06-2023 (05-06-2023, 10:21)Shordi escribió: Dicho esto: Un result obtenido vía Exec(Select...) (o usando el método Find del objecto connection) es de sólo lectura. Eso no es del todo correcto, porque puedes usar .Exec("insert into....) y eso escribe un registro, o .Exec("update....) etc. Es decir, que se puede escribir con Exec RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - Shordi - 05-06-2023 Las sentencias "Insert into" y "update" no devuelven un result operativo, sólo actúan contra la base de datos y, sí, un result obtenido con un "Select" es de solo lectura. Lo que digo es del todo correcto... sólo que hay muchas maneras de pelar un gato, como se suele decir. Saludos RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - jackrobot - 06-06-2023 Wao gente estoy abrumado no pensé que me contestarían tan pronto y tantos, y sus consejos si son importantes para mi voy a revisar y a mejorar mi código ...saben, no se cual método para agregar editar eliminar registros usar, me cuesta cargar los datos en un formulario, termine viendo varios manuales y todos recomiendan métodos distintos y me perdí en un mar de formas de hacer un sistema agregar editar borrar ..... como estoy aprendiendo uso Sqlite3 y el gestor de bases de datos de gambas, siento que es poderoso y una herramienta menospreciada... si notan hay una conexión a la base de datos llamada BDPE y tiene 2 registros yo los agregue manualmente el insert esta comentado porque al ejecutarlo parece funcionar porque no da error pero al revisar la base de datos en el poderoso gestor de bases de datos de gambas no se refleja el registro nuevo. .. revisare el código estoy seguro que no enloquesí... y seguiré batallando pero les agradezco 2 consejos, que opinan del gestor de bases de datos de bambas ? esta bien si lo uso ? y 2 que método de agregar editar borrar debo usar estoy confundido en yutup todos dicen que su método es el mejor y aquí estoy, soy el resultado de yutup, estoy muy confundido..que código debo usar ? uso fragmentos de todos y nada me funciona es abrumador estar confundido... estudie VB0.6 a los 15 y ahora en el futuro me encontré Gambas3 y aquí estoy, retomando diablos que novato soy, espero haberme explicado saludos gente estoy muy agradecido porque me contestaron. revisare todas sus observaciones e iré subiendo el código Saludos bendiciones RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - Shordi - 06-06-2023 Cita:esta bien si lo uso ? y 2 que método de agregar editar borrar debo usar estoy confundido en yutup todos dicen que su método es el mejor y aquí estoy, soy el resultado de yutup, estoy muy confundido..que código debo usar ? uso fragmentos de todos y nada me funciona es abrumador estar confundido... estudie VB0.6 a los 15 y ahora en el futuro me encontré Gambas3 y aquí estoy, retomandoMira el ejemplo que te subí en mi primera respuesta y verás un método válido. Saludos RE: Ayuda con carga de datos a FMain Sqlite3 Gambas 3.18 programa de trabajo - Shell - 08-06-2023 El procedimiento "mr" del modulo no se llama por ahora desde ningún lado, ¿ no ?. Parece que no está entero. Es simple curiosidad. ¿ Y ese nombre ?. Es que me lié, ya que estaba buscando ese nombre de procedimiento por el proyecto y solo se mostraba una vez. Y pensé que estaba haciendo algo mal, pero no. La búsqueda simple permite mostrar la coincidencia en todos los lugares del proyecto que se usa. No he bajado el primer proyecto, si el modificado o añadido. Probaré a bajarme el código original y ver los cambios para seguirlo mejor. Saludos |