- VERSION 5.03.08

- Se agregó codigo para la confirmacion de pagares mediante WhatsApp en Cliente.
- Se agregaron 270 segundos (4.5 minutos) al tiempo calculado en el ruteo de Clientes.
- Se hicieorn mas pequeños los números de los globitos en MAPAS_RUTAS, de 20 a 15.
- Se puso un toastMessage cuando las coordenadas del CEDIS están en CERO.
This commit is contained in:
2025-03-09 00:35:10 -06:00
parent 2c9cdf7a6b
commit 8043a7787d
12 changed files with 837 additions and 674 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -31,6 +31,7 @@ Sub Class_Globals
Private b_limpiarRuta As Button Private b_limpiarRuta As Button
Dim rutaGenerada As Boolean = False Dim rutaGenerada As Boolean = False
Dim rutaacambiar As String Dim rutaacambiar As String
Dim mostrarProgressDialog As Boolean
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -100,7 +101,7 @@ Sub B4XPage_Appear
Subs.centraEtiqueta(l_rutaInfo, Root.Width) Subs.centraEtiqueta(l_rutaInfo, Root.Width)
Subs.centraListView(ListView1, p_colonia.Width) Subs.centraListView(ListView1, p_colonia.Width)
ListView1.Height = p_colonia.Height * 0.70 ListView1.Height = p_colonia.Height * 0.70
Subs.centraEtiqueta(lfila, Root.Width) Subs.centraEtiqueta(lfila, Root.Width + (b_getRutaInfo.Width / 2))
b_getRutaInfo.Visible = True b_getRutaInfo.Visible = True
b_getRutaInfo.BringToFront b_getRutaInfo.BringToFront
If Starter.cedisLocation.Latitude = "0" Then If Starter.cedisLocation.Latitude = "0" Then
@@ -113,9 +114,12 @@ Sub B4XPage_Appear
End If End If
End If End If
Log(Starter.cedisLocation) Log(Starter.cedisLocation)
If mostrarProgressDialog = True Then
ProgressDialogShow2("Calculando distancia y tiempo, un momento por favor.", False)
mostrarProgressDialog = False
End If
End Sub End Sub
Private Sub B4XPage_CloseRequest As ResumableSub Private Sub B4XPage_CloseRequest As ResumableSub
' BACK key pressed ' BACK key pressed
'Return True to close, False to cancel 'Return True to close, False to cancel
@@ -244,7 +248,7 @@ End Sub
Sub BUSCA_TextChanged (Old As String, New As String) Sub BUSCA_TextChanged (Old As String, New As String)
q_buscar = "%" & busca.Text & "%" q_buscar = "%" & busca.Text & "%"
c2=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where CAT_CL_NOMBRE like ? and gestion = 0 AND CAT_CL_RUTA <> 1000 order by CAT_CL_CODIGO ", Array As String(q_buscar)) c2=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where CAT_CL_NOMBRE like ? and gestion = 0 AND CAT_CL_RUTA <> 1000 order by CAT_CL_CODIGO ", Array As String(q_buscar))
ListView1.Clear ListView1.Clear
lfila.text = "Nombre y Calle" lfila.text = "Nombre y Calle"
Subs.SetDivider(ListView1, Colors.Blue, 2) Subs.SetDivider(ListView1, Colors.Blue, 2)
@@ -278,6 +282,7 @@ Sub distanciaEntreCoords(id As String, coords1 As String, coords2 As String) As
Dim j As HttpJob Dim j As HttpJob
j.Initialize("", Me) j.Initialize("", Me)
j.Download("https://router.project-osrm.org/route/v1/driving/"&coords1&";"&coords2&"?overview=false") j.Download("https://router.project-osrm.org/route/v1/driving/"&coords1&";"&coords2&"?overview=false")
Log(("https://router.project-osrm.org/route/v1/driving/"&coords1&";"&coords2&"?overview=false"))
Wait For (j) JobDone(j As HttpJob) Wait For (j) JobDone(j As HttpJob)
If j.Success Then If j.Success Then
Dim jp As JSONParser Dim jp As JSONParser
@@ -674,6 +679,9 @@ Sub caculaRutaGPS(coords As List, agregarActual As Boolean)
Private pri As String = $"${primerLon},${primerLat}"$ Private pri As String = $"${primerLon},${primerLat}"$
Private ult As String = $"${ultimaLon},${ultimaLat}"$ Private ult As String = $"${ultimaLon},${ultimaLat}"$
Private ced As String = Starter.cedisLocation.Longitude & "," & Starter.cedisLocation.Latitude Private ced As String = Starter.cedisLocation.Longitude & "," & Starter.cedisLocation.Latitude
If Starter.cedisLocation.Longitude = 0 Or Starter.cedisLocation.Latitude = 0 Then
ToastMessageShow("Las coordenadas del CEDIS NO deben estar en CERO", True)
End If
Private ubiActual As String = Starter.inicioLon & "," & Starter.inicioLat Private ubiActual As String = Starter.inicioLon & "," & Starter.inicioLat
Wait For(distanciaEntreCoords("aaaa", pri, ubiActual)) Complete (r As List) Wait For(distanciaEntreCoords("aaaa", pri, ubiActual)) Complete (r As List)
Log("DistToPrimero: " & r) Log("DistToPrimero: " & r)
@@ -681,12 +689,13 @@ Sub caculaRutaGPS(coords As List, agregarActual As Boolean)
Wait For(distanciaEntreCoords("aaaa", ult, ced)) Complete (r As List) Wait For(distanciaEntreCoords("aaaa", ult, ced)) Complete (r As List)
Log("DistToUltimo: " & r) Log("DistToUltimo: " & r)
Private DistToUltimo As String = NumberFormat2((r.Get(1)/1000), 1, 2, 0, True) Private DistToUltimo As String = NumberFormat2((r.Get(1)/1000), 1, 2, 0, True)
duration = duration + (270 * puntos) ' Agregamoms 4.5 minutos por parada/tienda - 270 segundos = 4.5 minutos
Log($"Distancia total: $1.1{distance/1000} kms, tiempo aprox: $1.1{duration/60} mins. ($1.1{duration/60/60} hrs)"$) Log($"Distancia total: $1.1{distance/1000} kms, tiempo aprox: $1.1{duration/60} mins. ($1.1{duration/60/60} hrs)"$)
l_rutaInfo.Text = $"Actual a primer tienda: ${distToPrimero} kms l_rutaInfo.Text = $"Actual a primer tienda: ${distToPrimero} kms
Distancia: $1.1{distance/1000} kms, tiempo aprox: 5.8 hrs${CRLF}Visitas restantes: ${puntos + 1} Distancia: $1.1{distance/1000} kms, tiempo aprox: $1.1{duration/60/60} hrs${CRLF}Visitas restantes: ${puntos + 1}
Última tienda a CEDIS: 1.2 kms"$ Última tienda a CEDIS: ${DistToUltimo} kms"$
' Distancia: $1.1{distance/1000} kms, tiempo aprox: $1.1{duration/60/60} hrs${CRLF}Visitas restantes: ${puntos - 1} ' Distancia: $1.1{distance/1000} kms, tiempo aprox: $1.1{duration/60/60} hrs${CRLF}Visitas restantes: ${puntos - 1}
' Última tienda a CEDIS: ${DistToUltimo} kms"$ Log($"Última tienda a CEDIS: ${DistToUltimo} kms"$)
l_rutaInfo.Width = Root.Width * 0.9 l_rutaInfo.Width = Root.Width * 0.9
Subs.centraEtiqueta(l_rutaInfo, Root.Width) Subs.centraEtiqueta(l_rutaInfo, Root.Width)
l_rutaInfo.Visible = True l_rutaInfo.Visible = True

View File

@@ -88,7 +88,6 @@ End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
Subs.centraPanel(p_principal, Root.Width) Subs.centraPanel(p_principal, Root.Width)
' b_guardar.Visible = False ' b_guardar.Visible = False
' Titulo.Left = Round(p_principal.Width/2)-(Titulo.Width/2) ' Titulo.Left = Round(p_principal.Width/2)-(Titulo.Width/2)
L_CANT.Text ="" L_CANT.Text =""
L_TOTAL.Text="" L_TOTAL.Text=""
@@ -107,10 +106,8 @@ Sub B4XPage_Appear
' Log("RC1:"&c.RowCount) ' Log("RC1:"&c.RowCount)
If c.RowCount>0 Then If c.RowCount>0 Then
' Log("Usamos HV") ' Log("Usamos HV")
For i=0 To c.RowCount -1 For i=0 To c.RowCount -1
c.Position=i c.Position=i
Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT FROM PEDIDO WHERE PE_PROID = '${c.GetString("HVD_PROID")}' AND PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA) AND CONSECUTIVO = '${c.GetString("CONSECUTIVO")}'"$) Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT FROM PEDIDO WHERE PE_PROID = '${c.GetString("HVD_PROID")}' AND PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA) AND CONSECUTIVO = '${c.GetString("CONSECUTIVO")}'"$)
If c4.RowCount > 0 Then If c4.RowCount > 0 Then
c4.Position = 0 c4.Position = 0
@@ -118,7 +115,6 @@ Sub B4XPage_Appear
Else Else
cantres = 0 cantres = 0
End If End If
If c.GetString("BCAJAS") = "0" Then If c.GetString("BCAJAS") = "0" Then
If c.GetString("HVD_CANT") <> c.GetString("HVD_RECHAZOCANT") Then If c.GetString("HVD_CANT") <> c.GetString("HVD_RECHAZOCANT") Then
'Traemos cantidad de hvd2 'Traemos cantidad de hvd2
@@ -180,10 +176,8 @@ Sub B4XPage_Appear
End If End If
End If End If
Next Next
' cuentaProds("") ' cuentaProds("")
End If End If
Private c3 As Cursor=Starter.skmt.ExecQuery("Select * from PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") Private c3 As Cursor=Starter.skmt.ExecQuery("Select * from PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
If c3.RowCount>0 Then If c3.RowCount>0 Then
For i= 0 To c3.RowCount -1 For i= 0 To c3.RowCount -1
@@ -203,10 +197,7 @@ Sub B4XPage_Appear
End If End If
Next Next
End If End If
Private vc As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT,HVD_COSTO_TOT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT from HIST_VENTAS where BCAJAS = 0 and HVD_CODPROMO ='${Subs.traealmacen}' and HVD_CLIENTE in (select cuenta from cuentaa)"$) Private vc As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT,HVD_COSTO_TOT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT from HIST_VENTAS where BCAJAS = 0 and HVD_CODPROMO ='${Subs.traealmacen}' and HVD_CLIENTE in (select cuenta from cuentaa)"$)
Private Cuenta As String = 0 Private Cuenta As String = 0
Private arti As String = 0 Private arti As String = 0
If vc.RowCount > 0 Then If vc.RowCount > 0 Then
@@ -231,7 +222,6 @@ Sub B4XPage_Appear
Next Next
End If End If
' Log(Cuenta) ' Log(Cuenta)
Private vc2 As Cursor = Starter.skmt.ExecQuery("select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT from HIST_VENTAS where HVD_CLIENTE in (select cuenta from cuentaa) AND BCAJAS = 1") Private vc2 As Cursor = Starter.skmt.ExecQuery("select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT from HIST_VENTAS where HVD_CLIENTE in (select cuenta from cuentaa) AND BCAJAS = 1")
Private Cuenta1 As String = 0 Private Cuenta1 As String = 0
Private arti1 As String = 0 Private arti1 As String = 0
@@ -248,14 +238,10 @@ Sub B4XPage_Appear
Next Next
End If End If
' Log(Cuenta1) ' Log(Cuenta1)
Private vc4 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT, HVD_RECHAZO, HVD_CODPROMO from HIST_VENTAS where HVD_CLIENTE in (select cuenta from cuentaa) AND BCAJAS = 0 and HVD_CODPROMO <> '${Subs.traeAlmacen}'"$) Private vc4 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT, HVD_RECHAZO, HVD_CODPROMO from HIST_VENTAS where HVD_CLIENTE in (select cuenta from cuentaa) AND BCAJAS = 0 and HVD_CODPROMO <> '${Subs.traeAlmacen}'"$)
Private Cuenta2 As String = 0 Private Cuenta2 As String = 0
Private arti2 As String = 0 Private arti2 As String = 0
If vc4.RowCount > 0 Then If vc4.RowCount > 0 Then
For i = 0 To vc4.RowCount - 1 For i = 0 To vc4.RowCount - 1
vc4.Position = i vc4.Position = i
If vc4.GetString("HVD_PROID") <> vc4.GetString("HVD_CODPROMO") Then If vc4.GetString("HVD_PROID") <> vc4.GetString("HVD_CODPROMO") Then
@@ -275,10 +261,6 @@ Sub B4XPage_Appear
Next Next
End If End If
Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT, iFNULL(PE_COSTO_TOT,0) AS PE_COSTO_TOT FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)"$) Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT, iFNULL(PE_COSTO_TOT,0) AS PE_COSTO_TOT FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)"$)
Private Cuenta3 As String = 0 Private Cuenta3 As String = 0
Private arti3 As String = 0 Private arti3 As String = 0
@@ -289,7 +271,6 @@ Sub B4XPage_Appear
Cuenta3 = Cuenta3 + c4.GetString("PE_COSTO_TOT") Cuenta3 = Cuenta3 + c4.GetString("PE_COSTO_TOT")
Next Next
End If End If
If Cuenta < 0 Then If Cuenta < 0 Then
Cuenta = 0 Cuenta = 0
End If End If
@@ -302,7 +283,6 @@ Sub B4XPage_Appear
If Cuenta3 < 0 Then If Cuenta3 < 0 Then
Cuenta = 0 Cuenta = 0
End If End If
If arti < 0 Then If arti < 0 Then
arti = 0 arti = 0
End If End If
@@ -315,7 +295,6 @@ Sub B4XPage_Appear
If arti3 < 0 Then If arti3 < 0 Then
arti = 0 arti = 0
End If End If
Log(Cuenta&","&Cuenta1&","&Cuenta2&","&Cuenta3) Log(Cuenta&","&Cuenta1&","&Cuenta2&","&Cuenta3)
Log(arti&","&arti1&","&arti2&","&arti3) Log(arti&","&arti1&","&arti2&","&arti3)
If Cuenta + Cuenta1 + Cuenta2 + Cuenta3 < 0 Then If Cuenta + Cuenta1 + Cuenta2 + Cuenta3 < 0 Then
@@ -328,8 +307,6 @@ Sub B4XPage_Appear
Else Else
L_CANT.Text = NumberFormat2((arti + arti1 +arti2 + arti3),0,0,0,True) L_CANT.Text = NumberFormat2((arti + arti1 +arti2 + arti3),0,0,0,True)
End If End If
End Sub End Sub
Sub GPS_LocationChanged (Location1 As Location) Sub GPS_LocationChanged (Location1 As Location)
@@ -485,7 +462,6 @@ Sub CreateListItem(Text As String, precioU As String, inv As Int, inv2 As Int, W
l_pCant.Text = inv l_pCant.Text = inv
' et_pCant.Text = inv ' et_pCant.Text = inv
' et_pCant.BringToFront ' et_pCant.BringToFront
l_pCant.BringToFront l_pCant.BringToFront
et_pCant.SendToBack et_pCant.SendToBack
p_botMasMenC.Visible = False p_botMasMenC.Visible = False
@@ -517,7 +493,6 @@ Sub CreateListItem2(Text As String, precioU As String, inv As Int, inv2 As Int,
l_pCantC.Text = NumberFormat2(inv/Subs.traeConversion(prodId),0,0,0,False) l_pCantC.Text = NumberFormat2(inv/Subs.traeConversion(prodId),0,0,0,False)
' et_pCant.Text = inv ' et_pCant.Text = inv
' et_pCant.BringToFront ' et_pCant.BringToFront
l_pCantC.BringToFront l_pCantC.BringToFront
et_pCantC.SendToBack et_pCantC.SendToBack
p_botMasMen.Visible = False p_botMasMen.Visible = False
@@ -571,21 +546,15 @@ Sub b_prodMenos_Click
Starter.skmt.ExecNonQuery($"delete from PEDIDO where PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) Starter.skmt.ExecNonQuery($"delete from PEDIDO where PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$)
End If End If
End If End If
End If End If
B4XPage_Appear B4XPage_Appear
Else Else
If esteTag.Get(5) = esteTag.Get(6) Then If esteTag.Get(5) = esteTag.Get(6) Then
If laCant.Text > 0 Then If laCant.Text > 0 Then
If esteTag.Get(3) <> Subs.traeAlmacen Then 'Si es PROMO entonces ... If esteTag.Get(3) <> Subs.traeAlmacen Then 'Si es PROMO entonces ...
Private c2 As Cursor =Starter.skmt.ExecQuery($"select HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_PROID = '${esteTag.Get(2)}' AND HVD_CLIENTE IN (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) Private c2 As Cursor =Starter.skmt.ExecQuery($"select HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_PROID = '${esteTag.Get(2)}' AND HVD_CLIENTE IN (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$)
c2.Position = 0 c2.Position = 0
If c2.GetString("HVD_RECHAZO") = "0" Then If c2.GetString("HVD_RECHAZO") = "0" Then
Log("ES PROMO") Log("ES PROMO")
Log(esteTag.Get(3)) Log(esteTag.Get(3))
result = Msgbox2("Si se modifica una promoción, la promoción se rompe y solo quedarán los productos sueltos, ¿seguro que desea continuar?","Modificar Promoción", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore result = Msgbox2("Si se modifica una promoción, la promoción se rompe y solo quedarán los productos sueltos, ¿seguro que desea continuar?","Modificar Promoción", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
@@ -627,7 +596,6 @@ Sub b_prodMenos_Click
End If End If
End If End If
Else Else
If laCant.Text = "" Then laCant.Text = 0 If laCant.Text = "" Then laCant.Text = 0
laCant.Text = $"$1.0{laCant.Text-1}"$ laCant.Text = $"$1.0{laCant.Text-1}"$
If laCant.Text < 0 Then laCant.Text = 0 If laCant.Text < 0 Then laCant.Text = 0
@@ -684,7 +652,6 @@ Sub b_prodMas_Click
Dim esteTag As List = Regex.Split("\|", laCant.Tag) Dim esteTag As List = Regex.Split("\|", laCant.Tag)
Log("LC_TEXT:"&laCant.Text&"|LC_TAG:"&laCant.Tag&"|ET:"&esteTag) Log("LC_TEXT:"&laCant.Text&"|LC_TAG:"&laCant.Tag&"|ET:"&esteTag)
If laCant.Text = "" Then laCant.Text = 0 If laCant.Text = "" Then laCant.Text = 0
Private maxProds = esteTag.Get(1) + esteTag.Get(4) 'Prods disponibles + prods comprados Private maxProds = esteTag.Get(1) + esteTag.Get(4) 'Prods disponibles + prods comprados
LogColor($"++++++++++++++++++++++++++ ${esteTag}"$, Colors.Green) LogColor($"++++++++++++++++++++++++++ ${esteTag}"$, Colors.Green)
@@ -702,18 +669,13 @@ Sub b_prodMas_Click
'*'${minimoadesc}') '*'${minimoadesc}')
minimoadesc = "1" minimoadesc = "1"
If esteTag.Get(7) <> "1" Then If esteTag.Get(7) <> "1" Then
If esteTag.Get(5) = esteTag.Get(6) Then If esteTag.Get(5) = esteTag.Get(6) Then
If laCant.Text + 1 <= maxProds Then If laCant.Text + 1 <= maxProds Then
Log($"NuevaCant = ${laCant.Text + 1}"$) Log($"NuevaCant = ${laCant.Text + 1}"$)
laCant.Text = $"$1.0{laCant.Text + 1}"$ laCant.Text = $"$1.0{laCant.Text + 1}"$
Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen - 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2))) Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen - 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2)))
'checar este por si las dudas 'checar este por si las dudas
Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - (1*'${minimoadesc}') WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - (1*'${minimoadesc}') WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$)
Subs.prodVenta(esteTag.Get(5), esteTag.Get(2)) Subs.prodVenta(esteTag.Get(5), esteTag.Get(2))
' Private cym As Map = Subs.traemosCantYMonto(clv_pedido) ' Private cym As Map = Subs.traemosCantYMonto(clv_pedido)
' L_CANT.Text = cym.Get("cantidad") ' L_CANT.Text = cym.Get("cantidad")
@@ -722,7 +684,6 @@ Sub b_prodMas_Click
B4XPage_Appear B4XPage_Appear
End If End If
Else Else
If laCant.Text + 1 <= maxProds Then If laCant.Text + 1 <= maxProds Then
Log($"NuevaCant = ${laCant.Text + 1}"$) Log($"NuevaCant = ${laCant.Text + 1}"$)
laCant.Text = $"$1.0{laCant.Text + 1}"$ laCant.Text = $"$1.0{laCant.Text + 1}"$
@@ -743,8 +704,6 @@ Sub b_prodMas_Click
Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO(PE_PROID,PE_PRONOMBRE,PE_CANT,PE_CLIENTEOR,PE_CLIENTE,PE_COSTOU,PE_COSTO_TOT,PE_CAJAS,PE_BCAJAS,CONSECUTIVO) VALUES (?,?,?,?,?,?,?,0,0,?)", Array As String(esteTag.Get(2),c2.GetString("CAT_GP_NOMBRE"),1*minimoadesc,esteTag.Get(5),Subs.traeCliente,c2.GetString("CAT_GP_PRECIO"),c2.GetString("CAT_GP_PRECIO"),esteTag.Get(8))) Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO(PE_PROID,PE_PRONOMBRE,PE_CANT,PE_CLIENTEOR,PE_CLIENTE,PE_COSTOU,PE_COSTO_TOT,PE_CAJAS,PE_BCAJAS,CONSECUTIVO) VALUES (?,?,?,?,?,?,?,0,0,?)", Array As String(esteTag.Get(2),c2.GetString("CAT_GP_NOMBRE"),1*minimoadesc,esteTag.Get(5),Subs.traeCliente,c2.GetString("CAT_GP_PRECIO"),c2.GetString("CAT_GP_PRECIO"),esteTag.Get(8)))
End If End If
End If End If
Subs.prodVenta(esteTag.Get(5), esteTag.Get(2)) Subs.prodVenta(esteTag.Get(5), esteTag.Get(2))
' Private cym As Map = Subs.traemosCantYMonto(clv_pedido) ' Private cym As Map = Subs.traemosCantYMonto(clv_pedido)
' L_CANT.Text = cym.Get("cantidad") ' L_CANT.Text = cym.Get("cantidad")
@@ -752,7 +711,6 @@ Sub b_prodMas_Click
' cuentaProds("+") ' cuentaProds("+")
B4XPage_Appear B4XPage_Appear
End If End If
End If End If
End If End If
' Dim preciou As Float = esteTag.Get(0)/esteTag.Get(1) ' Dim preciou As Float = esteTag.Get(0)/esteTag.Get(1)
@@ -930,16 +888,12 @@ Sub cuentaProds(accion As String)
' '
' End If ' End If
' End If ' End If
'
'
'
End Sub End Sub
Private Sub b_guardar_Click Private Sub b_guardar_Click
End Sub End Sub
Private Sub l_pCant_Click Private Sub l_pCant_Click
End Sub End Sub
@@ -972,16 +926,12 @@ Private Sub b_prodMasC_Click
' l_pCantC.Tag = Round2(precioU,2)&"|"&inv&"|"&prodId&"|"&promo&"|"&inv2&"|"&cliente_original ' l_pCantC.Tag = Round2(precioU,2)&"|"&inv&"|"&prodId&"|"&promo&"|"&inv2&"|"&cliente_original
If esteTag.Get(7) <> "1" Then If esteTag.Get(7) <> "1" Then
If laCantc.Text + 1 <= maxProds Then If laCantc.Text + 1 <= maxProds Then
Log($"NuevaCant = ${laCantc.Text + 1}"$) Log($"NuevaCant = ${laCantc.Text + 1}"$)
laCantc.Text = $"$1.0{laCantc.Text + 1}"$ laCantc.Text = $"$1.0{laCantc.Text + 1}"$
Log(laCantc.Text) Log(laCantc.Text)
Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = IFNULL(HVD_RECHAZOCANT,0) -(1 * ${Subs.traeConversion(esteTag.Get(2))}) WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = IFNULL(HVD_RECHAZOCANT,0) -(1 * ${Subs.traeConversion(esteTag.Get(2))}) WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$)
' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa)"$) ' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa)"$)
' Subs.prodVenta(esteTag.Get(5), esteTag.Get(2)) ' Subs.prodVenta(esteTag.Get(5), esteTag.Get(2))
' Private cym As Map = Subs.traemosCantYMonto(clv_pedido) ' Private cym As Map = Subs.traemosCantYMonto(clv_pedido)
' L_CANT.Text = cym.Get("cantidad") ' L_CANT.Text = cym.Get("cantidad")
@@ -1023,12 +973,8 @@ Private Sub b_prodMenosC_Click
laCantc.Text = laCantc.Text - 1 laCantc.Text = laCantc.Text - 1
If laCantc.Text < 0 Then laCantc.Text = 0 If laCantc.Text < 0 Then laCantc.Text = 0
B4XPage_Appear B4XPage_Appear
Else Else
If esteTag.Get(5) = esteTag.Get(6) Then If esteTag.Get(5) = esteTag.Get(6) Then
If laCantc.Text > 0 Then If laCantc.Text > 0 Then
Log("entre al if o algo asi ") Log("entre al if o algo asi ")
If laCantc.Text = "" Then laCantc.Text = 0 If laCantc.Text = "" Then laCantc.Text = 0
@@ -1038,13 +984,9 @@ Private Sub b_prodMenosC_Click
Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = (cat_gp_almacen + (1 * ?)) where cat_gp_id = ?", Array As Object(esteTag.Get(2), Subs.traeConversion(esteTag.Get(2)))) Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = (cat_gp_almacen + (1 * ?)) where cat_gp_id = ?", Array As Object(esteTag.Get(2), Subs.traeConversion(esteTag.Get(2))))
B4XPage_Appear B4XPage_Appear
Else If laCantc.Text = 0 Then Else If laCantc.Text = 0 Then
End If End If
Else Else
If laCantc.Text > 0 Then If laCantc.Text > 0 Then
' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = (IFNULL(HVD_RECHAZOCANT,0) +(1 * ${Subs.traeConversion(esteTag.Get(2))})) WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(6)}'"$) ' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = (IFNULL(HVD_RECHAZOCANT,0) +(1 * ${Subs.traeConversion(esteTag.Get(2))})) WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(6)}'"$)
Private c3 As Cursor = Starter.skmt.ExecQuery2("SELECT PE_CAJAS FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) and CONSECUTIVO = ? ", Array As String(esteTag.Get(2),esteTag.Get(8))) Private c3 As Cursor = Starter.skmt.ExecQuery2("SELECT PE_CAJAS FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) and CONSECUTIVO = ? ", Array As String(esteTag.Get(2),esteTag.Get(8)))
If c3.RowCount > 0 Then If c3.RowCount > 0 Then
@@ -1063,9 +1005,7 @@ Private Sub b_prodMenosC_Click
B4XPage_Appear B4XPage_Appear
' Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = (cat_gp_almacen + (1 * ?)) where cat_gp_id = ?", Array As Object(esteTag.Get(2), Subs.traeConversion(esteTag.Get(2)))) ' Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = (cat_gp_almacen + (1 * ?)) where cat_gp_id = ?", Array As Object(esteTag.Get(2), Subs.traeConversion(esteTag.Get(2))))
Else If laCantc.Text = 0 Then Else If laCantc.Text = 0 Then
End If End If
End If End If
End If End If
Dim preciou As Float = esteTag.Get(0)/esteTag.Get(1) Dim preciou As Float = esteTag.Get(0)/esteTag.Get(1)
@@ -1084,8 +1024,6 @@ Private Sub b_revversar_Click
Else Else
MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención")
End If End If
End Sub End Sub
Sub Printer1_Connected (Success As Boolean) Sub Printer1_Connected (Success As Boolean)
@@ -1161,8 +1099,6 @@ Sub StartPrinter
End Sub End Sub
Private Sub B_IMP_Click Private Sub B_IMP_Click
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
c.Position=0 c.Position=0
usuario = c.GetString("USUARIO") usuario = c.GetString("USUARIO")
@@ -1170,8 +1106,6 @@ Private Sub B_IMP_Click
sDate=DateTime.Date(DateTime.Now) sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now) sTime=DateTime.Time(DateTime.Now)
c.Close c.Close
ProgressDialogShow("Imprimiendo, un momento ...") ProgressDialogShow("Imprimiendo, un momento ...")
Printer1.DisConnect Printer1.DisConnect
If Not(Printer1.IsConnected) Then If Not(Printer1.IsConnected) Then
@@ -1201,7 +1135,6 @@ Private Sub B_IMP_Click
Sleep(500) Sleep(500)
impresoraConectada = False impresoraConectada = False
End If End If
TAMANO = 0 TAMANO = 0
ESPACIO = 28 ESPACIO = 28
BLANCO = " " BLANCO = " "
@@ -1225,10 +1158,7 @@ Private Sub B_IMP_Click
c = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") c = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)")
If c.RowCount > 0 Then If c.RowCount > 0 Then
Printer1.WriteString("------------Picking------------" & CRLF) Printer1.WriteString("------------Picking------------" & CRLF)
Printer1.WriteString("" & CRLF) Printer1.WriteString("" & CRLF)
Printer1.WriteString("------------------------------" & CRLF) Printer1.WriteString("------------------------------" & CRLF)
' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show.
s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_PROID"$) s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_PROID"$)
@@ -1237,10 +1167,7 @@ Private Sub B_IMP_Click
S.Position=i S.Position=i
Log(s.GetString("HVD_RECHAZO")) Log(s.GetString("HVD_RECHAZO"))
If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then
If s.GetString("HVD_CODPROMO") = Subs.traeAlmacen Then If s.GetString("HVD_CODPROMO") = Subs.traeAlmacen Then
Printer1.Justify = 0 Printer1.Justify = 0
Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") )&" "&s.GetString("HVD_PRONOMBRE") & CRLF) Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") )&" "&s.GetString("HVD_PRONOMBRE") & CRLF)
@@ -1266,9 +1193,7 @@ Private Sub B_IMP_Click
' TAMANO = 0 ' TAMANO = 0
' ESPACIO = 29 ' ESPACIO = 29
' BLANCO = " " ' BLANCO = " "
Else If s.GetString("HVD_RECHAZO") = 1 Then Else If s.GetString("HVD_RECHAZO") = 1 Then
Printer1.Justify = 0 Printer1.Justify = 0
Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) &" "&s.GetString("HVD_PRONOMBRE") & CRLF) Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) &" "&s.GetString("HVD_PRONOMBRE") & CRLF)
@@ -1314,26 +1239,18 @@ Private Sub B_IMP_Click
For i=0 To S.RowCount -1 For i=0 To S.RowCount -1
S.Position=i S.Position=i
If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then
If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then
Printer1.Justify = 0 Printer1.Justify = 0
If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then
Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF)
Else Else
Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))&" "&s.GetString("HVD_PRONOMBRE") & CRLF) Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))&" "&s.GetString("HVD_PRONOMBRE") & CRLF)
End If End If
' Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) ' Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False)
' TAMANO = punit.Length + TAMANO ' TAMANO = punit.Length + TAMANO
' '
'
' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) ' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False)
' TAMANO = ptot.Length + TAMANO ' TAMANO = ptot.Length + TAMANO
'
'
' ESPACIO = (ESPACIO - TAMANO)/2 ' ESPACIO = (ESPACIO - TAMANO)/2
' Log(ESPACIO) ' Log(ESPACIO)
' For E=0 To ESPACIO -1 ' For E=0 To ESPACIO -1
@@ -1350,7 +1267,6 @@ Private Sub B_IMP_Click
' BLANCO = " " ' BLANCO = " "
Printer1.Justify = 0 Printer1.Justify = 0
Else Else
End If End If
End If End If
Next Next
@@ -1361,11 +1277,7 @@ Private Sub B_IMP_Click
Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF)
Sleep(1000) Sleep(1000)
Printer1.DisConnect Printer1.DisConnect
ProgressDialogHide ProgressDialogHide
' Guardado ' Guardado
End Sub End Sub

View File

@@ -84,7 +84,6 @@ Sub Class_Globals
Private p_principal As Panel Private p_principal As Panel
Dim ime As IME Dim ime As IME
Private b_tabulador As Button Private b_tabulador As Button
Private l_rutasP As Label Private l_rutasP As Label
Private l_rechazo As Label Private l_rechazo As Label
Private Label9 As Label Private Label9 As Label
@@ -95,7 +94,6 @@ Sub Class_Globals
Private b_regreso As Button Private b_regreso As Button
Private lv_prod_Prin As ListView Private lv_prod_Prin As ListView
Private b_venta_emp As Button Private b_venta_emp As Button
Private ListView2 As ListView Private ListView2 As ListView
Private Button1 As Button Private Button1 As Button
Private P_PAGARES As Panel Private P_PAGARES As Panel
@@ -146,10 +144,10 @@ Private Sub B4XPage_Created (Root1 As B4XView)
' l_aLiquidar.Text = c.GetString("MONTO_DIA") ' l_aLiquidar.Text = c.GetString("MONTO_DIA")
' l_cuantosc.Text = c.GetString("CLIENTES_DIA") ' l_cuantosc.Text = c.GetString("CLIENTES_DIA")
' l_cuantosn.Text = b.GetString("CUANTOS") ' l_cuantosn.Text = b.GetString("CUANTOS")
'' drop = c.GetString("MONTO_DIA") / c.GetString("CLIENTES_DIA") '' drop = c.GetString("MONTO_DIA") / c.GetString("CLIENTES_DIA")
'' l_montoSalida.Text = Round2(drop,2) '' l_montoSalida.Text = Round2(drop,2)
'' efectiva = c.GetString("CLIENTES_DIA") / e.GetString("POR_VISITAR") '' efectiva = c.GetString("CLIENTES_DIA") / e.GetString("POR_VISITAR")
'' l_efectiva.text = Round2(efectiva * 100, 2) '' l_efectiva.text = Round2(efectiva * 100, 2)
' l_ctast.Text = d.GetString("TOTAL_VISITAR") ' l_ctast.Text = d.GetString("TOTAL_VISITAR")
' l_porvisitar.Text = e.GetString("POR_VISITAR") ' l_porvisitar.Text = e.GetString("POR_VISITAR")
' b.Close ' b.Close
@@ -284,7 +282,7 @@ Sub B4XPage_Appear
' If F4.GetString("CUANTOS") > 0 Then ' If F4.GetString("CUANTOS") > 0 Then
' f3=Starter.skmt.execqUery("select sum(pe_costo_tot) as MONTO_VENTA FROM PEDIDO") ' f3=Starter.skmt.execqUery("select sum(pe_costo_tot) as MONTO_VENTA FROM PEDIDO")
' f3.Position=0 ' f3.Position=0
'' Log(MONTO_REC_DIA & " - " & f3.GetString("MONTO_VENTA")) '' Log(MONTO_REC_DIA & " - " & f3.GetString("MONTO_VENTA"))
' l_efectiva.text = to_number_vb(MONTO_REC_DIA - f3.GetString("MONTO_VENTA")) & "..." ' l_efectiva.text = to_number_vb(MONTO_REC_DIA - f3.GetString("MONTO_VENTA")) & "..."
' f3.Close ' f3.Close
' Else ' Else
@@ -315,11 +313,11 @@ Sub B4XPage_Appear
' c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES where CAT_VA_DESCRIPCION = ? ", Array As String("CAMBIOS")) ' c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES where CAT_VA_DESCRIPCION = ? ", Array As String("CAMBIOS"))
' c.Position = 0 ' c.Position = 0
' If c.GetString("CUANTOS") = 0 Then ' If c.GetString("CUANTOS") = 0 Then
'' cambios.Text = 0 '' cambios.Text = 0
' Else ' Else
' B=Starter.skmt.ExecQuery("select CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'CAMBIOS'") ' B=Starter.skmt.ExecQuery("select CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'CAMBIOS'")
' B.Position = 0 ' B.Position = 0
'' cambios.Text = b.GetString("CAT_VA_VALOR") '' cambios.Text = b.GetString("CAT_VA_VALOR")
' b.Close ' b.Close
' End If ' End If
c.Close c.Close
@@ -399,7 +397,6 @@ Sub B4XPage_Appear
End If End If
cancelrecha.Close cancelrecha.Close
''' RECHAZO - VENTA ''' RECHAZO - VENTA
Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' ORDER BY HVD_PROID "$) Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' ORDER BY HVD_PROID "$)
@@ -410,13 +407,11 @@ Sub B4XPage_Appear
Private r6 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(PE_CANT),0) AS PE_CANT from PEDIDO where PE_CLIENTEOR = '${r5.GetString("HVD_CLIENTE")}' AND PE_PROID = '${r5.GetString("HVD_PROID")}' AND CONSECUTIVO = '${r5.GetString("CONSECUTIVO")}' "$) Private r6 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(PE_CANT),0) AS PE_CANT from PEDIDO where PE_CLIENTEOR = '${r5.GetString("HVD_CLIENTE")}' AND PE_PROID = '${r5.GetString("HVD_PROID")}' AND CONSECUTIVO = '${r5.GetString("CONSECUTIVO")}' "$)
Dim totalcantped As String Dim totalcantped As String
If r6.RowCount > 0 Then If r6.RowCount > 0 Then
r6.Position = 0 r6.Position = 0
totalcantped = r6.GetString("PE_CANT") totalcantped = r6.GetString("PE_CANT")
Else Else
totalcantped = 0 totalcantped = 0
End If End If
Log(r5.GetString("HVD_RECHAZOCANT") &" - "& totalcantped) Log(r5.GetString("HVD_RECHAZOCANT") &" - "& totalcantped)
rescant = rescant + ((r5.GetString("HVD_COSTO_TOT")/(r5.GetString("HVD_CANT")))*((r5.GetString("HVD_RECHAZOCANT") - totalcantped))) rescant = rescant + ((r5.GetString("HVD_COSTO_TOT")/(r5.GetString("HVD_CANT")))*((r5.GetString("HVD_RECHAZOCANT") - totalcantped)))
' Log(rescant) ' Log(rescant)
@@ -424,13 +419,10 @@ Sub B4XPage_Appear
Next Next
End If End If
If rescant = "NaN" Then rescant = 0 If rescant = "NaN" Then rescant = 0
LogColor(rescant,Colors.Red) ' LogColor(rescant,Colors.Red)
r5.Close r5.Close
Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT,IFNULL(CANTC,0) AS CANTC, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$) Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT,IFNULL(CANTC,0) AS CANTC, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$)
' Private r5 As Cursor = Starter.skmt.ExecQuery($"select * from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$) ' Private r5 As Cursor = Starter.skmt.ExecQuery($"select * from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$)
Private rescant2 As Double = 0 Private rescant2 As Double = 0
@@ -450,10 +442,8 @@ Sub B4XPage_Appear
r5.Close r5.Close
'''FIN RECHAZO - VENTA '''FIN RECHAZO - VENTA
'''RECHAZO '''RECHAZO
Private r5r As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' "$) Private r5r As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' "$)
Private rescantr As String = 0 Private rescantr As String = 0
If r5r.RowCount > 0 Then If r5r.RowCount > 0 Then
For j4r = 0 To r5r.RowCount -1 For j4r = 0 To r5r.RowCount -1
@@ -470,12 +460,11 @@ Sub B4XPage_Appear
' LogColor(rescant,Colors.Red) ' LogColor(rescant,Colors.Red)
r5r.Close r5r.Close
Log(rescantr) ' Log(rescantr)
Private r5r As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT,IFNULL(CANTC,0) AS CANTC, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$) Private r5r As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT,IFNULL(CANTC,0) AS CANTC, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$)
' Private r5 As Cursor = Starter.skmt.ExecQuery($"select * from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$) ' Private r5 As Cursor = Starter.skmt.ExecQuery($"select * from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$)
Private rescant2r As String = 0 Private rescant2r As String = 0
If r5r.RowCount > 0 Then If r5r.RowCount > 0 Then
For j5r = 0 To r5r.RowCount -1 For j5r = 0 To r5r.RowCount -1
@@ -496,7 +485,6 @@ Sub B4XPage_Appear
'''' FIN RECHAZO '''' FIN RECHAZO
''''' '''''
' Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(HVD_COSTO_TOT),0) AS HVD_COSTO_TOT from HIST_VENTAS where HVD_RECHAZO = '0' and BCAJAS = '0' "$) ' Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(HVD_COSTO_TOT),0) AS HVD_COSTO_TOT from HIST_VENTAS where HVD_RECHAZO = '0' and BCAJAS = '0' "$)
' Private rescant3 As Double = 0 ' Private rescant3 As Double = 0
' If r5.RowCount > 0 Then ' If r5.RowCount > 0 Then
@@ -514,19 +502,15 @@ Sub B4XPage_Appear
r55.Position = r75 r55.Position = r75
rescant3 = rescant3 + r55.GetString("HVD_COSTO_TOT") rescant3 = rescant3 + r55.GetString("HVD_COSTO_TOT")
rescant3 = NumberFormat2(rescant3, 0, 2, 2, False) rescant3 = NumberFormat2(rescant3, 0, 2, 2, False)
Next Next
End If End If
Log(rescant3) ' Log(rescant3)
r55.Close r55.Close
Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(HVD_COSTO_TOT),0) AS HVD_COSTO_TOT from HIST_VENTAS where HVD_RECHAZO = '0' and BCAJAS = '1' "$) Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(HVD_COSTO_TOT),0) AS HVD_COSTO_TOT from HIST_VENTAS where HVD_RECHAZO = '0' and BCAJAS = '1' "$)
Private rescant4 As Double Private rescant4 As Double
If r5.RowCount > 0 Then If r5.RowCount > 0 Then
r5.Position = 0 r5.Position = 0
rescant4 = r5.GetString("HVD_COSTO_TOT") rescant4 = r5.GetString("HVD_COSTO_TOT")
End If End If
Log(rescant4) Log(rescant4)
@@ -535,14 +519,11 @@ Sub B4XPage_Appear
Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(PE_COSTO_TOT),0) AS PE_COSTO_TOT from PEDIDO "$) Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(SUM(PE_COSTO_TOT),0) AS PE_COSTO_TOT from PEDIDO "$)
Private rescant5 As Double Private rescant5 As Double
If r5.RowCount > 0 Then If r5.RowCount > 0 Then
r5.Position = 0 r5.Position = 0
rescant5 = r5.GetString("PE_COSTO_TOT") rescant5 = r5.GetString("PE_COSTO_TOT")
End If End If
Log(rescant5) Log(rescant5)
r5.Close r5.Close
''' '''
Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' "$) Private r5 As Cursor = Starter.skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' "$)
Private rescant6 As Double Private rescant6 As Double
@@ -577,12 +558,8 @@ Sub B4XPage_Appear
If rescant7 = "NaN" Then rescant7 = 0 If rescant7 = "NaN" Then rescant7 = 0
Log(rescant7) Log(rescant7)
r5.Close r5.Close
l_rechazo.text = NumberFormat2((rescant + rescant2),0,2,2,False) l_rechazo.text = NumberFormat2((rescant + rescant2),0,2,2,False)
L_MONTOE.Text = NumberFormat2((rescant3 + rescant4 + rescant5 + rescant6 + rescant7),0,2,2,False) L_MONTOE.Text = NumberFormat2((rescant3 + rescant4 + rescant5 + rescant6 + rescant7),0,2,2,False)
B4XPages.MainPage.clientesVisitados = L_MONTOE.Text B4XPages.MainPage.clientesVisitados = L_MONTOE.Text
B4XPages.MainPage.clientesVenta = l_cuantosc.Text B4XPages.MainPage.clientesVenta = l_cuantosc.Text
B4XPages.MainPage.clientesRechazo = l_cuantosn.Text B4XPages.MainPage.clientesRechazo = l_cuantosn.Text
@@ -593,14 +570,12 @@ Sub B4XPage_Appear
B4XPages.MainPage.rechazos = l_cuantosn.text B4XPages.MainPage.rechazos = l_cuantosn.text
B4XPages.MainPage.montoEntregado = L_MONTOE.text B4XPages.MainPage.montoEntregado = L_MONTOE.text
B4XPages.MainPage.montoRechazado = l_rechazo.text B4XPages.MainPage.montoRechazado = l_rechazo.text
reqManager.Initialize(Me, B4XPages.MainPage.server) reqManager.Initialize(Me, B4XPages.MainPage.server)
' LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red) ' LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red)
If l_ctast.Text = 0 And l_porvisitar.Text <> 0 Then If l_ctast.Text = 0 And l_porvisitar.Text <> 0 Then
Label9.Visible = True Label9.Visible = True
L_MONTOE.Visible = True L_MONTOE.Visible = True
'' hacer validacion su hay rechazo '' hacer validacion su hay rechazo
' c=Starter.skmt.ExecQuery("select * from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 order by HVD_CODPROMO desc, HVD_PRONOMBRE asc") ' c=Starter.skmt.ExecQuery("select * from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 order by HVD_CODPROMO desc, HVD_PRONOMBRE asc")
' If c.RowCount > 0 Then ' If c.RowCount > 0 Then
@@ -616,21 +591,16 @@ Sub B4XPage_Appear
End If End If
' Label9.Visible = True ' Label9.Visible = True
' L_MONTOE.Visible = True ' L_MONTOE.Visible = True
' If l_ctast.Text = 0 Then ' If l_ctast.Text = 0 Then
'
' Else ' Else
' StartActivity(MAPA_RUTAS) ' StartActivity(MAPA_RUTAS)
' End If ' End If
' checachek ' checachek
End Sub End Sub
Sub checachek Sub checachek
b = Starter.skmt.ExecQuery("SELECT CHECADO FROM CHECADO_CHECK") b = Starter.skmt.ExecQuery("SELECT CHECADO FROM CHECADO_CHECK")
If b.RowCount > 0 Then If b.RowCount > 0 Then
b.Position = 0 b.Position = 0
If b.GetString("CHECADO") = 0 Then If b.GetString("CHECADO") = 0 Then
b_check.Visible = True b_check.Visible = True
@@ -638,7 +608,7 @@ Sub checachek
b_check.Visible =False b_check.Visible =False
End If End If
b.Close b.Close
End If End If
End Sub End Sub
Sub IsConnectedToInternet As Boolean 'ignore Sub IsConnectedToInternet As Boolean 'ignore
@@ -666,12 +636,10 @@ End Sub
Sub trabajar_Click Sub trabajar_Click
If b_check.Visible = True Then If b_check.Visible = True Then
MsgboxAsync("Favor de hacer el checklist.","Atención") MsgboxAsync("Favor de hacer el checklist.","Atención")
Else Else
B4XPages.ShowPage("Clientes")
B4XPages.ShowPage("Clientes")
End If End If
End Sub End Sub
Sub Subir_Click Sub Subir_Click
@@ -686,7 +654,7 @@ Sub Subir_Click
' Starter.skmt.ExecNonQuery2("INSERT INTO BLOCKENVIO(ENVIADO) VALUES (?)", Array As Object (1)) ' Starter.skmt.ExecNonQuery2("INSERT INTO BLOCKENVIO(ENVIADO) VALUES (?)", Array As Object (1))
' envioinfo ' envioinfo
' Else ' Else
envioinfo envioinfo
' End If ' End If
' c.Close ' c.Close
@@ -697,9 +665,6 @@ Sub Subir_Click
End Sub End Sub
Sub envioinfo Sub envioinfo
' NOVENTA ' NOVENTA
c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO, NV_REPROGRAMAR FROM NOVENTA") c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO, NV_REPROGRAMAR FROM NOVENTA")
D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
@@ -719,7 +684,6 @@ Sub envioinfo
cuantos_noventa = D.GetString("CUANTOS_NOVENTA") cuantos_noventa = D.GetString("CUANTOS_NOVENTA")
d.Close d.Close
'PAGARES. 'PAGARES.
Dim pa As Cursor =Starter.skmt.ExecQuery("select PA_ALMACEN,PA_RUTA_REP,PA_RUTAPREV,PA_FECHA_PREV,PA_CAPTURA,PA_MONTO,PA_USUARIO,PA_CLIENTE,IFNULL(PA_CANCELADO,0) AS PA_CANCELADO from PAGARES") Dim pa As Cursor =Starter.skmt.ExecQuery("select PA_ALMACEN,PA_RUTA_REP,PA_RUTAPREV,PA_FECHA_PREV,PA_CAPTURA,PA_MONTO,PA_USUARIO,PA_CLIENTE,IFNULL(PA_CANCELADO,0) AS PA_CANCELADO from PAGARES")
If pa.RowCount > 0 Then If pa.RowCount > 0 Then
@@ -736,19 +700,15 @@ Sub envioinfo
Dim fechaano As String = fechaenvio1(2).SubString(2) Dim fechaano As String = fechaenvio1(2).SubString(2)
Dim fechareal As String = fechaenvio1(0)&"/"&fechaenvio1(1)&"/"&fechaano Dim fechareal As String = fechaenvio1(0)&"/"&fechaenvio1(1)&"/"&fechaano
' Log(fechareal) ' Log(fechareal)
Dim fechacap() As String Dim fechacap() As String
fechacap = Regex.Split("/",pa.GetString("PA_CAPTURA")) fechacap = Regex.Split("/",pa.GetString("PA_CAPTURA"))
Dim fechacapano As String = fechacap(2).SubString(2) Dim fechacapano As String = fechacap(2).SubString(2)
Dim fechacapreal As String = fechacap(0)&"/"&fechacap(1)&"/"&fechacapano Dim fechacapreal As String = fechacap(0)&"/"&fechacap(1)&"/"&fechacapano
If pa.GetString("PA_CANCELADO") = "2" Then If pa.GetString("PA_CANCELADO") = "2" Then
cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),pa.GetString("PA_MONTO"),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),pa.GetString("PA_RUTA_REP"),fechareal,pa.GetString("PA_USUARIO"),2) cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),pa.GetString("PA_MONTO"),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),pa.GetString("PA_RUTA_REP"),fechareal,pa.GetString("PA_USUARIO"),2)
Else Else
cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),pa.GetString("PA_MONTO"),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),pa.GetString("PA_RUTA_REP"),fechareal,pa.GetString("PA_USUARIO"),"") cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),pa.GetString("PA_MONTO"),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),pa.GetString("PA_RUTA_REP"),fechareal,pa.GetString("PA_USUARIO"),"")
End If End If
reqManager.ExecuteCommand(cmd , "ins_pagares") reqManager.ExecuteCommand(cmd , "ins_pagares")
Next Next
End If End If
@@ -762,7 +722,6 @@ Sub envioinfo
If ab.RowCount > 0 Then If ab.RowCount > 0 Then
For i=0 To ab.RowCount -1 For i=0 To ab.RowCount -1
ab.Position = i ab.Position = i
Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}'"$) Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}'"$)
ab1.Position = 0 ab1.Position = 0
@@ -817,8 +776,6 @@ Sub envioinfo
b.Close b.Close
f.Close f.Close
End If End If
c = Starter.skmt.ExecQuery("SELECT MIL, QUINIENTOS, DOCIENTOS, CIEN, CINCUENTA, VEINTE FROM TABULADOR_BILLETES") c = Starter.skmt.ExecQuery("SELECT MIL, QUINIENTOS, DOCIENTOS, CIEN, CINCUENTA, VEINTE FROM TABULADOR_BILLETES")
d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA")
b = Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN") b = Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN")
@@ -831,7 +788,6 @@ Sub envioinfo
c.Position=i c.Position=i
Dim cmd As DBCommand Dim cmd As DBCommand
Dim fechatabulador() As String = Regex.Split(" ", f.GetString("HVD_FECHA")) Dim fechatabulador() As String = Regex.Split(" ", f.GetString("HVD_FECHA"))
Dim fechatabulador3 As String = fechatabulador(0) Dim fechatabulador3 As String = fechatabulador(0)
cmd.Initialize cmd.Initialize
cmd.Name = "insert_tabulador_billetes_GUNA_VN" cmd.Name = "insert_tabulador_billetes_GUNA_VN"
@@ -887,10 +843,6 @@ Sub envioinfo
Next Next
End If End If
c.Close c.Close
Dim cmd As DBCommand Dim cmd As DBCommand
cmd.Initialize cmd.Initialize
cmd.Name = "insert_drop_rep_GUNA_VN" cmd.Name = "insert_drop_rep_GUNA_VN"
@@ -1036,7 +988,6 @@ Sub cargar_Click
' Next ' Next
' End If ' End If
' c.Close ' c.Close
D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
d.Position=0 d.Position=0
cuantos_noventa = D.GetString("CUANTOS_NOVENTA") cuantos_noventa = D.GetString("CUANTOS_NOVENTA")
@@ -1048,17 +999,12 @@ Sub cargar_Click
ToastMessageShow("Se actualizarán los datos, este proceso podria tardar hasta un minuto, gracias" , True) ToastMessageShow("Se actualizarán los datos, este proceso podria tardar hasta un minuto, gracias" , True)
ProgressDialogShow2("Descargando rutas, espere un momento.", False) ProgressDialogShow2("Descargando rutas, espere un momento.", False)
If Not(IsConnectedToInternet) Then MsgboxAsync("No hay conexión a Internet", "Revisa tu conexión") If Not(IsConnectedToInternet) Then MsgboxAsync("No hay conexión a Internet", "Revisa tu conexión")
Else Else
Log("XXXX") Log("XXXX")
MsgboxAsync("Para poder cargar día no puedes tener venta del día anterior. Por favor haz FIN DIA e intenta nuevamente.","Atención") MsgboxAsync("Para poder cargar día no puedes tener venta del día anterior. Por favor haz FIN DIA e intenta nuevamente.","Atención")
End If End If
End Sub End Sub
Sub JobDone(Job As HttpJob) Sub JobDone(Job As HttpJob)
' Private r As DBResult = reqManager.HandleJob(Job) ' Private r As DBResult = reqManager.HandleJob(Job)
If Job.Success = False Then If Job.Success = False Then
@@ -1128,7 +1074,6 @@ Sub JobDone(Job As HttpJob)
End If End If
End If End If
If Job.JobName = "DBRequest" Then If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job) Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "gunaprod3" Then 'query tag If result.Tag = "gunaprod3" Then 'query tag
@@ -1404,7 +1349,6 @@ Sub JobDone(Job As HttpJob)
End If End If
End If End If
If Job.JobName = "DBRequest" Then If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job) Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "PAGARES" Then 'query tag If result.Tag = "PAGARES" Then 'query tag
@@ -1433,8 +1377,6 @@ Sub JobDone(Job As HttpJob)
End If End If
End If End If
If Job.JobName = "DBRequest" Then If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job) Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "valida_pedidoc" Then 'query tag If result.Tag = "valida_pedidoc" Then 'query tag
@@ -1574,18 +1516,13 @@ Sub JobDone(Job As HttpJob)
Job.Release Job.Release
End If End If
If reqs.Size = 0 Then If reqs.Size = 0 Then
ProgressDialogHide ProgressDialogHide
c = Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM CHECADO_CHECK") c = Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM CHECADO_CHECK")
c.Position = 0 c.Position = 0
If c.GetString("CUANTOS") = 0 Then If c.GetString("CUANTOS") = 0 Then
Starter.skmt.ExecNonQuery2("insert into CHECADO_CHECK (CHECADO) VALUES(?)", Array As String("0")) Starter.skmt.ExecNonQuery2("insert into CHECADO_CHECK (CHECADO) VALUES(?)", Array As String("0"))
Else If c.GetString("CUANTOS") = 1 Then Else If c.GetString("CUANTOS") = 1 Then
End If End If
c.Close c.Close
' Log(reqs.size) ' Log(reqs.size)
@@ -1636,7 +1573,7 @@ Sub BUSCA_Click
MsgboxAsync("Favor de hacer el checklist.","Atención") MsgboxAsync("Favor de hacer el checklist.","Atención")
Else Else
' StartActivity(BUSCAR) ' StartActivity(BUSCAR)
B4XPages.ShowPage("Buscar") B4XPages.ShowPage("Buscar")
End If End If
End Sub End Sub
@@ -1710,36 +1647,34 @@ Sub B_CLIEPROD_Click
Panel1.Width = Root.Width Panel1.Width = Root.Width
Panel1.Height = Root.Height Panel1.Height = Root.Height
' ListView1. = Panel1.Width / 2 ' ListView1. = Panel1.Width / 2
B_REGRESA.Left = (Panel1.Width - B_REGRESA.Width) / 2 B_REGRESA.Left = (Panel1.Width - B_REGRESA.Width) / 2
B_REGRESA.Top = Panel1.Height - B_REGRESA.Height B_REGRESA.Top = Panel1.Height - B_REGRESA.Height
BUSCA.Visible = False BUSCA.Visible = False
connecta.Visible = False connecta.Visible = False
trabajar.Visible = False trabajar.Visible = False
B_CLIEPROD.Visible = False B_CLIEPROD.Visible = False
Panel1.Visible = True Panel1.Visible = True
Panel1.BringToFront Panel1.BringToFront
Btn_Ubicar_Ru.Visible=False Btn_Ubicar_Ru.Visible=False
c=Starter.skmt.ExecQuery("select * from kmt_info WHERE gestion <> 0 order by HORAENT") c=Starter.skmt.ExecQuery("select * from kmt_info WHERE gestion <> 0 order by HORAENT")
Subs.SetDivider(ListView1, Colors.LightGray, 2) Subs.SetDivider(ListView1, Colors.LightGray, 2)
ListView1.Clear ListView1.Clear
ListView1.TwoLinesLayout.ItemHeight = 120dip ListView1.TwoLinesLayout.ItemHeight = 120dip
Dim label1 As Label
Dim label1 As Label label1 = ListView1.TwoLinesLayout.Label
label1 = ListView1.TwoLinesLayout.Label label1.TextSize = 22
label1.TextSize = 22 label1.TextColor = Colors.White
label1.TextColor = Colors.White label1.Height = 60dip
label1.Height = 60dip Dim label2 As Label
Dim label2 As Label label2 = ListView1.TwoLinesLayout.SecondLabel
label2 = ListView1.TwoLinesLayout.SecondLabel label2.TextSize = 22
label2.TextSize = 22 label2.TextColor = Colors.White
label2.TextColor = Colors.White label2.Top = 60dip
label2.Top = 60dip
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
If c.RowCount>0 Then If c.RowCount>0 Then
For i=0 To c.RowCount -1 For i=0 To c.RowCount -1
c.Position=i c.Position=i
If c.GetString("gestion") = "2" Then If c.GetString("gestion") = "2" Then
ESTATUS = "ENTREGADO" ESTATUS = "ENTREGADO"
Log("entrega") Log("entrega")
@@ -1749,12 +1684,8 @@ Sub B_CLIEPROD_Click
Else Else
ESTATUS = "SIN ESTATUS" ESTATUS = "SIN ESTATUS"
End If End If
If ESTATUS = "ENTREGADO" Then If ESTATUS = "ENTREGADO" Then
Private vc As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID,HVD_COSTO_TOT, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CAT_GP_PRECIO from HIST_VENTAS LEFT JOIN CAT_GUNAPROD ON CAT_GP_ID = HVD_PROID where BCAJAS = 0 and HVD_CODPROMO ='${Subs.traealmacen}' and HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$) Private vc As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID,HVD_COSTO_TOT, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CAT_GP_PRECIO from HIST_VENTAS LEFT JOIN CAT_GUNAPROD ON CAT_GP_ID = HVD_PROID where BCAJAS = 0 and HVD_CODPROMO ='${Subs.traealmacen}' and HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$)
Private cuenta0 As String = 0 Private cuenta0 As String = 0
Private arti As String = 0 Private arti As String = 0
If vc.RowCount > 0 Then If vc.RowCount > 0 Then
@@ -1766,7 +1697,6 @@ Sub B_CLIEPROD_Click
Next Next
End If End If
' Log(cuenta0) ' Log(cuenta0)
Private vc2 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 1"$) Private vc2 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 1"$)
Private Cuenta1 As String = 0 Private Cuenta1 As String = 0
Private arti1 As String = 0 Private arti1 As String = 0
@@ -1783,12 +1713,10 @@ Sub B_CLIEPROD_Click
Next Next
End If End If
' Log(Cuenta1) ' Log(Cuenta1)
Private vc4 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT, HVD_RECHAZO, HVD_CODPROMO from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 0 and HVD_CODPROMO <> '${Subs.traeAlmacen}'"$) Private vc4 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT, HVD_RECHAZO, HVD_CODPROMO from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 0 and HVD_CODPROMO <> '${Subs.traeAlmacen}'"$)
Private Cuenta2 As String = 0 Private Cuenta2 As String = 0
Private arti2 As String = 0 Private arti2 As String = 0
If vc4.RowCount > 0 Then If vc4.RowCount > 0 Then
For k = 0 To vc4.RowCount - 1 For k = 0 To vc4.RowCount - 1
vc4.Position = k vc4.Position = k
If vc4.GetString("HVD_PROID") <> vc4.GetString("HVD_CODPROMO") Then If vc4.GetString("HVD_PROID") <> vc4.GetString("HVD_CODPROMO") Then
@@ -1805,11 +1733,9 @@ Sub B_CLIEPROD_Click
End If End If
End If End If
End If End If
Next Next
End If End If
' Log(arti2) ' Log(arti2)
Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT, iFNULL(PE_COSTO_TOT,0) AS PE_COSTO_TOT FROM PEDIDO WHERE PE_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$) Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT, iFNULL(PE_COSTO_TOT,0) AS PE_COSTO_TOT FROM PEDIDO WHERE PE_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$)
Private Cuenta3 As String = 0 Private Cuenta3 As String = 0
Private arti3 As String = 0 Private arti3 As String = 0
@@ -1820,18 +1746,12 @@ Sub B_CLIEPROD_Click
Cuenta3 = Cuenta3 + c4.GetString("PE_COSTO_TOT") Cuenta3 = Cuenta3 + c4.GetString("PE_COSTO_TOT")
Next Next
End If End If
Private TOTALMONTO As String = cuenta0 + Cuenta1 + Cuenta2 + Cuenta3 Private TOTALMONTO As String = cuenta0 + Cuenta1 + Cuenta2 + Cuenta3
Private TOTALcantidad As String = arti + arti1 +arti2 + arti3 Private TOTALcantidad As String = arti + arti1 +arti2 + arti3
ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO")&" - " &c.GetString("CAT_CL_NOMBRE"), "Articulos :"& TOTALcantidad &" Monto :"& NumberFormat2(TOTALMONTO,0,2,2,True) & " " & ESTATUS ) ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO")&" - " &c.GetString("CAT_CL_NOMBRE"), "Articulos :"& TOTALcantidad &" Monto :"& NumberFormat2(TOTALMONTO,0,2,2,True) & " " & ESTATUS )
Log("si entre2") Log("si entre2")
Else If ESTATUS = "RECHAZADO" Then Else If ESTATUS = "RECHAZADO" Then
Private vc As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CAT_GP_PRECIO, HVD_COSTO_TOT from HIST_VENTAS LEFT JOIN CAT_GUNAPROD ON CAT_GP_ID = HVD_PROID where BCAJAS = 0 and HVD_CODPROMO ='${Subs.traealmacen}' and HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$) Private vc As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CAT_GP_PRECIO, HVD_COSTO_TOT from HIST_VENTAS LEFT JOIN CAT_GUNAPROD ON CAT_GP_ID = HVD_PROID where BCAJAS = 0 and HVD_CODPROMO ='${Subs.traealmacen}' and HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$)
Private cuenta0 As String = 0 Private cuenta0 As String = 0
Private arti As String = 0 Private arti As String = 0
If vc.RowCount > 0 Then If vc.RowCount > 0 Then
@@ -1844,7 +1764,6 @@ Sub B_CLIEPROD_Click
Next Next
End If End If
' Log(cuenta0) ' Log(cuenta0)
Private vc2 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 1"$) Private vc2 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 1"$)
Private Cuenta1 As String = 0 Private Cuenta1 As String = 0
Private arti1 As String = 0 Private arti1 As String = 0
@@ -1861,12 +1780,10 @@ Sub B_CLIEPROD_Click
Next Next
End If End If
' Log(Cuenta1) ' Log(Cuenta1)
Private vc4 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT, HVD_RECHAZO, HVD_CODPROMO from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 0 and HVD_CODPROMO <> '${Subs.traeAlmacen}'"$) Private vc4 As Cursor = Starter.skmt.ExecQuery($"select HVD_PROID, HVD_CANT, IFNULL(HVD_RECHAZOCANT, 0) AS HVD_RECHAZOCANT, CANTC,HVD_COSTO_TOT, HVD_RECHAZO, HVD_CODPROMO from HIST_VENTAS where HVD_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}' AND BCAJAS = 0 and HVD_CODPROMO <> '${Subs.traeAlmacen}'"$)
Private Cuenta2 As String = 0 Private Cuenta2 As String = 0
Private arti2 As String = 0 Private arti2 As String = 0
If vc4.RowCount > 0 Then If vc4.RowCount > 0 Then
For k = 0 To vc4.RowCount - 1 For k = 0 To vc4.RowCount - 1
vc4.Position = k vc4.Position = k
If vc4.GetString("HVD_PROID") <> vc4.GetString("HVD_CODPROMO") Then If vc4.GetString("HVD_PROID") <> vc4.GetString("HVD_CODPROMO") Then
@@ -1883,11 +1800,9 @@ Sub B_CLIEPROD_Click
End If End If
End If End If
End If End If
Next Next
End If End If
' Log(arti2) ' Log(arti2)
Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT, iFNULL(PE_COSTO_TOT,0) AS PE_COSTO_TOT FROM PEDIDO WHERE PE_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$) Private c4 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(PE_CANT,0) AS PE_CANT, iFNULL(PE_COSTO_TOT,0) AS PE_COSTO_TOT FROM PEDIDO WHERE PE_CLIENTE = '${c.GetString("CAT_CL_CODIGO")}'"$)
Private Cuenta3 As String = 0 Private Cuenta3 As String = 0
Private arti3 As String = 0 Private arti3 As String = 0
@@ -1898,18 +1813,13 @@ Sub B_CLIEPROD_Click
Cuenta3 = Cuenta3 + c4.GetString("PE_COSTO_TOT") Cuenta3 = Cuenta3 + c4.GetString("PE_COSTO_TOT")
Next Next
End If End If
Private TOTALMONTO As String = cuenta0 + Cuenta1 + Cuenta2 + Cuenta3 Private TOTALMONTO As String = cuenta0 + Cuenta1 + Cuenta2 + Cuenta3
Private TOTALcantidad As String = arti + arti1 +arti2 + arti3 Private TOTALcantidad As String = arti + arti1 +arti2 + arti3
' Log("si entre")
Log("si entre")
ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO")&" - " &c.GetString("CAT_CL_NOMBRE"), "Articulos :"& TOTALcantidad &" Monto :"& NumberFormat2(TOTALMONTO,0,2,2,True) & " " & ESTATUS ) ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO")&" - " &c.GetString("CAT_CL_NOMBRE"), "Articulos :"& TOTALcantidad &" Monto :"& NumberFormat2(TOTALMONTO,0,2,2,True) & " " & ESTATUS )
End If End If
Next Next
End If End If
' c=skmt.ExecQuery("select HVD_CLIENTE, HVD_PRONOMBRE, HVD_CANT, HVD_ESTATUS from HIST_VENTAS ORDER BY HVD_PRONOMBRE") ' c=skmt.ExecQuery("select HVD_CLIENTE, HVD_PRONOMBRE, HVD_CANT, HVD_ESTATUS from HIST_VENTAS ORDER BY HVD_PRONOMBRE")
' '
@@ -1938,7 +1848,7 @@ Sub B_CLIEPROD_Click
' ListView1.AddTwoLines(c.GetString("HVD_PRONOMBRE") & " " & c.GetString("HVD_CLIENTE") , c.GetString("HVD_CANT") & " " & ESTATUS ) ' ListView1.AddTwoLines(c.GetString("HVD_PRONOMBRE") & " " & c.GetString("HVD_CLIENTE") , c.GetString("HVD_CANT") & " " & ESTATUS )
' Next ' Next
' End If ' End If
End If End If
End Sub End Sub
Sub B_REGRESA_Click Sub B_REGRESA_Click
@@ -1956,8 +1866,7 @@ Sub Btn_Ubicar_Ru_Click
If b_check.Visible = True Then If b_check.Visible = True Then
MsgboxAsync("Favor de hacer el checklist.","Atención") MsgboxAsync("Favor de hacer el checklist.","Atención")
Else Else
StartActivity(MAPA_RUTAS)
StartActivity(MAPA_RUTAS)
End If End If
End Sub End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -1966,22 +1875,18 @@ Private Sub b_tabulador_Click
If b_check.Visible = True Then If b_check.Visible = True Then
MsgboxAsync("Favor de hacer el checklist.","Atención") MsgboxAsync("Favor de hacer el checklist.","Atención")
Else Else
B4XPages.ShowPage("tabulador") B4XPages.ShowPage("tabulador")
End If End If
End Sub End Sub
Private Sub b_check_Click Private Sub b_check_Click
B4XPages.ShowPage("checklist") B4XPages.ShowPage("checklist")
End Sub End Sub
Private Sub ListView1_ItemClick (Position As Int, Value As Object) Private Sub ListView1_ItemClick (Position As Int, Value As Object)
Log(Value) ' Log(Value)
Dim clieasing() As String = Regex.Split(" ", Value) Dim clieasing() As String = Regex.Split(" ", Value)
Log(clieasing(0)) Log(clieasing(0))
Starter.skmt.ExecNonQuery("delete from CUENTAA") Starter.skmt.ExecNonQuery("delete from CUENTAA")
Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(clieasing(0))) Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(clieasing(0)))
B4XPages.ShowPage("Cliente") B4XPages.ShowPage("Cliente")
@@ -2000,26 +1905,19 @@ Private Sub b_rechazos_Click
' label1.TextSize = 20 ' label1.TextSize = 20
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
' lv_prod_Prin.Left = p_prod.Width / 2 ' lv_prod_Prin.Left = p_prod.Width / 2
lv_prod_Prin.Width = Root.Width - (Root.Width * .10) lv_prod_Prin.Width = Root.Width - (Root.Width * .10)
lv_prod_Prin.Height = Root.Height - (2 * (b_regreso.Height)) lv_prod_Prin.Height = Root.Height - (2 * (b_regreso.Height))
Subs.centraListView(lv_prod_Prin,Root.Width) Subs.centraListView(lv_prod_Prin,Root.Width)
p_prod.Visible = True p_prod.Visible = True
p_prod.BringToFront p_prod.BringToFront
Private c As Cursor = Starter.skmt.ExecQuery("select HVD_PRONOMBRE, IFNULL(SUM(HVD_RECHAZOCANT), 0) AS HVD_RECHAZOCANT, HVD_PROID from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 GROUP BY HVD_PROID order by HVD_PRONOMBRE asc") Private c As Cursor = Starter.skmt.ExecQuery("select HVD_PRONOMBRE, IFNULL(SUM(HVD_RECHAZOCANT), 0) AS HVD_RECHAZOCANT, HVD_PROID from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 GROUP BY HVD_PROID order by HVD_PRONOMBRE asc")
lv_prod_Prin.SingleLineLayout.Label.TextColor = Colors.White lv_prod_Prin.SingleLineLayout.Label.TextColor = Colors.White
lv_prod_Prin.Clear lv_prod_Prin.Clear
If c.RowCount > 0 Then If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1 For i = 0 To c.RowCount - 1
c.Position = i c.Position = i
Dim itemText As String Dim itemText As String
Private c3 As Cursor=Starter.skmt.ExecQuery($"select Ifnull(sum(PE_CANT),0) AS PE_CANT from PEDIDO WHERE PE_PROID ='${c.GetString("HVD_PROID")}'"$) Private c3 As Cursor=Starter.skmt.ExecQuery($"select Ifnull(sum(PE_CANT),0) AS PE_CANT from PEDIDO WHERE PE_PROID ='${c.GetString("HVD_PROID")}'"$)
Private resta As String = 0 Private resta As String = 0
@@ -2035,8 +1933,6 @@ Private Sub b_rechazos_Click
itemText = $"${c.GetString("HVD_PRONOMBRE")} ${CRLF}Inventario: ${(c.GetInt("HVD_RECHAZOCANT") - resta)}"$ itemText = $"${c.GetString("HVD_PRONOMBRE")} ${CRLF}Inventario: ${(c.GetInt("HVD_RECHAZOCANT") - resta)}"$
lv_prod_Prin.AddSingleLine(itemText) lv_prod_Prin.AddSingleLine(itemText)
End If End If
Next Next
Else Else
lv_prod_Prin.AddSingleLine("No hay datos disponibles.") lv_prod_Prin.AddSingleLine("No hay datos disponibles.")
@@ -2100,12 +1996,8 @@ Private Sub B_PAGARES_Click
For i = 0 To c.RowCount - 1 For i = 0 To c.RowCount - 1
c.Position = i c.Position = i
Dim itemText As String Dim itemText As String
itemText = $"NOMBRE.: ${c.GetString("NOMBRE")} ${CRLF}FOLIO: ${(c.GetInt("NOTA"))}, MONTO: $ ${(c.GetInt("SALDO_PENDIENTE"))}"$ itemText = $"NOMBRE.: ${c.GetString("NOMBRE")} ${CRLF}FOLIO: ${(c.GetInt("NOTA"))}, MONTO: $ ${(c.GetInt("SALDO_PENDIENTE"))}"$
ListView2.AddSingleLine(itemText) ListView2.AddSingleLine(itemText)
Next Next
Else Else
ListView2.AddSingleLine("No hay datos disponibles.") ListView2.AddSingleLine("No hay datos disponibles.")
@@ -2113,8 +2005,6 @@ Private Sub B_PAGARES_Click
c.Close c.Close
End Sub End Sub
Private Sub Button1_Click Private Sub Button1_Click
P_PAGARES.Visible = False P_PAGARES.Visible = False
End Sub End Sub

Binary file not shown.

Binary file not shown.

View File

@@ -310,6 +310,7 @@ Sub InfoWindowLongClick_Event (MethodName As String, Args() As Object) As Object
' B4XPages.ShowPage("clientes") ' B4XPages.ShowPage("clientes")
B4XPages.MainPage.clientes.caculaRutaGPS(B4XPages.MainPage.clientes.todosAVisitar, False) B4XPages.MainPage.clientes.caculaRutaGPS(B4XPages.MainPage.clientes.todosAVisitar, False)
Log("A VISITAR:" & B4XPages.MainPage.clientes.todosAVisitar) Log("A VISITAR:" & B4XPages.MainPage.clientes.todosAVisitar)
B4XPages.MainPage.clientes.mostrarProgressDialog= True
B4XPages.ShowPage("clientes") B4XPages.ShowPage("clientes")
Loop Loop
End If End If

491
B4A/QRGenerator.bas Normal file
View File

@@ -0,0 +1,491 @@
B4J=true
Group=Default Group
ModulesStructureVersion=1
Type=Class
Version=6.28
@EndOfDesignText@
'version 1.60
Sub Class_Globals
Private xui As XUI
Public cvs As B4XCanvas
Private ModuleSize As Int
Private GFSize As Int = 256
Private ExpTable(GFSize) As Int
Private LogTable(GFSize) As Int
Private PolyZero() As Int = Array As Int(0)
Private Generator1L() As Int = Array As Int(1, 127, 122, 154, 164, 11, 68, 117)
Private Generator4L() As Int = Array As Int(1, 152, 185, 240, 5, 111, 99, 6, 220, 112, 150, 69, 36, 187, 22, 228, 198, 121, 121, 165, 174) '4L
Private Generator4H() As Int = Array As Int(1, 59, 13, 104, 189, 68, 209, 30, 8, 163, 65, 41, 229, 98, 50, 36, 59)
Private Generator9L() As Int = Array As Int(1, 212, 246, 77, 73, 195, 192, 75, 98, 5, 70, 103, 177, 22, 217, 138, 51, 181, 246, 72, 25, 18, 46, 228, 74, 216, 195, 11, 106, 130, 150)
Private TempBB As B4XBytesBuilder
Private Matrix(0, 0) As Boolean
Private Reserved(0, 0) As Boolean
Private NumberOfModules As Int
Private mBitmapSize As Int
Type QRVersionData (Format() As Byte, Generator() As Int, MaxSize As Int, Version As Int, MaxUsableSize As Int, Alignments() As Int, _
Group1Size As Int, Group2Size As Int, Block1Size As Int, Block2Size As Int, VersionName As String, VersionInformation() As Byte)
Private versions As List
End Sub
Public Sub Initialize (BitmapSize As Int)
TempBB.Initialize
mBitmapSize = BitmapSize
PrepareTables
versions.Initialize
Dim l0() As Byte = Array As Byte(1,1,1,0,1,1,1,1,1,0,0,0,1,0,0)
Dim h0() As Byte = Array As Byte(0,0,1,0,1,1,0,1,0,0,0,1,0,0,1)
versions.Add(CreateVersionData(1, "1L", Generator1L, l0, 19 * 8, 17, Array As Int(), 1, 0, 19, 0, Null))
versions.Add(CreateVersionData(4, "4H", Generator4H, h0 , 36 * 8, 34, Array As Int(6, 26), 4, 0, 9, 0, Null))
versions.Add(CreateVersionData(4, "4L", Generator4L, l0 , 80 * 8, 78, Array As Int(6, 26), 1, 0, 80, 0, Null))
versions.Add(CreateVersionData(9, "9L", Generator9L, l0, 232 * 8, 230, Array As Int(6, 26, 46), 2, 0, 116, 0, Array As Byte(0,0,1,0,0,1,1,0,1,0,1,0,0,1,1,0,0,1)))
versions.Add(CreateVersionData(23, "23H", Generator9L, h0, 464 * 8, 461, Array As Int(6, 30, 54, 78, 102), 16, 14, 15, 16, _
Array As Byte(0,1,0,1,1,1,0,1,1,1,1,1,1,0,1,1,0,0)))
versions.Add(CreateVersionData(40, "40H", Generator9L, h0, 1276 * 8, 1273, Array As Int(6, 30, 58, 86, 114, 142, 170), 20, 61, 15, 16, _
Array As Byte(1,0,1,0,0,0,1,1,0,0,0,1,1,0,1,0,0,1)))
versions.Add(CreateVersionData(40, "40L", Generator9L, l0, 2956 * 8, 2953, Array As Int(6, 30, 58, 86, 114, 142, 170), 19, 6, 118, 119, _
Array As Byte(1,0,1,0,0,0,1,1,0,0,0,1,1,0,1,0,0,1)))
End Sub
Private Sub CreateVersionData (Version As Int, Name As String, Generator() As Int, Format() As Byte, MaxSize As Int, MaxUsableSize As Int, Alignments() As Int, _
Group1Size As Int, Group2Size As Int, Block1Size As Int, Block2Size As Int, VersionInformation() As Byte) As QRVersionData
Dim v As QRVersionData
v.Initialize
v.Version = Version
v.VersionName = Name
v.Generator = Generator
v.Format = Format
v.MaxSize = MaxSize
v.MaxUsableSize = MaxUsableSize
v.Alignments = Alignments
v.Group1Size = Group1Size
v.Group2Size = Group2Size
v.Block1Size = Block1Size
v.Block2Size = Block2Size
v.VersionInformation = VersionInformation
Return v
End Sub
Public Sub Create(Text As String) As B4XBitmap
Dim Bytes() As Byte = Text.GetBytes("utf8") 'non-standard but still recommended
Dim vd As QRVersionData
For Each version As QRVersionData In versions
If version.MaxUsableSize >= Bytes.Length Then
vd = version
Exit
End If
Next
If vd.IsInitialized = False Then
Log("Too long!")
Return Null
End If
Log(vd.VersionName & ", Size: " & Bytes.Length)
NumberOfModules = 17 + vd.Version * 4
ModuleSize = mBitmapSize / (NumberOfModules + 8)
mBitmapSize = ModuleSize * (NumberOfModules + 8)
Dim p As B4XView = xui.CreatePanel("")
p.SetLayoutAnimated(0, 0, 0, mBitmapSize, mBitmapSize)
cvs.Initialize(p)
Dim Matrix(NumberOfModules, NumberOfModules) As Boolean
Dim Reserved(NumberOfModules, NumberOfModules) As Boolean
Dim Mode() As Byte = Array As Byte(0, 1, 0, 0) 'byte mode
Dim ContentCountIndicator() As Byte
If vd.Version >= 10 Then
ContentCountIndicator = IntTo16Bits(Bytes.Length)
Else
ContentCountIndicator = UnsignedByteToBits(Bytes.Length)
End If
Dim EncodedData As B4XBytesBuilder
EncodedData.Initialize
EncodedData.Append(Mode)
EncodedData.Append(ContentCountIndicator)
For Each b As Byte In Bytes
EncodedData.Append(UnsignedByteToBits(Bit.And(0xff, b)))
Next
'add terminator
Dim PadSize As Int = Min(4, vd.MaxSize - EncodedData.Length)
Dim pad(PadSize) As Byte
EncodedData.Append(pad)
Do While EncodedData.Length Mod 8 <> 0
EncodedData.Append(Array As Byte(0))
Loop
Do While EncodedData.Length < vd.MaxSize
EncodedData.Append(Array As Byte(1,1,1,0,1,1,0,0))
If EncodedData.Length < vd.MaxSize Then EncodedData.Append(Array As Byte(0,0,0,1,0,0,0,1))
Loop
VersionWithTwoGroups(vd.Generator, vd.Group1Size, vd.Group2Size, vd.Block1Size, vd.Block2Size, EncodedData)
AddFinders (vd)
AddDataToMatrix(EncodedData.ToArray, vd)
DrawMatrix
cvs.Invalidate
Dim bmp As B4XBitmap = cvs.CreateBitmap
cvs.Release
Return bmp
End Sub
Private Sub VersionWithTwoGroups (generator() As Int, Group1Size As Int, Group2Size As Int, Block1Size As Int, Block2Size As Int, EncodedData As B4XBytesBuilder)
Dim ecs As List
ecs.Initialize
Dim dataBlocks As List
dataBlocks.Initialize
Dim PrevIndex As Int
For block1 = 0 To Group1Size + Group2Size - 1
Dim BlockSize As Int
If block1 < Group1Size Then BlockSize = Block1Size Else BlockSize = Block2Size
Dim Data() As Byte = EncodedData.SubArray2(PrevIndex * 8, (PrevIndex + BlockSize) * 8)
PrevIndex = PrevIndex + BlockSize
Dim DataAsInts(Data.Length / 8) As Int
Dim i As Int
For i = 0 To Data.Length - 1 Step 8
DataAsInts(i / 8) = BitsToUnsignedByte(Data, i)
Next
dataBlocks.Add(DataAsInts)
Dim ec() As Int = CalcReedSolomon(DataAsInts, generator)
If ec.Length < generator.Length - 1 Then
Dim ec2(generator.Length - 1) As Int
IntArrayCopy(ec, 0, ec2, generator.Length - 1 - ec.Length, ec.Length)
ec = ec2
End If
ecs.Add(ec)
Next
Dim Interleaved As B4XBytesBuilder
Interleaved.Initialize
For i = 0 To Max(Block1Size, Block2Size) - 1
For block1 = 0 To dataBlocks.Size - 1
Dim ii() As Int = dataBlocks.Get(block1)
If ii.Length > i Then
Interleaved.Append(UnsignedByteToBits(ii(i)))
End If
Next
Next
For i = 0 To generator.Length - 2
For block1 = 0 To dataBlocks.Size - 1
Dim ii() As Int = ecs.Get(block1)
Interleaved.Append(UnsignedByteToBits(ii(i)))
Next
Next
EncodedData.Clear
EncodedData.Append(Interleaved.ToArray)
End Sub
Private Sub AddDataToMatrix (Encoded() As Byte, vd As QRVersionData)
Dim format() As Byte = vd.Format
Dim order As List = CreateOrder
'mask 0: (row + column) mod 2 == 0
For Each b As Byte In Encoded
Dim xy() As Int = GetNextPosition(order)
Matrix(xy(0), xy(1)) = (b = 1)
If (xy(1) + xy(0)) Mod 2 = 0 Then Matrix(xy(0), xy(1)) = Not(Matrix(xy(0), xy(1)))
Next
For i = 0 To 5
Matrix(i, 8) = format(i) = 1
Matrix(8, NumberOfModules - 1 - i) = format(i) = 1
Next
Matrix(7, 8) = format(6) = 1
Matrix(8, NumberOfModules - 1 - 6) = format(6) = 1
Matrix(8, 8) = format(7) = 1
Matrix(8, 7) = format(8) = 1
For i = 0 To 5
Matrix(8, 5 - i) = format(i + 9) = 1
Next
For i = 0 To 7
Matrix(NumberOfModules - 1 - 7 + i, 8) = format(7 + i) = 1
Next
If vd.Version >= 7 Then
Dim VersionInformation() As Byte = vd.VersionInformation
Dim c As Int = 18
For x = 0 To 5
For y = 0 To 2
c = c - 1
Matrix(x, NumberOfModules - 11 + y) = VersionInformation(c) = 1
Matrix(NumberOfModules - 11 + y, x) = VersionInformation(c) = 1
Next
Next
End If
End Sub
Private Sub GetNextPosition (order As List) As Int()
Do While True
Dim xy() As Int = order.Get(0)
order.RemoveAt(0)
If Reserved(xy(0), xy(1)) = False Then Return xy
Loop
Return Null
End Sub
Private Sub CreateOrder As List
Dim Order As List
Order.Initialize
Dim x As Int = NumberOfModules - 1
Dim y As Int = NumberOfModules - 1
Dim dy As Int = -1
Do While x >= 0 And y >= 0
Order.Add(Array As Int(x, y))
Order.Add(Array As Int(x - 1, y))
y = y + dy
If y = -1 Then
x = x - 2
y = 0
dy = 1
Else If y = NumberOfModules Then
x = x - 2
y = NumberOfModules - 1
dy = -1
End If
If x = 6 Then x = x - 1
Loop
Return Order
End Sub
Private Sub DrawMatrix
cvs.DrawRect(cvs.TargetRect, xui.Color_White, True, 0)
Dim r As B4XRect
For y = 0 To NumberOfModules - 1
For x = 0 To NumberOfModules - 1
r.Initialize((x + 4) * ModuleSize, (y + 4) * ModuleSize, 0, 0)
r.Width = ModuleSize
r.Height = ModuleSize
Dim clr As Int
If Matrix(x, y) Then
clr = xui.Color_Black
'cvs.DrawCircle(r.CenterX, r.CenterY, r.Width / 2, clr, True, 0)
cvs.DrawRect(r, clr, True, 0)
End If
Next
Next
End Sub
Private Sub BitsToUnsignedByte (b() As Byte, Offset As Int) As Int
Dim res As Int
For i = 0 To 7
Dim x As Int = Bit.ShiftLeft(1, 7 - i)
res = res + b(i + Offset) * x
Next
Return res
End Sub
Private Sub UnsignedByteToBits (Value As Int) As Byte()
TempBB.Clear
For i = 7 To 0 Step - 1
Dim x As Int = Bit.ShiftLeft(1, i)
Dim ii As Int = Bit.And(Value, x)
If ii <> 0 Then
TempBB.Append(Array As Byte(1))
Else
TempBB.Append(Array As Byte(0))
End If
Next
Return TempBB.ToArray
End Sub
Private Sub IntTo16Bits (Value As Int) As Byte()
TempBB.Clear
For i = 15 To 0 Step - 1
Dim x As Int = Bit.ShiftLeft(1, i)
Dim ii As Int = Bit.And(Value, x)
If ii <> 0 Then
TempBB.Append(Array As Byte(1))
Else
TempBB.Append(Array As Byte(0))
End If
Next
Return TempBB.ToArray
End Sub
Private Sub AddFinders (vd As QRVersionData)
AddFinder(0, 0, 6)
AddFinder(NumberOfModules - 7, 0, 6)
AddFinder(0, NumberOfModules - 7, 6)
AddAlignments(vd.Alignments)
If vd.Version >= 7 Then
For x = 0 To 2
For y = 0 To 5
Reserved(y, NumberOfModules - 11 + x) = True
Reserved(NumberOfModules - 11 + x, y) = True
Next
Next
End If
For i = 8 To NumberOfModules - 8
Matrix(i, 6) = (i Mod 2 = 0)
Matrix(6, i) = (i Mod 2 = 0)
Reserved(i, 6) = True
Reserved(6, i) = True
Next
Matrix(8, NumberOfModules - 1 - 7) = True
Reserved(8, NumberOfModules - 1 - 7) = True
For i = 0 To 7
Reserved(7, i) = True
Reserved(7, NumberOfModules - 1 - i) = True
Reserved(8, NumberOfModules - 1 - i) = True
Reserved(NumberOfModules -1 - 7, i) = True
Reserved(i, 7) = True
Reserved(i,NumberOfModules -1 - 7) = True
Reserved(NumberOfModules -1 - i, 7) = True
Reserved(NumberOfModules -1 - i, 8) = True
Next
For i = 0 To 8
Reserved(8, i) = True
Reserved(i, 8) = True
Next
End Sub
Private Sub AddAlignments (Positions() As Int)
For Each left As Int In Positions
For Each top As Int In Positions
AddFinder (left - 2, top - 2, 4)
Next
Next
End Sub
Private Sub AddFinder (Left As Int, Top As Int, SizeMinOne As Int)
For y = 0 To SizeMinOne
For x = 0 To SizeMinOne
If Reserved(Left + x, Top + y) Then
Return
End If
Next
Next
For y = 0 To SizeMinOne
For x = 0 To SizeMinOne
Dim value As Boolean
If x = 0 Or x = SizeMinOne Or y = 0 Or y = SizeMinOne Then
value = True
Else if x <> 1 And y <> 1 And x <> SizeMinOne - 1 And y <> SizeMinOne - 1 Then
value = True
End If
Matrix(Left + x, Top + y) = value
Reserved(Left + x, Top + y) = True
Next
Next
End Sub
#Region ReedSolomon
Private Sub CalcReedSolomon (Input() As Int, Generator() As Int) As Int()
Dim ecBytes As Int = Generator.Length - 1
Dim InfoCoefficients(Input.Length) As Int
IntArrayCopy(Input, 0, InfoCoefficients, 0, Input.Length)
InfoCoefficients = CreateGFPoly(InfoCoefficients)
InfoCoefficients = PolyMultiplyByMonomial(InfoCoefficients, ecBytes, 1)
Dim remainder() As Int = PolyDivide(InfoCoefficients, Generator)
Return remainder
End Sub
Private Sub PrepareTables
Dim x = 1 As Int
Dim Primitive As Int = 285
For i = 0 To GFSize - 1
ExpTable(i) = x
x = x * 2
If x >= GFSize Then
x = Bit.Xor(Primitive, x)
x = Bit.And(GFSize - 1, x)
End If
Next
For i = 0 To GFSize - 2
LogTable(ExpTable(i)) = i
Next
End Sub
Private Sub CreateGFPoly(Coefficients() As Int) As Int()
If Coefficients.Length > 1 And Coefficients(0) = 0 Then
Dim FirstNonZero As Int = 1
Do While FirstNonZero < Coefficients.Length And Coefficients(FirstNonZero) = 0
FirstNonZero = FirstNonZero + 1
Loop
If FirstNonZero = Coefficients.Length Then
Return Array As Int(0)
End If
Dim res(Coefficients.Length - FirstNonZero) As Int
IntArrayCopy(Coefficients, FirstNonZero, res, 0, res.Length)
Return res
End If
Return Coefficients
End Sub
Private Sub PolyAddOrSubtract(This() As Int, Other() As Int) As Int()
If This(0) = 0 Then Return Other
If Other(0) = 0 Then Return This
Dim Small() As Int = This
Dim Large() As Int = Other
If Small.Length > Large.Length Then
Dim temp() As Int = Small
Small = Large
Large = temp
End If
Dim SumDiff(Large.Length) As Int
Dim LengthDiff As Int = Large.Length - Small.Length
IntArrayCopy(Large, 0, SumDiff, 0, LengthDiff)
For i = LengthDiff To Large.Length - 1
SumDiff(i) = Bit.Xor(Small(i - LengthDiff), Large(i))
Next
Return CreateGFPoly(SumDiff)
End Sub
Private Sub IntArrayCopy(Src() As Int, SrcOffset As Int, Dest() As Int, DestOffset As Int, Count As Int)
For i = 0 To Count - 1
Dest(DestOffset + i) = Src(SrcOffset + i)
Next
End Sub
Private Sub PolyMultiplyByMonomial (This() As Int, Degree As Int, Coefficient As Int) As Int()
If Coefficient = 0 Then Return PolyZero
Dim product(This.Length + Degree) As Int
For i = 0 To This.Length - 1
product(i) = GFMultiply(This(i), Coefficient)
Next
Return CreateGFPoly(product)
End Sub
Private Sub PolyDivide (This() As Int, Other() As Int) As Int()
Dim quotient() As Int = PolyZero
Dim remainder() As Int = This
Dim denominatorLeadingTerm As Int = Other(0)
Dim inverseDenominatorLeadingTerm As Int = GFInverse(denominatorLeadingTerm)
Do While remainder.Length >= Other.Length And remainder(0) <> 0
Dim DegreeDifference As Int = remainder.Length - Other.Length
Dim scale As Int = GFMultiply(remainder(0), inverseDenominatorLeadingTerm)
Dim term() As Int = PolyMultiplyByMonomial(Other, DegreeDifference, scale)
Dim iterationQuotient() As Int = GFBuildMonomial(DegreeDifference, scale)
quotient = PolyAddOrSubtract(quotient, iterationQuotient)
remainder = PolyAddOrSubtract(remainder, term)
Loop
Return remainder
End Sub
Private Sub GFInverse(a As Int) As Int
Return ExpTable(GFSize - LogTable(a) - 1)
End Sub
Private Sub GFMultiply(a As Int, b As Int) As Int
If a = 0 Or b = 0 Then
Return 0
End If
Return ExpTable((LogTable(a) + LogTable(b)) Mod (GFSize - 1))
End Sub
Private Sub GFBuildMonomial(Degree As Int, Coefficient As Int) As Int()
If Coefficient = 0 Then Return PolyZero
Dim c(Degree + 1) As Int
c(0) = Coefficient
Return c
End Sub
#End Region

View File

@@ -71,8 +71,8 @@ Sub Service_Create
cedisLocation.Initialize cedisLocation.Initialize
' cedisLocation.Latitude = "19.48118148992086" ' cedisLocation.Latitude = "19.48118148992086"
' cedisLocation.Longitude = "-99.15295579261536" ' cedisLocation.Longitude = "-99.15295579261536"
cedisLocation.Latitude = "0" cedisLocation.Latitude = "20.5879843"
cedisLocation.Longitude = "0" cedisLocation.Longitude = "-100.3897913"
End Sub End Sub
Sub Service_Start (StartingIntent As Intent) Sub Service_Start (StartingIntent As Intent)

View File

@@ -274,8 +274,8 @@ End Sub
'Mandamos "coords" en un mensaje a "Sprvsr" 'Mandamos "coords" en un mensaje a "Sprvsr"
Sub mandamosLoc(coords As String) 'ignore Sub mandamosLoc(coords As String) 'ignore
'' Log("Iniciamos mandamosLoc "&coords) '' Log("Iniciamos mandamosLoc "&coords)
'' Log("locRequest="&Tracker.locRequest) '' Log("locRequest="&Tracker.locRequest)
' guardaInfoEnBD(coords)'Escribimos coordenadas y fecha a una bd ' guardaInfoEnBD(coords)'Escribimos coordenadas y fecha a una bd
' Dim t As String ' Dim t As String
' If Tracker.locRequest="Activa" Then ' If Tracker.locRequest="Activa" Then
@@ -293,10 +293,10 @@ End Sub
'Regresa la fecha y hora de hoy a las 00:00 en el formato "yyMMddHHMMSS" 'Regresa la fecha y hora de hoy a las 00:00 en el formato "yyMMddHHMMSS"
Sub fechaInicioHoy As String 'ignore Sub fechaInicioHoy As String 'ignore
Dim OrigFormat As String = DateTime.DateFormat 'save orig date format Dim OrigFormat As String = DateTime.DateFormat 'save orig date format
DateTime.DateFormat="yyMMdd" DateTime.DateFormat="yyMMdd"
Private h As String = DateTime.Date(DateTime.Now)&"000000" Private h As String = DateTime.Date(DateTime.Now)&"000000"
DateTime.DateFormat=OrigFormat 'return to orig date format DateTime.DateFormat=OrigFormat 'return to orig date format
Log("Hoy="&h) Log("Hoy="&h)
Return h Return h
End Sub End Sub
@@ -319,12 +319,12 @@ End Sub
'Regresa verdadero si ya pasaron XX minutos de la fechaKMT dada 'Regresa verdadero si ya pasaron XX minutos de la fechaKMT dada
Sub masDeXXMinsKMT(hora As String, mins As Int) As Boolean 'ignore Sub masDeXXMinsKMT(hora As String, mins As Int) As Boolean 'ignore
Try Try
' LogColor($"Hora=${fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute)}, Mins=${mins}, Actual=${fechaKMT(DateTime.Now)}"$,Colors.red) ' LogColor($"Hora=${fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute)}, Mins=${mins}, Actual=${fechaKMT(DateTime.Now)}"$,Colors.red)
If fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute < DateTime.Now Then If fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute < DateTime.Now Then
' Log("+++ +++ "&fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute) & " < " & fechaKMT(DateTime.Now)) ' Log("+++ +++ "&fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute) & " < " & fechaKMT(DateTime.Now))
Return True Return True
Else Else
' Log("+++ +++ "&fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute) & " > " & fechaKMT(DateTime.Now)) ' Log("+++ +++ "&fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute) & " > " & fechaKMT(DateTime.Now))
Return False Return False
End If End If
Catch Catch
@@ -406,7 +406,7 @@ End Sub
'Revisamos que el servicio "PushService" este inicializado y activo 'Revisamos que el servicio "PushService" este inicializado y activo
Sub revisaPushService 'ignore Sub revisaPushService 'ignore
' Private todoBienPS As Boolean = True ' Private todoBienPS As Boolean = True
'' LogColor("**** **** Revisamos PushService **** ****", Colors.RGB(78,0,227)) '' LogColor("**** **** Revisamos PushService **** ****", Colors.RGB(78,0,227))
' Try ' Try
' If Not(PushService.wsh.IsInitialized) Then 'Si no esta inicializado ... ' If Not(PushService.wsh.IsInitialized) Then 'Si no esta inicializado ...
' log2DB("revisaPushService: No esta inicializado ... 'Reinicializando PushService'") ' log2DB("revisaPushService: No esta inicializado ... 'Reinicializando PushService'")
@@ -713,18 +713,17 @@ End Sub
Sub traeConversion(id As String) As String Sub traeConversion(id As String) As String
Private pu As String = "0" Private pu As String = "0"
Private idc As Cursor = kmt.ExecQuery($"select CONVERSION from CAT_GUNAPROD where CAT_GP_ID = '${id}'"$) Private idc As Cursor = kmt.ExecQuery($"select CONVERSION from CAT_GUNAPROD where CAT_GP_ID = '${id}'"$)
If idc.RowCount > 0 Then If idc.RowCount > 0 Then
idc.Position=0 idc.Position=0
If idc.RowCount > 0 And IsNumber(idc.GetString("CONVERSION")) Then pu = idc.GetString("CONVERSION") If idc.RowCount > 0 And IsNumber(idc.GetString("CONVERSION")) Then pu = idc.GetString("CONVERSION")
' Log("id=" & id & "|p=" & x & "|" & idc.GetString("CAT_GP_PRECIO")) ' Log("id=" & id & "|p=" & x & "|" & idc.GetString("CAT_GP_PRECIO"))
End If End If
idc.Close idc.Close
Return pu Return pu
End Sub End Sub
'Trae el cliente desde la BD. 'Trae el cliente desde la BD.
Sub traeCliente As String 'ignore Sub traeCliente As String 'ignore
Private cli As Cursor = Starter.skmt.ExecQuery("Select CUENTA from cuentaa") Private cli As Cursor = Starter.skmt.ExecQuery("Select CUENTA from cuentaa")
@@ -1093,6 +1092,16 @@ Sub CreateBitmapWithNumber(OriginalBitmap As Bitmap, Number As Int) As Bitmap 'i
' Dibujar la imagen original ' Dibujar la imagen original
Canvas.DrawBitmap(OriginalBitmap, Null, DestRect) Canvas.DrawBitmap(OriginalBitmap, Null, DestRect)
' Dibujar el número en el centro del Bitmap y configurar el estilo del texto ' Dibujar el número en el centro del Bitmap y configurar el estilo del texto
Canvas.DrawText(Number, (OriginalBitmap.Width / 2), (OriginalBitmap.Height / 2.4), Typeface.DEFAULT, 20, Colors.White, "CENTER") Canvas.DrawText(Number, (OriginalBitmap.Width / 2), (OriginalBitmap.Height / 2.4), Typeface.DEFAULT, 15, Colors.White, "CENTER")
Return NewBitmap Return NewBitmap
End Sub End Sub
'Muestra en el Log los campos y valores que regresan en el JobDone.
Sub logJobDoneResultados(resultado As DBResult)
For Each records() As Object In resultado.Rows
LogColor($"====== ${resultado.Tag} - REGISTROS = ${resultado.Rows.Size}"$, Colors.RGB(215,37,0))
For Each k As String In resultado.Columns.Keys
LogColor(k & " = " & records(resultado.Columns.Get(k)), Colors.RGB(215,37,0))
Next
Next
End Sub

View File

@@ -230,10 +230,11 @@ Module24=foto
Module25=ManageExternalStorage Module25=ManageExternalStorage
Module26=MAPA_CLIENTE Module26=MAPA_CLIENTE
Module27=MAPA_RUTAS Module27=MAPA_RUTAS
Module28=Starter Module28=QRGenerator
Module29=Subs Module29=Starter
Module3=BatteryUtilities Module3=BatteryUtilities
Module30=Tracker Module30=Subs
Module31=Tracker
Module4=C_Buscar Module4=C_Buscar
Module5=C_Cheklist Module5=C_Cheklist
Module6=C_Cliente Module6=C_Cliente
@@ -242,13 +243,13 @@ Module8=C_Detalle_Promo
Module9=C_DetalleVenta Module9=C_DetalleVenta
NumberOfFiles=91 NumberOfFiles=91
NumberOfLibraries=27 NumberOfLibraries=27
NumberOfModules=30 NumberOfModules=31
Version=12.8 Version=12.8
@EndOfDesignText@ @EndOfDesignText@
#Region Project Attributes #Region Project Attributes
#ApplicationLabel: Guna Reparto #ApplicationLabel: Guna Reparto
#VersionCode: 1 #VersionCode: 1
#VersionName: 5.03.01 #VersionName: 5.03.08
'SupportedOrientations possible values: unspecified, landscape or portrait. 'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait #SupportedOrientations: portrait
#CanInstallToExternalStorage: False #CanInstallToExternalStorage: False

View File

@@ -23,6 +23,7 @@ ModuleBookmarks28=
ModuleBookmarks29= ModuleBookmarks29=
ModuleBookmarks3= ModuleBookmarks3=
ModuleBookmarks30= ModuleBookmarks30=
ModuleBookmarks31=
ModuleBookmarks4= ModuleBookmarks4=
ModuleBookmarks5= ModuleBookmarks5=
ModuleBookmarks6= ModuleBookmarks6=
@@ -54,6 +55,7 @@ ModuleBreakpoints28=
ModuleBreakpoints29= ModuleBreakpoints29=
ModuleBreakpoints3= ModuleBreakpoints3=
ModuleBreakpoints30= ModuleBreakpoints30=
ModuleBreakpoints31=
ModuleBreakpoints4= ModuleBreakpoints4=
ModuleBreakpoints5= ModuleBreakpoints5=
ModuleBreakpoints6= ModuleBreakpoints6=
@@ -85,12 +87,13 @@ ModuleClosedNodes28=
ModuleClosedNodes29= ModuleClosedNodes29=
ModuleClosedNodes3= ModuleClosedNodes3=
ModuleClosedNodes30= ModuleClosedNodes30=
ModuleClosedNodes31=
ModuleClosedNodes4= ModuleClosedNodes4=
ModuleClosedNodes5= ModuleClosedNodes5=
ModuleClosedNodes6= ModuleClosedNodes6=
ModuleClosedNodes7= ModuleClosedNodes7=
ModuleClosedNodes8= ModuleClosedNodes8=
ModuleClosedNodes9= ModuleClosedNodes9=
NavigationStack=C_Principal,Button1_Click,2107,6,C_Principal,Class_Globals,93,0,C_Principal,P_PAGARES_Click,2110,0,C_Principal,B_CLIEPROD_Click,1723,6,C_Principal,b_rechazos_Click,1993,0,C_Principal,B_PAGARES_Click,2081,6,C_Buscar,Class_Globals,0,0,Diseñador Visual,principal.bal,-100,6,Diseñador Visual,cliente.bal,-100,1,C_Buscar,B4XPage_Created,30,0,C_Cliente,Class_Globals,20,0 NavigationStack=C_DetalleVenta,Class_Globals,0,0,C_DetalleVenta,B_IMP_Click,1262,0,C_Clientes,B4XPage_Appear,73,0,C_Clientes,Class_Globals,0,0,C_Clientes,caculaRutaGPS,647,0,C_Cliente,CrearQR,2042,0,C_Cliente,Class_Globals,3,0,Subs,CreateBitmapWithNumber,1079,0,Subs,traeConversion,719,0,Subs,InstallAPK,528,0,B4XMainPage,p_appUpdate_Click,1010,0
SelectedBuild=0 SelectedBuild=0
VisibleModules=1,2,3,4,5,6,7,8,9,10 VisibleModules=2,4,5,6,7,9,30,29,16,27