- VERSION 4.10.09.EP_d

- Se corrige el error de que a veces cuando se mete producto, no lo agrega al pedido (normalmente para Chong), basicamente si se buscaba un producto y se escribia muy rapido, duplicaba los resultados y al agregar el producto, se agregaba en blanco.
- Se hicieron cambios en la clase del cuestionario para que no se amontonen las preguntas y se vean mejor en algunas pantallas.
This commit is contained in:
Jose Alberto Guerra Ugalde
2024-10-10 19:41:44 -06:00
parent 0692b7cb25
commit b7c9be5201
8 changed files with 55 additions and 101 deletions

View File

@@ -481,34 +481,39 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
que_modulo = 1
dentroDeGeocerca = False
indicePregunta = 0
If TOMAR_FOTO <> 0 Then Cuestionario
B4XPages.MainPage.tipo_venta = tipo_venta
encuentasmapa.Initialize
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
LA_GPS.TextColor = Colors.Red
LA_GPS.Text = "SIN UBICACION GPS"
cercavalor = 0
b_Inicio_Fin_venta.Text = "INICIAR VENTA"
b_Inicio_Fin_venta.BringToFront
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
If Not(Starter.enVenta) And la_cuenta.Text <> "0" Then
b_Inicio_Fin_venta.Visible = True
Log("EnVenta Visible")
Else
Log("EnVenta NO Visible")
b_Inicio_Fin_venta.Visible = False
End If
If Not(Starter.gps.GPSEnabled) Then
ToastMessageShow("Es necesario tener el GPS encendido", True)
StartActivity(Starter.gps.LocationSettingsIntent)
End If
skmt.Initialize(ruta,"kmt.db", True)
reqManager.Initialize(Me, Starter.server)
p_camara.Width = Root.Width
p_camara.Height = Root.Height
S2=B4XPages.MainPage.skmt.ExecQuery("select count(*) AS CUANTOS from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)")
S2.Position =0
CUANTOS = S2.GetString("CUANTOS")
@@ -521,7 +526,6 @@ Sub B4XPage_Appear
Else
MONTO_COMPRA = "0"
End If
la_saldotot.Text = MONTO_COMPRA
If MONTO_COMPRA <> "0" Then
META2 = 300 - MONTO_COMPRA
@@ -567,12 +571,10 @@ Sub B4XPage_Appear
Tels.Visible = True
gest.Visible = True
End If
c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then
Tels.Visible = True
gest.Visible = True
Else If c.RowCount = 0 Then
Tels.Visible = False
gest.Visible = False
@@ -589,14 +591,11 @@ Sub B4XPage_Appear
gest.Visible = True
End If
End If
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
End If
End If
CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall")
@@ -650,7 +649,6 @@ Sub B4XPage_Appear
Printer1.Connect
Log("2")
End If
c = skmt.ExecQuery("SELECT HABILITADA FROM IMPRESORA")
If c.RowCount > 0 Then
c.Position = 0
@@ -663,21 +661,7 @@ Sub B4XPage_Appear
B_IMP.Visible = False
End If
' Log(distance)
b_Inicio_Fin_venta.Text = "INICIAR VENTA"
b_Inicio_Fin_venta.BringToFront
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
If Not(Starter.enVenta) And la_cuenta.Text <> "0" Then
b_Inicio_Fin_venta.Visible = True
Log("EnVenta Visible")
Else
Log("EnVenta NO Visible")
b_Inicio_Fin_venta.Visible = False
End If
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
' Log(Subs.InvSuficientePromoEsp)
' Log(Subs.traemontoprod)
If ALMACEN = 32 Then
@@ -691,7 +675,6 @@ Sub B4XPage_Appear
End If
If Not(Subs.traemontoprod) And Subs.vendidoPromoEsp Then
Private j3 As Cursor
Log("SI PROMO")
j3 = B4XPages.MainPage.skmt.ExecQuery2("SELECT PE_CEDIS, PE_CANT,PE_PROID, PE_PRONOMBRE FROM PEDIDO WHERE PE_CEDIS IN (SELECT PE_CEDIS FROM PEDIDO WHERE PE_PROID = ?)",Array As String("PROUNI01"))
Log(j3.RowCount)
@@ -708,27 +691,21 @@ Sub B4XPage_Appear
Else
End If
End If
If ALMACEN = 87 Or ALMACEN = 6 Then
If Subs.traemontoprod Then
Msgbox2Async("El cliente tiene derecho a un descuento de 150 pesos por la compra de mas de $500 en productos Productos participantes" , "Descuento disponible", "Aceptar", "", "", LoadBitmap(File.DirAssets,"alert2.png"), False)
Wait For Msgbox_Result (resultado As Int)
If resultado = DialogResponse.POSITIVE Then
Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT SUM(PE_CANT) AS PIEZAS FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA)")
If c.RowCount > 0 Then
c.Position = 0
Private des As Float = NumberFormat2(150/c.GetString("PIEZAS"),0,2,2,False)
Log( NumberFormat2(des,0,2,2,False))
Private c2 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT Ifnull(SUM(PE_CANT),0) AS PE_CANT FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU < ?",Array As String(des))
If c2.RowCount > 0 Then
c2.Position = 0
Log(c2.GetString("PE_CANT"))
End If
Private c3 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT SUM(PE_CANT) AS PE_CANT FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(des))
If c3.RowCount > 0 Then
c3.Position = 0
@@ -737,16 +714,11 @@ Sub B4XPage_Appear
Log( NumberFormat2(rec,0,2,2,False))
Private cantres As Float = des + rec
Log( NumberFormat2(cantres,0,2,2,False))
Private c5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT Ifnull(SUM(PE_CANT),0) AS PE_CANT FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU > ? and PE_COSTOU < ?",Array As String(des, cantres))
If c5.RowCount > 0 Then
c5.Position = 0
Log(c5.GetString("PE_CANT"))
If c5.GetString("PE_CANT") = "0" Then
Private c4 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT * FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(NumberFormat2(cantres,0,2,2,False)))
If c4.RowCount > 0 Then
For i = 0 To c4.RowCount -1
@@ -754,17 +726,12 @@ Sub B4XPage_Appear
Private recalculo As Float = c4.GetString("PE_COSTOU") - NumberFormat2(cantres,0,2,2,False)
LogColor(recalculo,Colors.Blue)
Private recalculototal As Float = c4.GetString("PE_CANT") * NumberFormat2(recalculo,0,2,2,False)
' Log(recalculo&"|||||"&recalculototal)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PEDIDO set PE_RECALCULO = ?, PE_RECALCULOTOT = ? WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PE_PROID = ? ",Array As String(NumberFormat2(recalculo,0,2,2,False) ,NumberFormat2(recalculototal,0,2,2,False), c4.GetString("PE_PROID")))
Next
End If
c4.Close
Else
Private c6 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT SUM(PE_CANT) AS PE_CANT FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(cantres))
If c6.RowCount > 0 Then
c6.Position = 0
@@ -773,8 +740,6 @@ Sub B4XPage_Appear
Log( NumberFormat2(rec1,0,2,2,False))
Private cantres1 As Float = cantres + rec1
Log( NumberFormat2(cantres1,0,2,2,False))
Private c4 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT * FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(NumberFormat2(cantres1,0,2,2,False)))
If c4.RowCount > 0 Then
For i = 0 To c4.RowCount -1
@@ -782,35 +747,22 @@ Sub B4XPage_Appear
Private recalculo As Float = c4.GetString("PE_COSTOU") - NumberFormat2(cantres1,0,2,2,False)
LogColor(recalculo,Colors.Blue)
Private recalculototal As Float = c4.GetString("PE_CANT") * NumberFormat2(recalculo,0,2,2,False)
' Log(recalculo&"|||||"&recalculototal)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PEDIDO set PE_RECALCULO = ?, PE_RECALCULOTOT = ? WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PE_PROID = ? ",Array As String(NumberFormat2(recalculo,0,2,2,False) ,NumberFormat2(recalculototal,0,2,2,False), c4.GetString("PE_PROID")))
Next
End If
c4.Close
End If
End If
End If
End If
End If
End If
c.Close
c2.Close
c3.Close
End If
If Not(Subs.traemontoprod) Then
Private c4 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT * FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND (PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL)",Array As String("null"))
If c4.RowCount > 0 Then
For i = 0 To c4.RowCount -1
@@ -819,22 +771,16 @@ Sub B4XPage_Appear
' Private recalculototal As Float = c4.GetString("PE_CANT") * NumberFormat2(recalculo,0,2,2,False)
' Log(recalculo&"|||||"&recalculototal)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PEDIDO set PE_RECALCULO = ?, PE_RECALCULOTOT = ? WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PE_PROID = ? ",Array As String("","",c4.GetString("PE_PROID")))
Next
End If
' Log("AQUI ESTOY")
Else
End If
End If
'AQUI CAMBIAR
Private s3 As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select * FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO <> ? OR PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL",Array As String("","null"))
' LogColor(s3.RowCount,Colors.Yellow)
If s3.RowCount > 0 Then
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info2 where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
s=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and (PE_RECALCULO = ? or PE_RECALCULO = ? or PE_RECALCULO IS NULL)",Array As String("","null"))
s.Position=0
Private s5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(PE_RECALCULOTOT),0) as TOTAL_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and (PE_RECALCULO <> ? or PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL)",Array As String("","null"))
@@ -879,8 +825,6 @@ Sub B4XPage_Appear
End If
c.Close
s.Close
Else If s3.RowCount = 0 Then
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info2 where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
s=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
@@ -898,7 +842,7 @@ Sub B4XPage_Appear
l_atiende.Text = c.GetString("CAT_CL_ATIENDE1")
l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2")
TELEFONO = c.GetString("CAT_CL_TELEFONO")
Log(s.GetString("TOTAL_CLIE"))
' Log(s.GetString("TOTAL_CLIE"))
If s.GetString("TOTAL_CLIE") = Null Then
l_total.Text = 0
Else
@@ -928,15 +872,13 @@ Sub B4XPage_Appear
s.Close
End If
'AQUI TERMINA
c = skmt.ExecQuery("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'GEOCERCA'")
If c.RowCount > 0 Then
c.Position = 0
Dim geo As String = c.GetString("CAT_VA_VALOR")
End If
c.Close
Log(geo)
' Log(geo)
If geo = "0" Then
gest.Visible = True
Tels.Visible = True
@@ -949,8 +891,7 @@ Sub B4XPage_Appear
b_Inicio_Fin_venta.Visible = False
' ToastMessageShow("aaa", False)
End If
Log($"ALMACEN: ${ALMACEN}${CRLF}RUTA:${LA_RUTA}"$)
' Log($"ALMACEN: ${ALMACEN}${CRLF}RUTA:${LA_RUTA}"$)
End Sub
Sub GPS_LocationChanged (Location1 As Location)
@@ -1130,11 +1071,10 @@ Private Sub p_pideGeoPass_Click
End Sub
Private Sub iniciofin
If Starter.VarX = 0 Then
If Starter.enVenta = False Then
b_Inicio_Fin_venta.Visible = True
Log("Hacemos visible el boton de Inicio Venta2")
' Log("Hacemos visible el boton de Inicio Venta2")
Else
b_Inicio_Fin_venta.Visible = False
End If
End Sub
@@ -1227,10 +1167,10 @@ Sub gest_Click
Private rutasEncuesta As List
rutasEncuesta.Initialize2(Array As Int(702, 703, 707, 718, 730, 732, 733, 734))
' ALMACEN = 79
' LA_RUTA = 732
If (ALMACEN = 6 And LA_RUTA = 3) Or (ALMACEN = 79 And rutasEncuesta.IndexOf(LA_RUTA.As(Int)) > -1) Then
Log($"${cuest.encuestaIniciada} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$)
If Not(cuest.encuestaIniciada) And Not(cuest.clienteConCuestionario(Subs.traeCliente)) Then
@@ -4794,7 +4734,6 @@ Private Sub b_Inicio_Fin_venta_Click
Starter.enVenta = False
' LogColor($">>>>>> TERMINA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
B4XPages.ShowPageAndRemovePreviousPages("Principal")
Starter.VarX = 0
guardadoventa
Else if b_Inicio_Fin_venta.Text = "INICIAR VENTA" Then
contadorIniciarVenta = 0
@@ -4802,13 +4741,11 @@ Private Sub b_Inicio_Fin_venta_Click
contadorIniciarVenta = contadorIniciarVenta + 1
If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta <> "NO VENTA" Then
IniVenNO = True
Starter.VarX = 1
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
Starter.enVenta = True
' LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
Else If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta = "NO VENTA" Then
IniVenNO = True
Starter.VarX = 1
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, "")
Starter.enVenta = True
Else If contadorIniciarVenta > 1 Then

View File

@@ -65,13 +65,13 @@ End Sub
Sub B4XPage_Appear
busca.Text = ""
entro ="2"
entro = "2"
colonia = 0
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info2 where gestion = 0 ORDER BY CAT_CL_CODIGO")
c = B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info2 where gestion = 0 ORDER BY CAT_CL_CODIGO")
ListView1.Clear
lfila.Text = "NOMBRE"
If c.RowCount>0 Then
For i=0 To c.RowCount -1
For i = 0 To c.RowCount - 1
c.Position=i
Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label
@@ -84,6 +84,11 @@ Sub B4XPage_Appear
ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO"), c.GetString("CAT_CL_NOMBRE"))
Next
End If
If B4XPages.MainPage.cliente.cuest.IsInitialized Then
'Borramos las encuestas que no hayan respondido la pregunta 7, es decir que si no completaron la encuesta, se borra todo para que les vuelva a aparecer.
B4XPages.MainPage.skmt.ExecNonQuery("delete from CUESTIONARIO where Q_IDCLIENTE not in (select Q_IDCLIENTE from CUESTIONARIO where Q_IDPREGUNTA = '7')")
Log("Borramos encuestas incompletas")
End If
entro = "4"
End Sub
@@ -115,7 +120,7 @@ Sub ListView1_ItemClick (Position As Int, Value As Object)
End If
entro = "4"
Else If entro = "4" Then
Starter.VarX = 0
Starter.enVenta = False
B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value))
DateTime.TimeFormat = "HHmmss"

View File

@@ -18,6 +18,7 @@ Sub Class_Globals
Dim panelSombra As Panel 'Panel de sombra.
Dim cb_respuestas As String = ""
Dim panelActual As Panel
Dim bringToFrontCont As Int = 0
End Sub
'You can add more parameters here.
@@ -172,7 +173,6 @@ Sub agregaPreguntaAbierta(id As String, pregunta As String, ids As List, respues
encuestaIniciada = True
vPreguntaActual = id
bAceptarPregunta.Initialize("bAceptarPregunta")
bAceptarPregunta.Enabled = False
Private su As StringUtils
panelSombra.Initialize("pSombra")
Private cd As ColorDrawable
@@ -202,31 +202,38 @@ Sub agregaPreguntaAbierta(id As String, pregunta As String, ids As List, respues
For p = 0 To respuestas.Size - 1
et(p).Initialize("et")
labelX(p).Initialize("labelX")
labelX(p).Height = 60dip
' et(p).Color = Colors.red
' labelX(p).Color = Colors.Blue
et(p).As(B4XView).SetTextAlignment("CENTER", "CENTER")
labelX(p).As(B4XView).SetTextAlignment("CENTER", "CENTER")
et(p).SetTextSizeAnimated(0, 14)
et(p).SetTextSizeAnimated(0, 10)
et(p).Tag = CreateMap("id":id, "pregunta":pregunta, "panel":panelSombra, "idRespuesta":ids.Get(p))
labelX(p).Text = respuestas.Get(p)
Private lx As Label = labelX(p)
et(p).Text = ""
Log($"Agregamos ET ${labelX(p).text} - ${(70*p)}"$)
' Private labelXHeight As String =
Log(labelX(p).Height)
sv_cuest.panel.AddView(labelX(p), 0, (70 * p), (panelX.Width * 0.72), 60) 'Agregamos la etiqueta al panel.
sv_cuest.panel.AddView(et(p), (labelX(p).Width + 5), (70 * p), (panelX.Width * 0.2), 60) 'Agregamos el edittext al panel.
sv_cuest.panel.AddView(et(p), (labelX(p).Width + 5), (70 * p), (panelX.Width * 0.2), 85) 'Agregamos el edittext al panel.
Private newTop As Int = 0 'lbl.top + lbl.Height + 20 'Si es el primer radio, lo ponemos en top = alto de la "pregunta" + 10.
If p <> 0 Then newTop = et(p - 1).Top + et(p - 1).Height + 5 'Calculamos el Top del radio de acuerdo al top y alto del radio anterior.
et(p).Top = newTop
labelX(p).Top = newTop
Next
bAceptarPregunta.Text = "Continuar"
panelX.AddView(sv_cuest, 10, lbl.top + 45dip, (panelX.Width * 0.95), 300dip)
panelX.AddView(sv_cuest, 10, lbl.top + lbl.Height + 20, (panelX.Width * 0.95), 300dip)
sv_cuest.panel.Height = newTop + 40dip
panelX.Height = newTop + 80dip + 35dip 'Calculamos el alto del panel de acuerdo al Top del boton.
panelX.Height = 150dip + (respuestas.Size * 80) 'Calculamos el alto del panel de acuerdo al Top del boton.
If panelX.Height > (Root2.Height * 0.7) Then ' Si el panel es mayor al 70%, lo regresamos al 70%.
panelX.Height = Root2.Height * 0.7
End If
panelX.AddView(bAceptarPregunta, 10, (panelX.Height - 55dip), 150dip, 50dip) 'Ponemos el boton de continuar despues del ultimo radio.
bAceptarPregunta.Left = (panelX.Width / 2) - (bAceptarPregunta.Width / 2)
bAceptarPregunta.Enabled = False
sv_cuest.Height = panelX.Height - (lbl.Top + lbl.Height) - 55dip
panelX.left = (Root2.Width / 2) - (panelX.Width / 2)
panelX.top = (Root2.Height / 2) - (panelX.Height / 2) 'Centramos verticalmente el panel.
@@ -235,6 +242,7 @@ Sub agregaPreguntaAbierta(id As String, pregunta As String, ids As List, respues
panelSombra.Height = Root2.Height
panelSombra.Elevation = 100dip
panelSombra.BringToFront
bringToFrontCont = 0
End Sub
private Sub preguntaContestada(Success As Map) 'ignore
@@ -305,7 +313,7 @@ private Sub cb_CheckedChange(Checked As Boolean)
End Sub
Private Sub et_TextChanged(Old As String, New As String)
' Log($"${Old}, ${New}"$)
Log($"${Old}, ${New}"$)
Private etTotales As Int = 0
Private etCont As Int = 0
Private etResps As String = ""
@@ -328,6 +336,7 @@ Private Sub et_TextChanged(Old As String, New As String)
End If
Next
' Log($"${etResps}, ${etIdResps}"$)
Log($"${etCont}, ${etTotales}"$)
bAceptarPregunta.Tag = CreateMap("idPregunta":Sender.As(EditText).tag.As(Map).Get("id").As(String), "pregunta":Sender.As(EditText).tag.As(Map).Get("pregunta"), "idRespuesta":etIdResps, "respuesta":etResps, "panel":Sender.As(EditText).tag.As(Map).Get("panel"))
If etCont = etTotales Then bAceptarPregunta.Enabled = True Else bAceptarPregunta.Enabled = False
End Sub

View File

@@ -395,16 +395,17 @@ Sub BUSCA_TextChanged (Old As String, New As String)
If New.Length > 2 Or forzarbusqueda Then
forzarbusqueda = False
Log("searching")
se=B4XPages.MainPage.skmt.ExecQuery2("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? and CAT_GP_CLASIF <> ?", Array As String(q_buscar,"PROMOS")) ' order by CAT_GP_NOMBRE asc
se = B4XPages.MainPage.skmt.ExecQuery2("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? and CAT_GP_CLASIF <> ?", Array As String(q_buscar,"PROMOS")) ' order by CAT_GP_NOMBRE asc
' lv_catalogos.Clear
lv_catalogos.Visible = False
lv_promos.Visible = False
clv_productos.AsView.Visible = True
clv_productos.Clear
Log(se.RowCount)
If se.RowCount > 0 Then
If se.RowCount > 50 Then ProgressDialogShow("Buscando productos")
Sleep(100)
For i=0 To se.RowCount -1
clv_productos.Clear
For i = 0 To se.RowCount -1
se.Position=i
If se.GetString("CAT_GP_TIPOPROD") = "PRIORITARIO" Then
bgColor = Colors.RGB(255, 212, 163) 'naranja
@@ -520,6 +521,7 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
End Sub
Sub cuentaProds
Log("-= CUENTAPRODS =-")
totalProds = 0
totalCompra = 0
' Private inicioContador As String = DateTime.Now
@@ -540,8 +542,10 @@ Sub cuentaProds
Private m As Map
m=CreateMap("cant":cant1.Text, "precio":esteTag.get(0))
prodsMap.Put(esteTag.Get(2), m)
Log("-= Agregamos producto =-")
Else
prodsMap.Remove(esteTag.Get(2))
Log("-= Quitamos producto =-")
End If
l_total.Visible = True
l_totProds.Visible = True
@@ -549,7 +553,7 @@ Sub cuentaProds
l_totProds.text = $"Prods: ${totalProds}"$
Next
' LogColor("TIEMPO cuentaProds -=" & ((DateTime.Now-inicioContador)/1000), Colors.Red)
Subs.revisaPromoProcterPRO3009(prodsMap)
' Subs.revisaPromoProcterPRO3009(prodsMap)
LogColor(prodsMap, Colors.blue)
p_botonesVenta.Visible = True
Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$)

View File

@@ -251,7 +251,7 @@ Version=12.8
#Region Project Attributes
#ApplicationLabel: Guna V3.1
#VersionCode: 1
#VersionName: 4.10.07.EP_d
#VersionName: 4.10.09.EP_d
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False

View File

@@ -72,10 +72,10 @@ ModuleClosedNodes25=
ModuleClosedNodes3=
ModuleClosedNodes4=
ModuleClosedNodes5=
ModuleClosedNodes6=8,9,10
ModuleClosedNodes6=8,9,10,11
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
NavigationStack=C_Clientes,Class_Globals,0,0,C_Cliente,Class_Globals,416,0,C_NoVenta,GUARDA_Click,125,1,Subs,iniciaActividad,1322,0,Subs,bitacora,1285,0,Main,Activity_Create,27,0,B4XMainPage,Class_Globals,27,1,C_Cliente,cuest_preguntaContestada,4619,0,C_Cliente,ListView1_ItemLongClick,1212,0,C_Cliente,gest_Click,1218,6,C_Cliente,B4XPage_Appear,946,0
NavigationStack=C_Clientes,B4XPage_Appear,83,6,C_Cliente,B4XPage_Appear,496,0,C_Cliente,iniciofin,1069,0,Subs,TraeMontoProd,1205,0,Visual Designer,cliente.bal,-100,1,C_Productos,Class_Globals,0,0,C_Productos,et_pCant_TextChanged,510,0,C_Productos,cuentaProds,530,6,C_Productos,BUSCA_TextChanged,392,6,Main,Process_Globals,20,0
SelectedBuild=0
VisibleModules=23,2,24,13,14,4,6,9,12,5

View File

@@ -35,7 +35,6 @@ Sub Process_Globals
Public BluetoothState As Boolean
Dim ubicacionActual As Location
Dim enVenta As Boolean = False
Dim VarX As Int = 0
End Sub
Sub Service_Create

View File

@@ -1207,10 +1207,10 @@ Sub TraeMontoProd As Boolean
If c.GetString("suma") >= c2.GetString("CAT_PE_MONTO") Then
x = True
Log("verdadero")
' Log("verdadero")
Else
x = False
Log("Falso")
' Log("Falso")
End If
End If