This commit is contained in:
Javier
2025-11-04 10:26:40 -06:00
parent fa3cbabdc9
commit e3614c5fcf
11 changed files with 1718 additions and 251 deletions

View File

@@ -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