Version final, se agrega modulo para pagares y correcciones menores

This commit is contained in:
cvaldes1201
2024-05-21 14:00:36 -06:00
parent 1651960f88
commit 556f986084
12 changed files with 179 additions and 55 deletions

View File

@@ -95,6 +95,8 @@ Sub Class_Globals
Private B_IMP As Button
Dim Toggla As Toggle
Dim tgl As Toggle
Dim pre_act As Float
Private Panel1 As Panel
Private I_COMPRA As EditText
Private B_GUARDA_C As Button
@@ -394,6 +396,7 @@ Sub B4XPage_Appear
End If
pre_act = Subs.traeTotalClientepreventaparacredito
End Sub
@@ -482,27 +485,35 @@ Private Sub B4XPage_CloseRequest As ResumableSub
' BACK key pressed
' Return True To close, False To cancel
' Log($"venimosDeTicketsDia=${venimosDeTicketsDia}"$)
If la_cuenta.Text <> "0" Then
cuest.encuestaIniciada = False
cuest.ocultPanelPregunta
If IsNumber(l_total.text) And Not(Subs.pedidoGuardado) Then
LogColor("Hay Venta", Colors.Red)
Private resultado1 As Int = Msgbox2($"Va salir sin haber guardado la venta, si continua, la venta se BORRARA.${CRLF}${CRLF}¿Esta seguro que desea continuar?"$, "SE VA A BORRAR LA VENTA", "Borrar Venta", "Guardar Venta", "", LoadBitmap(File.DirAssets,"alert2.png"))
If resultado1 = DialogResponse.POSITIVE Then
Log("Borrra venta")
Subs.borraPedidoClienteActual
ToastMessageShow("Venta Borrada", False)
If Starter.pre_viejo = pre_act Then
Log(Starter.pre_viejo)
Log(pre_act)
If la_cuenta.Text <> "0" Then
cuest.encuestaIniciada = False
cuest.ocultPanelPregunta
If IsNumber(l_total.text) And Not(Subs.pedidoGuardado) Then
LogColor("Hay Venta", Colors.Red)
Private resultado1 As Int = Msgbox2($"Va salir sin haber guardado la venta, si continua, la venta se BORRARA.${CRLF}${CRLF}¿Esta seguro que desea continuar?"$, "SE VA A BORRAR LA VENTA", "Borrar Venta", "Guardar Venta", "", LoadBitmap(File.DirAssets,"alert2.png"))
If resultado1 = DialogResponse.POSITIVE Then
Log("Borrra venta")
Subs.borraPedidoClienteActual
ToastMessageShow("Venta Borrada", False)
' venimosDeTicketsDia = False
B4XPages.ShowPage("Principal")
else if resultado1=DialogResponse.CANCEL Then
Log("Pedido guardado")
Guardar_Click
ToastMessageShow("Venta Guardada", False)
End If
End If
B4XPages.ShowPage("Principal")
else if resultado1=DialogResponse.CANCEL Then
Log("Pedido guardado")
Guardar_Click
ToastMessageShow("Venta Guardada", False)
End If
End If
' venimosDeTicketsDia = False
B4XPages.ShowPage("Clientes")
B4XPages.ShowPage("Clientes")
Else
End If
Else
End If
' Return True
Return False
@@ -521,25 +532,111 @@ Sub DATOS_Click
End Sub
Sub Guardar_Click
If la_cuenta.Text <> 0 Then
Credi = B4XPages.MainPage.skmt.ExecQuery("Select CAT_CL_BCREDITO FROM kmt_info Where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)")
Credi.Position = 0
If Credi.GetString("CAT_CL_BCREDITO") = "1" Then
Msgbox2Async("La venta es a credito?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False)
Wait For Msgbox_Result (resultado As Int)
If resultado = DialogResponse.POSITIVE Then
p_credito.Visible = True
c = B4XPages.MainPage.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) and PE_FOLIO = ?", Array As String("PREVENTA"))
c.Position = 0
If c.GetString("CUANTOS") > 0 Then
If la_cuenta.Text <> 0 Then
Credi = B4XPages.MainPage.skmt.ExecQuery("Select CAT_CL_BCREDITO FROM kmt_info Where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA) and CAT_CL_CODIGO NOT IN (SELECT CLIENTE FROM ABONOSP)")
If Credi.RowCount > 0 Then
Credi.Position = 0
If Credi.GetString("CAT_CL_BCREDITO") = "1" Then
If pre_act <> Starter.pre_viejo Then
Msgbox2Async("La venta es a credito?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False)
Wait For Msgbox_Result (resultado As Int)
If resultado = DialogResponse.POSITIVE Then
p_credito.Visible = True
Dim limitcred As Cursor
limitcred = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_LIMITECREDITO FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)")
limitcred.Position = 0
l_limite.Text = "Limite de credito: $" & limitcred.GetString("CAT_CL_LIMITECREDITO")
If Subs.traeTotalClientepreventaparacredito >= limitcred.GetString("CAT_CL_LIMITECREDITO") Then
et_montoacredito.Text = limitcred.GetString("CAT_CL_LIMITECREDITO")
Else
et_montoacredito.Text = Subs.traeTotalClientepreventaparacredito
End If
limitcred.Close
End If
Else If pre_act = Starter.pre_viejo Then
GuardaVenta
End If
Else If Credi.GetString("CAT_CL_BCREDITO") = "0" Then
GuardaVenta
End If
Else
GuardaVenta
ToastMessageShow("HOLA",True)
End If
Else If Credi.GetString("CAT_CL_BCREDITO") = "0" Then
End If
Else
' GuardaVenta
Else If la_cuenta.Text = 0 Then
GuardaVenta
End If
Else If c.GetString("CUANTOS") = 0 Then
GuardaVenta
End If
End Sub
Private Sub b_acred_Click
c2=B4XPages.MainPage.skmt.ExecQuery("select USUARIO from usuarioa")
c2.Position=0
usuario = c2.GetString("USUARIO")
c2.Close
Dim limitcred As Cursor
limitcred = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_LIMITECREDITO FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)")
limitcred.Position = 0
l_limite.Text = "Limite de credito: $" & limitcred.GetString("CAT_CL_LIMITECREDITO")
If Subs.traeTotalClientepreventaparacredito >= limitcred.GetString("CAT_CL_LIMITECREDITO") Then
If et_montoacredito.Text > limitcred.GetString("CAT_CL_LIMITECREDITO") Then
MsgboxAsync("El monto del pagare no puede ser mayor al limite del credito","Atención")
et_montoacredito.Text = limitcred.GetString("CAT_CL_LIMITECREDITO")
Else
c = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) As REGISTRADO FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)")
c.Position = 0
If c.GetString("REGISTRADO") = 0 Then
MsgboxAsync("SI ENTRAMOS 3","Atención")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PAGARES (PA_ALMACEN, PA_RUTA, PA_FECHA, PA_CAPTURA, PA_MONTO, PA_USUARIO, PA_CLIENTE) VALUES(?,?,?,?,?,?,?) ", Array As Object (ALMACEN, LA_RUTA, (sDate &" "& sTime),(sDate &" "& sTime), et_montoacredito.Text, usuario, la_cuenta.Text))
GuardaVenta
p_credito.Visible = False
Else
MsgboxAsync("SI ENTRAMOS4","Atención")
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PAGARES set PA_FECHA = ?, PA_CAPTURA = ?, PA_MONTO = ? where PA_CLIENTE In (select cuenta from cuentaa)", Array As Object ((sDate &" "& sTime),(sDate &" "& sTime), et_montoacredito.Text))
GuardaVenta
p_credito.Visible = False
End If
End If
Else If Subs.traeTotalClientepreventaparacredito < limitcred.GetString("CAT_CL_LIMITECREDITO") Then
If et_montoacredito.Text > Subs.traeTotalClientepreventaparacredito Then
MsgboxAsync("El monto del pagare no puede ser mayor a la preventa registrada","Atención")
et_montoacredito.Text = Subs.traeTotalClientepreventaparacredito
Else
c = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) As REGISTRADO FROM PAGARES WHERE PA_CLIENTE IN (SELECT CUENTA FROM CUENTAA)")
c.Position = 0
If c.GetString("REGISTRADO") = 0 Then
MsgboxAsync("SI ENTRAMOS","Atención")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PAGARES (PA_ALMACEN, PA_RUTA, PA_FECHA, PA_CAPTURA, PA_MONTO, PA_USUARIO, PA_CLIENTE) VALUES(?,?,?,?,?,?,?) ", Array As Object (ALMACEN, LA_RUTA, (sDate &" "& sTime),(sDate &" "& sTime), et_montoacredito.Text, usuario, la_cuenta.Text))
GuardaVenta
p_credito.Visible = False
Else
MsgboxAsync("SI ENTRAMOS 2","Atención")
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PAGARES set PA_FECHA = ?, PA_CAPTURA = ?, PA_MONTO = ? where PA_CLIENTE In (select cuenta from cuentaa)", Array As Object ((sDate &" "& sTime),(sDate &" "& sTime), et_montoacredito.Text))
GuardaVenta
p_credito.Visible = False
End If
End If
End If
limitcred.Close
End Sub
Private Sub b_cancred_Click
p_credito.Visible = False
End Sub
Sub GuardaVenta
@@ -1372,12 +1469,4 @@ Private Sub b_ventaabordo_Click
End If
End Sub
Private Sub b_acred_Click
End Sub
Private Sub b_cancred_Click
End Sub