From dbc2af7fcf523fa475589f3a8a0314f995b3e340 Mon Sep 17 00:00:00 2001 From: HECTOR RODRIGUEZ Date: Mon, 3 May 2021 20:16:52 -0700 Subject: [PATCH] Error cuando intentaba imprimir un pdf --- Inventarios/Kardex.aspx.vb | 110 ++++++++++++++++++++----------------- 1 file changed, 59 insertions(+), 51 deletions(-) diff --git a/Inventarios/Kardex.aspx.vb b/Inventarios/Kardex.aspx.vb index e05724fe4..ac69f6856 100644 --- a/Inventarios/Kardex.aspx.vb +++ b/Inventarios/Kardex.aspx.vb @@ -369,15 +369,19 @@ Partial Class Inventarios_Kardex Private Sub Imprimir(Optional reporte As String = "PDF") Dim DtKardex As DataTable = Nothing - DtKardex = CargarKardex(ddlProducto2.SelectedValue.ToEntero) - If (Not IsNothing(DtKardex)) Then - Dim params As New List(Of ReportParameter) - If IO.File.Exists(String.Format("{0}/Formatos/Kardex.rdlc", UsuarioActual.Empresa.Ruta)) Then - ImprimirPDF(String.Format("Empresas/{0}/Formatos/Kardex.rdlc", UsuarioActual.CveEmpresa), DtKardex, params, "ReporteKardex", reporte) - Else - ImprimirPDF("Empresas/Grales/Formatos/Kardex.rdlc", DtKardex, params, "Reporte Kardex", reporte) + If ddlProducto2.SelectedValue.ToEntero > 0 Then + DtKardex = CargarKardex(ddlProducto2.SelectedValue.ToEntero) + If (Not IsNothing(DtKardex)) Then + Dim params As New List(Of ReportParameter) + If IO.File.Exists(String.Format("{0}/Formatos/Kardex.rdlc", UsuarioActual.Empresa.Ruta)) Then + ImprimirPDF(String.Format("Empresas/{0}/Formatos/Kardex.rdlc", UsuarioActual.CveEmpresa), DtKardex, params, "ReporteKardex", reporte) + Else + ImprimirPDF("Empresas/Grales/Formatos/Kardex.rdlc", DtKardex, params, "Reporte Kardex", reporte) + End If + DtKardex.Dispose() End If - DtKardex.Dispose() + Else + Alert("No hay informacion cargada", TipoMensaje.MsgAdvertencia) End If End Sub @@ -385,61 +389,65 @@ Partial Class Inventarios_Kardex GenerarPDF() End Sub Private Sub GenerarPDF(Optional Formato As String = "PDF") - Dim Movimientos As New ClsInventarios - Dim CvePS As Integer = ddlProducto2.SelectedValue.ToEntero - Dim Entrada As Boolean = cbEntrada.Checked - Dim Salida As Boolean = cbSalida.Checked + If ddlProducto2.SelectedValue.ToEntero > 0 Then + Dim Movimientos As New ClsInventarios + Dim CvePS As Integer = ddlProducto2.SelectedValue.ToEntero + Dim Entrada As Boolean = cbEntrada.Checked + Dim Salida As Boolean = cbSalida.Checked - Dim FechaI As String = If(TxtFechaI.Text <> "" AndAlso TxtFechaI.Text <> "__/__/____", TxtFechaI.Text, "-1") - Dim FechaF As String = If(TxtFechaF.Text <> "" AndAlso TxtFechaF.Text <> "__/__/____", TxtFechaF.Text, "-1") - Dim CveAlmacen As Integer = ddlAlmacen.SelectedValue.ToEntero + Dim FechaI As String = If(TxtFechaI.Text <> "" AndAlso TxtFechaI.Text <> "__/__/____", TxtFechaI.Text, "-1") + Dim FechaF As String = If(TxtFechaF.Text <> "" AndAlso TxtFechaF.Text <> "__/__/____", TxtFechaF.Text, "-1") + Dim CveAlmacen As Integer = ddlAlmacen.SelectedValue.ToEntero - Dim Almacen = If(ddlAlmacen.SelectedValue = "-1", "", $" Almacén: {ddlAlmacen.SelectedItem.Text}") - Dim UM = If(DdlUnidadMedida.SelectedValue = "-1", "", $" Unidad de Medida: {DdlUnidadMedida.SelectedItem.Text}") - Dim FechaIn As String = If(TxtFechaI.Text = "", "", $" Fecha Inicio: {TxtFechaI.Text}") - Dim FechaFn As String = If(TxtFechaF.Text = "", "", $" Fecha Fin: {TxtFechaF.Text}") - Dim EntradaSalida As String = "" + Dim Almacen = If(ddlAlmacen.SelectedValue = "-1", "", $" Almacén: {ddlAlmacen.SelectedItem.Text}") + Dim UM = If(DdlUnidadMedida.SelectedValue = "-1", "", $" Unidad de Medida: {DdlUnidadMedida.SelectedItem.Text}") + Dim FechaIn As String = If(TxtFechaI.Text = "", "", $" Fecha Inicio: {TxtFechaI.Text}") + Dim FechaFn As String = If(TxtFechaF.Text = "", "", $" Fecha Fin: {TxtFechaF.Text}") + Dim EntradaSalida As String = "" - If cbEntrada.Checked And cbSalida.Checked Then - EntradaSalida = " Entradas y Salidas" - ElseIf cbEntrada.Checked And cbSalida.Checked = False Then - EntradaSalida = " Solo Entradas" - ElseIf cbEntrada.Checked = False And cbSalida.Checked Then - EntradaSalida = " Solo Salidas" - End If + If cbEntrada.Checked And cbSalida.Checked Then + EntradaSalida = " Entradas y Salidas" + ElseIf cbEntrada.Checked And cbSalida.Checked = False Then + EntradaSalida = " Solo Entradas" + ElseIf cbEntrada.Checked = False And cbSalida.Checked Then + EntradaSalida = " Solo Salidas" + End If - Dim CveTiposAlmacen = "" - For Each item As ListItem In CBLTiposAlmacen.Items - CveTiposAlmacen += If(item.Selected, $"{item.Value},", "") - Next + Dim CveTiposAlmacen = "" + For Each item As ListItem In CBLTiposAlmacen.Items + CveTiposAlmacen += If(item.Selected, $"{item.Value},", "") + Next - Dim Serie As String = If(TxtSerie.Text <> "", TxtSerie.Text, "-1") + Dim Serie As String = If(TxtSerie.Text <> "", TxtSerie.Text, "-1") - Dim SerieAgrupado As String = If(TxtSerie.Text = "", "", $"Existencia y costos calculada por numero de serie: {TxtSerie.Text} ") + Dim SerieAgrupado As String = If(TxtSerie.Text = "", "", $"Existencia y costos calculada por numero de serie: {TxtSerie.Text} ") - If Movimientos.GetKardex(Entrada, Salida, CvePS, FechaI, FechaF, CveAlmacen, CveTiposAlmacen.Substring(0, CveTiposAlmacen.Length - 1), DdlUnidadMedida.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ChkAgruparAlmacen.Checked, Serie) Then + If Movimientos.GetKardex(Entrada, Salida, CvePS, FechaI, FechaF, CveAlmacen, CveTiposAlmacen.Substring(0, CveTiposAlmacen.Length - 1), DdlUnidadMedida.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ChkAgruparAlmacen.Checked, Serie) 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 dt As DataTable = Movimientos.DtResultados - Dim params As New List(Of ReportParameter) - params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) - params.Add(New ReportParameter("FechaInicio", FechaI)) - params.Add(New ReportParameter("FechaFin", FechaF)) - params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) - params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) - params.Add(New ReportParameter("Producto", ddlProducto2.SelectedText)) - params.Add(New ReportParameter("AgrupadoPor", $"Agrupado Por: {SerieAgrupado}{EntradaSalida}{Almacen}{UM}{FechaIn}{FechaFn}")) + 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 dt As DataTable = Movimientos.DtResultados + Dim params As New List(Of ReportParameter) + params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) + params.Add(New ReportParameter("FechaInicio", FechaI)) + params.Add(New ReportParameter("FechaFin", FechaF)) + params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) + params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) + params.Add(New ReportParameter("Producto", ddlProducto2.SelectedText)) + params.Add(New ReportParameter("AgrupadoPor", $"Agrupado Por: {SerieAgrupado}{EntradaSalida}{Almacen}{UM}{FechaIn}{FechaFn}")) - If Imagen.Exists Then - params.Add(New ReportParameter("LogoPath", logouri)) + If Imagen.Exists Then + params.Add(New ReportParameter("LogoPath", logouri)) + Else + params.Add(New ReportParameter("LogoPath", "")) + End If + ImprimirPDF("Empresas/Grales/Formatos/RepKardex.rdlc", dt, params, "ReporteKardex", Formato) Else - params.Add(New ReportParameter("LogoPath", "")) + Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia) End If - ImprimirPDF("Empresas/Grales/Formatos/RepKardex.rdlc", dt, params, "ReporteKardex", Formato) Else - Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia) + Alert("Debes seleccionar un Producto/Servicio", TipoMensaje.MsgAdvertencia) End If End Sub @@ -450,7 +458,7 @@ Partial Class Inventarios_Kardex Protected Sub LnkEditarFecha_Click(sender As Object, e As EventArgs) Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow) CveMovimiento = gvRow.DataKey("CveMovimiento").ToEntero - TxtFecha.Text = gvRow.DataKey("FechaMovto").ToDateTime.ToString("yyyy-MM-ddTHH:mm") + TxtFecha.Text = gvRow.DataKey("FechaMovto").ToDateTime.ToString("yyyy-MM-ddTHH: mm") RegistraScript("$('#DModalEditarFecha').modal()") UpModalEditarFecha.Update() End Sub