Spanish Ayuda con AddNonQueryToBatch

Alberto Salinas

Member
Licensed User
Tengo este codigo

B4X: Copy
ProgressDialogShow2("Inserting data...", False)
 Starter.mysql.AddNonQueryToBatch("Insert into  Activaciones values (?,?,?,?,?,?,?,?,?)", Array As Object(KeyTag, DateTime.Date (DateTime.now),Main.IdUsuario, Main.Nombre,Main.MacId,"A",0,20,0 ))
Dim SenderFilter As Object = Starter.mysql.ExecNonQueryBatch("SQL")
 Wait For (SenderFilter) SQL_QueryComplete (Success As Boolean)
Log("NonQuery: " & Success)
 ProgressDialogHide

Jamás desaparece el Cuadro de dialogo, si hace el insert, además que no da un valor en Success nunca, se queda ahí en el wait

Alguien me podría ayudar por favor
 
Hola Alberto:

No sé exactamente por qué te está dando ese comportamiento el cuadro de diálogo, y puede que lo voy a comentar no esté relacionado (o sí) con ese problema. Ten en cuenta que ExecNonQueryBatch es para ejecutar muchas instrucciones juntas como una transacción. Para una sóla instrucción (que puede tardar en ejecutarse prácticamente nada, vamos, que ni daría tiempo a que se mostrase el diálogo), deberías usar ExecNonQuery.

saludos,
 
Hola Alberto:

No sé exactamente por qué te está dando ese comportamiento el cuadro de diálogo, y puede que lo voy a comentar no esté relacionado (o sí) con ese problema. Ten en cuenta que ExecNonQueryBatch es para ejecutar muchas instrucciones juntas como una transacción. Para una sóla instrucción (que puede tardar en ejecutarse prácticamente nada, vamos, que ni daría tiempo a que se mostrase el diálogo), deberías usar ExecNonQuery.

saludos,
Buenos Dias, son mis primeros pasos programando aquí, lo hice así, para asegurarme que lo este haciendo, lo tenia anteriormente de la siguiente forma
B4X: Copy
Starter.mysql.ExecNonQuery2("Update Tarjetas Set estado=?, FechaActiva=?,iduser=?, UserActiva=?, idActiva=?,  Nip=?  where ( Tarjeta=? and Estado=0 )", Array As Object(1,DateTime.Date( DateTime.now) ,Main.IdUsuario,Main.Nombre,Main.MacId,TxTClave.Text,KeyTag))
Pero no me sentía cómodo, porque no estaba seguro si siempre se hacia.
 
Back
Top