diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index 481391e..041248b 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -4,6 +4,1172 @@ ModulesStructureVersion=1 Type=Class Version=9.85 @EndOfDesignText@ +'#Region Shared Files +''#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files" +' 'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True +' '########################################################################################################### +' '###################### 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 +' +''Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=Project.zip +' +'Sub Class_Globals +' Dim rp As RuntimePermissions +' Private Root As B4XView +' Private xui As XUI +' Private Root As B4XView +' Public rp As RuntimePermissions +' Public login As B4XMainPage +' Public principal As C_Principal +' Public clientes As C_Clientes +' Public cliente As C_Cliente +'' Public foto As C_Foto +' Public productos As C_Productos +' Public updateAvailable As C_UpdateAvailable +' Public mapas As C_Mapas +' Public nuevoCliente As C_NuevoCliente +' Public ticketsDia As C_TicketsDia +' Public noVenta As C_NoVenta +' Public pedidos As C_Pedidos +' Public buscar As C_Buscar +'' Public historico As C_Historico +' Public detalleVenta As C_DetalleVenta +' Public detalle_promo As C_Detalle_Promo +' Dim reqManager As DBRequestManager +'' Dim ruta As String +' Dim usuario As String +' Dim logger As Boolean = True +' Dim lat_gps, lon_gps As String +'' Dim skmt As SQL +' Dim usuario As String +' Dim server As String +' Dim montoActual, clientesTotal, clientesVenta, clientesRechazo, clientesVisitados, almacen, rutaPreventa, CANTIDADPROD As String +' Dim ultimaActualizacionGPS As String = 235959 +' Dim fechaRuta As String +'' Public wsServerLink As String = "ws://187.189.244.154:51042/push/b4a_ws2" +'' Public wsServerLink As String = "ws://10.0.0.214:51042/push/b4a_ws2" +' Dim srvIp As String +' Dim phn As Phone +' Dim user As EditText +' Dim pass As EditText +' Dim c As Cursor +' Dim existe As String +' Dim paso1,paso2,paso3 As String +' Private IMEN As Label +' Dim IMEI As String +' Private Label1 As Label +' Dim server As String +' Private p_principal As Panel +' Private Entrar As Button +' Public checklist As C_Cheklist +' Public tabulador As C_tabulador +' Dim batt As Int +' Dim monto_entregadoactual As String +' Dim piezas_entregdas As String +' Dim porVisitar, entregas, rechazos, montoEntregado, montoRechazado As String +' Private p_appUpdate As Panel +' Private i_engrane As ImageView +' Private b_server As Button +' Private b_apk As Button +' Private b_envioBD As Button +' Private b_regesar As Button +' Private et_server As EditText +' Private p_serverList As Panel +' Private lv_server As ListView +' Public Provider As FileProvider +' Public rutaBDBackup As String = "" +' Private B_Can_Monto As Button +' Private B_Aceptar_Monto As Button +' Private ET_Add_Monto As EditText +' Private p_add_monto As Panel +' Dim sDate, sTime As String +' Private p_validacion As Panel +' Private b_cancelarcodigo As Button +' Private b_aceptar As Button +' Private et_codigo As EditText +' Private P_CIEGO As Panel +' Private b_terpc As Button +' Private B_PC_ENV As Button +' Private CLV_PICK_CIEGO As CustomListView +' Private et_buspc As EditText +' Dim q_buscar As String +' Dim d As Cursor +' Private L_PICK_CIEGO As Label +' Private ET_PICK_CIEGO As EditText +' Dim a As Cursor +' Dim f As Cursor +' Private b_abono As Button +' +' Dim codigo, usuariocheck As Int +'End Sub +' +'Public Sub Initialize +'' B4XPages.GetManager.LogEvents = True +'End Sub +' +''This event will be called once, before the page becomes visible. +'Private Sub B4XPage_Created (Root1 As B4XView) +' Root = Root1 +' B4XPages.GetManager.LogEvents = True +' Root.LoadLayout("login") +'' B4XPages.SetTitle(Me, "Guna Reparto") +' login.Initialize +' B4XPages.AddPage("Login", login) +' principal.Initialize +' B4XPages.AddPage("Principal", principal) +' clientes.Initialize +' B4XPages.AddPage("Clientes", clientes) +' cliente.Initialize +' B4XPages.AddPage("Cliente", cliente) +'' foto.Initialize +'' B4XPages.AddPage("Foto", foto) +' productos.Initialize +' B4XPages.AddPage("Productos", productos) +' updateAvailable.Initialize +' B4XPages.AddPage("updateAvailable", updateAvailable) +' mapas.Initialize +' B4XPages.AddPage("Mapas", mapas) +' nuevoCliente.Initialize +' B4XPages.AddPage("NuevoCliente", nuevoCliente) +' ticketsDia.Initialize +' B4XPages.AddPage("TicketsDia", ticketsDia) +' noVenta.Initialize +' B4XPages.AddPage("NoVenta", noVenta) +' pedidos.Initialize +' B4XPages.AddPage("Pedidos", pedidos) +' buscar.Initialize +' B4XPages.AddPage("Buscar", buscar) +'' historico.Initialize +'' B4XPages.AddPage("Historico", historico) +' detalleVenta.Initialize +' B4XPages.AddPage("DetalleVenta", detalleVenta) +' detalle_promo.Initialize +' B4XPages.AddPage("Detalle_Promo", detalle_promo) +' tabulador.Initialize +' B4XPages.AddPage("tabulador", tabulador) +' checklist.Initialize +' B4XPages.AddPage("checklist",checklist) +'' p_principal.Width = Root.Width +'' p_principal.Height = Root.Height * .90 +' Entrar.Left = (p_principal.Width - Entrar.Width) / 2 +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GUNAPROD3 (CAT_GP_INICIATIVA TEXT, CAT_GP_TIPOPROD TEXT, CAT_GP_DEV TEXT, CAT_GP_ALMACEN NUMERIC, CAT_GP_ID TEXT, CAT_GP_NOMBRE TEXT, CAT_GP_IMP1 TEXT, CAT_GP_IMP2 TEXT, CAT_GP_PRECIO TEXT, CAT_GP_CLASIF TEXT, CAT_GP_STS TEXT, CAT_GP_TIPO TEXT, CAT_GP_SUBTIPO TEXT, CAT_GP_IMG BLOB)") +' Subs.agregaColumna("CAT_GUNAPROD3", "CAT_DP_CONVERSION1", "TEXT") +' Subs.agregaColumna("CAT_GUNAPROD3", "CAT_DP_PRECIO4", "TEXT") +' Subs.agregaColumna("CAT_GUNAPROD3", "CAT_DP_CANT_MIN_VENTA", "TEXT") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ABONOS (a_usuario TEXT, a_ruta TEXT, a_cliente TEXT, a_abono TEXT, a_fecha TEXT, a_enviado TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PAGARES (PA_ALMACEN TEXT, PA_RUTA_REP TEXT, PA_RUTAPREV TEXT, PA_FECHA_PREV TEXT, PA_CAPTURA TEXT, PA_MONTO TEXT, PA_USUARIO TEXT, PA_CLIENTE TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PICK_CIEGO (PC_ID_PROD TEXT, PC_NOM_PROD TEXT, PC_CANT TEXT, PC_ALMACEN TEXT, PC_RUTA TEXT, PC_FECHA TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENV_MONTO_LIQ (EML_MONTO TEXT, EML_ALMACEN TEXT, EML_RUTA TEXT, EML_USUARIO TEXT, EML_FECHA_PED TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS TABULADOR_MONEDAS(VEINTE TEXT, DIEZ TEXT, CINCO TEXT, DOS TEXT, PESO TEXT, CENTAVO TEXT, TOTAL TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS TABULADOR_BILLETES(MIL TEXT, QUINIENTOS TEXT, DOCIENTOS TEXT, CIEN TEXT, CINCUENTA TEXT, VEINTE TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_VENTAS2 (HVD_PARCIAL TEXT, HVD_RECHAZO TEXT, HVD_NUM_REGISTRO TEXT, HVD_NUM_TICKET TEXT, HVD_PROID TEXT, HVD_CODPROMO TEXT, HVD_FECHA TEXT, HVD_ESTATUS TEXT, HVD_CLIENTE TEXT, HVD_PRONOMBRE TEXT, HVD_CANT TEXT, HVD_COSTO_TOT TEXT)") +'' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS VENTAS (V_FECHA TEXT, V_CLIENTE TEXT, V_CLIENTE_ORIG TEXT, V_PRODNOMBRE TEXT, V_PRODID TEXT, V_CANTIDAD TEXT, V_PRECIO TEXT, V_TOTAL TEXT, V_PRODREGISTRO TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RECHAZOS (R_FECHA TEXT, R_CLIENTE TEXT, R_CLI_ORIG TEXT, R_PRODID TEXT, R_CANT TEXT, R_RECHAZO INT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS VENTAS (V_FECHA TEXT, V_CLIENTE TEXT, V_CLI_ORIG TEXT, V_PRODID TEXT, V_CANT TEXT, V_RECHAZO INT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ABONOSP(NOTA TEXT, CLIENTE TEXT, SALDO_PENDIENTE TEXT)") +'' Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS PAGARES") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CHECADO_CHECK(CHECADO TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CODIGO_UNICO(CODIGO TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS INICIO_SESION(CONECTADO TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BLOCKENVIO(ENVIADO TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_REPARTO_GEO(HIST_RG_MONTO TEXT, HIST_RG_CREDITO TEXT, HIST_RG_MONTO_CREDITO TEXT, HIST_RG_LAT TEXT, HIST_RG_LONG TEXT, HIST_RG_RECHAZO TEXT, HIST_RG_MOTIVO TEXT, HIST_RG_USUARIO_ENTREGO TEXT, HIST_RG_RUTA_REP TEXT, HIST_RG_ESTATUS_ENTREGA TEXT, HIST_RG_COMENTARIO_ENTREGA TEXT, HIST_RG_FORMA_PAGO TEXT, HIST_RG_GEOCERCA_MTS TEXT, HIST_RG_NO_ART TEXT, HIST_RG_CLIENTE TEXT, HIST_RG_FECHA TEXT, HIST_RG_ALMACEN TEXT, HIST_RG_RUTA_PRE TEXT)") +' +'' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PAGARES(TMP_MONTO_PAGARE TEXT, TMP_CLIENTE TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CHECKLIST(USUARIO TEXT, PLACA TEXT, FECHA_CAPTURA TEXT, TARJETA_CIRCULACION TEXT , POLIZA_SEGURO TEXT, LICENCIA_CONDUCIR TEXT, LIMPIA_EXTERNA TEXT, LIMPIA_INTERNA TEXT, TRIANGULO TEXT, GATO TEXT, LLANTA_REFACCION TEXT, CARROCERIA_BUENESTADO TEXT, CARROCERIA_MALESTADO TEXT, CARROCERIA_COMENTARIOS TEXT, LUCES_CORRECTO TEXT, LUCES_INCORRECTO TEXT, LUCES_COMENTARIOS TEXT, CONDICION_PLACAS_CORRECTO TEXT, CONDICION_PLACAS_INCORRECTO TEXT, CONDICION_PLACAS_COMENTARIOS TEXT, CONDICION_LLANTAS_DEL_DER TEXT, CONDICION_LLANTAS_DEL_IZQ TEXT, CONDICION_LLANTAS_TRASERA_DER TEXT, CONDICION_LLANTAS_TRASERA_IZQ TEXT, ACEITE TEXT, ANTICONGELANTE TEXT, FRENOS TEXT, AIRE TEXT, FUGAS TEXT, COMETARIOS_FUGAS TEXT, FOTO1 BLOB, FOTO12 BLOB, FOTO3 BLOB, FOTO4 BLOB)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CHECKLIST2(USUARIO TEXT, PLACA TEXT, FECHA_CAPTURA TEXT, TARJETA_CIRCULACION TEXT, POLIZA_SEGURO TEXT, LICENCIA_CONDUCIR TEXT, LIMPIA_EXTERNA TEXT, LIMPIA_INTERNA TEXT, TRIANGULO TEXT, GATO TEXT, LLANTA_REFACCION TEXT, CARROCERIA TEXT, CARROCERIA_COMENTARIOS TEXT, LUCES TEXT, LUCES_COMENTARIOS TEXT, CONDICION_PLACAS TEXT, CONDICION_PLACAS_COMENTARIOS TEXT, CONDICION_LLANTAS_DEL_DER TEXT, CONDICION_LLANTAS_DEL_IZQ TEXT, CONDICION_LLANTAS_TRASERA_DER TEXT, CONDICION_LLANTAS_TRASERA_IZQ TEXT, ACEITE TEXT, ANTICONGELANTE TEXT, FRENOS TEXT, AIRE TEXT, FUGAS TEXT, COMETARIOS_FUGAS TEXT, FOTO1 BLOB, FOTO12 BLOB, FOTO3 BLOB, FOTO4 BLOB, KILIMETRAJE TEXT, RUTA TEXT)") +' Subs.agregaColumna("REPARTO", "REP_PRODREGISTRO", "TEXT") +' Subs.agregaColumna("NOVENTA", "NV_RUTA", "TEXT") +' Subs.agregaColumna("ABONOS", "a_ticket", "TEXT") +' Subs.agregaColumna("ABONOS", "a_tipoabono", "TEXT") +' +' Subs.agregaColumna("PAGARES", "PA_CANCELADO", "TEXT") +' Subs.agregaColumna("ABONOSP", "NOMBRE", "TEXT") +' Subs.agregaColumna("kmt_info", "SECUENCIA", "INT") +' Subs.agregaColumna("kmt_info", "HORAENT", "TEXT") +' Subs.agregaColumna("REPARTO", "REP_PRODID", "TEXT") +' Subs.agregaColumna("PEDIDO", "PE_CLIENTEOR", "TEXT") +' Subs.agregaColumna("PAGARES", "PA_TICKET", "TEXT") +' Subs.agregaColumna("PEDIDO", "PE_CAJAS", "TEXT") +' Subs.agregaColumna("PEDIDO", "PE_REGALO", "TEXT") +' Subs.agregaColumna("PEDIDO", "PE_BCAJAS", "TEXT") +' Subs.agregaColumna("PEDIDO", "CONSECUTIVO", "TEXT") +' Subs.agregaColumna("PEDIDO", "FECHA_PREV", "TEXT") +' Subs.agregaColumna("PEDIDO", "RUTA_REP", "TEXT") +' Subs.agregaColumna("REPARTO", "REP_CLI_ORIG", "TEXT") +' Subs.agregaColumna("REPARTO", "REP_PRECIO", "TEXT") +' Subs.agregaColumna("REPARTO", "REP_RECHAZO", "INTEGER") +' Subs.agregaColumna("RECHAZOS", "R_PRECIO", "TEXT") +' Subs.agregaColumna("VENTAS", "V_PRECIO", "TEXT") +' Subs.agregaColumna("HIST_VENTAS","PLACA","TEXT") +' Subs.agregaColumna("HIST_VENTAS","HVD_RECHAZOCANT","TEXT") +' Subs.agregaColumna("HIST_VENTAS","CONSECUTIVO","TEXT") +' Subs.agregaColumna("HIST_VENTAS","HVD_RECHAZOCANT","TEXT") +' Subs.agregaColumna("HIST_VENTAS","ESPROMO","TEXT") +' Subs.agregaColumna("HIST_VENTAS","HVD_RECHAZOCANTC","TEXT") +' Subs.agregaColumna("HIST_VENTAS","BCAJAS","TEXT") +' Subs.agregaColumna("HIST_VENTAS","CANTC","TEXT") +' Subs.agregaColumna("HIST_VENTAS","BCAJAS_OR","TEXT") +' Subs.agregaColumna("HIST_VENTAS","CANTC_OR","TEXT") +' Subs.agregaColumna("CAT_GUNAPROD","CONVERSION","TEXT") +' Subs.agregaColumna("kmt_info","CAT_CL_LIMITECREDITO","TEXT") +' Subs.agregaColumna("CAT_GUNAPROD","PRECIOCONVER","TEXT") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTAA (RUTAA TEXT)") +' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS wayPoints (codigo TEXT, indice INT)") +' Dim server As String = "http://keymon.net:1782" +'' Dim server As String = "http://192.168.100.10:1781" +'' Dim server As String = "http://keymon.lat:9000" +'' server = "http://10.0.0.205:1782" +'' Dim server As String = "http://192.168.100.10:1781" +'' server = "http://11.0.0.44:1782" +' reqManager.Initialize(Me, B4XPages.MainPage.server) +' LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red) +' Label1.Text = Application.VersionName +'' Dim P As PhoneId +' Log("provider") +' Provider.Initialize +' +' Subs.guardaAppInfo +' +'' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE) +'' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) +'' If Result Then +'' IMEN.Text = "" 'P.GetDeviceId +'' IMEI = "" 'P.GetDeviceId +'' End If +'End Sub +' +'Sub B4XPage_Appear +' If Starter.muestraProgreso = 1 Then +' muestraProgreso("Descargando actualización") +' Starter.muestraProgreso = 0 +' End If +' Subs.centraPanel(p_principal, Root.Width) +' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) +'' LogColor("Start Tracker1", Colors.red) +' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) +' If Result Then +' If Not(Tracker.Tracking) Then StartService(Tracker) +'' LogColor("Start Tracker", Colors.red) +' Else +' ToastMessageShow("No permission", True) +' Log("Sin permisos") +' End If +'' LogColor("Start Tracker3", Colors.red) +' c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") +' If c.RowCount > 0 Then +'' c.Position=0 +'' c=skmt.ExecQuery("select USUARIO from usuarioa") +' c.Position=0 +' usuario = c.GetString("USUARIO") +' End If +' c.Close +'' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) +'' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) +'' If Result Then +'' Log("Con permisos de escritura externa") +'' End If +' +' c=Starter.skmt.ExecQuery("select CODIGO from CODIGO_UNICO") ''''Codigo de acceso unico +' If c.RowCount = 0 Then +' Dim Random5Digits As String +' Random5Digits = NumberFormat2(Rnd(0, 100000), 5, 0, 0,False) ' Rellenado con ceros a la izquierda +' Log("Número aleatorio de 5 dígitos (con ceros): " & Random5Digits) +' Dim pascon As Cursor = Starter.skmt.ExecQuery("select * from USUARIOA") +' pascon.Position = 0 +' Starter.skmt.ExecNonQuery2("INSERT INTO CODIGO_UNICO VALUES (?)", Array As Object(Random5Digits)) +' End If +' c.Close +'End Sub +' +''You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. +' +'Sub Entrar_Click +' If pass.Text = "YA" Then +' Starter.skmt.ExecNonQuery("delete from usuarioa") +' Starter.skmt.ExecNonQuery("delete from VERSION") +' Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object("ROOT", "ROOT")) +' Starter.skmt.ExecNonQuery("delete from cat_almacen") +' Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (user.Text)) +' Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object ("2.1")) +'' principal.B_REGRESA_Click +'' B4XPages.MainPage.principal.Subir.Visible = True +' B4XPages.ShowPage("Principal") +' Else +' c=Starter.skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text)) +' c.Position=0 +' existe = c.GetString("EXISTE1") +' c.Close +' 'existe = 1 +' If existe = 0 Then +' 'skmt.ExecNonQuery("delete from usuarioa") +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "select_usuario_GUNA_REPG_VN" +' cmd.Parameters = Array As Object(user.Text, pass.Text) +' reqManager.ExecuteQuery(cmd , 0, "usuario") +' +' +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_version_INTMEX" +'' reqManager.ExecuteQuery(cmd , 0, "version") +' Else +' +' +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "select_cont_usuario_GUNA_REPG_VN" +' cmd.Parameters = Array As Object(user.Text) +' reqManager.ExecuteQuery(cmd , 0, "cuentausuario") +' +' c=Starter.skmt.ExecQuery("select CODIGO from CODIGO_UNICO") ''''Codigo de acceso unico +' c.Position = 0 +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "select_cont_codigo_GUNA_REPG_VN" +' cmd.Parameters = Array As Object(c.GetString("CODIGO")) +' reqManager.ExecuteQuery(cmd , 0, "cuentacodigo") +' c.Close +' End If +' End If +'End Sub +' +'Sub JobDone(Job As HttpJob) +' If Job.Success = False Then +' ToastMessageShow("Error: " & Job.ErrorMessage, True) +' Else +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "version" Then 'query tag +' For Each records() As Object In result.Rows +' Starter.skmt.ExecNonQuery("delete from VERSION") +' Dim CAT_VE_VERSION As String = records(result.Columns.Get("CAT_VE_VERSION")) +' Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION)) +' Next +' End If +' End If +' +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "agencia" Then 'query tag +' For Each records() As Object In result.Rows +' +' Dim ID_ALMACEN As String = records(result.Columns.Get("ID_ALMACEN")) +' Next +' almacen = ID_ALMACEN +' End If +' End If +' +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "coords_almacen" Then 'query tag +' For Each records() As Object In result.Rows +' Log("Coordenadas del almacen: " & records(result.Columns.Get("CAT_AL_LATITUD")) & "," & records(result.Columns.Get("CAT_AL_LONGITUD"))) +' Private lat, lon As Double +' lat = 0.0 +' lon = 0.0 +' If IsNumber(records(result.Columns.Get("CAT_AL_LATITUD"))) And IsNumber(records(result.Columns.Get("CAT_AL_LONGITUD"))) Then +' lat = records(result.Columns.Get("CAT_AL_LATITUD")) +' lon = records(result.Columns.Get("CAT_AL_LONGITUD")) +' End If +' Starter.cedisLocation.Latitude = lat +' Starter.cedisLocation.Longitude = lon +' Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("COORDS_ALMACEN")) +' Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("COORDS_ALMACEN",lon&","&lat)) +' '19.48118148992086,-99.15295579261536 +' Next +' End If +' End If +' +' If Job.JobName = "DBRequest" Then ''' Codigo unico +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "usuario" Then 'query tag +' Log("si hice 4") +' For Each records() As Object In result.Rows +' Dim name As String = records(result.Columns.Get("USUARIO")) +' Dim ID_ALMACEN As String = records(result.Columns.Get("CAT_LO_AGENCIA")) +'' Dim IMEI_BASE As String = records(result.Columns.Get("CAT_LO_IDTELEFONO")) +' Next +' +'' B4XPages.ShowPage("Principal") '''mover +' +' +' If name = "OKActivo" Then +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "select_cont_usuario_GUNA_REPG_VN" +' cmd.Parameters = Array As Object(user.Text) +' reqManager.ExecuteQuery(cmd , 0, "cuentausuario") +' +' c=Starter.skmt.ExecQuery("select CODIGO from CODIGO_UNICO") ''''Codigo de acceso unico +' c.Position = 0 +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "select_cont_codigo_GUNA_REPG_VN" +' cmd.Parameters = Array As Object(c.GetString("CODIGO")) +' reqManager.ExecuteQuery(cmd , 0, "cuentacodigo") +' c.Close +' +' Else If name = "OKExpirado"& IMEI Then +' Msgbox("Usuario Expirado llamar al administrador","") 'ignore +' Else If name = "OKCancelado"& IMEI Then +' Msgbox("Usuario Cancelado llamar al administrador","") 'ignore +' Else +' Msgbox("Usuario o password No validos","") 'ignore +' End If +' +'' paso1 = 1 +' End If +' End If +' +' If Job.JobName = "DBRequest" Then ''' Codigo unico +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "cuentacodigo" Then 'query tag +' Log("si hice 1") +' For Each records() As Object In result.Rows +' Dim CUENTA_CODIGO As Int = records(result.Columns.Get("CUENTA_CODIGO")) +' Next +' codigo = CUENTA_CODIGO +' Log(CUENTA_CODIGO) +' paso1 = 1 +' entrada +' End If +' End If +' +' If Job.JobName = "DBRequest" Then ''' Codigo unico +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "cuentausuario" Then 'query tag +' Log("si hice 2") +' For Each records() As Object In result.Rows +' Dim CUENTA_USUARIO As Int = records(result.Columns.Get("CUENTA_USUARIO")) +' Next +' usuariocheck = CUENTA_USUARIO +' Log(CUENTA_USUARIO) +' paso2 = 1 +' entrada +' End If +' End If +' +' If Job.JobName = "DBRequest" Then ''' Codigo unico +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "cuentacodigo2" Then 'query tag +' Log("si hice 3") +' For Each records() As Object In result.Rows +' Dim TMP_CR_CODIGO As Int = records(result.Columns.Get("TMP_CR_CODIGO")) +' Next +' +' +' If TMP_CR_CODIGO = 1 Then +' Log("si hice 5") +' Starter.skmt.ExecNonQuery("delete from usuarioa") +' Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text)) +' Starter.skmt.ExecNonQuery("delete from cat_almacen") +' Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (almacen)) +' B4XPages.ShowPage("Principal") +' +' End If +' +' End If +' End If +' +' +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "contrasena" Then 'query tag +' For Each records() As Object In result.Rows +' Dim CAT_PA_PASS As String = records(result.Columns.Get("CAT_PA_PASS")) +' If CAT_PA_PASS = et_codigo.Text Then +' Log(CAT_PA_PASS) +' p_validacion.Visible = False +' et_codigo.Text = "" +' +' Subs.panelVisible(P_CIEGO,0,0) +' +' Else +' MsgboxAsync("Contraseña incorrecta","Atención") +' End If +' Next +' End If +' End If +' +'' If Job.JobName = "DBRequest" Then +'' Dim result As DBResult = reqManager.HandleJob(Job) +'' If result.Tag.As(String).IndexOf("PICK_C_") > -1 Then 'query tag +' '' Subs.logJobDoneResultados(result) +'' Private id As String= result.Tag +'' id = id.SubString(id.IndexOf("_")+3) +'' For Each records() As Object In result.Rows +'' Dim CUENTA As String = records(result.Columns.Get("CUENTA")) +'' Log(CUENTA) +'' Log(id) +'' If CUENTA = 0 Then +'' c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO WHERE PC_ID_PROD = ?", Array As String (id)) +'' If c.RowCount > 0 Then +' '' For i=0 To c.RowCount -1 +'' c.Position=0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "insert_PICKCIEGO_MAZAPA" +'' cmd.Parameters = Array As Object(c.GetString("PC_ID_PROD"), c.GetString("PC_NOM_PROD"), c.GetString("PC_CANT"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA"),"REPARTO") +'' reqManager.ExecuteCommand(cmd , "ins_PC") +' '' Next +'' End If +'' c.Close +'' Else if CUENTA > 0 Then +'' c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO WHERE PC_ID_PROD= ?", Array As String (id)) +'' If c.RowCount > 0 Then +' '' For i=0 To c.RowCount -1 +'' c.Position = 0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "update_PICKCIEGO_MAZAPA" +'' Log("FECHA" & c.GetString("PC_FECHA")) +'' cmd.Parameters = Array As Object(c.GetString("PC_CANT"), c.GetString("PC_ID_PROD"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA"),"REPARTO") +'' reqManager.ExecuteCommand(cmd, "update_PC") +' '' Next +'' End If +'' c.Close +'' End If +' ' +'' Next +'' End If +'' End If +' +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "estatus" Then 'query tag +' For Each records() As Object In result.Rows +' Dim hvd_estatus As String = records(result.Columns.Get("HVD_ESTATUS")) +' If hvd_estatus = "Liquidado" Then +' ' ToastMessageShow("rojo val ok 1 cuantosp." , True) +' MsgboxAsync("La venta ya fue liquidada","Atención") +' Else +' enviarmonto +' End If +' Next +' End If +' End If +' +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "estatus2" Then 'query tag +' For Each records() As Object In result.Rows +' Dim hvd_estatus As String = records(result.Columns.Get("HVD_ESTATUS")) +' If hvd_estatus = "Liquidado" Then +' ' ToastMessageShow("rojo val ok 1 cuantosp." , True) +' MsgboxAsync("La venta ya fue liquidada","Atención") +' Else +' passaquci +' End If +' Next +' End If +' End If +' +' If Job.JobName = "DBRequest" Then +' Dim result As DBResult = reqManager.HandleJob(Job) +' If result.Tag = "SelectMontoLiq" Then +' For Each records() As Object In result.Rows +' Dim CUENTA As String = records(result.Columns.Get("CUENTA")) +' +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' Private f As Cursor=Starter.skmt.ExecQuery("select RUTAA from RUTAA") +' f.Position=0 +' Private a As Cursor =Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +' a.Position = 0 +' +' Private c2 As Cursor +' c2=Starter.skmt.ExecQuery("select USUARIO from usuarioa") +' c2.Position=0 +' If c2.RowCount > 0 Then c2.GetString("USUARIO") +' +' Log(CUENTA & "----------------------!!") +' If CUENTA = "0" Then +' +'' c = Starter.skmt.ExecQuery2("SELECT * FROM ENV_MONTO_LIQ WHERE EML_USUARIO = ? AND EML_ALMACEN = ? AND EML_RUTA = ?", Array As String (c2.GetString("USUARIO"), a.GetString("ID_ALMACEN"), f.GetString("RUTAA"))) +'' If c.RowCount > 0 Then +' '' For i=0 To c.RowCount -1 +'' c.Position=0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "insert_Monto_Liq_MAZAPArep" +'' cmd.Parameters = Array As Object(c.GetString("EML_MONTO"), c.GetString("EML_ALMACEN"), f.GetString("RUTAA"), c.GetString("EML_USUARIO"), "REPARTO", c.GetString("EML_FECHA_PED")) +'' reqManager.ExecuteCommand(cmd , "ins_Mon_Liq") +'' MsgboxAsync("Monto Enviado", "Atención") +' '' Next +'' End If +'' c.Close +' Else if CUENTA > "0" Then +' +'' c = Starter.skmt.ExecQuery2("SELECT * FROM ENV_MONTO_LIQ WHERE EML_USUARIO = ? AND EML_ALMACEN = ? AND EML_RUTA = ?", Array As String (c2.GetString("USUARIO"), a.GetString("ID_ALMACEN"), f.GetString("RUTAA"))) +'' If c.RowCount > 0 Then +' '' For i=0 To c.RowCount -1 +'' c.Position = 0 +'' cmd.Initialize +'' cmd.Name = "update_MontoCuenta_MAZAPArep" +'' cmd.Parameters = Array As Object(c.GetString("EML_MONTO"), c.GetString("EML_ALMACEN"), c.GetString("EML_RUTA"), c.GetString("EML_USUARIO"),c.GetString("EML_FECHA_PED"),"REPARTO") +'' +'' Log(c.GetString("EML_MONTO")& " " & c.GetString("EML_ALMACEN")& " " & c.GetString("EML_RUTA")& " " & c.GetString("EML_USUARIO")) +'' reqManager.ExecuteCommand(cmd, "update_MC") +'' MsgboxAsync("Se sobre escribio el Monto", "Atención") +' '' Next +'' End If +'' c2.Close +'' c.Close +' End If +' f.Close +' a.Close +' Next +' End If +' End If +' +' Job.Release +' End If +' +' +' +' +'End Sub +' +'Sub entrada +' If paso1 = 1 And paso2 = 1 Then +' +' +' Log(codigo) +' Log(usuariocheck) +' If codigo = 1 And usuariocheck = 1 Then +' c=Starter.skmt.ExecQuery("select CODIGO from CODIGO_UNICO") ''''Codigo de acceso unico +' c.Position = 0 +' +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "select_codigo_cuantosGUNA_REPG_VN" +' cmd.Parameters = Array As Object(user.Text, c.GetString("CODIGO")) +' reqManager.ExecuteQuery(cmd , 0, "cuentacodigo2") +' +' c.Close +' Else If (codigo = 1 And usuariocheck = 0) Or (codigo = 0 And usuariocheck = 1) Then +' MsgboxAsync("El celular ya esta registrado en otra cuenta, o el usuario esta registrado en otro telefono, favoir de contactar a tu supervisor","Atención") +' Else If codigo = 0 And usuariocheck = 0 Then +' Dim cod As Cursor=Starter.skmt.ExecQuery("select CODIGO from CODIGO_UNICO") ''''Codigo de acceso unico +' cod.Position = 0 +' +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "insert_codigo_REP_GUNA_VN" +' cmd.Parameters = Array As Object(user.Text.Trim, pass.Text, cod.GetString("CODIGO")) +' reqManager.ExecuteCommand(cmd , "ins_codigo") +' +' cod.Close +' +' +' Starter.skmt.ExecNonQuery("delete from usuarioa") +' Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text)) +' Starter.skmt.ExecNonQuery("delete from cat_almacen") +' Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (almacen)) +' Starter.skmt.ExecNonQuery2("INSERT INTO INICIO_SESION(CONECTADO) VALUES (?)", Array As Object (1)) +' +' B4XPages.ShowPage("Principal") +' End If +' End If +'End Sub +' +'Private Sub i_engrane_Click +' p_appUpdate.Width = Root.Width +' p_appUpdate.Height = Root.Height +' Subs.centraPanel(p_serverList, Root.Width) +' Subs.centraBoton(b_server, Root.Width) +' Subs.centraBoton(b_apk, Root.Width) +' Subs.centraBoton(b_envioBD, Root.Width) +' Subs.centraBoton(b_regesar, Root.Width) +' Subs.centraBoton(b_server, p_serverList.Width) +' lv_server.Clear +' lv_server.AddSingleLine("http://keymon.net:1782") +' +' If user.Text = "KMTS1" Then lv_server.AddSingleLine("http://10.0.0.205:1782") +'' l_server.Text = Starter.server +' et_server.Text = server +' Subs.panelVisible(p_appUpdate, 0, 0) +'End Sub +' +'Private Sub B4XPage_CloseRequest As ResumableSub +'' Log("closreq") +' If p_appUpdate.Visible Then +' p_appUpdate.Visible = False +' Else +' Sleep(0) +' ExitApplication +' End If +' Return False +'End Sub +' +'Private Sub b_regesar_Click +' p_principal.Visible = True +' p_appUpdate.Visible = False +'End Sub +' +''Enviamos la base de datos por correo o Whatsapp +'Private Sub b_envioBD_Click +'' copiaDB +'' Sleep(1000) +' 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, FileName) +' Dim email As Email +' email.To.Add("soporte@keymonsoft.com") +' email.Subject = "Base de datos para revisión" +' email.Attachments.Add(Provider.GetFileUri(FileName)) +'' 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 b_apk_Click +' StartService(appUpdater) +'End Sub +' +'Private Sub b_server_Click +' Log("Guardar servidor") +' 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",et_server.text)) +' B4XPages.MainPage.server = et_server.text +' Starter.server = B4XPages.MainPage.server +' If logger Then Log("Inicializamos reqManager con " & B4XPages.MainPage.server) +' reqManager.Initialize(Me, B4XPages.MainPage.server) +' LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red) +' reinicializaReqManager +' p_appUpdate.Visible = False +'' Entrar.Visible = True +'End Sub +' +'Private Sub lv_server_ItemClick (Position As Int, Value As Object) +' server = Value +'' l_server.Text = Value +' et_server.Text = Value +' reqManager.Initialize(Me, Value) +' LogColor($"ReqServer = ${Value}"$, Colors.red) +' ToastMessageShow("Servidor modificado", False) +'End Sub +' +'Sub reinicializaReqManager +' reqManager.Initialize(Me, B4XPages.MainPage.server) +' If logger Then Log(B4XPages.MainPage.server) +' LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red) +'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 b_CargarMonto_Click +' +' c = Starter.skmt.ExecQuery("SELECT * FROM kmt_info") +' c.Position = 0 +' If c.RowCount < 0 Or c.RowCount = 0 Then +' MsgboxAsync("No hay ruta cargada, favor de cargar día","Atención") +' Else +' Subs.panelVisible(p_add_monto,0,0) +' End If +' c.Close +' +'End Sub +' +'Private Sub p_add_monto_Click +' +'End Sub +' +''Private Sub B_Aceptar_Monto_Click +'' Private f As Cursor=Starter.skmt.ExecQuery("select RUTAA from RUTAA") +'' f.Position=0 +'' Private a As Cursor =Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +'' a.Position = 0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_estatus_MAZAPA" +'' cmd.Parameters = Array As Object(a.GetString("ID_ALMACEN"),f.GetString("RUTAA")) +'' reqManager.ExecuteQuery(cmd , 0, "estatus") +'' f.Close +'' a.Close +''End Sub +' +'Sub enviarmonto +' +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' +' Private f As Cursor=Starter.skmt.ExecQuery("select RUTAA from RUTAA") +' f.Position=0 +' +' Private a As Cursor=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +' If a.RowCount>0 Then +' a.Position=0 +' End If +' +' Private a2 As Cursor = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") +' If a2.RowCount>0 Then +' a2.Position=0 +' Dim fecha() As String = Regex.Split(" ", a2.GetString("HVD_FECHA")) +' Dim fecha2() As String = Regex.Split("-", fecha(0)) +' Dim fecha3 As String = fecha2(2)&"/"&fecha2(1)&"/"&fecha2(0) +' Log(fecha3) +' Dim hora() As String = Regex.Split("\.", fecha(1)) +' Log(hora(0)) +' End If +' +' +' +' Private cI As Cursor +' Private u As String = "SinUsuario" +' cI=Starter.skmt.ExecQuery("select USUARIO from usuarioa") +' cI.Position=0 +' If cI.RowCount > 0 Then u = cI.GetString("USUARIO") +' Private g As Cursor = Starter.skmt.ExecQuery("select * from ENV_MONTO_LIQ") +'' If g.RowCount = 0 Then +'' Starter.skmt.ExecNonQuery2("INSERT INTO ENV_MONTO_LIQ VALUES (?,?,?,?,?)", Array As Object(ET_Add_Monto.Text, a.GetString("ID_ALMACEN"), f.GetString("RUTAA"), u, fecha3 & " " & hora(0))) +'' f.Close +'' a.Close +'' +'' c = Starter.skmt.ExecQuery("SELECT * FROM ENV_MONTO_LIQ") +'' If c.RowCount > 0 Then +'' c.Position = 0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_MontoCuenta_MAZAPArep" +'' cmd.Parameters = Array As Object(c.GetString("EML_USUARIO"), c.GetString("EML_ALMACEN"), c.GetString("EML_RUTA"),c.GetString("EML_FECHA_PED")) +'' reqManager.ExecuteQuery(cmd , 0, "SelectMontoLiq") +'' End If +'' c.Close +'' Else +'' Starter.skmt.ExecNonQuery2("UPDATE ENV_MONTO_LIQ SET EML_MONTO = ? WHERE EML_ALMACEN = ? AND EML_RUTA = ? AND EML_USUARIO = ?", Array As String (ET_Add_Monto.Text ,a.GetString("ID_ALMACEN"), f.GetString("RUTAA"), cI.GetString("USUARIO"))) +'' f.Close +'' a.Close +'' +'' c = Starter.skmt.ExecQuery("SELECT * FROM ENV_MONTO_LIQ") +'' If c.RowCount > 0 Then +'' c.Position = 0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_MontoCuenta_MAZAPArep" +'' cmd.Parameters = Array As Object(c.GetString("EML_USUARIO"), c.GetString("EML_ALMACEN"), c.GetString("EML_RUTA"),c.GetString("EML_FECHA_PED")) +'' reqManager.ExecuteQuery(cmd , 0, "SelectMontoLiq") +'' End If +'' c.Close +'' End If +' +' p_add_monto.Visible = False +' +'End Sub +' +'Private Sub B_Can_Monto_Click +' p_add_monto.Visible = False +'End Sub +' +'Private Sub b_arqueocieego_Click +' c = Starter.skmt.ExecQuery("SELECT * FROM CAT_GUNAPROD3") +' If c.RowCount > 0 Then +' Subs.panelVisible(p_validacion,0,0) +' Else +' MsgboxAsync("No hay ruta cargada, favor de cargar día","Atención") +' End If +'End Sub +' +'Private Sub et_buspc_TextChanged (Old As String, New As String) +' If New = "" Then +' CLV_PICK_CIEGO.Clear +' Else If New.Length >= 3 Then +' CLV_PICK_CIEGO.Clear +' +' q_buscar = "%" & et_buspc.Text & "%" +' Log(q_buscar) +' c=Starter.skmt.ExecQuery2($"select CAT_GP_NOMBRE, CAT_GP_ID , ifnull(PC_CANT,0) AS PC_CANT FROM CAT_GUNAPROD3 INNER JOIN PICK_CIEGO ON PC_ID_PROD = CAT_GP_ID AND PC_NOM_PROD = CAT_GP_NOMBRE WHERE (CAT_GP_NOMBRE LIKE ? OR CAT_GP_ID LIKE ? ) and CAT_GP_CLASIF <> 'PROMOS'"$, Array As String(q_buscar,q_buscar)) +' If c.RowCount > 0 Then +' +' +' For i = 0 To c.RowCount - 1 +' c.Position = i +' CLV_PICK_CIEGO.Add(CreateListItem(c.GetString("CAT_GP_ID"), c.GetString("CAT_GP_NOMBRE"), c.GetString("PC_CANT")),i) +'' Log(c.GetString("CAT_GP_ID") & ", " & c.GetString("CAT_GP_NOMBRE") & " ," & c.GetString("PC_CANT")) +' Next +' c.Close +' +' d=Starter.skmt.ExecQuery2($"select CAT_GP_NOMBRE, CAT_GP_ID FROM CAT_GUNAPROD3 WHERE (CAT_GP_NOMBRE LIKE ? OR CAT_GP_ID LIKE ? ) and CAT_GP_CLASIF <> 'PROMOS'AND CAT_GP_ID NOT IN (SELECT PC_ID_PROD FROM PICK_CIEGO)"$, Array As String(q_buscar,q_buscar)) +' +' For i = 0 To d.RowCount - 1 +' d.Position = i +' CLV_PICK_CIEGO.Add(CreateListItem2(d.GetString("CAT_GP_ID"), d.GetString("CAT_GP_NOMBRE")),i) +'' Log(d.GetString("CAT_GP_ID") & ", " & d.GetString("CAT_GP_NOMBRE")) +' Next +' d.Close +' +' Else If c.RowCount = 0 Then +' d=Starter.skmt.ExecQuery2($"select CAT_GP_NOMBRE, CAT_GP_ID FROM CAT_GUNAPROD3 WHERE (CAT_GP_NOMBRE LIKE ? OR CAT_GP_ID LIKE ? ) and CAT_GP_CLASIF <> 'PROMOS'"$, Array As String(q_buscar,q_buscar)) +' +' For i = 0 To d.RowCount - 1 +' d.Position = i +' CLV_PICK_CIEGO.Add(CreateListItem2(d.GetString("CAT_GP_ID"), d.GetString("CAT_GP_NOMBRE")),i) +'' Log(d.GetString("CAT_GP_ID") & ", " & d.GetString("CAT_GP_NOMBRE")) +' Next +' d.Close +' End If +' End If +'End Sub +' +'Private Sub B_PC_ENV_Click +' Dim sDate, sTime As String +' DateTime.DateFormat = "dd/MM/yyyy" +' DateTime.TimeFormat = "HH:mm:ss" +' sDate = DateTime.Date(DateTime.Now) +' sTime = DateTime.Time(DateTime.Now) +' +' +' For i = 0 To CLV_PICK_CIEGO.Size - 1 +' ' Retrieve the panel and child views for the current item +' Dim itemPanel As B4XView = CLV_PICK_CIEGO.GetPanel(i) +' Dim innerPanel As B4XView = itemPanel.GetView(0) +' Dim editText As B4XView = innerPanel.GetView(1) +' Dim inputText As String = editText.As(EditText).Text +' +' ' Check if the input text matches the regex pattern for zeros or if it's empty +' If Regex.IsMatch("^[0]+$", inputText) Or inputText = "" Then +' inputText = "0" +' End If +' +' ' Retrieve and process the ID label +' Dim idLabel As B4XView = innerPanel.GetView(0) +' Dim idText As String = idLabel.As(Label).Text +' Dim idParts() As String = Regex.Split(CRLF, idText) +'' Log(idParts(1)) +' f=Starter.skmt.ExecQuery("select RUTAA from RUTAA") +' f.Position=0 +' Log(f.GetString("RUTAA")) +' a=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +' If a.RowCount>0 Then +' a.Position=0 +' End If +' Dim k As Cursor = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") +' k.Position = 0 +' Dim fechatabulador() As String = Regex.Split(" ", k.GetString("HVD_FECHA")) +' Dim fechatabulador2() As String = Regex.Split("-", fechatabulador(0)) +' Dim fechatabulador3 As String = fechatabulador2(2)&"/"&fechatabulador2(1)&"/"&fechatabulador2(0) +' k.Close +' If inputText <> "" Then +' c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO where PC_ID_PROD = ?", Array As String (idParts(0))) +' If c.RowCount = 0 Then +' ' Insert data into the database +' Log(f.GetString("RUTAA")) +' Starter.skmt.ExecNonQuery2("INSERT INTO PICK_CIEGO(PC_ID_PROD, PC_NOM_PROD, PC_CANT, PC_ALMACEN, PC_RUTA, PC_FECHA) VALUES(?,?,?,?,?,?)", Array As String(idParts(0), idParts(1), inputText, a.GetString("ID_ALMACEN"), f.GetString("RUTAA"), fechatabulador3&" "&sTime)) +' +' Else +' Log(f.GetString("RUTAA")) +' Starter.skmt.ExecNonQuery2("Update PICK_CIEGO set PC_CANT = ? WHERE PC_ID_PROD = ?" , Array As String(inputText ,idParts(0))) +' End If +' +' End If +' f.Close +' a.Close +' Log("Processed item " & i) +' Next +' et_buspc.Text = "" +' CLV_PICK_CIEGO.Clear +'End Sub +' +'Private Sub b_terpc_Click +' Msgbox2Async("Una vez enviada la información no podras hacer modificaciones","Atención","SI","", "",LoadBitmap(File.DirAssets,"alert2.png"), False) +' Wait For Msgbox_Result (resultado As Int) +' If resultado = DialogResponse.POSITIVE Then +' Msgbox2Async("Estas seguro de enviar la información?","Atención","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) +' Wait For Msgbox_Result (resultado As Int) +' If resultado = DialogResponse.POSITIVE Then +' +' Dim sDate, sTime As String +' DateTime.DateFormat = "dd/MM/yyyy" +' DateTime.TimeFormat = "HH:mm:ss" +' sDate = DateTime.Date(DateTime.Now) +' sTime = DateTime.Time(DateTime.Now) +' +' For i = 0 To CLV_PICK_CIEGO.Size - 1 +' ' Retrieve the panel and child views for the current item +' Dim itemPanel As B4XView = CLV_PICK_CIEGO.GetPanel(i) +' Dim innerPanel As B4XView = itemPanel.GetView(0) +' Dim editText As B4XView = innerPanel.GetView(1) +' Dim inputText As String = editText.As(EditText).Text +' +' ' Check if the input text matches the regex pattern for zeros or if it's empty +' If Regex.IsMatch("^[0]+$", inputText) Or inputText = "" Then +' inputText = "0" +' End If +' +' ' Retrieve and process the ID label +' Dim idLabel As B4XView = innerPanel.GetView(0) +' Dim idText As String = idLabel.As(Label).Text +' Dim idParts() As String = Regex.Split(CRLF, idText) +'' Log(idParts(1)) +' f=Starter.skmt.ExecQuery("select RUTAA from RUTAA") +' f.Position=0 +' Log(f.GetString("RUTAA")) +' +' a=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +' If a.RowCount>0 Then +' a.Position=0 +' End If +' Log(a.GetString("ID_ALMACEN")) +' +' Dim k As Cursor = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") +' k.Position = 0 +' Dim fechatabulador() As String = Regex.Split(" ", k.GetString("HVD_FECHA")) +' Dim fechatabulador2() As String = Regex.Split("-", fechatabulador(0)) +' Dim fechatabulador3 As String = fechatabulador2(2)&"/"&fechatabulador2(1)&"/"&fechatabulador2(0) +' k.Close +' If inputText <> "" Then +' c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO where PC_ID_PROD = ?", Array As String (idParts(0))) +' If c.RowCount = 0 Then +' ' Insert data into the database +' Starter.skmt.ExecNonQuery2("INSERT INTO PICK_CIEGO(PC_ID_PROD, PC_NOM_PROD, PC_CANT, PC_ALMACEN, PC_RUTA, PC_FECHA) VALUES(?,?,?,?,?,?)", Array As String(idParts(0), idParts(1), inputText, a.GetString("ID_ALMACEN"), f.GetString("RUTAA"), fechatabulador3&" "&sTime)) +' Else +' Starter.skmt.ExecNonQuery2("Update PICK_CIEGO set PC_CANT = ? WHERE PC_ID_PROD = ?" , Array As String(inputText ,idParts(0))) +' End If +' End If +' f.Close +' a.Close +' Log("Processed item " & i) +' Next +' Log("Finished processing all items") +' P_CIEGO.Visible = False +' et_buspc.Text = "" +' CLV_PICK_CIEGO.Clear +' c = Starter.skmt.ExecQuery("SELECT PC_ID_PROD, PC_ALMACEN, PC_RUTA, PC_FECHA FROM PICK_CIEGO") +'' If c.RowCount > 0 Then +'' For i = 0 To c.RowCount - 1 +'' c.Position = i +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_HIST_PICKCIEGO_MAZAPA" ' +'' cmd.Parameters = Array As Object(c.GetString("PC_ID_PROD"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA"),"REPARTO") +'' reqManager.ExecuteQuery(cmd , 0, $"PICK_C_${c.GetString("PC_ID_PROD")}"$) +'' Next +'' End If +' c.close +' Else +' +' End If +' End If +'End Sub +' +'Private Sub P_CIEGO_Click +' +'End Sub +' +'Private Sub b_aceptar_Click +' Private f As Cursor=Starter.skmt.ExecQuery("select RUTAA from RUTAA") +' f.Position=0 +' Private a As Cursor =Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +' a.Position = 0 +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_estatus_MAZAPA" +'' cmd.Parameters = Array As Object(a.GetString("ID_ALMACEN"),f.GetString("RUTAA")) +'' reqManager.ExecuteQuery(cmd , 0, "estatus2") +' f.Close +' a.Close +'' p_validacion.Visible = False +'' et_codigo.Text = "" +'' +'' Subs.panelVisible(P_CIEGO,0,0) +'End Sub +' +'Sub passaquci +' f=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") +' f.Position=0 +' +' a=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") +' If a.RowCount>0 Then +' a.Position=0 +' End If +' Log(a.GetString("ID_ALMACEN")) +' Log(f.GetString("CAT_CL_RUTA")) +' +'' If et_codigo.Text = "KMTS1" Then +'' p_validacion.Visible = False +'' et_codigo.Text = "" +'' Subs.panelVisible(P_CIEGO,0,0) +'' Else +'' Dim cmd As DBCommand +'' cmd.Initialize +'' cmd.Name = "select_CAT_PASS_ARQUEO_MAZAPA" +'' cmd.Parameters = Array As Object(f.GetString("CAT_CL_RUTA"),a.GetString("ID_ALMACEN"),"REPARTO") +'' reqManager.ExecuteQuery(cmd , 0, "contrasena") +'' f.Close +'' a.Close +'' End If +'End Sub +' +'Private Sub b_cancelarcodigo_Click +' p_validacion.Visible = False +'End Sub +' +'Private Sub p_validacion_Click +' +'End Sub +' +'Sub CreateListItem(Id_prod As String, Prod As String,cant As String) As Panel +' Dim pa As B4XView = xui.CreatePanel("") +' pa.SetLayoutAnimated(0, 0, 0, 1, 10) +' pa.LoadLayout("PANEL_PICK_CIEGO") +' pa.Height = 55dip +' pa.Width = 298dip +' 'pa.Width = clv_orden.GetBase.Width +' L_PICK_CIEGO.Text = Id_prod & CRLF & Prod +' L_PICK_CIEGO.TextSize = 12 +' L_PICK_CIEGO.Gravity = Bit.Or(Gravity.CENTER_VERTICAL, Gravity.CENTER_HORIZONTAL) +' ET_PICK_CIEGO.Text = cant +' 'cxc.Id_prod = mostrar3 +' 'Log(pa.Width) +' Return pa +'End Sub +' +'Sub CreateListItem2(Id_prod As String, Prod As String) As Panel +' Dim pa As B4XView = xui.CreatePanel("") +' pa.SetLayoutAnimated(0, 0, 0, 1, 10) +' pa.LoadLayout("PANEL_PICK_CIEGO") +' pa.Height = 55dip +' pa.Width = 298dip +' 'pa.Width = clv_orden.GetBase.Width +' L_PICK_CIEGO.Text = Id_prod & CRLF & Prod +' L_PICK_CIEGO.TextSize = 12 +' L_PICK_CIEGO.Gravity = Bit.Or(Gravity.CENTER_VERTICAL, Gravity.CENTER_HORIZONTAL) +' 'cxc.Id_prod = mostrar3 +' 'Log(pa.Width) +' Return pa +'End Sub +' +'Private Sub ImageView1_LongClick +' +'End Sub +' +'Private Sub p_appUpdate_Click +' +'End Sub +' + #Region Shared Files '#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files" 'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True @@ -61,7 +1227,7 @@ Sub Class_Globals Dim user As EditText Dim pass As EditText Dim c As Cursor - Dim existe As String + Dim existe As String Dim paso1 As String Private IMEN As Label Dim IMEI As String @@ -172,8 +1338,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) ' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS VENTAS (V_FECHA TEXT, V_CLIENTE TEXT, V_CLIENTE_ORIG TEXT, V_PRODNOMBRE TEXT, V_PRODID TEXT, V_CANTIDAD TEXT, V_PRECIO TEXT, V_TOTAL TEXT, V_PRODREGISTRO TEXT)") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RECHAZOS (R_FECHA TEXT, R_CLIENTE TEXT, R_CLI_ORIG TEXT, R_PRODID TEXT, R_CANT TEXT, R_RECHAZO INT)") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS VENTAS (V_FECHA TEXT, V_CLIENTE TEXT, V_CLI_ORIG TEXT, V_PRODID TEXT, V_CANT TEXT, V_RECHAZO INT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ABONOSP(NOTA TEXT, CLIENTE TEXT, SALDO_PENDIENTE TEXT)") -' Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS PAGARES") +' Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS ABONOSP") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CHECADO_CHECK(CHECADO TEXT)") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BLOCKENVIO(ENVIADO TEXT)") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_REPARTO_GEO(HIST_RG_MONTO TEXT, HIST_RG_CREDITO TEXT, HIST_RG_MONTO_CREDITO TEXT, HIST_RG_LAT TEXT, HIST_RG_LONG TEXT, HIST_RG_RECHAZO TEXT, HIST_RG_MOTIVO TEXT, HIST_RG_USUARIO_ENTREGO TEXT, HIST_RG_RUTA_REP TEXT, HIST_RG_ESTATUS_ENTREGA TEXT, HIST_RG_COMENTARIO_ENTREGA TEXT, HIST_RG_FORMA_PAGO TEXT, HIST_RG_GEOCERCA_MTS TEXT, HIST_RG_NO_ART TEXT, HIST_RG_CLIENTE TEXT, HIST_RG_FECHA TEXT, HIST_RG_ALMACEN TEXT, HIST_RG_RUTA_PRE TEXT)") @@ -187,8 +1352,17 @@ Private Sub B4XPage_Created (Root1 As B4XView) Subs.agregaColumna("ABONOS", "a_tipoabono", "TEXT") Subs.agregaColumna("PAGARES", "PA_CANCELADO", "TEXT") + + Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ABONOSP(NOTA TEXT, CLIENTE TEXT, SALDO_PENDIENTE TEXT)") Subs.agregaColumna("ABONOSP", "NOMBRE", "TEXT") + Subs.agregaColumna("ABONOSP", "FECHA_PREVENTA", "DATE") + Subs.agregaColumna("ABONOSP", "DIAS", "DATE") + Subs.agregaColumna("ABONOSP", "DIASATRASO", "DATE") + + Subs.agregaColumna("kmt_info", "SECUENCIA", "INT") + Subs.agregaColumna("kmt_info", "CAT_CL_SALDODISPONIBLE", "TEXT") + Subs.agregaColumna("kmt_info", "CAT_CL_DIASCREDITO", "INT") Subs.agregaColumna("kmt_info", "HORAENT", "TEXT") Subs.agregaColumna("REPARTO", "REP_PRODID", "TEXT") Subs.agregaColumna("PEDIDO", "PE_CLIENTEOR", "TEXT") @@ -219,7 +1393,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) Subs.agregaColumna("CAT_GUNAPROD","PRECIOCONVER","TEXT") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTAA (RUTAA TEXT)") Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS wayPoints (codigo TEXT, indice INT)") - Dim server As String = "http://187.189.244.154:1782" + Dim server As String = "http://keymon.net:1782" ' Dim server As String = "http://192.168.100.10:1781" ' Dim server As String = "http://keymon.lat:9000" ' server = "http://10.0.0.205:1782" @@ -392,7 +1566,7 @@ Sub JobDone(Job As HttpJob) ' If Job.JobName = "DBRequest" Then ' Dim result As DBResult = reqManager.HandleJob(Job) ' If result.Tag.As(String).IndexOf("PICK_C_") > -1 Then 'query tag -'' Subs.logJobDoneResultados(result) + '' Subs.logJobDoneResultados(result) ' Private id As String= result.Tag ' id = id.SubString(id.IndexOf("_")+3) ' For Each records() As Object In result.Rows @@ -402,20 +1576,20 @@ Sub JobDone(Job As HttpJob) ' If CUENTA = 0 Then ' c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO WHERE PC_ID_PROD = ?", Array As String (id)) ' If c.RowCount > 0 Then -'' For i=0 To c.RowCount -1 + '' For i=0 To c.RowCount -1 ' c.Position=0 ' Dim cmd As DBCommand ' cmd.Initialize ' cmd.Name = "insert_PICKCIEGO_MAZAPA" ' cmd.Parameters = Array As Object(c.GetString("PC_ID_PROD"), c.GetString("PC_NOM_PROD"), c.GetString("PC_CANT"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA"),"REPARTO") ' reqManager.ExecuteCommand(cmd , "ins_PC") -'' Next + '' Next ' End If ' c.Close ' Else if CUENTA > 0 Then ' c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO WHERE PC_ID_PROD= ?", Array As String (id)) ' If c.RowCount > 0 Then -'' For i=0 To c.RowCount -1 + '' For i=0 To c.RowCount -1 ' c.Position = 0 ' Dim cmd As DBCommand ' cmd.Initialize @@ -423,11 +1597,11 @@ Sub JobDone(Job As HttpJob) ' Log("FECHA" & c.GetString("PC_FECHA")) ' cmd.Parameters = Array As Object(c.GetString("PC_CANT"), c.GetString("PC_ID_PROD"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA"),"REPARTO") ' reqManager.ExecuteCommand(cmd, "update_PC") -'' Next + '' Next ' End If ' c.Close ' End If -' + ' ' Next ' End If ' End If @@ -486,7 +1660,7 @@ Sub JobDone(Job As HttpJob) ' c = Starter.skmt.ExecQuery2("SELECT * FROM ENV_MONTO_LIQ WHERE EML_USUARIO = ? AND EML_ALMACEN = ? AND EML_RUTA = ?", Array As String (c2.GetString("USUARIO"), a.GetString("ID_ALMACEN"), f.GetString("RUTAA"))) ' If c.RowCount > 0 Then -'' For i=0 To c.RowCount -1 + '' For i=0 To c.RowCount -1 ' c.Position=0 ' Dim cmd As DBCommand ' cmd.Initialize @@ -494,14 +1668,14 @@ Sub JobDone(Job As HttpJob) ' cmd.Parameters = Array As Object(c.GetString("EML_MONTO"), c.GetString("EML_ALMACEN"), f.GetString("RUTAA"), c.GetString("EML_USUARIO"), "REPARTO", c.GetString("EML_FECHA_PED")) ' reqManager.ExecuteCommand(cmd , "ins_Mon_Liq") ' MsgboxAsync("Monto Enviado", "Atención") -'' Next + '' Next ' End If ' c.Close Else if CUENTA > "0" Then ' c = Starter.skmt.ExecQuery2("SELECT * FROM ENV_MONTO_LIQ WHERE EML_USUARIO = ? AND EML_ALMACEN = ? AND EML_RUTA = ?", Array As String (c2.GetString("USUARIO"), a.GetString("ID_ALMACEN"), f.GetString("RUTAA"))) ' If c.RowCount > 0 Then -'' For i=0 To c.RowCount -1 + '' For i=0 To c.RowCount -1 ' c.Position = 0 ' cmd.Initialize ' cmd.Name = "update_MontoCuenta_MAZAPArep" @@ -510,7 +1684,7 @@ Sub JobDone(Job As HttpJob) ' Log(c.GetString("EML_MONTO")& " " & c.GetString("EML_ALMACEN")& " " & c.GetString("EML_RUTA")& " " & c.GetString("EML_USUARIO")) ' reqManager.ExecuteCommand(cmd, "update_MC") ' MsgboxAsync("Se sobre escribio el Monto", "Atención") -'' Next + '' Next ' End If ' c2.Close ' c.Close @@ -644,7 +1818,7 @@ Private Sub b_CargarMonto_Click c.Position = 0 If c.RowCount < 0 Or c.RowCount = 0 Then MsgboxAsync("No hay ruta cargada, favor de cargar día","Atención") - Else + Else Subs.panelVisible(p_add_monto,0,0) End If c.Close @@ -829,7 +2003,7 @@ Private Sub B_PC_ENV_Click Dim fechatabulador() As String = Regex.Split(" ", k.GetString("HVD_FECHA")) Dim fechatabulador2() As String = Regex.Split("-", fechatabulador(0)) Dim fechatabulador3 As String = fechatabulador2(2)&"/"&fechatabulador2(1)&"/"&fechatabulador2(0) - k.Close + k.Close If inputText <> "" Then c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO where PC_ID_PROD = ?", Array As String (idParts(0))) If c.RowCount = 0 Then @@ -895,7 +2069,7 @@ Private Sub b_terpc_Click Dim k As Cursor = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") k.Position = 0 Dim fechatabulador() As String = Regex.Split(" ", k.GetString("HVD_FECHA")) - Dim fechatabulador2() As String = Regex.Split("-", fechatabulador(0)) + Dim fechatabulador2() As String = Regex.Split("-", fechatabulador(0)) Dim fechatabulador3 As String = fechatabulador2(2)&"/"&fechatabulador2(1)&"/"&fechatabulador2(0) k.Close If inputText <> "" Then diff --git a/B4A/C_Cheklist.bas b/B4A/C_Cheklist.bas index 5445bd3..6fa1c33 100644 --- a/B4A/C_Cheklist.bas +++ b/B4A/C_Cheklist.bas @@ -790,7 +790,7 @@ Sub JobDone(Job As HttpJob) Next Next Starter.skmt.ExecNonQuery("UPDATE CHECADO_CHECK set CHECADO = 1 ") - B4XPages.MainPage.principal.checachek +' B4XPages.MainPage.principal.checachek End If End If diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 6fcf6d9..c05a6ce 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -108,13 +108,19 @@ Sub Class_Globals Private b_confirmar As Button Dim NOTA As String Private p_qr As Panel - + Private ChangingCheckboxesProgrammatically As Boolean = False Dim tipo_abonox As String - + Private cb_tipopago As B4XComboBox + Dim itemselect As String Dim escreditoono As String Dim m_lat, m_lon As String Dim distance As Long Private b_imprimesegun As Button + Private iv_foto As ImageView + Dim Folio As String + Private l_telefono As Label + Private l_fecha As Label + Private CheckBox1 As CheckBox End Sub 'You can add more parameters here. @@ -188,6 +194,7 @@ Sub B4XPage_Appear la_cp.Text = c.GetString("CAT_CL_CP") l_entre1.Text = c.GetString("CAT_CL_CALLE1") l_entre2.Text = c.GetString("CAT_CL_CALLE2") + l_telefono.Text= c.GetString("CAT_CL_TELEFONO") If c.GetString("CAT_CL_ATIENDE1") <> Null And c.GetString("CAT_CL_ATIENDE1") <> "null" Then l_atiende.Text = c.GetString("CAT_CL_ATIENDE1") Else @@ -218,6 +225,30 @@ Sub B4XPage_Appear b_imprimesegun.Visible = True End If mostrarimp.Close + + Dim cdias As Cursor = Starter.skmt.ExecQuery("select CAT_CL_DIASCREDITO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") + cdias.Position = 0 + Dim pagarepen As Cursor = Starter.skmt.ExecQuery("select FECHA_PREVENTA, NOTA, CLIENTE FROM ABONOSP WHERE CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + If pagarepen.RowCount > 0 Then + For pagadias = 0 To pagarepen.RowCount-1 + pagarepen.Position = pagadias + DateTime.DateFormat="dd/MM/yyyy" + Dim FechaInicio As String = pagarepen.GetString("FECHA_PREVENTA") ' Formato: dd/MM/yyyy + Log(pagarepen.GetString("FECHA_PREVENTA")) + + ' Convertir las fechas a milisegundos (desde 01/01/1970) + Dim TicksInicio As Long = DateTime.DateParse(FechaInicio) + Dim TicksHoy As Long = DateTime.DateParse(DateTime.Date(DateTime.Now)) + + ' Calcular diferencia en días + Dim DiferenciaDias As Int = (TicksHoy - TicksInicio) / DateTime.TicksPerDay + + ' Mostrar resultado + Log($"Días transcurridos: ${DiferenciaDias}"$) + + Starter.skmt.ExecNonQuery2("UPDATE ABONOSP set DIAS = ?, DIASATRASO = ? where NOTA = ? AND CLIENTE IN (SELECT CUENTA FROM CUENTAA)",Array As String(DiferenciaDias,cdias.GetInt("CAT_CL_DIASCREDITO")-DiferenciaDias, pagarepen.GetString("NOTA"))) + Next + End If ' If CREDITO = "1" Then ' Msgbox("AVISO","SE TIENE QUE IMPRIMIR PAGARÉ") 'ignore @@ -362,7 +393,15 @@ Sub B4XPage_Appear Dim cp As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PA_CANCELADO IS NULL") If cp.RowCount > 0 Then - b_cancel_pagare.Visible = True + + Dim x2 As Cursor =Starter.skmt.ExecQuery("SELECT gestion FROM kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + x2.Position = 0 + If x2.GetString("gestion") = 2 Then + b_cancel_pagare.Visible = True + Else + b_cancel_pagare.Visible = False + End If + Else b_cancel_pagare.Visible = False End If @@ -375,6 +414,28 @@ Sub B4XPage_Appear ' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$) GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation) End If + +' Dim fotomostrar As Cursor = Starter.skmt.ExecQuery("SELECT foto FROM FOTOS where CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' If fotomostrar.RowCount > 0 Then +' Dim fotomostrar1 As Cursor = Starter.skmt.ExecQuery("SELECT foto FROM FOTOS where CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND foto IS NULL") +' If fotomostrar1.RowCount > 0 Then +' iv_foto.Bitmap = LoadBitmap(File.DirAssets,"images.png") +' Log("aqui no hay foto") +' Else +' fotomostrar.Position = 0 +' Private fotomostrarfinal() As Byte = fotomostrar.GetBlob("foto") +' Dim InputStream1 As InputStream +' InputStream1.InitializeFromBytesArray(fotomostrarfinal, 0, fotomostrarfinal.Length) +' Dim Bitmap1 As Bitmap +' Bitmap1.Initialize2(InputStream1) +' InputStream1.Close +' iv_foto.Bitmap = Bitmap1 +' +' Log("aqui si hay foto") +' End If +' +' End If + End Sub Sub Activity_Pause (UserClosed As Boolean) @@ -442,29 +503,69 @@ Sub gest_Click B4XPages.ShowPage("Principal") End If Else - Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") - k.Position = 0 - Log(k.GetString("CUENTA")) - Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) - y.position = 0 - Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ?", Array As String(k.GetString("CUENTA"))) - u.Position = 0 - If u.RowCount > 0 Then - If u.GetString("SALDO_PENDIENTE") <> 0 Then - If y.RowCount > 0 Then - If u.GetString("SALDO_PENDIENTE") = y.GetString("a_abono") Then + If Subs.traeAlmacen = 92 Then + + Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") + k.Position = 0 + Log(k.GetString("CUENTA")) + Dim cliecred As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_LIMITECREDITO from kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + cliecred.Position = 0 + + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) + y.position = 0 + Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ?", Array As String(k.GetString("CUENTA"))) + u.Position = 0 + If u.RowCount > 0 Then + If u.GetString("SALDO_PENDIENTE") <> 0 Then + If y.GetString("a_abono") > 0 Then + If cliecred.GetString("CAT_CL_LIMITECREDITO") >= (u.GetString("SALDO_PENDIENTE") - y.GetString("a_abono") + l_total.Text.Replace(",","")) Then + checacredito + Else + Dim creditofaltante As Float = (cliecred.GetString("CAT_CL_LIMITECREDITO") - ( u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","")- y.GetString("a_abono"))) * -1 + + MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") + End If +' Else If cliecred.GetString("CAT_CL_LIMITECREDITO") >= u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","") Then 'AQUI VAMOS A VALIDAR SI EL CREDITO ALCANZA' +' MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") + Else If cliecred.GetString("CAT_CL_LIMITECREDITO") >= (u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","")) Then checacredito + Else + Dim creditofaltante As Float = (cliecred.GetString("CAT_CL_LIMITECREDITO") - ( u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",",""))) * -1 + + MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") + End If + Else If u.GetString("SALDO_PENDIENTE") = 0 Then + checacredito + End If + Else + checacredito + End If + + Else + Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") + k.Position = 0 + Log(k.GetString("CUENTA")) + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) + y.position = 0 + Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ?", Array As String(k.GetString("CUENTA"))) + u.Position = 0 + If u.RowCount > 0 Then + If u.GetString("SALDO_PENDIENTE") <> 0 Then + If y.RowCount > 0 Then + If u.GetString("SALDO_PENDIENTE") = y.GetString("a_abono") Then + checacredito + Else + MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") + End If Else MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") End If - Else - MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") + Else If u.GetString("SALDO_PENDIENTE") = 0 Then + checacredito End If - Else If u.GetString("SALDO_PENDIENTE") = 0 Then + Else checacredito End If - Else - checacredito End If End If End Sub @@ -474,14 +575,21 @@ Sub checacredito Guardado Else + Dim pagacheca As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - Dim x1 As Cursor =Starter.skmt.ExecQuery("SELECT IFNULL(CAT_CL_LIMITECREDITO,0) AS CAT_CL_LIMITECREDITO FROM kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - x1.Position = 0 - If CREDITO = 1 And x1.GetString("CAT_CL_LIMITECREDITO") <> 0 Then '''' se debe de cambiar a si acepta o no credito, aparte de tener la bandera a credito - Msgbox2Async("EL CLIENTE TIENE CREDITO DISPONIBLE, UNA VEZ SELECCIONADA UNA OPCION NO SE PODRA MODIFICAR!!!!!","Forma de pago","","Credito","Efectivo",LoadBitmap(File.DirAssets,"alert2.png"),False) - Wait For Msgbox_Result (Result As Int) - If Result= DialogResponse.POSITIVE Then - Log(1) + If pagacheca.RowCount > 0 Then + esPagoACreditoGuardamosPagare + Else + + + + Dim x1 As Cursor =Starter.skmt.ExecQuery("SELECT IFNULL(CAT_CL_LIMITECREDITO,0) AS CAT_CL_LIMITECREDITO FROM kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + x1.Position = 0 + If CREDITO = 1 And x1.GetString("CAT_CL_LIMITECREDITO") <> 0 Then '''' se debe de cambiar a si acepta o no credito, aparte de tener la bandera a credito + Msgbox2Async("EL CLIENTE TIENE CREDITO DISPONIBLE, UNA VEZ SELECCIONADA UNA OPCION NO SE PODRA MODIFICAR!!!!!","Forma de pago","","Credito","Efectivo",LoadBitmap(File.DirAssets,"alert2.png"),False) + Wait For Msgbox_Result (Result As Int) + If Result= DialogResponse.POSITIVE Then + Log(1) ' p_credito.Visible = True ' 'monto ' c=Starter.skmt.ExecQuery("select sum(HVD_COSTO_TOT) AS MONTO from HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND HVD_RECHAZO = 0 AND HVD_PARCIAL = 0") @@ -489,15 +597,15 @@ Sub checacredito ' montopagare = c.GetString("MONTO") ' c.Close ' l_limite.Text = "Monto de la venta: $" & l_total.Text - Else If Result = DialogResponse.NEGATIVE Then - escreditoono = 0 - Log(2) - Tipoentrega = "CONTADO" - B_IMP_Click - banderaimp = 1 - Else If Result = DialogResponse.CANCEL Then - Log(12) - escreditoono = 1 + Else If Result = DialogResponse.NEGATIVE Then + escreditoono = 0 + Log(2) + Tipoentrega = "CONTADO" + B_IMP_Click + banderaimp = 1 + Else If Result = DialogResponse.CANCEL Then + Log(12) + escreditoono = 1 ' If l_total.Text.Replace(",","") <= NumberFormat2( x1.GetString("CAT_CL_LIMITECREDITO").Replace(",",""),0,2,2,False) Then esPagoACreditoGuardamosPagare'' para brincar el r Log(3) @@ -571,12 +679,13 @@ Sub checacredito ' B_IMP_Click ' banderaimp = 1 ' End If + End If + Else + Log(4) + escreditoono = 0 + B_IMP_Click + banderaimp = 1 End If - Else - Log(4) - escreditoono = 0 - B_IMP_Click - banderaimp = 1 End If End If End Sub @@ -628,9 +737,16 @@ Sub esPagoACreditoGuardamosPagare NOTA = c.GetString("HVD_NUM_TICKET") End If c.Close - Starter.skmt.ExecNonQuery2("INSERT INTO PAGARES (PA_ALMACEN, PA_RUTA_REP, PA_RUTAPREV, PA_FECHA_PREV, PA_CAPTURA, PA_MONTO, PA_USUARIO, PA_CLIENTE,PA_TICKET) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (almacen,rutarep,rutaprev,fechaprev,(sDate),l_total.Text.Replace(",",""),usuario,cuenta,NOTA)) - B_IMP_Click - banderaimp = 1 + Dim pagacheca As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + + If pagacheca.RowCount > 0 Then + B_IMP_Click + banderaimp = 1 + Else + Starter.skmt.ExecNonQuery2("INSERT INTO PAGARES (PA_ALMACEN, PA_RUTA_REP, PA_RUTAPREV, PA_FECHA_PREV, PA_CAPTURA, PA_MONTO, PA_USUARIO, PA_CLIENTE,PA_TICKET) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (almacen,rutarep,rutaprev,fechaprev,(sDate),l_total.Text.Replace(",",""),usuario,cuenta,NOTA)) + B_IMP_Click + banderaimp = 1 + End If End Sub Sub Guardado @@ -816,6 +932,8 @@ Sub NUEVO_Click End Sub Sub HIST_Click + + Dim x2 As Cursor =Starter.skmt.ExecQuery("SELECT gestion FROM kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") x2.Position = 0 If x2.GetString("gestion") = 2 Then @@ -825,38 +943,101 @@ Sub HIST_Click B4XPages.ShowPage("Principal") End If Else - Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") - k.Position = 0 - Log(k.GetString("CUENTA")) - Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) - y.position = 0 - Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ?", Array As String(k.GetString("CUENTA"))) - u.Position = 0 - If u.RowCount > 0 Then - If u.GetString("SALDO_PENDIENTE") <> 0 Then - If y.RowCount > 0 Then - If u.GetString("SALDO_PENDIENTE") = y.GetString("a_abono") Then - B4XPages.MainPage.detalleVenta.prodsMap.Initialize - B4XPages.ShowPage("DetalleVenta") - Else - MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") - End If - Else - MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") - End If - Else If u.GetString("SALDO_PENDIENTE") = 0 Then - B4XPages.MainPage.detalleVenta.prodsMap.Initialize - B4XPages.ShowPage("DetalleVenta") + + Dim pagacheca2 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + + If pagacheca2.RowCount > 0 Then + + + Msgbox2Async("El pagare ya fue generdo, no se puede realizar modificación.","Atención","","","Ok",LoadBitmap(File.DirAssets,"alert2.png"),False) + Wait For Msgbox_Result (Result As Int) + If Result= DialogResponse.POSITIVE Then + Log("Aqui") End If Else - B4XPages.MainPage.detalleVenta.prodsMap.Initialize - B4XPages.ShowPage("DetalleVenta") + + + If Subs.traeAlmacen = 92 Then + + Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") + k.Position = 0 + Log(k.GetString("CUENTA")) + Dim cliecred As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_LIMITECREDITO from kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + cliecred.Position = 0 + + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) + y.position = 0 + Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ?", Array As String(k.GetString("CUENTA"))) + u.Position = 0 + If u.RowCount > 0 Then + If u.GetString("SALDO_PENDIENTE") <> 0 Then + Log("AQUI ESTOY") + If y.GetString("a_abono") > 0 Then + Log("AQUI AHORA") + If cliecred.GetString("CAT_CL_LIMITECREDITO") >= (u.GetString("SALDO_PENDIENTE") - y.GetString("a_abono") + l_total.Text.Replace(",","")) Then + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + Else + Dim creditofaltante As Float = (cliecred.GetString("CAT_CL_LIMITECREDITO") - ( u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","")- y.GetString("a_abono"))) * -1 + + MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") + End If +' Else If cliecred.GetString("CAT_CL_LIMITECREDITO") >= u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","") Then 'AQUI VAMOS A VALIDAR SI EL CREDITO ALCANZA' +' MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") + Else If cliecred.GetString("CAT_CL_LIMITECREDITO") >= (u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","")) Then + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + Else + Dim creditofaltante As Float = (cliecred.GetString("CAT_CL_LIMITECREDITO") - ( u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",",""))) * -1 + + MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") + End If + + Else If u.GetString("SALDO_PENDIENTE") = 0 Then + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + End If + Else + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + End If + + Else + Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") + k.Position = 0 + Log(k.GetString("CUENTA")) + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) + y.position = 0 + Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ?", Array As String(k.GetString("CUENTA"))) + u.Position = 0 + If u.RowCount > 0 Then + If u.GetString("SALDO_PENDIENTE") <> 0 Then + If y.RowCount > 0 Then + If u.GetString("SALDO_PENDIENTE") = y.GetString("a_abono") Then + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + Else + MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") + End If + Else + MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") + End If + Else If u.GetString("SALDO_PENDIENTE") = 0 Then + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + End If + Else + B4XPages.MainPage.detalleVenta.prodsMap.Initialize + B4XPages.ShowPage("DetalleVenta") + End If + End If End If End If ' B4XPages.MainPage.historico.prodsMap.Initialize '' B4XPages.MainPage.historico.clv_pedido.Clear ' B4XPages.ShowPage("Historico") ' B4XPages.MainPage.historico.clv_pedido.Clear + End Sub Sub B_IMP_Click @@ -867,31 +1048,59 @@ Sub B_IMP_Click sDate=DateTime.Date(DateTime.Now) sTime=DateTime.Time(DateTime.Now) c.Close +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +'' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) +'' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else +'' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) +'' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + ProgressDialogShow("Imprimiendo, un momento ...") Printer1.DisConnect If Not(Printer1.IsConnected) Then -' Log("Conectando a impresora ...") +' If logger Then Log("conectando 1") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Sleep(1000) -' Log("++++++ " & cont) cont = cont + 1 - If cont = 2 Then Printer1.Connect 'Tratamos de reconectar - If cont > 3 Then impresoraConectada = True + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False Else -' Log("conectando 2") +' If logger Then Log("conectando 2") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) Sleep(1000) -' Log("****** " & cont) cont = cont + 1 If cont = 2 Then Printer1.Connect - If cont > 3 Then impresoraConectada = True + If cont > 4 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False @@ -947,19 +1156,28 @@ Sub B_IMP_Click Printer1.WriteString(" " & CRLF) c = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + + + Dim cobranza As Cursor = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA) and HVD_PRONOMBRE = 'Cobranza Pendiente'") + Dim restacobranza As Int = 0 + If cobranza.RowCount > 0 Then + restacobranza = 1 + End If If c.RowCount > 0 Then + ' 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. ''CAT_TIPO_BONIFICACIONES +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and (HVD_CODPROMO <> 'MI RETO' or HVD_CODPROMO <> 'MI RETO' or HVD_CODPROMO <> 'MI RETO') AND (HVD_COSTO_TOT/HVD_CANT) > 0.01 order by HVD_PROID"$) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and (HVD_CODPROMO <> 'MIRETO' or HVD_CODPROMO <> 'SOCIOBAT' or HVD_CODPROMO <> 'CONECTADOS') AND (HVD_COSTO_TOT/HVD_CANT) > 0.01 GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("-------ENTREGA A "& Tipoentrega &"------" & CRLF) ' Printer1.WriteString("--------------------------------" & CRLF) Printer1.WriteString("Cant. Precio Importe" & CRLF) Printer1.WriteString("------------------------------" & CRLF) - ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_PROID"$) - If S.RowCount>0 Then For i=0 To S.RowCount -1 S.Position=i Log(s.GetString("HVD_RECHAZO")) If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then - If s.GetString("HVD_CODPROMO") = Subs.traeAlmacen Then + If s.GetInt("HVD_RECHAZO") = 0 Then Printer1.Justify = 0 Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) @@ -979,9 +1197,9 @@ Sub B_IMP_Click Printer1.Justify = 2 Printer1.WriteString( ptot & CRLF ) TAMANO = 0 - ESPACIO = 29 + ESPACIO = 28 BLANCO = " " - Else If s.GetString("HVD_RECHAZO") = 1 Then + Else If s.GetInt("HVD_RECHAZO") > 0 Then Printer1.Justify = 0 Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) @@ -1003,7 +1221,7 @@ Sub B_IMP_Click Printer1.Justify = 2 Printer1.WriteString(ptot& CRLF ) TAMANO = 0 - ESPACIO = 29 + ESPACIO = 28 BLANCO = " " Printer1.Justify = 0 End If @@ -1014,25 +1232,28 @@ Sub B_IMP_Click Printer1.Justify = 0 s.Close Printer1.WriteString(" " & CRLF) - s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_RECHAZO = 0 AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) + + +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_RECHAZO = 0 AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND ((HVD_COSTO_TOT/HVD_CANT) = 0.01 or (HVD_COSTO_TOT/HVD_CANT) = 0) and HVD_CODPROMO <> HVD_PROID AND HVD_CODPROMO NOT IN ('SOCIOBAT','MIRETO','CONECTADOS') and HVD_PRONOMBRE <> 'Cobranza Pendiente' GROUP by HVD_PROID"$) + If S.RowCount>0 Then - Printer1.WriteString("-------PROMOS ENTREGA--------" & CRLF) + Printer1.WriteString("------- BONIFIACIONES --------" & CRLF) Printer1.WriteString("Cant. Precio Importe" & CRLF) Printer1.WriteString("------------------------------" & CRLF) - Dim restacobranza As Int = 0 For i=0 To S.RowCount -1 S.Position=i - If s.GetString("HVD_PRONOMBRE") <> "Cobranza Pendiente" Then + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then - If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then +' If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then Printer1.Justify = 0 - If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then -' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) - - Else +' If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then +'' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) +' +' Else Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) @@ -1055,13 +1276,11 @@ Sub B_IMP_Click ESPACIO = 29 BLANCO = " " Printer1.Justify = 0 - End If - Else - End If - End If - Else - restacobranza = 1 +' End If +' Else +' End If End If + Next End If @@ -1099,16 +1318,228 @@ Sub B_IMP_Click ' Printer1.Justify = 0 ' Next ' End If +Printer1.WriteString(" " & CRLF) + + + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'MIRETO' GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("----------- MI RETO ------------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetInt("HVD_RECHAZO") = 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Else If s.GetInt("HVD_RECHAZO") > 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + Printer1.Justify = 0 + s.Close + Printer1.WriteString(" " & CRLF) + + + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'CONECTADOS' GROUP by HVD_PROID"$) +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'SOCIOBAT' GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("---------- CONECTADOS ----------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetInt("HVD_RECHAZO") = 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Else If s.GetInt("HVD_RECHAZO") > 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + Printer1.Justify = 0 + s.Close + +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'CONECTADOS' GROUP by HVD_PROID"$) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'SOCIOBAT' GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("---------- SOCIO BAT ----------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetInt("HVD_RECHAZO") = 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Else If s.GetInt("HVD_RECHAZO") > 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + Printer1.Justify = 0 + s.Close + + + Printer1.WriteString(" " & CRLF) + + + Printer1.WriteString("------------------------------" & CRLF) Printer1.WriteString("Total Articulos: " & (L_CANT.Text.Replace(",","") -restacobranza) & CRLF) Printer1.WriteString("Total: $" & l_total.Text) Printer1.WriteString(" " & CRLF) + + If almacen = "81" Then + Printer1.WriteString("Telefono de atención:" & CRLF) + Printer1.WriteString("" & CRLF) + End If + Printer1.WriteString("------------------------------" & CRLF) Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF) Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF) Printer1.WriteString("--------INFORMATIVO-----------" & CRLF) Printer1.WriteString("------------------------------" & CRLF) + + Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) @@ -1145,7 +1576,7 @@ Sub Printer1_Connected (Success As Boolean) ToastMessageShow("Impresora conectada", False) Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP",Starter.mac_impresora)) - LogColor("Impresora conectada", Colors.Green) +' If logger Then LogColor("Impresora conectada", Colors.Green) ' B_IMP2.Enabled = True impresoraConectada = True Else @@ -1160,12 +1591,16 @@ Sub Printer1_Connected (Success As Boolean) End If End Sub +Sub Printer1_Error + Log("error printer") +End Sub + Sub Printer_Connected (Success As Boolean) If Success Then - B_IMP.Enabled = True +' B_IMP.Enabled = True PASA_IMP = "1" Else - B_IMP.Enabled = False +' B_IMP.Enabled = False If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore StartPrinter End If @@ -1174,7 +1609,7 @@ End Sub Sub StartPrinter Dim PairedDevices As Map - Dim L As List + Dim L1 As List Dim resimp As Int ToastMessageShow("Printing.....",True) PairedDevices.Initialize @@ -1185,32 +1620,33 @@ Sub StartPrinter printer.Close cmp20.Disconnect End Try + If PairedDevices.Size = 0 Then Msgbox("Error Connecting to Printer - Printer Not Found","") 'ignore Return End If + If PairedDevices.Size = 1 Then Try - 'FLEOS - cmp20.ConnectInsecure(btAdmin,PairedDevices.Get(PairedDevices.GetKeyAt(0)),1) - 'cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) + cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) Catch Msgbox("Connecting","Printer Error") 'ignore printer.Close cmp20.Disconnect End Try Else - L.Initialize + L1.Initialize For i = 0 To PairedDevices.Size - 1 - L.Add(PairedDevices.GetKeyAt(i)) + L1.Add(PairedDevices.GetKeyAt(i)) Next - resimp = InputList(L, "Choose device", -1) 'ignore + resimp = InputList(L1, "Choose device", -1) 'ignore If resimp <> DialogResponse.CANCEL Then - cmp20.Connect(PairedDevices.Get(L.Get(resimp))) + cmp20.Connect(PairedDevices.Get(L1.Get(resimp))) End If End If End Sub + Sub B_PASO2_Click DateTime.DateFormat = "MM/dd/yyyy" sDate=DateTime.Date(DateTime.Now) @@ -1356,11 +1792,29 @@ Private Sub p_credito_Click End Sub +Private Sub cb_tipopago_SelectedIndexChanged (Index As Int) + itemselect = cb_tipopago.SelectedItem +End Sub + Private Sub b_cxc_Click tipo_abonox = "cxc" + Folio = "" h = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") h.Position = 0 Log(h.GetString("CUENTA")) + + Dim Items As List + Items.Initialize + + Items.Add("SELECCIONA UNA OPCION") + Items.Add("TRANSFERENCIA") + Items.Add("EFECTIVO") + Items.Add("CHEQUE") + + cb_tipopago.SetItems(Items) + + itemselect= "SELECCIONA UNA OPCION" + j = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(h.GetString("CUENTA"))) j.position = 0 Log(j.RowCount) @@ -1370,22 +1824,26 @@ Private Sub b_cxc_Click Dim total As Double = 0 f = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") f.Position = 0 - d = Starter.skmt.ExecQuery2("SELECT NOTA, SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ? AND SALDO_PENDIENTE <> 0", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT NOTA, SALDO_PENDIENTE,FECHA_PREVENTA FROM ABONOSP WHERE CLIENTE = ? AND SALDO_PENDIENTE <> 0 ORDER BY FECHA_PREVENTA DESC", Array As String (f.GetString("CUENTA"))) clv_abonos.Clear For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem(d.GetString("NOTA"),"$ " & d.GetString("SALDO_PENDIENTE")),i) + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) AND a_ticket = ?", Array As String(d.GetString("NOTA"))) + Log(Folio) + y.position = 0 + + clv_abonos.Add(CreateListItem(d.GetString("NOTA"),"$ " &NumberFormat2(d.GetString("SALDO_PENDIENTE")-y.GetString("a_abono"),0,2,2,False),d.GetString("FECHA_PREVENTA")),i) Log(d.GetString("NOTA")) Log(d.GetString("SALDO_PENDIENTE")) total = total + d.GetString("SALDO_PENDIENTE") Log(total) Next d.Close - d = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ? and a_tipoabono is null", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT a_abono,a_fecha FROM ABONOS WHERE a_cliente = ? and a_tipoabono is null ORDER BY a_fecha DESC ", Array As String (f.GetString("CUENTA"))) If d.RowCount > 0 Then For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono")),i) + clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono"),d.GetString("a_fecha")),i) total = total - d.GetString("a_abono") Log(total) Next @@ -1399,22 +1857,26 @@ Private Sub b_cxc_Click Dim total As Double = 0 f = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") f.Position = 0 - d = Starter.skmt.ExecQuery2("SELECT NOTA, SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE = ? AND SALDO_PENDIENTE <> 0", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT NOTA, SALDO_PENDIENTE,FECHA_PREVENTA FROM ABONOSP WHERE CLIENTE = ? AND SALDO_PENDIENTE <> 0 ORDER BY FECHA_PREVENTA DESC", Array As String (f.GetString("CUENTA"))) clv_abonos.Clear For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem(d.GetString("NOTA"),"$ " & d.GetString("SALDO_PENDIENTE")),i) + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) AND a_ticket = ?", Array As String(d.GetString("NOTA"))) + Log(Folio) + y.position = 0 + + clv_abonos.Add(CreateListItem(d.GetString("NOTA"),"$ " & NumberFormat2(d.GetString("SALDO_PENDIENTE")-y.GetString("a_abono"),0,2,2,False),d.GetString("FECHA_PREVENTA")),i) Log(d.GetString("NOTA")) Log(d.GetString("SALDO_PENDIENTE")) total = total + d.GetString("SALDO_PENDIENTE") Log(total) Next d.Close - d = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ? and a_tipoabono is null", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT a_abono,a_fecha FROM ABONOS WHERE a_cliente = ? and a_tipoabono is null ORDER BY a_fecha DESC", Array As String (f.GetString("CUENTA"))) If d.RowCount > 0 Then For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono")),i) + clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono"),d.GetString("a_fecha")),i) total = total - d.GetString("a_abono") Log(total) Next @@ -1432,20 +1894,125 @@ Private Sub p_abono_Click End Sub -Sub CreateListItem(mostrar As String, mostrar1 As String) As Panel +'Sub CreateListItem(mostrar As String, mostrar1 As String, mostrar2 As String) As Panel +' Dim p As B4XView = xui.CreatePanel("") +' p.SetLayoutAnimated(0, 0, 0, 1, 10) +' p.LoadLayout("folioabono") +' p.Height= 32dip +' p.Width = 80dip +'' p.Width = clv_orden.GetBase.Width +' l_folio.Text = mostrar +' l_saldo.Text = mostrar1 +' l_fecha.Text = mostrar2 +'' cxc.Text = mostrar3 + '' Log(p.Width) +' Return p +'End Sub + +'Sub CreateListItem(mostrar As String, mostrar1 As String, mostrar2 As String) As Panel +' Dim p As B4XView = xui.CreatePanel("") +' p.SetLayoutAnimated(0, 0, 0, 1, 10) +' p.LoadLayout("folioabono") +' p.Height= 32dip +' p.Width = 80dip +' +' l_folio.Text = mostrar +' l_saldo.Text = mostrar1 +' l_fecha.Text = mostrar2 +' +' CheckBox1.Checked = False +' p.Tag = mostrar +' Return p +'End Sub + + + +' Evento del checkbox +'Sub CheckBox1_CheckedChange(Checked As Boolean) +' Dim chk As CheckBox = Sender +' +' If Checked Then +' For i = 0 To clv_abonos.Size - 1 +' Dim p As Panel = clv_abonos.GetPanel(i) +' Log("Folio: " & p.Tag) +' +' ' OBTENER EL TEXTO DIRECTAMENTE DEL TAG +' +' ' Buscar y desmarcar otros checkboxes... +' For Each v As View In p.GetAllViewsRecursive +' If v Is CheckBox Then +' Dim otherChk As CheckBox = v +' If otherChk <> chk Then +' otherChk.Checked = False +' End If +' Exit +' End If +' Next +' Next +' End If +'End Sub + + +Sub CreateListItem(mostrar As String, mostrar1 As String, mostrar2 As String) As Panel Dim p As B4XView = xui.CreatePanel("") p.SetLayoutAnimated(0, 0, 0, 1, 10) p.LoadLayout("folioabono") p.Height= 32dip p.Width = 80dip -' p.Width = clv_orden.GetBase.Width + Folio = "" l_folio.Text = mostrar l_saldo.Text = mostrar1 -' cxc.Text = mostrar3 -' Log(p.Width) + l_fecha.Text = mostrar2 + If mostrar = "ABONO" Then + CheckBox1.Visible = False + Else + CheckBox1.Visible = True + End If + ' Guardar referencia al label en el Tag del checkbox + CheckBox1.Tag = l_folio + Return p End Sub +Sub CheckBox1_CheckedChange(Checked As Boolean) + If ChangingCheckboxesProgrammatically Then Return + + Dim chk As CheckBox = Sender + + If Checked Then + ' Obtener directamente el label desde el Tag del checkbox + Dim l_folio As Label = chk.Tag + Log("Folio seleccionado: " & l_folio.Text) + Folio = l_folio.Text + ' Indicar que estamos cambiando checkboxes programáticamente + ChangingCheckboxesProgrammatically = True + + ' Desmarcar todos los demás checkboxes + For i = 0 To clv_abonos.Size - 1 + Dim p As Panel = clv_abonos.GetPanel(i) + Dim panelCheckbox As CheckBox = GetCheckboxFromPanel(p) + + If panelCheckbox <> Null And panelCheckbox <> chk Then + panelCheckbox.Checked = False + End If + Next + + ' Restaurar flag + ChangingCheckboxesProgrammatically = False + End If +End Sub + +Sub GetCheckboxFromPanel(p As Panel) As CheckBox + For Each v As View In p.GetAllViewsRecursive + If v Is CheckBox Then + Return v + End If + Next + Return Null + End Sub + + + Private Sub b_cancelar_Click et_abono.Text = "" p_abono.Visible = False @@ -1455,21 +2022,81 @@ End Sub Private Sub b_abono_Click ' p_abono.Visible = False If et_abono.Text <> "" Then - If et_abono.text > l_montoabonostotal.text Then - MsgboxAsync("El monto a abonar no puede ser mayor que el monto total","Atención" ) + If almacen = 92 Then + + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) AND a_ticket = ?", Array As String(Folio)) + Log(Folio) + y.position = 0 + Dim u As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(SALDO_PENDIENTE),0) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND NOTA = ?", Array As String(Folio)) + u.Position = 0 + + If y.GetString("a_abono") > 0 Then + Log((u.GetString("SALDO_PENDIENTE") + y.GetString("a_abono"))) + If et_abono.text >= (u.GetString("SALDO_PENDIENTE") - y.GetString("a_abono")) Then + MsgboxAsync("El monto a abonar no puede ser mayor que el monto del pagare seleccionado","Atención" ) + Else + If et_abono.Text <> "" And et_abono.Text > 0 Then + If itemselect <> "SELECCIONA UNA OPCION" Then + If Folio <> "" Then + Msgbox2Async($"¿Seguro que quieres realizar un abono de $${et_abono.text} para este cliente?"$, "Guardar Abono", "Guardar", "Cancelar", "", Null, True) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare + End If + Else + MsgboxAsync("Por favor selecciona un pagare para aplicar el pago","Atención") + End If + Else + MsgboxAsync("Por favor selecciona un metodo de pago","Atención") + End If + End If + End If + Else + + Log("entramos aqui") + If Folio <> "" Then + If et_abono.text >= u.GetString("SALDO_PENDIENTE") Then + MsgboxAsync("El monto a abonar no puede ser mayor que el monto del pagare seleccionado","Atención" ) + Else + If et_abono.Text <> "" And et_abono.Text > 0 Then + If itemselect <> "SELECCIONA UNA OPCION" Then + + Msgbox2Async($"¿Seguro que quieres realizar un abono de $${et_abono.text} para este cliente?"$, "Guardar Abono", "Guardar", "Cancelar", "", Null, True) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare + End If + + Else + MsgboxAsync("Por favor selecciona un metodo de pago","Atención") + End If + End If + End If + Else + MsgboxAsync("Por favor selecciona un pagare para aplicar el pago","Atención") + End If + End If + Else - If et_abono.Text <> "" And et_abono.Text > 0 Then + + If et_abono.text > l_montoabonostotal.text Then + MsgboxAsync("El monto a abonar no puede ser mayor que el monto total","Atención" ) + Else + If et_abono.Text <> "" And et_abono.Text > 0 Then + If itemselect <> "SELECCIONA UNA OPCION" Then + If Folio <> "" Then + ' Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") ' k.Position = 0 ' Log(k.GetString("CUENTA")) ' Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(k.GetString("CUENTA"))) ' y.position = 0 ' If y.RowCount = 0 Then - Msgbox2Async($"¿Seguro que quieres realizar un abono de $${et_abono.text} para este cliente?"$, "Guardar Abono", "Guardar", "Cancelar", "", Null, True) - Wait For Msgbox_Result (resultado As Int) - If resultado = DialogResponse.POSITIVE Then - imprime_abonopagare - End If + Msgbox2Async($"¿Seguro que quieres realizar un abono de $${et_abono.text} para este cliente?"$, "Guardar Abono", "Guardar", "Cancelar", "", Null, True) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare + End If ' Else If et_abono.Text > y.GetString("a_abono") Then ' Msgbox2Async($"¿Seguro que quieres realizar un abono de $${et_abono.text} para este cliente?"$, "Guardar Abono", "Guardar", "Cancelar", "", Null, True) ' Wait For Msgbox_Result (resultado As Int) @@ -1484,6 +2111,13 @@ Private Sub b_abono_Click ' MsgboxAsync("El pago no puede ser menor al monto capturado.","Atención") ' et_abono.Text = "" ' End If + Else + MsgboxAsync("Por favor selecciona un pagare para aplicar el pago","Atención") + End If + Else + MsgboxAsync("Por favor selecciona un metodo de pago","Atención") + End If + End If End If End If End If @@ -1519,31 +2153,59 @@ Sub imprime_abonopagare sDate=DateTime.Date(DateTime.Now) sTime=DateTime.Time(DateTime.Now) c.Close +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) +' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else +' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) +' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + ProgressDialogShow("Imprimiendo, un momento ...") Printer1.DisConnect If Not(Printer1.IsConnected) Then - Log("Conectando a impresora ...") +' If logger Then Log("conectando 1") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Sleep(1000) - Log("++++++ " & cont) cont = cont + 1 - If cont = 2 Then Printer1.Connect 'Tratamos de reconectar - If cont > 3 Then impresoraConectada = True + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False Else - Log("conectando 2") +' If logger Then Log("conectando 2") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) Sleep(1000) - Log("****** " & cont) cont = cont + 1 If cont = 2 Then Printer1.Connect - If cont > 3 Then impresoraConectada = True + If cont > 4 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False @@ -1583,6 +2245,7 @@ Sub imprime_abonopagare Printer1.WriteString(" " & CRLF) Dim notaabono As String Dim saldopendiente As Double + Dim saldopendiente2 As Double If tipo_abonox = "abono" Then @@ -1597,7 +2260,7 @@ Sub imprime_abonopagare c = Starter.skmt.ExecQuery($"select iFNULL(sum(PA_MONTO),0) AS SALDO_PENDIENTE from PAGARES where PA_CLIENTE = '${la_cuenta.Text}'"$) If c.RowCount > 0 Then c.Position = 0 - saldopendiente = c.GetString("SALDO_PENDIENTE") + saldopendiente = c.GetDouble("SALDO_PENDIENTE") Log(c.GetString("SALDO_PENDIENTE")) End If c.Close @@ -1608,7 +2271,9 @@ Sub imprime_abonopagare If c4.RowCount > 0 Then c4.Position = 0 Dim c5 As Cursor= Starter.skmt.ExecQuery("SELECT Ifnull(a_abono,0) AS SALDO_PENDIENTE FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) and a_tipoabono is not null") - saldopendiente1 = c4.GetString("SALDO_PENDIENTE") + saldopendiente1 = c4.GetDouble("SALDO_PENDIENTE") + + End If c4.Close @@ -1617,7 +2282,7 @@ Sub imprime_abonopagare If c.RowCount > 0 Then c.Position = 0 notaabono = c.GetString("NOTA") - saldopendiente = c.GetString("SALDO_PENDIENTE") + saldopendiente = c.GetDouble("SALDO_PENDIENTE") End If c.Close @@ -1626,9 +2291,27 @@ Sub imprime_abonopagare If c4.RowCount > 0 Then c4.Position = 0 Dim c5 As Cursor= Starter.skmt.ExecQuery("SELECT Ifnull(a_abono,0) AS SALDO_PENDIENTE FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) and a_tipoabono is null") - saldopendiente1 = c4.GetString("SALDO_PENDIENTE") + saldopendiente1 = c4.GetDouble("SALDO_PENDIENTE") End If c4.Close + + + c = Starter.skmt.ExecQuery2("SELECT SUM(SALDO_PENDIENTE) AS SALDO_PENDIENTE FROM ABONOSP WHERE CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND NOTA = ?",Array As String(Folio)) + If c.RowCount > 0 Then + c.Position = 0 + saldopendiente2 = c.GetDouble("SALDO_PENDIENTE") + End If + c.Close + + Dim saldopendiente3 As Double = 0 + Dim c4 As Cursor= Starter.skmt.ExecQuery2("SELECT Ifnull(SUM(a_abono),0) AS SALDO_PENDIENTE FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) and a_tipoabono is null AND a_ticket = ?",Array As String(Folio)) + If c4.RowCount > 0 Then + c4.Position = 0 +' Dim c5 As Cursor= Starter.skmt.ExecQuery("SELECT Ifnull(a_abono,0) AS SALDO_PENDIENTE FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) and a_tipoabono is null") + saldopendiente3 = c4.GetDouble("SALDO_PENDIENTE") + End If + c4.Close + End If @@ -1638,13 +2321,15 @@ Sub imprime_abonopagare ' c.Position = 0 ' notaabono = c.GetString("NOTA") ' End If + Dim numpago As Int = c5.RowCount + 1 Log(notaabono) Log(et_abono.Text) Printer1.WriteString("Comprobante de pago del pagare" & CRLF) - Printer1.WriteString("Folio: " & notaabono &"-"&(c5.RowCount)& CRLF) - Printer1.WriteString("Monto deuda: " & (NumberFormat(saldopendiente - saldopendiente1,0,2)) & CRLF) + Printer1.WriteString("Folio: " & Folio &"-"&(numpago)& CRLF) + Printer1.WriteString("Monto deuda: " & (NumberFormat(saldopendiente2 - saldopendiente3,0,2)) & CRLF) Printer1.WriteString("Monto abono: " & (NumberFormat(et_abono.Text,0,2)) & CRLF) - Printer1.WriteString("Restante: " &(NumberFormat(saldopendiente-et_abono.Text - saldopendiente1,0,2)) & CRLF) + Printer1.WriteString("Restante "&Folio&": " &(NumberFormat(saldopendiente2-et_abono.Text - saldopendiente3,0,2)) & CRLF) + Printer1.WriteString("Restante pagares: " &(NumberFormat(saldopendiente-et_abono.Text - saldopendiente1,0,2)) & CRLF) Printer1.WriteString("Fecha Abono: " & sDate & CRLF) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) @@ -1660,7 +2345,21 @@ Sub imprime_abonopagare Printer1.WriteString(" " & CRLF) DateTime.DateFormat = "ddMMyyyy" sDate=DateTime.Date(DateTime.Now) - Printer1.WriteBarCode("I",notaabono&sDate) + + +' Items.Add("TRANSFERENCIA") +' Items.Add("EFECTIVO") +' Items.Add("CHEQUE") + Dim tipopagotick As String = "" + If itemselect = "TRANSFERENCIA" Then + tipopagotick = "T" + Else If itemselect = "EFECTIVO" Then + tipopagotick = "E" + Else If itemselect = "CHEQUE" Then + tipopagotick = "C" + End If + + Printer1.WriteBarCode("I",notaabono&sDate&tipopagotick&numpago) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) @@ -1668,148 +2367,294 @@ Sub imprime_abonopagare Printer1.DisConnect ProgressDialogHide - If tipo_abonox = "abono" Then - Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) + If Subs.traeAlmacen = "92" Then + +''mayoreo + If tipo_abonox = "abono" Then + Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) - Wait For Msgbox_Result (resultado As Int) - If resultado = DialogResponse.POSITIVE Then - imprime_abonopagare - Else - p_abono.Visible = False - Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,a_tipoabono) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}', 1)"$) - ToastMessageShow("Abono guardado", False) - End If + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare + Else + p_abono.Visible = False + Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,a_tipoabono,TIPO_PAGO,a_ticket,a_numpago) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}', 1,'${itemselect}','${Folio}','${numpago}')"$) + ToastMessageShow("Abono guardado", False) + End If - Else If tipo_abonox = "cxc" Then - Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) - Wait For Msgbox_Result (resultado As Int) - If resultado = DialogResponse.POSITIVE Then - imprime_abonopagare + Else If tipo_abonox = "cxc" Then + Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare ' p_abono.Visible = False ' Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}')"$) ' ToastMessageShow("Abono guardado", False) - Else - - h = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") - h.Position = 0 - Log(h.GetString("CUENTA")) - j = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(h.GetString("CUENTA"))) - j.position = 0 - If j.RowCount = 0 Then - p_abono.Visible = False - Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}')"$) - ToastMessageShow("Abono guardado", False) - Dim rutaactualizar As String - Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - If rut.RowCount > 0 Then - rut.Position = 0 - rutaactualizar = rut.GetString("CAT_CL_RUTA") - End If - Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 0, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) - Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) - Private c3 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PEDIDO WHERE PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA)") - If c3.RowCount = 0 Then - Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 0, HVD_RECHAZOCANT = 0, BCAJAS = BCAJAS_OR, CANTC = CANTC_OR WHERE HVD_cliente in (Select CUENTA from cuentaa)"$) - B4XPage_Appear - Else - MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") - End If - Dim textedit As Double = et_abono.Text - Dim sumaresta As Double = saldopendiente-textedit-saldopendiente1 - Log(NumberFormat2(sumaresta,0,2,2,False)) - If NumberFormat2(sumaresta,0,2,2,False) <> "-.00" Then - If NumberFormat2(sumaresta,0,2,2,False) <> ".00" Then - Dim rutaactualizar As String - Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - If rut.RowCount > 0 Then - rut.Position = 0 - rutaactualizar = rut.GetString("CAT_CL_RUTA") - End If - Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 3, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) - Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) - Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON,NV_FOTO,NV_REPROGRAMAR) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (la_cuenta.Text,sDate & sTime, usuario, "PAGO INCOMPLETO","PAGO INCOMPLETO", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,rutaactualizar,0)) - Starter.skmt.ExecNonQuery("update HIST_VENTAS SET HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT, HVD_RECHAZOCANTC = CANTC, BCAJAS = 0 , CANTC = 0 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT WHERE HVD_PROID = HVD_CODPROMO and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) - Starter.skmt.ExecNonQuery("DELETE FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") - d.Position = 0 - Dim ruta As String = d.GetString("RUTAA") - d.Close - d = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - d.Position = 0 - Dim rutapre As String = d.GetString("CAT_CL_RUTA") - d.Close - d = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - d.Position = 0 - Dim fechaprev As String = d.GetString("HVD_FECHA") - d.Close - d = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") - d.Position = 0 - Starter.skmt.ExecNonQuery2("INSERT INTO REPARTO_GEO (CLIENTE, USUARIO, FECHA_PUNTEO, LATITUD, LONGITUD, ALMACEN, RUTA_REPARTO, RUTA_PREV, FECHA_PREVENTA, MOTIVO, COMENTARIO,TIPO,ENVIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0)",Array As String (cuenta, usuario, sDate &" "&sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,B4XPages.MainPage.almacen,ruta,rutapre,fechaprev, "PAGO INCOMPLETO", "PAGO INCOMPLETO","NO ENTREGADO")) - B4XPages.ShowPage("Principal") - End If - End If Else - p_abono.Visible = False - Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}')"$) - ToastMessageShow("Abono guardado", False) - Dim rutaactualizar As String - Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - If rut.RowCount > 0 Then - rut.Position = 0 - rutaactualizar = rut.GetString("CAT_CL_RUTA") - End If - Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 0, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) - Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) - Private c3 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PEDIDO WHERE PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA)") - If c3.RowCount = 0 Then - Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 0, HVD_RECHAZOCANT = 0, BCAJAS = BCAJAS_OR, CANTC = CANTC_OR WHERE HVD_cliente in (Select CUENTA from cuentaa)"$) - B4XPage_Appear - Else - MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") - End If - Dim textedit As Double = et_abono.Text - Dim sumaresta As Double = saldopendiente-textedit-saldopendiente1 -' Log(NumberFormat2(sumaresta,0,2,2,False)) - If NumberFormat2(sumaresta,0,2,2,False) <> "-.00" Then - If NumberFormat2(sumaresta,0,2,2,False) <> ".00" Then - Dim rutaactualizar As String - Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - If rut.RowCount > 0 Then - rut.Position = 0 - rutaactualizar = rut.GetString("CAT_CL_RUTA") - End If - Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 3, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) - Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) - Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON,NV_FOTO,NV_REPROGRAMAR) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (la_cuenta.Text,sDate & sTime, usuario, "PAGO INCOMPLETO","PAGO INCOMPLETO", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,rutaactualizar,0)) - Starter.skmt.ExecNonQuery("update HIST_VENTAS SET HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT, HVD_RECHAZOCANTC = CANTC, BCAJAS = 0 , CANTC = 0 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT WHERE HVD_PROID = HVD_CODPROMO and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) - Starter.skmt.ExecNonQuery("DELETE FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") - d.Position = 0 - Dim ruta As String = d.GetString("RUTAA") - d.Close - d = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") - d.Position = 0 - Dim rutapre As String = d.GetString("CAT_CL_RUTA") - d.Close - d = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - d.Position = 0 - Dim fechaprev As String = d.GetString("HVD_FECHA") - d.Close - d = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") - d.Position = 0 - Starter.skmt.ExecNonQuery2("INSERT INTO REPARTO_GEO (CLIENTE, USUARIO, FECHA_PUNTEO, LATITUD, LONGITUD, ALMACEN, RUTA_REPARTO, RUTA_PREV, FECHA_PREVENTA, MOTIVO, COMENTARIO,TIPO,ENVIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0)",Array As String (cuenta, usuario, sDate &" "&sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,B4XPages.MainPage.almacen,ruta,rutapre,fechaprev, "PAGO INCOMPLETO", "PAGO INCOMPLETO","NO ENTREGADO")) - B4XPages.ShowPage("Principal") + + h = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") + h.Position = 0 + Log(h.GetString("CUENTA")) + j = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(h.GetString("CUENTA"))) + j.position = 0 + If j.RowCount = 0 Then + p_abono.Visible = False + Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,TIPO_PAGO,a_ticket,a_numpago) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}','${itemselect}','${Folio}','${numpago}')"$) + ToastMessageShow("Abono guardado", False) + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If + Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 0, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) + Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) + Private c3 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PEDIDO WHERE PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA)") + If c3.RowCount = 0 Then + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 0, HVD_RECHAZOCANT = 0, BCAJAS = BCAJAS_OR, CANTC = CANTC_OR WHERE HVD_cliente in (Select CUENTA from cuentaa)"$) + B4XPage_Appear + Else + MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") + End If + Dim textedit As Double = et_abono.Text + Dim sumaresta As Double = saldopendiente-textedit-saldopendiente1 + Log(NumberFormat2(sumaresta,0,2,2,False)) + If NumberFormat2(sumaresta,0,2,2,False) <> "-.00" Then + If NumberFormat2(sumaresta,0,2,2,False) <> ".00" Then + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If +' Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 3, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) +' Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) +' Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON,NV_FOTO,NV_REPROGRAMAR) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (la_cuenta.Text,sDate & sTime, usuario, "PAGO INCOMPLETO","PAGO INCOMPLETO", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,rutaactualizar,0)) +' Starter.skmt.ExecNonQuery("update HIST_VENTAS SET HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT, HVD_RECHAZOCANTC = CANTC, BCAJAS = 0 , CANTC = 0 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT WHERE HVD_PROID = HVD_CODPROMO and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) +' Starter.skmt.ExecNonQuery("DELETE FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") +' d.Position = 0 +' Dim ruta As String = d.GetString("RUTAA") +' d.Close +' d = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") +' d.Position = 0 +' Dim rutapre As String = d.GetString("CAT_CL_RUTA") +' d.Close +' d = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' d.Position = 0 +' Dim fechaprev As String = d.GetString("HVD_FECHA") +' d.Close +' d = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") +' d.Position = 0 +' Starter.skmt.ExecNonQuery2("INSERT INTO REPARTO_GEO (CLIENTE, USUARIO, FECHA_PUNTEO, LATITUD, LONGITUD, ALMACEN, RUTA_REPARTO, RUTA_PREV, FECHA_PREVENTA, MOTIVO, COMENTARIO,TIPO,ENVIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0)",Array As String (cuenta, usuario, sDate &" "&sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,B4XPages.MainPage.almacen,ruta,rutapre,fechaprev, "PAGO INCOMPLETO", "PAGO INCOMPLETO","NO ENTREGADO")) +' B4XPages.ShowPage("Principal") + End If + End If + Else + p_abono.Visible = False + Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,TIPO_PAGO,a_ticket,a_numpago) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}','${itemselect}','${Folio}','${numpago}')"$) + ToastMessageShow("Abono guardado", False) + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If + Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 0, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) + Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) + Private c3 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PEDIDO WHERE PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA)") + If c3.RowCount = 0 Then + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 0, HVD_RECHAZOCANT = 0, BCAJAS = BCAJAS_OR, CANTC = CANTC_OR WHERE HVD_cliente in (Select CUENTA from cuentaa)"$) + B4XPage_Appear + Else + MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") + End If + Dim textedit As Double = et_abono.Text + Dim sumaresta As Double = saldopendiente-textedit-saldopendiente1 +' Log(NumberFormat2(sumaresta,0,2,2,False)) + If NumberFormat2(sumaresta,0,2,2,False) <> "-.00" Then + If NumberFormat2(sumaresta,0,2,2,False) <> ".00" Then + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If +' Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 3, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) +' Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) +' Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON,NV_FOTO,NV_REPROGRAMAR) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (la_cuenta.Text,sDate & sTime, usuario, "PAGO INCOMPLETO","PAGO INCOMPLETO", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,rutaactualizar,0)) +' Starter.skmt.ExecNonQuery("update HIST_VENTAS SET HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT, HVD_RECHAZOCANTC = CANTC, BCAJAS = 0 , CANTC = 0 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT WHERE HVD_PROID = HVD_CODPROMO and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) +' Starter.skmt.ExecNonQuery("DELETE FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") +' d.Position = 0 +' Dim ruta As String = d.GetString("RUTAA") +' d.Close +' d = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") +' d.Position = 0 +' Dim rutapre As String = d.GetString("CAT_CL_RUTA") +' d.Close +' d = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' d.Position = 0 +' Dim fechaprev As String = d.GetString("HVD_FECHA") +' d.Close +' d = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") +' d.Position = 0 +' Starter.skmt.ExecNonQuery2("INSERT INTO REPARTO_GEO (CLIENTE, USUARIO, FECHA_PUNTEO, LATITUD, LONGITUD, ALMACEN, RUTA_REPARTO, RUTA_PREV, FECHA_PREVENTA, MOTIVO, COMENTARIO,TIPO,ENVIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0)",Array As String (cuenta, usuario, sDate &" "&sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,B4XPages.MainPage.almacen,ruta,rutapre,fechaprev, "PAGO INCOMPLETO", "PAGO INCOMPLETO","NO ENTREGADO")) +' B4XPages.ShowPage("Principal") + End If End If - End If + End If End If End If + +''mayoreo + + Else + If tipo_abonox = "abono" Then + Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare + Else + p_abono.Visible = False + Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,a_tipoabono,TIPO_PAGO,a_ticket,a_numpago) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}', 1,'${itemselect}','${Folio}','${numpago}')"$) + ToastMessageShow("Abono guardado", False) + End If + + Else If tipo_abonox = "cxc" Then + Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + imprime_abonopagare +' p_abono.Visible = False +' Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}')"$) +' ToastMessageShow("Abono guardado", False) + Else + + h = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") + h.Position = 0 + Log(h.GetString("CUENTA")) + j = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ?", Array As String(h.GetString("CUENTA"))) + j.position = 0 + If j.RowCount = 0 Then + p_abono.Visible = False + Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,TIPO_PAGO,a_ticket,a_numpago) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}','${itemselect}','${Folio}','${numpago}')"$) + ToastMessageShow("Abono guardado", False) + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If + Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 0, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) + Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) + Private c3 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PEDIDO WHERE PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA)") + If c3.RowCount = 0 Then + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 0, HVD_RECHAZOCANT = 0, BCAJAS = BCAJAS_OR, CANTC = CANTC_OR WHERE HVD_cliente in (Select CUENTA from cuentaa)"$) + B4XPage_Appear + Else + MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") + End If + Dim textedit As Double = et_abono.Text + Dim sumaresta As Double = saldopendiente-textedit-saldopendiente1 + Log(NumberFormat2(sumaresta,0,2,2,False)) + If NumberFormat2(sumaresta,0,2,2,False) <> "-.00" Then + If NumberFormat2(sumaresta,0,2,2,False) <> ".00" Then + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If + Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 3, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) + Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) + Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON,NV_FOTO,NV_REPROGRAMAR) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (la_cuenta.Text,sDate & sTime, usuario, "PAGO INCOMPLETO","PAGO INCOMPLETO", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,rutaactualizar,0)) + Starter.skmt.ExecNonQuery("update HIST_VENTAS SET HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT, HVD_RECHAZOCANTC = CANTC, BCAJAS = 0 , CANTC = 0 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT WHERE HVD_PROID = HVD_CODPROMO and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) + Starter.skmt.ExecNonQuery("DELETE FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") + d.Position = 0 + Dim ruta As String = d.GetString("RUTAA") + d.Close + d = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + d.Position = 0 + Dim rutapre As String = d.GetString("CAT_CL_RUTA") + d.Close + d = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + d.Position = 0 + Dim fechaprev As String = d.GetString("HVD_FECHA") + d.Close + d = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") + d.Position = 0 + Starter.skmt.ExecNonQuery2("INSERT INTO REPARTO_GEO (CLIENTE, USUARIO, FECHA_PUNTEO, LATITUD, LONGITUD, ALMACEN, RUTA_REPARTO, RUTA_PREV, FECHA_PREVENTA, MOTIVO, COMENTARIO,TIPO,ENVIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0)",Array As String (cuenta, usuario, sDate &" "&sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,B4XPages.MainPage.almacen,ruta,rutapre,fechaprev, "PAGO INCOMPLETO", "PAGO INCOMPLETO","NO ENTREGADO")) + B4XPages.ShowPage("Principal") + End If + End If + Else + p_abono.Visible = False + Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha,TIPO_PAGO,a_ticket,a_numpago) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}','${itemselect}','${Folio}','${numpago}')"$) + ToastMessageShow("Abono guardado", False) + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If + Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 0, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) + Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) + Private c3 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PEDIDO WHERE PE_CLIENTEOR IN (SELECT CUENTA FROM CUENTAA)") + If c3.RowCount = 0 Then + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 0, HVD_RECHAZOCANT = 0, BCAJAS = BCAJAS_OR, CANTC = CANTC_OR WHERE HVD_cliente in (Select CUENTA from cuentaa)"$) + B4XPage_Appear + Else + MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención") + End If + Dim textedit As Double = et_abono.Text + Dim sumaresta As Double = saldopendiente-textedit-saldopendiente1 +' Log(NumberFormat2(sumaresta,0,2,2,False)) + If NumberFormat2(sumaresta,0,2,2,False) <> "-.00" Then + If NumberFormat2(sumaresta,0,2,2,False) <> ".00" Then + Dim rutaactualizar As String + Dim rut As Cursor = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If rut.RowCount > 0 Then + rut.Position = 0 + rutaactualizar = rut.GetString("CAT_CL_RUTA") + End If + Starter.skmt.ExecNonQuery($"UPDATE kmt_info set gestion = 3, HORAENT = '${sDate & " " & sTime}' where CAT_CL_CODIGO In (select cuenta from cuentaa) and CAT_CL_RUTA = '${rutaactualizar}'"$) + Starter.skmt.ExecNonQuery($"DELETE FROM NOVENTA WHERE NV_CLIENTE IN (select cuenta from cuentaa)"$) + Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON,NV_FOTO,NV_REPROGRAMAR) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object (la_cuenta.Text,sDate & sTime, usuario, "PAGO INCOMPLETO","PAGO INCOMPLETO", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,rutaactualizar,0)) + Starter.skmt.ExecNonQuery("update HIST_VENTAS SET HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT, HVD_RECHAZOCANTC = CANTC, BCAJAS = 0 , CANTC = 0 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT WHERE HVD_PROID = HVD_CODPROMO and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) + Starter.skmt.ExecNonQuery("DELETE FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") + d.Position = 0 + Dim ruta As String = d.GetString("RUTAA") + d.Close + d = Starter.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + d.Position = 0 + Dim rutapre As String = d.GetString("CAT_CL_RUTA") + d.Close + d = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + d.Position = 0 + Dim fechaprev As String = d.GetString("HVD_FECHA") + d.Close + d = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") + d.Position = 0 + Starter.skmt.ExecNonQuery2("INSERT INTO REPARTO_GEO (CLIENTE, USUARIO, FECHA_PUNTEO, LATITUD, LONGITUD, ALMACEN, RUTA_REPARTO, RUTA_PREV, FECHA_PREVENTA, MOTIVO, COMENTARIO,TIPO,ENVIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0)",Array As String (cuenta, usuario, sDate &" "&sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,B4XPages.MainPage.almacen,ruta,rutapre,fechaprev, "PAGO INCOMPLETO", "PAGO INCOMPLETO","NO ENTREGADO")) + B4XPages.ShowPage("Principal") + End If + End If + + End If + End If + End If End If -' printer.Flush - ' printer.Close + + End Sub Sub imprime_pagare @@ -1820,31 +2665,59 @@ Sub imprime_pagare sDate=DateTime.Date(DateTime.Now) sTime=DateTime.Time(DateTime.Now) c.Close +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +'' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) +'' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else +'' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) +'' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + ProgressDialogShow("Imprimiendo, un momento ...") Printer1.DisConnect If Not(Printer1.IsConnected) Then -' Log("Conectando a impresora ...") +' If logger Then Log("conectando 1") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Sleep(1000) -' Log("++++++ " & cont) cont = cont + 1 - If cont = 2 Then Printer1.Connect 'Tratamos de reconectar - If cont > 3 Then impresoraConectada = True + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False Else -' Log("conectando 2") +' If logger Then Log("conectando 2") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) Sleep(1000) -' Log("****** " & cont) cont = cont + 1 If cont = 2 Then Printer1.Connect - If cont > 3 Then impresoraConectada = True + If cont > 4 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False @@ -2076,39 +2949,39 @@ End Sub Private Sub b_cancel_pagare_Click tipo_abonox = "abono" - Msgbox2Async($"¿Que deseas realizar?"$,"Atención", "Cancelar pagare","", "Abono pagare", Null, True) - Wait For Msgbox_Result (resultado As Int) - If resultado = DialogResponse.POSITIVE Then - Msgbox2Async($"¿Seguro que quieres cancelar el pagare con monto de $${l_total.Text} para este cliente?"$,"Atención", "Aceptar","Cancelar", "", Null, True) - Wait For Msgbox_Result (resultado As Int) - If resultado = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery("update PAGARES SET PA_CANCELADO = 2 WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - imprime_cancelarpagare - - d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") - d.Position = 0 - Dim ruta As String = d.GetString("RUTAA") - d.Close - - Dim g5 As Cursor = Starter.skmt.ExecQuery("SELECT SUM(HVD_COSTO_TOT) as HVD_COSTO_TOT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") - g5.Position = 0 - Dim totaltotal As String = g5.GetString("HVD_COSTO_TOT") - g5.Close - If totaltotal = l_total.Text.Replace(",","") Then - Dim entregatotaloparial As String = "ENTREGA TOTAL" - Else - Dim entregatotaloparial As String = "ENTREGA PARCIAL" - End If - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "UPDATE_ACTUAL_GEO_GUNA_VN" +' Msgbox2Async($"¿Que deseas realizar?"$,"Atención", "","", "Abono pagare", Null, True) +' Wait For Msgbox_Result (resultado As Int) +' If resultado = DialogResponse.POSITIVE Then +' Msgbox2Async($"¿Seguro que quieres cancelar el pagare con monto de $${l_total.Text} para este cliente?"$,"Atención", "Aceptar","Cancelar", "", Null, True) +' Wait For Msgbox_Result (resultado As Int) +' If resultado = DialogResponse.POSITIVE Then +' Starter.skmt.ExecNonQuery("update PAGARES SET PA_CANCELADO = 2 WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' imprime_cancelarpagare +' +' d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") +' d.Position = 0 +' Dim ruta As String = d.GetString("RUTAA") +' d.Close +' +' Dim g5 As Cursor = Starter.skmt.ExecQuery("SELECT SUM(HVD_COSTO_TOT) as HVD_COSTO_TOT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' g5.Position = 0 +' Dim totaltotal As String = g5.GetString("HVD_COSTO_TOT") +' g5.Close +' If totaltotal = l_total.Text.Replace(",","") Then +' Dim entregatotaloparial As String = "ENTREGA TOTAL" +' Else +' Dim entregatotaloparial As String = "ENTREGA PARCIAL" +' End If +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "UPDATE_ACTUAL_GEO_GUNA_VN" +'' cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) ' cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) - cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_REPARTO_GEO(HIST_RG_MONTO , HIST_RG_CREDITO , HIST_RG_MONTO_CREDITO , HIST_RG_LAT , HIST_RG_LONG , HIST_RG_RECHAZO , HIST_RG_MOTIVO , HIST_RG_USUARIO_ENTREGO , HIST_RG_RUTA_REP , HIST_RG_ESTATUS_ENTREGA , HIST_RG_COMENTARIO_ENTREGA , HIST_RG_FORMA_PAGO , HIST_RG_GEOCERCA_MTS , HIST_RG_NO_ART , HIST_RG_CLIENTE , HIST_RG_FECHA , HIST_RG_ALMACEN , HIST_RG_RUTA_PRE) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV)) - reqManager.ExecuteCommand(cmd, "up_geo") - banderaimp = 1 - End If - Else +' Starter.skmt.ExecNonQuery2("INSERT INTO HIST_REPARTO_GEO(HIST_RG_MONTO , HIST_RG_CREDITO , HIST_RG_MONTO_CREDITO , HIST_RG_LAT , HIST_RG_LONG , HIST_RG_RECHAZO , HIST_RG_MOTIVO , HIST_RG_USUARIO_ENTREGO , HIST_RG_RUTA_REP , HIST_RG_ESTATUS_ENTREGA , HIST_RG_COMENTARIO_ENTREGA , HIST_RG_FORMA_PAGO , HIST_RG_GEOCERCA_MTS , HIST_RG_NO_ART , HIST_RG_CLIENTE , HIST_RG_FECHA , HIST_RG_ALMACEN , HIST_RG_RUTA_PRE) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV)) +' reqManager.ExecuteCommand(cmd, "up_geo") +' banderaimp = 1 +' End If +' Else If resultado = DialogResponse.NEGATIVE Then h = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") h.Position = 0 @@ -2122,21 +2995,28 @@ Private Sub b_cancel_pagare_Click Dim total As Double = 0 f = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") f.Position = 0 - d = Starter.skmt.ExecQuery2("SELECT distinct PA_TICKET, PA_MONTO FROM PAGARES WHERE PA_CLIENTE = ? AND PA_CANCELADO IS NULL", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT distinct PA_TICKET, PA_MONTO,PA_CAPTURA FROM PAGARES WHERE PA_CLIENTE = ? AND PA_CANCELADO IS NULL ORDER BY PA_CAPTURA", Array As String (f.GetString("CUENTA"))) clv_abonos.Clear For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem(d.GetString("PA_TICKET"),"$ " & d.GetString("PA_MONTO")),i) + + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) AND a_ticket = ?", Array As String(d.GetString("PA_TICKET"))) + Log(Folio) + y.position = 0 + + clv_abonos.Add(CreateListItem(d.GetString("PA_TICKET"),"$ " & NumberFormat2((d.GetString("PA_MONTO")-y.GetString("a_abono")),0,2,2,False),d.GetString("PA_CAPTURA")),i) + + - total = total + d.GetString("PA_MONTO") - Log(total) - Next + total = total + d.GetString("PA_MONTO") + Log(total) + Next d.Close - d = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ? and a_tipoabono is not null ", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT a_abono,a_fecha FROM ABONOS WHERE a_cliente = ? and a_tipoabono is not null ORDER BY a_fecha", Array As String (f.GetString("CUENTA"))) If d.RowCount > 0 Then For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono")),i) + clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono"),d.GetString("a_fecha")),i) total = total - d.GetString("a_abono") Log(total) Next @@ -2150,21 +3030,25 @@ Private Sub b_cancel_pagare_Click Dim total As Double = 0 f = Starter.skmt.ExecQuery("SELECT CUENTA FROM CUENTAA") f.Position = 0 - d = Starter.skmt.ExecQuery2("SELECT distinct PA_TICKET, PA_MONTO FROM PAGARES WHERE PA_CLIENTE = ? AND PA_CANCELADO IS NULL", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT distinct PA_TICKET, PA_MONTO,PA_CAPTURA FROM PAGARES WHERE PA_CLIENTE = ? AND PA_CANCELADO IS NULL ORDER BY PA_CAPTURA", Array As String (f.GetString("CUENTA"))) clv_abonos.Clear For i = 0 To d.RowCount - 1 - d.Position = i - clv_abonos.Add(CreateListItem(d.GetString("PA_TICKET"),"$ " & d.GetString("PA_MONTO")),i) + d.Position = i + Dim y As Cursor = Starter.skmt.ExecQuery2("SELECT IFNULL(SUM(a_abono),0) AS a_abono FROM ABONOS WHERE a_cliente IN (SELECT CUENTA FROM CUENTAA) AND a_ticket = ?", Array As String(d.GetString("PA_TICKET"))) + Log(Folio) + y.position = 0 + + clv_abonos.Add(CreateListItem(d.GetString("PA_TICKET"),"$ " &NumberFormat2((d.GetString("PA_MONTO")-y.GetString("a_abono")),0,2,2,False),d.GetString("PA_CAPTURA")),i) total = total + d.GetString("PA_MONTO").Replace(",","") Log(total) Next d.Close - d = Starter.skmt.ExecQuery2("SELECT a_abono FROM ABONOS WHERE a_cliente = ? and a_tipoabono is not null ", Array As String (f.GetString("CUENTA"))) + d = Starter.skmt.ExecQuery2("SELECT a_abono,a_fecha FROM ABONOS WHERE a_cliente = ? and a_tipoabono is not null ORDER BY a_fecha", Array As String (f.GetString("CUENTA"))) If d.RowCount > 0 Then For i = 0 To d.RowCount - 1 d.Position = i - clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono")),i) + clv_abonos.Add(CreateListItem("ABONO","$ " & d.GetString("a_abono"),d.GetString("a_fecha")),i) total = total - d.GetString("a_abono") Log(total) Next @@ -2177,7 +3061,7 @@ Private Sub b_cancel_pagare_Click h.Close j.Close - End If +' End If @@ -2192,31 +3076,59 @@ Sub imprime_cancelarpagare sDate=DateTime.Date(DateTime.Now) sTime=DateTime.Time(DateTime.Now) c.Close +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +'' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) +'' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else +'' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) +'' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + ProgressDialogShow("Imprimiendo, un momento ...") Printer1.DisConnect If Not(Printer1.IsConnected) Then -' Log("Conectando a impresora ...") +' If logger Then Log("conectando 1") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Sleep(1000) -' Log("++++++ " & cont) cont = cont + 1 - If cont = 2 Then Printer1.Connect 'Tratamos de reconectar - If cont > 3 Then impresoraConectada = True + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False Else -' Log("conectando 2") +' If logger Then Log("conectando 2") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) Sleep(1000) -' Log("****** " & cont) cont = cont + 1 If cont = 2 Then Printer1.Connect - If cont > 3 Then impresoraConectada = True + If cont > 4 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False @@ -2330,6 +3242,15 @@ Private Sub b_cerrarqr_Click End Sub Private Sub b_imprimesegun_Click + + Dim pagacheca As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + + If pagacheca.RowCount > 0 Then + Tipoentrega = "CREDITO" + Else + Tipoentrega = "CONTADO" + End If + c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") c.Position=0 usuario = c.GetString("USUARIO") @@ -2337,31 +3258,59 @@ Private Sub b_imprimesegun_Click sDate=DateTime.Date(DateTime.Now) sTime=DateTime.Time(DateTime.Now) c.Close +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +'' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) +'' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else +'' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) +'' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + ProgressDialogShow("Imprimiendo, un momento ...") Printer1.DisConnect If Not(Printer1.IsConnected) Then -' Log("Conectando a impresora ...") +' If logger Then Log("conectando 1") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Sleep(1000) -' Log("++++++ " & cont) cont = cont + 1 - If cont = 2 Then Printer1.Connect 'Tratamos de reconectar - If cont > 3 Then impresoraConectada = True + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False Else -' Log("conectando 2") +' If logger Then Log("conectando 2") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) Sleep(1000) -' Log("****** " & cont) cont = cont + 1 If cont = 2 Then Printer1.Connect - If cont > 3 Then impresoraConectada = True + If cont > 4 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False @@ -2417,19 +3366,27 @@ Private Sub b_imprimesegun_Click Printer1.WriteString(" " & CRLF) c = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + + + Dim cobranza As Cursor = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA) and HVD_PRONOMBRE = 'Cobranza Pendiente'") + Dim restacobranza As Int = 0 + If cobranza.RowCount > 0 Then + restacobranza = 1 + End If If c.RowCount > 0 Then - Printer1.WriteString("-------ENTREGA A "& Tipoentrega &"------" & CRLF) -' Printer1.WriteString("--------------------------------" & CRLF) - Printer1.WriteString("Cant. Precio Importe" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_PROID"$) + ' 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. ''CAT_TIPO_BONIFICACIONES +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and (HVD_CODPROMO <> 'MI RETO' or HVD_CODPROMO <> 'MI RETO' or HVD_CODPROMO <> 'MI RETO') AND (HVD_COSTO_TOT/HVD_CANT) > 0.01 order by HVD_PROID"$) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and (HVD_CODPROMO <> 'MIRETO' or HVD_CODPROMO <> 'SOCIOBAT' or HVD_CODPROMO <> 'CONECTADOS') AND (HVD_COSTO_TOT/HVD_CANT) > 0.01 GROUP by HVD_PROID"$) If S.RowCount>0 Then + Printer1.WriteString("-------ENTREGA A "& Tipoentrega &"------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) For i=0 To S.RowCount -1 S.Position=i Log(s.GetString("HVD_RECHAZO")) If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then - If s.GetString("HVD_CODPROMO") = Subs.traeAlmacen Then + If s.GetInt("HVD_RECHAZO") = 0 Then Printer1.Justify = 0 Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) @@ -2449,9 +3406,9 @@ Private Sub b_imprimesegun_Click Printer1.Justify = 2 Printer1.WriteString( ptot & CRLF ) TAMANO = 0 - ESPACIO = 29 + ESPACIO = 28 BLANCO = " " - Else If s.GetString("HVD_RECHAZO") = 1 Then + Else If s.GetInt("HVD_RECHAZO") > 0 Then Printer1.Justify = 0 Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) @@ -2473,7 +3430,7 @@ Private Sub b_imprimesegun_Click Printer1.Justify = 2 Printer1.WriteString(ptot& CRLF ) TAMANO = 0 - ESPACIO = 29 + ESPACIO = 28 BLANCO = " " Printer1.Justify = 0 End If @@ -2484,54 +3441,55 @@ Private Sub b_imprimesegun_Click Printer1.Justify = 0 s.Close Printer1.WriteString(" " & CRLF) - s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_RECHAZO = 0 AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) + + +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_RECHAZO = 0 AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and (HVD_CODPROMO <> 'MIRETO' or HVD_CODPROMO <> 'SOCIOBAT' or HVD_CODPROMO <> 'CONECTADOS') AND (HVD_COSTO_TOT/HVD_CANT) = 0.01 GROUP by HVD_PROID"$) + If S.RowCount>0 Then - Printer1.WriteString("-------PROMOS ENTREGA--------" & CRLF) + Printer1.WriteString("------- BONIFIACIONES --------" & CRLF) Printer1.WriteString("Cant. Precio Importe" & CRLF) Printer1.WriteString("------------------------------" & CRLF) - Dim restacobranza As Int = 0 For i=0 To S.RowCount -1 S.Position=i - If s.GetString("HVD_PRONOMBRE") <> "Cobranza Pendiente" Then + - If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then - If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then - Printer1.Justify = 0 - If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then -' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then +' If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then + Printer1.Justify = 0 +' If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then + '' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) +' +' Else - Else + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) - Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) - - Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) - TAMANO = punit.Length + TAMANO - Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) - TAMANO = ptot.Length + TAMANO - ESPACIO = (ESPACIO - TAMANO)/2 - Log(ESPACIO) - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Printer1.Justify = 0 - Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) - Printer1.Justify = 1 - Printer1.WriteString( punit & BLANCO) - Printer1.Justify = 2 - Printer1.WriteString(ptot & CRLF ) - TAMANO = 0 - ESPACIO = 29 - BLANCO = " " - Printer1.Justify = 0 - End If - Else - End If - End If - Else - restacobranza = 1 + Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO + Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 + Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot & CRLF ) + TAMANO = 0 + ESPACIO = 29 + BLANCO = " " + Printer1.Justify = 0 +' End If +' Else +' End If End If + Next End If @@ -2570,6 +3528,210 @@ Private Sub b_imprimesegun_Click ' Next ' End If Printer1.WriteString(" " & CRLF) + + + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'MIRETO' GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("----------- MI RETO ------------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetInt("HVD_RECHAZO") = 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Else If s.GetInt("HVD_RECHAZO") > 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + Printer1.Justify = 0 + s.Close + + Printer1.WriteString(" " & CRLF) + + + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'CONECTADOS' GROUP by HVD_PROID"$) +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'SOCIOBAT' GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("---------- CONECTADOS ----------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetInt("HVD_RECHAZO") = 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Else If s.GetInt("HVD_RECHAZO") > 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + Printer1.Justify = 0 + s.Close + +' s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'CONECTADOS' GROUP by HVD_PROID"$) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, sum(HVD_CANT) as HVD_CANT, length(HVD_CANT) as L_CANT, sum(HVD_COSTO_TOT) as HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID,SUM(IFNULL(HVD_RECHAZOCANT,0)) AS HVD_RECHAZOCANT, SUM(HVD_RECHAZO) AS HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_CODPROMO = 'SOCIOBAT' GROUP by HVD_PROID"$) + If S.RowCount>0 Then + Printer1.WriteString("---------- SOCIO BAT ----------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetInt("HVD_RECHAZO") = 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Else If s.GetInt("HVD_RECHAZO") > 0 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + Printer1.Justify = 0 + s.Close + + + Printer1.WriteString(" " & CRLF) + + + Printer1.WriteString("------------------------------" & CRLF) Printer1.WriteString("Total Articulos: " & (L_CANT.Text.Replace(",","") -restacobranza) & CRLF) Printer1.WriteString("Total: $" & l_total.Text) @@ -2585,4 +3747,22 @@ Private Sub b_imprimesegun_Click Sleep(1000) Printer1.DisConnect ProgressDialogHide +End Sub + + + +Private Sub l_telefono_LongClick As ResumableSub + Dim numeroTel As String = l_telefono.Text + + numeroTel = numeroTel.Replace(" ", "").Replace("-", "").Replace("(", "").Replace(")", "") + + If numeroTel.Length > 0 Then + Dim Intent1 As Intent + Intent1.Initialize("android.intent.action.DIAL", "tel:" & numeroTel) + StartActivity(Intent1) + Else + ToastMessageShow("Número no válido", False) + End If + + Return True End Sub \ No newline at end of file diff --git a/B4A/C_DetalleVenta.bas b/B4A/C_DetalleVenta.bas index 7860e49..25ad0f4 100644 --- a/B4A/C_DetalleVenta.bas +++ b/B4A/C_DetalleVenta.bas @@ -142,7 +142,8 @@ Sub B4XPage_Appear End If ' Log($"Agregamos prod a lista1 | ${c.GetString("HVD_CANT")} - ${c.GetString("HVD_CANT2")}"$) 'HVD_CANT2 es la original de la orden. ' ListView1.AddTwoLines(c.GetString("HVD_PRONOMBRE"),"Cantidad #"& c.GetString("HVD_CANT")& " SubTotal $"& c.GetString("HVD_COSTO_TOT")) - clv_pedido.Add(CreateListItem(c.GetString("HVD_PRONOMBRE"), Subs.traePrecio2(c.GetString("HVD_PROID"), c.GetString("HVD_CODPROMO"),c.GetString("CONSECUTIVO")), (c.GetString("HVD_CANT") - c.GetString("HVD_RECHAZOCANT")), c.GetString("HVD_RECHAZOCANT")-cantres , clv_pedido.AsView.Width, 118dip, bmp, c.GetString("HVD_PROID"), bgColor, textColor, c.GetString("HVD_CODPROMO"),Subs.traeCliente,Subs.traeCliente,0,c.GetString("CONSECUTIVO")),i) +' clv_pedido.Add(CreateListItem(c.GetString("HVD_PRONOMBRE"), Subs.traePrecio2(c.GetString("HVD_PROID"), c.GetString("HVD_CODPROMO"),c.GetString("CONSECUTIVO")), (c.GetString("HVD_CANT") - c.GetString("HVD_RECHAZOCANT")), c.GetString("HVD_RECHAZOCANT")-cantres , clv_pedido.AsView.Width, 118dip, bmp, c.GetString("HVD_PROID"), bgColor, textColor, c.GetString("HVD_CODPROMO"),Subs.traeCliente,Subs.traeCliente,0,c.GetString("CONSECUTIVO")),i) + clv_pedido.Add(CreateListItem(c.GetString("HVD_PRONOMBRE"), (c.GetString("HVD_COSTO_TOT")/c.GetString("HVD_CANT")), (c.GetString("HVD_CANT") - c.GetString("HVD_RECHAZOCANT")), c.GetString("HVD_RECHAZOCANT")-cantres , clv_pedido.AsView.Width, 118dip, bmp, c.GetString("HVD_PROID"), bgColor, textColor, c.GetString("HVD_CODPROMO"),Subs.traeCliente,Subs.traeCliente,0,c.GetString("CONSECUTIVO")),i) ' Log(c.GetString("HVD_CODPROMO")) End If Else If c.GetString("BCAJAS") = "1" Then @@ -1032,7 +1033,7 @@ Sub Printer1_Connected (Success As Boolean) ToastMessageShow("Impresora conectada", False) Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP",Starter.mac_impresora)) - LogColor("Impresora conectada", Colors.Green) +' If logger Then LogColor("Impresora conectada", Colors.Green) ' B_IMP2.Enabled = True impresoraConectada = True Else @@ -1047,12 +1048,16 @@ Sub Printer1_Connected (Success As Boolean) End If End Sub +Sub Printer1_Error + Log("error printer") +End Sub + Sub Printer_Connected (Success As Boolean) If Success Then - B_IMP.Enabled = True +' B_IMP.Enabled = True PASA_IMP = "1" Else - B_IMP.Enabled = False +' B_IMP.Enabled = False If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore StartPrinter End If @@ -1061,7 +1066,7 @@ End Sub Sub StartPrinter Dim PairedDevices As Map - Dim L As List + Dim L1 As List Dim resimp As Int ToastMessageShow("Printing.....",True) PairedDevices.Initialize @@ -1072,28 +1077,28 @@ Sub StartPrinter printer.Close cmp20.Disconnect End Try + If PairedDevices.Size = 0 Then Msgbox("Error Connecting to Printer - Printer Not Found","") 'ignore Return End If + If PairedDevices.Size = 1 Then Try - 'FLEOS - cmp20.ConnectInsecure(btAdmin,PairedDevices.Get(PairedDevices.GetKeyAt(0)),1) - 'cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) + cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) Catch Msgbox("Connecting","Printer Error") 'ignore printer.Close cmp20.Disconnect End Try Else - L.Initialize + L1.Initialize For i = 0 To PairedDevices.Size - 1 - L.Add(PairedDevices.GetKeyAt(i)) + L1.Add(PairedDevices.GetKeyAt(i)) Next - resimp = InputList(L, "Choose device", -1) 'ignore + resimp = InputList(L1, "Choose device", -1) 'ignore If resimp <> DialogResponse.CANCEL Then - cmp20.Connect(PairedDevices.Get(L.Get(resimp))) + cmp20.Connect(PairedDevices.Get(L1.Get(resimp))) End If End If End Sub @@ -1106,31 +1111,59 @@ Private Sub B_IMP_Click sDate=DateTime.Date(DateTime.Now) sTime=DateTime.Time(DateTime.Now) c.Close +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +'' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) +'' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else +'' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) +'' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + ProgressDialogShow("Imprimiendo, un momento ...") Printer1.DisConnect If Not(Printer1.IsConnected) Then -' Log("Conectando a impresora ...") +' If logger Then Log("conectando 1") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Sleep(1000) -' Log("++++++ " & cont) cont = cont + 1 - If cont = 2 Then Printer1.Connect 'Tratamos de reconectar - If cont > 3 Then impresoraConectada = True + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False Else -' Log("conectando 2") +' If logger Then Log("conectando 2") Printer1.Connect Private cont As Int = 0 Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) Sleep(1000) -' Log("****** " & cont) cont = cont + 1 If cont = 2 Then Printer1.Connect - If cont > 3 Then impresoraConectada = True + If cont > 4 Then impresoraConectada = True Loop Sleep(500) impresoraConectada = False diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index fece097..a68e12c 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -110,6 +110,32 @@ Sub Class_Globals Private b_multiAlmacen As Button Private multiAlmacen As Boolean = False Private idAlmacenExtra As String = "" + + + Dim btAdmin As BluetoothAdmin + Dim cmp20 As Serial +' Dim printer As TextWriter + Dim TAMANO As Int + Dim ESPACIO As Int + Dim BLANCO As String + Dim Printer1 As EscPosPrinter + Dim impresoraConectada As Boolean = False + Dim errorImpresora As Int = 0 + Private inventario As ImageView + Dim PASA_IMP As String +' Private printer As EscPosPrinter + Private impresoraConectada As Boolean = False + Dim printer As TextWriter + + ''para la carga --- mover a los demas clientes + Dim t8 As Timer + Private B_carga As Button + Private P_carga As Panel + Private L_carga As Label + Private PB_carga As ProgressBar + Private PB_carga2 As ProgressBar + Private l_carga2 As Label + 'fin carga End Sub 'You can add more parameters here. @@ -178,6 +204,8 @@ Private Sub B4XPage_Created (Root1 As B4XView) reqManager.ExecuteQuery(cmd , 0, "coords_almacen") End If B4XPages.MainPage.usuario=Subs.dameUsuarioDeDB + btAdmin.Initialize("BlueTeeth") + cmp20.Initialize("Printer") End Sub Sub B4XPage_Appear @@ -659,7 +687,7 @@ Sub B4XPage_Appear l_rechazo.text = NumberFormat2((rescant + rescant2),0,2,2,False) B4XPages.MainPage.piezas_entregdas = NumberFormat2((pztotal + pztotal2 + pztotal3 ),0,2,2,False) B4XPages.MainPage.monto_entregadoactual= NumberFormat2((rescant10 + rescant11 + rescant12 ),0,2,2,False) -' + ' ' B4XPages.MainPage.piezas_entregdas = "0" ' B4XPages.MainPage.monto_entregadoactual= "0" @@ -672,7 +700,7 @@ Sub B4XPage_Appear l_pagarescobrados.Text = NumberFormat2(pagarescobrados.GetDouble("a_abono"),0,2,2,False) pagarescobrados.Close - Dim pagaresnuevos As Cursor = Starter.skmt.ExecQuery("SELECT IfNULL(SUM(distinct(PA_MONTO)),0) as PA_MONTO FROM PAGARES") + Dim pagaresnuevos As Cursor = Starter.skmt.ExecQuery("SELECT IfNULL(SUM(PA_MONTO),0) as PA_MONTO FROM PAGARES") pagaresnuevos.Position = 0 l_pagaresnuevos.Text = NumberFormat2(pagaresnuevos.GetDouble("PA_MONTO"),0,2,2,False) pagaresnuevos.Close @@ -721,7 +749,24 @@ Sub B4XPage_Appear ' StartActivity(MAPA_RUTAS) ' End If ' checachek -'cuanto + 'cuanto + + c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) + If c.RowCount > 0 Then + c.Position = 0 + Starter.MAC_IMPRESORA = c.GetString("CAT_VA_VALOR") + End If + If Starter.MAC_IMPRESORA = "" Then Starter.MAC_IMPRESORA = "0" +' Log("|" & Starter.MAC_IMPRESORA & "|") + Printer1.Initialize(Me, "Printer1") + If Printer1.IsConnected = False Then +' Printer1.Connect +' Log("1") + Else + Printer1.DisConnect + Printer1.Connect + Log("2") + End If End Sub Sub checachek @@ -791,23 +836,23 @@ Sub Subir_Click End Sub Sub envia_reparto - c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO, NV_REPROGRAMAR FROM NOVENTA") - D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - foto1 = c.GetBlob("NV_FOTO") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_reparto_REPG_GUNA_VN" - cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), ALMACEN, l_ruta.Text, C.GetString("NV_REPROGRAMAR")) - reqManager.ExecuteCommand(cmd , "inst_noventa_") - Next - c.Close - End If - d.Position=0 - cuantos_noventa = D.GetString("CUANTOS_NOVENTA") - d.Close +' c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO, NV_REPROGRAMAR FROM NOVENTA") +' D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") +' If c.RowCount>0 Then +' For i=0 To c.RowCount -1 +' c.Position=i +' foto1 = c.GetBlob("NV_FOTO") +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "insert_reparto_REPG_GUNA_VN" +' cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), ALMACEN, l_ruta.Text, C.GetString("NV_REPROGRAMAR")) +' reqManager.ExecuteCommand(cmd , "inst_noventa_") +' Next +' c.Close +' End If +' d.Position=0 +' cuantos_noventa = D.GetString("CUANTOS_NOVENTA") +' d.Close End Sub Sub envioinfo @@ -863,18 +908,19 @@ Sub envioinfo 'ABONOS d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") d.Position = 0 - Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null"$) + Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null and a_tipoabono IS NULL"$) Log(ab.RowCount) If ab.RowCount > 0 Then For i=0 To ab.RowCount -1 ab.Position = i - Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NULL"$) +' Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NULL"$) + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NULL"$) ab1.Position = 0 Dim cmd As DBCommand cmd.Initialize - cmd.Name = "insert_abono_REP_GUNA_VN" - cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), ab1.GetString("a_abono"), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA") ) + cmd.Name = "insert_abono_REP_GUNA_VN2" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), ab.GetString("a_abono"), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA"), "", ab.GetString("TIPO_PAGO"),ab.GetString("a_ticket"),ab.GetString("a_numpago")) reqManager.ExecuteCommand(cmd , $"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) ab1.Close Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) @@ -887,18 +933,19 @@ Sub envioinfo 'ABONOS NUEVOS d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") d.Position = 0 - Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null"$) + Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null and a_tipoabono IS NOT NULL"$) Log(ab.RowCount) If ab.RowCount > 0 Then For i=0 To ab.RowCount -1 ab.Position = i - Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) +' Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) ab1.Position = 0 Dim cmd As DBCommand cmd.Initialize - cmd.Name = "insert_abono_REP_GUNA_VN" - cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), ab1.GetString("a_abono"), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA") ) + cmd.Name = "insert_abono_REP_GUNA_VN2" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), ab.GetString("a_abono"), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA"), "1", ab.GetString("TIPO_PAGO"),ab.GetString("a_ticket"),ab.GetString("a_numpago") ) reqManager.ExecuteCommand(cmd , $"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) ab1.Close Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) @@ -971,6 +1018,8 @@ Sub envioinfo End If 'FIN TABULADOR + + c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_CLIENTE, HVD_PROID, HVD_FECHA, HVD_CODPROMO, HVD_NUM_TICKET, HVD_CANT, CONSECUTIVO, BCAJAS, CANTC FROM HIST_VENTAS where HVD_PRONOMBRE <> 'Cobranza Pendiente'") If c.RowCount > 0 Then For i=0 To c.RowCount -1 @@ -1045,6 +1094,13 @@ Sub cargar_Click End If End If If Not (pedidodiaanterior) Then +' P_carga.Visible = True + P_carga.Width = Root.Width + P_carga.Height = Root.Height + l_carga2.Text = "CARGANDO" + L_carga.Text = "CARGANDO" + PB_carga2.Progress = 0 + PB_carga.Progress = 0 Log("CUMPLE") EJECUTANDO = 1 reqs.Initialize @@ -1168,10 +1224,18 @@ Sub cargaGeneral Log($"Pedimos gunaprod - ${ALMACEN}, ${e_ruta.text}"$) reqs.Add("gunaprod") - cmd.Initialize - cmd.Name = "select_abonosp_REP_GUNA_VN" - cmd.Parameters = Array As Object(ALMACEN, e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "select_abonosp") + If ALMACEN = "81" Then + + cmd.Initialize + cmd.Name = "select_abonosp_REP_GUNA_VN2" + cmd.Parameters = Array As Object(ALMACEN, e_ruta.text) + reqManager.ExecuteQuery(cmd , 0, "select_abonosp") + Else + cmd.Initialize + cmd.Name = "select_abonosp_REP_GUNA_VN" + cmd.Parameters = Array As Object(ALMACEN, e_ruta.text, ALMACEN) + reqManager.ExecuteQuery(cmd , 0, "select_abonosp") + End If cmd.Initialize cmd.Name = "select_cliente_re_REPG_GUNA_VN" @@ -1179,6 +1243,14 @@ Sub cargaGeneral reqManager.ExecuteQuery(cmd , 0, "kmt_datos") Log($"Pedimos kmt_datos - ruta: ${e_ruta.text}, almacen: ${ALMACEN}"$) reqs.Add("kmt_datos") + + +' cmd.Initialize +' cmd.Name = "select_cliente_fotos_re_REPG_GUNA_VN" +' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,ALMACEN,e_ruta.text, ALMACEN,e_ruta.Text,ALMACEN,ALMACEN)',e_ruta.Text,ALMACEN +' reqManager.ExecuteQuery(cmd , 0, "kmt_datos_fotos") + '' Log($"Pedimos kmt_datos_fotos - ruta: ${e_ruta.text}, almacen: ${ALMACEN}"$) + '' reqs.Add("kmt_datos_fotos") cmd.Initialize cmd.Name = "select_ventad2_re_REPG_GUNA_VN" @@ -1230,9 +1302,11 @@ Sub JobDone(Job As HttpJob) Dim CAT_CL_LAT As String = records(result.Columns.Get("CAT_CL_LAT")) Dim CAT_CL_BCREDITO As String = records(result.Columns.Get("CAT_CL_BCREDITO")) Dim CAT_CL_LIMITECREDITO As String = records(result.Columns.Get("CAT_CL_LIMITECREDITO")) + Dim CAT_CL_SALDODISPONIBLE As String = records(result.Columns.Get("CAT_CL_SALDODISPONIBLE")) + Dim CAT_CL_DIASCREDITO As String = records(result.Columns.Get("CAT_CL_DIASCREDITO")) ' Dim CAT_CL_SECUENCIA As String = records(result.Columns.Get("CAT_CL_SECUENCIA")) - Log(" ++ insert into kmt_info: "&ALMACEN&","&CAT_CL_CODIGO&","&CAT_CL_RUTA&","&CAT_CL_NOMBRE) - Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BCREDITO, gestion,CAT_CL_LIMITECREDITO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,?)", Array As Object (CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BCREDITO,CAT_CL_LIMITECREDITO)) +' Log(" ++ insert into kmt_info: "&ALMACEN&","&CAT_CL_CODIGO&","&CAT_CL_RUTA&","&CAT_CL_NOMBRE) + Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BCREDITO, gestion,CAT_CL_LIMITECREDITO,CAT_CL_SALDODISPONIBLE,CAT_CL_DIASCREDITO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,?,?,?)", Array As Object (CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BCREDITO,CAT_CL_LIMITECREDITO,CAT_CL_SALDODISPONIBLE,CAT_CL_DIASCREDITO)) Next ' Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BCREDITO, gestion,SECUENCIA) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,?)", Array As Object (63403,1000, "VENTA RECHAZO","","","","","","","","","","","","","","-98.8357694","19.6906052","0","1")) ' End If @@ -1257,8 +1331,22 @@ Sub JobDone(Job As HttpJob) Dim CLIENTE As String = records(result.Columns.Get("CLIENTE")) Dim SALDO_PENDIENTE As String = records(result.Columns.Get("SALDO_PENDIENTE")) Dim NOMBRE As String = records(result.Columns.Get("NOMBRE")) + Dim FECHAPREVENTA As String = records(result.Columns.Get("FECHA_PREVENTA")) ' Dim DIA_VENCIMIENTO As String = records(result.Columns.Get("DIA_VENCIMIENTO")) - Starter.skmt.ExecNonQuery2("INSERT INTO ABONOSP(NOTA,CLIENTE,SALDO_PENDIENTE,NOMBRE) VALUES (?,?,?,?)", Array As Object (NOTA, CLIENTE,SALDO_PENDIENTE,NOMBRE)) + Starter.skmt.ExecNonQuery2("INSERT INTO ABONOSP(NOTA,CLIENTE,SALDO_PENDIENTE,NOMBRE,FECHA_PREVENTA) VALUES (?,?,?,?,?)", Array As Object (NOTA, CLIENTE,SALDO_PENDIENTE,NOMBRE,FECHAPREVENTA)) + Next + End If + End If + + + If Job.JobName = "DBRequest" Then + Dim result As DBResult = reqManager.HandleJob(Job) + If result.Tag = "kmt_datos_fotos" Then 'query tag + Starter.skmt.ExecNonQuery("DELETE FROM FOTOS") + For Each records() As Object In result.Rows + Dim CAT_CL_FOTO() As Byte = records(result.Columns.Get("CAT_CL_FOTO")) + Dim CLIENTE1 As String = records(result.Columns.Get("CAT_CL_CODIGO")) + Starter.skmt.ExecNonQuery2("INSERT INTO FOTOS(foto,CLIENTE) VALUES (?,?)", Array As Object (CAT_CL_FOTO, CLIENTE1)) Next End If End If @@ -1487,12 +1575,12 @@ Sub JobDone(Job As HttpJob) ' Log(" ++ insert into HIST_VENTAS: "&HVD_CLIENTE&","&HVD_PRONOMBRE&","&HVD_CANT) consecutivo = consecutivo +1 If l_ruta.Text = "0" Then 'Si no hay ruta cargada, guardamos todos los clientes - Log("No hay ruta, guardamos todos") +' Log("No hay ruta, guardamos todos") Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE, HVD_PRONOMBRE, HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL, BCAJAS,CANTC,CONSECUTIVO,BCAJAS_OR,CANTC_OR) VALUES (?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, bcajas,cantc,consecutivo,bcajas,cantc)) Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS2(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL) VALUES (?,?,?,?,?,?,?,?,?,?,0,0)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO)) Else 'Si ya hay ruta cargada, solo guardamos los clientes nuevos. ' Log("Hay ruta, guardamos los nuevos") - Private tc As Cursor = Starter.skmt.ExecQuery($"select HVD_CLIENTE from HIST_VENTAS where HVD_CLIENTE = '${HVD_CLIENTE}' and HVD_PROID = '${HVD_PROID}'"$) + Private tc As Cursor = Starter.skmt.ExecQuery($"select HVD_CLIENTE from HIST_VENTAS where HVD_CLIENTE = '${HVD_CLIENTE}' and HVD_PROID = '${HVD_PROID}' AND HVD_CANT = '${HVD_CANT}' AND HVD_CODPROMO = '${HVD_CODPROMO}'"$) If tc.RowCount = 0 Then ' Log($"Guardamos ${HVD_CLIENTE}"$) Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL, BCAJAS,CANTC,CONSECUTIVO,BCAJAS_OR,CANTC_OR) VALUES (?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, bcajas,cantc,consecutivo,bcajas,cantc)) @@ -1523,6 +1611,46 @@ Sub JobDone(Job As HttpJob) img2.Visible = False EJECUTANDO = 0 End If + ''para la carga --- mover a los demas clientes + t8.Initialize("t8", 15000) ' 1000 = 1 second + t8.Enabled = True + 'fin carga + End If + End If + + If Job.JobName = "DBRequest" Then + Dim result As DBResult = reqManager.HandleJob(Job) + If result.Tag = "CONTEO_DATOS" Then 'query tag + For Each records() As Object In result.Rows + Dim DETALLE As String = records(result.Columns.Get("REGISTROS")) + Dim CLIENTES1 As String = records(result.Columns.Get("CLIENTES")) + + + Next + + Dim CLIENTES As Cursor = Starter.skmt.ExecQuery("select count(*) as clientes from kmt_info") + CLIENTES.Position = 0 + + Dim detalleventa As Cursor = Starter.skmt.ExecQuery("select count(*) as detalle from hist_ventas") + detalleventa.Position = 0 + + If CLIENTES.GetString("clientes") = CLIENTES1 Then + PB_carga2.Progress = 100 + l_carga2.Text = "LISTO" + Else +' cargar_Click + End If + + If detalleventa.GetString("detalle") = DETALLE Then + PB_carga.Progress = 100 + L_carga.Text = "LISTO" + Else +' cargar_Click + End If + + CLIENTES.Close + detalleventa.Close + End If End If @@ -1743,6 +1871,61 @@ Sub JobDone(Job As HttpJob) End If End Sub +''para la carga --- mover a los demas clientes +Sub t8_tick + cmd.Initialize + cmd.Name = "select_conteo_GUNA" + cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) + reqManager.ExecuteQuery(cmd , 0, "CONTEO_DATOS") + l_carga2.Text = "VALIDANDO" + L_carga.Text = "VALIDANDO" + PB_carga2.Progress = 50 + PB_carga.Progress = 50 + t8.Enabled = False +End Sub + +Private Sub P_carga_Click + +End Sub + +Private Sub B_carga_Click + If L_carga.Text = "LISTO" And l_carga2.Text = "LISTO" Then + P_carga.Visible = False + Else + Dim checagestion As Cursor = Starter.skmt.ExecQuery("SELECT * FROM kmt_info WHERE gestion <> 0") + If checagestion.RowCount = 0 Then + P_carga.Visible = False + e_ruta.Text = "" + Starter.skmt.ExecNonQuery("delete from PICK_CIEGO") + Starter.skmt.ExecNonQuery("delete from pedido_cliente") + Starter.skmt.ExecNonQuery("delete from PAGARES") + Starter.skmt.ExecNonQuery("delete from CHECADO_CHECK") + Starter.skmt.ExecNonQuery("delete from CHECKLIST2") + Starter.skmt.ExecNonQuery("delete from pedido") + Starter.skmt.ExecNonQuery("delete from noventa") + Starter.skmt.ExecNonQuery("delete from clie_act") + Starter.skmt.ExecNonQuery("delete from kmt_info") + Starter.skmt.ExecNonQuery("delete from cat_gunaprod") + Starter.skmt.ExecNonQuery("delete from cat_gunaprod3") + Starter.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") + Starter.skmt.ExecNonQuery("delete from HIST_VENTAS") + Starter.skmt.ExecNonQuery("delete from REPARTO") + Starter.skmt.ExecNonQuery("DELETE FROM TABULADOR_MONEDAS") + Starter.skmt.ExecNonQuery("DELETE FROM TABULADOR_BILLETES") + Starter.skmt.ExecNonQuery("DELETE FROM RUTAA") + Starter.skmt.ExecNonQuery("DELETE FROM ABONOSP") + Starter.skmt.ExecNonQuery("DELETE FROM ABONOS") + Starter.skmt.ExecNonQuery("DELETE FROM BLOCKENVIO") + B4XPage_Appear + MsgboxAsync("No se cargo bien la informacion, favor de cargar día nuevamente","Atención") + Else + MsgboxAsync("No se cargo bien la informacion, favor de cargar día nuevamente","Atención") + P_carga.Visible = False + End If + End If +End Sub +'fin carga + Private Sub B4XPage_CloseRequest As ResumableSub ' BACK key pressed If Panel1.visible Then @@ -2110,6 +2293,7 @@ End Sub Private Sub ListView1_ItemClick (Position As Int, Value As Object) ' Log(Value) + B_REGRESA_Click Dim clieasing() As String = Regex.Split(" ", Value) Log(clieasing(0)) Starter.skmt.ExecNonQuery("delete from CUENTAA") @@ -2218,7 +2402,7 @@ Private Sub B_PAGARES_Click Subs.SetDivider(ListView2, Colors.LightGray, 5) Private g5 As Cursor = Starter.skmt.ExecQuery("SELECT SUM(SALDO_PENDIENTE) as SALDO_PENDIENTE FROM ABONOSP") If g5.RowCount > 0 Then - g5.Position = 0 + g5.Position = 0 Log(NumberFormat2( g5.GetDouble("SALDO_PENDIENTE"),0,2,2,False)) l_montopagares.Text = NumberFormat2( g5.GetDouble("SALDO_PENDIENTE"),0,2,2,False) Else @@ -2243,7 +2427,7 @@ Private Sub B_PAGARES_Click label1 = ListView2.TwoLinesLayout.Label label1.TextSize = 16 label1.Height = 45dip - ' label1. + ' label1. label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) label1.TextColor = Colors.White Dim label2 As Label @@ -2262,7 +2446,7 @@ Private Sub B_PAGARES_Click ' ListView2.AddSingleLine(itemText) Next ' Else -'' ListView2.AddSingleLine("No hay datos disponibles.") + '' ListView2.AddSingleLine("No hay datos disponibles.") ' ListView2.AddTwoLines("No hay datos disponibles.","") End If g6.Close @@ -2454,4 +2638,227 @@ Sub cargaAlmacen2 s_almacen2.SelectedIndex = 0 et_ruta2.Text = "" cargar.Enabled = True +End Sub + +Private Sub inventario_Click + +' ProgressDialogShow("Imprimiendo, un momento ...") +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then + '' Log("Conectando a impresora ...") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +' Sleep(1000) + '' Log("++++++ " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' Else + '' Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +' Sleep(1000) + '' Log("****** " & cont) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 3 Then impresoraConectada = True +' Loop +' Sleep(500) +' impresoraConectada = False +' End If + + ProgressDialogShow("Imprimiendo, un momento ...") + Printer1.DisConnect + If Not(Printer1.IsConnected) Then +' If logger Then Log("conectando 1") + Printer1.Connect + Private cont As Int = 0 + Do While Not(impresoraConectada) + Sleep(1000) + cont = cont + 1 + If cont = 7 Then Printer1.Connect 'Tratamos de reconectar + If cont > 15 Then impresoraConectada = True + Loop + Sleep(500) + impresoraConectada = False + Else +' If logger Then Log("conectando 2") + Printer1.Connect + Private cont As Int = 0 + Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) + Sleep(1000) + cont = cont + 1 + If cont = 2 Then Printer1.Connect + If cont > 4 Then impresoraConectada = True + Loop + Sleep(500) + impresoraConectada = False + End If + + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Dim bmp As Bitmap + Printer1.Justify= 1 + bmp.InitializeResize(File.DirAssets, "inventarios.jpg", 92, 92, True) 'ignore + Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp) + myimage = Printer1.DitherImage2D(myimage, 128) + myimage= Printer1.PackImage(myimage) + Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening + Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening + Printer1.WriteString(Printer1.REVERSE) + Printer1.PrintImage(myimage) + Printer1.WriteString(Printer1.UNREVERSE) + Printer1.WriteString(" " & CRLF) + Private c As Cursor = Starter.skmt.ExecQuery("select HVD_PRONOMBRE, IFNULL(SUM(HVD_CANT), 0) AS HVD_CANT, HVD_PROID from HIST_VENTAS WHERE HVD_PRONOMBRE <> 'Cobranza Pendiente' and HVD_PROID <> HVD_CODPROMO GROUP BY HVD_PROID order by HVD_PRONOMBRE asc") + lv_prod_Prin.SingleLineLayout.Label.TextColor = Colors.White + lv_prod_Prin.Clear + Printer1.Justify = 0 + Dim sDate, sTime As String + DateTime.DateFormat = "dd/MM/yyyy" + DateTime.TimeFormat = "HH:mm:ss" + sDate = DateTime.Date(DateTime.Now) + sTime = DateTime.Time(DateTime.Now) + Printer1.WriteString("Fecha: " &sDate & CRLF) + Printer1.WriteString("Hora: " &sTime & CRLF) + Printer1.WriteString("Ruta: " & l_ruta.Text & CRLF) + Printer1.WriteString("Usuario: " & Subs.dameUsuarioDeDB & CRLF) +' Printer1.WriteString("----------INVENTARIO----------" & CRLF) + Printer1.WriteString("--------------------------------" & CRLF) + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + + Printer1.WriteString("-----------INVENTARIO-----------" & CRLF) + Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Producto" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + For i=0 To c.RowCount -1 + c.Position=i + + + Printer1.Justify = 0 + Printer1.WriteString( (c.GetString("HVD_CANT"))&"- ") + Printer1.Justify = 0 + Dim firstChar As String = c.GetString("HVD_PRONOMBRE").SubString2(0, 1) ' Obtiene el primer carácter + Dim productoinven As String + + ' Verificar si el primer carácter es un número + If Asc(firstChar) >= Asc("0") And Asc(firstChar) <= Asc("9") Then + ' Es un número - tomar a partir del 4to carácter + productoinven = c.GetString("HVD_PRONOMBRE").SubString(4) + Else +' Es una letra u otro carácter - tomar completo + productoinven = c.GetString("HVD_PRONOMBRE") + End If + + Log(productoinven) + Printer1.WriteString(productoinven) + Printer1.WriteString(" " & CRLF) + Printer1.WriteString(" " & CRLF) + + + Next + + Next + End If + c.Close + + Dim sumainv As Cursor = Starter.skmt.ExecQuery("SELECT SUM(HVD_CANT) AS CANTIDAD FROM HIST_VENTAS WHERE HVD_CODPROMO <> HVD_PROID") + sumainv.Position = 0 + + Printer1.WriteString("------------------------------" & CRLF) + Printer1.WriteString("Total piezas: " & sumainv.GetString("CANTIDAD")& CRLF) + Printer1.WriteString("------------------------------" & CRLF) + Printer1.Justify = 0 + Printer1.WriteString(" " & CRLF) + Printer1.WriteString(" " & CRLF) + Printer1.WriteString(" " & CRLF) + Printer1.WriteString(" " & CRLF) + Sleep(1000) + Printer1.DisConnect + ProgressDialogHide + + +End Sub + +Sub Printer1_Connected (Success As Boolean) +' If Logger Then Log("Printer1_Connected") + If Success Then + ToastMessageShow("Impresora conectada", False) + Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) + Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP",Starter.mac_impresora)) +' If logger Then LogColor("Impresora conectada", Colors.Green) +' B_IMP2.Enabled = True + impresoraConectada = True + Else +' Msgbox(Printer1.ConnectedErrorMsg, "Error connecting.") 'ignore +' ToastMessageShow("Error conectando la impresora", False) + LogColor("Error conectando la impresora", Colors.Red) + errorImpresora = errorImpresora + 1 + If errorImpresora > 1 Then + Starter.MAC_IMPRESORA = "0" + errorImpresora = 0 + End If + End If +End Sub + +Sub Printer1_Error + Log("error printer") +End Sub + +Sub Printer_Connected (Success As Boolean) + If Success Then +' B_IMP.Enabled = True + PASA_IMP = "1" + Else +' B_IMP.Enabled = False + If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore + StartPrinter + End If + End If +End Sub + +Sub StartPrinter + Dim PairedDevices As Map + Dim L1 As List + Dim resimp As Int + ToastMessageShow("Printing.....",True) + PairedDevices.Initialize + Try + PairedDevices = cmp20.GetPairedDevices + Catch + Msgbox("Getting Paired Devices","Printer Error") 'ignore + printer.Close + cmp20.Disconnect + End Try + + If PairedDevices.Size = 0 Then + Msgbox("Error Connecting to Printer - Printer Not Found","") 'ignore + Return + End If + + If PairedDevices.Size = 1 Then + Try + cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) + Catch + Msgbox("Connecting","Printer Error") 'ignore + printer.Close + cmp20.Disconnect + End Try + Else + L1.Initialize + For i = 0 To PairedDevices.Size - 1 + L1.Add(PairedDevices.GetKeyAt(i)) + Next + resimp = InputList(L1, "Choose device", -1) 'ignore + If resimp <> DialogResponse.CANCEL Then + cmp20.Connect(PairedDevices.Get(L1.Get(resimp))) + End If + End If End Sub \ No newline at end of file diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal index 9b01299..a4784af 100644 Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ diff --git a/B4A/Files/folioabono.bal b/B4A/Files/folioabono.bal index 0cac595..9f9617f 100644 Binary files a/B4A/Files/folioabono.bal and b/B4A/Files/folioabono.bal differ diff --git a/B4A/Files/images.png b/B4A/Files/images.png new file mode 100644 index 0000000..d21dd9d Binary files /dev/null and b/B4A/Files/images.png differ diff --git a/B4A/Files/inventarios.jpg b/B4A/Files/inventarios.jpg new file mode 100644 index 0000000..50fdc17 Binary files /dev/null and b/B4A/Files/inventarios.jpg differ diff --git a/B4A/Files/inventarios.png b/B4A/Files/inventarios.png new file mode 100644 index 0000000..b8f0d7f Binary files /dev/null and b/B4A/Files/inventarios.png differ diff --git a/B4A/Files/marker-amarillo.png b/B4A/Files/marker-amarillo.png new file mode 100644 index 0000000..fd9eb5b Binary files /dev/null and b/B4A/Files/marker-amarillo.png differ diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal index 630079a..d7bd71d 100644 Binary files a/B4A/Files/principal.bal and b/B4A/Files/principal.bal differ diff --git a/B4A/MAPA_RUTAS.bas b/B4A/MAPA_RUTAS.bas index aaeb85f..7e64acb 100644 --- a/B4A/MAPA_RUTAS.bas +++ b/B4A/MAPA_RUTAS.bas @@ -161,11 +161,37 @@ Sub MapFragment1_Ready ' If esteAzul = 4 Then esteAzul2= NumSerie&"marker-azul3.png" ' If esteAzul = 5 Then esteAzul2= NumSerie&"marker-azul4.png" - If esteAzul = 1 Then esteAzul2= "marker-azul.png" - If esteAzul = 2 Then esteAzul2= "marker-azul1.png" - If esteAzul = 3 Then esteAzul2= "marker-azul2.png" - If esteAzul = 4 Then esteAzul2= "marker-azul3.png" - If esteAzul = 5 Then esteAzul2= "marker-azul4.png" + Dim pedidos As Cursor = Starter.skmt.ExecQuery2("select * from HIST_VENTAS WHERE HVD_CLIENTE = ?", Array As String(c.GetString("CAT_CL_CODIGO"))) + Log(c.GetString("CAT_CL_CODIGO")&" "& pedidos.RowCount) + If pedidos.RowCount > 1 Then + + If esteAzul = 1 Then esteAzul2= "marker-azul.png" + If esteAzul = 2 Then esteAzul2= "marker-azul1.png" + If esteAzul = 3 Then esteAzul2= "marker-azul2.png" + If esteAzul = 4 Then esteAzul2= "marker-azul3.png" + If esteAzul = 5 Then esteAzul2= "marker-azul4.png" + If esteAzul = 6 Then esteAzul2= "marker-azul1.png" + + Else If pedidos.RowCount = 1 Then + + pedidos.Position = 0 + If pedidos.GetString("HVD_PRONOMBRE") = "Cobranza Pendiente" Then + If esteAzul = 1 Then esteAzul2= "marker-amarillo.png" + If esteAzul = 2 Then esteAzul2= "marker-amarillo.png" + If esteAzul = 3 Then esteAzul2= "marker-amarillo.png" + If esteAzul = 4 Then esteAzul2= "marker-amarillo.png" + If esteAzul = 5 Then esteAzul2= "marker-amarillo.png" + If esteAzul = 6 Then esteAzul2= "marker-amarillo.png" + Else + If esteAzul = 1 Then esteAzul2= "marker-azul.png" + If esteAzul = 2 Then esteAzul2= "marker-azul1.png" + If esteAzul = 3 Then esteAzul2= "marker-azul2.png" + If esteAzul = 4 Then esteAzul2= "marker-azul3.png" + If esteAzul = 5 Then esteAzul2= "marker-azul4.png" + If esteAzul = 6 Then esteAzul2= "marker-azul1.png" + End If + + End If ' MARK_VERDE = gmap.AddMarker3(LatitudRu,LongitudRU,CODIGO, Subs.CreateBitmapWithNumber(LoadBitmap(File.DirAssets, "marker-verde.png"), i+350)) ' Log(ruta & "|" & esteAzul & "|" & esteAzul2) diff --git a/B4A/Starter.bas b/B4A/Starter.bas index 1f30c31..ee99579 100644 --- a/B4A/Starter.bas +++ b/B4A/Starter.bas @@ -33,8 +33,8 @@ Sub Process_Globals Public SharedFolder As String 'Para actualizar apk Dim cedisLocation As Location Dim reqManager As DBRequestManager - Dim server As String = "http://187.189.244.154:1782" -' Dim server As String = "http://192.168.100.10:1781" +' Dim server As String = "http://187.189.244.154:1782" + Dim server As String = "http://keymon.net:1782" ' Dim server As String = "http://keymon.lat:9000" ' Dim server = "http://192.168.100.10:1781" Dim muestraProgreso = 0 @@ -113,7 +113,7 @@ Sub ENVIA_ULTIMA_GPS skmt.Initialize(ruta,"kmt.db", True) ' Log("server: "&Main.server) skmt.Initialize(ruta,"kmt.db", True) - If B4XPages.MainPage.logger Then LogColor("Iniciamos ENVIA_ULTIMA_GPS", Colors.red) +' If B4XPages.MainPage.logger Then LogColor("Iniciamos ENVIA_ULTIMA_GPS", Colors.red) DateTime.TimeFormat = "HHmmss" B4XPages.MainPage.ultimaActualizacionGPS = DateTime.Time(DateTime.Now) cmd.Initialize @@ -125,7 +125,8 @@ Sub ENVIA_ULTIMA_GPS cmd.Name = "UPDATE_ACTUAL_GPS_GUNA_VN" ' cmd.Parameters = Array As Object(B4XPages.MainPage.clientesvisitados, B4XPages.MainPage.clientestotal, B4XPages.MainPage.clientesventa, B4XPages.MainPage.montoRechazado, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.batt, B4XPages.MainPage.montoEntregado, B4XPages.MainPage.montoRechazado,B4XPages.MainPage.clientestotal, B4XPages.MainPage.porVisitar, B4XPages.MainPage.entregas, B4XPages.MainPage.rechazos, B4XPages.MainPage.ALMACEN, B4XPages.MainPage.rutapreventa ) cmd.Parameters = Array As String(B4XPages.MainPage.montoActual,B4XPages.MainPage.montoRechazado,B4XPages.MainPage.monto_entregadoactual,B4XPages.MainPage.piezas_entregdas, B4XPages.MainPage.clientestotal,B4XPages.MainPage.entregas, B4XPages.MainPage.rechazos, (B4XPages.MainPage.rechazos + B4XPages.MainPage.entregas), B4XPages.MainPage.porVisitar, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.batt,Application.VersionName,B4XPages.MainPage.ALMACEN, B4XPages.MainPage.rutapreventa) - Log(B4XPages.MainPage.montoActual&", "&B4XPages.MainPage.montoRechazado&", "&B4XPages.MainPage.monto_entregadoactual&", "&B4XPages.MainPage.piezas_entregdas&", "& B4XPages.MainPage.clientestotal&", "&B4XPages.MainPage.entregas&", "& B4XPages.MainPage.rechazos&", "& (B4XPages.MainPage.rechazos + B4XPages.MainPage.entregas)&", "& B4XPages.MainPage.porVisitar&", "& B4XPages.MainPage.lat_gps&", "& B4XPages.MainPage.lon_gps&", "& B4XPages.MainPage.batt&", "&Application.VersionName&", "&B4XPages.MainPage.ALMACEN&", "& B4XPages.MainPage.rutapreventa) +' Log(B4XPages.MainPage.montoActual&" , "&B4XPages.MainPage.montoRechazado&" , "&B4XPages.MainPage.monto_entregadoactual&" , "&B4XPages.MainPage.piezas_entregdas&" , "&B4XPages.MainPage.clientestotal&" , "&B4XPages.MainPage.entregas&" , "&B4XPages.MainPage.rechazos&" , "&(B4XPages.MainPage.rechazos + B4XPages.MainPage.entregas)&" , "&B4XPages.MainPage.porVisitar) +' Log(B4XPages.MainPage.montoActual&", "&B4XPages.MainPage.montoRechazado&", "&B4XPages.MainPage.monto_entregadoactual&", "&B4XPages.MainPage.piezas_entregdas&", "& B4XPages.MainPage.clientestotal&", "&B4XPages.MainPage.entregas&", "& B4XPages.MainPage.rechazos&", "& (B4XPages.MainPage.rechazos + B4XPages.MainPage.entregas)&", "& B4XPages.MainPage.porVisitar&", "& B4XPages.MainPage.lat_gps&", "& B4XPages.MainPage.lon_gps&", "& B4XPages.MainPage.batt&", "&Application.VersionName&", "&B4XPages.MainPage.ALMACEN&", "& B4XPages.MainPage.rutapreventa) ' If B4XPages.MainPage.logger Then Log($"montoActual: ${B4XPages.MainPage.montoActual}, cTotal: ${B4XPages.MainPage.clientestotal}, cVenta: ${B4XPages.MainPage.clientesventa}, cVisitados: ${B4XPages.MainPage.clientesvisitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, montoRechazado: ${B4XPages.MainPage.montoRechazado}, montoEntregado: ${B4XPages.MainPage.montoEntregado}, porVisitar: ${B4XPages.MainPage.porVisitar}, entregas: ${B4XPages.MainPage.entregas}, rechazos: ${B4XPages.MainPage.rechazos}, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$) reqManager.ExecuteCommand(cmd, "up_geolocalizacion") skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) diff --git a/B4A/guna_reparto.b4a b/B4A/guna_reparto.b4a index 8497340..486564f 100644 --- a/B4A/guna_reparto.b4a +++ b/B4A/guna_reparto.b4a @@ -28,69 +28,73 @@ File32=guardagestion.bal File33=guna_viejo.png File34=guna_viejo2.png File35=historico.bal -File36=infonavit1.jpg -File37=intmex_logo_192x192.jpg -File38=intmex_logo_192x192.png -File39=itembuttonblue.png +File36=images.png +File37=infonavit1.jpg +File38=intmex_logo_192x192.jpg +File39=intmex_logo_192x192.png File4=atras.png -File40=izquierda.png -File41=izquierda1.png -File42=kelloggs.png -File43=keymon_logo.png -File44=kmt.db -File45=kmt2.db -File46=kmt3.db -File47=login.bal -File48=logo sanfer.jpg -File49=logo_exitus1.jpg +File40=inventarios.jpg +File41=INVENTARIOS.png +File42=itembuttonblue.png +File43=izquierda.png +File44=izquierda1.png +File45=kelloggs.png +File46=keymon_logo.png +File47=kmt.db +File48=kmt2.db +File49=kmt3.db File5=atras1.png -File50=logo_mariana.jpg -File51=logo-guna-18.jpg -File52=logo-guna-18.png -File53=logo-guna-blanco.png -File54=logo-guna-contorno.png -File55=MainPage.bal -File56=malo.jpg -File57=mapa.bal -File58=mapa_cliente.bal -File59=mapa_rutas.bal +File50=login.bal +File51=logo sanfer.jpg +File52=logo_exitus1.jpg +File53=logo_mariana.jpg +File54=logo-guna-18.jpg +File55=logo-guna-18.png +File56=logo-guna-blanco.png +File57=logo-guna-contorno.png +File58=MainPage.bal +File59=malo.jpg File6=buscar.bal -File60=mariana.jpg -File61=mariana_logo_192x192.jpg -File62=MARQUEZ_logo_192x192.jpg -File63=no_venta.bal -File64=nuevocliente.bal -File65=panel_pick_ciego.bal -File66=pedido.bal -File67=planfia_logo.png -File68=planfia_logo_old.png -File69=planfia_logo_old2.png +File60=mapa.bal +File61=mapa_cliente.bal +File62=mapa_rutas.bal +File63=mariana.jpg +File64=mariana_logo_192x192.jpg +File65=marker-amarillo.png +File66=MARQUEZ_logo_192x192.jpg +File67=no_venta.bal +File68=nuevocliente.bal +File69=panel_pick_ciego.bal File7=CALIFICARCLIENTE.png -File70=principal.bal -File71=proditem.bal -File72=proditem2.bal -File73=productos.bal -File74=profina.jpg -File75=PROFINA.png -File76=rechazos.jpg -File77=RECHAZOS.png -File78=rechazosblanco.png -File79=sync.png +File70=pedido.bal +File71=planfia_logo.png +File72=planfia_logo_old.png +File73=planfia_logo_old2.png +File74=principal.bal +File75=proditem.bal +File76=proditem2.bal +File77=productos.bal +File78=profina.jpg +File79=PROFINA.png File8=check.bal -File80=tabulador.bal -File81=Tabulador.jpg -File82=TABULADOR.png -File83=tabuladorblanco.png -File84=telefonos.bal -File85=ubicacionblanco.png -File86=Ubicar_clientes.jpg -File87=UBICARCLIENTE.png -File88=usuario.png -File89=vecteezy_abstract-color-polygon-background-design-abstract-geometric_22231666.jpg +File80=rechazos.jpg +File81=RECHAZOS.png +File82=rechazosblanco.png +File83=sync.png +File84=tabulador.bal +File85=Tabulador.jpg +File86=TABULADOR.png +File87=tabuladorblanco.png +File88=telefonos.bal +File89=ubicacionblanco.png File9=checklist.bal -File90=visitaazul.png -File91=visitaazul1.png -File92=visitadosblanco.png +File90=Ubicar_clientes.jpg +File91=UBICARCLIENTE.png +File92=usuario.png +File93=vecteezy_abstract-color-polygon-background-design-abstract-geometric_22231666.jpg +File94=visitaazul.png +File95=visitaazul1.png +File96=visitadosblanco.png FileGroup1=Default Group FileGroup10=Default Group FileGroup11=Default Group @@ -183,6 +187,10 @@ FileGroup9=Default Group FileGroup90=Default Group FileGroup91=Default Group FileGroup92=Default Group +FileGroup93=Default Group +FileGroup94=Default Group +FileGroup95=Default Group +FileGroup96=Default Group Group=Default Group Library1=appupdating Library10=googlemaps @@ -243,7 +251,7 @@ Module6=C_Cliente Module7=C_Clientes Module8=C_Detalle_Promo Module9=C_DetalleVenta -NumberOfFiles=92 +NumberOfFiles=96 NumberOfLibraries=27 NumberOfModules=31 Version=12.8 @@ -251,7 +259,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Guna Reparto #VersionCode: 1 - #VersionName: 5.05.20 + #VersionName: 5.07.01 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/guna_reparto.b4a.meta b/B4A/guna_reparto.b4a.meta index d5f08a5..7a73a46 100644 --- a/B4A/guna_reparto.b4a.meta +++ b/B4A/guna_reparto.b4a.meta @@ -94,6 +94,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Principal,cargaAlmacen2,2447,6,C_Principal,JobDone,1669,2,C_Principal,envioinfo,1015,0,C_Principal,cargaGeneral,1177,6,C_Principal,e_ruta_EnterPressed,1823,0,C_Principal,ListView2_ItemClick,2386,0,C_Principal,et_ruta2_TextChanged,2393,5,Diseñador Visual,principal.bal,-100,6,C_Principal,B4XPage_Appear,176,6,C_Principal,cargar_Click,1074,6,B4XMainPage,B4XPage_Created,226,0 +NavigationStack=C_Cliente,gest_Click,528,6,C_Cliente,HIST_Click,961,0,C_Cliente,b_cancel_pagare_Click,2995,2,C_Cliente,Class_Globals,1,0,C_Cliente,CheckBox1_CheckedChange,1976,0,C_Cliente,b_cxc_Click,1794,6,C_Cliente,cb_tipopago_SelectedIndexChanged,1788,0,C_Cheklist,Class_Globals,0,0,C_Cliente,b_acred_Click,1771,0,C_Cliente,b_abono_Click,2070,6 SelectedBuild=0 VisibleModules=2,16,4,5,6,7,9,30,29,27