- 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

@@ -30,7 +30,7 @@ Sub Class_Globals
Dim MAC_IMPRESORA As String Dim MAC_IMPRESORA As String
Dim btAdmin As BluetoothAdmin Dim btAdmin As BluetoothAdmin
Dim Printer1 As EscPosPrinter Dim Printer1 As EscPosPrinter
Private location2 As Location
Dim c As Cursor Dim c As Cursor
Dim s As Cursor Dim s As Cursor
Dim DD As Cursor Dim DD As Cursor
@@ -469,6 +469,7 @@ Sub Class_Globals
Private p_deuda As Panel Private p_deuda As Panel
Private Label22 As Label Private Label22 As Label
Private l_animal As Label Private l_animal As Label
private contIguales as int = 0
End Sub End Sub
'You can add more parameters here. '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. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear Sub B4XPage_Appear
Starter.enCliente = true
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
' Tels.Enabled = True ' Tels.Enabled = True
@@ -730,13 +732,13 @@ Sub B4XPage_Appear
gest.Visible = True gest.Visible = True
End If End If
End If End If
CallSubDelayed(Tracker, "Track") ' CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall") CallSubDelayed(Tracker, "StartFLPSmall")
CallSubDelayed(Tracker, "StartFLP2") ' CallSubDelayed(Tracker, "StartFLP2")
If Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos. If Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude 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) GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
End If End If
If ALMACEN = "1" Or ALMACEN = "2" Or ALMACEN = "4" Or ALMACEN = "5" Or ALMACEN = "25" Then If ALMACEN = "1" Or ALMACEN = "2" Or ALMACEN = "4" Or ALMACEN = "5" Or ALMACEN = "25" Then
@@ -1200,7 +1202,7 @@ Sub B4XPage_Appear
Log("============================================================") Log("============================================================")
Log("============================================================") Log("============================================================")
' ********************************************************* ' *********************************************************
l_total.Text = Subs.calculaTotalConPromoXRango l_total.Text = Subs.calculaTotalConPromoXRango(Subs.traecliente)
' ********************************************************* ' *********************************************************
SV_ENCUESTA.Visible = False SV_ENCUESTA.Visible = False
@@ -1450,27 +1452,39 @@ End Sub
'End Sub 'End Sub
' '
Sub GPS_LocationChanged (Location1 As Location) Sub GPS_LocationChanged (Location1 As Location)
LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
' Log($"${Location1.Latitude}, ${Location1.Longitude}"$)
If Location1 = location2 Then
' LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red) contIguales = contIguales + 1
' Log(Location1.Latitude& " aqui guerra "& Location1.Longitude) Log("Coords Iguales")
If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then If contIguales >= 3 Then
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude ' contIguales = 0
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude ' Log("No hacemos nada")
' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps) CallSubDelayed(Tracker, "StopFLP")
Return
End If
Else
contIguales = 0
End If 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) ' Log(m_lat &" " & m_lon)
' Si la precisión es mala, intentar mejorarla ' Si la precisión es mala, intentar mejorarla
If Location1.Accuracy > 50 Then ' Mayor a 50 metros de error If Location1.Accuracy > 50 Then ' Mayor a 50 metros de error
MejorarPrecisionGPS MejorarPrecisionGPS
Return ' Esperar siguiente lectura Return ' Esperar siguiente lectura
End If End If
' Filtrar ubicaciones con baja precisión ' Filtrar ubicaciones con baja precisión
If Location1.Accuracy > 50 Then ' Si la precisión es mayor a 50 metros, descartar If Location1.Accuracy > 50 Then ' Si la precisión es mayor a 50 metros, descartar
Return Return
@@ -1490,6 +1504,7 @@ Sub GPS_LocationChanged (Location1 As Location)
' Calcular promedio ' Calcular promedio
Dim latPromedio, lonPromedio As Double Dim latPromedio, lonPromedio As Double
For Each loc As Location In ultimasUbicaciones For Each loc As Location In ultimasUbicaciones
Log("***")
latPromedio = latPromedio + loc.Latitude latPromedio = latPromedio + loc.Latitude
lonPromedio = lonPromedio + loc.Longitude lonPromedio = lonPromedio + loc.Longitude
Next Next
@@ -1653,14 +1668,14 @@ Sub GPS_LocationChanged (Location1 As Location)
' p_transparenteInicioFin.Visible = False ' p_transparenteInicioFin.Visible = False
Log(996) Log(996)
' b_Inicio_Fin_venta.Visible = False ' b_Inicio_Fin_venta.Visible = False
c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)") c2 = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then If c2.RowCount > 0 Then
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
' b_geo = "0" ' b_geo = "0"
bitacora.banderaGeoCerca = "0" bitacora.banderaGeoCerca = "0"
iniciofin iniciofin
Else If c.RowCount = 0 Then Else If c2.RowCount = 0 Then
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
' p_transparenteInicioFin.Visible = False ' p_transparenteInicioFin.Visible = False
@@ -1675,7 +1690,7 @@ Sub GPS_LocationChanged (Location1 As Location)
iniciofin iniciofin
End If End If
End If End If
c.Close c2.Close
LA_GEO.TextColor = Colors.Red LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then If ALMACEN = "1" Then
Tels.Visible = False Tels.Visible = False
@@ -2772,8 +2787,8 @@ Private Sub B4XPage_CloseRequest As ResumableSub
SV_ENCUESTA.visible = False SV_ENCUESTA.visible = False
p_cliente.Visible = True p_cliente.Visible = True
' Else If B4XPages.MainPage.nota Then ' Else If B4XPages.MainPage.nota Then
Else Else
Starter.enCliente = False
B4XPages.ShowPage("Clientes") B4XPages.ShowPage("Clientes")
End If End If
' Return True ' Return True
@@ -3064,15 +3079,13 @@ Sub Impresion3
Printer1.WriteString("-----------PREVENTA-----------" & 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. ' 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 If S.RowCount>0 Then
For i=0 To S.RowCount -1 For i=0 To S.RowCount -1
S.Position=i S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else Else
If s.GetDouble("PE_RECALCULO") = 0 Then If s.GetDouble("PE_RECALCULO") = 0 Then
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
TAMANO = s.GetLong("L_CANT") + TAMANO TAMANO = s.GetLong("L_CANT") + TAMANO
@@ -3088,7 +3101,7 @@ Sub Impresion3
TAMANO = 0 TAMANO = 0
ESPACIO = 21 ESPACIO = 21
BLANCO = " " BLANCO = " "
Else Else if s.GetDouble("PE_CANT") = s.GetDouble("PE_RECCANT") Then
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
TAMANO = s.GetLong("L_CANT") + TAMANO TAMANO = s.GetLong("L_CANT") + TAMANO
TAMANO = s.GetLong("L_COSTOREC") + TAMANO TAMANO = s.GetLong("L_COSTOREC") + TAMANO
@@ -3109,8 +3122,44 @@ Sub Impresion3
TAMANO = 0 TAMANO = 0
ESPACIO = 21 ESPACIO = 21
BLANCO = " " BLANCO = " "
End If 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_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 End If
Next Next
End If End If
@@ -3152,6 +3201,7 @@ Sub Impresion3
' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL"))) ' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL")))
' End If ' End If
Printer1.WriteString("Subtotal Preventa: $" & s.GetString("TOTAL") & CRLF) 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= 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 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 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 End If
' If s.GetString("TOTAL") - s.GetString("TOTAL2") <> 0 Then ' If s.GetString("TOTAL") - s.GetString("TOTAL2") <> 0 Then
' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL"))) ' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL")))
' End If ' End If
' Printer1.WriteString("Descuento: $" & 150 & CRLF) ' 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)
Printer1.WriteString("------------------------------" & CRLF) Printer1.WriteString("------------------------------" & CRLF)
@@ -5903,7 +5954,7 @@ Private Sub PDFGENERAR
If ALMACEN = 88 Then 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 If S.RowCount>0 Then
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"------------------------------------PREVENTA-----------------------------------------") PDF.outtext(1,pagina-multiplicador*6,"------------------------------------PREVENTA-----------------------------------------")
@@ -5922,9 +5973,9 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE")) PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE"))
' LogColor(s.GetLong("L_CANT"),Colors.Magenta) ' LogColor(s.GetLong("L_CANT"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) ' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta) ' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT") TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT")
ESPACIO = 92 ESPACIO = 92
BLANCO = " " BLANCO = " "
@@ -5936,11 +5987,11 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1 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,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_COSTOU"))
'
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") ) ' PDF.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
End If End If
Else Else if s.GetDouble("PE_CANT") = s.GetDouble("PE_RECCANT") Then
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE") ) 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) PDF.sFont(PDF.fontHelvetica,0,7,PDF.colorBlack)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE")) PDF.outtext(1,pagina-multiplicador*6,s.GetString("PE_PRONOMBRE"))
' LogColor(s.GetLong("L_CANT"),Colors.Magenta) ' LogColor(s.GetLong("L_CANT"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) ' LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta) ' LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOREC") + s.GetLong("L_COSTO_TOTREC") TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOREC") + s.GetLong("L_COSTO_TOTREC")
ESPACIO = 92 ESPACIO = 92
BLANCO = " " BLANCO = " "
@@ -5962,10 +6013,55 @@ Private Sub PDFGENERAR
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1 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,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_COSTOU"))
'
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") ) ' PDF.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
End If 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 End If
Next Next
@@ -6082,11 +6178,13 @@ Private Sub PDFGENERAR
If NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) <> s.GetString("TOTAL") Then If NumberFormat2((s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False) <> s.GetString("TOTAL") Then
multiplicador = multiplicador +1 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) ' Printer1.WriteString("Descuento: $" & NumberFormat2( s.GetString("TOTAL")-(s3.GetString("TOTAL") + S2.GetString("TOTAL")),0,2,2,False)& CRLF)
End If End If
multiplicador = multiplicador +1 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) ' 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.Dir = Starter.fFileProvider.SharedFolder
fd.FileName = archivoTicketPDF fd.FileName = archivoTicketPDF
fd.ContentType = "application/pdf" 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)") 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) campos.Put("number", NumeroTelefono)
Log(NumeroTelefono)
campos.Put("message","Tu recibo") campos.Put("message","Tu recibo")
Log(campos) Log(campos)
Private job As HttpJob Private job As HttpJob
@@ -6503,7 +6602,6 @@ Private Sub b_envioPDF_Click
PDFGENERAR PDFGENERAR
End If End If
Sleep(3000) Sleep(3000)
EnviarPDFWhatsAppNumero(et_numeroPDF.Text) EnviarPDFWhatsAppNumero(et_numeroPDF.Text)

View File

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

View File

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

View File

@@ -2800,46 +2800,69 @@ Sub resdia_Click
c.Close c.Close
'AQUI CAMBIAR '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")) ' 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) ' LogColor(s3.RowCount,Colors.Yellow)
If s3.RowCount > 0 Then ' 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")) ' 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 ' 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")) ' 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 ' s5.Position = 0
'' l_ru_pri.Text = NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
' 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 =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
L_REAL.Text = Subs.calculaTotalConPromoXRango '' L_REAL.Text = Subs.calculaTotalConPromoXRango(s3.GetString("PE_CLIENTE"))
s.Close ' s.Close
' Else If s3.RowCount = 0 Then
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 ")
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
s.Position=0 '' l_ru_pri.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
' 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 = NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
L_REAL.Text = Subs.calculaTotalConPromoXRango '' L_REAL.Text = Subs.calculaTotalConPromoXRango(s.GetString("PE_CLIENTE"))
' s.Close
' End If
' s3.Close
s.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 End If
'Prueba0 '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) ' 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 ' ru_o.Position=0
Log("------------->RutaOriginal "&ru_o) ' Log("------------->RutaOriginal "&ru_o)
If ru_o.GetString("PE_RUTA") = 0 Then ' If ru_o.GetString("PE_RUTA") = 0 Then
Label2.Text = "N/A" ' Label2.Text = "N/A"
Else if ru_o.RowCount >=1 Then ' Else if ru_o.RowCount >=1 Then
Private rutOr As String = ru_o.GetString("PE_RUTA") ' Private rutOr As String = ru_o.GetString("PE_RUTA")
Label2.Text = "Ruta " & rutOr ' Label2.Text = "Ruta " & rutOr
' l_ru_pri.Text = NumberFormat2(ru_o.GetDouble("TOTAL_CLIE"), 0, 2, 2, False) '' l_ru_pri.Text = NumberFormat2(ru_o.GetDouble("TOTAL_CLIE"), 0, 2, 2, False)
l_ru_pri.Text = Subs.calculaTotalConPromoXRango ' 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 End If
ru_o.Close l_ru_pri.Text = total2
'Prueba1 '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) 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)

View File

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

View File

@@ -54,7 +54,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
ListView1.TwoLinesLayout.ItemHeight = 95dip ListView1.TwoLinesLayout.ItemHeight = 95dip
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)
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 Next
End If End If
End Sub End Sub
@@ -104,8 +104,9 @@ Sub B4XPage_Appear
ListView1.TwoLinesLayout.ItemHeight = 95dip ListView1.TwoLinesLayout.ItemHeight = 95dip
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)
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 $"& 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 s.Close
Else If s3.RowCount = 0 Then 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"))) 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 ListView1.TwoLinesLayout.ItemHeight = 95dip
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)
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 s.Close
End If End If
Next 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")) 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) LogColor(s3.RowCount,Colors.Yellow)
If s3.RowCount > 0 Then 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")) 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 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")) 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"))
@@ -219,7 +220,7 @@ Sub b_noventa_Click
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)
' 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 $"& 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 s.Close
Else If s3.RowCount = 0 Then 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"))) 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")))
@@ -239,10 +240,7 @@ Sub b_noventa_Click
ListView1.TwoLinesLayout.ItemHeight = 95dip ListView1.TwoLinesLayout.ItemHeight = 95dip
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)
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 s.Close
End If End If

Binary file not shown.

View File

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

View File

@@ -78,9 +78,9 @@ ModuleClosedNodes23=
ModuleClosedNodes24= ModuleClosedNodes24=
ModuleClosedNodes25= ModuleClosedNodes25=
ModuleClosedNodes26= ModuleClosedNodes26=
ModuleClosedNodes27=4,6,7,8,9 ModuleClosedNodes27=3,4,6,8,9
ModuleClosedNodes28= ModuleClosedNodes28=
ModuleClosedNodes29= ModuleClosedNodes29=20
ModuleClosedNodes3= ModuleClosedNodes3=
ModuleClosedNodes4= ModuleClosedNodes4=
ModuleClosedNodes5= ModuleClosedNodes5=
@@ -88,6 +88,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7=6,8,9,10,11 ModuleClosedNodes7=6,8,9,10,11
ModuleClosedNodes8= ModuleClosedNodes8=
ModuleClosedNodes9= 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 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 Dim encuesta As String = 0
Public fFileProvider As FileProvider Public fFileProvider As FileProvider
Dim tabla As String Dim tabla As String
Dim enCliente As Boolean = False
End Sub End Sub
Sub Service_Create Sub Service_Create

View File

@@ -826,9 +826,12 @@ Sub traeCliente As String 'ignore
Private c As Cursor Private c As Cursor
Private cl As String Private cl As String
c=B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa") c=B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position=0 If c.RowCount > 0 Then
cl = c.GetString("CUENTA") c.Position=0
cl = c.GetString("CUENTA")
End If
c.Close c.Close
Log($"Cliente=${cl}"$)
Return cl Return cl
End Sub 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}')"$) B4XPages.MainPage.skmt.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('APP_VERSION', '${Application.VersionName}')"$)
End Sub End Sub
' Promo $150
Sub TraeMontoProd As Boolean Sub TraeMontoProd As Boolean
Private x As Boolean = False 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)") 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") Private c2 As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT DISTINCT CAT_PE_MONTO FROM CAT_PROMO_ESP")
If c2.RowCount > 0 Then If c2.RowCount > 0 Then
c2.Position = 0 c2.Position = 0
If c.GetString("suma") >= c2.GetString("CAT_PE_MONTO") Then If c.GetString("suma") >= c2.GetString("CAT_PE_MONTO") Then
x = True x = True
' Log("verdadero") ' Log("verdadero")
@@ -1328,7 +1331,6 @@ Sub TraeMontoProd As Boolean
x = False x = False
' Log("Falso") ' Log("Falso")
End If End If
End If End If
End If End If
Return x Return x
@@ -2225,20 +2227,20 @@ Sub alcanzanLosVariablesParaPromo(promoMap As Map, inventarioSinFijos As Map) As
End Sub End Sub
'Calcula el total de pedido tomando en cuenta si hay productos con promos por rango. '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 ' caso 1 pe_recant = Null
' monto del pedido = pe_costo_tot ' monto del pedido = pe_costo_tot
' caso 2 pe_recant = pe_cant (solo prods dentro de rango) ' caso 2 pe_recant = pe_cant (solo prods dentro de rango)
' monto del pedido = pe_recalculotot ' monto del pedido = pe_recalculotot
' caso 3 pe_recant <> pe_cant (hay prod dentro de rango y producto extra ' 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 ' monto del pedido = ((pe_cant - pe_reccant) * pe_costou) + pe_recalculotot
Log("888888888888") ' Log("888888888888")
Private totalParcial As String = 0 Private totalParcial As String = 0
Private total 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 If cx.RowCount > 0 Then
For i = 0 To cx.RowCount - 1 For i = 0 To cx.RowCount - 1
Log("999999999999999999999999999999999999") ' Log("999999999999999999999999999999999999")
cx.Position = i cx.Position = i
Log("***************************************") Log("***************************************")
If cx.getstring("RECANT") = "N" Then ' Sin productos dentro de rango. 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 End Sub
Public Sub Track Public Sub Track
' Log("Inicia Track - Tracking : "&Tracking) Log("Inicia Track - Tracking : "&Tracking)
If Not(FLP.IsInitialized) Then FLP.Initialize("flp") If Not(FLP.IsInitialized) Then FLP.Initialize("flp")
If Not(FLP.IsConnected) Then FLP.Connect If Not(FLP.IsConnected) Then FLP.Connect
If Tracking And actualLR.IsInitialized Then If Tracking And actualLR.IsInitialized Then
@@ -393,7 +393,7 @@ Public Sub Track
End Sub End Sub
Public Sub StartFLP Public Sub StartFLP
' Log("StartFLP - flpStarted="&flpStarted) Log("StartFLP - flpStarted="&flpStarted)
Do While FLP.IsConnected = False Do While FLP.IsConnected = False
Sleep(500) Sleep(500)
' Log("sleeping") ' Log("sleeping")
@@ -407,8 +407,22 @@ Public Sub StartFLP
' End If ' End If
End Sub 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 Public Sub StartFLPSmall
' Log("StartFLPSmall - flpStarted="&flpStarted) Log("StartFLPSmall - flpStarted="&flpStarted)
Do While FLP.IsConnected = False Do While FLP.IsConnected = False
Sleep(500) Sleep(500)
Log("sleeping") Log("sleeping")
@@ -420,25 +434,25 @@ Public Sub StartFLPSmall
End Sub End Sub
Private Sub CreateLocationRequest As LocationRequest Private Sub CreateLocationRequest As LocationRequest
' Log("CreateLocationRequest") Log("CreateLocationRequest")
Dim lr As LocationRequest Dim lr As LocationRequest
lr.Initialize 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.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) lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY)
actualLR=lr actualLR=lr
Return lr Return lr
End Sub End Sub
Private Sub CreateLocationRequestSmallD As LocationRequest Private Sub CreateLocationRequestSmallD As LocationRequest
' Log("Iniciamos CreateLocationRequestSmallD") Log("Iniciamos CreateLocationRequestSmallD")
Dim lr As LocationRequest Dim lr As LocationRequest
lr.Initialize lr.Initialize
lr.SetInterval(2000) '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.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion
lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros 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) lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY)
actualLR=lr actualLR=lr
Return lr Return lr
@@ -455,26 +469,13 @@ Sub dameUltimaUbicacionConocida
End Sub End Sub
Public Sub StopFLP Public Sub StopFLP
'Log("StopFLP") Log("StopFLP")
If flpStarted Then If flpStarted Then
FLP.RemoveLocationUpdates 'Eliminamos todas las solicitudes de ubicacion FLP.RemoveLocationUpdates 'Eliminamos todas las solicitudes de ubicacion
flpStarted = False flpStarted = False
End If End If
End Sub 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 Sub CreateLocationRequest2 As LocationRequest
Private logger As Boolean = True Private logger As Boolean = True
If logger Then Log("Iniciamos CreateLocationRequest2") If logger Then Log("Iniciamos CreateLocationRequest2")
@@ -490,8 +491,8 @@ Private Sub CreateLocationRequest2 As LocationRequest
End Sub End Sub
Sub flp_LocationChanged (Location1 As Location) Sub flp_LocationChanged (Location1 As Location)
' ToastMessageShow("Loc changed", False)
Log($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$) Log($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$)
' ToastMessageShow("Loc changed", False)
B4XPages.MainPage.lat_gps = Location1.Latitude B4XPages.MainPage.lat_gps = Location1.Latitude
B4XPages.MainPage.lon_gps = Location1.Longitude B4XPages.MainPage.lon_gps = Location1.Longitude
UUGCoords = Location1 UUGCoords = Location1
@@ -524,9 +525,10 @@ Sub flp_LocationChanged (Location1 As Location)
End If End If
CallSub2(Starter, "GPS_LocationChanged", Location1) CallSub2(Starter, "GPS_LocationChanged", Location1)
CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1) ' CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1)
' CallSub2(gestion, "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) CallSub2(B4XPages.GetPage("Cliente"), "GPS_LocationChanged", Location1)
End If End If
If B4XPages.MainPage.nuevoCliente.IsInitialized Then If B4XPages.MainPage.nuevoCliente.IsInitialized Then