mirror of
https://github.com/KeymonSoft/Lanterna_H.git
synced 2026-04-21 14:49:16 +00:00
- Se corrigió que no guardaba los montos cuando se editaba una mesa con un solo tipo de pago en Resumen Dia
589 lines
29 KiB
Plaintext
589 lines
29 KiB
Plaintext
Build1=Default,lanterna_h.keymon.lat,HU2_PUBLIC
|
|
File1=candado.png
|
|
File10=logo.png
|
|
File11=logolanter.bmp
|
|
File12=logoLanter.png
|
|
File13=logoLanter_192x192.png
|
|
File14=logoLanter2.bmp
|
|
File15=logoLanterNegro.bmp
|
|
File16=logoLanterNegro.png
|
|
File17=logoLanterNegro2.bmp
|
|
File18=mainpage.bal
|
|
File19=mesasitem.bal
|
|
File2=durakelo.png
|
|
File20=principal.bal
|
|
File21=proditem.bal
|
|
File22=proditemcarrito.bal
|
|
File23=resumencont.bal
|
|
File24=resumenItem.bal
|
|
File25=usuario.png
|
|
File26=vecteezy_white-diagonal-stripes-with-red-line-isolated-on-white.png
|
|
File3=engrane.png
|
|
File4=engranes.png
|
|
File5=errormanager.bal
|
|
File6=formapago.bal
|
|
File7=kmt.db
|
|
File8=Layout.bal
|
|
File9=login.bal
|
|
FileGroup1=Default Group
|
|
FileGroup10=Default Group
|
|
FileGroup11=Default Group
|
|
FileGroup12=Default Group
|
|
FileGroup13=Default Group
|
|
FileGroup14=Default Group
|
|
FileGroup15=Default Group
|
|
FileGroup16=Default Group
|
|
FileGroup17=Default Group
|
|
FileGroup18=Default Group
|
|
FileGroup19=Default Group
|
|
FileGroup2=Default Group
|
|
FileGroup20=Default Group
|
|
FileGroup21=Default Group
|
|
FileGroup22=Default Group
|
|
FileGroup23=Default Group
|
|
FileGroup24=Default Group
|
|
FileGroup25=Default Group
|
|
FileGroup26=Default Group
|
|
FileGroup3=Default Group
|
|
FileGroup4=Default Group
|
|
FileGroup5=Default Group
|
|
FileGroup6=Default Group
|
|
FileGroup7=Default Group
|
|
FileGroup8=Default Group
|
|
FileGroup9=Default Group
|
|
Group=Default Group
|
|
Library1=appupdating
|
|
Library10=okhttputils2
|
|
Library11=preoptimizedclv
|
|
Library12=randomaccessfile
|
|
Library13=runtimepermissions
|
|
Library14=scrollview2d
|
|
Library15=serial
|
|
Library16=sql
|
|
Library17=stringutils
|
|
Library18=wobblemenu
|
|
Library19=xui
|
|
Library2=b4xtable
|
|
Library20=jsch
|
|
Library3=byteconverter
|
|
Library4=compressstrings
|
|
Library5=core
|
|
Library6=fileprovider
|
|
Library7=javaobject
|
|
Library8=json
|
|
Library9=net
|
|
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="21" 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~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~SetApplicationAttribute(android:exported, "true")~\n~~\n~AddApplicationText(<provider android:name="android.support.v4.content.FileProvider"~\n~ android:authorities="$PACKAGE$.provider" android:exported="false"~\n~ android:grantUriPermissions="true"><meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/>~\n~ </provider>)~\n~CreateResource(xml, provider_paths,~\n~ <paths><external-files-path name="name" path="" /><files-path name="name" path="" /><files-path name="name" path="shared" /></paths>~\n~)~\n~~\n~ 'Para que se registre para abrir bases de datos~\n~ AddActivityText(main,~\n~<intent-filter>~\n~<action android:name="android.intent.action.VIEW" />~\n~<category android:name="android.intent.category.DEFAULT" />~\n~<data android:pathPattern=".*\\.db" />~\n~<data android:mimeType="*/*" />~\n~</intent-filter>)~\n~~\n~~\n~'APP UPDATING~\n~AddActivityText(main,~\n~<intent-filter>~\n~<action android:name="android.intent.action.VIEW" />~\n~<category android:name="android.intent.category.BROWSABLE" />~\n~<category android:name="android.intent.category.DEFAULT" />~\n~<data android:scheme="http" />~\n~<data android:host="*" />~\n~<data android:pathPattern=".*\\.db" />~\n~<data android:mimeType="*/*" />~\n~</intent-filter>)~\n~AddManifestText(<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="18" />~\n~)~\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~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)
|
|
Module1=appUpdater
|
|
Module2=DBRequestManager
|
|
Module3=errorManager
|
|
Module4=EscPosPrinter
|
|
Module5=numeroATexto
|
|
Module6=Principal
|
|
Module7=Starter
|
|
Module8=Subs
|
|
Module9=updateAvailable
|
|
NumberOfFiles=26
|
|
NumberOfLibraries=20
|
|
NumberOfModules=9
|
|
Version=12.8
|
|
@EndOfDesignText@
|
|
#Region Project Attributes
|
|
#ApplicationLabel: Lanterna
|
|
#VersionCode: 1
|
|
#VersionName: 5.03.28
|
|
'SupportedOrientations possible values: unspecified, landscape or portrait.
|
|
#SupportedOrientations: landscape
|
|
#CanInstallToExternalStorage: False
|
|
'###########################################################################################################
|
|
'###################### PULL #############################################################
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=git&Args=pull
|
|
'###########################################################################################################
|
|
'###################### PUSH #############################################################
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=github&Args=..\..\
|
|
'###########################################################################################################
|
|
'###################### PUSH TORTOISE GIT #########################################################
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=TortoiseGitProc&Args=/command:commit&Args=/path:"./../"&Args=/closeonend:2
|
|
'###########################################################################################################
|
|
#End Region
|
|
|
|
#Region Activity Attributes
|
|
#FullScreen: False
|
|
#IncludeTitle: False
|
|
#End Region
|
|
|
|
Sub Process_Globals
|
|
'These global variables will be declared once when the application starts.
|
|
'These variables can be accessed from all modules.
|
|
Private xui As XUI
|
|
Public Provider As FileProvider
|
|
End Sub
|
|
|
|
Sub Globals
|
|
'These global variables will be redeclared each time the activity is created.
|
|
Private i_logo As ImageView
|
|
Private p_configuracion As Panel
|
|
Private p_login As Panel
|
|
Private b_regresar As Button
|
|
Private b_entrar As Button
|
|
Private b_envioBD As Button
|
|
Private b_server As Button
|
|
Private ImageView4 As ImageView
|
|
Private ImageView2 As ImageView
|
|
Private Panel3 As Panel
|
|
Private Label1 As Label
|
|
Private i_conf As ImageView
|
|
Private b_cargaProductos As Button
|
|
Private ListView1 As ListView
|
|
Private E_SERVER As EditText
|
|
Dim reqManager As DBRequestManager
|
|
Private l_version As Label
|
|
Private p_botones As Panel
|
|
Private Label3 As Label
|
|
Private p_server As Panel
|
|
Private cb_impresionActiva As CheckBox
|
|
Private CheckBox1 As CheckBox
|
|
Private b_leyendaDescuento As Button
|
|
Private p_leyendaDescuento As Panel
|
|
Private b_reimprimirTicket As Button
|
|
Private b_fix As Button
|
|
Dim in As Intent
|
|
Dim intentUsado As Boolean = False
|
|
Private cb_importarDesdeWA As CheckBox
|
|
Dim habilitarImportarDesdeWA As Boolean = False
|
|
Private b_update As Button
|
|
Private b_borraEfectivo As Button
|
|
Private user As EditText
|
|
End Sub
|
|
|
|
Sub Activity_Create(FirstTime As Boolean)
|
|
Activity.LoadLayout("login")
|
|
Subs.revisaBD
|
|
p_login.Width = Activity.Width
|
|
p_login.Height = Activity.Height
|
|
Try
|
|
Subs.agregaColumna("cat_gunaprod", "CAT_PT_DESC", "TEXT")
|
|
Subs.agregaColumna("cat_gunaprod", "CAT_PS_DESC", "TEXT")
|
|
Subs.agregaColumna("cat_gunaprod", "CAT_PS_DESC", "TEXT")
|
|
Subs.agregaColumna("cat_gunaprod", "CAT_GP_FECHA", "TEXT")
|
|
Subs.agregaColumna("cat_gunaprod", "CAT_GP_FECHA_MOD", "TEXT")
|
|
Subs.agregaColumna("cat_gunaprod", "CAT_GP_ORDEN_GRUPOS", "TEXT")
|
|
' Starter.skmt.ExecNonQuery("delete from cuentaa")
|
|
' Starter.skmt.ExecNonQuery("insert into cuentaa (cuenta) values ('123456')")
|
|
Starter.skmt.ExecNonQuery("delete from cat_almacen")
|
|
Starter.skmt.ExecNonQuery("insert into cat_almacen (id_almacen) values ('1')")
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
|
|
l_version.Text = Application.VersionName
|
|
p_configuracion.Height = Activity.Height : p_configuracion.width = Activity.width
|
|
reqManager.Initialize(Me, Starter.DBReqServer)
|
|
Subs.centraEtiqueta(Label3, p_configuracion.Width)
|
|
Subs.centraPanel(p_server, p_configuracion.Width)
|
|
Subs.centraPanel(p_botones, p_configuracion.Width)
|
|
i_logo.Left = (Activity.Width / 2) - (i_logo.Width / 2)
|
|
Subs.centraPanel(Panel3, p_configuracion.Width)
|
|
' subs.panelVisible(p_configuracion, 0, 0)
|
|
Private x As Cursor = Starter.skmt.ExecQuery($"select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'DESCUENTO X EFECTIVO'"$)
|
|
If x.RowCount = 0 Then 'Insertamos el descuento para efectivo por default.
|
|
' Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("DESCUENTO X EFECTIVO"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("DESCUENTO X EFECTIVO","10"))
|
|
End If
|
|
Private z As ResultSet = Starter.skmt.ExecQuery2("select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As String ("IMPRESION_ACTIVA"))
|
|
If z.RowCount = 0 Then
|
|
Log("Guardamos impresion como true")
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("IMPRESION_ACTIVA", True))
|
|
End If
|
|
End Sub
|
|
|
|
Sub Activity_Resume
|
|
If Starter.muestraProgreso = 1 Then
|
|
muestraProgreso("Descargando actualización")
|
|
Starter.muestraProgreso = 0
|
|
End If
|
|
Private z As ResultSet = Starter.skmt.ExecQuery2("select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As String ("IMPRESION_ACTIVA"))
|
|
Do While z.NextRow
|
|
Private ia As Boolean = False
|
|
If z.GetString("CAT_VA_VALOR") = 1 Then ia = True
|
|
Loop
|
|
cb_impresionActiva.Checked = ia
|
|
Starter.imprimirTicket = ia
|
|
|
|
importaBDDesdeWhatsApp
|
|
'Esto para cambiar los tamaños y posiciones para pantallas chicas (celuar).
|
|
If GetDeviceLayoutValues.ApproximateScreenSize < 6 Then
|
|
l_version.Top = 20dip
|
|
l_version.Left = 10dip
|
|
End If
|
|
End Sub
|
|
|
|
Sub Activity_KeyPress (key As Int) As Boolean
|
|
' BACK key pressed
|
|
If key=KeyCodes.KEYCODE_BACK Then
|
|
If p_configuracion.Visible Then
|
|
p_configuracion.Visible = False
|
|
Else If p_login.Visible Then
|
|
Log("SALIENDO")
|
|
ExitApplication
|
|
Else
|
|
p_configuracion.Visible = False
|
|
Subs.panelVisible(p_login, 0, 0)
|
|
End If
|
|
End If
|
|
Return True
|
|
' Returning False signals the system to handle the key
|
|
End Sub
|
|
|
|
Sub Activity_Pause (UserClosed As Boolean)
|
|
|
|
End Sub
|
|
|
|
Private Sub i_logo_Click
|
|
|
|
End Sub
|
|
|
|
Private Sub b_regresar_Click
|
|
p_configuracion.Visible = False
|
|
Subs.panelVisible(p_login, 0, 0)
|
|
End Sub
|
|
|
|
Private Sub b_entrar_Click
|
|
StartActivity(Principal)
|
|
End Sub
|
|
|
|
Private Sub b_server_Click
|
|
If E_SERVER.Text <> "" Then
|
|
Starter.DBReqServer = E_SERVER.text
|
|
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER", Starter.DBReqServer))
|
|
p_configuracion.Visible = False
|
|
reqManager.Initialize(Me, Starter.DBReqServer)
|
|
Starter.reqManager.Initialize(Me, Starter.DBReqServer)
|
|
' Log(E_SERVER.text)
|
|
Else
|
|
ToastMessageShow("Por favor ingrese la direccion del servidor", True)
|
|
End If
|
|
End Sub
|
|
|
|
'Enviamos la base de datos por correo o Whatsapp.
|
|
Private Sub b_envioBD_Click
|
|
'Hay que agregar las siguientes lineas al manifiesto:
|
|
'AddApplicationText(<Provider android:name="android.support.v4.content.FileProvider"
|
|
' android:authorities="$PACKAGE$.provider" android:exported="false"
|
|
' android:grantUriPermissions="true"><meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/>
|
|
' </Provider>)
|
|
'CreateResource(xml, provider_paths,
|
|
' <paths><external-files-path name="name" path="" /><files-path name="name" path="" /><files-path name="name" path="shared" /></paths>
|
|
')
|
|
Dim Provider As FileProvider
|
|
Provider.Initialize
|
|
Dim FileName As String = "kmt.db"
|
|
'copy the shared file to the shared folder
|
|
Log("xxxxxx:"&Provider.SharedFolder)
|
|
Sleep(1000)
|
|
File.Copy(File.DirInternal, FileName, Provider.SharedFolder, "kmt_Lanterna.db")
|
|
Dim email As Email
|
|
email.To.Add("soporte@keymonsoft.com")
|
|
email.Subject = "Envio Base de datos Lanterna"
|
|
email.Attachments.Add(Provider.GetFileUri("kmt_Lanterna.db"))
|
|
' email.Attachments.Add(Provider.GetFileUri(FileName)) 'second attachment
|
|
Dim in As Intent = email.GetIntent
|
|
in.Flags = 1 'FLAG_GRANT_READ_URI_PERMISSION
|
|
StartActivity(in)
|
|
End Sub
|
|
|
|
Private Sub i_conf_Click
|
|
ListView1.Clear
|
|
Dim Label1 As Label
|
|
Label1 = ListView1.SingleLineLayout.Label
|
|
Label1.TextSize = 20
|
|
Label1.TextColor = Colors.Black
|
|
' If user.Text = "KMTS1" Then ListView1.AddSingleLine("http://10.0.0.205:1781")
|
|
ListView1.AddSingleLine("http://keymon.lat:1782")
|
|
ListView1.AddSingleLine("http://keymon.lat:9000")
|
|
p_configuracion.Width = Activity.Width
|
|
p_configuracion.Height = Activity.Height
|
|
p_configuracion.BringToFront
|
|
Subs.panelVisible(p_configuracion, 0, 0)
|
|
Private z As ResultSet = Starter.skmt.ExecQuery2("select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As String ("IMPRESION_ACTIVA"))
|
|
Do While z.NextRow
|
|
If z.GetString("CAT_VA_VALOR") = 1 Then cb_impresionActiva.Checked = True
|
|
Loop
|
|
|
|
'Esto para cambiar los tamaños y posiciones para pantallas chicas (celuar).
|
|
If GetDeviceLayoutValues.ApproximateScreenSize < 6 Then
|
|
Label3.Top = 2dip
|
|
Label3.BringToFront
|
|
p_server.Top = 20dip
|
|
p_botones.BringToFront
|
|
p_botones.Top = p_server.Top + p_server.Height - 10dip
|
|
End If
|
|
If user.text.Trim = "KMTS7" Then b_borraEfectivo.Visible = true else b_borraEfectivo.Visible = False
|
|
End Sub
|
|
|
|
Private Sub b_cargaProductos_Click
|
|
Log(Starter.DBReqServer)
|
|
' Dim cmd As DBCommand
|
|
' cmd.Initialize
|
|
' cmd.Name = "select_cat_gunaprod_GV2"
|
|
' cmd.Parameters = Array As Object(1)
|
|
' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "gunaprod")
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "selectProds_Lanter"
|
|
reqManager.ExecuteQuery(cmd , 0, "selectProds")
|
|
cmd.Initialize
|
|
|
|
cmd.Name = "selectMesas_Lanter"
|
|
reqManager.ExecuteQuery(cmd , 0, "selectMesas")
|
|
|
|
cmd.Initialize
|
|
cmd.Name = "selectMeseros_Lanter"
|
|
reqManager.ExecuteQuery(cmd , 0, "selectMeseros")
|
|
End Sub
|
|
|
|
Private Sub ListView1_ItemClick (Position As Int, Value As Object)
|
|
Starter.DBReqServer = Value
|
|
E_SERVER.Text = Value
|
|
' Log(Starter.DBReqServer)
|
|
End Sub
|
|
|
|
Sub JobDone(Job As HttpJob)
|
|
Log("JOBDONE MAINPAGE")
|
|
If Job.Tag.As(String).StartsWith("_KMS_") Then Job.tag = Job.Tag.As(String).SubString(16)
|
|
If Job.Success = False Then
|
|
ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
|
Else
|
|
If Starter.Logger Then LogColor("JobDone: '" & Starter.reqManager.HandleJob(Job).tag & "' - Registros: " & Starter.reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110
|
|
If Job.JobName = "DBRequest" Then
|
|
Dim result As DBResult = Starter.reqManager.HandleJob(Job)
|
|
If result.Tag = "selectProds" Then 'query tag
|
|
' If Starter.Logger Then Subs.logJobDoneResultados(result)
|
|
Starter.skmt.ExecNonQuery("delete from cat_gunaprod")
|
|
Starter.skmt.BeginTransaction
|
|
For Each records() As Object In result.Rows
|
|
' Log($"ID: ${records(result.Columns.Get("CAT_GP_ID"))}, NOM: ${records(result.Columns.Get("CAT_GP_NOMBRE"))}"$)
|
|
Dim CAT_GP_ID As String = records(result.Columns.Get("CAT_GP_ID"))
|
|
Dim CAT_GP_NOMBRE As String = records(result.Columns.Get("CAT_GP_NOMBRE"))
|
|
Dim CAT_GP_PRECIO As String = records(result.Columns.Get("CAT_GP_PRECIO"))
|
|
Dim CAT_GP_ALMACEN As String = 10000 'records(result.Columns.Get("CAT_GP_ALMACEN"))
|
|
Dim CAT_GP_IMG() As Byte = records(result.Columns.Get("CAT_GP_IMG"))
|
|
Dim CAT_GP_FECHA As String = records(result.Columns.Get("CAT_GP_FECHA"))
|
|
Dim CAT_GP_FECHA_MOD As String = records(result.Columns.Get("CAT_GP_FECHA_MOD"))
|
|
Dim CAT_GP_CLASIF As String = records(result.Columns.Get("CAT_GP_CLASIF"))
|
|
Dim CAT_GP_TIPO As String = records(result.Columns.Get("CAT_GP_TIPO"))
|
|
Dim CAT_GP_TIPO2 As String = records(result.Columns.Get("CAT_GP_TIPO2"))
|
|
Dim CAT_GP_ORDENAMIENTO As Int = records(result.Columns.Get("CAT_GP_ORDENAMIENTO"))
|
|
Dim CAT_GP_ORDEN_GRUPOS As Int = records(result.Columns.Get("CAT_GP_ORDEN_GRUPOS"))
|
|
Log($"${CAT_GP_NOMBRE}, ${CAT_GP_ORDEN_GRUPOS}"$)
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD, CAT_GP_CLASIF, CAT_GP_TIPO, CAT_GP_TIPO2, CAT_GP_ORDENAMIENTO,CAT_GP_ORDEN_GRUPOS) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD,CAT_GP_CLASIF,CAT_GP_TIPO,CAT_GP_TIPO2,CAT_GP_ORDENAMIENTO,CAT_GP_ORDEN_GRUPOS))
|
|
Next
|
|
For v = 1 To 20 'Agregamos productos varios (editables)
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD, CAT_GP_CLASIF, CAT_GP_TIPO, CAT_GP_TIPO2,CAT_GP_ORDEN_GRUPOS) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As Object ($"AVAR${NumberFormat2(v, 2, 0, 0, False)}"$,$"Alimentos Varios ${NumberFormat2(v, 2, 0, 0, False)}"$,"1","10000",Null,"2024-02-04 17:00:00","2024-02-04 17:00:00","VARIOS","ALIMENTOS","ALIMENTOS","1"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD, CAT_GP_CLASIF, CAT_GP_TIPO, CAT_GP_TIPO2,CAT_GP_ORDEN_GRUPOS) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As Object ($"VVAR${NumberFormat2(v, 2, 0, 0, False)}"$,$"Bebidas Varias ${NumberFormat2(v, 2, 0, 0, False)}"$,"1","10000",Null,"2024-02-04 17:00:00","2024-02-04 17:00:00","VARIOS","VINOS Y LICORES","BEBIDAS","8"))
|
|
Next
|
|
Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
Starter.skmt.EndTransaction
|
|
End If
|
|
|
|
If result.Tag = "selectMesas" Then 'query tag
|
|
' If Starter.Logger Then Subs.logJobDoneResultados(result)
|
|
Starter.skmt.ExecNonQuery("delete from CAT_MESAS")
|
|
Starter.skmt.BeginTransaction
|
|
For Each records() As Object In result.Rows
|
|
' Log($"ID: ${records(result.Columns.Get("M_ID"))}, NOM: ${records(result.Columns.Get("M_NOMBRE"))}"$)
|
|
Dim M_ID As String = records(result.Columns.Get("M_ID"))
|
|
Dim M_NOMBRE As String = records(result.Columns.Get("M_NOMBRE"))
|
|
Dim M_NUMERO As String = records(result.Columns.Get("M_NUMERO"))
|
|
Dim M_ZONA As String = records(result.Columns.Get("M_ZONA"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_MESAS(M_ID, M_NUMERO, M_NOMBRE, M_ZONA) VALUES (?,?,?,?)", Array As Object (M_ID, M_NUMERO, M_NOMBRE, M_ZONA))
|
|
Next
|
|
Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
Starter.skmt.EndTransaction
|
|
|
|
'Revisamos si con la carga de la información no se borró la info de alguna mesa abierta.
|
|
Private m As ResultSet = Starter.skmt.ExecQuery($"select distinct M_ID, PT_PAGO, PT_TICKET, PT_MESERO, PT_COMENSALES from PEDIDO_TICKET join CAT_MESAS on PT_MESA = M_ID where PT_PAGO = 'VENTA' and M_ESTATUS is null "$)
|
|
Log(m.RowCount)
|
|
Do While m.NextRow ' Si hay registros en pedido_ticket, entonces atualizamos CAT_MESAS con la info faltante.
|
|
Log($"${m.GetString("M_ID")}, ${m.GetString("PT_PAGO")}, ${m.GetString("PT_TICKET")}, ${m.GetString("PT_MESERO")}, ${m.GetString("PT_COMENSALES")}"$)
|
|
Starter.skmt.ExecNonQuery($"update CAT_MESAS set M_ESTATUS = 'ABIERTA', M_TICKET = '${m.GetString("PT_TICKET")}', M_MESERO = '${m.GetString("PT_MESERO")}', M_COMENSALES = '${m.GetString("PT_COMENSALES")}' where M_ID = '${m.GetString("M_ID")}' "$)
|
|
Loop
|
|
End If
|
|
|
|
If result.Tag = "selectMeseros" Then 'query tag
|
|
' If Starter.Logger Then Subs.logJobDoneResultados(result)
|
|
Starter.skmt.ExecNonQuery("delete from CAT_MESEROS")
|
|
Starter.skmt.BeginTransaction
|
|
For Each records() As Object In result.Rows
|
|
' Log($"ID: ${records(result.Columns.Get("MS_ID"))}, NOM: ${records(result.Columns.Get("MS_NOMBRE"))}"$)
|
|
Dim MS_ID As String = records(result.Columns.Get("MS_ID"))
|
|
Dim MS_NOMBRE As String = records(result.Columns.Get("MS_NOMBRE"))
|
|
Dim MS_MESAS_ASIGNADAS As String = records(result.Columns.Get("MS_MESAS_ASIGNADAS"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_MESEROS(MS_ID, MS_NOMBRE, MS_MESAS_ASIGNADAS) VALUES (?,?,?)", Array As Object (MS_ID, MS_NOMBRE, MS_MESAS_ASIGNADAS))
|
|
Next
|
|
Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
Starter.skmt.EndTransaction
|
|
' If Principal.cb_mesero.IsInitialized Then Principal.cb_mesero.SetItems(Subs.traeMeserosLista)
|
|
Starter.cargaMeseros = True
|
|
End If
|
|
|
|
If result.Tag = "traePedido" Then 'query tag
|
|
' If Starter.Logger Then Subs.logJobDoneResultados(result)
|
|
Starter.skmt.ExecNonQuery("delete from PEDIDO")
|
|
For Each records() As Object In result.Rows
|
|
' PE_TIPO , PE_COSTO_TOT , PE_COSTOU , PE_CANT , PE_PRONOMBRE , PE_PROID , PE_FECHA , PE_TICKET , PE_MESA , PE_MESERO , PE_TIPO2 , PE_ORIGEN
|
|
' PT_MESA , PT_PAGO , PT_TICKET , PT_FECHA , PT_MESERO , PT_COMENSALES , PT_NOART , PT_MONTO , PT_TARJETA , PT_PROPINA , PT_PAGO_PROPINA , PT_PAGO2 , PT_ORIGEN , PT_FACTURAR
|
|
Log(records(result.Columns.Get("PE_FECHA_SINC")))
|
|
Dim PE_TIPO As String = records(result.Columns.Get("PE_TIPO"))
|
|
Dim PE_COSTO_TOT As String = records(result.Columns.Get("PE_COSTO_TOT"))
|
|
Dim PE_COSTOU As String = records(result.Columns.Get("PE_COSTOU"))
|
|
Dim PE_CANT As String = records(result.Columns.Get("PE_CANT"))
|
|
Dim PE_PRONOMBRE As String = records(result.Columns.Get("PE_PRONOMBRE"))
|
|
Dim PE_PROID As String = records(result.Columns.Get("PE_PROID"))
|
|
Dim PE_FECHA As String = records(result.Columns.Get("PE_FECHA"))
|
|
Dim PE_TICKET As String = records(result.Columns.Get("PE_TICKET"))
|
|
Dim PE_MESA As String = records(result.Columns.Get("PE_MESA"))
|
|
Dim PE_MESERO As String = records(result.Columns.Get("PE_MESERO"))
|
|
Dim PE_TIPO2 As String = records(result.Columns.Get("PE_TARJETA"))
|
|
Dim PE_ORIGEN As Object = records(result.Columns.Get("PE_ORIGEN"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO(PE_TIPO , PE_COSTO_TOT , PE_COSTOU , PE_CANT , PE_PRONOMBRE , PE_PROID , PE_FECHA , PE_TICKET , PE_MESA , PE_MESERO , PE_TIPO2 , PE_ORIGEN) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (PE_TIPO , PE_COSTO_TOT , PE_COSTOU , PE_CANT , PE_PRONOMBRE , PE_PROID , PE_FECHA , PE_TICKET , PE_MESA , PE_MESERO , PE_TIPO2 , PE_ORIGEN))
|
|
Next
|
|
End If
|
|
If result.Tag = "traePedidoCliente" Then 'query tag
|
|
' If Starter.Logger Then Subs.logJobDoneResultados(result)
|
|
Starter.skmt.ExecNonQuery("delete from PEDIDO_TICKET")
|
|
For Each records() As Object In result.Rows
|
|
' PE_TIPO , PE_COSTO_TOT , PE_COSTOU , PE_CANT , PE_PRONOMBRE , PE_PROID , PE_FECHA , PE_TICKET , PE_MESA , PE_MESERO , PE_TIPO2 , PE_ORIGEN
|
|
' PT_MESA , PT_PAGO , PT_TICKET , PT_FECHA , PT_MESERO , PT_COMENSALES , PT_NOART , PT_MONTO , PT_TARJETA , PT_PROPINA , PT_PAGO_PROPINA , PT_PAGO2 , PT_ORIGEN , PT_FACTURAR
|
|
' Log(records(result.Columns.Get("PE_FECHA_SINC")))
|
|
Dim PT_MESA As String = records(result.Columns.Get("PC_MESA"))
|
|
Dim PT_PAGO As String = records(result.Columns.Get("PC_TIPO"))
|
|
Dim PT_TICKET As String = records(result.Columns.Get("PC_TICKET"))
|
|
Dim PT_FECHA As String = records(result.Columns.Get("PC_FECHA"))
|
|
Dim PT_MESERO As String = records(result.Columns.Get("PC_MESERO"))
|
|
Dim PT_COMENSALES As String = "1"
|
|
Dim PT_NOART As String = records(result.Columns.Get("PC_NOART"))
|
|
Dim PT_MONTO As String = records(result.Columns.Get("PC_MONTO"))
|
|
Dim PT_PAGO2 As String = records(result.Columns.Get("PC_TARJETA"))
|
|
Dim PT_PROPINA As String = records(result.Columns.Get("PC_PROPINA"))
|
|
If PT_PROPINA = "null" Or PT_PROPINA = "" Then PT_PROPINA = 0
|
|
Dim PT_PAGO_PROPINA As String = records(result.Columns.Get("PC_PROPINA_PAGO"))
|
|
' Dim PT_PAGO2 As String = records(result.Columns.Get("PT_PAGO2"))
|
|
Dim PT_ORIGEN As Object = records(result.Columns.Get("PC_ORIGEN"))
|
|
' Dim PT_FACTURAR As String = records(result.Columns.Get("PT_FACTURAR"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO_TICKET(PT_MESA, PT_PAGO, PT_TICKET, PT_FECHA, PT_MESERO, PT_COMENSALES, PT_NOART, PT_MONTO, PT_PAGO2, PT_PROPINA, PT_PAGO_PROPINA, PT_ORIGEN) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (PT_MESA, PT_PAGO, PT_TICKET, PT_FECHA, PT_MESERO, PT_COMENSALES, PT_NOART, PT_MONTO, PT_PAGO2, PT_PROPINA, PT_PAGO_PROPINA, PT_ORIGEN))
|
|
Next
|
|
End If
|
|
End If
|
|
End If
|
|
ToastMessageShow("¡Información cargada!", False)
|
|
Job.Release
|
|
End Sub
|
|
|
|
Private Sub b_entrar_LongClick
|
|
' Dim a As Int = "a"
|
|
' Subs.alineaDerecha(NumberFormat2(1450, 1, 2, 2, True), 30, ".")
|
|
End Sub
|
|
|
|
Private Sub user_TextChanged (Old As String, New As String)
|
|
If New.Trim = "KMTS1" or New.Trim = "KMTS7" Then i_conf.Visible = True Else i_conf.Visible = False
|
|
End Sub
|
|
|
|
Private Sub cb_impresionActiva_CheckedChange(Checked As Boolean)
|
|
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("IMPRESION_ACTIVA"))
|
|
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("IMPRESION_ACTIVA", Checked))
|
|
End Sub
|
|
|
|
Private Sub b_leyendaDescuento_Click
|
|
|
|
End Sub
|
|
|
|
Private Sub b_reimprimirTicket_Click
|
|
|
|
End Sub
|
|
|
|
Private Sub b_fix_Click
|
|
' Starter.skmt.ExecNonQuery($"update pedido_ticket set PT_NOART = '25', PT_MONTO = '4625', PT_PAGO2 = 'Mifel', PT_TARJETA = 'Mifel' where PT_TICKET = '00014' and PT_MESA = '5'"$)
|
|
' Starter.skmt.ExecNonQuery($"update pedido_ticket set PT_PAGO2 = 'Mifel' where PT_PAGO2 is null "$)
|
|
' ToastMessageShow("LISTO", True)
|
|
Log("B_FIX")
|
|
reqManager.Initialize(Me, "http://keymon.lat:9000")
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "traePedido_Lanter"
|
|
cmd.Parameters = Array As Object("07/28/24")
|
|
' reqManager.ExecuteQuery(cmd , 0, "traePedido")
|
|
cmd.Initialize
|
|
cmd.Name = "traePedidoCliente_Lanter"
|
|
cmd.Parameters = Array As Object("07/28/24")
|
|
' reqManager.ExecuteQuery(cmd , 0, "traePedidoCliente")
|
|
End Sub
|
|
|
|
' Se revisa si hay una intención (intent) de abrir una base de datos y si es así, entonces se importa esa base de datos.
|
|
Sub importaBDDesdeWhatsApp
|
|
' Private tmpBDWA As Boolean = traeUsarIntentBDWA
|
|
habilitarImportarDesdeWA = True
|
|
If Not(in.IsInitialized) Then in = Activity.GetStartingIntent ' Si se usa esta funcion en Mainpage, se pone "Me" en lugar de B4XPages.MainPage.
|
|
If Not(intentUsado) And in <> Null Then
|
|
' Log(in)
|
|
intentUsado = True
|
|
' Log(in.As(String))
|
|
If in.GetData <> Null Then
|
|
If habilitarImportarDesdeWA Then
|
|
|
|
Dim XmlData As String
|
|
XmlData = in.GetData
|
|
Try
|
|
Dim OutStr As OutputStream = File.OpenOutput(File.DirInternal,"kmt.db",False)
|
|
Dim InStr As InputStream = File.OpenInput("ContentDir",XmlData)
|
|
File.Copy2(InStr,OutStr)
|
|
LogColor("BD copiada a interna.", Colors.Blue)
|
|
OutStr.Close
|
|
If in.As(String).Contains("whatsapp") Then ToastMessageShow("BD cargada desde Whatsapp", False)
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
Else
|
|
ToastMessageShow("NO se cargo la BD, por favor habilitar la opción en la configuración.", False)
|
|
End If
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub cb_importarDesdeWA_CheckedChange(Checked As Boolean)
|
|
If Checked Then habilitarImportarDesdeWA = True
|
|
End Sub
|
|
|
|
Sub b_update_Click
|
|
StartService(appUpdater)
|
|
End Sub
|
|
|
|
'appUpdater - Mostramos el anuncio de que se esta descargando el nuevo apk
|
|
Sub muestraProgreso(mensaje As String)
|
|
ProgressDialogShow(mensaje)
|
|
End Sub
|
|
|
|
'appUpdater - Ocultamos el anuncio de que se esta descargando el nuevo apk
|
|
Sub ocultaProgreso
|
|
ProgressDialogHide
|
|
End Sub
|
|
|
|
Private Sub i_logo_LongClick
|
|
'ftp was previously initialized and its event name was set to ftp:
|
|
' ftp.Initialize("ftp", "access986911787.webspace-data.io", 22, "u114586321", "FTP&R3sp4ld0sK3ym0n")
|
|
Private theFile As String = "kmt.db"
|
|
DateTime.DateFormat = "yyyymmdd_HHmmss"
|
|
|
|
' Wait For (sf) FTP_UploadCompleted (ServerPath As String, Success As Boolean)
|
|
' If Success Then
|
|
' Log("file was uploaded successfully")
|
|
' Else
|
|
' Log("Error uploading file")
|
|
' End If
|
|
End Sub
|
|
|
|
|
|
Private Sub b_borraEfectivo_Click
|
|
CallSubDelayed(Principal, "borrarEfectivo")
|
|
ToastMessageShow("Efectivo borrado!!", False)
|
|
End Sub |