diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index 73d22e3..4dd751d 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -154,6 +154,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) skmt.Initialize(ruta,"kmt.db", True) skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS IMPRESORA (HABILITADA)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS GPS (HABILITADO)") + skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PROMO_ESP (HVD_CLIENTE)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_PROMO_ESP(CAT_PE_ID TEXT,CAT_PE_IDPROMO TEXT,CAT_PE_MONTO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CUOTAS (HC_META6 TEXT, HC_META5 TEXT, HC_META4 TEXT, HC_META3 TEXT, HC_META2 TEXT, HC_META1 TEXT, HC_RUTA TEXT, HC_CUOTA1 TEXT, HC_CUOTA2 TEXT, HC_CUOTA3 TEXT, HC_CUOTA4 TEXT, HC_CUOTA5 TEXT, HC_CUOTA6 TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_GPS (HGDATE TEXT, HGLAT TEXT, HGLON TEXT)") diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 4240cb8..0609daa 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -700,24 +700,27 @@ Sub B4XPage_Appear End If - If Not(Subs.traemontoprod) And Subs.vendidoPromoEsp Then - Private j3 As Cursor - j3 = B4XPages.MainPage.skmt.ExecQuery2("SELECT PE_CEDIS, PE_CANT,PE_PROID, PE_PRONOMBRE FROM PEDIDO WHERE PE_CEDIS IN (SELECT PE_CEDIS FROM PEDIDO WHERE PE_PROID = ?)",Array As String("PROUNI01")) - Log(j3.RowCount) - If j3.RowCount > 0 Then - Log("estoy aqui") - For i = 0 To j3.RowCount -1 - Log("aqui tronare?") - j3.Position = i - B4XPages.MainPage.skmt.ExecNonQuery($"update CAT_GUNAPROD set cat_gp_almacen = cat_gp_almacen + ${j3.GetString("PE_CANT")} where cat_gp_id = '${j3.Getstring("PE_PROID")}'"$) - B4XPages.MainPage.skmt.ExecNonQuery2("delete from pedido where pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa) AND PE_FOLIO = ?", Array As Object(j3.GetString("PE_PRONOMBRE"), "PREVENTA")) - Next - End If - j3.Close - Log("BOR") - Else - - End If +' If Not(Subs.traemontoprod) And Subs.vendidoPromoEsp Then +' Private j3 As Cursor +' +' Log("SI PROMO") +' j3 = B4XPages.MainPage.skmt.ExecQuery2("SELECT PE_CEDIS, PE_CANT,PE_PROID, PE_PRONOMBRE FROM PEDIDO WHERE PE_CEDIS IN (SELECT PE_CEDIS FROM PEDIDO WHERE PE_PROID = ?)",Array As String("PROUNI01")) +' Log(j3.RowCount) +' If j3.RowCount = 0 Then +' Log("estoy aqui") +' For i = 0 To j3.RowCount -1 +' Log("aqui tronare?") +' j3.Position = i +' B4XPages.MainPage.skmt.ExecNonQuery($"update CAT_GUNAPROD set cat_gp_almacen = cat_gp_almacen + ${j3.GetString("PE_CANT")} where cat_gp_id = '${j3.Getstring("PE_PROID")}'"$) +' B4XPages.MainPage.skmt.ExecNonQuery2("delete from pedido where pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa) AND PE_FOLIO = ?", Array As Object(j3.GetString("PE_PRONOMBRE"), "PREVENTA")) +' Next +' End If +' j3.Close +' +' Log("BOR") +' Else +' +' End If End Sub @@ -962,11 +965,11 @@ Sub gest_Click ' If ALMACEN = "4" Or ALMACEN = "36" Then ' Log(Subs.traeAlmacen) - Log($"${cuest.encuestaIniciada} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$) - If Not(cuest.encuestaIniciada) And Not(cuest.clienteConCuestionario(Subs.traeCliente)) Then - cuest.agregaPreguntaCheckbox("1", "¿Qué productos de Kileo Perro encuentras en esta tienda?", Array As String("Pedigree Adulto", "Pedigree Cachorro", "Pedigree Razas Pequeñas", "Champ", "PAL","DOG CHOW ADULTO","DOG CHOW CACHORRO","DOG CHOW RAZAS PEQUEÑAS","Campeon","Ganador","Poder canino","Perron","Silverkan","Woow","Chapetes","Dyno","Beriscan","Nogacan","Nutrescan","Fidus","Amigo Gourmet","Otros","Ninguno de los anteriores")) - Return False - End If +' Log($"${cuest.encuestaIniciada} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$) +' If Not(cuest.encuestaIniciada) And Not(cuest.clienteConCuestionario(Subs.traeCliente)) Then +' cuest.agregaPreguntaCheckbox("1", "¿Qué productos de Kileo Perro encuentras en esta tienda?", Array As String("Pedigree Adulto", "Pedigree Cachorro", "Pedigree Razas Pequeñas", "Champ", "PAL","DOG CHOW ADULTO","DOG CHOW CACHORRO","DOG CHOW RAZAS PEQUEÑAS","Campeon","Ganador","Poder canino","Perron","Silverkan","Woow","Chapetes","Dyno","Beriscan","Nogacan","Nutrescan","Fidus","Amigo Gourmet","Otros","Ninguno de los anteriores")) +' Return False +' End If If TOMAR_FOTO = 0 Then Cuestionario diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index 0683b02..dfea5c6 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -785,6 +785,7 @@ Sub cargar_Click ' NUEVOS CLIENTE B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info") + B4XPages.MainPage.skmt.ExecNonQuery("delete from PROMO_ESP") B4XPages.MainPage.skmt.ExecNonQuery("delete from cod_result") B4XPages.MainPage.skmt.ExecNonQuery("delete from hist_gest") B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod") @@ -846,7 +847,7 @@ Sub cargar_Click B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "resum_apk") ''' donde regresa la info ver job_done cmd.Initialize - cmd.Name = "select_cat_paquetes_GV4" + cmd.Name = "select_cat_paquetes_GV6" cmd.Parameters = Array As Object(ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "gunaprodp") @@ -904,6 +905,11 @@ Sub cargar_Click cmd.Parameters = Array As Object( e_ruta.text, ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "HIST_ENCUESTA2") + cmd.Initialize + cmd.Name = "SELECT_HIST_PRODPROM_GUNA" + cmd.Parameters = Array As Object(ALMACEN, e_ruta.text) + B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "HIST_PROM") + If E_RUTA2.text <> "" Then cmd.Initialize cmd.Name = "select_cat_clientes_guna_GV2" @@ -924,6 +930,11 @@ Sub cargar_Click cmd.Name = "select_hist_cliente_promos_GV2" cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_cliente_promos") + + cmd.Initialize + cmd.Name = "SELECT_HIST_PRODPROM_GUNA" + cmd.Parameters = Array As Object(ALMACEN,E_RUTA2.text) + B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "HIST_PROM") End If cmd.Initialize @@ -1219,6 +1230,18 @@ Sub JobDone(Job As HttpJob) ' If Starter.marcaCel <> "Sony" Then ToastMessageShow(" Historico Clientes Promociones Actualizado." , True) End If End If + + If Job.JobName = "DBRequest" Then + Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) + If RESULT.Tag = "HIST_PROM" Then 'query tag + + For Each records() As Object In RESULT.Rows + Dim HVD_CLIENTE2 As String = records(RESULT.Columns.Get("HVD_CLIENTE")) + B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PROMO_ESP(HVD_CLIENTE) VALUES (?)", Array As Object (HVD_CLIENTE2)) + Next +' If Starter.marcaCel <> "Sony" Then ToastMessageShow(" Historico Clientes Promociones Actualizado." , True) + End If + End If If Job.JobName = "DBRequest" Then Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas index ac180d4..5538c1f 100644 --- a/B4A/C_Productos.bas +++ b/B4A/C_Productos.bas @@ -151,8 +151,15 @@ Sub lv_catalogos_ItemClick (Position As Int, Value As Object) ' If Subs.traemontoprod Then ' c2 = B4XPages.MainPage.skmt.ExecQuery2("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_TIPOPROD = ? AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) )", Array As String(Value, marca, tipo)) ' Else - LogColor("Promos" & " | " & marca & " | " & tipo, Colors.red) - c2 = B4XPages.MainPage.skmt.ExecQuery2("Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_TIPOPROD = ? AND CAT_GP_ID NOT IN (SELECT DISTINCT CAT_PE_IDPROMO FROM CAT_PROMO_ESP) AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa))", Array As String(Value, marca, tipo)) + Private cd As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT HVD_CLIENTE FROM PROMO_ESP WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + If cd.RowCount = 0 Then + + LogColor("Promos" & " | " & marca & " | " & tipo, Colors.red) + c2 = B4XPages.MainPage.skmt.ExecQuery2("Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_TIPOPROD = ? AND CAT_GP_ID NOT IN (SELECT DISTINCT CAT_PE_IDPROMO FROM CAT_PROMO_ESP) AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa))", Array As String(Value, marca, tipo)) + Else If cd.RowCount > 0 Then + LogColor("Promos" & " | " & marca & " | " & tipo, Colors.red) +c2 = B4XPages.MainPage.skmt.ExecQuery2("Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_TIPOPROD = ? and CAT_GP_ID <> 'PRO2265' AND CAT_GP_ID NOT IN (SELECT DISTINCT CAT_PE_IDPROMO FROM CAT_PROMO_ESP) AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa))", Array As String(Value, marca, tipo)) + End If ' End If Else LogColor("Catalogo", Colors.red) @@ -242,7 +249,7 @@ Sub lv_promos_ItemClick (Position As Int, Value As Object) B4XPages.ShowPage("Cliente") End If If entro = "3" Then - LogColor("Promos YYY", Colors.red) + LogColor("Promos YYY", Colors.red) c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_TIPOPROD = ? AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) )", Array As String(Value, marca, tipo)) clv_productos.AsView.Visible = False lv_promos.Visible = True @@ -657,11 +664,14 @@ End Sub Private Sub lv_promos_ItemLongClick (Position As Int, Value As Object) Log("Promo longclic = "&Value) Private id As String = "" + Dim c As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = 'PROMOS' and CAT_GP_NOMBRE = '${Value}'"$) If c.RowCount > 0 Then c.Position = 0 id = c.GetString("CAT_GP_ID") + Log("ENTRE") End If + l_info.Text = $"ID: ${id}${CRLF}${Value}"$ l_info.Visible = True End Sub diff --git a/B4A/Guna Vistas V3.1.b4a b/B4A/Guna Vistas V3.1.b4a index 5e5a1f3..982f9d9 100644 --- a/B4A/Guna Vistas V3.1.b4a +++ b/B4A/Guna Vistas V3.1.b4a @@ -190,7 +190,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Guna V3.1 #VersionCode: 1 - #VersionName: 4.06.22.E + #VersionName: 4.06.29.E 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/Guna Vistas V3.1.b4a.meta b/B4A/Guna Vistas V3.1.b4a.meta index cd3f68e..b2824fd 100644 --- a/B4A/Guna Vistas V3.1.b4a.meta +++ b/B4A/Guna Vistas V3.1.b4a.meta @@ -53,7 +53,7 @@ ModuleClosedNodes1=5,7,8,9,10,11,12,13,14 ModuleClosedNodes10= ModuleClosedNodes11= ModuleClosedNodes12=6 -ModuleClosedNodes13=1,2,3,8,10,14 +ModuleClosedNodes13=2,3,8,10,14 ModuleClosedNodes14= ModuleClosedNodes15= ModuleClosedNodes16= @@ -73,6 +73,6 @@ ModuleClosedNodes6=6,8,9,10 ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Principal,CARGA_Click,2049,0,C_Principal,cargar_Click,841,0,C_Cliente,GPS_LocationChanged,717,0,C_Productos,Class_Globals,0,0,C_Cliente,CB4_P8_M3_CheckedChange,3740,0,C_Cliente,Class_Globals,2,0,C_Cliente,Cuestionario,3774,0,C_Cliente,cuest_preguntaContestada,4092,3,C_Principal,Class_Globals,0,0,C_Cliente,gest_Click,962,0 +NavigationStack=C_Productos,lv_promos_ItemLongClick,650,6,Subs,procesaPromocion,906,0,Diseñador Visual,productos.bal,-100,1,Subs,traeMaxPromos,877,0,C_Productos,lv_promos_ItemClick,246,2,Subs,traePromoIdDeBD,1119,0,C_Productos,lv_catalogos_ItemClick,154,1,Subs,traePromo,762,0,C_Principal,cargar_Click,843,0,C_Cliente,B4XPage_Appear,696,6 SelectedBuild=0 VisibleModules=22,2,23,13,14,4,6,9,12,5 diff --git a/B4A/Subs.bas b/B4A/Subs.bas index 89eb758..2c94448 100644 --- a/B4A/Subs.bas +++ b/B4A/Subs.bas @@ -764,7 +764,10 @@ Sub traePromo(promo As String, cliente As String) As Map Else promoMap.Put("resultado", "No hay datos de la promoción.") End If + + c = B4XPages.MainPage.skmt.ExecQuery("Select CAT_GP_STS, CAT_GP_NOMBRE from CAT_GUNAPROD where CAT_GP_ID = '"& promo & "'") 'Obtenemos las piezas requeridas de productos variables para la promoción. + c.Position = 0 Private pvr As String = 0 If c.RowCount > 0 Then @@ -1103,6 +1106,8 @@ End Sub Sub traePromoIdDeBD As Map 'ignore Private c As Cursor Private m As Map + + Log("ENTRE") c=B4XPages.MainPage.skmt.ExecQuery("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_TIPO, CAT_GP_SUBTIPO from CAT_GUNAPROD where CAT_GP_NOMBRE In (Select PDESC from PROID) and CAT_GP_TIPO = 'PROMOS'") If c.RowCount > 0 Then c.Position = 0 @@ -1111,6 +1116,7 @@ Sub traePromoIdDeBD As Map 'ignore m = CreateMap("id":"N/A", "nombre":"N/A", "tipo":"N/A", "subtipo":"N/A") End If c.Close + Return m End Sub