Funcionalidad 545, para validar productos de contratos de obra
This commit is contained in:
@@ -4281,10 +4281,12 @@ Partial Class Compras_Compras
|
||||
Next
|
||||
If ErrorValidacion Then Exit Sub
|
||||
|
||||
Dim dtPSInvalidos As String = ValidarPSContrato(TmpDT.FiltraParametros("", "", {"CveSubProyecto", "CvePS", "Cantidad", "PU"}))
|
||||
If dtPSInvalidos <> "" Then
|
||||
Alert(dtPSInvalidos, TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
If UsuarioActual.Empresa.Funcionalidad(545) = "1" Then
|
||||
Dim dtPSInvalidos As String = ValidarPSContrato(TmpDT.FiltraParametros("", "", {"CveSubProyecto", "CvePS", "Cantidad", "PU"}))
|
||||
If dtPSInvalidos <> "" Then
|
||||
Alert(dtPSInvalidos, TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
End If
|
||||
|
||||
'RECORRO LOS PRODUCTOS O SERVICIOS PARA REGISTRARLOS LOS QUE NO EXISTEN EN EL CATÁLOGO
|
||||
@@ -18106,25 +18108,31 @@ Partial Class Compras_Compras
|
||||
End If
|
||||
|
||||
ActualizaTotales = True
|
||||
Dim ObjContratos As New ClsContratos
|
||||
Dim TieneError As Boolean = False
|
||||
Dim dttemp As New DataTable ' GlobalDTContratos().FiltraParametros(String.Format("CveSubProyecto = {0}", DdlSubProyecto.SelectedValue.ToString))
|
||||
dttemp.Columns.Add("CveSubProyecto", GetType(Integer))
|
||||
dttemp.Columns.Add("CvePS", GetType(Integer))
|
||||
dttemp.Columns.Add("Cantidad", GetType(Decimal))
|
||||
dttemp.Columns.Add("PU", GetType(Decimal))
|
||||
|
||||
Dim DrPS = dttemp.NewRow
|
||||
DrPS("CveSubProyecto") = DdlSubProyecto.SelectedValue.ToString.ToEntero
|
||||
DrPS("CvePS") = DdlPS.SelectedValue.ToString.ToEntero
|
||||
DrPS("Cantidad") = TxtCantidad.Text.Trim.ToDecimal
|
||||
DrPS("PU") = TxtPrecio.Text.Trim.ToDecimal
|
||||
dttemp.Rows.Add(DrPS)
|
||||
If UsuarioActual.Empresa.Funcionalidad(545) = "1" Then
|
||||
Dim TieneError As Boolean = False
|
||||
Dim dttemp As New DataTable '= GlobalDTContratos().FiltraParametros(String.Format("CveSubProyecto = {0}", DdlSubProyecto.SelectedValue.ToString))
|
||||
dttemp.Columns.Add("CveSubProyecto", GetType(Integer))
|
||||
dttemp.Columns.Add("CvePS", GetType(Integer))
|
||||
dttemp.Columns.Add("Cantidad", GetType(Decimal))
|
||||
dttemp.Columns.Add("PU", GetType(Decimal))
|
||||
|
||||
Dim dtPSInvalidos As String = ValidarPSContrato(dttemp)
|
||||
If dtPSInvalidos <> "" Then
|
||||
TieneError = True
|
||||
Dim DrPS = dttemp.NewRow
|
||||
DrPS("CveSubProyecto") = DdlSubProyecto.SelectedValue.ToString.ToEntero
|
||||
DrPS("CvePS") = DdlPS.SelectedValue.ToString.ToEntero
|
||||
DrPS("Cantidad") = TxtCantidad.Text.Trim.ToDecimal
|
||||
DrPS("PU") = TxtPrecio.Text.Trim.ToDecimal
|
||||
dttemp.Rows.Add(DrPS)
|
||||
|
||||
Dim dtPSInvalidos As String = ValidarPSContrato(dttemp)
|
||||
If dtPSInvalidos <> "" Then
|
||||
TieneError = True
|
||||
Alert(dtPSInvalidos, TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
'If dttemp IsNot Nothing AndAlso dttemp.Rows.Count > 0 Then
|
||||
' Dim drContrato As DataRow = dttemp.Rows(0)
|
||||
' If ObjContratos.GetContratosDetalle(drContrato("CveContrato").ToString.ToEntero) Then
|
||||
@@ -18157,75 +18165,52 @@ Partial Class Compras_Compras
|
||||
|
||||
' End If
|
||||
'End If
|
||||
ObjContratos.Dispose()
|
||||
If Not TieneError Then
|
||||
Select Case Modalidad
|
||||
Case "A" 'ADD
|
||||
|
||||
Dim SATClavePS = -1
|
||||
Dim PSRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("")
|
||||
If PSRow IsNot Nothing Then
|
||||
SATClavePS = PSRow("SATClavePS").ToString.ToEntero
|
||||
End If
|
||||
Dim IVA As Double
|
||||
If chkImportacion.Checked Then
|
||||
IVA = (txtImportacion.Text.Trim.ToDouble / (TxtCantidad.Text.Trim.ToDouble * TxtPrecio.Text.Trim.ToDouble))
|
||||
Else
|
||||
IVA = Math.Round(DdlIVA.SelectedValue.ToDouble - 1, 2)
|
||||
End If
|
||||
AddPS(TxtCantidad.Text.Trim.ToDouble, ddlUM.SelectedValue.ToEntero, ddlUM.SelectedItem.Text, DdlClasificacion.SelectedValue.ToEntero, DdlClasificacion.SelectedItem.Text, DdlPS.SelectedValue.ToEntero, DdlPS.SelectedText, HdnTipoPS.Value.ToEntero,
|
||||
|
||||
|
||||
Select Case Modalidad
|
||||
Case "A" 'ADD
|
||||
|
||||
Dim SATClavePS = -1
|
||||
Dim PSRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("")
|
||||
If PSRow IsNot Nothing Then
|
||||
SATClavePS = PSRow("SATClavePS").ToString.ToEntero
|
||||
End If
|
||||
Dim IVA As Double
|
||||
If chkImportacion.Checked Then
|
||||
IVA = (txtImportacion.Text.Trim.ToDouble / (TxtCantidad.Text.Trim.ToDouble * TxtPrecio.Text.Trim.ToDouble))
|
||||
Else
|
||||
IVA = Math.Round(DdlIVA.SelectedValue.ToDouble - 1, 2)
|
||||
End If
|
||||
AddPS(TxtCantidad.Text.Trim.ToDouble, ddlUM.SelectedValue.ToEntero, ddlUM.SelectedItem.Text, DdlClasificacion.SelectedValue.ToEntero, DdlClasificacion.SelectedItem.Text, DdlPS.SelectedValue.ToEntero, DdlPS.SelectedText, HdnTipoPS.Value.ToEntero,
|
||||
DdlSubProyecto.SelectedValue.ToString, DdlSubProyecto.SelectedItem.Text, DdlProyecto.SelectedItem.Text, DdlProyecto.SelectedValue.ToString, TxtObsPS.Text.Trim, TxtPrecio.Text.Trim.ToDouble, Total, IVA,
|
||||
TxtRetIVAModal.Text.ToDouble / 100, TxtRetISRModal.Text.ToDouble / 100, TxtIEPSModal.Text.ToDouble / 100, 0, TxtDescuentoModal.Text.ToDouble, OtrosGastos:=TxtOtrosGastos.Text.ToDouble, CveTipoGasto:=DdlTipoGasto.SelectedValue.ToEntero, TipoGasto:=DdlTipoGasto.SelectedItem.Text,
|
||||
NoDeducible:=ChkEsNoDeduciblePS.Checked, CveSATPS:=SATClavePS)
|
||||
|
||||
AddPS2()
|
||||
LimpiaAgregar()
|
||||
AddPS2()
|
||||
LimpiaAgregar()
|
||||
|
||||
If ChkAgregar.Checked = True And Modalidad = "A" Then
|
||||
RegistraScript("displayToastr(1);", "display")
|
||||
Else
|
||||
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto"))
|
||||
End If
|
||||
|
||||
Case "U" 'UPDATE
|
||||
UpdatePS()
|
||||
Alert("Concepto actualizado Correctamente.", TipoMensaje.MsgInformacion)
|
||||
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto"))
|
||||
End Select
|
||||
ActualizaTotales = False
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(562).ToEntero > 0 Then CargaGastosServicios(UsuarioActual.Empresa.Funcionalidad(562).ToEntero)
|
||||
|
||||
If UsuarioActual.Empresa.UsaAC Then
|
||||
CompruebaAgregar()
|
||||
GuardaAC()
|
||||
End If
|
||||
If ChkAgregar.Checked = True And Modalidad = "A" Then
|
||||
RegistraScript("displayToastr(1);", "display")
|
||||
Else
|
||||
Alert(dtPSInvalidos, TipoMensaje.MsgAdvertencia)
|
||||
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto"))
|
||||
End If
|
||||
|
||||
Case "U" 'UPDATE
|
||||
UpdatePS()
|
||||
Alert("Concepto actualizado Correctamente.", TipoMensaje.MsgInformacion)
|
||||
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto"))
|
||||
End Select
|
||||
ActualizaTotales = False
|
||||
|
||||
'If UsuarioActual.Empresa.Funcionalidad(577).ToString = "1" Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(562).ToEntero > 0 Then CargaGastosServicios(UsuarioActual.Empresa.Funcionalidad(562).ToEntero)
|
||||
|
||||
' 'If UsuarioActual.CveRol = 1 Then
|
||||
' ' Alert($"Ok funcionalidad 577 RetencionIVA { RetencionIVA} IVAOriginal {IVAOriginal}")
|
||||
' 'End If
|
||||
If UsuarioActual.Empresa.UsaAC Then
|
||||
CompruebaAgregar()
|
||||
GuardaAC()
|
||||
End If
|
||||
|
||||
' If RetencionIVA = 0 And IVAOriginal > 0 Then
|
||||
' For Each dRow As DataRow In TmpDT.Rows
|
||||
' If dRow("CveTipoPS").ToString.ToEntero = 1 Then
|
||||
' 'Comnetado para reubicar el boton
|
||||
' 'tdIVA6.Visible = True
|
||||
' Exit For
|
||||
' End If
|
||||
' Next
|
||||
' End If
|
||||
|
||||
'End If
|
||||
|
||||
|
||||
|
||||
UpPS.Update()
|
||||
UpPS.Update()
|
||||
CargaGvPersonal()
|
||||
End Sub
|
||||
''' <summary>
|
||||
@@ -20938,6 +20923,7 @@ Partial Class Compras_Compras
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
objContratos.Dispose()
|
||||
|
||||
If MensajeProducto.Length <> 64 Then
|
||||
Retorno = MensajeProducto
|
||||
|
||||
Reference in New Issue
Block a user