diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index c21b5ff..4eb2a58 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -23,46 +23,57 @@ Version=9.85 'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\ Sub Class_Globals - Private Root As B4XView - Private xui As XUI -' Private b_cargar As Button - Private b_enviar As Button + Dim Root As B4XView + Dim xui As XUI +' Dim b_cargar As Button + Dim b_enviar As Button Dim ime As IME Dim skmt As SQL Dim reqManager As DBRequestManager - Private l_pedidos2 As Label - Private l_diasVenta As Label - Private l_totalVenta As Label - Private l_cantsEnCero As Label - Private l_clienteNoNumerico As Label + Dim l_pedidos2 As Label + Dim l_diasVenta As Label + Dim l_totalVenta As Label + Dim l_cantsEnCero As Label + Dim l_clienteNoNumerico As Label Dim cuantos_pedido As String ' Dim datos_iguales As String Dim cuantos_pedidosc As String Dim cuantos_noventa As String - Dim reqsPendientes As List - Private l_ruta2 As Label +' Dim reqsPendientes As List + Dim l_ruta2 As Label Dim ruta As String = "" - Private l_usuario2 As Label + Dim l_usuario2 As Label Dim usuario As String = "" - Private l_almacen2 As Label + Dim l_almacen2 As Label Dim almacen As String = "" - Private p_progressDialog As Panel - Private l_progressDialog As Label - Private p_editaRuta As Panel - Private p_editaAlmacen As Panel - Private b_cargarBD As Button - Private p_datos As Panel - Private p_principal As Panel - Private l_appInfo As Label + Dim p_progressDialog As Panel + Dim l_progressDialog As Label + Dim p_editaRuta As Panel + Dim p_editaAlmacen As Panel + Dim b_cargarBD As Button + Dim p_datos As Panel + Dim p_principal As Panel + Dim l_appInfo As Label Dim empresa, appVersion As String - Private et_nuevaRuta As EditText - Private et_nuevoAlmacen As EditText - Private p_clientes As Panel -' Private lv_clientes As ListView - Private clv_clientes As CustomListView - Private p_item As Panel - Private l_item As Label - dim ph as Phone + Dim et_nuevaRuta As EditText + Dim et_nuevoAlmacen As EditText + Dim p_clientes As Panel +' Dim lv_clientes As ListView + Dim clv_clientes As CustomListView + Dim p_item As Panel + Dim l_item As Label + Dim i_engrane As ImageView + Dim lv_DBRServer As ListView + Dim et_server As EditText + Dim B_SERVER As Button + Dim p_engrane As Panel + Private sp_empresa As Spinner + Private p_empresa As Panel + Private p_editaUsuario As Panel + Private et_nuevoUsuario As EditText + Private b_guardaUsuario As Button + Dim c, d As Cursor + Dim foto1() As Byte End Sub Public Sub Initialize @@ -70,19 +81,30 @@ Public Sub Initialize End Sub 'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) +Sub B4XPage_Created (Root1 As B4XView) Root = Root1 Root.LoadLayout("MainPage") p_principal.Width = Root.Width p_principal.Height = Root.Height Subs.centraPanel(p_datos, Root.Width) - reqManager.Initialize(Me, "http://187.189.244.154:1782") + reqManager.Initialize(Me, "http://keymon.lat:1782") B4XPages.SetTitle(Me, "Revisión de BD") Subs.centraPanel(p_progressDialog, Root.Width) Subs.centraPanel(p_editaRuta, Root.Width) Subs.centraPanel(p_editaAlmacen, Root.Width) + Subs.centraPanel(p_editaUsuario, Root.Width) Subs.centraPanel(p_clientes, Root.Width) ime.Initialize("ime") + lv_DBRServer.AddSingleLine("http://keymon.lat:1782") + lv_DBRServer.AddSingleLine("http://40.123.36.38:1782") + et_server.Text = "http://keymon.lat:1782" + B_SERVER.Left = (Root.Width / 2) - (B_SERVER.Width / 2) + et_server.Left = (Root.Width / 2) - (et_server.Width / 2) + lv_DBRServer.Left = (Root.Width / 2) - (lv_DBRServer.Width / 2) + sp_empresa.Add("------------") + sp_empresa.Add("Mariana") + sp_empresa.Add("Guna") +' envios.Initialize End Sub 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. @@ -114,12 +136,14 @@ Sub B4XPage_Appear If File.Exists(File.DirInternal, "kmt.db") Then If Not(skmt.IsInitialized) Then skmt.Initialize(File.DirInternal,"kmt.db", True) Try - Dim ai As Cursor = skmt.ExecQuery($"select CAT_VA_DESCRIPCION, CAT_VA_VALOR from cat_variables where CAT_VA_DESCRIPCION = 'EMPRESA' or CAT_VA_DESCRIPCION = 'APP_VERSION'"$) + Dim ai As Cursor = skmt.ExecQuery($"select CAT_VA_DESCRIPCION, CAT_VA_VALOR from cat_variables where CAT_VA_DESCRIPCION = 'APP_NAME' or CAT_VA_DESCRIPCION = 'EMPRESA' or CAT_VA_DESCRIPCION = 'APP_VERSION'"$) If ai.RowCount > 1 Then For i = 0 To ai.RowCount -1 ai.Position = i If ai.GetString("CAT_VA_DESCRIPCION") = "EMPRESA" Then empresa = ai.GetString("CAT_VA_VALOR") + If ai.GetString("CAT_VA_DESCRIPCION") = "APP_NAME" Then empresa = ai.GetString("CAT_VA_VALOR") If ai.GetString("CAT_VA_DESCRIPCION") = "APP_VERSION" Then appVersion = ai.GetString("CAT_VA_VALOR") + Log(ai.GetString("CAT_VA_DESCRIPCION")) Next l_appInfo.Text = $"${empresa} ${appVersion}"$ End If @@ -130,7 +154,7 @@ Sub B4XPage_Appear End Try Try Dim c As Cursor = skmt.ExecQuery($"select count(distinct pe_cliente) as pedidos, group_concat(distinct substr(pe_fecha, 4,2)) as diasVenta, sum(pe_costo_tot) as total, (select PE_CANT from pedido where PE_CANT = 0) as cantsEnCero, (select count(distinct PE_CLIENTE) from pedido where printf("%d", PE_CLIENTE) <> PE_CLIENTE ) as clienteNoNumerico from pedido"$) - Log(c.RowCount) +' Log(c.RowCount) If c.RowCount > 0 Then c.Position = 0 l_pedidos2.Text = c.GetString("pedidos") @@ -183,159 +207,65 @@ Sub B4XPage_Appear LogColor("Error en CAT_ALMACEN", Colors.red) End Try End If -End Sub - -Private Sub b_enviar_Click - Dim resultado = Msgbox2("Se va a enviar la venta de la BD", "AVISO", "Continuar", "Cancelar", "", Null) 'ignore - If resultado = DialogResponse.POSITIVE Then - reqsPendientes.Initialize - l_progressDialog.Text = " Enviando información ..." - p_progressDialog.Visible = True - p_progressDialog.BringToFront - skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") ) - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") - ' PEDIO_CLIENTE - Dim c As Cursor = skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_FACTURA FROM PEDIDO_CLIENTE ") - Dim d As Cursor = skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedidos_MARDS" - cmd.Parameters = Array As Object(c.GetString("PC_CLIENTE"), c.GetString("PC_FECHA"), c.GetString("PC_USER"), c.GetString("PC_NOART"), c.GetString("PC_MONTO"), c.GetString("PC_LON"), c.GetString("PC_LAT"), almacen, ruta, c.GetString("PC_COSTO_SIN"), c.GetString("PC_FACTURA")) - reqManager.ExecuteCommand(cmd , "ins_pedidos_1") - reqsPendientes.Add("ins_pedidos_1") - Next - End If - c.Close - d.Position=0 -' Dim cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC") - d.Close - - ' ENVIO DE LOS CODIGOS QR - c = skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" ) - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_QR_2_MARDS" - cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"),C.GetString("CODIGOB"),C.GetString("LON"),C.GetString("LAT"),almacen, ruta) - reqManager.ExecuteCommand(cmd , "ins_QR") - reqsPendientes.Add("ins_QR") - Next - End If - c.Close - - c = skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_encuesta_MARDS" - cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO")) - reqManager.ExecuteCommand(cmd , "hist_encuesta") - reqsPendientes.Add("hist_encuesta") - Next - End If - c.Close - - c = skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO") - d = skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedido_MARDS" - cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"),almacen,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")) - reqManager.ExecuteCommand(cmd , "ins_pedido_1") - reqsPendientes.Add("ins_pedido_1") - Next - End If - c.Close - d.Position=0 - cuantos_pedido = D.GetString("CUANTOS_PEDIDO") - d.Close - - ' NOVENTA - c = skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_NOMBRE, NV_DIRECCION FROM NOVENTA") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_noventa_MARDS" - cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta,C.GetString("NV_NOMBRE"),C.GetString("NV_DIRECCION")) - reqManager.ExecuteCommand(cmd , "inst_noventa") - reqsPendientes.Add("inst_noventa") - Next - End If - c.Close - -' D = skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") -' d.Position=0 -' Dim cuantos_noventa As String = D.GetString("CUANTOS_NOVENTA") -' d.Close - - ' GEO CERCA - c=skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_geocerca_MARDS" - cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON")) - reqManager.ExecuteCommand(cmd , "inst_noventa") - Next - End If - c.Close - - ' LO DEL LIKE - c=skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_face_like_MARDS" - cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN")) - reqManager.ExecuteCommand(cmd , "inst_noventa") - Next - End If - c.Close - - ' DROP -' Dim sDate,sTime As String -' DateTime.DateFormat = "MM/dd/yyyy" -' sDate=DateTime.Date(DateTime.Now) -' sTime=DateTime.Time(DateTime.Now) -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name ="insert_drop_MARDS_2" -' cmd.Parameters = Array As Object(usuario,ruta,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen) -' reqManager.ExecuteCommand(cmd , "inst_noventa") - ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& ruta , True) + Try + usuario = Subs.traeUsuarioDeBD + almacen = Subs.traeAlmacen + ruta = Subs.traeRuta + Catch + Log(LastException) + End Try +' b_enviar.Enabled = False + If empresa.ToUpperCase = "MARIANA" Then + b_enviar.Text = "Enviar Mariana" + b_enviar.Enabled = True + else if empresa.ToUpperCase = "GUNA" Then + b_enviar.Text = "Enviar Guna" + b_enviar.Enabled = True + Else + p_empresa.Visible = True + b_enviar.Enabled = False End If End Sub +Sub b_enviar_Click + Dim resultado = Msgbox2("Se va a enviar la venta de la BD", "AVISO", "Continuar", "Cancelar", "", Null) 'ignore + If resultado = DialogResponse.POSITIVE Then + B4XPages.MainPage.l_progressDialog.Text = " Enviando información ..." + B4XPages.MainPage.p_progressDialog.Top = l_pedidos2.Top + B4XPages.MainPage.p_progressDialog.Visible = True + B4XPages.MainPage.p_progressDialog.BringToFront + + + envioMariana + End If + ToastMessageShow("Se enviaran los datos, este proceso podria tardar hasta un minuto, gracias "& ruta , True) + +' If empresa.ToUpperCase = "MARIANA" Then +' envios.envioMariana +' else if empresa.ToUpperCase = "GUNA" Then +' envios.envioGuna +' End If +End Sub + Sub JobDone(Job As HttpJob) - If Job.Success = False Then - 'ToastMessageShow("Error: " & Job.ErrorMessage, True) + If reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos. + If reqManager.reqsList.IndexOf(Job.tag) <> -1 Then + reqManager.reqsList.RemoveAt(reqManager.reqsList.IndexOf(Job.tag)) + LogColor($">>>>>> Quitamos ${Job.tag}"$, Colors.Blue) + End If + LogColor(">>>>>> " & reqManager.reqsList.Size & " - " & reqManager.reqsList, Colors.Blue) + End If + If Not(Job.Success) Then + LogColor("Error: " & Job.tag & " : " & Job.ErrorMessage, Colors.red) Else 'If Job Success then ... LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) - If Job.JobName = "DBRequest" Then - Dim resultado As DBResult = reqManager.HandleJob(Job) - reqsPendientes.RemoveAt(reqsPendientes.IndexOf(resultado.Tag)) - End If + Dim resultado As DBResult = reqManager.HandleJob(Job) If Job.JobName = "DBRequest" Then Dim resultado As DBResult = reqManager.HandleJob(Job) + If resultado.Tag.As(String).IndexOf("ins_pedido_") > -1 Then - Private cliente As String= resultado.Tag + Dim cliente As String= resultado.Tag Log($"Cliente1:${cliente}"$) For Each records() As Object In resultado.Rows For Each k As String In resultado.Columns.Keys @@ -343,13 +273,9 @@ Sub JobDone(Job As HttpJob) Next Next End If - End If - If Job.JobName = "DBRequest" Then - Dim resultado As DBResult = reqManager.HandleJob(Job) If resultado.Tag.As(String).IndexOf("hist_encuesta") > -1 Then - Private cliente As String= resultado.Tag - reqsPendientes.RemoveAt(reqsPendientes.IndexOf(resultado.Tag)) + Dim cliente As String= resultado.Tag Log($"Cliente1:${cliente}"$) For Each records() As Object In resultado.Rows For Each k As String In resultado.Columns.Keys @@ -357,98 +283,73 @@ Sub JobDone(Job As HttpJob) Next Next End If - End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedido" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP")) + If resultado.Tag = "valida_pedido" Then 'query tag + For Each records() As Object In resultado.Rows + Dim CUANTOSP As Int = records(resultado.Columns.Get("CUANTOSP")) If cuantos_pedido < = CUANTOSP Then - ' ToastMessageShow("rojo val ok 1 cuantosp." , True) -' datos_iguales = "ok" -' S_CP.Text = "INFO OK" ToastMessageShow("INFO OK", True) Else ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True) -' S_CP.Text = "ENVIAR DATOS (K-2)" ToastMessageShow("ENVIAR DATOS (K-2)", True) Log("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido) End If Next End If - End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedidoc" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CUANTOSC As Int = records(RESULT.Columns.Get("CUANTOSC")) + If resultado.Tag = "valida_pedidoc" Then 'query tag + For Each records() As Object In resultado.Rows + Dim CUANTOSC As Int = records(resultado.Columns.Get("CUANTOSC")) If cuantos_pedidosc = CUANTOSC Then - ' ToastMessageShow("rojo val ok 1 cuantosp." , True) -' datos_iguales = "ok" Else ToastMessageShow("No se cargo bien la info C. Sync Nuevamente" & CUANTOSC & " " & cuantos_pedidosc, True) Log("No se cargo bien la info C. Sync Nuevamente " & CUANTOSC & " " & cuantos_pedidosc) End If Next End If - End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_noventa" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CUANTOSN As Int = records(RESULT.Columns.Get("CUANTOSN")) + If resultado.Tag = "valida_noventa" Then 'query tag + For Each records() As Object In resultado.Rows + Dim CUANTOSN As Int = records(resultado.Columns.Get("CUANTOSN")) If cuantos_noventa = CUANTOSN Then - ' ToastMessageShow("rojo val ok 1 cuantosp." , True) -' datos_iguales = "ok" Else ToastMessageShow("No se cargo bien la info N. Sync Nuevamente" & CUANTOSN & " " & cuantos_noventa, True) Log("No se cargo bien la info N. Sync Nuevamente " & CUANTOSN & " " & cuantos_noventa) End If Next End If - End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "ins_pedido" Then 'query tag - For Each records() As Object In RESULT.Rows -' PB2.Progress = PB2.Progress + 5 -' S_CP.Text = "SUBIENDO" + If resultado.Tag = "ins_pedido" Then 'query tag + For Each records() As Object In resultado.Rows Next -' PB2.Progress = 100 -' S_CP.Text = "LISTO" Log("5") End If - End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) - If RESULT.Tag = "ins_pedido" Then 'query tag - For Each records() As Object In RESULT.Rows + If resultado.Tag = "ins_pedido" Then 'query tag + For Each records() As Object In resultado.Rows ' PB2.Progress = PB2.Progress + 5 ' S_CP.Text = "SUBIENDO" Next -' PB2.Progress = 100 -' S_CP.Text = "LISTO" -' ToastMessageShow("Listo", False) - Log("5") End If End If End If - If reqsPendientes.Size = 0 Then p_progressDialog.Visible = False + Log(reqManager.reqsList) + If reqManager.reqsList.size = 0 Then p_progressDialog.Visible = False +' If reqsPendientes.Size = 0 Then p_progressDialog.Visible = False Job.Release End Sub -Private Sub B4XPage_CloseRequest As ResumableSub - ExitApplication +Sub B4XPage_CloseRequest As ResumableSub + If p_engrane.Visible = True Then + p_engrane.Visible = False + Else + ExitApplication + End If Return False End Sub -Private Sub b_cargarBD_Click - Private FH As FileHandler +Sub b_cargarBD_Click + Dim FH As FileHandler FH.Initialize l_appInfo.Text = "" Wait For (FH.Load) Complete (Result As LoadResult) 'Abre un fileManager para seleccionar la base de datos a importar. @@ -463,21 +364,24 @@ Private Sub b_cargarBD_Click End If End Sub -Private Sub l_ruta2_LongClick +Sub l_ruta2_LongClick p_editaRuta.Top = l_ruta2.top p_editaRuta.Visible = True End Sub -Private Sub l_almacen2_LongClick +Sub l_almacen2_LongClick p_editaAlmacen.Top = l_almacen2.top p_editaAlmacen.Visible = True End Sub -Private Sub l_usuario2_LongClick +Sub l_usuario2_LongClick + p_editaUsuario.Top = l_usuario2.top + p_editaUsuario.Visible = True + Log("xxx") End Sub -Private Sub l_clienteNoNumerico_LongClick - Private c As Cursor = skmt.ExecQuery($"select distinct pe_cliente as cliente from pedido"$) +Sub l_clienteNoNumerico_LongClick + Dim c As Cursor = skmt.ExecQuery($"select distinct pe_cliente as cliente from pedido"$) If c.RowCount > 0 Then clv_clientes.Clear For i = 0 To c.RowCount - 1 @@ -490,20 +394,33 @@ Private Sub l_clienteNoNumerico_LongClick p_clientes.Visible = True End Sub -Private Sub b_guardaRuta_Click +Sub b_guardaRuta_Click + If et_nuevaRuta.Text <> "" Then + skmt.ExecNonQuery($"update pedido set pe_ruta = '${et_nuevaRuta.Text}' where pe_ruta = '${ruta}'"$) + l_ruta2.Text = et_nuevaRuta.text + End If p_editaRuta.Visible = False - skmt.ExecNonQuery($"update pedido set pe_ruta = '${et_nuevaRuta.Text}' where pe_ruta = '${ruta}'"$) - l_ruta2.Text = et_nuevaRuta.text End Sub -Private Sub b_guardaAlmacen_Click - skmt.ExecNonQuery($"delete from cat_almacen"$) - skmt.ExecNonQuery($"insert into cat_almacen (id_almacen) values ('${et_nuevoAlmacen.Text}')"$) - l_almacen2.Text = et_nuevoAlmacen.text +Sub b_guardaAlmacen_Click + If et_nuevoAlmacen.Text <> "" Then + skmt.ExecNonQuery($"delete from cat_almacen"$) + skmt.ExecNonQuery($"insert into cat_almacen (id_almacen) values ('${et_nuevoAlmacen.Text}')"$) + l_almacen2.Text = et_nuevoAlmacen.text + End If p_editaAlmacen.Visible = False End Sub -Private Sub p_principal_Click +Private Sub b_guardaUsuario_Click +' skmt.ExecNonQuery($"delete from usuarioa"$) + If et_nuevoUsuario.Text <> "" Then + skmt.ExecNonQuery($"update usuarioa set usuario = '${et_nuevoUsuario.Text}'"$) + l_usuario2.Text = et_nuevoUsuario.text + End If + p_editaUsuario.Visible = False +End Sub + +Sub p_principal_Click p_editaAlmacen.Visible = False p_editaRuta.Visible = False p_clientes.Visible = False @@ -524,4 +441,547 @@ Sub CreateListItem(mostrar As String) As Panel ' cxc.Text = mostrar3 ' Log(p.Width) Return p -End Sub \ No newline at end of file +End Sub + +Sub i_engrane_Click + Subs.panelVisible(p_engrane, 0, 0) + p_engrane.Width = Root.Width +End Sub + +Sub B_SERVER_Click + p_engrane.Visible = False + reqManager.Initialize(Me, et_server.text) +End Sub + +Sub et_server_TextChanged (Old As String, New As String) + +End Sub + +Sub lv_DBRServer_ItemClick (Position As Int, Value As Object) + et_server.Text = Value + reqManager.Initialize(Me, Value) +End Sub + +Private Sub lv_empresa_ItemClick (Position As Int, Value As Object) + empresa = Value + l_appInfo.Text = $"${empresa}"$ +End Sub + +Private Sub sp_empresa_ItemClick (Position As Int, Value As Object) + empresa = Value + If empresa <> "------------" And empresa <> "" Then + b_enviar.Enabled = True + b_enviar.Text = $"Enviar ${empresa} "$ + End If + Log(Value) +End Sub + +Sub envioMariana 'ignore +' B4XPages.MainPage.reqsPendientes.Initialize + reqManager.reqsList.Initialize 'inicializamos lista de requests. + B4XPages.MainPage.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") ) + B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") + ' PEDIO_CLIENTE + Dim c As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_FACTURA FROM PEDIDO_CLIENTE ") + Dim d As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedidos_MARDS" + cmd.Parameters = Array As Object(c.GetString("PC_CLIENTE"), c.GetString("PC_FECHA"), c.GetString("PC_USER"), c.GetString("PC_NOART"), c.GetString("PC_MONTO"), c.GetString("PC_LON"), c.GetString("PC_LAT"), almacen, ruta, c.GetString("PC_COSTO_SIN"), c.GetString("PC_FACTURA")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_pedidos_${i}"$) +' B4XPages.MainPage.reqsPendientes.Add("ins_pedidos_1") + Next + End If + c.Close + d.Position=0 +' Dim cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC") + d.Close + + ' ENVIO DE LOS CODIGOS QR + c = B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" ) + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_2_MARDS" + cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"),C.GetString("CODIGOB"),C.GetString("LON"),C.GetString("LAT"),almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_QR_${i}"$) +' B4XPages.MainPage.reqsPendientes.Add("ins_QR") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_encuesta_MARDS" + cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_encuesta_${i}"$) +' B4XPages.MainPage.reqsPendientes.Add("hist_encuesta") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO") + d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedido_MARDS" + cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"),almacen,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_pedido_${i}"$) +' B4XPages.MainPage.reqsPendientes.Add("ins_pedido_1") + Next + End If + c.Close + d.Position=0 + B4XPages.MainPage.cuantos_pedido = D.GetString("CUANTOS_PEDIDO") + d.Close + + ' NOVENTA + c = B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_NOMBRE, NV_DIRECCION FROM NOVENTA") + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_noventa_MARDS" + cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta,C.GetString("NV_NOMBRE"),C.GetString("NV_DIRECCION")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_noventa_${i}"$) +' B4XPages.MainPage.reqsPendientes.Add("inst_noventa") + Next + End If + c.Close + +' D = skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") +' d.Position=0 +' Dim cuantos_noventa As String = D.GetString("CUANTOS_NOVENTA") +' d.Close + + ' GEO CERCA + c=B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA") + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_geocerca_MARDS" + cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_geocerca") + Next + End If + c.Close + + ' LO DEL LIKE + c=B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE") + If c.RowCount>0 Then + For i=0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_face_like_MARDS" + cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_facelike") + Next + End If + c.Close + + ' DROP +' Dim sDate,sTime As String +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name ="insert_drop_MARDS_2" +' cmd.Parameters = Array As Object(usuario,ruta,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen) +' reqManager.ExecuteCommand(cmd , "inst_noventa") +End Sub + +Sub envioIntmex 'ignore + Private PASO As Int = 1 + reqManager.reqsList.Initialize 'inicializamos lista de requests. + If PASO = 1 Then + B4XPages.MainPage.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") ) + B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") + ' PEDIO_CLIENTE + c=B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_FACTURA FROM PEDIDO_CLIENTE ") + d=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedidos_INTMEX" + cmd.Parameters = Array As Object(c.GetString("PC_CLIENTE"), c.GetString("PC_FECHA"), c.GetString("PC_USER"), c.GetString("PC_NOART"), c.GetString("PC_MONTO"), c.GetString("PC_LON"), c.GetString("PC_LAT"), almacen, ruta, c.GetString("PC_COSTO_SIN"), c.GetString("PC_FACTURA")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedidos") + Next + End If + c.Close + d.Position=0 + cuantos_pedidosc = D.GetString("CUANTOS_PEDIDOSC") + d.Close + + ' ENVIO DE LOS CODIGOS QR + 'c=skmt.ExecQuery2("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO = ?", Array As String("OK")) + + + c=B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" ) + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_2_INTMEX" + cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"), C.GetString("CODIGOB"), C.GetString("LON"), C.GetString("LAT"), almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") + Next + End If + c.Close + + + c=B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO IS NOT NULL") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + foto1 = c.GetBlob("CAT_CL_FOTO") + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_INTMEX" + cmd.Parameters = Array As Object(C.GetString("CAT_CL_NUM_SERIEFISICO"), C.GetString("CAT_CL_CODIGO"), C.GetString("CAT_CL_LONG"), C.GetString("CAT_CL_LAT"), almacen, ruta, foto1 ) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") + Next + End If + c.Close + + c=B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_encuesta_INTMEX" + cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + c=B4XPages.MainPage.skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO") + d=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedido_INTMEX" + cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"),almacen,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido") + Next + End If + c.Close + d.Position=0 + cuantos_pedido = D.GetString("CUANTOS_PEDIDO") + d.Close + + ' NOVENTA + c=B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA") + D=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_noventa_INTMEX" + cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + d.Position=0 + cuantos_noventa = D.GetString("CUANTOS_NOVENTA") + d.Close + + ' GEO CERCA + + c=B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_geocerca_INTMEX" + cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' LO DEL LIKE + + c=B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_face_like_INTMEX" + cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close' + ' DROP +' t1.Initialize("T1", 30000) ' 1000 = 1 second +' t1.Enabled = True +' Dim sDate,sTime As String +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name ="insert_drop_INTMEX_2" +' cmd.Parameters = Array As Object(usuario,l_ruta.Text,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen) +' B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") +' img2.Visible =True +' PORCENTAJE = Round(100/ (cuantos_noventa + cuantos_pedido + cuantos_pedidosc + 1)) +' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) + End If +End Sub + +Sub envioGuna 'ignore + Private PASO As Int = 1 + reqManager.reqsList.Initialize 'inicializamos lista de requests. + If PASO = 1 Then + B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") + ' PEDIO_CLIENTE + c = B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN FROM PEDIDO_CLIENTE ") + d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedidos_GV2" + cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"), almacen, ruta, C.GetString("PC_COSTO_SIN") ) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedidos") + Next + End If + c.Close + d.Position=0 + Private cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC") + d.Close + + ' ENVIO DE LOS CODIGOS QR + 'c=skmt.ExecQuery2("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO = ?", Array As String("OK")) + c=B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" ) + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_2_GV2" + cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"), C.GetString("CODIGOB"), C.GetString("LON"), C.GetString("LAT"), almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO IS NOT NULL") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + 's=skmt.ExecQuery2("SELECT HIST_VI_IMAGEN FROM HIST_VISITAS WHERE HIST_VI_CREDITO =?", Array As String (c.GetString("HIST_VI_CREDITO"))) + 's.Position =0 + Private foto1() As Byte = c.GetBlob("CAT_CL_FOTO") + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_GV2" + cmd.Parameters = Array As Object(C.GetString("CAT_CL_NUM_SERIEFISICO"), C.GetString("CAT_CL_CODIGO"), C.GetString("CAT_CL_LONG"), C.GetString("CAT_CL_LAT"), almacen, ruta, foto1) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_encuesta" + cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + c = B4XPages.MainPage.skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO") + d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedido_GV2" + cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"), almacen, C.GetString("PE_COSTO_TOT"), C.GetString("PE_COSTOU"), C.GetString("PE_CANT"), C.GetString("PE_PRONOMBRE"), C.GetString("PE_PROID"), C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido") + Next + End If + c.Close + d.Position=0 + Private cuantos_pedido As String = D.GetString("CUANTOS_PEDIDO") + d.Close + + ' NOVENTA + c = B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA") + D = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_noventa_GV2" + cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + d.Position = 0 + Private cuantos_noventa As String = D.GetString("CUANTOS_NOVENTA") + d.Close + + ' DATOS DE KMTS PARA EL TIPO DE ABARROTE. + '''CAT_CL_GIRO = ? WHERE CAT_CL_CODIGO = ? And CAT_CL_NOMBRE = ? kmt_info + c = B4XPages.MainPage.skmt.ExecQuery("Select CAT_CL_GIRO, CAT_CL_CODIGO from kmt_info") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_GIROS_ENC" + cmd.Parameters = Array As Object(C.GetString("CAT_CL_CODIGO"),C.GetString("CAT_CL_GIRO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' GEO CERCA + c = B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_geocerca_GV2" + cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' LO DEL LIKE + c = B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_face_like_GV2" + cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' DROP +' t1.Initialize("T1", 30000) ' 1000 = 1 second +' t1.Enabled = True +' Dim sDate,sTime As String +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name ="insert_drop_GV2_2" +' cmd.Parameters = Array As Object(usuario,l_ruta.Text,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen) +' B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") +' img2.Visible =True +' PORCENTAJE = Round(100/ (cuantos_noventa + cuantos_pedido + cuantos_pedidosc + 1)) +' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) + End If + + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO1") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO1" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO1") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6 from ENCUESTA_MODULO2") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO2" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO2") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO3") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO3" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO3") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8 from ENCUESTA_MODULO4") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO4" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO4") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO5") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO5" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO5") + Next + End If + x.Close +End Sub + +Private Sub p_empresa_Click + +End Sub + diff --git a/B4A/C_Envios.bas b/B4A/C_Envios.bas new file mode 100644 index 0000000..e7525f5 --- /dev/null +++ b/B4A/C_Envios.bas @@ -0,0 +1,391 @@ +B4A=true +Group=Default Group +ModulesStructureVersion=1 +Type=Class +Version=12.5 +@EndOfDesignText@ +Sub Class_Globals + Private Root As B4XView 'ignore + Private xui As XUI 'ignore + Private c, d As Cursor + Private usuario As String 'ignore + Private almacen As String + Private ruta As String +End Sub + +'You can add more parameters here. +Public Sub Initialize As Object + usuario = Subs.traeUsuarioDeBD + almacen = Subs.traeAlmacen + ruta = Subs.traeRuta + Return Me +End Sub + +'This event will be called once, before the page becomes visible. +Private Sub B4XPage_Created (Root1 As B4XView) + Root = Root1 + 'load the layout to Root + +End Sub + +'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. + +Sub envioMariana 'ignore + Dim resultado = Msgbox2("Se va a enviar la venta de la BD", "AVISO", "Continuar", "Cancelar", "", Null) 'ignore + If resultado = DialogResponse.POSITIVE Then +' B4XPages.MainPage.reqsPendientes.Initialize + B4XPages.MainPage.l_progressDialog.Text = " Enviando información ..." + B4XPages.MainPage.p_progressDialog.Visible = True + B4XPages.MainPage.p_progressDialog.BringToFront + B4XPages.MainPage.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") ) + B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") + ' PEDIO_CLIENTE + Dim c As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_FACTURA FROM PEDIDO_CLIENTE ") + Dim d As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedidos_MARDS" + cmd.Parameters = Array As Object(c.GetString("PC_CLIENTE"), c.GetString("PC_FECHA"), c.GetString("PC_USER"), c.GetString("PC_NOART"), c.GetString("PC_MONTO"), c.GetString("PC_LON"), c.GetString("PC_LAT"), almacen, ruta, c.GetString("PC_COSTO_SIN"), c.GetString("PC_FACTURA")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedidos_1") +' B4XPages.MainPage.reqsPendientes.Add("ins_pedidos_1") + Next + End If + c.Close + d.Position=0 +' Dim cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC") + d.Close + + ' ENVIO DE LOS CODIGOS QR + c = B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" ) + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_2_MARDS" + cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"),C.GetString("CODIGOB"),C.GetString("LON"),C.GetString("LAT"),almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") +' B4XPages.MainPage.reqsPendientes.Add("ins_QR") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_encuesta_MARDS" + cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "hist_encuesta") +' B4XPages.MainPage.reqsPendientes.Add("hist_encuesta") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO") + d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedido_MARDS" + cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"),almacen,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido_1") +' B4XPages.MainPage.reqsPendientes.Add("ins_pedido_1") + Next + End If + c.Close + d.Position=0 + B4XPages.MainPage.cuantos_pedido = D.GetString("CUANTOS_PEDIDO") + d.Close + + ' NOVENTA + c = B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_NOMBRE, NV_DIRECCION FROM NOVENTA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_noventa_MARDS" + cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta,C.GetString("NV_NOMBRE"),C.GetString("NV_DIRECCION")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") +' B4XPages.MainPage.reqsPendientes.Add("inst_noventa") + Next + End If + c.Close + +' D = skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") +' d.Position=0 +' Dim cuantos_noventa As String = D.GetString("CUANTOS_NOVENTA") +' d.Close + + ' GEO CERCA + c=B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_geocerca_MARDS" + cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' LO DEL LIKE + c=B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_face_like_MARDS" + cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' DROP +' Dim sDate,sTime As String +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name ="insert_drop_MARDS_2" +' cmd.Parameters = Array As Object(usuario,ruta,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen) +' reqManager.ExecuteCommand(cmd , "inst_noventa") + ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& ruta , True) + End If +End Sub + +Sub envioGuna 'ignore + Private PASO As Int = 1 + 'End If + If PASO = 1 Then + B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") + ' PEDIO_CLIENTE + c = B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN FROM PEDIDO_CLIENTE ") + d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedidos_GV2" + cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"), almacen, ruta, C.GetString("PC_COSTO_SIN") ) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedidos") + Next + End If + c.Close + d.Position=0 + Private cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC") 'ignore + d.Close + + ' ENVIO DE LOS CODIGOS QR + 'c=skmt.ExecQuery2("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO = ?", Array As String("OK")) + c=B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" ) + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_2_GV2" + cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"), C.GetString("CODIGOB"), C.GetString("LON"), C.GetString("LAT"), almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO IS NOT NULL") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + 's=skmt.ExecQuery2("SELECT HIST_VI_IMAGEN FROM HIST_VISITAS WHERE HIST_VI_CREDITO =?", Array As String (c.GetString("HIST_VI_CREDITO"))) + 's.Position =0 + Private foto1() As Byte = c.GetBlob("CAT_CL_FOTO") + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_QR_GV2" + cmd.Parameters = Array As Object(C.GetString("CAT_CL_NUM_SERIEFISICO"), C.GetString("CAT_CL_CODIGO"), C.GetString("CAT_CL_LONG"), C.GetString("CAT_CL_LAT"), almacen, ruta, foto1) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR") + Next + End If + c.Close + + c = B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_encuesta" + cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + c = B4XPages.MainPage.skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO") + d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedido_GV2" + cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"), almacen, C.GetString("PE_COSTO_TOT"), C.GetString("PE_COSTOU"), C.GetString("PE_CANT"), C.GetString("PE_PRONOMBRE"), C.GetString("PE_PROID"), C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido") + Next + End If + c.Close + d.Position=0 + Private cuantos_pedido As String = D.GetString("CUANTOS_PEDIDO") 'ignore + d.Close + + ' NOVENTA + c = B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA") + D = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_noventa_GV2" + cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + d.Position = 0 + Private cuantos_noventa As String = D.GetString("CUANTOS_NOVENTA") 'ignore + d.Close + + ' DATOS DE KMTS PARA EL TIPO DE ABARROTE. + '''CAT_CL_GIRO = ? WHERE CAT_CL_CODIGO = ? And CAT_CL_NOMBRE = ? kmt_info + c = B4XPages.MainPage.skmt.ExecQuery("Select CAT_CL_GIRO, CAT_CL_CODIGO from kmt_info") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_GIROS_ENC" + cmd.Parameters = Array As Object(C.GetString("CAT_CL_CODIGO"),C.GetString("CAT_CL_GIRO")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' GEO CERCA + c = B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_geocerca_GV2" + cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' LO DEL LIKE + c = B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_face_like_GV2" + cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") + Next + End If + c.Close + + ' DROP +' t1.Initialize("T1", 30000) ' 1000 = 1 second +' t1.Enabled = True +' Dim sDate,sTime As String +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name ="insert_drop_GV2_2" +' cmd.Parameters = Array As Object(usuario,l_ruta.Text,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen) +' B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa") +' img2.Visible =True +' PORCENTAJE = Round(100/ (cuantos_noventa + cuantos_pedido + cuantos_pedidosc + 1)) +' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) + End If + + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO1") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO1" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO1") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6 from ENCUESTA_MODULO2") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO2" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO2") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO3") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO3" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO3") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8 from ENCUESTA_MODULO4") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO4" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO4") + Next + End If + x.Close + Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO5") + If x.RowCount>0 Then + For i=0 To x.RowCount -1 + x.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_ENCUESTA_MODULO5" + cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9")) + B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO5") + Next + End If + x.Close +End Sub \ No newline at end of file diff --git a/B4A/DBCheck.b4a b/B4A/DBCheck.b4a index c6aef8d..6857893 100644 --- a/B4A/DBCheck.b4a +++ b/B4A/DBCheck.b4a @@ -1,28 +1,31 @@ Build1=Default,dbcheck.keymon.lat,HU2_PUBLIC -File1=listItem.bal -File2=MainPage.bal +File1=engrane_gris.png +File2=listItem.bal +File3=MainPage.bal FileGroup1=Default Group FileGroup2=Default Group +FileGroup3=Default Group Group=Default Group -Library1=appupdating -Library10=xcustomlistview -Library2=b4xpages -Library3=byteconverter -Library4=contentresolver -Library5=core -Library6=ime -Library7=okhttputils2 -Library8=randomaccessfile -Library9=sql +Library1=b4xpages +Library10=fileprovider +Library2=byteconverter +Library3=contentresolver +Library4=core +Library5=ime +Library6=okhttputils2 +Library7=randomaccessfile +Library8=sql +Library9=xcustomlistview ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~~\n~AddActivityText(main,~\n~~\n~~\n~~\n~~\n~) Module1=B4XMainPage -Module2=DBRequestManager -Module3=FileHandler -Module4=Starter -Module5=Subs -NumberOfFiles=2 +Module2=C_Envios +Module3=DBRequestManager +Module4=FileHandler +Module5=Starter +Module6=Subs +NumberOfFiles=3 NumberOfLibraries=10 -NumberOfModules=5 +NumberOfModules=6 Version=12.5 @EndOfDesignText@ #Region Project Attributes @@ -96,3 +99,4 @@ public boolean _onCreateOptionsMenu(android.view.Menu menu) { #End Region 'Program code should go into B4XMainPage and other pages. + diff --git a/B4A/DBCheck.b4a.meta b/B4A/DBCheck.b4a.meta index 7ff4e4a..f5da3f2 100644 --- a/B4A/DBCheck.b4a.meta +++ b/B4A/DBCheck.b4a.meta @@ -4,18 +4,21 @@ ModuleBookmarks2= ModuleBookmarks3= ModuleBookmarks4= ModuleBookmarks5= +ModuleBookmarks6= ModuleBreakpoints0= ModuleBreakpoints1= ModuleBreakpoints2= ModuleBreakpoints3= ModuleBreakpoints4= ModuleBreakpoints5= +ModuleBreakpoints6= ModuleClosedNodes0=2,6 -ModuleClosedNodes1=5,6,7 -ModuleClosedNodes2= +ModuleClosedNodes1=5,26,27 +ModuleClosedNodes2=4,5 ModuleClosedNodes3= -ModuleClosedNodes4=1 -ModuleClosedNodes5= -NavigationStack=B4XMainPage,b_guardaRuta_Click,447,6,B4XMainPage,b_guardaAlmacen_Click,456,6,B4XMainPage,l_clienteNoNumerico_LongClick,439,5,B4XMainPage,CreateListItem,472,6,B4XMainPage,p_principal_Click,466,0,B4XMainPage,B4XPage_Created,69,6,B4XMainPage,B4XPage_Appear,82,6,B4XMainPage,Class_Globals,22,4,Visual Designer,MainPage.bal,-100,6,B4XMainPage,b_cargarBD_Click,446,6 +ModuleClosedNodes4= +ModuleClosedNodes5=1 +ModuleClosedNodes6=12,13,14,16,17,18 +NavigationStack=Subs,Process_Globals,9,0,B4XMainPage,b_enviar_Click,226,4,B4XMainPage,Class_Globals,35,6,C_Envios,envioMariana,26,0,B4XMainPage,lv_DBRServer_ItemClick,493,0,B4XMainPage,envioMariana,621,6,B4XMainPage,B4XPage_Appear,105,0,DBRequestManager,Class_Globals,12,0,DBRequestManager,ExecuteQuery,37,0,B4XMainPage,JobDone,246,6 SelectedBuild=0 -VisibleModules=1,5,3 +VisibleModules=1,6,2,3 diff --git a/B4A/DBRequestManager.bas b/B4A/DBRequestManager.bas index 99c6874..e0e2b63 100644 --- a/B4A/DBRequestManager.bas +++ b/B4A/DBRequestManager.bas @@ -5,8 +5,6 @@ Type=Class Version=6.8 @EndOfDesignText@ ''Class module -'Necesita la libreria RandomAccessFile y ByteConverter. - Sub Class_Globals Private mTarget As Object Type DBResult (Tag As Object, Columns As Map, Rows As List) @@ -18,6 +16,7 @@ Sub Class_Globals Private VERSION As Float = 0.9 Private tempArray(1) As Object Dim jobTagAnterior As String = "" 'Mod por CHV - 211109 + Dim reqsList As List End Sub 'Target - The module that handles JobDone (usually Me). @@ -25,6 +24,7 @@ End Sub Public Sub Initialize (Target As Object, ConnectorLink As String) mTarget = Target link = ConnectorLink + reqsList.Initialize End Sub 'Sends a query request. @@ -35,7 +35,8 @@ Public Sub ExecuteQuery(Command As DBCommand, Limit As Int, Tag As Object) Dim j As HttpJob Dim ms As OutputStream Dim out2 As OutputStream = StartJob(j,ms, Tag) - + If reqsList.IsInitialized Then reqsList.Add(Tag) + WriteObject(Command.Name, out2) WriteInt(Limit, out2) WriteList(Command.Parameters, out2) @@ -61,6 +62,7 @@ End Sub 'Similar to ExecuteBatch. Sends a single command. Public Sub ExecuteCommand(Command As DBCommand, Tag As Object) + If reqsList.IsInitialized Then reqsList.Add(Tag) ExecuteBatch(Array As DBCommand(Command), Tag) End Sub @@ -115,7 +117,7 @@ Private Sub WriteObject(o As Object, out As OutputStream) Else If GetType(tempArray(0)) = "[B" Then data = o out.WriteBytes(Array As Byte(T_BLOB), 0, 1) - WriteInt(data.Length, out) + WriteInt(data.Length, out) Else 'If o Is String Then (treat all other values as string) out.WriteBytes(Array As Byte(T_STRING), 0, 1) data = bc.StringToBytes(o, "UTF8") diff --git a/B4A/FileHandler.bas b/B4A/FileHandler.bas index 4343a9c..a9529f8 100644 --- a/B4A/FileHandler.bas +++ b/B4A/FileHandler.bas @@ -4,7 +4,7 @@ ModulesStructureVersion=1 Type=Class Version=11 @EndOfDesignText@ -'Requiere la librería "ContentResolver" y "AppUpdating" +'Requiere la librería "ContentResolver" y "FileProvider" o "AppUpdating" ' 'Copiar este codigo al boton_Click que se quiere que importe la base de datos. ' @@ -23,7 +23,6 @@ Sub Class_Globals Private OldIntent As Intent #end if Type LoadResult (Success As Boolean, Dir As String, FileName As String, RealName As String, Size As Long, Modified As Long, MimeType As String) - End Sub Public Sub Initialize diff --git a/B4A/Files/engrane_gris.png b/B4A/Files/engrane_gris.png new file mode 100644 index 0000000..93d32d4 Binary files /dev/null and b/B4A/Files/engrane_gris.png differ diff --git a/B4A/Files/mainpage.bal b/B4A/Files/mainpage.bal index ddd4029..5cf484d 100644 Binary files a/B4A/Files/mainpage.bal and b/B4A/Files/mainpage.bal differ diff --git a/B4A/Subs.bas b/B4A/Subs.bas index 39c1b2c..9d52bbc 100644 --- a/B4A/Subs.bas +++ b/B4A/Subs.bas @@ -146,3 +146,50 @@ Sub dameDiaSemana As String 'ignore End If Return ds End Sub + +'Regresa el usuario de la tabla USUARIOA +Sub traeUsuarioDeBD As String 'ignore + Private c As Cursor + Private u As String = "SinUsuario" + c = B4XPages.MainPage.skmt.ExecQuery("select USUARIO from usuarioa") + c.Position = 0 + If c.RowCount > 0 Then u = c.GetString("USUARIO") + c.Close + Return u +End Sub + +'Regresa la ruta actual de la base de datos. +Sub traeRuta As String 'ignore + Private c As Cursor + Private r As String + c = B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") + r = "0" + If c.RowCount > 0 Then + c.Position=0 + r = c.GetString("CAT_CL_RUTA") + End If + c.Close + Return r +End Sub + +'Regresa el cliente actual desde CUENTAA. +Sub traeCliente As String 'ignore + Private c As Cursor + Private cl As String + c = B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa") + c.Position = 0 + cl = c.GetString("CUENTA") + c.Close + Return cl +End Sub + +'Regresa el almacen actual de la base de datos. +Sub traeAlmacen As String 'ignore + Private c As Cursor + Private a As String + c = B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") + c.Position = 0 + a = C.GetString("ID_ALMACEN") + c.Close + Return a +End Sub \ No newline at end of file