Files
SIG/Acarreos/RepContratosAcarreos.aspx.vb

196 lines
10 KiB
VB.net

Imports Extensiones
Imports System.Data
Imports Microsoft.Reporting.WebForms
Partial Class Acarreos_RepContratosAcarreos
Inherits ClsPaginas
#Region " PROPIEDADES"
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
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDdlNumContrato()
CargaDdlMaterial()
CargaDdlSubProyectoDestino()
CargaDdlSubProyectoOrigen()
CargaDdlTransportista()
CargaDdlProveedor()
txtFechaF.Text = Now.AddDays(0).ToShortDateString
txtFechaI.Text = Now.AddYears(-1).ToShortDateString
End If
End Sub
Private Sub CargaDdlNumContrato()
Dim ObjAcar As New ClsAcarreos
If ObjAcar.GetAcarreosProyectos(-1, UsuarioActual.CveEmpresa, -1, "-1") Then
DdlNumContrato.Items.Insert(0, New ListItem("Todos", "-1"))
DdlNumContrato.DataSource = ObjAcar.DtResultados
DdlNumContrato.DataBind()
End If
ObjAcar.Dispose()
UPDatos.Update()
End Sub
Private Sub CargaDdlMaterial()
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetMaterial(-1, 1, UsuarioActual.CveEmpresa) Then
DdlMaterial.Items.Insert(0, New ListItem("Todos", "-1"))
DdlMaterial.DataSource = ObjAcar.DtResultados
DdlMaterial.DataBind()
End If
ObjAcar.Dispose()
UPDatos.Update()
End Sub
Private Sub CargaDdlSubProyectoOrigen()
DdlSubProyectoOrigen.Items.Insert(0, New ListItem("Todos", "-1"))
DdlSubProyectoOrigen.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1)
DdlSubProyectoOrigen.DataBind()
UPDatos.Update()
End Sub
Private Sub CargaDdlSubProyectoDestino()
DdlSubProyectoDestino.Items.Insert(0, New ListItem("Todos", "-1"))
DdlSubProyectoDestino.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1)
DdlSubProyectoDestino.DataBind()
UPDatos.Update()
End Sub
Private Sub CargaDdlTransportista()
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetTransportista(-1, UsuarioActual.CveEmpresa, 1) Then
DdlTransportista.Items.Insert(0, New ListItem("Todos", "-1"))
DdlTransportista.DataSource = ObjAcar.DtResultados
DdlTransportista.DataBind()
End If
ObjAcar.Dispose()
UPDatos.Update()
End Sub
Private Sub CargaDdlProveedor()
DdlProveedor.Items.Insert(0, New ListItem("Todos", "-1"))
DdlProveedor.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa)
DdlProveedor.DataBind()
End Sub
Private Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCLiteral("LtlVolContratado").Text = FormatNumber(e.Row.FCLiteral("LtlVolContratado").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlPresContratado").Text = "$" + FormatNumber(e.Row.FCLiteral("LtlPresContratado").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlVolXEstimar").Text = FormatNumber(e.Row.FCLiteral("LtlVolXEstimar").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlPresXEstimar").Text = "$" + FormatNumber(e.Row.FCLiteral("LtlPresXEstimar").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlVolEstimado").Text = FormatNumber(e.Row.FCLiteral("LtlVolEstimado").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlPresEstimado").Text = "$" + FormatNumber(e.Row.FCLiteral("LtlPresEstimado").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlVolFaltante").Text = FormatNumber(e.Row.FCLiteral("LtlVolFaltante").Text.ToDouble, 2, , , TriState.True)
e.Row.FCLiteral("LtlPresFaltante").Text = "$" + FormatNumber(e.Row.FCLiteral("LtlPresFaltante").Text.ToDouble, 2, , , TriState.True)
If e.Row.FCLiteral("LtlContrato").Text = "" Then
e.Row.FCLiteral("LtlContrato").Text = e.Row.DBCampo("Gpo")
e.Row.FCLiteral("LtlVolXEstimar").Text = ""
e.Row.FCLiteral("LtlPresXEstimar").Text = ""
e.Row.FCLiteral("LtlVolEstimado").Text = ""
e.Row.FCLiteral("LtlPresEstimado").Text = ""
e.Row.FCLiteral("LtlVolContratado").Text = ""
e.Row.FCLiteral("LtlPresContratado").Text = ""
e.Row.FCLiteral("LtlVolFaltante").Text = ""
e.Row.FCLiteral("LtlPresFaltante").Text = ""
e.Row.CssClass = "Totales"
End If
Dim Css As String = "Texto"
Dim Liga As String = $"/Acarreos/RepContratosAcarreosDetalle.aspx?&CveAcarreoProyecto={e.Row.DBCampo("CveAcarreoProyecto")}&CveMaterial={e.Row.DBCampo("CveMaterial")}"
e.Row.FCLiteral("LtlContrato").Text = "<a class=""" & Css & """ href=""" & Liga & """>" & e.Row.FCLiteral("LtlContrato").Text & "</a>"
End If
End Sub
Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetRepContratosAcarreos(UsuarioActual.CveEmpresa, txtFechaI.Text.ToDate, txtFechaF.Text.ToDate,
DdlNumContrato.SelectedValue, DdlTransportista.SelectedValue, DdlSubProyectoOrigen.SelectedValue,
DdlSubProyectoDestino.SelectedValue, DdlProveedor.SelectedValue,
DdlMaterial.SelectedValue, DdlAgrupador.SelectedValue) Then
GvDatos.DataSource = ObjAcar.DtResultados
GvDatos.DataBind()
DTCont = ObjAcar.DtResultados
End If
ObjAcar.Dispose()
UPDatos.Update()
End Sub
#Region "PDF"
Private Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click
If DTCont IsNot Nothing Then
Dim StrFiltro As New StringBuilder
If DdlNumContrato.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Contrato</b>: {0}", DdlNumContrato.SelectedItem.Text)
If txtFechaI.Text <> "" Then StrFiltro.AppendFormat("&emsp;<b>Fecha Inicio </b>: {0}", txtFechaI.Text.ToDate.ToShortDateString)
If txtFechaF.Text <> "" Then StrFiltro.AppendFormat("&emsp;<b>Fecha Fin </b>: {0}", txtFechaF.Text.ToDate.ToShortDateString)
If DdlTransportista.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Transportista</b>: {0}", DdlTransportista.SelectedItem.Text)
If DdlSubProyectoOrigen.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Proyecto Origen</b>: {0}", DdlSubProyectoOrigen.SelectedItem.Text)
If DdlSubProyectoDestino.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Proyecto Destino</b>: {0}", DdlSubProyectoDestino.SelectedItem.Text)
If DdlProveedor.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Proveedor</b>: {0}", DdlProveedor.SelectedItem.Text)
If DdlMaterial.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Material</b>: {0}", DdlMaterial.SelectedItem.Text)
If DdlAgrupador.SelectedValue <> "-1" Then StrFiltro.AppendFormat("&emsp;<b>Agrupador</b>: {0}", DdlAgrupador.SelectedItem.Text)
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
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("Filtros", StrFiltro.ToString))
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", $"file://{Imagen}"))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
ImprimirPDF("Empresas/Grales/Formatos/RepContratosAcarreos.rdlc", DTCont, params, String.Format("RepContratosAcarreos-{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 StrFiltro As New StringBuilder
If DdlNumContrato.SelectedValue <> "-1" Then StrFiltro.AppendFormat("<b>Contrato</b>: {0}", DdlNumContrato.SelectedItem.Text)
If txtFechaI.Text <> "" Then StrFiltro.AppendFormat("&emsp;<b>Fecha Inicio </b>: {0}", txtFechaI.Text.ToDate.ToShortDateString)
If txtFechaF.Text <> "" Then StrFiltro.AppendFormat("&emsp;<b>Fecha Fin </b>: {0}", txtFechaF.Text.ToDate.ToShortDateString)
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
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("Filtros", StrFiltro.ToString))
params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
ImprimirPDF("Empresas/Grales/Formatos/RepContratosAcarreos.rdlc", DTCont, params, String.Format("RepContratosAcarreos-{0}", Now.ToDateTime.ToShortDateString), "Excel")
Else
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
End If
End Sub
#End Region
End Class