- VERSION 5.12.12

- Se agrego el codigo para las promociones por rango y se aplico en los tickets impresoso y pdfs
This commit is contained in:
2025-12-18 16:54:23 -06:00
parent 5f6f3ac545
commit 7fff665461
13 changed files with 272 additions and 149 deletions

View File

@@ -550,7 +550,7 @@ Sub JobDone(Job As HttpJob)
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim result1 As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
If result1.Tag = "CHECAENCUESTA" Then 'query tag

View File

@@ -30,7 +30,7 @@ Sub Class_Globals
Dim MAC_IMPRESORA As String
Dim btAdmin As BluetoothAdmin
Dim Printer1 As EscPosPrinter
Private location2 As Location
Dim c As Cursor
Dim s As Cursor
Dim DD As Cursor
@@ -469,6 +469,7 @@ Sub Class_Globals
Private p_deuda As Panel
Private Label22 As Label
Private l_animal As Label
private contIguales as int = 0
End Sub
'You can add more parameters here.
@@ -540,6 +541,7 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
Starter.enCliente = true
Tels.Visible = False
gest.Visible = False
' Tels.Enabled = True
@@ -730,13 +732,13 @@ Sub B4XPage_Appear
gest.Visible = True
End If
End If
CallSubDelayed(Tracker, "Track")
' CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall")
CallSubDelayed(Tracker, "StartFLP2")
' CallSubDelayed(Tracker, "StartFLP2")
If Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
End If
If ALMACEN = "1" Or ALMACEN = "2" Or ALMACEN = "4" Or ALMACEN = "5" Or ALMACEN = "25" Then
@@ -1195,14 +1197,14 @@ Sub B4XPage_Appear
End If
End If
End If
Log("============================================================")
Log("============================================================")
Log("============================================================")
' *********************************************************
l_total.Text = Subs.calculaTotalConPromoXRango
l_total.Text = Subs.calculaTotalConPromoXRango(Subs.traecliente)
' *********************************************************
SV_ENCUESTA.Visible = False
P_gallina.Visible = False
p_pregunta1.Visible = False
@@ -1450,27 +1452,39 @@ End Sub
'End Sub
'
Sub GPS_LocationChanged (Location1 As Location)
LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
' Log($"${Location1.Latitude}, ${Location1.Longitude}"$)
' LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
' Log(Location1.Latitude& " aqui guerra "& Location1.Longitude)
If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
If Location1 = location2 Then
contIguales = contIguales + 1
Log("Coords Iguales")
If contIguales >= 3 Then
' contIguales = 0
' Log("No hacemos nada")
CallSubDelayed(Tracker, "StopFLP")
Return
End If
Else
contIguales = 0
End If
Log("################################################################################")
Log("################################################################################")
Log("################################################################################")
location2 = Location1
' Log(Location1.Latitude& " aqui guerra "& Location1.Longitude)
' If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then
' B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
' B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
'' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
' End If
' Log(m_lat &" " & m_lon)
' Si la precisión es mala, intentar mejorarla
If Location1.Accuracy > 50 Then ' Mayor a 50 metros de error
MejorarPrecisionGPS
Return ' Esperar siguiente lectura
End If
' Filtrar ubicaciones con baja precisión
If Location1.Accuracy > 50 Then ' Si la precisión es mayor a 50 metros, descartar
Return
@@ -1490,6 +1504,7 @@ Sub GPS_LocationChanged (Location1 As Location)
' Calcular promedio
Dim latPromedio, lonPromedio As Double
For Each loc As Location In ultimasUbicaciones
Log("***")
latPromedio = latPromedio + loc.Latitude
lonPromedio = lonPromedio + loc.Longitude
Next
@@ -1518,7 +1533,7 @@ Sub GPS_LocationChanged (Location1 As Location)
Dim ubi1, ubi2 As Location
ubi1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
ubi2.Initialize2(al_latitud, al_longitud)
distancealm = ubi1.DistanceTo(ubi2)
End If
' Mostrar la precisión actual
@@ -1653,14 +1668,14 @@ Sub GPS_LocationChanged (Location1 As Location)
' p_transparenteInicioFin.Visible = False
Log(996)
' b_Inicio_Fin_venta.Visible = False
c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then
c2 = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
If c2.RowCount > 0 Then
Tels.Visible = True
gest.Visible = True
' b_geo = "0"
bitacora.banderaGeoCerca = "0"
iniciofin
Else If c.RowCount = 0 Then
Else If c2.RowCount = 0 Then
Tels.Visible = False
gest.Visible = False
' p_transparenteInicioFin.Visible = False
@@ -1675,7 +1690,7 @@ Sub GPS_LocationChanged (Location1 As Location)
iniciofin
End If
End If
c.Close
c2.Close
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
@@ -2772,8 +2787,8 @@ Private Sub B4XPage_CloseRequest As ResumableSub
SV_ENCUESTA.visible = False
p_cliente.Visible = True
' Else If B4XPages.MainPage.nota Then
Else
Starter.enCliente = False
B4XPages.ShowPage("Clientes")
End If
' Return True
@@ -3061,26 +3076,24 @@ Sub Impresion3
' Printer1.WriteString("C.P.: " & la_cp.Text & CRLF)
Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
Printer1.WriteString("-----------PREVENTA-----------" & 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.
s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU,IFNULL(PE_RECALCULO,0) AS PE_RECALCULO, length(PE_COSTOU) as L_COSTOU, length(Ifnull(PE_RECALCULO,0)) as L_COSTOREC,PE_CANT * PE_COSTOU AS PE_COSTO_TOT,PE_CANT * IFNULL(PE_RECALCULO,0) AS PE_COSTO_TOTREC, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,length(PE_CANT * IFNULL(PE_RECALCULO,0)) as L_COSTO_TOTREC,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String(Subs.traeAlmacen))
s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, IFNULL(PE_RECALCULO,0) AS PE_RECALCULO, length(PE_COSTOU) as L_COSTOU, length(Ifnull(PE_RECALCULO,0)) as L_COSTOREC, PE_CANT * PE_COSTOU AS PE_COSTO_TOT, PE_CANT * IFNULL(PE_RECALCULO,0) AS PE_COSTO_TOTREC, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT, length(PE_CANT * IFNULL(PE_RECALCULO,0)) as L_COSTO_TOTREC, PE_PROID, PE_CEDIS, PE_RECCANT FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String(Subs.traeAlmacen))
If S.RowCount>0 Then
For i=0 To S.RowCount -1
S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else
If s.GetDouble("PE_RECALCULO") = 0 Then
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
TAMANO = s.GetLong("L_CANT") + TAMANO
TAMANO = s.GetLong("L_COSTOU") + TAMANO
TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
@@ -3088,29 +3101,65 @@ Sub Impresion3
TAMANO = 0
ESPACIO = 21
BLANCO = " "
Else
Else if s.GetDouble("PE_CANT") = s.GetDouble("PE_RECCANT") Then
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
TAMANO = s.GetLong("L_CANT") + TAMANO
TAMANO = s.GetLong("L_COSTOREC") + TAMANO
TAMANO = s.GetLong("L_COSTO_TOTREC") + TAMANO
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
Dim descpro As Cursor = Starter.skmt.ExecQuery($"SELECT CAT_PD_RANGO, CAT_PD_DESCUENTO, CAT_PD_RANGO2 FROM CAT_PROMOS_DESCUENTOS WHERE CAT_PD_PRODUCTO IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD WHERE CAT_GP_NOMBRE = '${s.GetString("PE_PRONOMBRE")}') AND INSTR(',' || CAT_PD_TIER || ',' , ',${Subs.traeTipoCliente},') > 0 "$)
descpro.Position = 0
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_RECALCULO") & " $" & s.GETSTRING("PE_COSTO_TOTREC") & CRLF & CRLF )
Printer1.WriteString(BLANCO & "PL $" & s.GETSTRING("PE_COSTOU") & " Desc.: " & descpro.GetDouble("CAT_PD_DESCUENTO")&"%" & CRLF & CRLF)
TAMANO = 0
ESPACIO = 21
BLANCO = " "
Else if s.GetDouble("PE_CANT") <> s.GetDouble("PE_RECCANT") Then
Printer1.WriteString(s.GetString("PE_RECCANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
TAMANO = s.GetLong("L_CANT") + TAMANO
TAMANO = s.GetLong("L_COSTOREC") + TAMANO
TAMANO = s.GetLong("L_COSTO_TOTREC") + TAMANO
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
' Con descuento
Dim descpro As Cursor = Starter.skmt.ExecQuery($"SELECT CAT_PD_RANGO, CAT_PD_DESCUENTO, CAT_PD_RANGO2 FROM CAT_PROMOS_DESCUENTOS WHERE CAT_PD_PRODUCTO IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD WHERE CAT_GP_NOMBRE = '${s.GetString("PE_PRONOMBRE")}') AND INSTR(',' || CAT_PD_TIER || ',' , ',${Subs.traeTipoCliente},') > 0 "$)
descpro.Position = 0
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_RECALCULO") & " $" & s.GETSTRING("PE_COSTO_TOTREC") & CRLF & CRLF )
Printer1.WriteString(BLANCO & s.GETSTRING("PE_RECCANT") & " X $" & s.GETSTRING("PE_RECALCULO") & " $" & NumberFormat2((s.GETSTRING("PE_RECCANT") * s.GETSTRING("PE_RECALCULO")),1,2,2,False) & CRLF & CRLF )
Printer1.WriteString(BLANCO & "PL $" & s.GETSTRING("PE_COSTOU") & " Desc.: " & descpro.GetDouble("CAT_PD_DESCUENTO")&"%" & CRLF & CRLF)
Private subTot As String = (s.GETSTRING("PE_CANT")-s.GETSTRING("PE_RECCANT")) * s.GETSTRING("PE_COSTOU")
TAMANO = s.GetLong("L_CANT") + TAMANO
TAMANO = s.GetLong("L_COSTOREC") + TAMANO
TAMANO = subTot + TAMANO
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
' Sin decuento
Printer1.WriteString((s.GETSTRING("PE_CANT")-s.GETSTRING("PE_RECCANT")) & " " & s.GetString("PE_PRONOMBRE") & CRLF)
Printer1.WriteString(BLANCO & (s.GETSTRING("PE_CANT")-s.GETSTRING("PE_RECCANT")) & " X $" & s.GETSTRING("PE_COSTOU") & " $" & NumberFormat2(subTot,1,2,2,False) & CRLF & CRLF )
TAMANO = 0
ESPACIO = 21
BLANCO = " "
End If
End If
Next
End If
@@ -3152,6 +3201,7 @@ Sub Impresion3
' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL")))
' End If
Printer1.WriteString("Subtotal Preventa: $" & s.GetString("TOTAL") & CRLF)
' Printer1.WriteString("Subtotal Preventa: $" & Subs.calculaTotalConPromoXRango(Subs.traeCliente) & CRLF)
c= skmt.ExecQuery("select sum(PE_CANT) as PC_NOART from PEDIDO where PE_CLIENTE in (Select CUENTA from cuentaa) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP )")
C.Position=0
@@ -3164,13 +3214,14 @@ Sub Impresion3
If NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) <> s.GetString("TOTAL") Then
Printer1.WriteString("Descuento: $" & NumberFormat2( s.GetString("TOTAL")-(s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False)& CRLF)
Printer1.WriteString("Descuento: $" & NumberFormat2( (s.GetString("TOTAL") - Subs.calculaTotalConPromoXRango(Subs.traeCliente)),0,2,2,False)& CRLF)
End If
' If s.GetString("TOTAL") - s.GetString("TOTAL2") <> 0 Then
' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL")))
' End If
' Printer1.WriteString("Descuento: $" & 150 & CRLF)
Printer1.WriteString("Total Preventa: $" & NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False)& CRLF)
' Printer1.WriteString("Total Preventa: $" & NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False)& CRLF)
Printer1.WriteString("Total Preventa: $" & NumberFormat2(Subs.calculaTotalConPromoXRango(Subs.traeCliente),0,2,2,False)& CRLF)
Printer1.WriteString(" " & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
@@ -5903,7 +5954,7 @@ Private Sub PDFGENERAR
If ALMACEN = 88 Then
s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU,IFNULL(PE_RECALCULO,0) AS PE_RECALCULO, length(PE_COSTOU) as L_COSTOU, length(Ifnull(PE_RECALCULO,0)) as L_COSTOREC,PE_CANT * PE_COSTOU AS PE_COSTO_TOT,PE_CANT * IFNULL(PE_RECALCULO,0) AS PE_COSTO_TOTREC, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,length(PE_CANT * IFNULL(PE_RECALCULO,0)) as L_COSTO_TOTREC,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_FOLIO = ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("PREVENTA"))
s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU,IFNULL(PE_RECALCULO,0) AS PE_RECALCULO, length(PE_COSTOU) as L_COSTOU, length(Ifnull(PE_RECALCULO,0)) as L_COSTOREC,PE_CANT * PE_COSTOU AS PE_COSTO_TOT,PE_CANT * IFNULL(PE_RECALCULO,0) AS PE_COSTO_TOTREC, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,length(PE_CANT * IFNULL(PE_RECALCULO,0)) as L_COSTO_TOTREC,PE_PROID, PE_CEDIS, PE_RECCANT FROM PEDIDO WHERE PE_FOLIO = ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("PREVENTA"))
If S.RowCount>0 Then
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"------------------------------------PREVENTA-----------------------------------------")
@@ -5922,9 +5973,9 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE"))
' LogColor(s.GetLong("L_CANT"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
' LogColor(s.GetLong("L_CANT"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT")
ESPACIO = 92
BLANCO = " "
@@ -5936,11 +5987,11 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & s.GETSTRING("PE_COSTOU") & BLANCO & s.GETSTRING("PE_COSTO_TOT"))
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTOU"))
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
' PDF.outtext(1,108-9*6,s.GETSTRING("PE_COSTOU"))
'
' PDF.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
End If
Else
Else if s.GetDouble("PE_CANT") = s.GetDouble("PE_RECCANT") Then
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE") )
@@ -5948,9 +5999,9 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE"))
' LogColor(s.GetLong("L_CANT"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
' LogColor(s.GetLong("L_CANT"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOREC") + s.GetLong("L_COSTO_TOTREC")
ESPACIO = 92
BLANCO = " "
@@ -5962,10 +6013,55 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & s.GETSTRING("PE_RECALCULO") & BLANCO & s.GETSTRING("PE_COSTO_TOTREC"))
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTOU"))
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
' PDF.outtext(1,108-9*6,s.GETSTRING("PE_COSTOU"))
'
' PDF.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
End If
Else if s.GetDouble("PE_CANT") <> s.GetDouble("PE_RECCANT") Then
' Con Descuento
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE") )
Else
PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE"))
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOREC") + s.GetLong("L_COSTO_TOTREC")
ESPACIO = 92
BLANCO = " "
ESPACIO = ESPACIO - TAMANO
ESPACIO = ESPACIO / 2
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_RECCANT") & BLANCO & s.GETSTRING("PE_RECALCULO") & BLANCO & NumberFormat2((s.GETSTRING("PE_RECCANT")*s.GETSTRING("PE_RECALCULO")),1,2,2,False))
End If
' Sin descuento
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE") )
Else
Private subTot As String = (s.GETSTRING("PE_CANT")-s.GETSTRING("PE_RECCANT")) * s.GETSTRING("PE_COSTOU")
PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE"))
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOTREC")
ESPACIO = 92
BLANCO = " "
ESPACIO = ESPACIO - TAMANO
ESPACIO = ESPACIO / 2
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, (s.GETSTRING("PE_CANT")-s.GETSTRING("PE_RECCANT")) & BLANCO & s.GETSTRING("PE_COSTOU") & BLANCO & NumberFormat2(subTot,1,2,2,False))
End If
End If
Next
@@ -6082,11 +6178,13 @@ Private Sub PDFGENERAR
If NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) <> s.GetString("TOTAL") Then
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Descuento: $" & NumberFormat2( s.GetString("TOTAL")-(s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) )
Log(s.GetString("TOTAL") & "|" & Subs.calculaTotalConPromoXRango(Subs.traeCliente))
PDF.outtext(1,pagina-multiplicador*6,"Descuento: $" & NumberFormat2( s.GetString("TOTAL")-Subs.calculaTotalConPromoXRango(Subs.traeCliente),0,2,2,False) )
' Printer1.WriteString("Descuento: $" & NumberFormat2( s.GetString("TOTAL")-(s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False)& CRLF)
End If
multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Total Preventa: $" & NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) )
' PDF.outtext(1,pagina-multiplicador*6,"Total Preventa: $" & NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) )
PDF.outtext(1,pagina-multiplicador*6,"Total Preventa: $" & NumberFormat2(Subs.calculaTotalConPromoXRango(Subs.traeCliente),0,2,2,False) )
' Printer1.WriteString("Total Preventa: $" & NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False)& CRLF)
@@ -6399,9 +6497,10 @@ Sub EnviarPDFWhatsAppNumero(NumeroTelefono As String)
fd.Dir = Starter.fFileProvider.SharedFolder
fd.FileName = archivoTicketPDF
fd.ContentType = "application/pdf"
Private link As String = "http://keymon.net:9000/v1/ticketpdf"
Private link As String = "http://keymon.net:9001/v1/ticketpdf"
Private campos As Map = CreateMap( "message":"Tu compra de Guna va ser a *crédito* por el monto de $${NumberFormat2(monto, 1, 2, 2, True)}\n\nManda *1* para confirmar\nManda *0* para rechazar\n\n*Nota:* Si este mensaje no se contesta, se considerará que el pago es en *EFECTIVO*.\n\n(Solo el *número* por favor)")
campos.Put("number", NumeroTelefono)
Log(NumeroTelefono)
campos.Put("message","Tu recibo")
Log(campos)
Private job As HttpJob
@@ -6503,7 +6602,6 @@ Private Sub b_envioPDF_Click
PDFGENERAR
End If
Sleep(3000)
EnviarPDFWhatsAppNumero(et_numeroPDF.Text)

View File

@@ -142,10 +142,9 @@ Sub B4XPage_Appear
s.Close
End If
' *************************************************
L_TOTAL.text = Subs.calculaTotalConPromoXRango
L_TOTAL.text = Subs.calculaTotalConPromoXRango(Subs.traeCliente)
' *************************************************
'AQUI TERMINA
End If
End Sub

View File

@@ -85,13 +85,13 @@ Sub B4XPage_Appear
End Sub
Sub GPS_LocationChanged (Location1 As Location)
Log("NC GPS_LocationChanged")
If B4XPages.MainPage.lat_gps <> "0.0" Then
If GUARDA.IsInitialized Then
GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar.
l_sinUbicacion.Visible = True
End If
End If
Log("CAMBIE")
If B4XPages.MainPage.lat_gps <> "0.0" Then
If GUARDA.IsInitialized Then
GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar.

View File

@@ -2798,49 +2798,72 @@ Sub resdia_Click
l_monto_ks.Text = "0"
End If
c.Close
'AQUI CAMBIAR
Private s3 As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select * FROM PEDIDO WHERE 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
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE (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_RECALCULO <> ? or PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL)",Array As String("","null"))
s5.Position = 0
' l_ru_pri.Text = NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
' L_REAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
L_REAL.Text = Subs.calculaTotalConPromoXRango
s.Close
Else If s3.RowCount = 0 Then
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO ")
s.Position=0
' l_ru_pri.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
' L_REAL.Text = NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
L_REAL.Text = Subs.calculaTotalConPromoXRango
s.Close
'AQUI CAMBIAR
' Private s3 As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select * FROM PEDIDO WHERE 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
' s3.Position = 0
' Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE (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_RECALCULO <> ? or PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL)",Array As String("","null"))
' s5.Position = 0
'' l_ru_pri.Text = NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
' L_REAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
'' L_REAL.Text = Subs.calculaTotalConPromoXRango(s3.GetString("PE_CLIENTE"))
' s.Close
' Else If s3.RowCount = 0 Then
' Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, pe_cliente FROM PEDIDO ")
' s.Position=0
'' l_ru_pri.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
' L_REAL.Text = NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
'' L_REAL.Text = Subs.calculaTotalConPromoXRango(s.GetString("PE_CLIENTE"))
' s.Close
' End If
' s3.Close
Private s3 As Cursor = B4XPages.MainPage.skmt.ExecQuery("select distinct(pe_cliente) FROM PEDIDO")
If s3.RowCount > 0 Then
Private total1 As String = 0
For i = 0 To s3.RowCount - 1
s3.Position = i
' LogColor($"Total antes ${total1}"$, Colors.blue)
total1 = total1 + Subs.calculaTotalConPromoXRango(s3.GetString("PE_CLIENTE"))
' LogColor(Subs.calculaTotalConPromoXRango(s3.GetString("PE_CLIENTE")), Colors.Magenta)
' LogColor($"Total despues ${total1}"$, Colors.blue)
Next
L_REAL.Text = total1
End If
'Prueba0
Private ru_o As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT IFNULL(PE_RUTA, 0) AS PE_RUTA, IFNULL(SUM(PE_COSTO_TOT), 0) AS TOTAL_CLIE FROM PEDIDO LEFT JOIN RUTA_SUPLENCIA ON PE_RUTA = RS_RUTA WHERE RS_RUTA IS NULL", Null)
ru_o.Position=0
Log("------------->RutaOriginal "&ru_o)
If ru_o.GetString("PE_RUTA") = 0 Then
Label2.Text = "N/A"
Else if ru_o.RowCount >=1 Then
Private rutOr As String = ru_o.GetString("PE_RUTA")
Label2.Text = "Ruta " & rutOr
' l_ru_pri.Text = NumberFormat2(ru_o.GetDouble("TOTAL_CLIE"), 0, 2, 2, False)
l_ru_pri.Text = Subs.calculaTotalConPromoXRango
' Private ru_o As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT IFNULL(PE_RUTA, 0) AS PE_RUTA, IFNULL(SUM(PE_COSTO_TOT), 0) AS TOTAL_CLIE, pe_cliente FROM PEDIDO LEFT JOIN RUTA_SUPLENCIA ON PE_RUTA = RS_RUTA WHERE RS_RUTA IS NULL", Null)
' ru_o.Position=0
' Log("------------->RutaOriginal "&ru_o)
' If ru_o.GetString("PE_RUTA") = 0 Then
' Label2.Text = "N/A"
' Else if ru_o.RowCount >=1 Then
' Private rutOr As String = ru_o.GetString("PE_RUTA")
' Label2.Text = "Ruta " & rutOr
'' l_ru_pri.Text = NumberFormat2(ru_o.GetDouble("TOTAL_CLIE"), 0, 2, 2, False)
' l_ru_pri.Text = Subs.calculaTotalConPromoXRango(ru_o.GetString("PE_CLIENTE"))
' End If
' ru_o.Close
Private ru_o As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT distinct pe_cliente, pe_ruta FROM PEDIDO LEFT JOIN RUTA_SUPLENCIA ON PE_RUTA = RS_RUTA WHERE RS_RUTA IS NULL", Null)
Label2.Text = "N/A"
Log("##### " & ru_o.RowCount)
Private total2 As String = 0
If ru_o.RowCount > 0 Then
For i2 = 0 To ru_o.RowCount - 1
ru_o.Position = i2
' LogColor($"${ru_o.GetString("PE_RUTA")}|${ru_o.GetString("PE_CLIENTE")}"$, Colors.Red)
Private rutOr As String = ru_o.GetString("PE_RUTA")
Label2.Text = "Ruta " & rutOr
total2 = total2 + Subs.calculaTotalConPromoXRango(ru_o.GetString("PE_CLIENTE"))
Next
End If
ru_o.Close
l_ru_pri.Text = total2
'Prueba1
Private ru_s As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT IFNULL(PE_RUTA, 0) As PE_RUTA, IFNULL(SUM(PE_COSTO_TOT), 0) As TOTAL_CLIE FROM PEDIDO LEFT JOIN RUTA_SUPLENCIA ON PE_RUTA = RS_RUTA WHERE RS_RUTA Is Not Null", Null)
ru_s.Position = 0

View File

@@ -1212,7 +1212,7 @@ Sub b_terminar1_Click
End If
c_prods.Close
l_total2.Text = Subs.calculaTotalConPromoXRango
l_total2.Text = Subs.calculaTotalConPromoXRango(Subs.traeCliente)
' BUSCA.Text = ""
p_vistaPreviaTrans.Width = Root.Width

View File

@@ -54,7 +54,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
ListView1.TwoLinesLayout.ItemHeight = 95dip
Label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& Subs.calculaTotalConPromoXRango)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& Subs.calculaTotalConPromoXRango(c.GetString("PC_CLIENTE")))
Next
End If
End Sub
@@ -100,12 +100,13 @@ Sub B4XPage_Appear
label2.TextColor = Colors.White
label1.Height = 25dip
label2.Height = 60dip
ListView1.TwoLinesLayout.ItemHeight = 95dip
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
Log(1)
' ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& (s.GetString("CANT_CLIE") + s5.GetString("CANT_CLIE")) & " SubTotal $"& NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,True))
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& (s.GetString("CANT_CLIE") + s5.GetString("CANT_CLIE")) & " SubTotal $"& Subs.calculaTotalConPromoXRango)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& (s.GetString("CANT_CLIE") + s5.GetString("CANT_CLIE")) & " SubTotal $"& Subs.calculaTotalConPromoXRango(c.GetString("PC_CLIENTE")))
s.Close
Else If s3.RowCount = 0 Then
Private s As Cursor=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 = ?", Array As String(C.GetString("PC_CLIENTE")))
@@ -125,7 +126,8 @@ Sub B4XPage_Appear
ListView1.TwoLinesLayout.ItemHeight = 95dip
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& s.GetString("CANT_CLIE") & " SubTotal $"& Subs.calculaTotalConPromoXRango)
Log(2)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& s.GetString("CANT_CLIE") & " SubTotal $"& Subs.calculaTotalConPromoXRango(c.GetString("PC_CLIENTE")))
s.Close
End If
Next
@@ -199,7 +201,6 @@ Sub b_noventa_Click
Private s3 As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select * FROM PEDIDO WHERE PE_CLIENTE = ? and PE_RECALCULO <> ? OR PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL",Array As String(C.GetString("PC_CLIENTE"),"","null"))
LogColor(s3.RowCount,Colors.Yellow)
If s3.RowCount > 0 Then
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, IFNULL(SUM(PE_CANT),0) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE = ? and (PE_RECALCULO = ? or PE_RECALCULO = ? or PE_RECALCULO IS NULL ) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP)",Array As String(C.GetString("PC_CLIENTE"),"","null"))
s.Position=0
Private s5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(PE_RECALCULOTOT),0) as TOTAL_CLIE, IFNULL(SUM(PE_CANT),0) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE = ? and (PE_RECALCULO <> ? or PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP)",Array As String(C.GetString("PC_CLIENTE"),"","null"))
@@ -214,17 +215,17 @@ Sub b_noventa_Click
label2.TextColor = Colors.White
label1.Height = 25dip
label2.Height = 60dip
ListView1.TwoLinesLayout.ItemHeight = 95dip
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
' ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& (s.GetString("CANT_CLIE") + s5.GetString("CANT_CLIE")) & " SubTotal $"& NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,True))
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& (s.GetString("CANT_CLIE") + s5.GetString("CANT_CLIE")) & " SubTotal $"& Subs.calculaTotalConPromoXRango)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& (s.GetString("CANT_CLIE") + s5.GetString("CANT_CLIE")) & " SubTotal $"& Subs.calculaTotalConPromoXRango(c.GetString("PC_CLIENTE")))
s.Close
Else If s3.RowCount = 0 Then
Private s As Cursor=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 = ?", Array As String(C.GetString("PC_CLIENTE")))
s.Position=0
Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 20
@@ -235,14 +236,11 @@ Sub b_noventa_Click
label2.TextColor = Colors.White
label1.Height = 25dip
label2.Height = 60dip
ListView1.TwoLinesLayout.ItemHeight = 95dip
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& s.GetString("CANT_CLIE") & " SubTotal $"& Subs.calculaTotalConPromoXRango)
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& s.GetString("CANT_CLIE") & " SubTotal $"& Subs.calculaTotalConPromoXRango(s3.GetString("PE_CLIENTE")))
s.Close
End If

Binary file not shown.

View File

@@ -294,7 +294,7 @@ Version=12.8
#Region Project Attributes
#ApplicationLabel: Guna Preventa
#VersionCode: 1
#VersionName: 5.10.23
#VersionName: 5.12.12
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False

View File

@@ -78,9 +78,9 @@ ModuleClosedNodes23=
ModuleClosedNodes24=
ModuleClosedNodes25=
ModuleClosedNodes26=
ModuleClosedNodes27=4,6,7,8,9
ModuleClosedNodes27=3,4,6,8,9
ModuleClosedNodes28=
ModuleClosedNodes29=
ModuleClosedNodes29=20
ModuleClosedNodes3=
ModuleClosedNodes4=
ModuleClosedNodes5=
@@ -88,6 +88,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7=6,8,9,10,11
ModuleClosedNodes8=
ModuleClosedNodes9=
NavigationStack=C_Productos,b_aceptar_Click,1329,0,C_TicketsDia,Class_Globals,10,0,C_TicketsDia,B4XPage_Created,50,0,C_TicketsDia,B4XPage_Appear,101,0,C_TicketsDia,b_noventa_Click,215,0,Diseñador Visual,ticketsdia.bal,-100,2,C_Principal,Class_Globals,0,0,C_Principal,B4XPage_Created,251,0,Diseñador Visual,resdia.bal,-100,2,C_Principal,resdia_Click,2819,0
NavigationStack=C_Cliente,B4XPage_CloseRequest,2782,3,Tracker,StartFLP2,412,0,Tracker,flp_LocationChanged,526,1,Subs,traeCliente,827,0,C_Cliente,b_envioPDF_Click,6584,0,C_Cliente,EnviarPDFWhatsAppNumero,6469,4,C_Cliente,GPS_LocationChanged,1453,6,C_Cliente,Impresion3,3210,0,C_Cliente,PDFGENERAR2,6361,0,C_Cliente,PDFGENERAR,6183,6
SelectedBuild=0
VisibleModules=27,2,16,28,5,12,13,22,18,17,14,29,19
VisibleModules=27,2,16,28,5,13,17,29,19,4,12,22

View File

@@ -41,6 +41,7 @@ Sub Process_Globals
Dim encuesta As String = 0
Public fFileProvider As FileProvider
Dim tabla As String
Dim enCliente As Boolean = False
End Sub
Sub Service_Create

View File

@@ -826,9 +826,12 @@ Sub traeCliente As String 'ignore
Private c As Cursor
Private cl As String
c=B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position=0
cl = c.GetString("CUENTA")
If c.RowCount > 0 Then
c.Position=0
cl = c.GetString("CUENTA")
End If
c.Close
Log($"Cliente=${cl}"$)
Return cl
End Sub
@@ -1312,6 +1315,7 @@ Sub guardaAppInfo 'ignore
B4XPages.MainPage.skmt.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('APP_VERSION', '${Application.VersionName}')"$)
End Sub
' Promo $150
Sub TraeMontoProd As Boolean
Private x As Boolean = False
Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT ifnull( SUM (PE_COSTO_TOT),0) As suma FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA)")
@@ -1320,7 +1324,6 @@ Sub TraeMontoProd As Boolean
Private c2 As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT DISTINCT CAT_PE_MONTO FROM CAT_PROMO_ESP")
If c2.RowCount > 0 Then
c2.Position = 0
If c.GetString("suma") >= c2.GetString("CAT_PE_MONTO") Then
x = True
' Log("verdadero")
@@ -1328,7 +1331,6 @@ Sub TraeMontoProd As Boolean
x = False
' Log("Falso")
End If
End If
End If
Return x
@@ -2225,20 +2227,20 @@ Sub alcanzanLosVariablesParaPromo(promoMap As Map, inventarioSinFijos As Map) As
End Sub
'Calcula el total de pedido tomando en cuenta si hay productos con promos por rango.
Sub calculaTotalConPromoXRango As String
Sub calculaTotalConPromoXRango(idCliente As String) As String
' caso 1 pe_recant = Null
' monto del pedido = pe_costo_tot
' caso 2 pe_recant = pe_cant (solo prods dentro de rango)
' monto del pedido = pe_recalculotot
' caso 3 pe_recant <> pe_cant (hay prod dentro de rango y producto extra
' monto del pedido = ((pe_cant - pe_reccant) * pe_costou) + pe_recalculotot
Log("888888888888")
' Log("888888888888")
Private totalParcial As String = 0
Private total As String = 0
Private cx As Cursor = Starter.skmt.ExecQuery($"select *, ifnull(pe_reccant, 'N') as RECANT from pedido where pe_cliente = '${traeCliente}'"$)
Private cx As Cursor = Starter.skmt.ExecQuery($"select *, ifnull(pe_reccant, 'N') as RECANT from pedido where pe_cliente = '${idCliente}'"$)
If cx.RowCount > 0 Then
For i = 0 To cx.RowCount - 1
Log("999999999999999999999999999999999999")
' Log("999999999999999999999999999999999999")
cx.Position = i
Log("***************************************")
If cx.getstring("RECANT") = "N" Then ' Sin productos dentro de rango.

View File

@@ -377,7 +377,7 @@ Sub Service_Start (StartingIntent As Intent)
End Sub
Public Sub Track
' Log("Inicia Track - Tracking : "&Tracking)
Log("Inicia Track - Tracking : "&Tracking)
If Not(FLP.IsInitialized) Then FLP.Initialize("flp")
If Not(FLP.IsConnected) Then FLP.Connect
If Tracking And actualLR.IsInitialized Then
@@ -393,7 +393,7 @@ Public Sub Track
End Sub
Public Sub StartFLP
' Log("StartFLP - flpStarted="&flpStarted)
Log("StartFLP - flpStarted="&flpStarted)
Do While FLP.IsConnected = False
Sleep(500)
' Log("sleeping")
@@ -407,8 +407,22 @@ Public Sub StartFLP
' End If
End Sub
Public Sub StartFLP2
Log("StartFLP2")
Private logger As Boolean = True
If logger Then Log("StartFLP2 - flpStarted="&flpStarted)
Do While FLP.IsConnected = False
Sleep(500)
If logger Then Log("kll - sleeping")
Loop
dameUltimaUbicacionConocida 'Regresamos ultima ubicacion conocida
FLP.RequestLocationUpdates(CreateLocationRequest2) 'Buscamos ubicacion 2 peticiones
If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta)
' If logger Then Log(actualLR.GetSmallestDisplacement)
End Sub
Public Sub StartFLPSmall
' Log("StartFLPSmall - flpStarted="&flpStarted)
Log("StartFLPSmall - flpStarted="&flpStarted)
Do While FLP.IsConnected = False
Sleep(500)
Log("sleeping")
@@ -420,25 +434,25 @@ Public Sub StartFLPSmall
End Sub
Private Sub CreateLocationRequest As LocationRequest
' Log("CreateLocationRequest")
Log("CreateLocationRequest")
Dim lr As LocationRequest
lr.Initialize
lr.SetInterval(1) 'Intervalo deseado para actualizaciones de ubicacion
lr.SetInterval(2000) 'Intervalo deseado para actualizaciones de ubicacion
lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion
lr.SetSmallestDisplacement(10) 'Solo registra cambio de ubicacion si es mayor a XX mts
lr.SetSmallestDisplacement(15) 'Solo registra cambio de ubicacion si es mayor a XX mts
lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY)
actualLR=lr
Return lr
End Sub
Private Sub CreateLocationRequestSmallD As LocationRequest
' Log("Iniciamos CreateLocationRequestSmallD")
Log("Iniciamos CreateLocationRequestSmallD")
Dim lr As LocationRequest
lr.Initialize
lr.SetInterval(2000) 'Intervalo deseado para actualizaciones de ubicacion
lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion
lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros
lr.SetSmallestDisplacement(0) 'Solo registra cambio de ubicacion si es mayor a XX mts
lr.SetSmallestDisplacement(1) 'Solo registra cambio de ubicacion si es mayor a XX mts
lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY)
actualLR=lr
Return lr
@@ -455,26 +469,13 @@ Sub dameUltimaUbicacionConocida
End Sub
Public Sub StopFLP
'Log("StopFLP")
Log("StopFLP")
If flpStarted Then
FLP.RemoveLocationUpdates 'Eliminamos todas las solicitudes de ubicacion
flpStarted = False
End If
End Sub
Public Sub StartFLP2
Private logger As Boolean = True
If logger Then Log("StartFLP2 - flpStarted="&flpStarted)
Do While FLP.IsConnected = False
Sleep(500)
If logger Then Log("kll - sleeping")
Loop
dameUltimaUbicacionConocida 'Regresamos ultima ubicacion conocida
FLP.RequestLocationUpdates(CreateLocationRequest2) 'Buscamos ubicacion 2 peticiones
If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta)
' If logger Then Log(actualLR.GetSmallestDisplacement)
End Sub
Private Sub CreateLocationRequest2 As LocationRequest
Private logger As Boolean = True
If logger Then Log("Iniciamos CreateLocationRequest2")
@@ -490,8 +491,8 @@ Private Sub CreateLocationRequest2 As LocationRequest
End Sub
Sub flp_LocationChanged (Location1 As Location)
' ToastMessageShow("Loc changed", False)
Log($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$)
' ToastMessageShow("Loc changed", False)
B4XPages.MainPage.lat_gps = Location1.Latitude
B4XPages.MainPage.lon_gps = Location1.Longitude
UUGCoords = Location1
@@ -524,9 +525,10 @@ Sub flp_LocationChanged (Location1 As Location)
End If
CallSub2(Starter, "GPS_LocationChanged", Location1)
CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1)
' CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1)
' CallSub2(gestion, "GPS_LocationChanged", Location1)
If B4XPages.MainPage.cliente.IsInitialized Then
If B4XPages.MainPage.cliente.IsInitialized And Starter.enCliente Then
CallSub2(B4XPages.GetPage("Cliente"), "GPS_LocationChanged", Location1)
End If
If B4XPages.MainPage.nuevoCliente.IsInitialized Then