funcionalidad de lista de precios en punto de venta
This commit is contained in:
@@ -3668,6 +3668,73 @@ Partial Class PV
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If UsuarioActual.CveEmpresa.Contiene(1) Then
|
||||||
|
Dim ObjPS As New ClsProductosServicios
|
||||||
|
If ObjPS.GetPorcentajeProductos(CveCliente) Then
|
||||||
|
Dim PrecioAplicado = ObjPS.DtResultados.FiltraParametros($"CvePS = {CvePSParametro}").FiltroPrimeroValor("PrecioA").ToDouble
|
||||||
|
If PrecioAplicado > 0 Then
|
||||||
|
PrecioSugerido = PrecioAplicado
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
ObjPS.Dispose()
|
||||||
|
End If
|
||||||
|
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(404).ToEntero > 0 Then 'cuando el valor es 10.- secuencia Cliente/Sucursal, 20 - sucursal/cliente
|
||||||
|
Dim TipoPrecioLista As Integer = UsuarioActual.Empresa.Funcionalidad(404).ToEntero
|
||||||
|
' si es 10. primero el cliente
|
||||||
|
Dim CvePrecioListaPS As Integer
|
||||||
|
Dim PorcentajePrecio As Double = 0
|
||||||
|
|
||||||
|
If TipoPrecioLista = 10 Then
|
||||||
|
CvePrecioListaPS = GlobalDTCliente(UsuarioActual.CveEmpresa, Estatus:=-1, CveCliente:=CveCliente).FiltroPrimeroValor("CvePrecioLista").ToEntero()
|
||||||
|
If CvePrecioListaPS <= 0 Then
|
||||||
|
CvePrecioListaPS = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePrecioLista", "").ToEntero()
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
CvePrecioListaPS = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePrecioLista", "").ToEntero()
|
||||||
|
If CvePrecioListaPS <= 0 Then
|
||||||
|
CvePrecioListaPS = GlobalDTCliente(UsuarioActual.CveEmpresa, Estatus:=-1, CveCliente:=CveCliente).FiltroPrimeroValor("CvePrecioLista").ToEntero()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If CvePrecioListaPS > 0 Then
|
||||||
|
Dim ObjPS As New ClsProductosServicios
|
||||||
|
If ObjPS.GetPSPreciosLista(UsuarioActual.CveEmpresa, CvePrecioListaPS, CvePS:=CvePSParametro) Then
|
||||||
|
PrecioSugerido = ObjPS.DtResultados.FiltroPrimeroValor("PrecioLista").ToDouble
|
||||||
|
PorcentajePrecio = ObjPS.DtResultados.FiltroPrimeroValor("Porcentaje").ToDouble
|
||||||
|
End If
|
||||||
|
ObjPS.Dispose()
|
||||||
|
End If
|
||||||
|
|
||||||
|
If PrecioSugerido = 0 Then
|
||||||
|
Dim ObjInventarios As New ClsInventarios
|
||||||
|
Dim CostoPS = ObjInventarios.GetCostoPS(CvePSParametro, TxtCantidad.Text.Trim.ToDouble, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1)
|
||||||
|
'si el costo es cero, puede ser que no halla movimientos del producto, en esa sucursal. y se volverá a sacar sin especificar sucursal
|
||||||
|
If CostoPS = 0 Then CostoPS = ObjInventarios.GetCostoPS(CvePSParametro, TxtCantidad.Text.Trim.ToDouble, -1, "-1", TxtFecha.Text.ToDate, -1, CveTipoAlmacen:=1)
|
||||||
|
ObjInventarios.Dispose()
|
||||||
|
If CostoPS > 0 And PorcentajePrecio > 0 Then
|
||||||
|
PrecioSugerido = ((PorcentajePrecio / 100) + 1) * CostoPS
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
'CvePrecioLista = CvePrecioListaPS
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
'Dim ObjClasificaciones As New ClsClasificaciones
|
||||||
|
'If ObjClasificaciones.GetClasificaciones() Then
|
||||||
|
' PrecioBaseCosto = ObjClasificaciones.DtResultados.FiltroPrimeroValor("PrecioBaseCosto", $"CveEmpresa = {UsuarioActual.CveEmpresa} AND CveClasificacion = {drPS("CveClasificacion")}").ToDecimal
|
||||||
|
'End If
|
||||||
|
|
||||||
|
If PrecioSugerido > 0 Then
|
||||||
|
Dim PrecioBaseCosto As Decimal = 0
|
||||||
|
PrecioBaseCosto = GlobalDTClasificaciones(UsuarioActual.CveEmpresa, CveClasificacion:=drPS("CveClasificacion").ToString().ToEntero()).FiltroPrimeroValor("PrecioBaseCosto", "").ToDecimal
|
||||||
|
|
||||||
|
If PrecioBaseCosto > 0 Then
|
||||||
|
PrecioSugerido = PrecioSugerido * ((PrecioBaseCosto / 100) + 1)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
If PrecioSugerido > 0 Then
|
If PrecioSugerido > 0 Then
|
||||||
TxtPrecio.Text = PrecioSugerido.FormatoNumero()
|
TxtPrecio.Text = PrecioSugerido.FormatoNumero()
|
||||||
RegistraScript("$get('LblPrecio1').innerText = formato_numero(" + PrecioSugerido.ToString + ", 2, '.', ',');")
|
RegistraScript("$get('LblPrecio1').innerText = formato_numero(" + PrecioSugerido.ToString + ", 2, '.', ',');")
|
||||||
|
|||||||
Reference in New Issue
Block a user