mirror of
https://github.com/KeymonSoft/Guna_Preventa_BAT.git
synced 2026-04-20 06:09:31 +00:00
version 6.02.10
This commit is contained in:
73
B4A/Subs.bas
73
B4A/Subs.bas
@@ -1859,7 +1859,7 @@ End Sub
|
||||
Sub traeTablaProds(tipoventa As String) As String
|
||||
Log(tipoventa)
|
||||
Private tablaProds As String = "cat_gunaprod2"
|
||||
If tipoventa = "ABORDO" Or tipoventa = "PREVENTA" Or tipoventa = "PREVENTA_FUTURA" Then tablaProds = "cat_gunaprod"
|
||||
If tipoventa = "ABORDO" Or tipoventa = "PREVENTA" Or tipoventa = "PREVENTA_FUTURA" Or tipoventa = "MAYOREO" Then tablaProds = "cat_gunaprod"
|
||||
' LogColor($"Tipo= ${tipoventa}, tabla=${tablaProds}"$, Colors.RGB(200,136,0))
|
||||
Return tablaProds
|
||||
End Sub
|
||||
@@ -2419,6 +2419,77 @@ Sub calculaTotalConPromoXRango4(idCliente As String) As String
|
||||
Return total
|
||||
End Sub
|
||||
|
||||
'Calcula el total de pedido tomando en cuenta si hay productos con promos por rango y si es pedido preacordado.
|
||||
Sub calculaTotalConPromoXRango5(idCliente As String) As String
|
||||
' caso 1 pe_recant = Null
|
||||
' monto del pedido = pe_costo_tot
|
||||
' caso 2 pe_recant = pe_cant (solo prods dentro de rango)
|
||||
' monto del pedido = pe_recalculotot
|
||||
' caso 3 pe_recant <> pe_cant (hay prod dentro de rango y producto extra
|
||||
' monto del pedido = ((pe_cant - pe_reccant) * pe_costou) + pe_recalculotot
|
||||
' Log("888888888888")
|
||||
Private totalParcial As String = 0
|
||||
Private total As String = 0
|
||||
Private cx As Cursor = Starter.skmt.ExecQuery($"select *, ifnull(pe_reccant, 'N') as RECANT from pedido where pe_cliente = '${idCliente}' and PE_PROID IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD WHERE CAT_GP_TIPO = 'CIGARRO')"$)
|
||||
If cx.RowCount > 0 Then
|
||||
For i = 0 To cx.RowCount - 1
|
||||
' Log("999999999999999999999999999999999999")
|
||||
cx.Position = i
|
||||
' Log("***************************************")
|
||||
If cx.getstring("RECANT") = "N" Then ' Sin productos dentro de rango.
|
||||
totalParcial = cx.getstring("PE_COSTO_TOT")
|
||||
else if cx.getstring("RECANT") = cx.getstring("PE_CANT") Then ' Solo productos dentro de rango.
|
||||
totalParcial = cx.getstring("PE_RECALCULOTOT")
|
||||
Else ' hay productos dentro de rango y productos arriba del rango.
|
||||
totalParcial = ((cx.getstring("PE_CANT") - cx.getstring("PE_RECCANT")) * cx.getstring("PE_COSTOU")) + (cx.getstring("PE_RECALCULO") * cx.getstring("PE_RECCANT"))
|
||||
Log($"${((cx.getstring("PE_CANT") - cx.getstring("PE_RECCANT")) * cx.getstring("PE_COSTOU"))} + ${(cx.getstring("PE_RECALCULO") * cx.getstring("PE_RECCANT"))} "$)
|
||||
End If
|
||||
' Log($"Total:${total} + Total Parcial: ${totalParcial}"$)
|
||||
total = total + totalParcial
|
||||
Next
|
||||
End If
|
||||
cx.Close
|
||||
total = NumberFormat2(total, 1, 2, 2, False)
|
||||
' Log($"Total con promocXrango = ${total}"$)
|
||||
Return total
|
||||
End Sub
|
||||
|
||||
|
||||
'Calcula el total de pedido tomando en cuenta si hay productos con promos por rango y si es pedido normal.
|
||||
Sub calculaTotalConPromoXRango6(idCliente As String) As String
|
||||
' caso 1 pe_recant = Null
|
||||
' monto del pedido = pe_costo_tot
|
||||
' caso 2 pe_recant = pe_cant (solo prods dentro de rango)
|
||||
' monto del pedido = pe_recalculotot
|
||||
' caso 3 pe_recant <> pe_cant (hay prod dentro de rango y producto extra
|
||||
' monto del pedido = ((pe_cant - pe_reccant) * pe_costou) + pe_recalculotot
|
||||
' Log("888888888888")
|
||||
Private totalParcial As String = 0
|
||||
Private total As String = 0
|
||||
Private cx As Cursor = Starter.skmt.ExecQuery($"select *, ifnull(pe_reccant, 'N') as RECANT from pedido where pe_cliente = '${idCliente}' AND PE_PROID IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD WHERE CAT_GP_TIPO = 'PARTNERSHIP') "$)
|
||||
If cx.RowCount > 0 Then
|
||||
For i = 0 To cx.RowCount - 1
|
||||
' Log("999999999999999999999999999999999999")
|
||||
cx.Position = i
|
||||
Log("***************************************")
|
||||
If cx.getstring("RECANT") = "N" Then ' Sin productos dentro de rango.
|
||||
totalParcial = cx.getstring("PE_COSTO_TOT")
|
||||
else if cx.getstring("RECANT") = cx.getstring("PE_CANT") Then ' Solo productos dentro de rango.
|
||||
totalParcial = cx.getstring("PE_RECALCULOTOT")
|
||||
Else ' hay productos dentro de rango y productos arriba del rango.
|
||||
totalParcial = ((cx.getstring("PE_CANT") - cx.getstring("PE_RECCANT")) * cx.getstring("PE_COSTOU")) + (cx.getstring("PE_RECALCULO") * cx.getstring("PE_RECCANT"))
|
||||
Log($"${((cx.getstring("PE_CANT") - cx.getstring("PE_RECCANT")) * cx.getstring("PE_COSTOU"))} + ${(cx.getstring("PE_RECALCULO") * cx.getstring("PE_RECCANT"))} "$)
|
||||
End If
|
||||
Log($"Total:${total} + Total Parcial: ${totalParcial}"$)
|
||||
total = total + totalParcial
|
||||
Next
|
||||
End If
|
||||
cx.Close
|
||||
total = NumberFormat2(total, 1, 2, 2, False)
|
||||
Log($"Total con promocXrango = ${total}"$)
|
||||
Return total
|
||||
End Sub
|
||||
|
||||
'Muestra en el Log los campos y valores que regresan en el JobDone.
|
||||
Sub logJobDoneResultados(resultado As DBResult)
|
||||
For Each records() As Object In resultado.Rows
|
||||
|
||||
Reference in New Issue
Block a user