-
-
-
-
-
-
-
+
+
+ <%-- Modal Ventas presupuestos Agregar--%>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
+
+
+
+
+
+
+
+
+
+
+ <%--MODAL CONTROL PRESUPUESTOS AGREGAR--%>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
+
+
+
+
+
+
+
+
+
+
+
+
+ <%--Modal Carga Presupuesto--%>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Contratos/ContratoObra.aspx.vb b/Contratos/ContratoObra.aspx.vb
index 2bdcf71b0..1dccd7ef6 100644
--- a/Contratos/ContratoObra.aspx.vb
+++ b/Contratos/ContratoObra.aspx.vb
@@ -394,7 +394,17 @@ Partial Class Contratos_ContratoObra
'Configuración de Modalidad Update
BtnGuardar.Text = "Guardar Cambios"
- If Request("Opt") IsNot Nothing AndAlso IsNumeric(Request("Opt")) Then TAB.ActiveTabIndex = Request("Opt").ToEntero
+ If Request("Opt") IsNot Nothing AndAlso IsNumeric(Request("Opt")) Then Tab.ActiveTabIndex = Request("Opt").ToEntero
+
+ If CveContrato > 0 Then
+
+ LnkModalAddPSVentas.Visible = True
+ LnkModalAddPSControl.Visible = True
+ LnkModalAddPresupuestoVentas.Visible = True
+ LnkModalAddPresupuestoControl.Visible = True
+
+ End If
+
Else
'Configuración de Modalidad Insert
LblFechaCaptura.Text = Now.ToShortDateString()
@@ -914,9 +924,10 @@ Partial Class Contratos_ContratoObra
#Region " CARGA DATOS "
Private Sub CargaDatos()
Dim ObjContratos As New ClsContratos()
- Dim Ruta = Request.ApplicationPath + "Empresas\" & UsuarioActual.CveEmpresa & "\Contratos\"
- 'DivTipoContrato.Visible = False
-
+ Dim Ruta = Request.ApplicationPath + "Empresas\" & UsuarioActual.CveEmpresa & "\Contratos\"
+ 'DivTipoContrato.Visible = False
+
+
If ObjContratos.GetContratos(CveContrato, UsuarioActual.CveEmpresa) Then
If ObjContratos.DtResultados.Rows.Count > 0 Then
@@ -1001,30 +1012,30 @@ Partial Class Contratos_ContratoObra
TabPVInsumos.Visible = False
RowEstatus.Visible = False
TabPres.HeaderText = "Partidas"
- thOcCliente.Style.Add("display", "none")
- tdOcCliente.Style.Add("display", "none")
- thNoIdentificacionv.Style.Add("display", "none")
- thLimitar.Style.Add("display", "none")
- tdLimitar2.Style.Add("display", "none")
- tdNoIdentificacionv.Style.Add("display", "none")
+ 'thOcCliente.Style.Add("display", "none")
+ 'tdOcCliente.Style.Add("display", "none")
+ 'thNoIdentificacionv.Style.Add("display", "none")
+ 'thLimitar.Style.Add("display", "none")
+ 'tdLimitar2.Style.Add("display", "none")
+ 'tdNoIdentificacionv.Style.Add("display", "none")
'RowFlexible.Visible = False
TableDatosCabecera.Visible = False
TabAvanveDocumento.Visible = False
TabSistema.Visible = False
'RowPorcentajeComision.Visible = False
TabContratosGastos.Visible = False
- tdCveInterna.Text = ""
- tdLimitar.Text = ""
- tdOC.Text = ""
- THAvance.Visible = False
- THAvance.Style.Add("display", "none")
+ 'tdCveInterna.Text = ""
+ 'tdLimitar.Text = ""
+ 'tdOC.Text = ""
+ 'THAvance.Visible = False
+ 'THAvance.Style.Add("display", "none")
TDAvance.Style.Add("display", "none")
TxtOCInterna.Visible = False
TxtNoIdentificacionv.Visible = False
ChkLimitarVenta.Visible = False
DvObservaciones.Visible = True
- TDObservacion.Visible = True
- tdObservaciones.Visible = True
+ 'TDObservacion.Visible = True
+ 'tdObservaciones.Visible = True
TxtObservaciones.Text = ObjContratos.DtResultados.Rows(0)("Observaciones").ToString
Gv.Columns(6).Visible = True
'DdlPeriodo.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("CvePeriodo").ToString)
@@ -1768,6 +1779,9 @@ Partial Class Contratos_ContratoObra
DdlProductows.SelectedText = "Seleccione"
DdlProductows.SelectedValue = "-1"
End If
+
+ UpModalVentasAddPS.Update()
+
End Sub
Private Sub CargaPSInsumos()
@@ -1852,53 +1866,123 @@ Partial Class Contratos_ContratoObra
End Sub
Protected Sub BtnAgregarDetalle_Click(sender As Object, e As EventArgs)
- Dim Row As DataRow = TmpDT.NewRow()
- Row("Cantidad") = TxtCantidad.Text.ToDouble.FormatoNumero
- Row("CantidadContratada") = TxtCantidad.Text.ToDouble.FormatoNumero
- Row("CveUM") = DdlUM.SelectedValue.ToEntero
- Row("UM") = DdlUM.SelectedItem
- Row("CveClasificacion") = DdlClasificacionAdd.SelectedValue
- Row("Clasificacion") = DdlClasificacionAdd.SelectedItem
- Row("CvePS") = DdlProductows.SelectedValue.ToEntero
- Row("PS") = DdlProductows.SelectedText
- Row("CodigoPS") = DdlProductows.SelectedText
- Row("PU") = TxtPU.Text.ToDouble.FormatoNumero
- Row("Total") = (TxtCantidad.Text.ToDouble * TxtPU.Text.ToDouble).FormatoNumero
- Row("CveTipoPresupuesto") = 2
- Row("NoIdentificacion") = TxtNoIdentificacionv.Text.Trim
- Row("OCInterna") = TxtOCInterna.Text.Trim
- Row("LimitarCantidad") = If(ChkLimitarVenta.Checked, 1, 0)
- Row("Observacion") = TxtObservacionesDetalles.Text
- Dim ObjContratos As New ClsContratos
- If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), Row("OCInterna").ToString, Observacion:=Row("Observacion").ToString) Then
- If Autorizado Then
- Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU"))
- guardarBitacora(msj)
- End If
- Row("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
- TmpDT.Rows.Add(Row)
- TmpDT.AcceptChanges()
- Dim TotalRow = Row("Total").ToString.ToDouble
- CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
-
- UpGV.Update()
- TxtCantidad.Text = ""
- TxtOCInterna.Text = ""
- TxtNoIdentificacionv.Text = ""
- TxtObservacionesDetalles.Text = ""
- TxtPU.Text = ""
- DdlClasificacionAdd.SelectedValue = "-1"
- LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero
- LblImporte.Text = LbTotalGeneral.Text
- TxtCantidad.Focus()
- UpGral.Update()
- Else
- Alert("Ocurrio un error al agregar el detalle", TipoMensaje.MsgError)
- End If
-
- ObjContratos.Dispose()
+ If CveContratoDetalleEditar = -1 Then
+
+ Dim Row As DataRow = TmpDT.NewRow()
+ Row("Cantidad") = TxtCantidad.Text.ToDouble.FormatoNumero
+ Row("CantidadContratada") = TxtCantidad.Text.ToDouble.FormatoNumero
+ Row("CveUM") = DdlUM.SelectedValue.ToEntero
+ Row("UM") = DdlUM.SelectedItem
+ Row("CveClasificacion") = DdlClasificacionAdd.SelectedValue
+ Row("Clasificacion") = DdlClasificacionAdd.SelectedItem
+ Row("CvePS") = DdlProductows.SelectedValue.ToEntero
+ Row("PS") = DdlProductows.SelectedText
+ Row("CodigoPS") = DdlProductows.SelectedText
+ Row("PU") = TxtPU.Text.ToDouble.FormatoNumero
+ Row("Total") = (TxtCantidad.Text.ToDouble * TxtPU.Text.ToDouble).FormatoNumero
+ Row("CveTipoPresupuesto") = 2
+ Row("NoIdentificacion") = TxtNoIdentificacionv.Text.Trim
+ Row("OCInterna") = TxtOCInterna.Text.Trim
+ Row("LimitarCantidad") = If(ChkLimitarVenta.Checked, 1, 0)
+ Row("Observacion") = "" 'TxtObservacionesDetalles.Text
+
+ Dim ObjContratos As New ClsContratos
+
+
+ If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), Row("OCInterna").ToString, Observacion:=Row("Observacion").ToString) Then
+
+ If Autorizado Then
+ Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU"))
+ guardarBitacora(msj)
+ End If
+
+ Row("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
+ TmpDT.Rows.Add(Row)
+ TmpDT.AcceptChanges()
+ Dim TotalRow = Row("Total").ToString.ToDouble
+
+ CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
+
+ UpGV.Update()
+ LimpiarModalVentas()
+
+ LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero
+ LblImporte.Text = LbTotalGeneral.Text
+ TxtCantidad.Focus()
+ UpGral.Update()
+
+
+ If Not ChkContinualAgregandoVentas.Checked Then
+ RegistraScript("$('#ModalVentasAddPS').modal('hide')")
+ End If
+
+ Else
+ Alert("Ocurrio un error al agregar el detalle", TipoMensaje.MsgError)
+ End If
+
+ ObjContratos.Dispose()
+ Else
+
+
+ Dim Cantidad, PU As Double : Dim CvePS, CveUM As Integer
+ Dim NoIdentificacion As String = ""
+ Dim OCInterna As String = ""
+ Dim LimitarCantidad As Boolean
+ Dim Observaciones As String = ""
+
+ Cantidad = TxtCantidad.Text.ToDouble
+ PU = TxtPU.Text.ToDouble
+ CvePS = DdlProductows.SelectedValue.ToEntero
+ CveUM = DdlUM.SelectedValue.ToEntero
+ NoIdentificacion = TxtNoIdentificacionv.Text.Trim
+ OCInterna = TxtOCInterna.Text.Trim
+ LimitarCantidad = If(ChkLimitarVenta.Checked, True, False)
+ Observaciones = ""
+
+ Dim row = TmpDT.Select(String.Format(" CveContratoDetalle={0}", CveContratoDetalleEditar))(0)
+ Dim LimitarCantidadValidator As Boolean = row("LimitarCantidad").ToString = "True"
+
+
+ Dim ObjContratos As New ClsContratos
+ If ObjContratos.UpdateContratosDetalle(CveContratoDetalleEditar, CveContrato, CvePS, Cantidad, PU, UsuarioActual.CveUsuario, NoIdentificacion, LimitarCantidad, OCInterna, Observaciones) Then
+
+ If Autorizado Then
+ Dim msj As String = String.Format("Se realizaron los siguientes cambios, el Presupuesto Interno se modificó: {1} {0} {2:C2} a {3} {0} {4:C2}",
+ row("PS").ToString, row("Cantidad").ToString, row("PU").ToString, Cantidad, PU)
+ guardarBitacora(msj)
+ End If
+
+ row("Cantidad") = Cantidad
+ row("CantidadContratada") = Cantidad
+ row("PU") = PU
+ row("Total") = Cantidad * PU
+ row("CveUM") = CveUM
+ row("UM") = DdlUM.SelectedItem.Text
+ row("NoIdentificacion") = NoIdentificacion
+ row("OCInterna") = OCInterna
+ row("LimitarCantidad") = LimitarCantidad
+ row("Observacion") = Observaciones
+
+ TmpDT.AcceptChanges()
+ Alert("Cambios realizados correctamente.", TipoMensaje.MsgInformacion)
+ RegistraScript("$('#ModalVentasAddPS').modal('hide')")
+ Else
+ Alert("Error al Actualizar Detalle", TipoMensaje.MsgError)
+ End If
+ ObjContratos.Dispose()
+
+
+
+ Gv.EditIndex = -1
+ LbTotalGeneral.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=2").SUM("Total").FormatoNumero
+ LblImporte.Text = LbTotalGeneral.Text
+ CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
+
+ End If
+
+
End Sub
Private Sub CargaDatosPresup()
@@ -1959,12 +2043,14 @@ Partial Class Contratos_ContratoObra
End Sub
Protected Sub GV_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles Gv.RowDataBound
- If e.Row.RowIndex > -1 Then
-
- e.Row.FCCheckBox("CHKPAvance").Visible = Autorizado
- 'e.Row.FCCheckBox("CHKPEstimacion").Visible = Autorizado
+ If e.Row.RowIndex > -1 Then
+
+ Dim LnkHabilitaAvance As LinkButton = e.Row.FCLinkButton("LnkHabilitaAvance")
+ ' e.Row.FCCheckBox("CHKPAvance").Visible = Autorizado
+ 'e.Row.FCCheckBox("CHKPEstimacion").Visible = Autorizado
If UsuarioActual.TienePermisoProceso(124) Then
e.Row.FCCheckBox("CHKPAvance").Enabled = True
+ LnkHabilitaAvance.Enabled = True
End If
If e.Row.DBCampo("PermitirAvance").ToString = "1" Then
@@ -1982,7 +2068,20 @@ Partial Class Contratos_ContratoObra
If CveTipoContrato = 25 Then
e.Row.Cells(1).Width = Unit.Pixel(10)
e.Row.Cells(6).Width = Unit.Pixel(250)
+ End If
+
+
+
+
+ If e.Row.DBCampo("PermitirAvance").ToString = "1" Then
+ LnkHabilitaAvance.Text = "
"
+ LnkHabilitaAvance.Attributes.Add("data-original-title", "¿Deshabilitar avance?")
+ Else
+ LnkHabilitaAvance.Text = "
"
+ LnkHabilitaAvance.Attributes.Add("data-original-title", "¿Habilitar avance?")
End If
+
+
End If
If e.Row.RowState = DataControlRowState.Edit OrElse e.Row.RowState = 5 Then
e.Row.FCDropDownList("DdlUMEdit").DataSource = GlobalDTProductosServiciosEquivalencias(e.Row.DataKey("CvePS").ToString.ToEntero, -1, UsuarioActual.CveEmpresa)
@@ -2069,7 +2168,8 @@ Partial Class Contratos_ContratoObra
If ObjContratos.RemoveContratosDetalle(CveContratoDetalle, CveContrato) Then
TmpDT.Rows.Remove(DbRow)
CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
- LbTotalGeneral.Text = Gv.Rows.Cast(Of GridViewRow)().Sum(Function(gvr) gvr.FCLabel("LtTotal").Text.ToDouble).ToString.FormatoNumero
+ LbTotalGeneral.Text = Gv.Rows.Cast(Of GridViewRow)().Sum(Function(gvr) gvr.FCLabel("LtTotal").Text.ToDouble).ToString.FormatoNumero
+ Alert("Detalle eliminado eliminado correctamente.")
Else
Alert("Ocurrió un error al eliminar el detalle (Producto/Servicio). Por favor vuelva a intentar", TipoMensaje.MsgError)
End If
@@ -2100,48 +2200,112 @@ Partial Class Contratos_ContratoObra
UpGVInsumos.Update()
End Sub
- Protected Sub BtnAgregarDetalleInsumos_Click(sender As Object, e As EventArgs)
- Dim Row As DataRow = TmpDT.NewRow()
- Row("Cantidad") = TxtCantidadInsumos.Text.ToDouble.FormatoNumero
- Row("CantidadContratada") = TxtCantidadInsumos.Text.ToDouble.FormatoNumero
- Row("CveUM") = DdlUMInsumos.SelectedValue.ToEntero
- Row("UM") = DdlUMInsumos.SelectedItem
- Row("CveClasificacion") = DdlClasificacionAddInsumos.SelectedValue
- Row("Clasificacion") = DdlClasificacionAddInsumos.SelectedItem
- Row("CvePS") = DdlProductowsInsumos.SelectedValue.ToEntero
- Row("PS") = DdlProductowsInsumos.SelectedText
- Row("CodigoPS") = DdlProductowsInsumos.SelectedText
- Row("PU") = TxtPUInsumos.Text.ToDouble.FormatoNumero
- Row("Total") = (TxtCantidadInsumos.Text.ToDouble * TxtPUInsumos.Text.ToDouble).FormatoNumero
- Row("CveTipoPresupuesto") = 1
- Row("NoIdentificacion") = TxtNoIdentificacionvInsumos.Text.Trim
- Row("LimitarCantidad") = If(ChkLimitar.Checked, 1, 0)
+ Protected Sub BtnAgregarDetalleInsumos_Click(sender As Object, e As EventArgs)
+
+ If CveContratoDetalleEditar = -1 Then
+
+ Dim Row As DataRow = TmpDT.NewRow()
+ Row("Cantidad") = TxtCantidadInsumos.Text.ToDouble.FormatoNumero
+ Row("CantidadContratada") = TxtCantidadInsumos.Text.ToDouble.FormatoNumero
+ Row("CveUM") = DdlUMInsumos.SelectedValue.ToEntero
+ Row("UM") = DdlUMInsumos.SelectedItem
+ Row("CveClasificacion") = DdlClasificacionAddInsumos.SelectedValue
+ Row("Clasificacion") = DdlClasificacionAddInsumos.SelectedItem
+ Row("CvePS") = DdlProductowsInsumos.SelectedValue.ToEntero
+ Row("PS") = DdlProductowsInsumos.SelectedText
+ Row("CodigoPS") = DdlProductowsInsumos.SelectedText
+ Row("PU") = TxtPUInsumos.Text.ToDouble.FormatoNumero
+ Row("Total") = (TxtCantidadInsumos.Text.ToDouble * TxtPUInsumos.Text.ToDouble).FormatoNumero
+ Row("CveTipoPresupuesto") = 1
+ Row("NoIdentificacion") = TxtNoIdentificacionvInsumos.Text.Trim
+ Row("LimitarCantidad") = If(ChkLimitarInsumos.Checked, 1, 0)
+
+ Dim ObjContratos As New ClsContratos
+ If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), "") Then
+ If Autorizado Then
+ Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU"))
+ guardarBitacora(msj)
+ End If
+ Row("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
+ TmpDT.Rows.Add(Row)
+ Dim TotalRow = Row("Total").ToString.ToDouble
+
+ CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1"))
+
+ UpGVInsumos.Update()
+ LimpiarModalControl()
+ LbTotalGeneralInsumos.Text = (LbTotalGeneralInsumos.Text.ToDouble + TotalRow).ToString.FormatoNumero
+ 'LblImporte.Text = LbTotalGeneral.Text
+ TxtCantidadInsumos.Focus()
+ UpGral.Update()
+
+
+ If Not ChkContinualAgregandoControl.Checked Then
+ RegistraScript("$('#ModalControlAddPS').modal('hide')")
+ End If
+
+ Else
+ Alert("Ocurrio un error al agregar el detalle", TipoMensaje.MsgError)
+ End If
+
+ ObjContratos.Dispose()
+
+ Else
+
+ Dim Cantidad, PU As Double
+ Dim CvePS, CveUM As Integer
+ Dim NoIdentificacion As String = ""
+ Dim LimitarCantidad As Boolean
+
+ Cantidad = TxtCantidadInsumos.Text.ToDouble
+ PU = TxtPUInsumos.Text.ToDouble
+ CvePS = DdlProductowsInsumos.SelectedValue.ToEntero
+ CveUM = DdlUMInsumos.SelectedValue.ToEntero
+ NoIdentificacion = TxtNoIdentificacionvInsumos.Text.Trim
+ LimitarCantidad = If(ChkLimitarInsumos.Checked, True, False)
+
+ Dim row = TmpDT.Select(String.Format(" CveContratoDetalle={0}", CveContratoDetalleEditar))(0)
+
+
+
+ Dim ObjContratos As New ClsContratos
+ If ObjContratos.UpdateContratosDetalle(CveContratoDetalleEditar, CveContrato, CvePS, Cantidad, PU, UsuarioActual.CveUsuario, NoIdentificacion, LimitarCantidad, "") Then
+
+ If Autorizado Then
+ Dim msj As String = String.Format("Se realizaron los siguientes cambios, el Presupuesto Interno se modificó: {1} {0} {2:C2} a {3} {0} {4:C2}",
+ row("PS").ToString, row("Cantidad").ToString, row("PU").ToString, Cantidad, PU)
+ guardarBitacora(msj)
+ End If
+
+ row("Cantidad") = Cantidad
+ row("CantidadContratada") = Cantidad
+ row("PU") = PU
+ row("Total") = Cantidad * PU
+ row("CveUM") = CveUM
+ row("UM") = DdlUMInsumos.SelectedItem.Text
+ row("NoIdentificacion") = NoIdentificacion
+ row("LimitarCantidad") = LimitarCantidad
+ TmpDT.AcceptChanges()
+ Alert("Cambios realizados correctamente.", TipoMensaje.MsgInformacion)
+ RegistraScript("$('#ModalControlAddPS').modal('hide')")
+ Else
+ Alert("Error al Actualizar Detalle", TipoMensaje.MsgError)
+ End If
+ ObjContratos.Dispose()
+
+
+ GvInsumos.EditIndex = -1
+ LbTotalGeneralInsumos.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=1").SUM("Total").FormatoNumero
+ CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1"))
+
+
+ End If
+
+
- Dim ObjContratos As New ClsContratos
- If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), "") Then
- If Autorizado Then
- Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU"))
- guardarBitacora(msj)
- End If
- Row("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
- TmpDT.Rows.Add(Row)
- Dim TotalRow = Row("Total").ToString.ToDouble
- CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1"))
- UpGVInsumos.Update()
- TxtCantidadInsumos.Text = ""
- TxtPUInsumos.Text = ""
- DdlClasificacionAddInsumos.SelectedValue = "-1"
- LbTotalGeneralInsumos.Text = (LbTotalGeneralInsumos.Text.ToDouble + TotalRow).ToString.FormatoNumero
- 'LblImporte.Text = LbTotalGeneral.Text
- TxtCantidadInsumos.Focus()
- UpGral.Update()
- Else
- Alert("Ocurrio un error al agregar el detalle", TipoMensaje.MsgError)
- End If
- ObjContratos.Dispose()
End Sub
#Region "GV PRESUPUESTOS"
@@ -2251,7 +2415,8 @@ Partial Class Contratos_ContratoObra
If ObjContratos.RemoveContratosDetalle(CveContratoDetalle, CveContrato) Then
TmpDT.Rows.Remove(DbRow)
CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1"))
- LbTotalGeneralInsumos.Text = GvInsumos.Rows.Cast(Of GridViewRow)().Sum(Function(gvr) gvr.FCLiteral("LtTotal").Text.ToDouble).ToString.FormatoNumero
+ LbTotalGeneralInsumos.Text = GvInsumos.Rows.Cast(Of GridViewRow)().Sum(Function(gvr) gvr.FCLabel("LtTotal").Text.ToDouble).ToString.FormatoNumero
+ Alert("Detalle eliminado eliminado correctamente.")
Else
Alert("Ocurrió un error al eliminar el detalle (Producto/Servicio). Por favor vuelva a intentar", TipoMensaje.MsgError)
End If
@@ -2284,7 +2449,7 @@ Partial Class Contratos_ContratoObra
Row("Total") = (TxtCantidadInt.Text.ToDouble * TxtPUInt.Text.ToDouble).FormatoNumero
Row("CveTipoPresupuesto") = 1
Row("NoIdentificacion") = TxtNoIdentificacionv.Text.Trim
- Row("LimitarCantidad") = ChkLimitar.Checked
+ Row("LimitarCantidad") = False 'ChkLimitar.Checked <-- Estaba usando un checkbox de un logar muy diferente a donde esta ese formilario, posiblemente se copio codigo y se fue por equivocacion
Dim ObjContratos As New ClsContratos
If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Row("LimitarCantidad").ToString.ToEntero = 1, "") Then
@@ -4408,8 +4573,505 @@ Partial Class Contratos_ContratoObra
+ Property ModalVentasPSAdd As Boolean
+ Get
+ If ViewState("ModalVentasAdd") Is Nothing Then
+ Return False
+ Else
+ Return Boolean.Parse(ViewState("ModalVentasAdd").ToString)
+ End If
+ End Get
+ Set(value As Boolean)
+ ViewState("ModalVentasAdd") = value
+ End Set
+ End Property
+ Property ModalControlPSAdd As Boolean
+ Get
+ If ViewState("ModalControlPSAdd") Is Nothing Then
+ Return False
+ Else
+ Return Boolean.Parse(ViewState("ModalControlPSAdd").ToString)
+ End If
+ End Get
+ Set(value As Boolean)
+ ViewState("ModalControlPSAdd") = value
+ End Set
+ End Property
+
+ Property Carga As Boolean
+ Get
+ If ViewState("ModalControlPSAdd") Is Nothing Then
+ Return False
+ Else
+ Return Boolean.Parse(ViewState("ModalControlPSAdd").ToString)
+ End If
+ End Get
+ Set(value As Boolean)
+ ViewState("ModalControlPSAdd") = value
+ End Set
+ End Property
+
+ Enum EnumTipoCargaPresupuesto
+ Ventas
+ Control
+ End Enum
+
+ Property TipoCargaPresupuesto As EnumTipoCargaPresupuesto
+ Get
+ If ViewState("TipoCargaPresupuesto") Is Nothing Then
+ Return EnumTipoCargaPresupuesto.Ventas
+ Else
+ Return DirectCast(ViewState("TipoCargaPresupuesto"), EnumTipoCargaPresupuesto)
+ End If
+ End Get
+ Set(value As EnumTipoCargaPresupuesto)
+ ViewState("TipoCargaPresupuesto") = value
+ End Set
+ End Property
+
+
+ Property CveContratoDetalleEditar As Integer
+ Get
+
+ If ViewState("CveContratoDetalleEditar") Is Nothing Then
+ Return -1
+ Else
+ Return ViewState("CveContratoDetalleEditar").ToString.ToEntero
+ End If
+
+ End Get
+ Set(value As Integer)
+ ViewState("CveContratoDetalleEditar") = value
+ End Set
+ End Property
+
+ Protected Sub LnkModalAddPresupuestoVentas_Click(sender As Object, e As EventArgs)
+
+ LnlModalcargaPresupuestoTitulo.Text = "Carga Presupuesto Ventas"
+ UpModalCargaPresupuesto.Update()
+ RegistraScript("$('#ModalUploadPresupuesto').modal('show')")
+ TipoCargaPresupuesto = EnumTipoCargaPresupuesto.Ventas
+
+ End Sub
+
+ Protected Sub LnkModalAddPresupuestoControl_Click(sender As Object, e As EventArgs)
+
+ LnlModalcargaPresupuestoTitulo.Text = "Carga Presupuesto Control"
+ UpModalCargaPresupuesto.Update()
+ RegistraScript("$('#ModalUploadPresupuesto').modal('show')")
+ TipoCargaPresupuesto = EnumTipoCargaPresupuesto.Control
+
+ End Sub
+
+ Protected Sub LnkModalAddPSVentas_Click(sender As Object, e As EventArgs)
+
+ ModalVentasPSAdd = True
+ ChkContinualAgregandoVentas.Visible = True
+ ChkContinualAgregandoVentas.Checked = True
+ LimpiarModalVentas()
+ RegistraScript("$('#ModalVentasAddPS').modal('show')")
+
+ End Sub
+
+ Protected Sub LnkModalAddPSControl_Click(sender As Object, e As EventArgs)
+
+ ModalControlPSAdd = True
+ ChkContinualAgregandoControl.Visible = True
+ ChkContinualAgregandoControl.Checked = True
+ LimpiarModalControl()
+ RegistraScript("$('#ModalControlAddPS').modal('show')")
+
+ End Sub
+
+
+ Protected Sub LnkEditarPresupuestoVentaDetalle_Click(sender As Object, e As EventArgs)
+
+ Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
+ LimpiarModalVentas()
+
+ 'CveContratoDetalle,CveUM,CvePS,Cantidad,PU,CveTipoPresupuesto,CveClasificacion,CodigoPS,LimitarCantidad
+
+ CveContratoDetalleEditar = GvRow.DataKey("CveContratoDetalle").ToEntero
+
+
+ TxtOCInterna.Text = GvRow.DataKey("OCInterna")
+ TxtCantidad.Text = GvRow.DataKey("Cantidad").ToDouble.ToString
+
+ ChkLimitarVenta.Checked = Boolean.Parse(GvRow.DataKey("LimitarCantidad"))
+
+ TxtNoIdentificacionv.Text = GvRow.DataKey("NoIdentificacion").ToDouble.ToString
+ DdlClasificacionAdd.SelectedValueExist(GvRow.DataKey("CveClasificacion").ToEntero)
+
+ DdlProductows.txtText.Value = GvRow.DataKey("PS").ToString
+ DdlProductows.txtValue.Value = GvRow.DataKey("CvePS").ToString
+
+ DdlUM.DataSource = GlobalDTProductosServiciosEquivalencias(DdlProductows.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa)
+ DdlUM.DataBind()
+ DdlUM.SelectedValueExist(GvRow.DataKey("CveUM").ToDouble.ToString)
+
+ TxtPU.Text = GvRow.DataKey("PU").ToDouble.ToString
+
+
+
+ ModalVentasPSAdd = False
+ ChkContinualAgregandoVentas.Visible = False
+ ChkContinualAgregandoVentas.Checked = False
+
+
+ RegistraScript("$('#ModalVentasAddPS').modal('show')")
+ End Sub
+ Protected Sub LnkEditarPresupuestoControlDetalle_Click(sender As Object, e As EventArgs)
+ Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
+ LimpiarModalControl()
+
+ CveContratoDetalleEditar = gvRow.DataKey("CveContratoDetalle").ToEntero
+
+ TxtCantidadInsumos.Text = gvRow.DataKey("Cantidad").ToDouble.ToString
+ ChkLimitarInsumos.Checked = Boolean.Parse(gvRow.DataKey("LimitarCantidad"))
+ TxtNoIdentificacionvInsumos.Text = gvRow.DataKey("NoIdentificacion")
+
+ DdlClasificacionAddInsumos.SelectedValueExist(gvRow.DataKey("CveClasificacion").ToEntero)
+
+ DdlProductowsInsumos.txtText.Value = gvRow.DataKey("PS").ToString
+ DdlProductowsInsumos.txtValue.Value = gvRow.DataKey("CvePS").ToString
+
+
+ DdlUMInsumos.DataSource = GlobalDTProductosServiciosEquivalencias(DdlProductowsInsumos.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa)
+ DdlUMInsumos.DataBind()
+ DdlUMInsumos.SelectedValueExist(gvRow.DataKey("CveUM").ToDouble.ToString)
+
+
+
+ TxtPUInsumos.Text = gvRow.DataKey("PU").ToDouble.ToString
+
+
+
+ ModalControlPSAdd = False
+ ChkContinualAgregandoControl.Visible = False
+ ChkContinualAgregandoControl.Checked = False
+
+ RegistraScript("$('#ModalControlAddPS').modal('show')")
+ End Sub
+
+
+ Private Sub LimpiarModalVentas()
+
+ TxtOCInterna.Text = ""
+ TxtCantidad.Text = ""
+ ChkLimitarVenta.Checked = False
+ TxtNoIdentificacionv.Text = ""
+ DdlClasificacionAdd.SelectedValueExist(-1)
+ DdlProductows.txtText.Value = ""
+ DdlProductows.txtValue.Value = ""
+ DdlUM.SelectedValueExist(-1)
+ TxtPU.Text = ""
+
+
+ If ModalVentasPSAdd = True Then
+ LtlModalVentasPSTitulo.Text = "Agregar Producto Presupuesto de Ventas"
+ Else
+ LtlModalVentasPSTitulo.Text = "Editar Producto Presupuesto de Ventas"
+ End If
+
+
+ UpModalVentasAddPS.Update()
+
+ End Sub
+ Private Sub LimpiarModalControl()
+
+
+
+ TxtCantidadInsumos.Text = ""
+ ChkLimitarInsumos.Checked = False
+ TxtNoIdentificacionvInsumos.Text = ""
+
+ DdlClasificacionAddInsumos.SelectedValueExist(-1)
+ DdlProductowsInsumos.txtText.Value = ""
+ DdlProductowsInsumos.txtValue.Value = ""
+ DdlUMInsumos.SelectedValueExist(-1)
+ TxtPUInsumos.Text = ""
+
+
+ If ModalControlPSAdd = True Then
+ LtlModalControlPSTitulo.Text = "Agregar Producto Presupuesto Control"
+ Else
+ LtlModalControlPSTitulo.Text = "Editar Producto Presupuesto Control"
+ End If
+
+ UpModalControlAddPS.Update()
+
+ End Sub
+
+
+
+ Protected Sub BtnCargaPresupuesto_Click(sender As Object, e As EventArgs)
+
+ Dim DTCargaPresupuesto As New DataTable
+ DTCargaPresupuesto = CargaPreSupuestoExcel()
+
+ If DTCargaPresupuesto.Rows.Count > 0 Then
+ ProcesaDatosCargaPresupuesto(DTCargaPresupuesto)
+ Else
+ Alert("No se encintraron partidas en el documento", TipoMensaje.MsgAdvertencia)
+ End If
+
+ End Sub
+
+
+
+ Private Function CargaPreSupuestoExcel() As DataTable
+
+ Dim FileExtension As String = "-1"
+ Dim Filesgral As List(Of Archivo) = TxtModalCargaPresupuesto.getfiles().Archivos
+ Dim Filename As String = ""
+ Dim DTPS = New DataTable
+
+ For Each fileItem As Archivo In Filesgral
+
+ FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
+
+
+ If Not FileExtension.ToUpper.Contiene("XLSX", "XSL") Then
+ Alert("El archivo no es una archivo de Excel", TipoMensaje.MsgAdvertencia)
+ Exit For
+ End If
+
+
+ Dim tempArray() As String
+ tempArray = fileItem.filename.ToString().Split("-".ToCharArray())
+ SpreadsheetInfo.SetLicense(Extensiones.SerialGemBoxSpreadsheet)
+ Dim workbook = ExcelFile.Load(fileItem.FileUrl)
+ Dim worksheet = workbook.Worksheets(0)
+ DTPS = worksheet.CreateDataTable(New CreateDataTableOptions() With
+ {
+ .ColumnHeaders = True,
+ .StartRow = 0,
+ .NumberOfColumns = 4,
+ .NumberOfRows = worksheet.Rows.Count,
+ .Resolution = ColumnTypeResolution.AutoPreferStringCurrentCulture
+ })
+
+ Next
+
+ TxtModalCargaPresupuesto.Text = ""
+
+ RegistraScript("$('#ModalUploadPresupuesto').modal('hide')")
+
+ UpModalCargaPresupuesto.Update()
+
+ Return DTPS
+
+ End Function
+
+
+ Private Sub ProcesaDatosCargaPresupuesto(DTPresupuesto As DataTable)
+
+ Dim DTPS = New DataTable
+ DTPS.Columns.Add("CveContratoDetalle", GetType(Integer))
+ DTPS.Columns.Add("Cantidad", GetType(Double))
+ DTPS.Columns.Add("CantidadContratada", GetType(Double))
+ DTPS.Columns.Add("CveUM", GetType(Integer))
+ DTPS.Columns.Add("UM", GetType(String))
+ DTPS.Columns.Add("CveClasificacion", GetType(Integer))
+ DTPS.Columns.Add("Clasificacion", GetType(String))
+ DTPS.Columns.Add("CvePS", GetType(Integer))
+ DTPS.Columns.Add("PS", GetType(String))
+ DTPS.Columns.Add("CodigoPS", GetType(String))
+ DTPS.Columns.Add("PU", GetType(Double))
+ DTPS.Columns.Add("Total", GetType(Double))
+ DTPS.Columns.Add("CveTipoPresupuesto", GetType(Integer))
+ DTPS.Columns.Add("PermitirAvance", GetType(Integer))
+ DTPS.Columns.Add("PermitirEstimacion", GetType(Integer))
+ DTPS.Columns.Add("UsuarioAvance", GetType(Integer))
+ DTPS.Columns.Add("Cantidad_Original", GetType(Double))
+ DTPS.Columns.Add("PU_Original", GetType(Double))
+ DTPS.Columns.Add("Total_Original", GetType(Double))
+ DTPS.Columns.Add("NoIdentificacion", GetType(String))
+ DTPS.Columns.Add("LimitarCantidad", GetType(Integer))
+ DTPS.Columns.Add("OCInterna", GetType(String))
+ DTPS.Columns.Add("Observacion", GetType(String))
+
+ Dim RowNoEncontrados As String = ""
+
+ For Each DrowPS As DataRow In DTPresupuesto.Rows
+
+
+ Dim StrArray() As String = GetPS("PS", DrowPS("PS").ToString).Split("|"c)
+ Dim CvePS As Integer
+ Dim CveUM As Integer
+
+ If StrArray.Length > 0 Then
+ If CBool(StrArray(0)) = True Then
+ CvePS = StrArray(1).ToEntero
+ Else
+ RowNoEncontrados &= StrArray(1) & "<\BR>"
+ End If
+ End If
+
+ If CvePS > 0 And DrowPS("Cantidad").ToString.ToDouble > 0 Then
+
+ CveUM = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveUnidadMedida", "").ToString.ToEntero
+
+ Dim Row As DataRow = DTPS.NewRow()
+ Row("Cantidad") = DrowPS("Cantidad").ToString.ToDouble
+ Row("CantidadContratada") = DrowPS("Cantidad").ToString.ToDouble
+ Row("CveUM") = CveUM
+ Row("UM") = ""
+ Row("CveClasificacion") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveClasificacion", "").ToString.ToEntero
+ Row("Clasificacion") = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = '{ Row("CveClasificacion").ToString }'").ToString
+ Row("CvePS") = CvePS
+ Row("PS") = DrowPS("PS").ToString
+ Row("CodigoPS") = DrowPS("PS").ToString
+ Row("PU") = DrowPS("PU").ToString.ToDouble
+ Row("Total") = DrowPS("Cantidad").ToString.ToDouble * DrowPS("PU").ToString.ToDouble
+
+
+ Select Case TipoCargaPresupuesto
+ Case EnumTipoCargaPresupuesto.Ventas
+ Row("CveTipoPresupuesto") = 2
+ Exit Select
+ Case EnumTipoCargaPresupuesto.Control
+ Row("CveTipoPresupuesto") = 1
+ Exit Select
+ Case Else
+ Row("CveTipoPresupuesto") = 1
+ End Select
+
+
+ Row("NoIdentificacion") = ""
+ Row("OCInterna") = ""
+ Row("LimitarCantidad") = 0
+ Row("Observacion") = ""
+
+ DTPS.Rows.Add(Row)
+
+ End If
+ Next
+
+
+
+
+ Dim ErrorProceso = False
+ Dim ObjContratos As New ClsContratos
+ Dim TotalRow As Double = 0
+ ObjContratos.IniciaTransacSQL()
+
+ For Each Row As DataRow In DTPS.Rows
+
+ If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), Row("OCInterna").ToString, Observacion:=Row("Observacion").ToString) Then
+
+ If Autorizado Then
+ Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU"))
+ guardarBitacora(msj)
+ End If
+
+ Dim NrowTmpDT As DataRow = TmpDT.NewRow
+
+
+ NrowTmpDT("Cantidad") = Row("Cantidad")
+ NrowTmpDT("CantidadContratada") = Row("CantidadContratada")
+ NrowTmpDT("CveUM") = Row("CveUM")
+ NrowTmpDT("UM") = Row("UM")
+ NrowTmpDT("CveClasificacion") = Row("CveClasificacion")
+ NrowTmpDT("Clasificacion") = Row("Clasificacion")
+ NrowTmpDT("CvePS") = Row("CvePS")
+ NrowTmpDT("PS") = Row("PS")
+ NrowTmpDT("CodigoPS") = Row("CodigoPS")
+ NrowTmpDT("PU") = Row("PU")
+ NrowTmpDT("Total") = Row("Total")
+ NrowTmpDT("CveTipoPresupuesto") = Row("CveTipoPresupuesto")
+ NrowTmpDT("NoIdentificacion") = Row("NoIdentificacion")
+ NrowTmpDT("OCInterna") = Row("OCInterna")
+ NrowTmpDT("LimitarCantidad") = Row("LimitarCantidad")
+ NrowTmpDT("Observacion") = Row("Observacion")
+
+
+ NrowTmpDT("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
+
+ TmpDT.Rows.Add(NrowTmpDT)
+ TmpDT.AcceptChanges()
+
+ TotalRow = TotalRow + NrowTmpDT("Total").ToString.ToDouble
+ Else
+ ErrorProceso = True
+ Exit For
+ End If
+ Next
+
+
+ If ErrorProceso Then
+ ObjContratos.RollBack()
+ Alert("Se presento un error al cargar el presupuesto.", TipoMensaje.MsgError)
+ Else
+
+ ObjContratos.Commit()
+ Alert("Presupuesto Cargado correctamente")
+
+
+ Select Case TipoCargaPresupuesto
+ Case EnumTipoCargaPresupuesto.Ventas
+ CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
+ UpGV.Update()
+ Exit Select
+ Case EnumTipoCargaPresupuesto.Control
+ CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1"))
+ UpGVInsumos.Update()
+ Exit Select
+ Case Else
+
+ End Select
+
+ LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero
+ LblImporte.Text = LbTotalGeneral.Text
+ UpGral.Update()
+
+ End If
+
+
+
+ ObjContratos.Dispose()
+
+ If RowNoEncontrados.Length > 0 Then
+ Alert($"Productos no encontrados
{RowNoEncontrados} ")
+ End If
+
+
+ End Sub
+
+
+
+ Protected Sub LnkHabilitaAvance_Click(sender As Object, e As EventArgs)
+
+ Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
+
+ Dim PermitirAvance As Integer = GvRow.DataKey("PermitirAvance").ToEntero
+
+ 'Get the button that raised the event
+ 'Dim btn As CheckBox = DirectCast(sender, CheckBox)
+ 'Dim gvr As GridViewRow = DirectCast(btn.NamingContainer, GridViewRow)
+
+ Dim CveContratoDetalle As Integer = GvRow.DataKey("CveContratoDetalle").ToString.ToEntero
+ Dim objContrato As New ClsContratos
+
+ If objContrato.UpdateContratosDetalleAvance(CveContratoDetalle, IIf(PermitirAvance = 1, 0, 1).ToString.ToEntero) Then
+ Dim row = TmpDT.Select(String.Format("CveContratoDetalle={0}", CveContratoDetalle))(0)
+
+ row("PermitirAvance") = IIf(PermitirAvance = 1, 0, 1).ToString.ToEntero
+
+
+ CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
+
+
+ Alert("Se ha permitido levantar avance", TipoMensaje.MsgInformacion)
+ Else
+ Alert("no se pudo permitir avance", TipoMensaje.MsgAdvertencia)
+ End If
+
+ objContrato.Dispose()
+
+ End Sub
End Class
diff --git a/Contratos/FacturacionMasiva.aspx.vb b/Contratos/FacturacionMasiva.aspx.vb
index d4d6f5fd4..2cc589153 100644
--- a/Contratos/FacturacionMasiva.aspx.vb
+++ b/Contratos/FacturacionMasiva.aspx.vb
@@ -195,7 +195,10 @@ Partial Class Contratos_FacturacionMasiva
End Sub
Protected Sub btnConsultar_Click(sender As Object, e As EventArgs) Handles BtnCargaAsignados.Click
- CargaDatos(DdlContrato.SelectedValue.ToEntero, DdlCliente.SelectedValue.ToEntero)
+ Dim CveContrato As Integer = If(DdlContrato.SelectedValue.ToEntero <= 0, -1, DdlContrato.SelectedValue.ToEntero)
+ Dim CveCliente As Integer = If(DdlCliente.SelectedValue.ToEntero <= 0, -1, DdlCliente.SelectedValue.ToEntero)
+
+ CargaDatos(CveContrato, CveCliente)
RegistraScript("$('#ex').removeClass('expand');$('#ex').addClass('collapse');$('.portlet-body').css('display', '');")
End Sub
@@ -232,7 +235,10 @@ Partial Class Contratos_FacturacionMasiva
Alert("No se generaron facturas", TipoMensaje.MsgAdvertencia)
End If
- CargaDatos(DdlContrato.SelectedValue.ToEntero, DdlCliente.SelectedValue.ToEntero)
+ Dim CveContrato As Integer = If(DdlContrato.SelectedValue.ToEntero <= 0, -1, DdlContrato.SelectedValue.ToEntero)
+ Dim CveCliente As Integer = If(DdlCliente.SelectedValue.ToEntero <= 0, -1, DdlCliente.SelectedValue.ToEntero)
+
+ CargaDatos(CveContrato, CveCliente)
RegistraScript("$('#divAgregar').modal('hide')")
UpBodyEstatus.Update()
End Sub
@@ -245,6 +251,7 @@ Partial Class Contratos_FacturacionMasiva
Dim Resp As New Modelos.Factura.MMensajeFactura
ViewState("CveCicloComercial") = pCveCicloComercial
CreaObjetosVenta()
+
If ObjFactura Is Nothing Or ObjFactura.Cliente Is Nothing Then
Alert("Ocurrió un error al procesar los datos de la Venta.", TipoMensaje.MsgError)
ObjFactura = Nothing
@@ -253,7 +260,7 @@ Partial Class Contratos_FacturacionMasiva
If ObjFactura.CveCliente > 0 Then
- If DTDetalle.Rows.Count > 0 Then
+ If ObjFactura.DtDetalle.Rows.Count > 0 Then
Resp = ObjFactura.EmitirFactura()
@@ -468,9 +475,7 @@ Partial Class Contratos_FacturacionMasiva
TmpDT.Columns.Add("EsCargo", GetType(Boolean))
End Sub
Private Sub CreaObjetosVenta(Optional VistaPrevia As Boolean = False)
- Dim ObjFolios As New ClsGralFolios()
- Dim Folio As String = ""
- Dim Serie As String = ""
+
Dim CveProyecto As String = ""
Dim CveSubProyecto As String = ""
Dim Proyecto As String = ""
@@ -479,21 +484,21 @@ Partial Class Contratos_FacturacionMasiva
ObjFactura = New Modelos.Factura(UsuarioActual)
ObjFactura.DirectorioServidor = Server.MapPath("/")
ObjFactura.CveCicloComercial = CveCicloComercial
+
Dim DR As DataRow = DTCicloComercial.FiltroPrimero($"CveCicloComercial = {CveCicloComercial}")
ObjFactura.Version = "3.3"
ObjFactura.CveUsuario = UsuarioActual.CveUsuario
ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa
- ObjFactura.TipoCambio = 20
+ ObjFactura.TipoCambio = 1
ObjFactura.ConvertirPesos = False
ObjFactura.CveMoneda = DR("CveMoneda").ToString.ToEntero
ObjFactura.Moneda = GlobalDTMonedas.FiltroPrimeroValor("Moneda", $"CveMoneda = {ObjFactura.CveMoneda} ")
ObjFactura.MonedaSAT = GlobalDTMonedas.FiltroPrimeroValor("AbreviaturaSAT", $"CveMoneda = {DR("CveMoneda").ToString.ToEntero}")
ObjFactura.TipoDocto = "Ing"
ObjFactura.RefDocto = ""
- ObjFactura.Folio = Folio.ToEntero
- 'ObjFactura.Folio = If(ExFolioFactura, FolioXML.ToEntero, -1)
- ObjFactura.Serie = Serie
+ ObjFactura.Folio = -1
+ ObjFactura.Serie = "-1"
ObjFactura.CveMesa = -1
ObjFactura.Fecha = DR("FechaVenc").ToString.ToDate
ObjFactura.CvePrePoliza = -1
@@ -533,18 +538,7 @@ Partial Class Contratos_FacturacionMasiva
ObjFactura.CveSubProyectoEjecucion = CveSubProyecto.ToEntero
- SubProyecto = DR("SubProyectoContrato").ToString
-
-
- If ObjFolios.GetFolios("Ing", UsuarioActual.CveEmpresa) Then
- Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format($" Estado = 'Activo' AND CveSubProyecto = {CveSubProyecto} "))
- If DT.Rows.Count > 0 Then
- Serie = DT.Rows(0)("Serie").ToString
- Folio = DT.Rows(0)("FActual").ToString
- End If
- DT.Dispose()
- End If
- ObjFolios.Dispose()
+ SubProyecto = DR("SubProyectoContrato").ToString
Dim objContratos As New ClsContratos
If objContratos.GetContratosDetalle(DR("CveContrato").ToString.ToEntero) Then
@@ -561,8 +555,6 @@ Partial Class Contratos_FacturacionMasiva
ObjFactura.RetISR = SUM(DTDetalle, "ImporteRetISR").ToDecimal
ObjFactura.IEPS = SUM(DTDetalle, "ImporteIEPS").ToDecimal
ObjFactura.Total = ObjFactura.SubTotal + ObjFactura.IVA + ObjFactura.IEPS - (ObjFactura.RetIVA + ObjFactura.RetISR)
- ObjFactura.Serie = Serie
- ObjFactura.Folio = Folio.ToEntero
For Each row As DataRow In DTDetalle.Rows
Dim drPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=row("CvePS").ToString().ToEntero()).FiltroPrimero("")
diff --git a/Empresas/140/Formatos/Salidas.rdlc b/Empresas/140/Formatos/Salidas.rdlc
index 595add00f..54efe605a 100644
--- a/Empresas/140/Formatos/Salidas.rdlc
+++ b/Empresas/140/Formatos/Salidas.rdlc
@@ -1187,6 +1187,77 @@
2pt
+
+ true
+ true
+
+
+
+
+ Usuario Registró:
+
+
+
+
+
+
+ Textbox5
+ 1.62251cm
+ 0.79137cm
+ 0.6cm
+ 2.90426cm
+ 6
+
+
+ 2pt
+ 2pt
+ 2pt
+ 2pt
+
+
+
+ true
+ true
+
+
+
+
+ =Parameters!UsuarioRegistro.Value
+
+
+
+
+
+
+ Textbox33
+ 1.62251cm
+ 3.69563cm
+ 0.6cm
+ 5.93606cm
+ 7
+
+
+ 2pt
+ 2pt
+ 2pt
+ 2pt
+
+