Files
SIG/Acarreos/RepContratosAcarreosDetalle.aspx.vb
JORGE LUIS CAUDILLO ESPARZA c35cf91883 Commit inicial Ventas Productivo
2019-08-14 16:40:54 -07:00

256 lines
12 KiB
VB.net

Imports System.Data
Imports System.Drawing
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Partial Class Acarreos_RepContratosAcarreosDetalle
Inherits ClsPaginas
#Region "PROPIEDADES"
Private Property CveAcarreoProyecto As Integer
Get
CveAcarreoProyecto = ViewState("CveAcarreoProyecto").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveAcarreoProyecto") = value
End Set
End Property
Private Property CveMaterial As Integer
Get
CveMaterial = ViewState("CveMaterial").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveMaterial") = value
End Set
End Property
Private Property DTCont As DataTable
Get
Return If(IsNothing(ViewState("DTCont")), Nothing, CType(ViewState("DTCont"), DataTable))
End Get
Set(value As DataTable)
ViewState("DTCont") = value
End Set
End Property
Private Property NumAcarreosEstimados As Integer
Get
NumAcarreosEstimados = ViewState("NumAcarreosEstimados").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("NumAcarreosEstimados") = value
End Set
End Property
Private Property NumAcarreosXEstimar As Integer
Get
NumAcarreosXEstimar = ViewState("NumAcarreosXEstimar").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("NumAcarreosXEstimar") = value
End Set
End Property
Private Property VolXEstimar As Double
Get
VolXEstimar = ViewState("VolXEstimar").ToString.ToDouble
End Get
Set(value As Double)
ViewState("VolXEstimar") = value
End Set
End Property
Private Property VolEstimado As Double
Get
VolEstimado = ViewState("VolEstimado").ToString.ToDouble
End Get
Set(value As Double)
ViewState("VolEstimado") = value
End Set
End Property
Private Property PresXEstimar As Double
Get
PresXEstimar = ViewState("PresXEstimar").ToString.ToDouble
End Get
Set(value As Double)
ViewState("PresXEstimar") = value
End Set
End Property
Private Property PresEstimado As Double
Get
PresEstimado = ViewState("PresEstimado").ToString.ToDouble
End Get
Set(value As Double)
ViewState("PresEstimado") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
NumAcarreosEstimados = 0
NumAcarreosXEstimar = 0
VolEstimado = 0
VolXEstimar = 0
PresXEstimar = 0
PresEstimado = 0
CveAcarreoProyecto = IfNull(Request("CveAcarreoProyecto"), "").ToString.ToEntero
CveMaterial = IfNull(Request("CveMaterial"), "").ToString.ToEntero
CargaDatos()
For Each Gvr As GridViewRow In GvDatos.Rows
NumAcarreosEstimados = FormatNumber(NumAcarreosEstimados + Gvr.DataKey("NumAcarreosEstimados"), 2, , , TriState.True)
NumAcarreosXEstimar = FormatNumber(NumAcarreosXEstimar + Gvr.DataKey("NumAcarreosXEstimar"), 2, , , TriState.True)
If Gvr.DataKey("SerieFolio") = "" Then
VolXEstimar = FormatNumber(VolXEstimar + Gvr.DataKey("VolTot"), 2, , , TriState.True)
PresXEstimar = FormatNumber(PresXEstimar + Gvr.DataKey("Importe"), 2, , , TriState.True)
Else
VolEstimado = FormatNumber(VolEstimado + Gvr.DataKey("VolTot"), 2, , , TriState.True)
PresEstimado = FormatNumber(PresEstimado + Gvr.DataKey("Importe"), 2, , , TriState.True)
End If
Next
LblVolEstimado.Text = FormatNumber(VolEstimado.ToString, 2, , , TriState.True)
LblVolXEstimar.Text = FormatNumber(VolXEstimar.ToString, 2, , , TriState.True)
LblVolFaltante.Text = FormatNumber(LblVolumen.Text.ToDouble - LblVolEstimado.Text.ToDouble, 2, , , TriState.True)
LblPresEstimado.Text = "$" + FormatNumber(PresEstimado.ToString, 2, , , TriState.True)
LblPresXEstimar.Text = "$" + FormatNumber(PresXEstimar.ToString, 2, , , TriState.True)
LblPresFaltante.Text = "$" + FormatNumber((LblPresupuesto.Text.ToDouble * LblVolumen.Text.ToDouble) - LblPresEstimado.Text.ToDouble, 2, , , TriState.True)
LblNumEstimado.Text = FormatNumber(NumAcarreosEstimados.ToString, 2, , , TriState.True)
LblNumXEstimar.Text = FormatNumber(NumAcarreosXEstimar.ToString, 2, , , TriState.True)
LblNumFaltante.Text = FormatNumber(LblVolFaltante.Text.ToDouble / LblVolumenTipo.Text.ToDouble, 1, , , TriState.True)
End If
End Sub
Private Sub CargaDatos()
Dim ObjAcar As New ClsAcarreos
If ObjAcar.GetRepContratosAcarreosDetalle(CveAcarreoProyecto, CveMaterial, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = ObjAcar.DtResultados
GvDatos.DataBind()
DTCont = ObjAcar.DtResultados
Dim DRES2 As DataRow
DRES2 = ObjAcar.DtResultados(0)
LblContrato.Text = DRES2("NumContrato").ToString
LblFechaFin.Text = DRES2("FechaFin").ToString
LblFechaInicio.Text = DRES2("FechaInicio").ToString
LblMaterial.Text = DRES2("Material").ToString
LblSubProyectoDestino.Text = DRES2("SubProyectoDestino").ToString
LblSubProyectoOrigen.Text = DRES2("SubProyectoOrigen").ToString
LblVolumenTipo.Text = FormatNumber(DRES2("VolumenTipo").ToString, 2, , , TriState.True)
LblVolumen.Text = FormatNumber(DRES2("Volumen").ToString, 2, , , TriState.True)
LblPresupuesto.Text = "$" + FormatNumber(DRES2("Presupuesto").ToString, 2, , , TriState.True)
End If
ObjAcar.Dispose()
UPDatos.Update()
UpDetalles.Update()
End Sub
Private Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim Css As String = "Texto"
Dim Liga As String = $"/Acarreos/RepPreEstimacionDetalle.aspx?&NumPreEstimacion={e.Row.DBCampo("NumPreEstimacion")}
&CveAcarreoProyecto={CveAcarreoProyecto}&CveMaterial={CveMaterial}"
e.Row.FCLiteral("LtlNumPreEstimacion").Text = "<a class=""" & Css & """ href=""" & Liga & """>" & e.Row.FCLiteral("LtlNumPreEstimacion").Text & "</a>"
e.Row.FCLiteral("LtlImporte").Text = "$" + FormatNumber(e.Row.FCLiteral("LtlImporte").Text, 2, , , TriState.True)
e.Row.FCLiteral("LtlVolumen").Text = FormatNumber(e.Row.FCLiteral("LtlVolumen").Text, 2, , , TriState.True)
End If
End Sub
#Region "PDF"
Private Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click
If DTCont IsNot Nothing Then
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
params.Add(New ReportParameter("Contrato", LblContrato.Text))
params.Add(New ReportParameter("FechaInicio", LblFechaInicio.Text))
params.Add(New ReportParameter("FechaFin", LblFechaFin.Text))
params.Add(New ReportParameter("Material", LblMaterial.Text))
params.Add(New ReportParameter("Volumen", LblVolumen.Text))
params.Add(New ReportParameter("Presupuesto", LblPresupuesto.Text))
params.Add(New ReportParameter("VolumenTipo", LblVolumenTipo.Text))
params.Add(New ReportParameter("POrigen", LblSubProyectoOrigen.Text))
params.Add(New ReportParameter("PDestino", LblSubProyectoDestino.Text))
params.Add(New ReportParameter("Num", LblNumEstimado.Text))
params.Add(New ReportParameter("VolXEstimar", LblVolXEstimar.Text))
params.Add(New ReportParameter("PresXEstimar", LblPresXEstimar.Text))
params.Add(New ReportParameter("VolEstimado", LblVolEstimado.Text))
params.Add(New ReportParameter("PresEstimado", LblPresEstimado.Text))
params.Add(New ReportParameter("VolF", LblVolFaltante.Text))
params.Add(New ReportParameter("PresF", LblPresFaltante.Text))
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
ImprimirPDF("Empresas/Grales/Formatos/RepContratosAcarreosDetalle.rdlc", DTCont, params, String.Format("RepContratosAcarreosDetalle-{0}", Now.ToDateTime.ToShortDateString))
Else
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
End If
End Sub
#End Region
#Region "EXCEL"
Private Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
If DTCont IsNot Nothing Then
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
params.Add(New ReportParameter("Contrato", LblContrato.Text))
params.Add(New ReportParameter("FechaInicio", LblFechaInicio.Text))
params.Add(New ReportParameter("FechaFin", LblFechaFin.Text))
params.Add(New ReportParameter("Material", LblMaterial.Text))
params.Add(New ReportParameter("Volumen", LblVolumen.Text))
params.Add(New ReportParameter("Presupuesto", LblPresupuesto.Text))
params.Add(New ReportParameter("VolumenTipo", LblVolumenTipo.Text))
params.Add(New ReportParameter("POrigen", LblSubProyectoOrigen.Text))
params.Add(New ReportParameter("PDestino", LblSubProyectoDestino.Text))
params.Add(New ReportParameter("Num", LblNumEstimado.Text))
params.Add(New ReportParameter("VolXEstimar", LblVolXEstimar.Text))
params.Add(New ReportParameter("PresXEstimar", LblPresXEstimar.Text))
params.Add(New ReportParameter("VolEstimado", LblVolEstimado.Text))
params.Add(New ReportParameter("PresEstimado", LblPresEstimado.Text))
params.Add(New ReportParameter("VolF", LblVolFaltante.Text))
params.Add(New ReportParameter("PresF", LblPresFaltante.Text))
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
ImprimirPDF("Empresas/Grales/Formatos/RepContratosAcarreosDetalle.rdlc", DTCont, params, String.Format("RepContratosAcarreosDetalle-{0}", Now.ToDateTime.ToShortDateString), "Excel")
Else
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
End If
End Sub
#End Region
End Class