|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
| WD21 - Optimize HAdd SQLite |
| Iniciado por guest, 13,jul. 2017 12:44 - 3 respuestas |
| |
| | | |
|
| |
| Publicado el 13,julio 2017 - 12:44 |
Hi all, my application use MySql but i have create a procedure that create SQLite data file. This file is send to an android device.
There is a method to optimize the HAdd.
HCreationIfNotFound(ArticoliMobile) HDeleteAll(ArticoliMobile) HExecuteQuery(QRY_WEB_Leggi_Articoli,hQueryDefault,tabvar.tava_anno_lav,tabvar.tava_dep_prin,gsAzienda,20000101000000) HReadFirst(QRY_WEB_Leggi_Articoli) PROGBAR_Progresso..MaxValue=HNbRec(QRY_WEB_Leggi_Articoli) STC_TxtStatus="Compressione Articoli..." WHILE NOT HOut(QRY_WEB_Leggi_Articoli) PROGBAR_Progresso..Value+=1 ArticoliMobile.Azienda=QRY_WEB_Leggi_Articoli.AI_AZIENDA ArticoliMobile.Codice=QRY_WEB_Leggi_Articoli.ai_codiarti ArticoliMobile.Descrizione=QRY_WEB_Leggi_Articoli.AI_DESCRIZI ArticoliMobile.CodiceIVA=QRY_WEB_Leggi_Articoli.AI_CODICIVA ArticoliMobile.Listino1=QRY_WEB_Leggi_Articoli.AI_LIS_EURO1 ArticoliMobile.Listino2=QRY_WEB_Leggi_Articoli.AI_LIS_EURO2 ArticoliMobile.Listino3=QRY_WEB_Leggi_Articoli.AI_LIS_EURO3 ArticoliMobile.Listino4=QRY_WEB_Leggi_Articoli.AI_LIS_EURO4 ArticoliMobile.Listino5=QRY_WEB_Leggi_Articoli.AI_LIS_EURO5 ArticoliMobile.CateMerc=QRY_WEB_Leggi_Articoli.AI_CATEMERC ArticoliMobile.FlNetto=QRY_WEB_Leggi_Articoli.AI_FL_NETTO ArticoliMobile.GrupScont=QRY_WEB_Leggi_Articoli.ai_grupscon ArticoliMobile.Note=QRY_WEB_Leggi_Articoli.AI_NOTE ArticoliMobile.Barcode=QRY_WEB_Leggi_Articoli.ai_barcode ArticoliMobile.UM1=QRY_WEB_Leggi_Articoli.AI_UNIMIS_1 ArticoliMobile.DataValLis1=QRY_WEB_Leggi_Articoli.AI_DAT_VALI1 ArticoliMobile.DataValLis2=QRY_WEB_Leggi_Articoli.AI_DAT_VALI2 ArticoliMobile.DataValLis3=QRY_WEB_Leggi_Articoli.AI_DAT_VALI3 ArticoliMobile.DataValLis4=QRY_WEB_Leggi_Articoli.AI_DAT_VALI4 ArticoliMobile.DataValLis5=QRY_WEB_Leggi_Articoli.AI_DAT_VALI5 ArticoliMobile.ArtDiRifer=QRY_WEB_Leggi_Articoli.ai_art_originale ArticoliMobile.Costo=QRY_WEB_Leggi_Articoli.AI_COS_EURO ArticoliMobile.Marca=QRY_WEB_Leggi_Articoli.AI_CAPOCODI HAdd(ArticoliMobile) HReadNext(QRY_WEB_Leggi_Articoli) MultitaskRedraw(WIN_Web_InviaDatiMobile) END HFreeQuery(QRY_WEB_Leggi_Articoli) PROGBAR_Progresso..Value=0 |
| |
| |
| | | |
|
| | |
| |
| Publicado el 13,julio 2017 - 13:07 |
Giovanni,
use HTransactionStart() at the begin and HTrancsactionEnd() after all your HAdd-s are done. This will speed up a lot. |
| |
| |
| | | |
|
| | |
| |
| Publicado el 13,julio 2017 - 13:16 |
Otherwise Windev will execute EVERY HAdd within the scope of a transaction, with the additional overhead. With a few records you will not notice the difference, but when it comes to hundreds or 1000+ is will slow down significally |
| |
| |
| | | |
|
| | |
| |
| Publicado el 13,julio 2017 - 17:14 |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|