14/9/23 - Promos - Precio de fijos en variables

Arregla el caso de que, si un producto esta en fijos y variables, el variable tomaba el precio del fijo.
This commit is contained in:
2023-09-14 02:08:47 -06:00
parent 044c60c876
commit 5bdf238f3f
7 changed files with 105 additions and 33 deletions

View File

@@ -23,6 +23,7 @@ Sub Class_Globals
Private Root As B4XView Private Root As B4XView
Private xui As XUI Private xui As XUI
Public login As B4XMainPage Public login As B4XMainPage
Dim rp As RuntimePermissions
Public principal As C_Principal Public principal As C_Principal
Public clientes As C_Clientes Public clientes As C_Clientes
Public cliente As C_Cliente Public cliente As C_Cliente
@@ -198,9 +199,11 @@ Private Sub B4XPage_Created (Root1 As B4XView)
reqManager.Initialize(Me, Starter.server) reqManager.Initialize(Me, Starter.server)
' Activity.LoadLayout("login") ' Activity.LoadLayout("login")
Label1.Text = Application.VersionName Label1.Text = Application.VersionName
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) ' Log("Pedimos permisos de almacenamiento externo")
If Result Then Log("Tenemos permisos de escritura externa.") ' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
' If Result Then Log("Tenemos permisos de escritura externa.")
c=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS FROM TMP_INSPECCION_AUTO_DIARIA") c=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS FROM TMP_INSPECCION_AUTO_DIARIA")
c.Position = 0 c.Position = 0
CUANTOS = c.GetString("CUANTOS") CUANTOS = c.GetString("CUANTOS")
@@ -259,14 +262,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
If logger Then Log($"Marca: ${Starter.ph.manufacturer}, Modelo: ${Starter.ph.model}"$) If logger Then Log($"Marca: ${Starter.ph.manufacturer}, Modelo: ${Starter.ph.model}"$)
If logger Then LogColor($"////////////////// DeviceID: ${DeviceID} ////////////////// "$, Colors.Blue) If logger Then LogColor($"////////////////// DeviceID: ${DeviceID} ////////////////// "$, Colors.Blue)
' If Logger Then LogColor("Revisa permisos Phone_State", Colors.Green) ' If Logger Then LogColor("Revisa permisos Phone_State", Colors.Green)
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then
Dim Phn As PhoneId
IMEN.Text = "" 'Phn.GetDeviceId
IMEI ="" ' Phn.GetDeviceId
If logger Then LogColor($"////////////////// IMEI: ${IMEI} ////////////////// "$, Colors.Blue)
End If
'este codigo es para lo del menu 'este codigo es para lo del menu
' PopupMenu.Initialize("PopupMenu", b_menu) ' PopupMenu.Initialize("PopupMenu", b_menu)
' PopupMenu.AddMenuItem(0, 0, "View") ' PopupMenu.AddMenuItem(0, 0, "View")
@@ -274,7 +269,24 @@ Private Sub B4XPage_Created (Root1 As B4XView)
' PopupMenu.AddMenuItem(2, 2, "Details") ' PopupMenu.AddMenuItem(2, 2, "Details")
' PopupMenu.AddMenuItem(3, 3, "Remove") ' PopupMenu.AddMenuItem(3, 3, "Remove")
' menu fin ' menu fin
Subs.borraArribaDe100Errores ' Subs.borraArribaDe100Errores
' Log("Permisos BT: " & rp.Check("android.permission.BLUETOOTH_CONNECT"))
' Log("REVISAMOS PERMISOS DE BT")
' rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
' Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
' If Result Then Log("Tenemos permisos de bluetooth.")
' Log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
' Log("Check phone state: " & rp.Check(rp.PERMISSION_READ_PHONE_STATE))
Log("Pedimos permisos de estado del cel")
rp.CheckAndRequest(rp.PERMISSION_READ_PHONE_STATE)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then
Dim Phn As PhoneId
IMEN.Text = "" 'Phn.GetDeviceId
IMEI ="" ' Phn.GetDeviceId
If logger Then LogColor($"////////////////// IMEI: ${IMEI} ////////////////// "$, Colors.Blue)
End If
Log("Permisos cel terminados")
End Sub End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
@@ -345,6 +357,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 Entrar_Click Sub Entrar_Click
Log("xxxxxxx")
DateTime.DateFormat = "yyyyMMdd" DateTime.DateFormat = "yyyyMMdd"
If user.Text = "ALTERNO" Then If user.Text = "ALTERNO" Then
c=Starter.skmt.ExecQuery2("select CAT_CO_CONFIGURACION, CAT_CO_RESULTADO from CAT_CODIGOS where CAT_CO_PONDERACION =1 AND CAT_CO_ACCION = ?", Array As String("SERVER")) c=Starter.skmt.ExecQuery2("select CAT_CO_CONFIGURACION, CAT_CO_RESULTADO from CAT_CODIGOS where CAT_CO_PONDERACION =1 AND CAT_CO_ACCION = ?", Array As String("SERVER"))
@@ -374,12 +387,14 @@ Sub Entrar_Click
Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object ("2.95")) Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object ("2.95"))
B4XPages.ShowPage("Principal") B4XPages.ShowPage("Principal")
End If End If
Log(1)
' c=Starter.skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text)) ' c=Starter.skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text))
c=Starter.skmt.ExecQuery2($"select count(*) as EXISTE1 from usuarioa where usuario = ? and fecha = ${DateTime.Date(DateTime.Now)}"$, Array As String(user.Text)) c=Starter.skmt.ExecQuery2($"select count(*) as EXISTE1 from usuarioa where usuario = ? and fecha = ${DateTime.Date(DateTime.Now)}"$, Array As String(user.Text))
c.Position=0 c.Position=0
existe = c.GetString("EXISTE1") existe = c.GetString("EXISTE1")
' Log($"${existe}, ${DateTime.Date(DateTime.Now)}, ${user.Text}"$ ) ' Log($"${existe}, ${DateTime.Date(DateTime.Now)}, ${user.Text}"$ )
'existe = 1 'existe = 1
Log(2)
If existe = 0 Then If existe = 0 Then
'skmt.ExecNonQuery("delete from usuarioa") 'skmt.ExecNonQuery("delete from usuarioa")
Dim cmd As DBCommand Dim cmd As DBCommand
@@ -395,6 +410,7 @@ Sub Entrar_Click
Subs.iniciaActividad("Principal") Subs.iniciaActividad("Principal")
' B4XPages.ShowPage("Principal") ' B4XPages.ShowPage("Principal")
End If End If
Log("xxxxxxx")
End Sub End Sub
Sub JobDone(Job As HttpJob) Sub JobDone(Job As HttpJob)
@@ -549,9 +565,9 @@ Sub ImageView4_Click
End Sub End Sub
Private Sub ImageView4_LongClick Private Sub ImageView4_LongClick
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) ' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) ' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
Subs.copiaDB(Result) ' Subs.copiaDB(Result)
End Sub End Sub
Sub B_SERVER_Click Sub B_SERVER_Click

View File

@@ -349,6 +349,13 @@ Private Sub B4XPage_Created (Root1 As B4XView)
TOMAR_FOTO = 0 TOMAR_FOTO = 0
c.Close c.Close
If s.IsInitialized Then s.Close If s.IsInitialized Then s.Close
Log("################# PERMISOS BT: " & Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
Log("Permisos BT: " & Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
Log("REVISAMOS PERMISOS DE BT")
Starter.rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then Log("Tenemos permisos de bluetooth.")
Log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
End Sub End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -611,6 +618,11 @@ Sub B4XPage_Appear
End If End If
muestraBoleta = False muestraBoleta = False
' Log(Subs.revisaImpresa) ' Log(Subs.revisaImpresa)
If l_total.text <> "null" And l_total.text <> "" And l_total.text <> Null Then
B_IMP2.Enabled = True
Else
B_IMP2.Enabled = False
End If
If Subs.revisaImpresa Then Guardar.Visible = True If Subs.revisaImpresa Then Guardar.Visible = True
End Sub End Sub
@@ -2101,6 +2113,7 @@ End Sub
Sub B_GUARDAR_Click Sub B_GUARDAR_Click
If logger Then Log("Guardar clic") If logger Then Log("Guardar clic")
B_IMP2.Enabled = True
If CH_TA.Checked = True Then If CH_TA.Checked = True Then
TIPOEX = "TIPO A" TIPOEX = "TIPO A"
ELSE If CH_TB.Checked = True Then ELSE If CH_TB.Checked = True Then

View File

@@ -9,6 +9,7 @@ Sub Class_Globals
Private Root As B4XView 'ignore Private Root As B4XView 'ignore
Private xui As XUI 'ignore Private xui As XUI 'ignore
Dim reqManager As DBRequestManager Dim reqManager As DBRequestManager
Dim rp As RuntimePermissions
Dim t1 As Timer Dim t1 As Timer
Dim t2 As Timer Dim t2 As Timer
Private t3 As Timer Private t3 As Timer
@@ -257,7 +258,9 @@ End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
If Subs.traeUltimaActividadBD <> "principal" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD) If Subs.traeUltimaActividadBD <> "principal" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD)
Starter.btAdmin.Initialize("BlueTeeth") Starter.btAdmin.Initialize("btAdmin")
Log("BTADMIN INICIALIZADO: "&Starter.btAdmin.IsEnabled)
Starter.btAdmin.Enable
If Not(Starter.btAdmin.IsEnabled) Then Starter.btAdmin.Enable If Not(Starter.btAdmin.IsEnabled) Then Starter.btAdmin.Enable
e_ruta.Enabled = True e_ruta.Enabled = True
Starter.rutaV = l_ruta.Text Starter.rutaV = l_ruta.Text
@@ -369,6 +372,26 @@ Sub B4XPage_Appear
CallSub(Starter, "ENVIA_ULTIMA_GPS") CallSub(Starter, "ENVIA_ULTIMA_GPS")
c.Close c.Close
' Subs.guardaUltimaActividadBD("principal") ' Subs.guardaUltimaActividadBD("principal")
Log("Check phone state: " & rp.Check(rp.PERMISSION_READ_PHONE_STATE))
Log("Pedimos permisos de estado del cel")
rp.CheckAndRequest(rp.PERMISSION_READ_PHONE_STATE)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then
Dim Phn As PhoneId
' IMEN.Text = "" 'Phn.GetDeviceId
imei ="" ' Phn.GetDeviceId
If logger Then LogColor($"////////////////// IMEI: ${imei} ////////////////// "$, Colors.Blue)
End If
Log("Permisos cel terminados")
' Log("Permisos BT: " & rp.Check("android.permission.BLUETOOTH_CONNECT"))
' Log("REVISAMOS PERMISOS DE BT")
' rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
' Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
' If Result Then Log("Tenemos permisos de bluetooth.")
' Log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
End Sub End Sub
Sub trabajar_Click Sub trabajar_Click
@@ -1881,6 +1904,15 @@ Sub Activity_KeyPress (key As Int) As Boolean
End Sub End Sub
Sub connecta_Click Sub connecta_Click
Log("################# PERMISOS BT: " & Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
Log("Permisos BT: " & Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
Log("REVISAMOS PERMISOS DE BT")
Starter.rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then Log("Tenemos permisos de bluetooth.")
Log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("RUTA")) ' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("RUTA"))
' c.Position =0 ' c.Position =0
' If c.GetString("CAT_VA_VALOR") = l_ruta.Text Then ' If c.GetString("CAT_VA_VALOR") = l_ruta.Text Then
@@ -1899,11 +1931,14 @@ Sub connecta_Click
usuario = c.GetString("USUARIO") usuario = c.GetString("USUARIO")
c.Close c.Close
connecta1 = connecta1 + 1 connecta1 = connecta1 + 1
Log("Pedimos permisos de Phone State")
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE) Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then If Result Then
imei = "" 'p.GetDeviceId imei = "" 'p.GetDeviceId
End If End If
Log("Terminamos permisos")
conn = "1" conn = "1"
Dim cmd As DBCommand Dim cmd As DBCommand
cmd.Initialize cmd.Initialize

View File

@@ -109,6 +109,8 @@ Sub muestraPromo(promo As String, cliente As String)
'Ponemos el texto en las etiquetas de la cantidad de productos. 'Ponemos el texto en las etiquetas de la cantidad de productos.
' Dim pf As List = mp.Get("prodsFijos") ' Dim pf As List = mp.Get("prodsFijos")
Dim pv As List = mp.Get("prodsVariables") Dim pv As List = mp.Get("prodsVariables")
Dim listaPreciosPV As List = mp.Get("prodsVariablesPrecios")
Logcolor(listaPreciosPV, Colors.red)
If thisLog Then Log(mp) If thisLog Then Log(mp)
tpf = 0 tpf = 0
For Each pfp As Int In mp.Get("prodsFijosPiezas").As(List) For Each pfp As Int In mp.Get("prodsFijosPiezas").As(List)
@@ -155,9 +157,11 @@ Sub muestraPromo(promo As String, cliente As String)
' jpeg = c2.GetBlob("CAT_GP_IMG") ' jpeg = c2.GetBlob("CAT_GP_IMG")
' ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length) ' ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
' bmp.Initialize2(ins) ' bmp.Initialize2(ins)
Private indicePV = pv.IndexOf(p)
Private estePrecio = listaPreciosPV.Get(indicePV)
Private thisProd As Map = prodsPromo.Get(p) Private thisProd As Map = prodsPromo.Get(p)
If thisLog Then Log(thisProd) If thisLog Then Log(thisProd)
If existenciaProdVariable > 0 Then clv_prodsVariabes.Add(CreateListItem(Subs.traeProdNombre(p)&CRLF&"Hay " & invDispPromo.Get(p) & " $" & thisProd.Get("precio"), thisProd.Get("precio"), invDispPromo.Get(p), clv_prodsVariabes.AsView.Width, 50dip, Null, p), p) If existenciaProdVariable > 0 Then clv_prodsVariabes.Add(CreateListItem(Subs.traeProdNombre(p)&CRLF&"Hay " & invDispPromo.Get(p) & " $" & estePrecio, estePrecio, invDispPromo.Get(p), clv_prodsVariabes.AsView.Width, 50dip, Null, p), p)
End If End If
Next Next
b_terminar1.Visible = False b_terminar1.Visible = False

View File

@@ -107,12 +107,12 @@ FileGroup8=Default Group
FileGroup9=Default Group FileGroup9=Default Group
Group=Default Group Group=Default Group
Library1=appupdating Library1=appupdating
Library10=googlemaps Library10=fusedlocationprovider
Library11=googlemapsextras Library11=googlemaps
Library12=gps Library12=googlemapsextras
Library13=ime Library13=gps
Library14=json Library14=ime
Library15=okhttputils2 Library15=json
Library16=pdfium Library16=pdfium
Library17=phone Library17=phone
Library18=preoptimizedclv Library18=preoptimizedclv
@@ -129,14 +129,13 @@ Library27=xcustomlistview
Library28=xui Library28=xui
Library29=zxing_scanner Library29=zxing_scanner
Library3=baqrcode Library3=baqrcode
Library30=fileprovider
Library4=bitmapcreator Library4=bitmapcreator
Library5=byteconverter Library5=byteconverter
Library6=camera Library6=camera
Library7=contentresolver Library7=contentresolver
Library8=core Library8=core
Library9=fusedlocationprovider Library9=fileprovider
ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="33"/>~\n~<supports-screens android:largeScreens="true" ~\n~ android:normalScreens="true" ~\n~ android:smallScreens="true" ~\n~ android:anyDensity="true"/>)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~AddApplicationText(<activity android:name="com.google.zxing.client.android.CaptureActivity"~\n~android:screenOrientation="landscape" ~\n~android:configChanges="orientation|keyboardHidden"~\n~android:theme="@android:style/Theme.NoTitleBar.Fullscreen"~\n~android:windowSoftInputMode="stateAlwaysHidden">~\n~</activity>)~\n~'Set activity to Landscape~\n~SetActivityAttribute(foto, android:screenOrientation, "landscape")~\n~AddApplicationText(~\n~<meta-data~\n~ android:name="com.google.android.geo.API_KEY"~\n~ android:value="AIzaSyBlBnx3O-DncOSv3oFIp-12wgujOYYcl-U"/>~\n~ <meta-data android:name="com.google.android.gms.version"~\n~ android:value="@integer/google_play_services_version" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~'''' para el teclado~\n~ SetActivityAttribute(main, android:windowSoftInputMode, adjustResize|stateHidden)~\n~ SetApplicationAttribute(android:allowBackup, "false")~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~ ~\n~ AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.ACCESS_FINE_LOCATION"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.READ_PHONE_STATE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"~\n~ android:maxSdkVersion="33" />~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~' CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'//////////////////////////////////////////////////////~\n~'Le da mas memoria a la aplicacion~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~ AddApplicationText(~\n~ <provider~\n~ android:name="android.support.v4.content.FileProvider"~\n~ android:authorities="$PACKAGE$.provider"~\n~ android:exported="false"~\n~ android:grantUriPermissions="true">~\n~ <meta-data~\n~ android:name="android.support.FILE_PROVIDER_PATHS"~\n~ android:resource="@xml/provider_paths"/>~\n~ </provider>~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ <paths>~\n~ <external-files-path name="name" path="" />~\n~ <files-path name="name" path="" />~\n~ <files-path name="name" path="shared" />~\n~ </paths>~\n~ )~\n~~\n~'Si al cargar un mapa de google manda este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText(<uses-library android:name="org.apache.http.legacy" android:required="false"/>)~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~AddManifestText(<queries><package android:name="com.google.android.apps.maps" /></queries>) ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="33"/>~\n~<supports-screens android:largeScreens="true" ~\n~ android:normalScreens="true" ~\n~ android:smallScreens="true" ~\n~ android:anyDensity="true"/>)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~AddApplicationText(<activity android:name="com.google.zxing.client.android.CaptureActivity"~\n~android:screenOrientation="landscape" ~\n~android:configChanges="orientation|keyboardHidden"~\n~android:theme="@android:style/Theme.NoTitleBar.Fullscreen"~\n~android:windowSoftInputMode="stateAlwaysHidden">~\n~</activity>)~\n~'Set activity to Landscape~\n~SetActivityAttribute(foto, android:screenOrientation, "landscape")~\n~AddApplicationText(~\n~<meta-data~\n~ android:name="com.google.android.geo.API_KEY"~\n~ android:value="AIzaSyBlBnx3O-DncOSv3oFIp-12wgujOYYcl-U"/>~\n~ <meta-data android:name="com.google.android.gms.version"~\n~ android:value="@integer/google_play_services_version" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~'''' para el teclado~\n~ SetActivityAttribute(main, android:windowSoftInputMode, adjustResize|stateHidden)~\n~ SetApplicationAttribute(android:allowBackup, "false")~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~ ~\n~ AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.ACCESS_FINE_LOCATION"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.READ_PHONE_STATE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.BLUETOOTH_CONNECT"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.BLUETOOTH_SCAN"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddPermission(android.permission.ACCESS_FINE_LOCATION)~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"~\n~ android:maxSdkVersion="33" />~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~' CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'//////////////////////////////////////////////////////~\n~'Le da mas memoria a la aplicacion~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~ AddApplicationText(~\n~ <provider~\n~ android:name="android.support.v4.content.FileProvider"~\n~ android:authorities="$PACKAGE$.provider"~\n~ android:exported="false"~\n~ android:grantUriPermissions="true">~\n~ <meta-data~\n~ android:name="android.support.FILE_PROVIDER_PATHS"~\n~ android:resource="@xml/provider_paths"/>~\n~ </provider>~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ <paths>~\n~ <external-files-path name="name" path="" />~\n~ <files-path name="name" path="" />~\n~ <files-path name="name" path="shared" />~\n~ </paths>~\n~ )~\n~~\n~'Si al cargar un mapa de google manda este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText(<uses-library android:name="org.apache.http.legacy" android:required="false"/>)~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~AddManifestText(<queries><package android:name="com.google.android.apps.maps" /></queries>)
Module1=B4XMainPage Module1=B4XMainPage
Module10=C_Pedidos Module10=C_Pedidos
Module11=C_Principal Module11=C_Principal
@@ -165,14 +164,14 @@ Module7=C_Nota
Module8=C_NoVenta Module8=C_NoVenta
Module9=C_NuevoCliente Module9=C_NuevoCliente
NumberOfFiles=53 NumberOfFiles=53
NumberOfLibraries=30 NumberOfLibraries=29
NumberOfModules=27 NumberOfModules=27
Version=12.2 Version=12.5
@EndOfDesignText@ @EndOfDesignText@
#Region Project Attributes #Region Project Attributes
#ApplicationLabel: Kelloggs Venta #ApplicationLabel: Kelloggs Venta
#VersionCode: 3000 #VersionCode: 3000
#VersionName: 3.09.06 PRUEBA V4 #VersionName: 3.09.11 PRUEBA V4
#SupportedOrientations: portrait #SupportedOrientations: portrait
#CanInstallToExternalStorage: False #CanInstallToExternalStorage: False
#BridgeLogger:true #BridgeLogger:true

View File

@@ -178,7 +178,7 @@ Sub ENVIA_ULTIMA_GPS
cmd.Initialize cmd.Initialize
cmd.Name = "UPDATE_KELL_ACTUAL3_GPS" cmd.Name = "UPDATE_KELL_ACTUAL3_GPS"
cmd.Parameters = Array As Object(montoActual, clientesVisitaHoy, clientesVenta, clientesVisitados, lat_gps, lon_gps, batt, 0, 0, 0, Application.VersionName, rtec, ping, salty, Subs.dameClientesFueraDeFrecuencia, almacen, rutaPreventa) cmd.Parameters = Array As Object(montoActual, clientesVisitaHoy, clientesVenta, clientesVisitados, lat_gps, lon_gps, batt, 0, 0, 0, Application.VersionName, rtec, ping, salty, Subs.dameClientesFueraDeFrecuencia, almacen, rutaPreventa)
If Logger Then LogColor(montoActual&","&clientesVisitaHoy&","&clientesVenta&","&clientesVisitados&","&lat_gps&","&lon_gps&","&batt&","&0&","&0&","&0&","&Application.VersionName&","&rtec&","&ping&","&salty&","& Subs.dameClientesFueraDeFrecuencia&","&almacen&","&rutaPreventa, Colors.Magenta) ' If Logger Then LogColor(montoActual&","&clientesVisitaHoy&","&clientesVenta&","&clientesVisitados&","&lat_gps&","&lon_gps&","&batt&","&0&","&0&","&0&","&Application.VersionName&","&rtec&","&ping&","&salty&","& Subs.dameClientesFueraDeFrecuencia&","&almacen&","&rutaPreventa, Colors.Magenta)
reqManager.ExecuteCommand(cmd,"updateKell_UTR") reqManager.ExecuteCommand(cmd,"updateKell_UTR")
' If Logger Then Log(reqManager) ' If Logger Then Log(reqManager)
' If Logger Then Log("++ ++ ++ Envia_Ultima GPS - Inst_visitas - server: "& server) ' If Logger Then Log("++ ++ ++ Envia_Ultima GPS - Inst_visitas - server: "& server)
@@ -199,7 +199,7 @@ Sub JobDone(Job As HttpJob)
If result.Tag = "updateKell_UTR" Then 'query tag If result.Tag = "updateKell_UTR" Then 'query tag
For Each records() As Object In result.Rows For Each records() As Object In result.Rows
For Each k As String In result.Columns.Keys For Each k As String In result.Columns.Keys
If Logger Then Log("Ubicacion en tiempo real: " & k & ": " & records(result.Columns.Get(k))) ' If Logger Then Log("Ubicacion en tiempo real: " & k & ": " & records(result.Columns.Get(k)))
Next Next
Next Next
End If End If

View File

@@ -964,12 +964,13 @@ Sub traePromo(promo As String, cliente As String) As Map
Private c As Cursor = Starter.skmt.ExecQuery("Select * from promos_comp where cat_pa_id = '"& promo&"'") 'Obtenemos las el maximo de promocioones a otorgar. Private c As Cursor = Starter.skmt.ExecQuery("Select * from promos_comp where cat_pa_id = '"& promo&"'") 'Obtenemos las el maximo de promocioones a otorgar.
Private siHistorico As String = 0 Private siHistorico As String = 0
Private promoMap As Map Private promoMap As Map
Private prodsFijos, prodsFijosPrecios, prodsFijosPiezas, prodsVariables As List Private prodsFijos, prodsFijosPrecios, prodsFijosPiezas, prodsVariables, prodsVariablesPrecios As List
promoMap.Initialize promoMap.Initialize
prodsFijos.Initialize prodsFijos.Initialize
prodsFijosPrecios.Initialize prodsFijosPrecios.Initialize
prodsFijosPiezas.Initialize prodsFijosPiezas.Initialize
prodsVariables.Initialize prodsVariables.Initialize
prodsVariablesPrecios.Initialize
c.Position = 0 c.Position = 0
If c.RowCount > 0 Then promoMap = CreateMap("id":promo, "maxXcliente":c.GetString("CAT_PA_MAXPROMCLIE"), "maxRecurrente":c.GetString("CAT_PA_MAXPROMREC"), "maxPromos":c.GetString("CAT_PA_MAXPROM")) If c.RowCount > 0 Then promoMap = CreateMap("id":promo, "maxXcliente":c.GetString("CAT_PA_MAXPROMCLIE"), "maxRecurrente":c.GetString("CAT_PA_MAXPROMREC"), "maxPromos":c.GetString("CAT_PA_MAXPROM"))
c = Starter.skmt.ExecQuery("Select count(*) as hist from HIST_PROMOS where HP_CLIENTE = '"& cliente & "' and HP_CODIGO_PROMOCION = '" & promo & "'") 'Revisamos si hay historico de la promoción. c = Starter.skmt.ExecQuery("Select count(*) as hist from HIST_PROMOS where HP_CLIENTE = '"& cliente & "' and HP_CODIGO_PROMOCION = '" & promo & "'") 'Revisamos si hay historico de la promoción.
@@ -991,7 +992,10 @@ Sub traePromo(promo As String, cliente As String) As Map
prodsFijosPrecios.Add(c.GetString("CAT_DP_PRECIO")) prodsFijosPrecios.Add(c.GetString("CAT_DP_PRECIO"))
prodsFijosPiezas.Add(c.GetString("CAT_DP_PZAS")) prodsFijosPiezas.Add(c.GetString("CAT_DP_PZAS"))
End If End If
If c.GetString("CAT_DP_TIPO") = "1" Then prodsVariables.Add(c.GetString("CAT_DP_IDPROD")) If c.GetString("CAT_DP_TIPO") = "1" Then
prodsVariables.Add(c.GetString("CAT_DP_IDPROD"))
prodsVariablesPrecios.Add(c.GetString("CAT_DP_PRECIO"))
End If
If thisLog Then Log($"id:${c.GetString("CAT_DP_IDPROD")}, tipo:${c.GetString("CAT_DP_TIPO")}"$) If thisLog Then Log($"id:${c.GetString("CAT_DP_IDPROD")}, tipo:${c.GetString("CAT_DP_TIPO")}"$)
Next Next
promoMap.Put("productos", prods) 'Mapa con los productos de la promocion (id, precio, almacen, tipo, piezas, etc.) promoMap.Put("productos", prods) 'Mapa con los productos de la promocion (id, precio, almacen, tipo, piezas, etc.)
@@ -1002,6 +1006,7 @@ Sub traePromo(promo As String, cliente As String) As Map
promoMap.Put("prodsFijosPrecios", prodsFijosPrecios) promoMap.Put("prodsFijosPrecios", prodsFijosPrecios)
promoMap.Put("prodsFijosPiezas", prodsFijosPiezas) promoMap.Put("prodsFijosPiezas", prodsFijosPiezas)
promoMap.Put("prodsVariablesCant", prodsVariables.Size) promoMap.Put("prodsVariablesCant", prodsVariables.Size)
promoMap.Put("prodsVariablesPrecios", prodsVariablesPrecios)
promoMap.Put("resultado", "ok") promoMap.Put("resultado", "ok")
Else Else
promoMap.Put("resultado", "No hay datos de la promoción.") promoMap.Put("resultado", "No hay datos de la promoción.")