mirror of
https://github.com/KeymonSoft/Guna_Reparto_Imp.git
synced 2026-04-17 12:56:18 +00:00
...
This commit is contained in:
@@ -1277,6 +1277,11 @@ Sub Class_Globals
|
||||
Private p_importarBDWA As Panel
|
||||
|
||||
Dim intentUsado As Boolean = False
|
||||
Private p_bypass As Panel
|
||||
Private et_bypass As EditText
|
||||
Private b_cancelabypass As Button
|
||||
Private b_acepbypass As Button
|
||||
Private b_bypass As Button
|
||||
End Sub
|
||||
|
||||
Public Sub Initialize
|
||||
@@ -1335,6 +1340,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
||||
Subs.agregaColumna("CAT_GUNAPROD3", "CAT_DP_CANT_MIN_VENTA", "TEXT")
|
||||
Subs.agregaColumna("ABONOS","TIPO_PAGO","TEXT")
|
||||
Subs.agregaColumna("ABONOS","a_numpago","TEXT")
|
||||
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS GEOCERCA (ACTIVA TEXT)")
|
||||
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BARRAS (BARRA BLOB)")
|
||||
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)")
|
||||
@@ -1754,10 +1761,11 @@ Private Sub i_engrane_Click
|
||||
Subs.panelVisible(p_appUpdate, 0, 0)
|
||||
|
||||
If user.Text.Trim = "KMTS1" Then
|
||||
p_importarBDWA.Visible = True
|
||||
p_importarBDWA.Visible = False
|
||||
Else
|
||||
p_importarBDWA.Visible = False
|
||||
End If
|
||||
If user.Text.trim = "KMTS1" Then b_bypass.Visible = True Else b_bypass.Visible = False
|
||||
End Sub
|
||||
|
||||
Private Sub B4XPage_CloseRequest As ResumableSub
|
||||
@@ -2232,4 +2240,42 @@ Private Sub cb_importarBDWA_CheckedChange(Checked As Boolean)
|
||||
' LogColor($"cb_importarBDWA_CheckedChange = ${Checked}"$, Colors.Red)
|
||||
Starter.skmt.ExecNonQuery("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'IMPORTAR_BD_WA'")
|
||||
Starter.skmt.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('IMPORTAR_BD_WA', '${Checked}')"$)
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub b_bypass_Click
|
||||
c = Starter.skmt.ExecQuery("SELECT * FROM kmt_info")
|
||||
If c.RowCount > 0 Then
|
||||
Subs.panelVisible(p_bypass,0,0)
|
||||
p_bypass.Visible = True
|
||||
Else
|
||||
MsgboxAsync("No hay ruta cargada, favor de cargar día","Atención")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub b_acepbypass_Click
|
||||
DateTime.TimeFormat = "HH:mm:ss"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
sDate = DateTime.Date(DateTime.Now)
|
||||
sTime = DateTime.Time(DateTime.Now)
|
||||
|
||||
Dim datebypass() As String = Regex.Split("/",sDate)
|
||||
Dim timebypass() As String = Regex.Split(":",sTime)
|
||||
|
||||
If et_bypass.Text = datebypass(0) & timebypass(0) & timebypass(1) Then
|
||||
Starter.skmt.ExecNonQuery2("UPDATE GEOCERCA set ACTIVA = ? ", Array As Object(0))
|
||||
et_bypass.Text = ""
|
||||
MsgboxAsync("Geocerca Deshabilitada","Atención")
|
||||
p_bypass.Visible = False
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub b_cancelabypass_Click
|
||||
p_bypass.Visible = False
|
||||
et_bypass.Text = ""
|
||||
End Sub
|
||||
|
||||
Private Sub p_bypass_Click
|
||||
|
||||
End Sub
|
||||
@@ -29,7 +29,8 @@ Sub Class_Globals
|
||||
Dim s As Cursor
|
||||
Dim limite_credito As Double
|
||||
Dim banderaabono As String
|
||||
|
||||
Dim m_lat_al, m_lon_al As String
|
||||
Dim distance2 As Long
|
||||
|
||||
Dim ListView1 As ListView
|
||||
Dim la_cuenta As Label
|
||||
@@ -93,6 +94,7 @@ Sub Class_Globals
|
||||
Dim rutaprev As String
|
||||
Dim rutarep As String
|
||||
Dim montopagare As String
|
||||
Private qr As QRGenerator
|
||||
Private p_abono As Panel
|
||||
Private clv_abonos As CustomListView
|
||||
Private et_abono As EditText
|
||||
@@ -125,6 +127,11 @@ Sub Class_Globals
|
||||
Private l_telefono As Label
|
||||
Private l_fecha As Label
|
||||
Private CheckBox1 As CheckBox
|
||||
Private ImageView1 As ImageView
|
||||
|
||||
Private barcode As barcodeGenerator
|
||||
Private B4XImageView1 As B4XImageView
|
||||
Private ImageView2 As ImageView
|
||||
End Sub
|
||||
|
||||
'You can add more parameters here.
|
||||
@@ -218,9 +225,31 @@ Sub B4XPage_Appear
|
||||
p_abono.Height = Root.Height
|
||||
p_principal.Width = Root.Width
|
||||
|
||||
Dim cor_al As Cursor = Starter.skmt.ExecQuery("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'COORDS_ALMACEN' ")
|
||||
If cor_al.RowCount > 0 Then
|
||||
cor_al.Position = 0
|
||||
Dim latlong() As String = Regex.Split(",",cor_al.GetString("CAT_VA_VALOR"))
|
||||
m_lat_al = latlong(1)
|
||||
m_lon_al = latlong(0)
|
||||
|
||||
End If
|
||||
|
||||
barcode.Initialize
|
||||
qr.Initialize(B4XImageView1.mBase.Width)
|
||||
|
||||
Private cym As Map = Subs.traeCantYMonto2(Subs.traeCliente)
|
||||
L_CANT.Text = cym.Get("cantidad")
|
||||
l_total.Text = Round2(cym.Get("monto"), 2)
|
||||
|
||||
CallSubDelayed(Tracker, "Track")
|
||||
CallSubDelayed(Tracker, "StartFLPSmall")
|
||||
CallSubDelayed(Tracker, "StartFLP2")
|
||||
If Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
|
||||
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
||||
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
||||
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
||||
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
||||
End If
|
||||
|
||||
Dim mostrarimp As Cursor = Starter.skmt.ExecQuery($"SELECT gestion from kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)"$)
|
||||
mostrarimp.Position = 0
|
||||
@@ -254,6 +283,24 @@ Sub B4XPage_Appear
|
||||
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
|
||||
|
||||
Dim geo As Cursor = Starter.skmt.ExecQuery("SELECT ACTIVA FROM GEOCERCA")
|
||||
If geo.RowCount > 0 Then
|
||||
geo.Position = 0
|
||||
If geo.GetInt("ACTIVA") = 0 Then
|
||||
HIST.Visible = True
|
||||
' b_cxc.Visible = True
|
||||
b_noEntrega.Visible = True
|
||||
gest.Visible = True
|
||||
Else If geo.GetInt("ACTIVA") = 1 Then
|
||||
HIST.Visible = False
|
||||
' b_cxc.Visible = False
|
||||
b_noEntrega.Visible = False
|
||||
gest.Visible = False
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
' If CREDITO = "1" Then
|
||||
' Msgbox("AVISO","SE TIENE QUE IMPRIMIR PAGARÉ") 'ignore
|
||||
@@ -411,14 +458,14 @@ Sub B4XPage_Appear
|
||||
b_cancel_pagare.Visible = False
|
||||
End If
|
||||
|
||||
CallSubDelayed(Tracker, "Track")
|
||||
CallSubDelayed(Tracker, "StartFLPSmall")
|
||||
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
|
||||
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
||||
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
||||
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
||||
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
||||
End If
|
||||
' CallSubDelayed(Tracker, "Track")
|
||||
' CallSubDelayed(Tracker, "StartFLPSmall")
|
||||
' If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
|
||||
' B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
||||
' B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
||||
'' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
||||
' GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
||||
' End If
|
||||
|
||||
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
|
||||
@@ -445,6 +492,13 @@ Sub B4XPage_Appear
|
||||
' End If
|
||||
'
|
||||
' End If
|
||||
|
||||
If (almacen = 81 Or almacen = 94) Then
|
||||
HIST.Visible = True
|
||||
' b_cxc.Visible = True
|
||||
b_noEntrega.Visible = True
|
||||
gest.Visible = True
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -476,17 +530,91 @@ Sub GPS_LocationChanged (Location1 As Location)
|
||||
Else
|
||||
|
||||
|
||||
Dim l1, l2 As Location
|
||||
Dim l1, l2,l3 As Location
|
||||
l1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
|
||||
Log($"Coordenadas de la tienda - lat:${LATITUD}, lon:${LONGITUD}"$)
|
||||
l2.Initialize2(LATITUD, LONGITUD)
|
||||
|
||||
l3.Initialize2(m_lat_al,m_lon_al)
|
||||
|
||||
|
||||
'now we need the distance between our location and the target location
|
||||
distance = l1.DistanceTo(l2) 'the result is in meter
|
||||
|
||||
distance2 = l1.DistanceTo(l3) 'the result is in meter
|
||||
Log("DISTANCIA "&distance)
|
||||
|
||||
|
||||
Dim geo As Cursor = Starter.skmt.ExecQuery("SELECT ACTIVA FROM GEOCERCA")
|
||||
If geo.RowCount > 0 Then
|
||||
geo.Position = 0
|
||||
If geo.GetInt("ACTIVA") = 1 Then
|
||||
|
||||
If (almacen = 88 Or almacen = 92) Then
|
||||
|
||||
If distance2 < 100 Then
|
||||
HIST.Visible = True
|
||||
b = Starter.skmt.ExecQuery("select COUNT(*) AS CLIENTE FROM ABONOSP WHERE CLIENTE IN (Select CUENTA from cuentaa) AND SALDO_PENDIENTE <> 0")
|
||||
b.Position = 0
|
||||
Dim cabonos As String = b.GetString("CLIENTE")
|
||||
If cabonos = 0 Then
|
||||
b_cxc.Visible = False
|
||||
Else
|
||||
b_cxc.Visible = True
|
||||
End If
|
||||
b_noEntrega.Visible = True
|
||||
gest.Visible = True
|
||||
Else
|
||||
|
||||
If distance < 100 Then
|
||||
HIST.Visible = True
|
||||
b = Starter.skmt.ExecQuery("select COUNT(*) AS CLIENTE FROM ABONOSP WHERE CLIENTE IN (Select CUENTA from cuentaa) AND SALDO_PENDIENTE <> 0")
|
||||
b.Position = 0
|
||||
Dim cabonos As String = b.GetString("CLIENTE")
|
||||
If cabonos = 0 Then
|
||||
b_cxc.Visible = False
|
||||
Else
|
||||
b_cxc.Visible = True
|
||||
End If
|
||||
b_noEntrega.Visible = True
|
||||
gest.Visible = True
|
||||
Else
|
||||
HIST.Visible = False
|
||||
b_cxc.Visible = False
|
||||
b_noEntrega.Visible = False
|
||||
gest.Visible = False
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
HIST.Visible = True
|
||||
b = Starter.skmt.ExecQuery("select COUNT(*) AS CLIENTE FROM ABONOSP WHERE CLIENTE IN (Select CUENTA from cuentaa) AND SALDO_PENDIENTE <> 0")
|
||||
b.Position = 0
|
||||
Dim cabonos As String = b.GetString("CLIENTE")
|
||||
If cabonos = 0 Then
|
||||
b_cxc.Visible = False
|
||||
Else
|
||||
b_cxc.Visible = True
|
||||
End If
|
||||
b_noEntrega.Visible = True
|
||||
gest.Visible = True
|
||||
End If
|
||||
Else If geo.GetInt("ACTIVA") = 0 Then
|
||||
HIST.Visible = True
|
||||
b = Starter.skmt.ExecQuery("select COUNT(*) AS CLIENTE FROM ABONOSP WHERE CLIENTE IN (Select CUENTA from cuentaa) AND SALDO_PENDIENTE <> 0")
|
||||
b.Position = 0
|
||||
Dim cabonos As String = b.GetString("CLIENTE")
|
||||
If cabonos = 0 Then
|
||||
b_cxc.Visible = False
|
||||
Else
|
||||
b_cxc.Visible = True
|
||||
End If
|
||||
b_noEntrega.Visible = True
|
||||
gest.Visible = True
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim sDate,sTime As String
|
||||
@@ -513,7 +641,7 @@ Sub gest_Click
|
||||
B4XPages.ShowPage("Principal")
|
||||
End If
|
||||
Else
|
||||
If Subs.traeAlmacen = 92 Then
|
||||
If (Subs.traeAlmacen = 92 Or Subs.traeAlmacen = 94) Then
|
||||
|
||||
Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA")
|
||||
k.Position = 0
|
||||
@@ -584,7 +712,7 @@ Sub gest_Click
|
||||
End Sub
|
||||
|
||||
Sub checacredito
|
||||
If l_total.Text = ".00" And L_CANT.Text = 1 Then
|
||||
If l_total.Text = ".00" And (L_CANT.Text = 1 OR L_CANT.Text = 2) Then
|
||||
Guardado
|
||||
Else
|
||||
|
||||
@@ -600,100 +728,37 @@ Sub checacredito
|
||||
x1.Position = 0
|
||||
limite_credito = 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")
|
||||
' c.Position = 0
|
||||
' 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
|
||||
|
||||
If Subs.traeAlmacen = 81 Then
|
||||
|
||||
Log(12)
|
||||
escreditoono = 1
|
||||
' If l_total.Text.Replace(",","") <= NumberFormat2( x1.GetString("CAT_CL_LIMITECREDITO").Replace(",",""),0,2,2,False) Then
|
||||
limite_credito = x1.GetString("CAT_CL_LIMITECREDITO")
|
||||
esPagoACreditoGuardamosPagare'' para brincar el r
|
||||
Log(3)
|
||||
'' descomentar
|
||||
' Private cliente As String = Subs.traeCliente
|
||||
' c = Starter.skmt.ExecQuery($"select CAT_CL_RUTA from kmt_info where cat_cl_codigo = '${cliente}'"$)
|
||||
' If c.RowCount > 0 Then
|
||||
' c.Position = 0
|
||||
' Private RUTA_PREVENTA = c.GetString("CAT_CL_RUTA")
|
||||
' End If
|
||||
' c = Starter.skmt.ExecQuery($"select distinct hvd_num_ticket from hist_ventas where hvd_cliente = '${cliente}'"$)
|
||||
' If c.RowCount > 0 Then
|
||||
' c.Position = 0
|
||||
' NOTA = c.GetString("HVD_NUM_TICKET")
|
||||
' End If
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' sDate=DateTime.Date(DateTime.Now)
|
||||
' sTime=DateTime.Time(DateTime.Now)
|
||||
' ProgressDialogShow("Un momento por favor!!")
|
||||
' Dim cmd As DBCommand
|
||||
' cmd.Initialize
|
||||
' cmd.Name = "insertaPagareGunaRep"
|
||||
' cmd.Parameters = Array As Object(Subs.traeAlmacen, RUTA_PREVENTA, Subs.traeRutaReparto, cliente, l_total.Text.Replace(",",""), NOTA, sDate & " " & sTime)
|
||||
' reqManager.ExecuteCommand(cmd, $"insertaPagare_${NOTA}"$)
|
||||
'' fin descomentar
|
||||
If l_total.Text <> ".00" Then
|
||||
esPagoACreditoGuardamosPagare
|
||||
End If
|
||||
|
||||
' Else
|
||||
' MsgboxAsync("El cliente debe de dar un pago de "& (l_total.Text.Replace(",","") - x1.GetString("CAT_CL_LIMITECREDITO")) &"","Atención")
|
||||
' Log(3)
|
||||
' Tipoentrega = "CREDITO"
|
||||
' DateTime.DateFormat = "dd/MM/yyyy"
|
||||
' DateTime.TimeFormat = "HH:mm:ss"
|
||||
' sDate=DateTime.Date(DateTime.Now)
|
||||
' sTime=DateTime.Time(DateTime.Now)
|
||||
' 'cliente
|
||||
' c=Starter.skmt.ExecQuery("select CUENTA from cuentaa")
|
||||
' c.Position = 0
|
||||
' cuenta = c.GetString("CUENTA")
|
||||
' c.Close
|
||||
' 'usuario
|
||||
' c=Starter.skmt.ExecQuery("select usuario from usuarioa")
|
||||
' c.Position = 0
|
||||
' usuario = c.GetString("USUARIO")
|
||||
' c.Close
|
||||
' 'Almacen
|
||||
' c=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN")
|
||||
' c.Position = 0
|
||||
' almacen = c.GetString("ID_ALMACEN")
|
||||
' c.Close
|
||||
' 'FECHA PREVENTA
|
||||
' c=Starter.skmt.ExecQuery("select HVD_FECHA from HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)")
|
||||
' c.Position = 0
|
||||
' fechaprev = c.GetString("HVD_FECHA")
|
||||
' c.Close
|
||||
' 'RUTAPREVENTA
|
||||
' c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)")
|
||||
' c.Position = 0
|
||||
' rutaprev = c.GetString("CAT_CL_RUTA")
|
||||
' c.Close
|
||||
' 'RUTA rep
|
||||
' c=Starter.skmt.ExecQuery("select RUTAA from RUTAA")
|
||||
' c.Position = 0
|
||||
' rutarep = c.GetString("RUTAA")
|
||||
' c.Close
|
||||
' '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")
|
||||
' c.Position = 0
|
||||
' montopagare = c.GetString("MONTO")
|
||||
' 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) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (almacen,rutarep,rutaprev,fechaprev,(sDate),l_total.Text,usuario,cuenta))
|
||||
' B_IMP_Click
|
||||
' banderaimp = 1
|
||||
' End If
|
||||
Else
|
||||
|
||||
|
||||
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)
|
||||
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
|
||||
limite_credito = x1.GetString("CAT_CL_LIMITECREDITO")
|
||||
esPagoACreditoGuardamosPagare
|
||||
Log(3)
|
||||
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
Log(4)
|
||||
@@ -759,12 +824,20 @@ Sub esPagoACreditoGuardamosPagare
|
||||
banderaimp = 1
|
||||
Else
|
||||
If l_total.Text.Replace(",","") <= limite_credito Then
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
DateTime.TimeFormat = "HH:mm:ss"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
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
|
||||
Else
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
DateTime.TimeFormat = "HH:mm:ss"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
Log(limite_credito)
|
||||
Msgbox2Async("Se debe de realizar un pago por " & NumberFormat2((l_total.Text.Replace(",","")-limite_credito),0,2,2,False) & " por que exede el limite de credito","Atención","","Aceptar","Cancelar",LoadBitmap(File.DirAssets,"alert2.png"),False)
|
||||
Msgbox2Async("Se debe de realizar un pago por " & NumberFormat2((l_total.Text.Replace(",","")-limite_credito),0,2,2,False) & " por que excede el limite de credito","Atención","","Aceptar","Cancelar",LoadBitmap(File.DirAssets,"alert2.png"),False)
|
||||
Wait For Msgbox_Result (Result As Int)
|
||||
If Result= DialogResponse.CANCEL Then
|
||||
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))
|
||||
@@ -875,7 +948,13 @@ Sub Guardado
|
||||
' If mandamapa.RowCount > 0 Then
|
||||
' StartActivity(MAPA_RUTAS)
|
||||
' Else If mandamapa.RowCount = 0 Then
|
||||
B4XPages.ShowPage("Principal")
|
||||
' If (almacen = 81 Or almacen = 94) Then
|
||||
'
|
||||
'
|
||||
' Else
|
||||
|
||||
B4XPages.ShowPage("Principal")
|
||||
' End If
|
||||
' End If
|
||||
End Sub
|
||||
|
||||
@@ -963,16 +1042,7 @@ 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
|
||||
Msgbox2Async("Ya se gestiono el cliente, no se pueden hacer modificaciones","Atención","","","Ok",LoadBitmap(File.DirAssets,"alert2.png"),False)
|
||||
Wait For Msgbox_Result (Result As Int)
|
||||
If Result= DialogResponse.NEGATIVE Then
|
||||
B4XPages.ShowPage("Principal")
|
||||
End If
|
||||
Else
|
||||
|
||||
|
||||
Dim pagacheca2 As Cursor = Starter.skmt.ExecQuery("SELECT * FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)")
|
||||
|
||||
If pagacheca2.RowCount > 0 Then
|
||||
@@ -986,7 +1056,7 @@ Sub HIST_Click
|
||||
Else
|
||||
|
||||
|
||||
If Subs.traeAlmacen = 92 Then
|
||||
If (Subs.traeAlmacen = 92 Or Subs.traeAlmacen = 94) Then
|
||||
|
||||
Dim k As Cursor = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA")
|
||||
k.Position = 0
|
||||
@@ -1061,7 +1131,7 @@ Sub HIST_Click
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
' B4XPages.MainPage.historico.prodsMap.Initialize
|
||||
'' B4XPages.MainPage.historico.clv_pedido.Clear
|
||||
' B4XPages.ShowPage("Historico")
|
||||
@@ -1073,7 +1143,8 @@ Sub B_IMP_Click
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
@@ -1128,8 +1199,8 @@ Sub B_IMP_Click
|
||||
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
|
||||
If cont = 7 Then Printer1.Connect
|
||||
If cont > 15 Then impresoraConectada = True
|
||||
Loop
|
||||
Sleep(500)
|
||||
impresoraConectada = False
|
||||
@@ -1558,7 +1629,7 @@ Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
|
||||
If almacen = "81" Then
|
||||
Printer1.WriteString("Telefono de atención:" & CRLF)
|
||||
Printer1.WriteString("Telefono de atencion:" & CRLF)
|
||||
Printer1.WriteString("" & CRLF)
|
||||
End If
|
||||
|
||||
@@ -1627,7 +1698,7 @@ End Sub
|
||||
Sub Printer_Connected (Success As Boolean)
|
||||
If Success Then
|
||||
' B_IMP.Enabled = True
|
||||
PASA_IMP = "1"
|
||||
' PASA_IMP = "1"
|
||||
Else
|
||||
' B_IMP.Enabled = False
|
||||
If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore
|
||||
@@ -2310,7 +2381,8 @@ Sub imprime_abonopagare2
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
DateTime.TimeFormat = "HH:mm:ss"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
@@ -2375,6 +2447,8 @@ Sub imprime_abonopagare2
|
||||
TAMANO = 0
|
||||
ESPACIO = 22
|
||||
BLANCO = " "
|
||||
|
||||
|
||||
Dim bmp As Bitmap
|
||||
bmp.InitializeResize(File.DirAssets, "logo-guna-18.jpg", 192, 192, True) 'ignore
|
||||
Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
|
||||
@@ -2393,7 +2467,7 @@ Sub imprime_abonopagare2
|
||||
c7.Close
|
||||
|
||||
|
||||
|
||||
|
||||
Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF)
|
||||
' Printer1.WriteString(sucursal & CRLF)
|
||||
Printer1.WriteString(sDate & CRLF)
|
||||
@@ -2475,6 +2549,55 @@ Sub imprime_abonopagare2
|
||||
c4.Close
|
||||
|
||||
End If
|
||||
Dim numpago As Int = c5.RowCount + 1
|
||||
|
||||
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
|
||||
|
||||
'' codigo de barras
|
||||
' ImageView1.Bitmap = barcode.CODE128(notaabono&sDate&tipopagotick&numpago)
|
||||
'' codigo de qr
|
||||
B4XImageView1.SetBitmap(qr.Create(notaabono&sDate&tipopagotick&numpago))
|
||||
|
||||
|
||||
Dim Dirp As String = File.DirInternal
|
||||
Dim Dir As String
|
||||
Dim Dir2 As String
|
||||
Try
|
||||
File.MakeDir(Dirp,"/md")
|
||||
Dir = "/md"
|
||||
Log("creado en promotoria " & Dirp & Dir)
|
||||
Catch
|
||||
Dir = ""
|
||||
Log("creado en raiz")
|
||||
End Try
|
||||
|
||||
Try
|
||||
File.MakeDir(Dirp & Dir,"/reduccion")
|
||||
Dir2 = "/reduccion"
|
||||
Log("creado en promotoria " & Dirp & Dir & Dir2)
|
||||
Catch
|
||||
Dir = ""
|
||||
Log("creado en raiz")
|
||||
End Try
|
||||
|
||||
'' codigo de barras
|
||||
' Dim Out As OutputStream
|
||||
' Out = File.OpenOutput(File.DirInternal & Dir & Dir2, "Test.png", False)
|
||||
' barcode.CODE128(notaabono&sDate&tipopagotick&numpago).WriteToStream(Out, 100, "PNG")
|
||||
' Out.Close
|
||||
|
||||
'' codigo de qr
|
||||
Dim Out As OutputStream
|
||||
Out = File.OpenOutput(File.DirInternal & Dir & Dir2, "qr.png", False)
|
||||
qr.Create(notaabono&sDate&tipopagotick&numpago).WriteToStream(Out, 100, "PNG")
|
||||
Out.Close
|
||||
|
||||
|
||||
|
||||
@@ -2483,7 +2606,7 @@ Sub imprime_abonopagare2
|
||||
' 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)
|
||||
@@ -2501,9 +2624,7 @@ Sub imprime_abonopagare2
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString("-------------FIRMA------------" & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
|
||||
DateTime.DateFormat = "ddMMyyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
itemselect = "EFECTIVO"
|
||||
@@ -2511,16 +2632,27 @@ Sub imprime_abonopagare2
|
||||
' 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",NOTA&sDate&tipopagotick&numpago)
|
||||
|
||||
|
||||
|
||||
|
||||
' Dim bmp As Bitmap
|
||||
'' bmp.InitializeResize(File.DirAssets, "logo-guna-18.jpg", 192, 192, True) 'ignore
|
||||
|
||||
Dim bmp2 As Bitmap
|
||||
bmp2.InitializeResize(File.DirInternal & Dir & Dir2, "qr.png", 192, 192, True) 'ignore
|
||||
' bmp.Initialize(File.DirInternal & Dir & Dir2, "qr.png") 'ignore
|
||||
Dim myimage2 As AnImage = Printer1.ImageToBWIMage(bmp2)
|
||||
myimage2 = Printer1.DitherImage2D(myimage2, 128)
|
||||
myimage2= Printer1.PackImage(myimage2)
|
||||
Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
|
||||
Printer1.WriteString(Printer1.REVERSE)
|
||||
Printer1.PrintImage(myimage2)
|
||||
Printer1.WriteString(Printer1.UNREVERSE)
|
||||
|
||||
|
||||
' Printer1.WriteBarCode("I",NOTA&sDate&tipopagotick&numpago)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
@@ -2584,11 +2716,19 @@ End Sub
|
||||
' End If
|
||||
'End Sub
|
||||
|
||||
'Saves the data received from PictureTaken event
|
||||
Public Sub SavePictureToFile(Data() As Byte, Dir As String, FileName As String)
|
||||
Dim out As OutputStream = File.OpenOutput(Dir, FileName, False)
|
||||
out.WriteBytes(Data, 0, Data.Length)
|
||||
out.Close
|
||||
End Sub
|
||||
|
||||
Sub imprime_abonopagare
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
DateTime.TimeFormat = "HH:mm:ss"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
@@ -2636,6 +2776,7 @@ Sub imprime_abonopagare
|
||||
If cont > 15 Then impresoraConectada = True
|
||||
Loop
|
||||
Sleep(500)
|
||||
Log("asasdas")
|
||||
impresoraConectada = False
|
||||
Else
|
||||
' If logger Then Log("conectando 2")
|
||||
@@ -2643,9 +2784,10 @@ Sub imprime_abonopagare
|
||||
Private cont As Int = 0
|
||||
Do While Not(impresoraConectada) Or Not(Printer1.IsConnected)
|
||||
Sleep(1000)
|
||||
Log("asasdas")
|
||||
cont = cont + 1
|
||||
If cont = 2 Then Printer1.Connect
|
||||
If cont > 4 Then impresoraConectada = True
|
||||
If cont = 7 Then Printer1.Connect
|
||||
If cont > 15 Then impresoraConectada = True
|
||||
Loop
|
||||
Sleep(500)
|
||||
impresoraConectada = False
|
||||
@@ -2653,6 +2795,7 @@ Sub imprime_abonopagare
|
||||
TAMANO = 0
|
||||
ESPACIO = 22
|
||||
BLANCO = " "
|
||||
Printer1.Justify = 0
|
||||
Dim bmp As Bitmap
|
||||
bmp.InitializeResize(File.DirAssets, "logo-guna-18.jpg", 192, 192, True) 'ignore
|
||||
Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
|
||||
@@ -2671,7 +2814,7 @@ Sub imprime_abonopagare
|
||||
c7.Close
|
||||
|
||||
|
||||
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF)
|
||||
' Printer1.WriteString(sucursal & CRLF)
|
||||
Printer1.WriteString(sDate & CRLF)
|
||||
@@ -2686,9 +2829,20 @@ Sub imprime_abonopagare
|
||||
Dim notaabono As String
|
||||
Dim saldopendiente As Double
|
||||
Dim saldopendiente2 As Double
|
||||
' 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
|
||||
|
||||
If tipo_abonox = "abono" Then
|
||||
|
||||
Log("AQUI ABONO")
|
||||
|
||||
c = Starter.skmt.ExecQuery($"select distinct hvd_num_ticket from hist_ventas where hvd_cliente = '${la_cuenta.Text}' and HVD_PRONOMBRE <> 'Cobranza Pendiente' "$)
|
||||
If c.RowCount > 0 Then
|
||||
@@ -2754,21 +2908,76 @@ Sub imprime_abonopagare
|
||||
|
||||
End If
|
||||
|
||||
|
||||
' bc.Initialize
|
||||
|
||||
' c = Starter.skmt.ExecQuery("SELECT NOTA FROM ABONOSP WHERE CLIENTE IN (SELECT CUENTA FROM CUENTAA)")
|
||||
' If c.RowCount > 0 Then
|
||||
' c.Position = 0
|
||||
' notaabono = c.GetString("NOTA")
|
||||
' End If
|
||||
DateTime.DateFormat = "ddMMyyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
Dim numpago As Int = c5.RowCount + 1
|
||||
|
||||
'' codigo de barras
|
||||
' ImageView1.Bitmap = barcode.CODE128(notaabono&sDate&tipopagotick&numpago)
|
||||
'' codigo de qr
|
||||
B4XImageView1.SetBitmap(qr.Create(notaabono&sDate&tipopagotick&numpago))
|
||||
|
||||
|
||||
Dim Dirp As String = File.DirInternal
|
||||
Dim Dir As String
|
||||
Dim Dir2 As String
|
||||
Try
|
||||
File.MakeDir(Dirp,"/md")
|
||||
Dir = "/md"
|
||||
Log("creado en promotoria " & Dirp & Dir)
|
||||
Catch
|
||||
Dir = ""
|
||||
Log("creado en raiz")
|
||||
End Try
|
||||
|
||||
Try
|
||||
File.MakeDir(Dirp & Dir,"/reduccion")
|
||||
Dir2 = "/reduccion"
|
||||
Log("creado en promotoria " & Dirp & Dir & Dir2)
|
||||
Catch
|
||||
Dir = ""
|
||||
Log("creado en raiz")
|
||||
End Try
|
||||
|
||||
'' codigo de barras
|
||||
' Dim Out As OutputStream
|
||||
' Out = File.OpenOutput(File.DirInternal & Dir & Dir2, "Test.png", False)
|
||||
' barcode.CODE128(notaabono&sDate&tipopagotick&numpago).WriteToStream(Out, 100, "PNG")
|
||||
' Out.Close
|
||||
|
||||
'' codigo de qr
|
||||
Dim Out As OutputStream
|
||||
Out = File.OpenOutput(File.DirInternal & Dir & Dir2, "qr.png", False)
|
||||
qr.Create(notaabono&sDate&tipopagotick&numpago).WriteToStream(Out, 100, "PNG")
|
||||
Out.Close
|
||||
|
||||
Log(notaabono)
|
||||
Log(et_abono.Text)
|
||||
Printer1.WriteString("Comprobante de pago del pagare" & CRLF)
|
||||
Printer1.WriteString("Folio: " & Folio &"-"&(numpago)& CRLF)
|
||||
Printer1.WriteString("Monto deuda: " & (NumberFormat(saldopendiente2 - saldopendiente3,0,2)) & CRLF)
|
||||
|
||||
If tipo_abonox = "abono" Then
|
||||
Printer1.WriteString("Monto deuda: " & (NumberFormat(saldopendiente - saldopendiente1,0,2)) & CRLF)
|
||||
Else
|
||||
Printer1.WriteString("Monto deuda: " & (NumberFormat(saldopendiente2 - saldopendiente3,0,2)) & CRLF)
|
||||
End If
|
||||
|
||||
Printer1.WriteString("Monto abono: " & (NumberFormat(et_abono.Text,0,2)) & CRLF)
|
||||
Printer1.WriteString("Restante "&Folio&": " &(NumberFormat(saldopendiente2-et_abono.Text - saldopendiente3,0,2)) & CRLF)
|
||||
|
||||
If tipo_abonox = "abono" Then
|
||||
Printer1.WriteString("Restante "&Folio&": " &(NumberFormat(saldopendiente-et_abono.Text ,0,2)) & CRLF)
|
||||
Else
|
||||
Printer1.WriteString("Restante "&Folio&": " &(NumberFormat(saldopendiente2-et_abono.Text - saldopendiente3,0,2)) & CRLF)
|
||||
End If
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
Printer1.WriteString("Restante pagares: " &(NumberFormat(saldopendiente-et_abono.Text - saldopendiente1,0,2)) & CRLF)
|
||||
Printer1.WriteString("Fecha Abono: " & sDate & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
@@ -2780,36 +2989,37 @@ Sub imprime_abonopagare
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString("-------------FIRMA------------" & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
DateTime.DateFormat = "ddMMyyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
|
||||
|
||||
' 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)
|
||||
|
||||
' Dim bmp As Bitmap
|
||||
'' bmp.InitializeResize(File.DirAssets, "logo-guna-18.jpg", 192, 192, True) 'ignore
|
||||
|
||||
Dim bmp2 As Bitmap
|
||||
bmp2.InitializeResize(File.DirInternal & Dir & Dir2, "qr.png", 192, 192, True) 'ignore
|
||||
' bmp.Initialize(File.DirInternal & Dir & Dir2, "qr.png") 'ignore
|
||||
Dim myimage2 As AnImage = Printer1.ImageToBWIMage(bmp2)
|
||||
myimage2 = Printer1.DitherImage2D(myimage2, 128)
|
||||
myimage2= Printer1.PackImage(myimage2)
|
||||
Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
|
||||
Printer1.WriteString(Printer1.REVERSE)
|
||||
Printer1.PrintImage(myimage2)
|
||||
Printer1.WriteString(Printer1.UNREVERSE)
|
||||
|
||||
' Printer1.WriteBarCode("I",notaabono&sDate&tipopagotick&numpago)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Sleep(1000)
|
||||
|
||||
Sleep(2000)
|
||||
Printer1.DisConnect
|
||||
ProgressDialogHide
|
||||
|
||||
|
||||
If Subs.traeAlmacen = "92" Then
|
||||
|
||||
''mayoreo
|
||||
''mayoreo
|
||||
If tipo_abonox = "abono" Then
|
||||
Msgbox2Async("Deseas imprimir de nuevo el ticket?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False)
|
||||
|
||||
@@ -2950,7 +3160,7 @@ Sub imprime_abonopagare
|
||||
End If
|
||||
End If
|
||||
|
||||
''mayoreo
|
||||
''mayoreo
|
||||
|
||||
Else
|
||||
If tipo_abonox = "abono" Then
|
||||
@@ -3101,7 +3311,8 @@ Sub imprime_pagare
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
@@ -3192,6 +3403,7 @@ Sub imprime_pagare
|
||||
' Ticket = c6.GetString("HVD_NUM_TICKET")
|
||||
' End If
|
||||
' c6.Close
|
||||
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
DateTime.TimeFormat = "HH:mm:ss"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
@@ -3290,7 +3502,7 @@ Sub imprime_pagare
|
||||
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_PRONOMBRE <> 'Cobranza Pendiente' AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$)
|
||||
If S.RowCount>0 Then
|
||||
Printer1.WriteString("-------PROMOS ENTREGA--------" & CRLF)
|
||||
Printer1.WriteString("Cant. Precio Importe" & CRLF)
|
||||
@@ -3353,13 +3565,70 @@ Sub imprime_pagare
|
||||
Printer1.WriteString("" & CRLF)
|
||||
Printer1.WriteString("______________________________" & CRLF)
|
||||
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
|
||||
DateTime.DateFormat = "ddMMyyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
' Printer1.WriteString("JHGHGH " & CRLF)
|
||||
Printer1.WriteBarCode("I",la_cuenta.Text&sDate)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'' codigo de barras
|
||||
' ImageView1.Bitmap = barcode.CODE128(notaabono&sDate&tipopagotick&numpago)
|
||||
'' codigo de qr
|
||||
B4XImageView1.SetBitmap(qr.Create(la_cuenta.Text&sDate))
|
||||
|
||||
|
||||
Dim Dirp As String = File.DirInternal
|
||||
Dim Dir As String
|
||||
Dim Dir2 As String
|
||||
Try
|
||||
File.MakeDir(Dirp,"/md")
|
||||
Dir = "/md"
|
||||
Log("creado en promotoria " & Dirp & Dir)
|
||||
Catch
|
||||
Dir = ""
|
||||
Log("creado en raiz")
|
||||
End Try
|
||||
|
||||
Try
|
||||
File.MakeDir(Dirp & Dir,"/reduccion")
|
||||
Dir2 = "/reduccion"
|
||||
Log("creado en promotoria " & Dirp & Dir & Dir2)
|
||||
Catch
|
||||
Dir = ""
|
||||
Log("creado en raiz")
|
||||
End Try
|
||||
|
||||
'' codigo de barras
|
||||
' Dim Out As OutputStream
|
||||
' Out = File.OpenOutput(File.DirInternal & Dir & Dir2, "Test.png", False)
|
||||
' barcode.CODE128(la_cuenta.Text&sDate).WriteToStream(Out, 100, "PNG")
|
||||
' Out.Close
|
||||
|
||||
'' codigo de qr
|
||||
Dim Out As OutputStream
|
||||
Out = File.OpenOutput(File.DirInternal & Dir & Dir2, "qr.png", False)
|
||||
qr.Create(la_cuenta.Text&sDate).WriteToStream(Out, 100, "PNG")
|
||||
Out.Close
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Dim bmp2 As Bitmap
|
||||
bmp2.InitializeResize(File.DirInternal & Dir & Dir2, "qr.png", 192, 192, True) 'ignore
|
||||
' bmp.Initialize(File.DirInternal & Dir & Dir2, "qr.png") 'ignore
|
||||
Dim myimage2 As AnImage = Printer1.ImageToBWIMage(bmp2)
|
||||
myimage2 = Printer1.DitherImage2D(myimage2, 128)
|
||||
myimage2= Printer1.PackImage(myimage2)
|
||||
Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
|
||||
Printer1.WriteString(Printer1.REVERSE)
|
||||
Printer1.PrintImage(myimage2)
|
||||
Printer1.WriteString(Printer1.UNREVERSE)
|
||||
|
||||
' Printer1.WriteBarCode("I",la_cuenta.Text&sDate)
|
||||
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
@@ -3393,6 +3662,19 @@ End Sub
|
||||
|
||||
Private Sub b_cancel_pagare_Click
|
||||
tipo_abonox = "abono"
|
||||
|
||||
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"
|
||||
|
||||
' Msgbox2Async($"¿Que deseas realizar?"$,"Atención", "","", "Abono pagare", Null, True)
|
||||
' Wait For Msgbox_Result (resultado As Int)
|
||||
' If resultado = DialogResponse.POSITIVE Then
|
||||
@@ -3516,7 +3798,8 @@ Sub imprime_cancelarpagare
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
@@ -4215,7 +4498,8 @@ Private Sub HIST_LongClick
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
@@ -4309,11 +4593,12 @@ Private Sub HIST_LongClick
|
||||
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
|
||||
Printer1.Justify = 0
|
||||
Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") )&" "&s.GetString("HVD_PRONOMBRE") & CRLF)
|
||||
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
|
||||
' Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False)
|
||||
' TAMANO = punit.Length + TAMANO
|
||||
@@ -4339,7 +4624,7 @@ Private Sub HIST_LongClick
|
||||
Else If s.GetString("HVD_RECHAZO") = 1 Then
|
||||
Printer1.Justify = 0
|
||||
Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) &" "&s.GetString("HVD_PRONOMBRE") & CRLF)
|
||||
|
||||
Printer1.WriteString(" " & 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)
|
||||
@@ -4388,6 +4673,7 @@ Private Sub HIST_LongClick
|
||||
Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF)
|
||||
Else
|
||||
Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))&" "&s.GetString("HVD_PRONOMBRE") & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
End If
|
||||
' Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False)
|
||||
' TAMANO = punit.Length + TAMANO
|
||||
@@ -4427,4 +4713,5 @@ Private Sub HIST_LongClick
|
||||
Printer1.DisConnect
|
||||
ProgressDialogHide
|
||||
' Guardado
|
||||
End Sub
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -86,6 +86,9 @@ End Sub
|
||||
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
|
||||
|
||||
Sub B4XPage_Appear
|
||||
|
||||
|
||||
|
||||
Subs.centraPanel(p_principal, Root.Width)
|
||||
' b_guardar.Visible = False
|
||||
' Titulo.Left = Round(p_principal.Width/2)-(Titulo.Width/2)
|
||||
@@ -308,6 +311,8 @@ Sub B4XPage_Appear
|
||||
Else
|
||||
L_CANT.Text = NumberFormat2((arti + arti1 +arti2 + arti3),0,0,0,True)
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Sub GPS_LocationChanged (Location1 As Location)
|
||||
@@ -503,6 +508,20 @@ Sub CreateListItem2(Text As String, precioU As String, inv As Int, inv2 As Int,
|
||||
End Sub
|
||||
|
||||
Sub b_prodMenos_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
|
||||
MsgboxAsync("Ya se gestiono el cliente, no se pueden hacer modificaciones","Atención")
|
||||
' Wait For Msgbox_Result (result2 As Int)
|
||||
' If result= DialogResponse.NEGATIVE Then
|
||||
' B4XPages.ShowPage("Principal")
|
||||
' End If
|
||||
|
||||
' b_prodMas.Enabled = False
|
||||
' b_prodMenos.Enabled = False
|
||||
Else
|
||||
|
||||
etCantHasFocus = False
|
||||
Log("etCantHasFocus=" & etCantHasFocus)
|
||||
LogColor("b_prodMenos_Click", Colors.Magenta)
|
||||
@@ -637,9 +656,26 @@ Sub b_prodMenos_Click
|
||||
' L_CANT.Text = cym.Get("cantidad")
|
||||
' L_TOTAL.Text = Round2(cym.Get("monto"), 2)
|
||||
' cuentaProds("-")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub b_prodMas_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
|
||||
MsgboxAsync("Ya se gestiono el cliente, no se pueden hacer modificaciones","Atención")
|
||||
' Wait For Msgbox_Result (result2 As Int)
|
||||
' If result= DialogResponse.NEGATIVE Then
|
||||
' B4XPages.ShowPage("Principal")
|
||||
' End If
|
||||
|
||||
' b_prodMas.Enabled = False
|
||||
' b_prodMenos.Enabled = False
|
||||
Else
|
||||
|
||||
|
||||
|
||||
etCantHasFocus = False
|
||||
' Log("etCantHasFocus=" & etCantHasFocus)
|
||||
LogColor("b_prodMas_Click", Colors.Magenta)
|
||||
@@ -728,6 +764,8 @@ Sub b_prodMas_Click
|
||||
' If cantoriginal <= esteTag.Get(1) Then
|
||||
' L_CANT.Text = L_CANT.Text + 1
|
||||
' End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub cuentaProds(accion As String)
|
||||
@@ -1018,12 +1056,25 @@ Private Sub l_pCantC_Click
|
||||
End Sub
|
||||
|
||||
Private Sub b_revversar_Click
|
||||
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
|
||||
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
|
||||
MsgboxAsync("Ya se gestiono el cliente, no se pueden hacer modificaciones","Atención")
|
||||
' Wait For Msgbox_Result (result2 As Int)
|
||||
' If result= DialogResponse.NEGATIVE Then
|
||||
' B4XPages.ShowPage("Principal")
|
||||
' End If
|
||||
|
||||
' b_prodMas.Enabled = False
|
||||
' b_prodMenos.Enabled = False
|
||||
Else
|
||||
MsgboxAsync("Hay productos que ya se vendieron, no se puede regresar la venta","Atención")
|
||||
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
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -136,6 +136,7 @@ Sub Class_Globals
|
||||
Private PB_carga2 As ProgressBar
|
||||
Private l_carga2 As Label
|
||||
'fin carga
|
||||
Private b_impresion_rec As Button
|
||||
End Sub
|
||||
|
||||
'You can add more parameters here.
|
||||
@@ -826,6 +827,7 @@ Sub Subir_Click
|
||||
' envioinfo
|
||||
' Else
|
||||
envioinfo
|
||||
imp_LIQUIDACION
|
||||
' End If
|
||||
' c.Close
|
||||
|
||||
@@ -1223,6 +1225,11 @@ Sub cargaGeneral
|
||||
reqManager.ExecuteQuery(cmd , 0, "gunaprod")
|
||||
Log($"Pedimos gunaprod - ${ALMACEN}, ${e_ruta.text}"$)
|
||||
reqs.Add("gunaprod")
|
||||
|
||||
cmd.Initialize
|
||||
cmd.Name = "select_GEOCERCA_GUNA_VN"
|
||||
cmd.Parameters = Array As Object(ALMACEN)
|
||||
reqManager.ExecuteQuery(cmd , 0, "GEOCERCA")
|
||||
|
||||
If ALMACEN = "81" Then
|
||||
|
||||
@@ -1322,6 +1329,17 @@ Sub JobDone(Job As HttpJob)
|
||||
End If
|
||||
End If
|
||||
|
||||
If Job.JobName = "DBRequest" Then
|
||||
Dim result As DBResult = reqManager.HandleJob(Job)
|
||||
If result.Tag = "GEOCERCA" Then 'query tag
|
||||
Starter.skmt.ExecNonQuery("DELETE FROM GEOCERCA")
|
||||
For Each records() As Object In result.Rows
|
||||
Dim CAT_AL_GEOCERCA As String = records(result.Columns.Get("CAT_AL_GEOCERCA"))
|
||||
Starter.skmt.ExecNonQuery2("INSERT INTO GEOCERCA(ACTIVA) VALUES (?)", Array As Object (CAT_AL_GEOCERCA))
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
|
||||
If Job.JobName = "DBRequest" Then
|
||||
Dim result As DBResult = reqManager.HandleJob(Job)
|
||||
If result.Tag = "select_abonosp" Then 'query tag
|
||||
@@ -1994,6 +2012,7 @@ Sub e_ruta_EnterPressed
|
||||
Starter.skmt.ExecNonQuery("delete from HIST_REPARTO_GEO")
|
||||
Starter.skmt.ExecNonQuery("delete from pedido_cliente")
|
||||
Starter.skmt.ExecNonQuery("delete from PAGARES")
|
||||
Starter.skmt.ExecNonQuery("DELETE FROM GEOCERCA")
|
||||
Starter.skmt.ExecNonQuery("delete from CHECADO_CHECK")
|
||||
Starter.skmt.ExecNonQuery("delete from CHECKLIST2")
|
||||
Starter.skmt.ExecNonQuery("delete from pedido")
|
||||
@@ -2304,15 +2323,23 @@ End Sub
|
||||
Private Sub b_rechazos_Click
|
||||
Dim label1 As Label
|
||||
label1 = lv_prod_Prin.SingleLineLayout.Label
|
||||
label1.TextSize = 20
|
||||
label1.TextSize = 18
|
||||
label1.TextColor = Colors.White
|
||||
p_prod.Width = Root.Width
|
||||
p_prod.Height = Root.Height
|
||||
lv_prod_Prin.Width = Root.Width
|
||||
b_regreso.Left = (p_prod.Width - b_regreso.Width) / 2
|
||||
' b_regreso.Left = (p_prod.Width - b_regreso.Width) / 2
|
||||
b_regreso.Top = p_prod.Height - b_regreso.Height
|
||||
|
||||
b_impresion_rec.Top = p_prod.Height - b_impresion_rec.Height
|
||||
' label1.TextSize = 20
|
||||
label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD)
|
||||
|
||||
If l_ctast.Text = "0" Then
|
||||
b_impresion_rec.Enabled = True
|
||||
Else If l_ctast.Text <> "0" Then
|
||||
b_impresion_rec.Enabled = False
|
||||
End If
|
||||
|
||||
' lv_prod_Prin.Left = p_prod.Width / 2
|
||||
lv_prod_Prin.Width = Root.Width - (Root.Width * .10)
|
||||
@@ -2320,7 +2347,7 @@ Private Sub b_rechazos_Click
|
||||
Subs.centraListView(lv_prod_Prin,Root.Width)
|
||||
p_prod.Visible = True
|
||||
p_prod.BringToFront
|
||||
Private c As Cursor = Starter.skmt.ExecQuery("select HVD_PRONOMBRE, IFNULL(SUM(HVD_RECHAZOCANT), 0) AS HVD_RECHAZOCANT, HVD_PROID from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 GROUP BY HVD_PROID order by HVD_PRONOMBRE asc")
|
||||
Private c As Cursor = Starter.skmt.ExecQuery("select HVD_PRONOMBRE, IFNULL(SUM(HVD_RECHAZOCANT), 0) AS HVD_RECHAZOCANT, HVD_PROID from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 and HVD_PRONOMBRE <> 'Cobranza Pendiente' GROUP BY HVD_PROID order by HVD_PRONOMBRE asc")
|
||||
lv_prod_Prin.SingleLineLayout.Label.TextColor = Colors.White
|
||||
lv_prod_Prin.Clear
|
||||
If c.RowCount > 0 Then
|
||||
@@ -2339,8 +2366,10 @@ Private Sub b_rechazos_Click
|
||||
If ( c.GetInt("HVD_RECHAZOCANT") - resta) <= 0 Then
|
||||
|
||||
Else
|
||||
' If c.GetString("HVD_PRONOMBRE") <> "Cobranbra Pendiente" Then
|
||||
itemText = $"${c.GetString("HVD_PRONOMBRE")} ${CRLF}Inventario: ${(c.GetInt("HVD_RECHAZOCANT") - resta)}"$
|
||||
lv_prod_Prin.AddSingleLine(itemText)
|
||||
' End If
|
||||
End If
|
||||
Next
|
||||
Else
|
||||
@@ -2883,4 +2912,275 @@ Private Sub ImageView1_LongClick
|
||||
d.Position=0
|
||||
cuantos_noventa = D.GetString("CUANTOS_NOVENTA")
|
||||
d.Close
|
||||
End Sub
|
||||
|
||||
Private Sub b_impresion_rec_Click
|
||||
Dim totalentrega As Int
|
||||
Dim totalrechazo As Int
|
||||
Dim totalpiezas As Int
|
||||
Dim sDate, sTime As String
|
||||
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||
c.Position=0
|
||||
usuario = c.GetString("USUARIO")
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
DateTime.DateFormat = "dd/MM/yyyy"
|
||||
DateTime.TimeFormat="HH:mm:ss"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
' c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION =?", Array As String ("SUCURSAL"))
|
||||
' c.Position = 0
|
||||
' sucursal = c.GetString("CAT_VA_VALOR")
|
||||
' 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
|
||||
|
||||
TAMANO = 0
|
||||
ESPACIO = 28
|
||||
BLANCO = " "
|
||||
|
||||
Printer1.WriteString("gUNA Distribuciones" & CRLF)
|
||||
Printer1.WriteString(sDate & " " &sTime & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("------------RECHAZO-----------" & CRLF)
|
||||
|
||||
Private c As Cursor = Starter.skmt.ExecQuery("select HVD_PRONOMBRE, IFNULL(SUM(HVD_RECHAZOCANT), 0) AS HVD_RECHAZOCANT, IFNULL(SUM(HVD_CANT), 0) AS HVD_CANT, (IFNULL(SUM(HVD_CANT), 0) - IFNULL(SUM(HVD_RECHAZOCANT), 0)) as total, HVD_PROID from HIST_VENTAS where HVD_RECHAZO = 1 AND HVD_PRONOMBRE <> 'Cobranza Pendiente' GROUP BY HVD_PROID order by HVD_PRONOMBRE asc")
|
||||
If c.RowCount > 0 Then
|
||||
For i = 0 To c.RowCount - 1
|
||||
c.Position = i
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
|
||||
Private c3 As Cursor=Starter.skmt.ExecQuery($"select Ifnull(sum(PE_CANT),0) AS PE_CANT from PEDIDO WHERE PE_PROID ='${c.GetString("HVD_PROID")}'"$)
|
||||
Private resta As String = 0
|
||||
|
||||
If c3.RowCount > 0 Then
|
||||
c3.Position = 0
|
||||
resta = c3.GetString("PE_CANT")
|
||||
Else
|
||||
resta = 0
|
||||
End If
|
||||
Printer1.Justify = 0
|
||||
Printer1.WriteString(c.GetString("HVD_PRONOMBRE") & CRLF)
|
||||
' Printer1.Justify = 0
|
||||
' Printer1.WriteString("TP: "& c.GetInt("HVD_CANT")&" ")
|
||||
' Printer1.Justify = 1
|
||||
' Printer1.WriteString(" TE: " & (c.GetInt("total") + resta)&" ")
|
||||
' Printer1.Justify = 2
|
||||
Printer1.WriteString("RECHAZO: " & (c.GetInt("HVD_RECHAZOCANT") - resta)&" ")
|
||||
Printer1.Justify = 0
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
' Printer1.WriteString(" " & CRLF)
|
||||
|
||||
' itemText2 = $"${c.GetString("HVD_PRONOMBRE")} ${CRLF} TP: ${(c.GetInt("HVD_CANT"))} TE: ${( c.GetInt("total") + resta)} TR: ${(c.GetInt("HVD_RECHAZOCANT") - resta)}"$
|
||||
totalentrega = totalentrega + c.GetInt("total") + resta
|
||||
totalrechazo = totalrechazo + c.GetInt("HVD_RECHAZOCANT") - resta
|
||||
totalpiezas = totalpiezas + c.GetInt("HVD_CANT")
|
||||
' Log(itemText2)
|
||||
|
||||
Next
|
||||
End If
|
||||
c.Close
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
' Printer1.WriteString("Total Piezas: "& totalpiezas & CRLF)
|
||||
' Printer1.WriteString("Total Entrega: "& totalentrega & CRLF)
|
||||
Printer1.WriteString("Total Rechazo: "& totalrechazo & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Sleep(1000)
|
||||
Printer1.DisConnect
|
||||
|
||||
ProgressDialogHide
|
||||
End Sub
|
||||
|
||||
Sub imp_LIQUIDACION
|
||||
|
||||
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 = 29
|
||||
BLANCO = " "
|
||||
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("----------LIQUIDACION----------" & CRLF)
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
|
||||
Printer1.WriteString("Monto entregado: $" & NumberFormat2(L_MONTOE.Text,0,2,2,True) & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("Monto rechazado: $" & NumberFormat2(l_rechazo.Text,0,2,2,True) & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("Pagares cobrados: $" & NumberFormat2(l_pagarescobrados.Text,0,2,2,True) & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
If l_pagarescobrados.Text > 0 Then
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
Printer1.WriteString(" Cliente Abono" & CRLF)
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
' Printer1.WriteString( CRLF)
|
||||
Dim abonoscreditos As Cursor = Starter.skmt.ExecQuery("SELECT a_abono, length(a_abono) as L_abono , length(a_cliente) as L_cliente , a_cliente FROM ABONOS ORDER BY a_cliente")
|
||||
For g = 0 To abonoscreditos.RowCount -1
|
||||
abonoscreditos.Position = g
|
||||
|
||||
TAMANO = abonoscreditos.GetInt("L_abono") + TAMANO
|
||||
ESPACIO = (ESPACIO - TAMANO)/2
|
||||
' Log(ESPACIO)
|
||||
For j =0 To ESPACIO -1
|
||||
BLANCO = " " & BLANCO
|
||||
Next
|
||||
Printer1.Justify = 0
|
||||
Printer1.WriteString( abonoscreditos.GetString("a_cliente") & BLANCO)
|
||||
Printer1.Justify = 1
|
||||
Printer1.WriteString( NumberFormat2(abonoscreditos.GetString("a_abono"),0,2,2,True))
|
||||
Printer1.WriteString( CRLF)
|
||||
TAMANO = 0
|
||||
ESPACIO = 29
|
||||
BLANCO = " "
|
||||
Printer1.Justify = 0
|
||||
Next
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
Printer1.WriteString( CRLF)
|
||||
End If
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("Pagares nuevos: $" & NumberFormat2(l_pagaresnuevos.Text,0,2,2,True) & CRLF)
|
||||
|
||||
If l_pagaresnuevos.Text > 0 Then
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
Printer1.WriteString(" Cliente Pagare" & CRLF)
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
' Printer1.WriteString( CRLF)
|
||||
Dim abonoscreditos As Cursor = Starter.skmt.ExecQuery("SELECT PA_MONTO, length(PA_MONTO) as L_PA_MONTO , length(PA_CLIENTE) as L_cliente , PA_CLIENTE FROM PAGARES ORDER BY PA_CLIENTE")
|
||||
For g = 0 To abonoscreditos.RowCount -1
|
||||
abonoscreditos.Position = g
|
||||
|
||||
TAMANO = abonoscreditos.GetInt("L_PA_MONTO") + TAMANO
|
||||
ESPACIO = (ESPACIO - TAMANO)/2
|
||||
' Log(ESPACIO)
|
||||
For j =0 To ESPACIO -1
|
||||
BLANCO = " " & BLANCO
|
||||
Next
|
||||
Printer1.Justify = 0
|
||||
Printer1.WriteString( abonoscreditos.GetString("PA_CLIENTE") & BLANCO)
|
||||
Printer1.Justify = 1
|
||||
Printer1.WriteString( NumberFormat2(abonoscreditos.GetString("PA_MONTO"),0,2,2,True))
|
||||
Printer1.WriteString( CRLF)
|
||||
TAMANO = 0
|
||||
ESPACIO = 29
|
||||
BLANCO = " "
|
||||
Printer1.Justify = 0
|
||||
Next
|
||||
Printer1.WriteString("--------------------------------" & CRLF)
|
||||
Printer1.WriteString( CRLF)
|
||||
End If
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Dim abonoscreditosefe As Cursor = Starter.skmt.ExecQuery("SELECT SUM(IFNULL(a_abono,0)) AS ABONO FROM ABONOS WHERE TIPO_PAGO = 'EFECTIVO' ORDER BY a_cliente")
|
||||
abonoscreditosefe.Position = 0
|
||||
Dim abonoscreditostrans As Cursor = Starter.skmt.ExecQuery("SELECT SUM(IFNULL(a_abono,0)) AS ABONO FROM ABONOS WHERE TIPO_PAGO = 'TRANSFERENCIA' ORDER BY a_cliente")
|
||||
abonoscreditostrans.Position = 0
|
||||
Dim abonoscreditosche As Cursor = Starter.skmt.ExecQuery("SELECT SUM(IFNULL(a_abono,0)) AS ABONO FROM ABONOS WHERE TIPO_PAGO = 'CHEQUE' ORDER BY a_cliente")
|
||||
abonoscreditosche.Position = 0
|
||||
Log(NumberFormat2(abonoscreditosefe.GetDouble("ABONO"),0,2,2,False) )
|
||||
|
||||
Printer1.WriteString("Monto efectivo: $" & NumberFormat2((l_montoaliquidar.Text - abonoscreditosche.GetDouble("ABONO") - abonoscreditostrans.GetDouble("ABONO")),0,2,2,True) & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("Monto cheque: $" & NumberFormat2(abonoscreditosche.GetDouble("ABONO"),0,2,2,True) & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("Monto transferencia: $" & NumberFormat2(abonoscreditostrans.GetDouble("ABONO"),0,2,2,True) & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString("Monto a liquidar: $" & NumberFormat2(l_montoaliquidar.Text,0,2,2,True) & CRLF)
|
||||
|
||||
|
||||
|
||||
' 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
|
||||
|
||||
|
||||
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
|
||||
imp_LIQUIDACION
|
||||
Else
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub connecta_LongClick
|
||||
imp_LIQUIDACION
|
||||
End Sub
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
127
B4A/Tracker.bas
127
B4A/Tracker.bas
@@ -192,47 +192,116 @@ Public Sub StopFLP
|
||||
End Sub
|
||||
|
||||
Sub flp_LocationChanged (Location1 As Location)
|
||||
Starter.trackerActividad = Subs.fechaKMT(DateTime.Now)
|
||||
UUGCoords = Location1
|
||||
' If Main.logger Then Log("SmallestDisplacement="&actualLR.GetSmallestDisplacement)
|
||||
CallSub2(Starter, "GPS_LocationChanged", Location1)
|
||||
' CallSub2(gestion, "GPS_LocationChanged", Location1)
|
||||
' CallSubDelayed2(gestion, "GPS_LocationChanged", Location1)
|
||||
' Starter.trackerActividad = Subs.fechaKMT(DateTime.Now)
|
||||
' UUGCoords = Location1
|
||||
'' If Main.logger Then Log("SmallestDisplacement="&actualLR.GetSmallestDisplacement)
|
||||
' CallSub2(Starter, "GPS_LocationChanged", Location1)
|
||||
'' CallSub2(gestion, "GPS_LocationChanged", Location1)
|
||||
'' CallSubDelayed2(gestion, "GPS_LocationChanged", Location1)
|
||||
' B4XPages.MainPage.lat_gps = Location1.Latitude
|
||||
' B4XPages.MainPage.lon_gps = Location1.Longitude
|
||||
''/////// para la ultima ubicacion FL
|
||||
' Dim sDate,sTime As String
|
||||
' DateTime.DateFormat = "MM/dd/yyyy"
|
||||
' sDate=DateTime.Date(DateTime.Now)
|
||||
' sTime=DateTime.Time(DateTime.Now)
|
||||
' Try
|
||||
' Starter.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
|
||||
' Starter.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
|
||||
' Catch
|
||||
' If B4XPages.MainPage.logger Then Log("Error al borrar o insertar nuevas coordendas en HIST_GPS")
|
||||
' End Try
|
||||
''///////
|
||||
' Dim coords As String = Location1.Latitude&","&Location1.Longitude&","&formatoFecha(Location1.Time)
|
||||
' Log("Loc changed : "&Location1.Latitude&","&Location1.Longitude)
|
||||
' If B4XPages.MainPage.logger Then Log("Mandamos Ubicacion")
|
||||
' If B4XPages.MainPage.logger Then Log(locRequest)
|
||||
' ' Solo mandamos la ubicacion si la precision es menor a XX mts
|
||||
' If Location1.Accuracy < 100 Then
|
||||
' Subs.guardaInfoEnBD(coords)'Escribimos coordenadas y fecha en BD
|
||||
'' CallSubDelayed2(FirebaseMessaging,"mandamosLoc",coords)
|
||||
' Subs.mandamosLoc(coords)
|
||||
' End If
|
||||
' Dim origFormat As String = DateTime.TimeFormat 'Guardamos formato de fecha
|
||||
' DateTime.TimeFormat = "HHmmss" ' Modificamos formato de fecha
|
||||
' Dim minsDif As Int = DateTime.Time(DateTime.Now) - B4XPages.MainPage.ultimaActualizacionGPS
|
||||
'' If Main.logger Then Log("UltimaAct="&Main.ultimaActualizacionGPS&" MinsDif="&minsDif)
|
||||
' If Location1.Accuracy < 100 And minsDif > 240 Then 'Si precision de 100 y 4 min transcurridos manda a web
|
||||
' If B4XPages.MainPage.logger Then Log("actualizamos Ubicacion Web")
|
||||
' CallSubDelayed(Starter, "ENVIA_ULTIMA_GPS")
|
||||
' End If
|
||||
' DateTime.TimeFormat = origFormat 'Regresamos formato de fecha original
|
||||
' 'Revisamos servicios
|
||||
' Subs.monitor
|
||||
|
||||
' ToastMessageShow("Loc changed", False)
|
||||
' Log($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$)
|
||||
B4XPages.MainPage.lat_gps = Location1.Latitude
|
||||
B4XPages.MainPage.lon_gps = Location1.Longitude
|
||||
'/////// para la ultima ubicacion FL
|
||||
UUGCoords = Location1
|
||||
' Log("SmallestDisplacement="&actualLR.GetSmallestDisplacement)
|
||||
' If DateTime.Now > LastUpdateTime + 10 * DateTime.TicksPerSecond Then
|
||||
' Dim n As Notification = CreateNotification($"$2.5{Location1.Latitude} / $2.5{Location1.Longitude}"$)
|
||||
' n.Notify(nid)
|
||||
' LastUpdateTime = DateTime.Now
|
||||
' End If
|
||||
'/////// para la ultima localización FL
|
||||
Dim sDate,sTime As String
|
||||
DateTime.DateFormat = "MM/dd/yyyy"
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
Try
|
||||
Starter.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
|
||||
Starter.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
|
||||
Catch
|
||||
If B4XPages.MainPage.logger Then Log("Error al borrar o insertar nuevas coordendas en HIST_GPS")
|
||||
End Try
|
||||
'///////
|
||||
' If Not(Starter.skmt.IsInitialized) Then Starter.skmt.Initialize(Starter.ruta,"kmt.db", True)
|
||||
' Try
|
||||
' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
|
||||
' B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
|
||||
' Catch
|
||||
' LogColor(LastException, Colors.Red)
|
||||
' End Try
|
||||
'///////
|
||||
Dim coords As String = Location1.Latitude&","&Location1.Longitude&","&formatoFecha(Location1.Time)
|
||||
Log("Loc changed : "&Location1.Latitude&","&Location1.Longitude)
|
||||
If B4XPages.MainPage.logger Then Log("Mandamos Ubicacion")
|
||||
If B4XPages.MainPage.logger Then Log(locRequest)
|
||||
' Log("Loc changed : "&Location1.Latitude&","&Location1.Longitude&"|"&B4XPages.MainPage.usuario&"|")
|
||||
' Log("Mandamos Ubicacion")
|
||||
' Log(FirebaseMessaging.locRequest)
|
||||
' Solo mandamos la ubicacion si la precision es menor a XX mts
|
||||
If Location1.Accuracy < 100 Then
|
||||
Subs.guardaInfoEnBD(coords)'Escribimos coordenadas y fecha en BD
|
||||
' CallSubDelayed2(FirebaseMessaging,"mandamosLoc",coords)
|
||||
Subs.mandamosLoc(coords)
|
||||
End If
|
||||
Dim origFormat As String = DateTime.TimeFormat 'Guardamos formato de fecha
|
||||
DateTime.TimeFormat = "HHmmss" ' Modificamos formato de fecha
|
||||
Dim minsDif As Int = DateTime.Time(DateTime.Now) - B4XPages.MainPage.ultimaActualizacionGPS
|
||||
' If Main.logger Then Log("UltimaAct="&Main.ultimaActualizacionGPS&" MinsDif="&minsDif)
|
||||
If Location1.Accuracy < 100 And minsDif > 240 Then 'Si precision de 100 y 4 min transcurridos manda a web
|
||||
If B4XPages.MainPage.logger Then Log("actualizamos Ubicacion Web")
|
||||
CallSubDelayed(Starter, "ENVIA_ULTIMA_GPS")
|
||||
|
||||
CallSub2(Starter, "GPS_LocationChanged", Location1)
|
||||
CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1)
|
||||
' CallSub2(gestion, "GPS_LocationChanged", Location1)
|
||||
If B4XPages.MainPage.cliente.IsInitialized Then
|
||||
CallSub2(B4XPages.GetPage("Cliente"), "GPS_LocationChanged", Location1)
|
||||
End If
|
||||
DateTime.TimeFormat = origFormat 'Regresamos formato de fecha original
|
||||
'Revisamos servicios
|
||||
Subs.monitor
|
||||
' CallSub2(nuevocliente, "GPS_LocationChanged", Location1)
|
||||
|
||||
End Sub
|
||||
|
||||
Public Sub StartFLP2
|
||||
Private logger As Boolean = True
|
||||
If logger Then Log("StartFLP2 - flpStarted="&flpStarted)
|
||||
Do While FLP.IsConnected = False
|
||||
Sleep(500)
|
||||
If logger Then Log("kll - sleeping")
|
||||
Loop
|
||||
dameUltimaUbicacionConocida 'Regresamos ultima ubicacion conocida
|
||||
FLP.RequestLocationUpdates(CreateLocationRequest2) 'Buscamos ubicacion 2 peticiones
|
||||
If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta)
|
||||
' If logger Then Log(actualLR.GetSmallestDisplacement)
|
||||
End Sub
|
||||
|
||||
Private Sub CreateLocationRequest2 As LocationRequest
|
||||
Private logger As Boolean = True
|
||||
If logger Then Log("Iniciamos CreateLocationRequest2")
|
||||
Dim lr As LocationRequest
|
||||
lr.Initialize
|
||||
lr.SetInterval(1000) 'Intervalo deseado para actualizaciones de ubicacion
|
||||
lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion
|
||||
lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros
|
||||
lr.SetSmallestDisplacement(1) 'Solo registra cambio de ubicacion si es mayor a XX mts
|
||||
lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY)
|
||||
actualLR=lr
|
||||
Return lr
|
||||
End Sub
|
||||
|
||||
Sub CreateNotification (Body As String) As Notification 'ignore
|
||||
|
||||
710
B4A/barcodeGenerator.bas
Normal file
710
B4A/barcodeGenerator.bas
Normal file
@@ -0,0 +1,710 @@
|
||||
B4A=true
|
||||
Group=Default Group
|
||||
ModulesStructureVersion=1
|
||||
Type=Class
|
||||
Version=12.2
|
||||
@EndOfDesignText@
|
||||
'version 1.02
|
||||
Sub Class_Globals
|
||||
Private xui As XUI
|
||||
Public cvs As B4XCanvas
|
||||
Private xview As B4XView
|
||||
End Sub
|
||||
|
||||
Public Sub Initialize
|
||||
Dim xview As B4XView = xui.CreatePanel(Null)
|
||||
xview.SetLayoutAnimated(0, 0, 0, 1050dip, 300dip)
|
||||
xview.Color = xui.Color_White
|
||||
End Sub
|
||||
|
||||
|
||||
#Region EAN13
|
||||
|
||||
Public Sub EAN13(codigo As String) As B4XBitmap
|
||||
cvs.Initialize(xview)
|
||||
cvs.ClearRect(cvs.TargetRect)
|
||||
|
||||
If codigo.Length=12 Then codigo = "0" & codigo
|
||||
|
||||
If codigo.Length=13 Then
|
||||
|
||||
Dim novoCodigo As String = preparaEAN13(codigo)
|
||||
|
||||
If novoCodigo<>"" Then
|
||||
|
||||
'Dim canvas As B4XCanvas
|
||||
Dim alturaPainel As Int = xview.Height
|
||||
Dim larguraPainel As Int = xview.Width
|
||||
Dim larguraCodigo As Int = xview.Width - 100dip
|
||||
|
||||
'Calcula as dimensões dos elementos do código de barras'
|
||||
Dim alturaNumero As Int = 40dip 'altura dos números abaixo do código'
|
||||
Dim larguraBarra As Int = larguraCodigo / 95 'largura de cada barra'
|
||||
Dim alturaBarra As Int = alturaPainel - alturaNumero'altura das barras'
|
||||
|
||||
'Desenha as barras e os números do código de barras'
|
||||
Dim rect As B4XRect
|
||||
rect.Initialize(0, 0, larguraPainel, alturaPainel)
|
||||
|
||||
cvs.DrawRect(rect, xui.Color_White, True, 0) 'fundo branco'
|
||||
|
||||
Dim larguraAtual As Int = 50dip
|
||||
|
||||
For i=0 To novoCodigo.Length-1
|
||||
Dim cor As Int = xui.Color_Black
|
||||
If novoCodigo.CharAt(i) = "0" Then cor = xui.Color_White
|
||||
If novoCodigo.CharAt(i) = "2" Then
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra, cor, larguraBarra)
|
||||
Else
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra - alturaNumero, cor, larguraBarra)
|
||||
End If
|
||||
|
||||
larguraAtual = larguraAtual + larguraBarra
|
||||
Next
|
||||
|
||||
'Desenha o número abaixo do código de barras'
|
||||
Dim fonte As B4XFont = xui.CreateFontAwesome(63)
|
||||
|
||||
Dim sb As StringBuilder
|
||||
sb.Initialize
|
||||
|
||||
For i=1 To codigo.Length
|
||||
Dim codigoCaracter As String = codigo.CharAt(i-1)
|
||||
sb.Append(codigoCaracter)
|
||||
|
||||
If i=1 Then
|
||||
sb.Append(" ")
|
||||
Else If i=7 Then
|
||||
sb.Append(" ")
|
||||
Else If i=13 Then
|
||||
'nao adiciona nada
|
||||
Else
|
||||
sb.Append(" ")
|
||||
End If
|
||||
Next
|
||||
|
||||
cvs.DrawText(sb.ToString, 1dip, alturaBarra+10dip, fonte, xui.Color_Black, "LEFT")
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
cvs.Invalidate
|
||||
Dim res As B4XBitmap = cvs.CreateBitmap
|
||||
cvs.Release
|
||||
Return res
|
||||
End Sub
|
||||
|
||||
Private Sub preparaEAN13(codigo As String) As String
|
||||
|
||||
Dim primeiroDigito As String = codigo.SubString2(0,1)
|
||||
Dim primeiroGrupo As String = codigo.SubString2(1,7)
|
||||
Dim segundoGrupo As String = codigo.SubString2(7,13)
|
||||
|
||||
Dim sequenciaNovo As String = ""
|
||||
Dim codigoNovo As String = "-" & primeiroGrupo & "=" & segundoGrupo & "-"
|
||||
|
||||
If primeiroDigito="0" Then sequenciaNovo="-LLLLLL=RRRRRR-"
|
||||
If primeiroDigito="1" Then sequenciaNovo="-LLGLGG=RRRRRR-"
|
||||
If primeiroDigito="2" Then sequenciaNovo="-LLGGLG=RRRRRR-"
|
||||
If primeiroDigito="3" Then sequenciaNovo="-LLGGGL=RRRRRR-"
|
||||
If primeiroDigito="4" Then sequenciaNovo="-LGLLGG=RRRRRR-"
|
||||
If primeiroDigito="5" Then sequenciaNovo="-LGGLLG=RRRRRR-"
|
||||
If primeiroDigito="6" Then sequenciaNovo="-LGGGLL=RRRRRR-"
|
||||
If primeiroDigito="7" Then sequenciaNovo="-LGLGLG=RRRRRR-"
|
||||
If primeiroDigito="8" Then sequenciaNovo="-LGLGGL=RRRRRR-"
|
||||
If primeiroDigito="9" Then sequenciaNovo="-LGGLGL=RRRRRR-"
|
||||
|
||||
Dim sb As StringBuilder
|
||||
sb.Initialize
|
||||
|
||||
For i=0 To codigoNovo.Length-1
|
||||
Dim digitoGrupo As String = codigoNovo.CharAt(i)
|
||||
Dim sequenciaGrupo As String = sequenciaNovo.CharAt(i)
|
||||
|
||||
If sequenciaGrupo="L" Then
|
||||
If digitoGrupo="0" Then sb.Append("0001101")
|
||||
If digitoGrupo="1" Then sb.Append("0011001")
|
||||
If digitoGrupo="2" Then sb.Append("0010011")
|
||||
If digitoGrupo="3" Then sb.Append("0111101")
|
||||
If digitoGrupo="4" Then sb.Append("0100011")
|
||||
If digitoGrupo="5" Then sb.Append("0110001")
|
||||
If digitoGrupo="6" Then sb.Append("0101111")
|
||||
If digitoGrupo="7" Then sb.Append("0111011")
|
||||
If digitoGrupo="8" Then sb.Append("0110111")
|
||||
If digitoGrupo="9" Then sb.Append("0001011")
|
||||
else If sequenciaGrupo="G" Then
|
||||
If digitoGrupo="0" Then sb.Append("0100111")
|
||||
If digitoGrupo="1" Then sb.Append("0110011")
|
||||
If digitoGrupo="2" Then sb.Append("0011011")
|
||||
If digitoGrupo="3" Then sb.Append("0100001")
|
||||
If digitoGrupo="4" Then sb.Append("0011101")
|
||||
If digitoGrupo="5" Then sb.Append("0111001")
|
||||
If digitoGrupo="6" Then sb.Append("0000101")
|
||||
If digitoGrupo="7" Then sb.Append("0010001")
|
||||
If digitoGrupo="8" Then sb.Append("0001001")
|
||||
If digitoGrupo="9" Then sb.Append("0010111")
|
||||
Else If sequenciaGrupo="R" Then
|
||||
If digitoGrupo="0" Then sb.Append("1110010")
|
||||
If digitoGrupo="1" Then sb.Append("1100110")
|
||||
If digitoGrupo="2" Then sb.Append("1101100")
|
||||
If digitoGrupo="3" Then sb.Append("1000010")
|
||||
If digitoGrupo="4" Then sb.Append("1011100")
|
||||
If digitoGrupo="5" Then sb.Append("1001110")
|
||||
If digitoGrupo="6" Then sb.Append("1010000")
|
||||
If digitoGrupo="7" Then sb.Append("1000100")
|
||||
If digitoGrupo="8" Then sb.Append("1001000")
|
||||
If digitoGrupo="9" Then sb.Append("1110100")
|
||||
Else If sequenciaGrupo="-" Then
|
||||
sb.Append("202")
|
||||
Else If sequenciaGrupo="=" Then
|
||||
sb.Append("02020")
|
||||
End If
|
||||
Next
|
||||
|
||||
Return sb.ToString
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
#Region UPCA
|
||||
|
||||
Public Sub UPCA(codigo As String) As B4XBitmap
|
||||
cvs.Initialize(xview)
|
||||
cvs.ClearRect(cvs.TargetRect)
|
||||
|
||||
If codigo.Length=11 Then codigo = "0" & codigo
|
||||
|
||||
If codigo.Length=12 Then
|
||||
|
||||
Dim novoCodigo As String = preparaUPCA(codigo)
|
||||
|
||||
If novoCodigo<>"" Then
|
||||
|
||||
'Dim canvas As B4XCanvas
|
||||
Dim alturaPainel As Int = xview.Height
|
||||
Dim larguraPainel As Int = xview.Width
|
||||
Dim larguraCodigo As Int = xview.Width - 100dip
|
||||
|
||||
'Calcula as dimensões dos elementos do código de barras'
|
||||
Dim alturaNumero As Int = 40dip 'altura dos números abaixo do código'
|
||||
Dim larguraBarra As Int = larguraCodigo / 95 'largura de cada barra'
|
||||
Dim alturaBarra As Int = alturaPainel - alturaNumero'altura das barras'
|
||||
|
||||
'Desenha as barras e os números do código de barras'
|
||||
Dim rect As B4XRect
|
||||
rect.Initialize(0, 0, larguraPainel, alturaPainel)
|
||||
|
||||
cvs.DrawRect(rect, xui.Color_White, True, 0) 'fundo branco'
|
||||
|
||||
Dim larguraAtual As Int = 50dip
|
||||
|
||||
For i=0 To novoCodigo.Length-1
|
||||
Dim cor As Int = xui.Color_Black
|
||||
If novoCodigo.CharAt(i) = "0" Then cor = xui.Color_White
|
||||
If novoCodigo.CharAt(i) = "2" Then
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra, cor, larguraBarra)
|
||||
Else
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra - alturaNumero, cor, larguraBarra)
|
||||
End If
|
||||
|
||||
larguraAtual = larguraAtual + larguraBarra
|
||||
Next
|
||||
|
||||
'Desenha o número abaixo do código de barras'
|
||||
Dim fonte As B4XFont = xui.CreateFontAwesome(63)
|
||||
|
||||
Dim sb As StringBuilder
|
||||
sb.Initialize
|
||||
|
||||
For i=1 To codigo.Length
|
||||
Dim codigoCaracter As String = codigo.CharAt(i-1)
|
||||
sb.Append(codigoCaracter)
|
||||
|
||||
If i=1 Then
|
||||
sb.Append(" ")
|
||||
Else If i=6 Then
|
||||
sb.Append(" ")
|
||||
Else If i=11 Then
|
||||
sb.Append(" ")
|
||||
Else If i=12 Then
|
||||
'nao adiciona nada
|
||||
Else
|
||||
sb.Append(" ")
|
||||
End If
|
||||
Next
|
||||
|
||||
cvs.DrawText(sb.ToString, 1dip, alturaBarra+10dip, fonte, xui.Color_Black, "LEFT")
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
cvs.Invalidate
|
||||
Dim res As B4XBitmap = cvs.CreateBitmap
|
||||
cvs.Release
|
||||
Return res
|
||||
End Sub
|
||||
|
||||
Private Sub preparaUPCA(codigo As String) As String
|
||||
|
||||
Dim primeiroGrupo As String = codigo.SubString2(0,6)
|
||||
Dim segundoGrupo As String = codigo.SubString2(6,12)
|
||||
|
||||
Dim sequenciaNovo As String = "-JLLLLL=RRRRRS-"
|
||||
Dim codigoNovo As String = "-" & primeiroGrupo & "=" & segundoGrupo & "-"
|
||||
|
||||
Dim sb As StringBuilder
|
||||
sb.Initialize
|
||||
|
||||
For i=0 To codigoNovo.Length-1
|
||||
Dim digitoGrupo As String = codigoNovo.CharAt(i)
|
||||
Dim sequenciaGrupo As String = sequenciaNovo.CharAt(i)
|
||||
|
||||
If sequenciaGrupo="L" Then
|
||||
If digitoGrupo="0" Then sb.Append("0001101")
|
||||
If digitoGrupo="1" Then sb.Append("0011001")
|
||||
If digitoGrupo="2" Then sb.Append("0010011")
|
||||
If digitoGrupo="3" Then sb.Append("0111101")
|
||||
If digitoGrupo="4" Then sb.Append("0100011")
|
||||
If digitoGrupo="5" Then sb.Append("0110001")
|
||||
If digitoGrupo="6" Then sb.Append("0101111")
|
||||
If digitoGrupo="7" Then sb.Append("0111011")
|
||||
If digitoGrupo="8" Then sb.Append("0110111")
|
||||
If digitoGrupo="9" Then sb.Append("0001011")
|
||||
Else If sequenciaGrupo="J" Then
|
||||
If digitoGrupo="0" Then sb.Append("0001101".Replace("1","2"))
|
||||
If digitoGrupo="1" Then sb.Append("0011001".Replace("1","2"))
|
||||
If digitoGrupo="2" Then sb.Append("0010011".Replace("1","2"))
|
||||
If digitoGrupo="3" Then sb.Append("0111101".Replace("1","2"))
|
||||
If digitoGrupo="4" Then sb.Append("0100011".Replace("1","2"))
|
||||
If digitoGrupo="5" Then sb.Append("0110001".Replace("1","2"))
|
||||
If digitoGrupo="6" Then sb.Append("0101111".Replace("1","2"))
|
||||
If digitoGrupo="7" Then sb.Append("0111011".Replace("1","2"))
|
||||
If digitoGrupo="8" Then sb.Append("0110111".Replace("1","2"))
|
||||
If digitoGrupo="9" Then sb.Append("0001011".Replace("1","2"))
|
||||
Else If sequenciaGrupo="R" Then
|
||||
If digitoGrupo="0" Then sb.Append("1110010")
|
||||
If digitoGrupo="1" Then sb.Append("1100110")
|
||||
If digitoGrupo="2" Then sb.Append("1101100")
|
||||
If digitoGrupo="3" Then sb.Append("1000010")
|
||||
If digitoGrupo="4" Then sb.Append("1011100")
|
||||
If digitoGrupo="5" Then sb.Append("1001110")
|
||||
If digitoGrupo="6" Then sb.Append("1010000")
|
||||
If digitoGrupo="7" Then sb.Append("1000100")
|
||||
If digitoGrupo="8" Then sb.Append("1001000")
|
||||
If digitoGrupo="9" Then sb.Append("1110100")
|
||||
Else If sequenciaGrupo="S" Then
|
||||
If digitoGrupo="0" Then sb.Append("1110010".Replace("1","2"))
|
||||
If digitoGrupo="1" Then sb.Append("1100110".Replace("1","2"))
|
||||
If digitoGrupo="2" Then sb.Append("1101100".Replace("1","2"))
|
||||
If digitoGrupo="3" Then sb.Append("1000010".Replace("1","2"))
|
||||
If digitoGrupo="4" Then sb.Append("1011100".Replace("1","2"))
|
||||
If digitoGrupo="5" Then sb.Append("1001110".Replace("1","2"))
|
||||
If digitoGrupo="6" Then sb.Append("1010000".Replace("1","2"))
|
||||
If digitoGrupo="7" Then sb.Append("1000100".Replace("1","2"))
|
||||
If digitoGrupo="8" Then sb.Append("1001000".Replace("1","2"))
|
||||
If digitoGrupo="9" Then sb.Append("1110100".Replace("1","2"))
|
||||
Else If sequenciaGrupo="-" Then
|
||||
sb.Append("202")
|
||||
Else If sequenciaGrupo="=" Then
|
||||
sb.Append("02020")
|
||||
End If
|
||||
Next
|
||||
|
||||
Return sb.ToString
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
#Region CODE128
|
||||
|
||||
Public Sub CODE128(codigo As String) As B4XBitmap
|
||||
cvs.Initialize(xview)
|
||||
cvs.ClearRect(cvs.TargetRect)
|
||||
|
||||
Dim novoCodigo As String = preparaCODE128(codigo)
|
||||
|
||||
If novoCodigo<>"" Then
|
||||
|
||||
'Dim canvas As B4XCanvas
|
||||
Dim alturaPainel As Int = xview.Height
|
||||
Dim larguraPainel As Int = xview.Width
|
||||
Dim larguraCodigo As Int = xview.Width - 100dip
|
||||
|
||||
'Calcula as dimensões dos elementos do código de barras'
|
||||
Dim alturaNumero As Int = 40dip 'altura dos números abaixo do código'
|
||||
Dim larguraBarra As Int = larguraCodigo / ((codigo.Length*11)+11+11+13) 'largura de cada barra'
|
||||
Dim alturaBarra As Int = alturaPainel - alturaNumero'altura das barras'
|
||||
|
||||
|
||||
'Desenha as barras e os números do código de barras'
|
||||
Dim rect As B4XRect
|
||||
rect.Initialize(0, 0, larguraPainel, alturaPainel)
|
||||
|
||||
cvs.DrawRect(rect, xui.Color_White, True, 0) 'fundo branco'
|
||||
|
||||
Dim larguraAtual As Int = 50dip
|
||||
|
||||
For i=0 To novoCodigo.Length-1
|
||||
Dim cor As Int = xui.Color_Black
|
||||
If novoCodigo.CharAt(i) = "0" Then cor = xui.Color_White
|
||||
If novoCodigo.CharAt(i) = "2" Then
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra, cor, larguraBarra)
|
||||
Else If novoCodigo.CharAt(i) = "3" Then
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra, xui.Color_Blue, larguraBarra)
|
||||
Else
|
||||
cvs.DrawLine(larguraAtual, 0, larguraAtual, alturaBarra - alturaNumero, cor, larguraBarra)
|
||||
End If
|
||||
|
||||
larguraAtual = larguraAtual + larguraBarra
|
||||
Next
|
||||
|
||||
'Desenha o número abaixo do código de barras'
|
||||
Dim fonte As B4XFont = xui.CreateFontAwesome(63)
|
||||
|
||||
cvs.DrawText(codigo, cvs.TargetRect.CenterX, alturaBarra+10dip, fonte, xui.Color_Black, "CENTER")
|
||||
|
||||
End If
|
||||
|
||||
cvs.Invalidate
|
||||
Dim res As B4XBitmap = cvs.CreateBitmap
|
||||
cvs.Release
|
||||
Return res
|
||||
End Sub
|
||||
|
||||
Private Sub preparaCODE128(codigo As String) As String
|
||||
|
||||
Dim codigoNovo As String = codigo
|
||||
|
||||
Dim sb As StringBuilder
|
||||
sb.Initialize
|
||||
|
||||
sb.Append("11010010000") ' iniciar codigo b
|
||||
|
||||
Dim somatoria As Int = 104 ' valor do inicio
|
||||
|
||||
For i=0 To codigoNovo.Length-1
|
||||
Dim digitoGrupo As String = codigoNovo.CharAt(i)
|
||||
|
||||
Dim multiplicador As Int = (i+1)
|
||||
Dim valorDigito As Int = valorDigitoCODE128(digitoGrupo)
|
||||
Dim valorDigitoMultiplicado As Int = (multiplicador*valorDigito)
|
||||
somatoria = (somatoria + valorDigitoMultiplicado)
|
||||
|
||||
sb.Append(sequenciaDigitoCODE128(digitoGrupo))
|
||||
Next
|
||||
|
||||
Dim checksum As Int = (somatoria Mod 103)
|
||||
Dim checksumDigito As String = codigoDigitoCODE128(checksum)
|
||||
|
||||
sb.Append(sequenciaDigitoCODE128(checksumDigito))
|
||||
|
||||
sb.Append("1100011101011") 'fim do codigo
|
||||
|
||||
Return sb.ToString
|
||||
End Sub
|
||||
|
||||
Private Sub sequenciaDigitoCODE128(digitoGrupo As String) As String
|
||||
If digitoGrupo=" " Then Return "11011001100"
|
||||
If digitoGrupo="!" Then Return "11001101100"
|
||||
If digitoGrupo=$"""$ Then Return "11001100110"
|
||||
If digitoGrupo="#" Then Return "10010011000"
|
||||
If digitoGrupo="$" Then Return "10010001100"
|
||||
If digitoGrupo="%" Then Return "10001001100"
|
||||
If digitoGrupo="&" Then Return "10011001000"
|
||||
If digitoGrupo="'" Then Return "10011000100"
|
||||
If digitoGrupo="(" Then Return "10001100100"
|
||||
If digitoGrupo=")" Then Return "11001001000"
|
||||
If digitoGrupo="*" Then Return "11001000100"
|
||||
If digitoGrupo="+" Then Return "11000100100"
|
||||
If digitoGrupo="," Then Return "10110011100"
|
||||
If digitoGrupo="-" Then Return "10011011100"
|
||||
If digitoGrupo="." Then Return "10011001110"
|
||||
If digitoGrupo="/" Then Return "10111001100"
|
||||
If digitoGrupo="0" Then Return "10011101100"
|
||||
If digitoGrupo="1" Then Return "10011100110"
|
||||
If digitoGrupo="2" Then Return "11001110010"
|
||||
If digitoGrupo="3" Then Return "11001011100"
|
||||
If digitoGrupo="4" Then Return "11001001110"
|
||||
If digitoGrupo="5" Then Return "11011100100"
|
||||
If digitoGrupo="6" Then Return "11001110100"
|
||||
If digitoGrupo="7" Then Return "11101101110"
|
||||
If digitoGrupo="8" Then Return "11101001100"
|
||||
If digitoGrupo="9" Then Return "11100101100"
|
||||
If digitoGrupo=":" Then Return "11100100110"
|
||||
If digitoGrupo=";" Then Return "11101100100"
|
||||
If digitoGrupo="<" Then Return "11100110100"
|
||||
If digitoGrupo="=" Then Return "11100110010"
|
||||
If digitoGrupo=">" Then Return "11011011000"
|
||||
If digitoGrupo="?" Then Return "11011000110"
|
||||
If digitoGrupo="@" Then Return "11000110110"
|
||||
If digitoGrupo="A" Then Return "10100011000"
|
||||
If digitoGrupo="B" Then Return "10001011000"
|
||||
If digitoGrupo="C" Then Return "10001000110"
|
||||
If digitoGrupo="D" Then Return "10110001000"
|
||||
If digitoGrupo="E" Then Return "10001101000"
|
||||
If digitoGrupo="F" Then Return "10001100010"
|
||||
If digitoGrupo="G" Then Return "11010001000"
|
||||
If digitoGrupo="H" Then Return "11000101000"
|
||||
If digitoGrupo="I" Then Return "11000100010"
|
||||
If digitoGrupo="J" Then Return "10110111000"
|
||||
If digitoGrupo="K" Then Return "10110001110"
|
||||
If digitoGrupo="L" Then Return "10001101110"
|
||||
If digitoGrupo="M" Then Return "10111011000"
|
||||
If digitoGrupo="N" Then Return "10111000110"
|
||||
If digitoGrupo="O" Then Return "10001110110"
|
||||
If digitoGrupo="P" Then Return "11101110110"
|
||||
If digitoGrupo="Q" Then Return "11010001110"
|
||||
If digitoGrupo="R" Then Return "11000101110"
|
||||
If digitoGrupo="S" Then Return "11011101000"
|
||||
If digitoGrupo="T" Then Return "11011100010"
|
||||
If digitoGrupo="U" Then Return "11011101110"
|
||||
If digitoGrupo="V" Then Return "11101011000"
|
||||
If digitoGrupo="W" Then Return "11101000110"
|
||||
If digitoGrupo="X" Then Return "11100010110"
|
||||
If digitoGrupo="Y" Then Return "11101101000"
|
||||
If digitoGrupo="Z" Then Return "11101100010"
|
||||
If digitoGrupo="[" Then Return "11100011010"
|
||||
If digitoGrupo="\" Then Return "11101111010"
|
||||
If digitoGrupo="]" Then Return "11001000010"
|
||||
If digitoGrupo="^" Then Return "11110001010"
|
||||
If digitoGrupo="_" Then Return "10100110000"
|
||||
If digitoGrupo="`" Then Return "10100001100"
|
||||
If digitoGrupo="a" Then Return "10010110000"
|
||||
If digitoGrupo="b" Then Return "10010000110"
|
||||
If digitoGrupo="c" Then Return "10000101100"
|
||||
If digitoGrupo="d" Then Return "10000100110"
|
||||
If digitoGrupo="e" Then Return "10110010000"
|
||||
If digitoGrupo="f" Then Return "10110000100"
|
||||
If digitoGrupo="g" Then Return "10011010000"
|
||||
If digitoGrupo="h" Then Return "10011000010"
|
||||
If digitoGrupo="i" Then Return "10000110100"
|
||||
If digitoGrupo="j" Then Return "10000110010"
|
||||
If digitoGrupo="k" Then Return "11000010010"
|
||||
If digitoGrupo="l" Then Return "11001010000"
|
||||
If digitoGrupo="m" Then Return "11110111010"
|
||||
If digitoGrupo="n" Then Return "11000010100"
|
||||
If digitoGrupo="o" Then Return "10001111010"
|
||||
If digitoGrupo="p" Then Return "10100111100"
|
||||
If digitoGrupo="q" Then Return "10010111100"
|
||||
If digitoGrupo="r" Then Return "10010011110"
|
||||
If digitoGrupo="s" Then Return "10111100100"
|
||||
If digitoGrupo="t" Then Return "10011110100"
|
||||
If digitoGrupo="u" Then Return "10011110010"
|
||||
If digitoGrupo="v" Then Return "11110100100"
|
||||
If digitoGrupo="w" Then Return "11110010100"
|
||||
If digitoGrupo="x" Then Return "11110010010"
|
||||
If digitoGrupo="y" Then Return "11011011110"
|
||||
If digitoGrupo="z" Then Return "11011110110"
|
||||
If digitoGrupo="{" Then Return "11110110110"
|
||||
If digitoGrupo="|" Then Return "10101111000"
|
||||
If digitoGrupo="}" Then Return "10100011110"
|
||||
If digitoGrupo="~" Then Return "10001011110"
|
||||
|
||||
Return ""
|
||||
End Sub
|
||||
|
||||
Private Sub valorDigitoCODE128(digitoGrupo As String) As Int
|
||||
|
||||
If digitoGrupo=" " Then Return 0
|
||||
If digitoGrupo="!" Then Return 1
|
||||
If digitoGrupo=$"""$ Then Return 2
|
||||
If digitoGrupo="#" Then Return 3
|
||||
If digitoGrupo="$" Then Return 4
|
||||
If digitoGrupo="%" Then Return 5
|
||||
If digitoGrupo="&" Then Return 6
|
||||
If digitoGrupo="'" Then Return 7
|
||||
If digitoGrupo="(" Then Return 8
|
||||
If digitoGrupo=")" Then Return 9
|
||||
If digitoGrupo="*" Then Return 10
|
||||
If digitoGrupo="+" Then Return 11
|
||||
If digitoGrupo="," Then Return 12
|
||||
If digitoGrupo="-" Then Return 13
|
||||
If digitoGrupo="." Then Return 14
|
||||
If digitoGrupo="/" Then Return 15
|
||||
If digitoGrupo="0" Then Return 16
|
||||
If digitoGrupo="1" Then Return 17
|
||||
If digitoGrupo="2" Then Return 18
|
||||
If digitoGrupo="3" Then Return 19
|
||||
If digitoGrupo="4" Then Return 20
|
||||
If digitoGrupo="5" Then Return 21
|
||||
If digitoGrupo="6" Then Return 22
|
||||
If digitoGrupo="7" Then Return 23
|
||||
If digitoGrupo="8" Then Return 24
|
||||
If digitoGrupo="9" Then Return 25
|
||||
If digitoGrupo=":" Then Return 26
|
||||
If digitoGrupo=";" Then Return 27
|
||||
If digitoGrupo="<" Then Return 28
|
||||
If digitoGrupo="=" Then Return 29
|
||||
If digitoGrupo=">" Then Return 30
|
||||
If digitoGrupo="?" Then Return 31
|
||||
If digitoGrupo="@" Then Return 32
|
||||
If digitoGrupo="A" Then Return 33
|
||||
If digitoGrupo="B" Then Return 34
|
||||
If digitoGrupo="C" Then Return 35
|
||||
If digitoGrupo="D" Then Return 36
|
||||
If digitoGrupo="E" Then Return 37
|
||||
If digitoGrupo="F" Then Return 38
|
||||
If digitoGrupo="G" Then Return 39
|
||||
If digitoGrupo="H" Then Return 40
|
||||
If digitoGrupo="I" Then Return 41
|
||||
If digitoGrupo="J" Then Return 42
|
||||
If digitoGrupo="K" Then Return 43
|
||||
If digitoGrupo="L" Then Return 44
|
||||
If digitoGrupo="M" Then Return 45
|
||||
If digitoGrupo="N" Then Return 46
|
||||
If digitoGrupo="O" Then Return 47
|
||||
If digitoGrupo="P" Then Return 48
|
||||
If digitoGrupo="Q" Then Return 49
|
||||
If digitoGrupo="R" Then Return 50
|
||||
If digitoGrupo="S" Then Return 51
|
||||
If digitoGrupo="T" Then Return 52
|
||||
If digitoGrupo="U" Then Return 53
|
||||
If digitoGrupo="V" Then Return 54
|
||||
If digitoGrupo="W" Then Return 55
|
||||
If digitoGrupo="X" Then Return 56
|
||||
If digitoGrupo="Y" Then Return 57
|
||||
If digitoGrupo="Z" Then Return 58
|
||||
If digitoGrupo="[" Then Return 59
|
||||
If digitoGrupo="\" Then Return 60
|
||||
If digitoGrupo="]" Then Return 61
|
||||
If digitoGrupo="^" Then Return 62
|
||||
If digitoGrupo="_" Then Return 63
|
||||
If digitoGrupo="`" Then Return 64
|
||||
If digitoGrupo="a" Then Return 65
|
||||
If digitoGrupo="b" Then Return 66
|
||||
If digitoGrupo="c" Then Return 67
|
||||
If digitoGrupo="d" Then Return 68
|
||||
If digitoGrupo="e" Then Return 69
|
||||
If digitoGrupo="f" Then Return 70
|
||||
If digitoGrupo="g" Then Return 71
|
||||
If digitoGrupo="h" Then Return 72
|
||||
If digitoGrupo="i" Then Return 73
|
||||
If digitoGrupo="j" Then Return 74
|
||||
If digitoGrupo="k" Then Return 75
|
||||
If digitoGrupo="l" Then Return 76
|
||||
If digitoGrupo="m" Then Return 77
|
||||
If digitoGrupo="n" Then Return 78
|
||||
If digitoGrupo="o" Then Return 79
|
||||
If digitoGrupo="p" Then Return 80
|
||||
If digitoGrupo="q" Then Return 81
|
||||
If digitoGrupo="r" Then Return 82
|
||||
If digitoGrupo="s" Then Return 83
|
||||
If digitoGrupo="t" Then Return 84
|
||||
If digitoGrupo="u" Then Return 85
|
||||
If digitoGrupo="v" Then Return 86
|
||||
If digitoGrupo="w" Then Return 87
|
||||
If digitoGrupo="x" Then Return 88
|
||||
If digitoGrupo="y" Then Return 89
|
||||
If digitoGrupo="z" Then Return 90
|
||||
If digitoGrupo="{" Then Return 91
|
||||
If digitoGrupo="|" Then Return 92
|
||||
If digitoGrupo="}" Then Return 93
|
||||
If digitoGrupo="~" Then Return 94
|
||||
|
||||
Return 0
|
||||
End Sub
|
||||
|
||||
Private Sub codigoDigitoCODE128(digitoGrupo As Int) As String
|
||||
|
||||
If digitoGrupo=0 Then Return " "
|
||||
If digitoGrupo=1 Then Return "!"
|
||||
If digitoGrupo=2 Then Return $"""$
|
||||
If digitoGrupo=3 Then Return "#"
|
||||
If digitoGrupo=4 Then Return "$"
|
||||
If digitoGrupo=5 Then Return "%"
|
||||
If digitoGrupo=6 Then Return "&"
|
||||
If digitoGrupo=7 Then Return "'"
|
||||
If digitoGrupo=8 Then Return "("
|
||||
If digitoGrupo=9 Then Return ")"
|
||||
If digitoGrupo=10 Then Return "*"
|
||||
If digitoGrupo=11 Then Return "+"
|
||||
If digitoGrupo=12 Then Return ","
|
||||
If digitoGrupo=13 Then Return "-"
|
||||
If digitoGrupo=14 Then Return "."
|
||||
If digitoGrupo=15 Then Return "/"
|
||||
If digitoGrupo=16 Then Return "0"
|
||||
If digitoGrupo=17 Then Return "1"
|
||||
If digitoGrupo=18 Then Return "2"
|
||||
If digitoGrupo=19 Then Return "3"
|
||||
If digitoGrupo=20 Then Return "4"
|
||||
If digitoGrupo=21 Then Return "5"
|
||||
If digitoGrupo=22 Then Return "6"
|
||||
If digitoGrupo=23 Then Return "7"
|
||||
If digitoGrupo=24 Then Return "8"
|
||||
If digitoGrupo=25 Then Return "9"
|
||||
If digitoGrupo=26 Then Return ":"
|
||||
If digitoGrupo=27 Then Return ";"
|
||||
If digitoGrupo=28 Then Return "<"
|
||||
If digitoGrupo=29 Then Return "="
|
||||
If digitoGrupo=30 Then Return ">"
|
||||
If digitoGrupo=31 Then Return "?"
|
||||
If digitoGrupo=32 Then Return "@"
|
||||
If digitoGrupo=33 Then Return "A"
|
||||
If digitoGrupo=34 Then Return "B"
|
||||
If digitoGrupo=35 Then Return "C"
|
||||
If digitoGrupo=36 Then Return "D"
|
||||
If digitoGrupo=37 Then Return "E"
|
||||
If digitoGrupo=38 Then Return "F"
|
||||
If digitoGrupo=39 Then Return "G"
|
||||
If digitoGrupo=40 Then Return "H"
|
||||
If digitoGrupo=41 Then Return "I"
|
||||
If digitoGrupo=42 Then Return "J"
|
||||
If digitoGrupo=43 Then Return "K"
|
||||
If digitoGrupo=44 Then Return "L"
|
||||
If digitoGrupo=45 Then Return "M"
|
||||
If digitoGrupo=46 Then Return "N"
|
||||
If digitoGrupo=47 Then Return "O"
|
||||
If digitoGrupo=48 Then Return "P"
|
||||
If digitoGrupo=49 Then Return "Q"
|
||||
If digitoGrupo=50 Then Return "R"
|
||||
If digitoGrupo=51 Then Return "S"
|
||||
If digitoGrupo=52 Then Return "T"
|
||||
If digitoGrupo=53 Then Return "U"
|
||||
If digitoGrupo=54 Then Return "V"
|
||||
If digitoGrupo=55 Then Return "W"
|
||||
If digitoGrupo=56 Then Return "X"
|
||||
If digitoGrupo=57 Then Return "Y"
|
||||
If digitoGrupo=58 Then Return "Z"
|
||||
If digitoGrupo=59 Then Return "["
|
||||
If digitoGrupo=60 Then Return "\"
|
||||
If digitoGrupo=61 Then Return "]"
|
||||
If digitoGrupo=62 Then Return "^"
|
||||
If digitoGrupo=63 Then Return "_"
|
||||
If digitoGrupo=64 Then Return "`"
|
||||
If digitoGrupo=65 Then Return "a"
|
||||
If digitoGrupo=66 Then Return "b"
|
||||
If digitoGrupo=67 Then Return "c"
|
||||
If digitoGrupo=68 Then Return "d"
|
||||
If digitoGrupo=69 Then Return "e"
|
||||
If digitoGrupo=70 Then Return "f"
|
||||
If digitoGrupo=71 Then Return "g"
|
||||
If digitoGrupo=72 Then Return "h"
|
||||
If digitoGrupo=73 Then Return "i"
|
||||
If digitoGrupo=74 Then Return "j"
|
||||
If digitoGrupo=75 Then Return "k"
|
||||
If digitoGrupo=76 Then Return "l"
|
||||
If digitoGrupo=77 Then Return "m"
|
||||
If digitoGrupo=78 Then Return "n"
|
||||
If digitoGrupo=79 Then Return "o"
|
||||
If digitoGrupo=80 Then Return "p"
|
||||
If digitoGrupo=81 Then Return "q"
|
||||
If digitoGrupo=82 Then Return "r"
|
||||
If digitoGrupo=83 Then Return "s"
|
||||
If digitoGrupo=84 Then Return "t"
|
||||
If digitoGrupo=85 Then Return "u"
|
||||
If digitoGrupo=86 Then Return "v"
|
||||
If digitoGrupo=87 Then Return "w"
|
||||
If digitoGrupo=88 Then Return "x"
|
||||
If digitoGrupo=89 Then Return "y"
|
||||
If digitoGrupo=90 Then Return "z"
|
||||
If digitoGrupo=91 Then Return "{"
|
||||
If digitoGrupo=92 Then Return "|"
|
||||
If digitoGrupo=93 Then Return "}"
|
||||
If digitoGrupo=94 Then Return "~"
|
||||
|
||||
Return " "
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
File diff suppressed because one or more lines are too long
@@ -24,6 +24,7 @@ ModuleBookmarks29=
|
||||
ModuleBookmarks3=
|
||||
ModuleBookmarks30=
|
||||
ModuleBookmarks31=
|
||||
ModuleBookmarks32=
|
||||
ModuleBookmarks4=
|
||||
ModuleBookmarks5=
|
||||
ModuleBookmarks6=
|
||||
@@ -56,6 +57,7 @@ ModuleBreakpoints29=
|
||||
ModuleBreakpoints3=
|
||||
ModuleBreakpoints30=
|
||||
ModuleBreakpoints31=
|
||||
ModuleBreakpoints32=
|
||||
ModuleBreakpoints4=
|
||||
ModuleBreakpoints5=
|
||||
ModuleBreakpoints6=
|
||||
@@ -88,12 +90,13 @@ ModuleClosedNodes29=
|
||||
ModuleClosedNodes3=
|
||||
ModuleClosedNodes30=
|
||||
ModuleClosedNodes31=
|
||||
ModuleClosedNodes32=
|
||||
ModuleClosedNodes4=
|
||||
ModuleClosedNodes5=
|
||||
ModuleClosedNodes6=
|
||||
ModuleClosedNodes7=
|
||||
ModuleClosedNodes8=
|
||||
ModuleClosedNodes9=
|
||||
NavigationStack=C_Cliente,CheckBox1_CheckedChange,2000,6,Diseñador Visual,principal.bal,-100,1,C_Cliente,gest_Click,567,2,C_Principal,JobDone,1765,0,C_Principal,B4XPage_CloseRequest,1922,0,C_Principal,B_carga_Click,1918,0,C_Principal,connecta_Click,1938,0,B4XMainPage,i_engrane_Click,1742,1,appUpdater,Process_Globals,74,1,C_Clientes,caculaRutaGPS,719,2,C_Cliente,imprime_pagare,3355,1
|
||||
NavigationStack=C_Cliente,imprime_abonopagare2,2376,1,C_Cliente,imprime_cancelarpagare,3793,0,C_Cliente,imprime_pagare,3306,0,C_Principal,JobDone,1268,0,C_Principal,inventario_Click,2749,0,C_Principal,b_rechazos_Click,2316,0,Diseñador Visual,principal.bal,-100,1,C_Principal,imp_LIQUIDACION,3022,0,C_Principal,b_impresion_rec_Click,2910,0,C_Cliente,B_IMP_Click,1139,0,C_Cliente,HIST_LongClick,4490,0
|
||||
SelectedBuild=0
|
||||
VisibleModules=2,16,4,5,6,7,9,30,29,27
|
||||
VisibleModules=2,17,5,6,7,8,10,31,30,28
|
||||
|
||||
Reference in New Issue
Block a user