diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index b9d251a..4a43787 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -424,10 +424,12 @@ Sub Entrar_Click c=skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text)) c.Position=0 existe = c.GetString("EXISTE1") - cmd.Initialize - cmd.Name = "selectVersionAppGuna" - cmd.Parameters = Array As Object(user.Text.Trim, pass.Text.Trim) - reqManager.ExecuteQuery(cmd , 0, "traeVersion") + If Subs.traeAlmacen <> "NA" Then + cmd.Initialize + cmd.Name = "selectVersionAppGuna" + cmd.Parameters = Array As Object(Subs.traeAlmacen) + reqManager.ExecuteQuery(cmd , 0, "traeVersion") + End If If existe = 0 Then Dim cmd As DBCommand cmd.Initialize @@ -475,6 +477,7 @@ Private Sub user_EnterPressed End Sub Sub JobDone(Job As HttpJob) + Log("JOBDONE MAINPAGE") Log(Job.Success) If Job.Success = False Then LogColor("Error: " & Job.tag & " : " & Subs.parseHTTPError(Job.ErrorMessage), Colors.red) diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index b282a09..a841c08 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -425,6 +425,7 @@ Sub Class_Globals Dim IniVenNO As Boolean = False Private geoCont As Int = 0 Private l_version As Label + Private p_transparenteInicioFin As Panel End Sub 'You can add more parameters here. @@ -497,6 +498,9 @@ Sub B4XPage_Appear LA_GPS.Text = "SIN UBICACION GPS" cercavalor = 0 l_version.Text = Application.VersionName + p_transparenteInicioFin.Width = Root.Width : p_transparenteInicioFin.Height = Root.Height + b_Inicio_Fin_venta.Left = 5 + b_Inicio_Fin_venta.Width = Root.Width - 10 b_Inicio_Fin_venta.Text = "INICIAR VENTA" b_Inicio_Fin_venta.BringToFront ' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red) @@ -1074,18 +1078,21 @@ Sub GPS_LocationChanged (Location1 As Location) End Sub - - Private Sub p_pideGeoPass_Click - + End Sub Private Sub iniciofin If Starter.enVenta = False Then + p_transparenteInicioFin.BringToFront + p_transparenteInicioFin.Visible = True b_Inicio_Fin_venta.Visible = True ' Log("Hacemos visible el boton de Inicio Venta2") Else - b_Inicio_Fin_venta.Visible = False + If b_Inicio_Fin_venta.Text <> "TERMINAR VENTA" Then + p_transparenteInicioFin.Visible = False + b_Inicio_Fin_venta.Visible = False + End If End If End Sub @@ -1887,9 +1894,7 @@ Sub B_guardaencuesta_Click tipo_venta = "PREVENTA" ' StartActivity(colonia2) B4XPages.ShowPage("productos") - End If - Else Msgbox("FALTAN DATOS DE CAPTURA FAVOR DE VALIDAR", "AVISO") End If @@ -1904,7 +1909,13 @@ Private Sub B4XPage_CloseRequest As ResumableSub ' Return True To close, False To cancel cuest.encuestaIniciada = False cuest.ocultPanelPregunta - If p_encuesta.Visible Then + If p_transparenteInicioFin.Visible And b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Then + ToastMessageShow("Por favor presione el botón de TERMINAR VENTA", True) + Return False + Else if Subs.hayPedido Then + ToastMessageShow("Por favor presione el botón de GUARDAR", True) + Return False + else If p_encuesta.Visible Then p_encuesta.Visible = False Else iF p_camara.Visible Then Return False @@ -1932,6 +1943,7 @@ End Sub Sub Guardar_Click Guardar.SendToBack + p_transparenteInicioFin.Visible = True b_Inicio_Fin_venta.Visible = True b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Log("Hacemos visible el boton de Terminar Venta3") @@ -4736,9 +4748,10 @@ Private Sub b_Inicio_Fin_venta_Click contadorIniciarVenta = 0 IniVenNO = False If dentroDeGeocerca Then precision = 1 - LogColor("-------> "&contadorIniciarVenta & " <-------", Colors.Red) +' LogColor("-------> "&contadorIniciarVenta & " <-------", Colors.Red) motivoNoVenta = "" motivoNoVisita = "" + p_transparenteInicioFin.Visible = False If b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Then Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, motivoNoVisita) Starter.enVenta = False @@ -4778,4 +4791,8 @@ Private Sub LA_GEO_Click End If End If geoCont = geoCont + 1 +End Sub + +Private Sub p_transparenteInicioFin_Click + End Sub \ No newline at end of file diff --git a/B4A/C_Nota.bas b/B4A/C_Nota.bas index 03e263b..083f768 100644 --- a/B4A/C_Nota.bas +++ b/B4A/C_Nota.bas @@ -99,7 +99,7 @@ Sub B4XPage_Appear c=B4XPages.MainPage.skmt.ExecQuery("select pc_noart, pc_monto from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") C.Position=0 L_CANT.Text = c.GetString("PC_NOART") - L_TOTAL.Text = c.GetString("PC_MONTO") + L_TOTAL.Text = NumberFormat2(c.GetString("PC_MONTO"), 1, 2, 2, True) c.Close c=B4XPages.MainPage.skmt.ExecQuery("select SUM(IFNULL(PE_DESC,0)) AS DESCUENTO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") c.Position=0 @@ -117,7 +117,7 @@ Sub B4XPage_Appear s5.Position = 0 - L_TOTAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False) + L_TOTAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,True) @@ -128,7 +128,7 @@ Sub B4XPage_Appear Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") s.Position=0 - L_TOTAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False) + L_TOTAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,True) s.Close End If diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index f698477..4d2e26c 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -341,6 +341,7 @@ End Sub 'Descargar: GP_https://keymon.lat/movil/guna/GP_4.10.10.EP_d.apk Sub B4XPage_Appear +' LogColor($"########## ${Subs.traeRuta} ##########"$, Colors.red) p_principal.Visible = True Subs.validaPromoProcterPRO3009 HORAINGRESO ="000000" @@ -939,10 +940,10 @@ Sub cargar_Click ' cmd.Parameters = Array As Object(ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "histespecial") - cmd.Initialize - cmd.Name = "select_resum_apk_guna" ''' va el nombre de archivo de config - cmd.Parameters = Array As Object(ALMACEN) - B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "resum_apk") ''' donde regresa la info ver job_done +' cmd.Initialize +' cmd.Name = "select_resum_apk_guna" ''' va el nombre de archivo de config +' cmd.Parameters = Array As Object(ALMACEN) +' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "resum_apk") ''' donde regresa la info ver job_done cmd.Initialize cmd.Name = "select_cat_paquetes_GV6" @@ -1041,10 +1042,9 @@ Sub cargar_Click cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_pro3055") + 'SUPLENCIA If E_RUTA2.text <> "" Then - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTA_SUPLENCIA(RS_RUTA) VALUES(?)",Array As String(E_RUTA2.Text)) - E_RUTA2.Visible = False Panel11.Visible = False @@ -1089,20 +1089,20 @@ Sub cargar_Click cmd.Parameters = Array As Object(ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "password") - cmd.Initialize - cmd.Name = "select_verificacion_GV2" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "cat_verificacion") +' cmd.Initialize +' cmd.Name = "select_verificacion_GV2" +' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) +' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "cat_verificacion") cmd.Initialize cmd.Name = "select_fecha" cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "fecha") - cmd.Initialize - cmd.Name = "select_folio_GV2" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "folio") +' cmd.Initialize +' cmd.Name = "select_folio_GV2" +' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) +' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "folio") cmd.Initialize cmd.Name = "select_marcas_rutas" @@ -1120,10 +1120,10 @@ Sub cargar_Click ' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ENCUESTA_CLIENTE") - cmd.Initialize - cmd.Name = "select_HIST_CUOTAS" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "CUOTAS") +' cmd.Initialize +' cmd.Name = "select_HIST_CUOTAS" +' cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) +' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "CUOTAS") cmd.Initialize cmd.Name = "select_comis_cedex" @@ -1133,17 +1133,19 @@ Sub cargar_Click cargar.Visible = False Subir.Visible = False inv.Visible = False + E_RUTA2.Visible = False If Starter.marcaCel <> "Sony" Then ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias" , True) End Sub Sub JobDone(Job As HttpJob) + Log("JOBDONE PRINCIPAL") ' If Job.JobName = "DBRequest" Then ' Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) ' 'Log($"Tag: ${RESULT.tag}, success=${Job.Success}"$) ' End If 'Log(Job.Tag) If Job.Success = False Then - If Job.ErrorMessage <> "STREAM" Then LogColor("Error: " & Job.tag & " : " & subs.parseHTTPError(Job.ErrorMessage), Colors.red) + If Job.ErrorMessage <> "STREAM" Then LogColor("Error: " & Job.tag & " : " & Subs.parseHTTPError(Job.ErrorMessage), Colors.red) 'ToastMessageShow("Error: " & Job.ErrorMessage, True) If Job.ErrorMessage = "STREAM" Then If CARGA = "SUBIR" Then @@ -1260,64 +1262,64 @@ Sub JobDone(Job As HttpJob) End If End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) - If RESULT.Tag = "resum_apk" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim HIST_RA_OBJMES As String = records(RESULT.Columns.Get("HIST_RA_OBJMES")) - Dim HIST_RA_VENTA As String = records(RESULT.Columns.Get("HIST_RA_VENTA")) - Dim HIST_RA_TENDENCIA As String = records(RESULT.Columns.Get("HIST_RA_TENDENCIA")) - Dim HIST_RA_ALCANCE As String = records(RESULT.Columns.Get("HIST_RA_ALCANCE")) - Dim HISR_RA_DRAOBJ As String = records(RESULT.Columns.Get("HISR_RA_DRAOBJ")) - Dim HIST_RA_DRAVTA As String = records(RESULT.Columns.Get("HIST_RA_DRAVTA")) - Dim HIST_RA_DSOBJ As String = records(RESULT.Columns.Get("HIST_RA_DSOBJ")) - Dim HIST_RA_DSVTA As String = records(RESULT.Columns.Get("HIST_RA_DSVTA")) - Dim HIST_RA_VPOOBJ As String = records(RESULT.Columns.Get("HIST_RA_VPOOBJ")) - Dim HIST_RA_VPOVTA As String = records(RESULT.Columns.Get("HIST_RA_VPOVTA")) - Dim HIST_RA_CTES As String = records(RESULT.Columns.Get("HIST_RA_CTES")) - Dim HIST_RA_COBCCC As String = records(RESULT.Columns.Get("HIST_RA_COBCCC")) - Dim HIST_RA_ECO As String = records(RESULT.Columns.Get("HIST_RA_ECO")) - Dim HIST_RA_VISITPLAN As String = records(RESULT.Columns.Get("HIST_RA_VISITPLAN")) - Dim HIST_RA_VISIREAL As String = records(RESULT.Columns.Get("HIST_RA_VISIREAL")) - Dim HIST_RA_COBVISIT As String = records(RESULT.Columns.Get("HIST_RA_COBVISIT")) - Dim HIST_RA_FRECCOMPOBJ As String = records(RESULT.Columns.Get("HIST_RA_FRECCOMPOBJ")) - Dim HIST_RA_FRECCOMREAL As String = records(RESULT.Columns.Get("HIST_RA_FRECCOMREAL")) - Dim HIST_RA_VENTAMES1 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES1")) - Dim HIST_RA_VENTAMES2 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES2")) - Dim HIST_RA_VENTAMES3 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES3")) - Dim HIST_RA_VENTAMES4 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES4")) - Dim HIST_RA_RECHAZO As String = records(RESULT.Columns.Get("HIST_RA_RECHAZO")) - Dim HIST_RA_RECHAZOPORCEN As String = records(RESULT.Columns.Get("HIST_RA_RECHAZOPORCEN")) - Dim HIST_RA_SEMANA1 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1")) - Dim HIST_RA_SEMANA1_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1_DIAS")) - Dim HIST_RA_SEMANA1_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1_DRA")) - Dim HIST_RA_SEMANA2 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2")) - Dim HIST_RA_SEMANA2_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2_DIAS")) - Dim HIST_RA_SEMANA2_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2_DRA")) - Dim HIST_RA_SEMANA3 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3")) - Dim HIST_RA_SEMANA3_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3_DIAS")) - Dim HIST_RA_SEMANA3_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3_DRA")) - Dim HIST_RA_SEMANA4 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4")) - Dim HIST_RA_SEMANA4_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4_DIAS")) - Dim HIST_RA_SEMANA4_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4_DRA")) - Dim HIST_RA_SEMANA5 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5")) - Dim HIST_RA_SEMANA5_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5_DIAS")) - Dim HIST_RA_SEMANA5_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5_DRA")) - Dim HIST_RA_SEMANA1_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1_LPT")) - Dim HIST_RA_SEMANA2_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2_LPT")) - Dim HIST_RA_SEMANA3_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3_LPT")) - Dim HIST_RA_SEMANA4_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4_LPT")) - Dim HIST_RA_SEMANA5_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5_LPT")) - Dim HIST_RA_RUTA As String = records(RESULT.Columns.Get("HIST_RA_RUTA")) - Dim HIST_RA_IDALMACEN As String = records(RESULT.Columns.Get("HIST_RA_IDALMACEN")) - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_RESUM_APK(HIST_RA_OBJMES,HIST_RA_VENTA,HIST_RA_TENDENCIA,HIST_RA_ALCANCE,HISR_RA_DRAOBJ,HIST_RA_DRAVTA,HIST_RA_DSOBJ,HIST_RA_DSVTA,HIST_RA_VPOOBJ,HIST_RA_VPOVTA,HIST_RA_CTES,HIST_RA_COBCCC,HIST_RA_ECO,HIST_RA_VISITPLAN,HIST_RA_VISIREAL,HIST_RA_COBVISIT,HIST_RA_FRECCOMPOBJ,HIST_RA_FRECCOMREAL,HIST_RA_VENTAMES1,HIST_RA_VENTAMES2,HIST_RA_VENTAMES3,HIST_RA_VENTAMES4,HIST_RA_RECHAZO,HIST_RA_RECHAZOPORCEN,HIST_RA_SEMANA1,HIST_RA_SEMANA1_DIAS,HIST_RA_SEMANA1_DRA,HIST_RA_SEMANA2,HIST_RA_SEMANA2_DIAS,HIST_RA_SEMANA2_DRA,HIST_RA_SEMANA3,HIST_RA_SEMANA3_DIAS,HIST_RA_SEMANA3_DRA,HIST_RA_SEMANA4,HIST_RA_SEMANA4_DIAS,HIST_RA_SEMANA4_DRA,HIST_RA_SEMANA5,HIST_RA_SEMANA5_DIAS,HIST_RA_SEMANA5_DRA,HIST_RA_SEMANA1_LPT,HIST_RA_SEMANA2_LPT,HIST_RA_SEMANA3_LPT,HIST_RA_SEMANA4_LPT,HIST_RA_SEMANA5_LPT,HIST_RA_RUTA,HIST_RA_IDALMACEN) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (HIST_RA_OBJMES,HIST_RA_VENTA,HIST_RA_TENDENCIA,HIST_RA_ALCANCE,HISR_RA_DRAOBJ,HIST_RA_DRAVTA,HIST_RA_DSOBJ,HIST_RA_DSVTA,HIST_RA_VPOOBJ,HIST_RA_VPOVTA,HIST_RA_CTES,HIST_RA_COBCCC,HIST_RA_ECO,HIST_RA_VISITPLAN,HIST_RA_VISIREAL,HIST_RA_COBVISIT,HIST_RA_FRECCOMPOBJ,HIST_RA_FRECCOMREAL,HIST_RA_VENTAMES1,HIST_RA_VENTAMES2,HIST_RA_VENTAMES3,HIST_RA_VENTAMES4,HIST_RA_RECHAZO,HIST_RA_RECHAZOPORCEN,HIST_RA_SEMANA1,HIST_RA_SEMANA1_DIAS,HIST_RA_SEMANA1_DRA,HIST_RA_SEMANA2,HIST_RA_SEMANA2_DIAS,HIST_RA_SEMANA2_DRA,HIST_RA_SEMANA3,HIST_RA_SEMANA3_DIAS,HIST_RA_SEMANA3_DRA,HIST_RA_SEMANA4,HIST_RA_SEMANA4_DIAS,HIST_RA_SEMANA4_DRA,HIST_RA_SEMANA5,HIST_RA_SEMANA5_DIAS,HIST_RA_SEMANA5_DRA,HIST_RA_SEMANA1_LPT,HIST_RA_SEMANA2_LPT,HIST_RA_SEMANA3_LPT,HIST_RA_SEMANA4_LPT,HIST_RA_SEMANA5_LPT,HIST_RA_RUTA,HIST_RA_IDALMACEN)) - ' Msgbox("pasa","alo") - Next - Listo1 = 1 - S_CC.Text = "LISTO" -' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Resumen Actualizado." , True) - End If - End If +' If Job.JobName = "DBRequest" Then +' Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) +' If RESULT.Tag = "resum_apk" Then 'query tag +' For Each records() As Object In RESULT.Rows +' Dim HIST_RA_OBJMES As String = records(RESULT.Columns.Get("HIST_RA_OBJMES")) +' Dim HIST_RA_VENTA As String = records(RESULT.Columns.Get("HIST_RA_VENTA")) +' Dim HIST_RA_TENDENCIA As String = records(RESULT.Columns.Get("HIST_RA_TENDENCIA")) +' Dim HIST_RA_ALCANCE As String = records(RESULT.Columns.Get("HIST_RA_ALCANCE")) +' Dim HISR_RA_DRAOBJ As String = records(RESULT.Columns.Get("HISR_RA_DRAOBJ")) +' Dim HIST_RA_DRAVTA As String = records(RESULT.Columns.Get("HIST_RA_DRAVTA")) +' Dim HIST_RA_DSOBJ As String = records(RESULT.Columns.Get("HIST_RA_DSOBJ")) +' Dim HIST_RA_DSVTA As String = records(RESULT.Columns.Get("HIST_RA_DSVTA")) +' Dim HIST_RA_VPOOBJ As String = records(RESULT.Columns.Get("HIST_RA_VPOOBJ")) +' Dim HIST_RA_VPOVTA As String = records(RESULT.Columns.Get("HIST_RA_VPOVTA")) +' Dim HIST_RA_CTES As String = records(RESULT.Columns.Get("HIST_RA_CTES")) +' Dim HIST_RA_COBCCC As String = records(RESULT.Columns.Get("HIST_RA_COBCCC")) +' Dim HIST_RA_ECO As String = records(RESULT.Columns.Get("HIST_RA_ECO")) +' Dim HIST_RA_VISITPLAN As String = records(RESULT.Columns.Get("HIST_RA_VISITPLAN")) +' Dim HIST_RA_VISIREAL As String = records(RESULT.Columns.Get("HIST_RA_VISIREAL")) +' Dim HIST_RA_COBVISIT As String = records(RESULT.Columns.Get("HIST_RA_COBVISIT")) +' Dim HIST_RA_FRECCOMPOBJ As String = records(RESULT.Columns.Get("HIST_RA_FRECCOMPOBJ")) +' Dim HIST_RA_FRECCOMREAL As String = records(RESULT.Columns.Get("HIST_RA_FRECCOMREAL")) +' Dim HIST_RA_VENTAMES1 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES1")) +' Dim HIST_RA_VENTAMES2 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES2")) +' Dim HIST_RA_VENTAMES3 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES3")) +' Dim HIST_RA_VENTAMES4 As String = records(RESULT.Columns.Get("HIST_RA_VENTAMES4")) +' Dim HIST_RA_RECHAZO As String = records(RESULT.Columns.Get("HIST_RA_RECHAZO")) +' Dim HIST_RA_RECHAZOPORCEN As String = records(RESULT.Columns.Get("HIST_RA_RECHAZOPORCEN")) +' Dim HIST_RA_SEMANA1 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1")) +' Dim HIST_RA_SEMANA1_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1_DIAS")) +' Dim HIST_RA_SEMANA1_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1_DRA")) +' Dim HIST_RA_SEMANA2 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2")) +' Dim HIST_RA_SEMANA2_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2_DIAS")) +' Dim HIST_RA_SEMANA2_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2_DRA")) +' Dim HIST_RA_SEMANA3 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3")) +' Dim HIST_RA_SEMANA3_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3_DIAS")) +' Dim HIST_RA_SEMANA3_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3_DRA")) +' Dim HIST_RA_SEMANA4 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4")) +' Dim HIST_RA_SEMANA4_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4_DIAS")) +' Dim HIST_RA_SEMANA4_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4_DRA")) +' Dim HIST_RA_SEMANA5 As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5")) +' Dim HIST_RA_SEMANA5_DIAS As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5_DIAS")) +' Dim HIST_RA_SEMANA5_DRA As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5_DRA")) +' Dim HIST_RA_SEMANA1_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA1_LPT")) +' Dim HIST_RA_SEMANA2_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA2_LPT")) +' Dim HIST_RA_SEMANA3_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA3_LPT")) +' Dim HIST_RA_SEMANA4_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA4_LPT")) +' Dim HIST_RA_SEMANA5_LPT As String = records(RESULT.Columns.Get("HIST_RA_SEMANA5_LPT")) +' Dim HIST_RA_RUTA As String = records(RESULT.Columns.Get("HIST_RA_RUTA")) +' Dim HIST_RA_IDALMACEN As String = records(RESULT.Columns.Get("HIST_RA_IDALMACEN")) +' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_RESUM_APK(HIST_RA_OBJMES,HIST_RA_VENTA,HIST_RA_TENDENCIA,HIST_RA_ALCANCE,HISR_RA_DRAOBJ,HIST_RA_DRAVTA,HIST_RA_DSOBJ,HIST_RA_DSVTA,HIST_RA_VPOOBJ,HIST_RA_VPOVTA,HIST_RA_CTES,HIST_RA_COBCCC,HIST_RA_ECO,HIST_RA_VISITPLAN,HIST_RA_VISIREAL,HIST_RA_COBVISIT,HIST_RA_FRECCOMPOBJ,HIST_RA_FRECCOMREAL,HIST_RA_VENTAMES1,HIST_RA_VENTAMES2,HIST_RA_VENTAMES3,HIST_RA_VENTAMES4,HIST_RA_RECHAZO,HIST_RA_RECHAZOPORCEN,HIST_RA_SEMANA1,HIST_RA_SEMANA1_DIAS,HIST_RA_SEMANA1_DRA,HIST_RA_SEMANA2,HIST_RA_SEMANA2_DIAS,HIST_RA_SEMANA2_DRA,HIST_RA_SEMANA3,HIST_RA_SEMANA3_DIAS,HIST_RA_SEMANA3_DRA,HIST_RA_SEMANA4,HIST_RA_SEMANA4_DIAS,HIST_RA_SEMANA4_DRA,HIST_RA_SEMANA5,HIST_RA_SEMANA5_DIAS,HIST_RA_SEMANA5_DRA,HIST_RA_SEMANA1_LPT,HIST_RA_SEMANA2_LPT,HIST_RA_SEMANA3_LPT,HIST_RA_SEMANA4_LPT,HIST_RA_SEMANA5_LPT,HIST_RA_RUTA,HIST_RA_IDALMACEN) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (HIST_RA_OBJMES,HIST_RA_VENTA,HIST_RA_TENDENCIA,HIST_RA_ALCANCE,HISR_RA_DRAOBJ,HIST_RA_DRAVTA,HIST_RA_DSOBJ,HIST_RA_DSVTA,HIST_RA_VPOOBJ,HIST_RA_VPOVTA,HIST_RA_CTES,HIST_RA_COBCCC,HIST_RA_ECO,HIST_RA_VISITPLAN,HIST_RA_VISIREAL,HIST_RA_COBVISIT,HIST_RA_FRECCOMPOBJ,HIST_RA_FRECCOMREAL,HIST_RA_VENTAMES1,HIST_RA_VENTAMES2,HIST_RA_VENTAMES3,HIST_RA_VENTAMES4,HIST_RA_RECHAZO,HIST_RA_RECHAZOPORCEN,HIST_RA_SEMANA1,HIST_RA_SEMANA1_DIAS,HIST_RA_SEMANA1_DRA,HIST_RA_SEMANA2,HIST_RA_SEMANA2_DIAS,HIST_RA_SEMANA2_DRA,HIST_RA_SEMANA3,HIST_RA_SEMANA3_DIAS,HIST_RA_SEMANA3_DRA,HIST_RA_SEMANA4,HIST_RA_SEMANA4_DIAS,HIST_RA_SEMANA4_DRA,HIST_RA_SEMANA5,HIST_RA_SEMANA5_DIAS,HIST_RA_SEMANA5_DRA,HIST_RA_SEMANA1_LPT,HIST_RA_SEMANA2_LPT,HIST_RA_SEMANA3_LPT,HIST_RA_SEMANA4_LPT,HIST_RA_SEMANA5_LPT,HIST_RA_RUTA,HIST_RA_IDALMACEN)) +' ' Msgbox("pasa","alo") +' Next +' Listo1 = 1 +' S_CC.Text = "LISTO" +'' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Resumen Actualizado." , True) +' End If +' End If If Job.JobName = "DBRequest" Then Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) @@ -1447,17 +1449,17 @@ Sub JobDone(Job As HttpJob) End If End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) - If RESULT.Tag = "CAT_VERIFICACION" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD")) - Dim CAT_VE_NOMBRE As String = records(RESULT.Columns.Get("CAT_VE_NOMBRE")) - Dim CAT_VE_ORDEN As String = records(RESULT.Columns.Get("CAT_VE_ORDEN")) - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE, CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE, CAT_VE_ORDEN)) - Next - End If - End If +' If Job.JobName = "DBRequest" Then +' Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) +' If RESULT.Tag = "CAT_VERIFICACION" Then 'query tag +' For Each records() As Object In RESULT.Rows +' Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD")) +' Dim CAT_VE_NOMBRE As String = records(RESULT.Columns.Get("CAT_VE_NOMBRE")) +' Dim CAT_VE_ORDEN As String = records(RESULT.Columns.Get("CAT_VE_ORDEN")) +' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE, CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE, CAT_VE_ORDEN)) +' Next +' End If +' End If If Job.JobName = "DBRequest" Then Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) @@ -1470,28 +1472,28 @@ Sub JobDone(Job As HttpJob) End If End If - 'CUOTAS - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) - If RESULT.Tag = "CUOTAS" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim HC_RUTA As String = records(RESULT.Columns.Get("HC_RUTA")) - Dim HC_CUOTA1 As String = records(RESULT.Columns.Get("HC_CUOTA1")) - Dim HC_CUOTA2 As String = records(RESULT.Columns.Get("HC_CUOTA2")) - Dim HC_CUOTA3 As String = records(RESULT.Columns.Get("HC_CUOTA3")) - Dim HC_CUOTA4 As String = records(RESULT.Columns.Get("HC_CUOTA4")) - Dim HC_CUOTA5 As String = records(RESULT.Columns.Get("HC_CUOTA5")) - Dim HC_CUOTA6 As String = records(RESULT.Columns.Get("HC_CUOTA6")) - Dim HC_META1 As String = records(RESULT.Columns.Get("HC_META1")) - Dim HC_META2 As String = records(RESULT.Columns.Get("HC_META2")) - Dim HC_META3 As String = records(RESULT.Columns.Get("HC_META3")) - Dim HC_META4 As String = records(RESULT.Columns.Get("HC_META4")) - Dim HC_META5 As String = records(RESULT.Columns.Get("HC_META5")) - Dim HC_META6 As String = records(RESULT.Columns.Get("HC_META6")) - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_CUOTAS(HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6)) - Next - End If - End If +' 'CUOTAS +' If Job.JobName = "DBRequest" Then +' Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) +' If RESULT.Tag = "CUOTAS" Then 'query tag +' For Each records() As Object In RESULT.Rows +' Dim HC_RUTA As String = records(RESULT.Columns.Get("HC_RUTA")) +' Dim HC_CUOTA1 As String = records(RESULT.Columns.Get("HC_CUOTA1")) +' Dim HC_CUOTA2 As String = records(RESULT.Columns.Get("HC_CUOTA2")) +' Dim HC_CUOTA3 As String = records(RESULT.Columns.Get("HC_CUOTA3")) +' Dim HC_CUOTA4 As String = records(RESULT.Columns.Get("HC_CUOTA4")) +' Dim HC_CUOTA5 As String = records(RESULT.Columns.Get("HC_CUOTA5")) +' Dim HC_CUOTA6 As String = records(RESULT.Columns.Get("HC_CUOTA6")) +' Dim HC_META1 As String = records(RESULT.Columns.Get("HC_META1")) +' Dim HC_META2 As String = records(RESULT.Columns.Get("HC_META2")) +' Dim HC_META3 As String = records(RESULT.Columns.Get("HC_META3")) +' Dim HC_META4 As String = records(RESULT.Columns.Get("HC_META4")) +' Dim HC_META5 As String = records(RESULT.Columns.Get("HC_META5")) +' Dim HC_META6 As String = records(RESULT.Columns.Get("HC_META6")) +' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_CUOTAS(HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6)) +' Next +' End If +' End If 'COMISIONES If Job.JobName = "DBRequest" Then @@ -1917,13 +1919,13 @@ Sub JobDone(Job As HttpJob) If Job.JobName = "DBRequest" Then Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) - If RESULT.Tag = "folio" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim FOLIO As String = records(RESULT.Columns.Get("FOLIO")) - B4XPages.MainPage.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FOLIO")) - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO)) - Next - End If +' If RESULT.Tag = "folio" Then 'query tag +' For Each records() As Object In RESULT.Rows +' Dim FOLIO As String = records(RESULT.Columns.Get("FOLIO")) +' B4XPages.MainPage.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FOLIO")) +' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO)) +' Next +' End If If RESULT.Tag = "hist_pro2265" Then 'query tag Starter.skmt.ExecNonQuery("delete from HIST_PRO2265") @@ -1942,7 +1944,18 @@ Sub JobDone(Job As HttpJob) For Each records() As Object In RESULT.Rows Starter.skmt.ExecNonQuery2("INSERT INTO HIST_PRO3055(H_IDCLIENTE) VALUES (?)", Array As Object (records(RESULT.Columns.Get("HVD_CLIENTE")))) Next - End If + End If + If RESULT.Tag = "traeVersion" Then 'query tag + For Each records() As Object In RESULT.Rows + Private version As String = records(RESULT.Columns.Get("CAT_AL_VERSION")) + Private actualizarAplicacion As String = records(RESULT.Columns.Get("CAT_AL_ACTUALIZACION")) + Next + Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("VERSION_NUEVA")) + Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("VERSION_NUEVA", version)) + Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FORZAR_ACTUALIZACION")) + Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FORZAR_ACTUALIZACION", actualizarAplicacion)) + Log($">>>> GUARDAMOS NUEVA VERSION: ${version}, ${actualizarAplicacion}"$) + End If End If End If @@ -1965,79 +1978,84 @@ Sub connecta_Click Log(">>> REVISAMOS ACTUALIZACION") Private revisaActualizacion As Map = Subs.revisaForzarActualizacion Log(revisaActualizacion) - If e_ruta.Text = "KMTS1" Then - cargar.Visible = True - Subir.Visible = True - e_ruta.Text = "" - B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) + If E_RUTA2.Text = e_ruta.Text Then + Msgbox("La ruta principal y la de suplencia NO puede ser la misma.","ERROR") Else - If revisaActualizacion.Get("forzar") = 1 Then ' Hay actualización, la forzamos. + If e_ruta.Text = "KMTS1" Then + cargar.Visible = True + Subir.Visible = True + e_ruta.Text = "" + B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) + Else + If revisaActualizacion.Get("forzar") = 1 Then ' Hay actualización, la forzamos. ' Starter.newApp.appLink = $"https://keymon.lat/movil/guna/GP_${revisaActualizacion.Get("nuevaVersion")}.apk"$ 'Liga a nuevo apk ' Starter.newApp.newMsg = "Nueva version" 'Texto de que hay actualizacion ' Starter.newApp.okMsg = "Aceptar" 'Texto de app al corriente ' Starter.newApp.version = revisaActualizacion.Get("nuevaVersion") 'Version actual - l_forzarActualizacion.TextColor = Colors.black - l_forzarActualizacion.Text = "Hay una nueva actualización para la aplicación, por favor revise que tenga DATOS y espere mientras se descarga." - p_transparenteActualizacion.Visible = True - p_transparenteActualizacion.BringToFront - Starter.nuevoLink = $"https://keymon.lat/movil/guna/GP_${revisaActualizacion.Get("nuevaVersion")}.apk"$ - Log("Descargar: GP_" & Starter.newApp.appLink) - CallSubDelayed(appUpdater, "download_newApk") - else if revisaActualizacion.Get("forzar") = 2 Then ' No hay datos, regresamos al login y borramos usuario par que traiga los datos. - l_forzarActualizacion.TextColor = Colors.red - l_forzarActualizacion.Text = "Es necesaria una conexión a internet, por favor revise su conexión y vuelva a intentar." - p_transparenteActualizacion.Visible = True - p_transparenteActualizacion.BringToFront - Sleep(4500) - Starter.skmt.ExecNonQuery("delete from usuarioa") - p_transparenteActualizacion.Visible = False - B4XPages.ShowPage("Login") - Else ' No hay actualización, continuamos con la carga. - p_transparenteActualizacion.Visible = False - B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) - teclado.HideKeyboard - connecta1 = connecta1 + 1 - 'imei = p.GetDeviceId - conn = "1" - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_version_GV2" - B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "version") - ' Cuando nos conectamos verificamos que el usuario guardado en BD sea VALIDO. - c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO, PASS from usuarioa") - c.Position=0 - If c.RowCount > 0 And c.GetString("USUARIO") <> "KMTS1" Then - Private usrT As String = c.GetString("USUARIO") - Private passT As String = c.GetString("PASS") + l_forzarActualizacion.TextColor = Colors.black + l_forzarActualizacion.Text = "Hay una nueva actualización para la aplicación, por favor revise que tenga DATOS y espere mientras se descarga." + p_transparenteActualizacion.Visible = True + p_transparenteActualizacion.BringToFront + Starter.nuevoLink = $"https://keymon.lat/movil/guna/GP_${revisaActualizacion.Get("nuevaVersion")}.apk"$ + Log("Descargar: GP_" & Starter.newApp.appLink) + CallSubDelayed(appUpdater, "download_newApk") + else if revisaActualizacion.Get("forzar") = 2 Then ' No hay datos, regresamos al login y borramos usuario par que traiga los datos. + l_forzarActualizacion.TextColor = Colors.red + l_forzarActualizacion.Text = "Es necesaria una conexión a internet, por favor revise su conexión y vuelva a intentar." + p_transparenteActualizacion.Visible = True + p_transparenteActualizacion.BringToFront + Sleep(4500) + Starter.skmt.ExecNonQuery("delete from usuarioa") + p_transparenteActualizacion.Visible = False + B4XPages.ShowPage("Login") + Else ' No hay actualización, continuamos con la carga. + p_transparenteActualizacion.Visible = False + B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) + teclado.HideKeyboard + connecta1 = connecta1 + 1 + 'imei = p.GetDeviceId + conn = "1" + Dim cmd As DBCommand cmd.Initialize - cmd.Name = "select_usuario_guna_GV2_10" - cmd.Parameters = Array As Object(usrT, passT) - B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "usuarioA") - End If - c.Close - If e_ruta.Text = "BERNA1" Then - cargar.Visible = True - Subir.Visible = True - e_ruta.Text = "" - End If - ToastMessageShow("Validando Conexión." , True) - If connecta1 / 2 = 1 Then - 'SERVER = "http://177.244.63.54:1782" - 'SERVER = "http://keymon.com.mx:1782" - 'SERVER = "http://201.99.139.28:1782" + cmd.Name = "select_version_GV2" + B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "version") + ' Cuando nos conectamos verificamos que el usuario guardado en BD sea VALIDO. + c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO, PASS from usuarioa") + c.Position=0 + If c.RowCount > 0 And c.GetString("USUARIO") <> "KMTS1" Then + Private usrT As String = c.GetString("USUARIO") + Private passT As String = c.GetString("PASS") + cmd.Initialize + cmd.Name = "select_usuario_guna_GV2_10" + cmd.Parameters = Array As Object(usrT, passT) + B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "usuarioA") + End If + c.Close + If e_ruta.Text = "BERNA1" Then + cargar.Visible = True + Subir.Visible = True + e_ruta.Text = "" + End If + ToastMessageShow("Validando Conexión." , True) + If connecta1 / 2 = 1 Then + 'SERVER = "http://177.244.63.54:1782" + 'SERVER = "http://keymon.com.mx:1782" + 'SERVER = "http://201.99.139.28:1782" ' B4XPages.MainPage.SERVER = "http://187.189.244.154:1782" ' SERVER = "http://10.0.0.205:1782" - B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) - Else - 'SERVER = "http://keymon.com.mx:1782" - 'SERVER = "http://201.99.139.28:1782" - 'SERVER = "http://177.244.63.54:1782" + B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) + Else + 'SERVER = "http://keymon.com.mx:1782" + 'SERVER = "http://201.99.139.28:1782" + 'SERVER = "http://177.244.63.54:1782" ' B4XPages.MainPage.SERVER = "http://187.189.244.154:1782" ' SERVER = "http://10.0.0.205:1782" - B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) + B4XPages.MainPage.reqManager.Initialize(Me, Starter.server) + End If End If End If End If + End Sub Sub BUSCA_Click @@ -2081,10 +2099,13 @@ Sub t2_tick B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("FORZAR_ACTUALIZACION")) B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("VERSION_NUEVA")) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE GPS SET HABILITADO = (?)",Array As Object(0)) - B4XPage_Appear +' B4XPage_Appear E_RUTA2.Visible = False E_RUTA2.Text = "" - + cargar.Visible = False + Subir.Visible = False + connecta.Visible = True + B4XPages.ShowPage("Login") ' If PB2.Progress = 0 Then ' S_CP.Text = "ENVIAR DATOS (K-1)" ' End If @@ -2104,7 +2125,7 @@ Sub e_ruta_EnterPressed l_rutasuplencia.Text = "" End If End If - + If e_ruta.Text = "IWL" Then ' trabajar.Visible = False NUEVO.Visible =False @@ -2552,6 +2573,17 @@ Sub e_ruta_TextChanged (Old As String, New As String) End If End Sub +Sub e_ruta2_TextChanged (Old As String, New As String) +' Dim validChars As String ="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 " +' 'Log("Antes: " & Old & " | " & New) + If New = e_ruta.text and new <> "" Then + cargar.Enabled = False + ToastMessageShow("Las rutas NO PUEDEN ser iguales!!", False) + Else + cargar.Enabled = True + End If +End Sub + Sub B_COMM_Click Btn_Ubicar.Visible=False SCROLL_RESDIA.Visible = True @@ -2690,6 +2722,17 @@ Sub B_OK_PANEL5_Click p_principal.Visible = True End Sub +Sub e_ruta_Click + Private revisaActualizacion As Map = Subs.revisaForzarActualizacion + If revisaActualizacion.Get("forzar") = 2 Then + LogColor("No hay info de versión para actualizar en CAT_VARIABLES, traemos la información!", Colors.red) + cmd.Initialize + cmd.Name = "selectVersionAppGuna" + cmd.Parameters = Array As Object(ALMACEN) + B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "traeVersion") + End If +End Sub + 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. Private Sub p_marcasRes_Click diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas index 2a42749..b8f31b8 100644 --- a/B4A/C_Productos.bas +++ b/B4A/C_Productos.bas @@ -502,10 +502,13 @@ Sub b_prodMenos_Click Dim pnl0 As B4XView = clv_productos.GetPanel(index) Dim pnl As B4XView = pnl0.GetView(0) Dim laCant As B4XView = pnl.GetView(2).GetView(3) + Dim esteTag As List = Regex.Split("\|", laCant.Tag) ' Log($"precio|stock:${laCant.tag}"$) +' laCant.Text = laCant.text.Replace (",", "") If laCant.Text = "" Then laCant.Text = 0 - laCant.Text = $"$1.0{laCant.Text-1}"$ + laCant.Text = NumberFormat2(laCant.Text - 1, 1, 0, 0, False) If laCant.Text < 0 Then laCant.Text = 0 + Subs.actualizaProducto(Subs.traeAlmacen, esteTag.Get(0), laCant.Text, Subs.traeProdNombre(esteTag.Get(2)), esteTag.Get(2), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) ' Dim chk As B4XView = pnl.GetView(2) cuentaProds End Sub @@ -517,60 +520,106 @@ Sub b_prodMas_Click Dim pnl0 As B4XView = clv_productos.GetPanel(index) Dim pnl As B4XView = pnl0.GetView(0) Dim laCant As B4XView = pnl.GetView(2).GetView(3) +' laCant.Text = laCant.text.Replace (",", "") ' Log($"precio|stock:${laCant.tag}"$) ' Log($"Indice: ${index}, cant:${laCant.Text+1}, precioU: ${laCant.tag}"$) Dim esteTag As List = Regex.Split("\|", laCant.Tag) -' Log(laCant.Tag&"|"&esteTag) +' LogColor(laCant.Tag&"|"&esteTag, Colors.Blue) If laCant.Text = "" Then laCant.Text = 0 +' Log(laCant.Text + 1 <= esteTag.get(1)) If laCant.Text + 1 <= esteTag.get(1) Then - laCant.Text = $"$1.0{laCant.Text+1}"$ + laCant.Text = NumberFormat2(laCant.Text + 1, 1, 0, 0, False) +' Subs.guardaProducto(Subs.traeAlmacen, esteTag.Get(0), laCant.Text + 1, Subs.traeProdNombre(esteTag.Get(2)), esteTag.Get(2), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) + Subs.actualizaProducto(Subs.traeAlmacen, esteTag.Get(0), laCant.Text, Subs.traeProdNombre(esteTag.Get(2)), esteTag.Get(2), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) cuentaProds End If ' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) End Sub Private Sub et_pCant_TextChanged (Old As String, New As String) -' LogColor($"txt changed: ${Old}|${New}, hasfocus=${etCantHasFocus}"$,Colors.Magenta) - If Not(Old = "0" And New = "") And etCantHasFocus Then cuentaProds + LogColor($"txt changed: ${Old}|${New}, hasfocus=${etCantHasFocus}"$,Colors.Magenta) + Try + Dim index As Int = clv_productos.GetItemFromView(Sender) + Dim pnl0 As B4XView = clv_productos.GetPanel(index) + Dim pnl As B4XView = pnl0.GetView(0) + Dim laCant As B4XView = pnl.GetView(2).GetView(3) + Dim esteTag As List = Regex.Split("\|", laCant.Tag) + If esteTag.Get(1) < new then laCant.Text = esteTag.Get(1) + If Not(Old = "0" And New = "") And etCantHasFocus Then + Log(esteTag) + Subs.actualizaProducto(Subs.traeAlmacen, esteTag.Get(0), laCant.Text, Subs.traeProdNombre(esteTag.Get(2)), esteTag.Get(2), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) + cuentaProds + End If + Catch + Log(LastException) + End Try +End Sub + +Sub et_pCant_Click + Log("et_pCant clicked") + etCantHasFocus = True ' Si se cambia la cantidad con los botnes y luego se regresa a editar la cantidad, el "focus" no cambia, con esto si forza el etCantHasFocus a verdadero. +End Sub + +Private Sub et_pCant_FocusChanged (HasFocus As Boolean) + LogColor($"focus changed=${HasFocus}"$, Colors.Magenta) + etCantHasFocus = HasFocus + If HasFocus Then + Dim index As Int = clv_productos.GetItemFromView(Sender) + Dim pnl0 As B4XView = clv_productos.GetPanel(index) + Dim pnl As B4XView = pnl0.GetView(0) + Dim laCant As B4XView = pnl.GetView(2).GetView(3) + Dim esteTag As List = Regex.Split("\|", laCant.Tag) + Log(esteTag) + Log(laCant.text) + Subs.actualizaProducto(Subs.traeAlmacen, esteTag.Get(0), laCant.Text, Subs.traeProdNombre(esteTag.Get(2)), esteTag.Get(2), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) + cuentaProds + End If End Sub Sub cuentaProds Log("-= CUENTAPRODS =-") - totalProds = 0 - totalCompra = 0 -' Private inicioContador As String = DateTime.Now - For i = 0 To clv_productos.GetSize - 1 - Private p0 As B4XView = clv_productos.GetPanel(i) - Private p As B4XView = p0.GetView(0) - Private cant1 As B4XView = p.GetView(2).GetView(3) - If cant1.Text = "" Then cant1.Text = 0 -' Private cant2 As Int = 0 -' If cant1.Text <> "" Then cant2 = cant1.Text - totalProds = totalProds + cant1.Text - Private esteTag As List = Regex.Split("\|", cant1.Tag) - If cant1.Text > esteTag.Get(1) Then cant1.Text = esteTag.Get(1) - If cant1.Text > 0 Then - Log(esteTag.Get(2) & "|" & cant1.Text) - totalCompra = totalCompra + (esteTag.get(0) * cant1.text) - Log($"Cant: ${cant1.Text}, Suma: ${totalCompra}"$) - Private m As Map - m=CreateMap("cant":cant1.Text, "precio":esteTag.get(0)) - prodsMap.Put(esteTag.Get(2), m) - Log("-= Agregamos producto =-") - Else - prodsMap.Remove(esteTag.Get(2)) - Log("-= Quitamos producto =-") - End If - l_total.Visible = True - l_totProds.Visible = True - l_total.Text = $"Total: $$1.2{totalCompra}"$ - l_totProds.text = $"Prods: ${totalProds}"$ - Next +' totalProds = 0 +' totalCompra = 0 +'' Private inicioContador As String = DateTime.Now +' For i = 0 To clv_productos.GetSize - 1 +' Private p0 As B4XView = clv_productos.GetPanel(i) +' Private p As B4XView = p0.GetView(0) +' Private cant1 As B4XView = p.GetView(2).GetView(3) +' If cant1.Text = "" Then cant1.Text = 0 +'' Private cant2 As Int = 0 +'' If cant1.Text <> "" Then cant2 = cant1.Text +'' Private laCant As Int = cant1.text.Replace (",", "") +'' cant1.Text = cant1.text +'' cant1.Text = laCant +' Log($"${totalProds}, ${cant1.text}, ${cant1.text}"$) +' totalProds = totalProds + cant1.text +' Private esteTag As List = Regex.Split("\|", cant1.Tag) +' If cant1.Text > esteTag.Get(1) Then +' Log(123) +' cant1.Text = esteTag.Get(1) +' End If +' If cant1.Text > 0 Then +' Log(esteTag.Get(2) & "|" & cant1.Text) +' totalCompra = totalCompra + (esteTag.get(0) * cant1.text) +' Log($"Cant: ${cant1.Text}, Suma: ${totalCompra}"$) +' Private m As Map +' m=CreateMap("cant":cant1.Text, "precio":esteTag.get(0)) +' prodsMap.Put(esteTag.Get(2), m) +' Log("-= Agregamos producto =-") +' Else +' prodsMap.Remove(esteTag.Get(2)) +' Log("-= Quitamos producto =-") +' End If +' l_total.Visible = True +' l_totProds.Visible = True +' l_total.Text = $"Total: $$1.2{totalCompra}"$ +' l_totProds.text = $"Prods: ${totalProds}"$ +' Next ' LogColor("TIEMPO cuentaProds -=" & ((DateTime.Now-inicioContador)/1000), Colors.Red) ' Subs.revisaPromoProcterPRO3009(prodsMap) - LogColor(prodsMap, Colors.blue) - p_botonesVenta.Visible = True - Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) +' LogColor(prodsMap, Colors.blue) + If Subs.hayPedido Then p_botonesVenta.Visible = True +' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) End Sub Sub ponProdsEnCero @@ -606,22 +655,17 @@ Sub ponProdsEnCero Log("Ponems en CERO") End Sub -Private Sub et_pCant_FocusChanged (HasFocus As Boolean) -' LogColor($"focus changed=${HasFocus}"$, Colors.Magenta) - etCantHasFocus = HasFocus - cuentaProds -End Sub - Private Sub b_terminar1_Click Log("b_terminar1_Click") - cuentaProds - Private p1 As Map - For Each p As String In prodsMap.Keys - p1 = prodsMap.Get(p) - Log(p & "|" & p1) - Private pn As String = Subs.traeProdNombre(p) - Subs.guardaProducto(Subs.traeAlmacen, p1.Get("precio"), p1.Get("cant"), pn, p, Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) - Next +' cuentaProds +' Private p1 As Map +' For Each p As String In prodsMap.Keys +' p1 = prodsMap.Get(p) +' Log(p & "|" & p1) +' Private pn As String = Subs.traeProdNombre(p) +' Subs.guardaProducto(Subs.traeAlmacen, p1.Get("precio"), p1.Get("cant"), pn, p, Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) +' Next + etCantHasFocus = False ya_entro = "0" : Log("ya_entro=1") lv_promos.Visible = False clv_productos.AsView.Visible = False @@ -654,16 +698,16 @@ End Sub Private Sub b_continuar_Click Log("b_continuar_Click") - cuentaProds - Private p1 As Map - For Each p As String In prodsMap.Keys - p1 = prodsMap.Get(p) - Log(p & "|" & p1) - Private pn As String = Subs.traeProdNombre(p) - If pn <> "N/A" Then - Subs.guardaProducto(Subs.traeAlmacen, p1.Get("precio"), p1.Get("cant"), pn, p, Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) - End If - Next +' cuentaProds +' Private p1 As Map +' For Each p As String In prodsMap.Keys +' p1 = prodsMap.Get(p) +' Log(p & "|" & p1) +' Private pn As String = Subs.traeProdNombre(p) +' If pn <> "N/A" Then +' Subs.guardaProducto(Subs.traeAlmacen, p1.Get("precio"), p1.Get("cant"), pn, p, Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta) +' End If +' Next Log("promos-inv, prods-inv, cat-vis") lv_promos.Visible = False clv_productos.AsView.Visible = False diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal index d86ef2c..f4fa29b 100644 Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ diff --git a/B4A/Files/nota.bal b/B4A/Files/nota.bal index 4b64986..e94ebdb 100644 Binary files a/B4A/Files/nota.bal and b/B4A/Files/nota.bal differ diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal index 417d783..38b827f 100644 Binary files a/B4A/Files/principal.bal and b/B4A/Files/principal.bal differ diff --git a/B4A/Files/proditem.bal b/B4A/Files/proditem.bal index 2020fea..8f43a06 100644 Binary files a/B4A/Files/proditem.bal and b/B4A/Files/proditem.bal differ diff --git a/B4A/Guna Vistas V3.1.b4a b/B4A/Guna Vistas V3.1.b4a index eb2282c..e14f685 100644 --- a/B4A/Guna Vistas V3.1.b4a +++ b/B4A/Guna Vistas V3.1.b4a @@ -251,7 +251,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Guna Preventa #VersionCode: 1 - #VersionName: 4.10.19 + #VersionName: 4.10.21 '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 3662bf7..c5931f7 100644 --- a/B4A/Guna Vistas V3.1.b4a.meta +++ b/B4A/Guna Vistas V3.1.b4a.meta @@ -66,7 +66,7 @@ ModuleClosedNodes2= ModuleClosedNodes20= ModuleClosedNodes21= ModuleClosedNodes22=3,4 -ModuleClosedNodes23=1 +ModuleClosedNodes23=1,3,4,5,6,7,8,9 ModuleClosedNodes24= ModuleClosedNodes25= ModuleClosedNodes3= @@ -76,6 +76,6 @@ ModuleClosedNodes6=8,9,10,11 ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=Main,Process_Globals,21,0,C_Principal,Class_Globals,21,0,C_Principal,connecta_Click,1959,1,Subs,importaBDDesdeWhatsApp,1566,0,Subs,revisaForzarActualizacion,1516,0,B4XMainPage,B4XPage_Created,98,2,B4XMainPage,B4XPage_Appear,350,0,B4XMainPage,Entrar_Click,423,2,B4XMainPage,JobDone,557,0,Main,Globals,22,0 +NavigationStack=C_Principal,B4XPage_Appear,337,6,C_Principal,e_ruta2_TextChanged,2568,4,C_Principal,cargar_Click,1068,4,C_Principal,Subir_Click,531,0,C_Cliente,b_Inicio_Fin_venta_Click,4744,0,C_Cliente,B4XPage_Created,445,0,C_Principal,e_ruta_EnterPressed,2106,0,C_Principal,t2_tick,2101,6,Subs,traeProdNombre,658,0,Subs,traeRuta,672,6 SelectedBuild=0 -VisibleModules=23,2,24,13,1,14,4 +VisibleModules=23,2,24,13,14,4,25,9,19 diff --git a/B4A/Starter.bas b/B4A/Starter.bas index dcf6413..4ebb3bc 100644 --- a/B4A/Starter.bas +++ b/B4A/Starter.bas @@ -66,7 +66,6 @@ Private Sub BTAdmin_StateChanged (NewState As Int, OldState As Int) ' StateChanged End Sub - Sub Service_Start (StartingIntent As Intent) Service.StopAutomaticForeground 'Starter service can start in the foreground state in some edge cases. Subs.revisaBD @@ -112,7 +111,7 @@ Sub ENVIA_ULTIMA_GPS cmd.Name = "UPDATE_GUNA_ACTUAL2_GPS" cmd.Parameters = Array As Object(B4XPages.MainPage.montoActual, B4XPages.MainPage.clientestotal, B4XPages.MainPage.clientesventa,B4XPages.MainPage.clientesvisitados,B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,B4XPages.MainPage.batt,0, 0, 0,B4XPages.MainPage.ALMACEN,B4XPages.MainPage.rutapreventa) ' Log($"montoActual: ${B4XPages.MainPage.montoActual}, cTotal: ${B4XPages.MainPage.clientestotal}, cVenta: ${B4XPages.MainPage.clientesventa}, cVisitados: ${B4XPages.MainPage.clientesvisitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, 0, 0, 0, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$) - reqManager.ExecuteCommand(cmd, "inst_visitas") + reqManager.ExecuteCommand(cmd, "actualizaUltimaGPS") skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) 'Reiniciamos el timer para cuando llamamos el Sub desde "seleccion" Timer1.Enabled = False @@ -138,4 +137,19 @@ Sub Application_Error (Error As Exception, StackTrace As String) As Boolean Subs.revisaBD Subs.errorLog.ExecNonQuery2("INSERT INTO errores(fecha, error) VALUES (?,?)", Array As Object (Subs.fechaKMT(DateTime.now), logs)) Return True +End Sub + +Sub JobDone(Job As HttpJob) + Log("JOBDONE STARTER") + If Job.JobName = "DBRequest" Then + Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) + Log($"Tag: ${RESULT.tag}, success=${Job.Success}"$) + End If + 'Log(Job.Tag) + If Job.Success = False Then +' Log("JOBDONE ERROR") + LogColor("Error: " & Job.ErrorMessage, Colors.red) + Else 'If Job Success then ... +' Log("JOBDONE SUCCESS") + End If End Sub \ No newline at end of file diff --git a/B4A/Subs.bas b/B4A/Subs.bas index b25ad78..54a54a7 100644 --- a/B4A/Subs.bas +++ b/B4A/Subs.bas @@ -637,8 +637,10 @@ Sub traeAlmacen As String 'ignore Private c As Cursor Private a As String = "NA" c=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - c.Position = 0 - a = C.GetString("ID_ALMACEN") + If c.RowCount > 0 Then + c.Position = 0 + a = C.GetString("ID_ALMACEN") + End If c.Close Return a End Sub @@ -660,16 +662,29 @@ Sub traeProdNombre(id As String) As String End Sub 'Regresa la ruta actual de la base de datos. +'Si hay cliente definido (en la pantalla de cliente), trae la ruta de ese cliente, si no, trae la primera ruta de kmt_info2. (esto es por las suplencias) Sub traeRuta As String 'ignore Private c As Cursor - Private r As String - c=B4XPages.MainPage.skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)") - r = "0" - If c.RowCount > 0 Then - c.Position=0 - r = c.GetString("CAT_CL_RUTA") - End If - c.Close + Private r As String = "0" + Private idCliente As String = "" + Try + If B4XPages.MainPage.cliente.IsInitialized And B4XPages.MainPage.cliente.la_cuenta.IsInitialized Then ' Si + idCliente = B4XPages.MainPage.cliente.la_cuenta.text + End If + If idCliente <> "" Then + c = B4XPages.MainPage.skmt.ExecQuery($"select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia) and CAT_CL_CODIGO = '${idCliente}'"$) + Else + c = B4XPages.MainPage.skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)") + End If +' Log(c.RowCount) + If c.RowCount > 0 Then + c.Position=0 + r = c.GetString("CAT_CL_RUTA") + End If + c.Close + Catch + Log(LastException) + End Try Return r End Sub @@ -1259,7 +1274,6 @@ Sub vendidoPromoEsp As Boolean Return w End Sub - 'En geocerca si mete la contraseña poner 0 en precision gps y si esta dentro de los 50 mts poner 1 y 2 para eventos que no lo ocupen 'Mandar fecha de sync(sysdate) Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As String, eventob As String, clienteb As String, iniciob As String, finb As String, latitudb As String, longitudb As String, precision As String, motivonoventa As String, motivonovisita As String ) @@ -1268,8 +1282,7 @@ Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As Private cmd As DBCommand cmd.Initialize cmd.Name = "mandaBitacora3_GUNA" - - Log("BITACORA3") +' Log("BITACORA3") Private nombreCliente As String = traeNombreCliente(clienteb) If eventob = "Llega a almacen" Then nombreCliente = "BOLETA" @@ -1605,4 +1618,71 @@ Sub traeUsarIntentBDWA As Boolean 'ignore End If Log($"cb_importarBDWA = ${BDWA}"$) Return BDWA +End Sub + +Sub actualizaProducto(cedis As String, costoU As String, cant As String, nombre As String, prodId As String, clienteId As String, fecha As String, usuario As String, rutaV As String, precioSin As String, tipoVenta As String) + If nombre.Length < 6 Then ToastMessageShow("(actualizaProducto) El nombre del producto no es valido " & nombre, True) + precioSin = NumberFormat2(precioSin, 1, 2, 2, False) + costoU = NumberFormat2(costoU, 1, 2, 2, False) + LogColor($"actualizaProducto, c=${clienteId}, p=${prodId}, nombre=${nombre}, cant=${cant}, cedis=${cedis}, tipo=${tipoVenta}"$, Colors.Magenta) +' Private tablaProds As String = "cat_gunaprod2" +' If tipoVenta = "ABORDO" Then tablaProds = "cat_gunaprod" + Private c As Cursor=Starter.skmt.ExecQuery($"select * from pedido where pe_cedis = '${cedis}' and pe_proid = '${prodId}' and pe_cliente = '${clienteId}'"$) + If c.RowCount > 0 Then +' LogColor("ACTUALIZAMOS PROD - " & traeTablaProds(tipoVenta), Colors.Blue) + c.Position = 0 + Private antCant As Int = 0 + If IsNumber(c.GetInt("PE_CANT")) Then antCant=c.GetInt("PE_CANT") + Private difCant As Int = cant - antCant + Starter.skmt.ExecNonQuery($"update pedido set pe_cant = ${cant}, pe_costo_tot = ${NumberFormat2((cant*c.GetString("PE_COSTOU")), 1, 2, 2, False)}, pe_folio = '${tipoVenta}' where pe_cedis = '${cedis}' and pe_proid = '${prodId}' and pe_cliente = '${clienteId}' "$) + If cedis <> "DUR" Then Starter.skmt.ExecNonQuery($"update ${traeTablaProds(tipoVenta)} set cat_gp_almacen = cat_gp_almacen - (${difCant}) where cat_gp_id = '${prodId}' "$) + If cant = 0 Then + LogColor($"BORRAMOS PRODUCTO - ${prodId}"$, Colors.Red) + Starter.skmt.ExecNonQuery($"delete from pedido where pe_cedis = '${cedis}' and pe_proid = '${prodId}' and pe_cliente = '${clienteId}' "$) + Log($"Borramos pe_cedis='${cedis}' and pe_proid='${prodId}' and pe_cliente='${clienteId}'"$) + Private pe As Cursor = Starter.skmt.ExecQuery("select count(pe_cliente) as cuantosPedidos from pedido where pe_cliente In (select cuenta from cuentaa)") + pe.Position=0 + If pe.GetString("cuantosPedidos") = 0 Then + Log("###### delete from pedido_cliente - " & traeCliente & "|" & clienteId) + Log($"delete from pedido_cliente where PC_CLIENTE = '${traeCliente}'"$) + Starter.skmt.ExecNonQuery($"delete from pedido_cliente where PC_CLIENTE = '${traeCliente}'"$) + End If + End If + Else + 'INSERTAMOS +' LogColor("INSERTAMOS PROD", Colors.red) + If cant > 0 Then guardaProductoSinGestion(cedis, costoU, cant, nombre, prodId, clienteId, fecha, usuario, rutaV, precioSin, tipoVenta) + End If + c.Close +End Sub + + +'Inserta un producto en la tabla "pedido" y "pedido_cliente" y actualiza "cat_gunaprod". +'NO ACTUALIZA LA BANDERA DE GESTION EN LA TABLA "kmt_info". +'Si "gestion=2" entonces el sistema considera que el pedido ya se guardó y ya no se debe modificar. +Sub guardaProductoSinGestion(cedis As String, costoU As String, cant As String, nombre As String, prodId As String, clienteId As String, fecha As String, usuario As String, rutaV As String, precioSin As String, tipoVenta As String) + If nombre.Length < 6 Then ToastMessageShow("(guardaProductoSinGestion) El nombre del producto no es valido " & nombre, True) + precioSin = NumberFormat2(precioSin, 1, 2, 2, False) + costoU = NumberFormat2(costoU, 1, 2, 2, False) +' LogColor("guardaProductoSinGestion: "&prodId&", cant="&cant&", tipo="&tipoVenta, Colors.Magenta) + Private c As Cursor +' Private tablaProds As String = "cat_gunaprod2" +' If tipoVenta = "ABORDO" Then tablaProds = "cat_gunaprod" + Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_RUTA, PE_COSTO_SIN, PE_FOLIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (cedis, (cant * costoU), costoU, cant, nombre, prodId, clienteId, fecha, usuario, rutaV, precioSin, tipoVenta)) + 'Actualizamos el inventario en cat_gunaprod solo si no es RMI + If cedis <> "DUR" Then Starter.skmt.ExecNonQuery2($"update ${traeTablaProds(tipoVenta)} set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? "$, Array As Object(cant, prodId)) + c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") + c.Position=0 +' Log("###### delete from pedido_cliente - " & traeCliente & "|" & clienteId) +' Log($"delete from pedido_cliente where PC_CLIENTE = '${traeCliente}'"$) + Starter.skmt.ExecNonQuery($"delete from pedido_cliente where PC_CLIENTE = '${traeCliente}'"$) + Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clienteId, fecha, usuario, c.GetString("CANT_CLIE"), c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps, cedis, rutaV, c.GetString("TOTAL_CLIE_SIN"))) +End Sub + +'Regresa la tabla de productos (cat_gunaprod o cat_gunaprod2) dependiendo del tipo de venta. +Sub traeTablaProds(tipoventa As String) As String + Private tablaProds As String = "cat_gunaprod2" + If tipoventa = "ABORDO" Or tipoventa = "PREVENTA" Then tablaProds = "cat_gunaprod" +' LogColor($"Tipo= ${tipoventa}, tabla=${tablaProds}"$, Colors.RGB(200,136,0)) + Return tablaProds End Sub \ No newline at end of file diff --git a/B4A/Tracker.bas b/B4A/Tracker.bas index ad8ae27..a7876f6 100644 --- a/B4A/Tracker.bas +++ b/B4A/Tracker.bas @@ -120,20 +120,20 @@ Private Sub CreateLocationRequest As LocationRequest lr.Initialize lr.SetInterval(10000) 'Intervalo deseado para actualizaciones de ubicacion lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion - lr.SetSmallestDisplacement(50) 'Solo registra cambio de ubicacion si es mayor a XX mts + lr.SetSmallestDisplacement(40) 'Solo registra cambio de ubicacion si es mayor a XX mts lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY) actualLR=lr Return lr End Sub Private Sub CreateLocationRequestSmallD As LocationRequest -' Log("Iniciamos CreateLocationRequestSmallD") + Log("Iniciamos CreateLocationRequestSmallD") Dim lr As LocationRequest lr.Initialize lr.SetInterval(2000) 'Intervalo deseado para actualizaciones de ubicacion lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros - lr.SetSmallestDisplacement(1) 'Solo registra cambio de ubicacion si es mayor a XX mts + lr.SetSmallestDisplacement(0) 'Solo registra cambio de ubicacion si es mayor a XX mts lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY) actualLR=lr Return lr @@ -159,7 +159,7 @@ End Sub Sub flp_LocationChanged (Location1 As Location) ' ToastMessageShow("Loc changed", False) -' Log($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$) + LogColor($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$, Colors.Red) B4XPages.MainPage.lat_gps = Location1.Latitude B4XPages.MainPage.lon_gps = Location1.Longitude UUGCoords = Location1