Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -10127,6 +10127,7 @@ Public Class ClsPaginas
|
||||
PaginaDict.Add("/Contabilidad/RepFisImpuestos.aspx".ToUpper(), 432)
|
||||
PaginaDict.Add("/Contabilidad/LibroDiario.aspx".ToUpper(), 620)
|
||||
PaginaDict.Add("/Contabilidad/LibroMayor.aspx".ToUpper(), 619)
|
||||
PaginaDict.Add("/Contabilidad/LibroMayorCI.aspx".ToUpper(), 619)
|
||||
PaginaDict.Add("/Contabilidad/Reportes/RepCuadreContaAdmon.aspx".ToUpper(), -1)
|
||||
PaginaDict.Add("/Contabilidad/Reportes/RepCuadreContaAdmonDetalle.aspx".ToUpper(), -1)
|
||||
PaginaDict.Add("/Contabilidad/ComparacionesContabilidad.aspx".ToUpper(), 330)
|
||||
@@ -10168,7 +10169,7 @@ Public Class ClsPaginas
|
||||
PaginaDict.Add("/Contabilidad/RepEstadoResultadosHorizontal.aspx".ToUpper(), 420)
|
||||
PaginaDict.Add("/Contabilidad/RepAnexoCatalogoMensualHorizontal.aspx".ToUpper(), -1)
|
||||
PaginaDict.Add("/Contabilidad/CatBloqueoDiario.aspx".ToUpper(), 680)
|
||||
PaginaDict.Add("/Contabilidad/LibroMayor2.aspx".ToUpper(), 1353)
|
||||
'PaginaDict.Add("/Contabilidad/LibroMayor2.aspx".ToUpper(), 1353)
|
||||
|
||||
|
||||
#End Region
|
||||
@@ -10821,6 +10822,7 @@ Public Class ClsPaginas
|
||||
PaginaDict.Add("/Ventas/CatMotivosDevoluciones.aspx".ToUpper(), 786)
|
||||
PaginaDict.Add("/Ventas/CatPSSubProyectosVendedores.aspx".ToUpper(), 787)
|
||||
PaginaDict.Add("/Ventas/CatMotivosCancelacion.aspx".ToUpper(), 788)
|
||||
PaginaDict.Add("/Ventas/CatSelectivas.aspx".ToUpper(), 897)
|
||||
|
||||
#End Region
|
||||
#Region "VIA"
|
||||
|
||||
@@ -415,7 +415,7 @@ Public Class ClsProductosServicios
|
||||
Optional RegistroRSCO As String = "-1", Optional FechaVigenciaRSCO As Date = MinFecha, Optional VigenciaIndeterminadaRSCO As Boolean = False, Optional CveTipoEmpacado As Integer = -1, Optional CveTipoOrganico As Integer = -1,
|
||||
Optional NombreComercial As String = "", Optional NotasAdicionales As String = "", Optional EcommerceEtiquetas As String = "", Optional ActivoEcommerce As Boolean = False, Optional EcommercePrecio As Decimal = 0,
|
||||
Optional CveClasificacionEcommerce As Integer = -1, Optional EcommerceCantidad As Decimal = 0, Optional CodigoAlterno As String = "-1", Optional PSAlterno As String = "-1", Optional ProductoExhibicion As Boolean = False,
|
||||
Optional Imagen As String = "", Optional PorcentajeMinimoUtilidad As Decimal = 0) As Integer
|
||||
Optional Imagen As String = "", Optional PorcentajeMinimoUtilidad As Decimal = 0, Optional CveSelectiva As Integer = -1) As Integer
|
||||
Dim Retorno As Integer = -1
|
||||
|
||||
DataAdapter("PA_ProductosServiciosAdd")
|
||||
@@ -526,6 +526,7 @@ Public Class ClsProductosServicios
|
||||
.Add("@ProductoExhibicion", SqlDbType.Bit).Value = ProductoExhibicion
|
||||
.Add("@Imagen", SqlDbType.VarChar).Value = Imagen
|
||||
.Add("@PorcentajeMinimoUtilidad", SqlDbType.Decimal).Value = PorcentajeMinimoUtilidad
|
||||
.Add("@CveSelectiva", SqlDbType.Int).Value = CveSelectiva
|
||||
End With
|
||||
|
||||
Try
|
||||
@@ -682,7 +683,8 @@ Public Class ClsProductosServicios
|
||||
Optional CveMaterialPeligroso As Integer = -1, Optional CveEmbalaje As Integer = -1, Optional PesoKg As Decimal = -1, Optional Dimensiones As String = "", Optional CveObjetoImpuesto As Integer = 0,
|
||||
Optional RegistroRSCO As String = "-1", Optional FechaVigenciaRSCO As Date = MinFecha, Optional VigenciaIndeterminadaRSCO As Boolean = False, Optional CveTipoEmpacado As Integer = -1, Optional CveTipoOrganico As Integer = -1,
|
||||
Optional NombreComercial As String = "", Optional NotasAdicionales As String = "", Optional EcommerceEtiquetas As String = "", Optional ActivoEcommerce As Boolean = False, Optional EcommercePrecio As Decimal = 0,
|
||||
Optional CveClasificacionEcommerce As Integer = -1, Optional EcommerceCantidad As Decimal = 0, Optional CodigoAlterno As String = "-1", Optional PSAlterno As String = "-1", Optional ProductoExhibicion As Boolean = False, Optional Imagen As String = "", Optional PorcentajeMinimoUtilidad As Decimal = 0) As Boolean
|
||||
Optional CveClasificacionEcommerce As Integer = -1, Optional EcommerceCantidad As Decimal = 0, Optional CodigoAlterno As String = "-1", Optional PSAlterno As String = "-1", Optional ProductoExhibicion As Boolean = False, Optional Imagen As String = "", Optional PorcentajeMinimoUtilidad As Decimal = 0,
|
||||
Optional CveSelectiva As Integer = -1) As Boolean
|
||||
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
@@ -792,6 +794,7 @@ Public Class ClsProductosServicios
|
||||
.Add("@ProductoExhibicion", SqlDbType.Bit).Value = ProductoExhibicion
|
||||
.Add("@Imagen", SqlDbType.VarChar).Value = Imagen
|
||||
.Add("@PorcentajeMinimoUtilidad", SqlDbType.Decimal).Value = PorcentajeMinimoUtilidad
|
||||
.Add("@CveSelectiva", SqlDbType.Int).Value = CveSelectiva
|
||||
End With
|
||||
|
||||
Try
|
||||
@@ -1663,6 +1666,119 @@ Public Class ClsProductosServicios
|
||||
End Function
|
||||
|
||||
|
||||
Public Function AddSelectiva(Selectiva As String, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_Gral_SelectivasAdd")
|
||||
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@Selectiva", SqlDbType.VarChar).Value = Selectiva
|
||||
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
End With
|
||||
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
Catch Ex1 As SqlException
|
||||
Me.OnError("Ocurrió un error al Guardar la Selectiva.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al Guardar la Selectiva.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function UpdateSelectiva(CveSelectiva As Integer, Selectiva As String, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_Gral_SelectivasUpdate")
|
||||
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveSelectiva", SqlDbType.Int).Value = CveSelectiva
|
||||
.Add("@Selectiva", SqlDbType.VarChar).Value = Selectiva
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
End With
|
||||
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
Catch Ex1 As SqlException
|
||||
Me.OnError("Ocurrió un error al Guardar la Selectiva.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al Guardar la Selectiva.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function GetSelectiva(CveSelectiva As Integer, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_Gral_SelectivasGet")
|
||||
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveSelectiva", SqlDbType.Int).Value = CveSelectiva
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
End With
|
||||
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
Catch Ex1 As SqlException
|
||||
Me.OnError("Ocurrió un error al obtener las selectivas.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al obtener las selectivas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function RemoveSelectiva(CveSelectiva As Integer, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_Gral_SelectivasRemove")
|
||||
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveSelectiva", SqlDbType.Int).Value = CveSelectiva
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
End With
|
||||
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
Catch Ex1 As SqlException
|
||||
Me.OnError("Ocurrió un error al eliminar las selectivas.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al eliminar las selectivas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function GetPSSelectiva(CveSelectiva As Integer, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_Gral_SelectivasPSGet")
|
||||
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveSelectiva", SqlDbType.Int).Value = CveSelectiva
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
End With
|
||||
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
Catch Ex1 As SqlException
|
||||
Me.OnError("Ocurrió un error al obtener las selectivas.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al obtener las selectivas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
|
||||
#Region "IMPUESTOS LOCALES"
|
||||
Public Function GetPSImpuestosLocales(CvePS As Integer, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
@@ -126,7 +126,7 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState
|
||||
If DTClientes IsNot Nothing Then
|
||||
|
||||
'QUITAR CLIENTES QUE NO DEBEN DE ESTAR
|
||||
DTClientes = DTClientes.FiltraParametros("CveCliente NOT IN (265989,265991,265994,266010,266011,266013) ")
|
||||
DTClientes = DTClientes.FiltraParametros("CveCliente NOT IN (1285420,1285423,1285424) ")
|
||||
|
||||
For Each RowCliente As DataRow In DTClientes.Rows
|
||||
Dim CveCliente As Integer = RowCliente("CveCliente").ToString().ToEntero()
|
||||
@@ -276,7 +276,7 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState
|
||||
ObjFactura.Serie = Serie
|
||||
ObjFactura.Folio = Folio.ToEntero()
|
||||
ObjFactura.TipoMensajeRespuesta = TipoMensajeRespuesta.TextoLimpio
|
||||
ObjFactura.Version = "3.3"
|
||||
ObjFactura.Version = "4.0"
|
||||
ObjFactura.FolioFiscal = ""
|
||||
ObjFactura.CveUsuario = UsuarioActual.CveUsuario
|
||||
ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa
|
||||
|
||||
@@ -703,11 +703,11 @@
|
||||
total = total * TC;
|
||||
}
|
||||
|
||||
debugger
|
||||
debugger;
|
||||
if ($("#" + Chk.id).is(":checked")) {
|
||||
$('#' + Obj).attr('disabled', false);
|
||||
if (ToDouble($get('TxtImporte').value) != total) {
|
||||
|
||||
|
||||
if ((ToDouble($get('TxtImporte').value) + saldo) > total) {
|
||||
$('#' + Obj).val(saldo - (ToDouble($get('TxtImporte').value) + saldo - total));
|
||||
$get('TxtImporte').value = (total / TC).toFixed(2)
|
||||
|
||||
@@ -1181,7 +1181,7 @@ Partial Class Bancos_PopIECompras
|
||||
e.Row.FCTextBox("TxtSaldoDeudor").Attributes.Add("onKeyUp", "AjustaTextboxDeudores();")
|
||||
e.Row.FCTextBox("LbTipoMoneda").Text = If(e.Row.DataKey("CveMoneda").ToString.ToEntero = 1, "USD", " MXN")
|
||||
|
||||
Dim rv As RangeValidator = CType(e.Row.FindControl("RVSaldoDeudor"), RangeValidator)
|
||||
'Dim rv As RangeValidator = CType(e.Row.FindControl("RVSaldoDeudor"), RangeValidator)
|
||||
End If
|
||||
End Sub
|
||||
#End Region
|
||||
@@ -1456,12 +1456,13 @@ Partial Class Bancos_PopIECompras
|
||||
End If
|
||||
|
||||
If MsgError = "" Then
|
||||
Dim tc As Decimal = If(rw.DataKey("CveMoneda").ToEntero = 1, 1, TxtTipoCambio.Text.Trim.ToDecimal)
|
||||
Dim VentaActual As New Venta(UsuarioActual) With {.CveVenta = rw.DataKey("CveVenta").ToEntero, .ClienteNombre = NombreCliente, .SerieFolio = rw.DataKey("SerieFolio"), .CveCliente = rw.DataKey("CveCliente").ToEntero, .IVA = rw.DataKey("IVA").ToDecimal, .IEPS = rw.DataKey("IEPS").ToDecimal, .RetIVA = rw.DataKey("RetIVA").ToDecimal, .RetISR = rw.DataKey("RetISR").ToDecimal, .Total = rw.DataKey("Total").ToDecimal, .PorcentajeIVA = rw.DataKey("PorcentajeIVA").ToDecimal, .CveSubProyecto = rw.DataKey("CveSubProyecto").ToEntero, .CveMoneda = rw.DataKey("CveMoneda").ToEntero, .TC = rw.DataKey("TipoCambio").ToDecimal}
|
||||
Dim PagoVenta As New VentaPago
|
||||
PagoVenta.CveMonedaPago = rw.DataKey("CveMoneda").ToEntero
|
||||
PagoVenta.ImportePago = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
||||
PagoVenta.ImportePagoVenta = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
||||
PagoVenta.TCPago = rw.DataKey("TipoCambio").ToDecimal
|
||||
PagoVenta.TCPago = tc
|
||||
PagoVenta.CveCompraRelacionada = CompraActual.CveCompra
|
||||
PagoVenta.TipoPago = "Venta"
|
||||
If AplicaPrePolizaPagoVenta(VentaActual, PagoVenta, CvePrePoliza, ObjMov) Then
|
||||
|
||||
@@ -724,19 +724,33 @@ Partial Class Compras_Proveedores
|
||||
Dim ObjeFacturas As New ClsCompras
|
||||
If ObjeFacturas.GetFacturas(CveFactura, "-1", NowADS().AddYears(-2), NowADS(), "-1", "-1", -1, -1, -1, -1, "-1", UsuarioActual.CveEmpresa) Then
|
||||
Dim XMLDoc As New XmlDocument
|
||||
|
||||
Dim SXML As String
|
||||
Dim dr As DataRow = ObjeFacturas.DtResultados.Rows(0)
|
||||
Dim Archivo As String = String.Format("{0}Compras\{1}\{2}", UsuarioActual.Empresa.Ruta, dr("RFCDe"), dr("XML"))
|
||||
Try
|
||||
Dim dr As DataRow = ObjeFacturas.DtResultados.Rows(0)
|
||||
|
||||
|
||||
Dim SXML As String = File.ReadAllText(UsuarioActual.Empresa.Ruta & "Compras\" & dr("RFCDe").ToString & "\" & dr("XML").ToString)
|
||||
SXML = File.ReadAllText(Archivo).Replace("<br>", "").Replace("<", "").Replace("o;?", "").Replace(ChrW(&HFEFF), "")
|
||||
'SXML = SXML.TrimStart(vbCr, vbLf, vbNullChar)
|
||||
'SXML = SXML.TrimEnd(vbCr, vbLf, vbNullChar)
|
||||
SXML = SXML.Trim(New Char() {""c})
|
||||
SXML = SXML.Replace("o;?", "")
|
||||
|
||||
XMLDoc.LoadXml(SXML)
|
||||
Dim Prefijo As String = If(XMLDoc.DocumentElement.Prefix = "", "cfd", XMLDoc.DocumentElement.Prefix)
|
||||
Catch ex As Exception
|
||||
Try
|
||||
Dim oReader As New StreamReader(Archivo, Encoding.GetEncoding("ISO-8859-1"))
|
||||
XMLDoc.Load(oReader)
|
||||
oReader.Dispose()
|
||||
Catch ex2 As Exception
|
||||
GuardaLog("Error al intentar leer el XML del SAT. Error:" & ex2.ToString())
|
||||
End Try
|
||||
End Try
|
||||
|
||||
If XMLDoc.InnerXml = "" Then
|
||||
Alert("No se pudo procesar el archivo xml.", TipoMensaje.MsgError)
|
||||
Return 0
|
||||
End If
|
||||
|
||||
Dim Prefijo As String = If(XMLDoc.DocumentElement.Prefix = "", "cfd", XMLDoc.DocumentElement.Prefix)
|
||||
Dim cfdVer As String = "http://www.sat.gob.mx/cfd/3"
|
||||
Dim namespaces As New XmlNamespaceManager(XMLDoc.NameTable)
|
||||
|
||||
@@ -756,55 +770,51 @@ Partial Class Compras_Proveedores
|
||||
|
||||
'If Prefijo.ToLower <> "cfdi" Then cfdVer = "http://www.sat.gob.mx/cfd/2"
|
||||
namespaces.AddNamespace(Prefijo, cfdVer)
|
||||
' XMLDoc.LoadXml(File.ReadAllText(Archivo).Replace("<br>", "").Replace("<", "").Replace("o;?", "").Replace(ChrW(&HFEFF), ""))
|
||||
|
||||
|
||||
Dim node As XmlNode
|
||||
node = XMLDoc.SelectSingleNode(String.Format("//{0}:Emisor", Prefijo), namespaces)
|
||||
If node IsNot Nothing Then
|
||||
TxtRFC.Text = ValorXml(node, "rfc")
|
||||
If node IsNot Nothing Then
|
||||
TxtRFC.Text = ValorXml(node, "rfc")
|
||||
|
||||
If Version = "3.3" Or Version = "4.0" Then
|
||||
TxtRazonSocial.Text = HttpUtility.HtmlDecode(ValorXml(node, "Nombre"))
|
||||
TxtNombreComercial.Text = HttpUtility.HtmlDecode(ValorXml(node, "Nombre"))
|
||||
ChkEstado.Checked = True
|
||||
If Version = "3.3" Or Version = "4.0" Then
|
||||
TxtRazonSocial.Text = HttpUtility.HtmlDecode(ValorXml(node, "Nombre"))
|
||||
TxtNombreComercial.Text = HttpUtility.HtmlDecode(ValorXml(node, "Nombre"))
|
||||
ChkEstado.Checked = True
|
||||
|
||||
Dim CodigoRegimenFiscal As String = ValorXml(node, "RegimenFiscal")
|
||||
Dim CodigoRegimenFiscal As String = ValorXml(node, "RegimenFiscal")
|
||||
|
||||
If Version = "4.0" Or CodigoRegimenFiscal.Trim.Length > 0 Then
|
||||
If Version = "4.0" Or CodigoRegimenFiscal.Trim.Length > 0 Then
|
||||
|
||||
|
||||
Dim CveRegimenFiscal As Integer = GlobalDTRegimenesFiscales(-1).FiltroPrimeroValor("CveRegimenFiscal", $" CodigoRegimenFiscal = '{ CodigoRegimenFiscal }'").ToEntero
|
||||
DdlRegimenFiscal.SelectedValueExist(CveRegimenFiscal)
|
||||
Dim CveRegimenFiscal As Integer = GlobalDTRegimenesFiscales(-1).FiltroPrimeroValor("CveRegimenFiscal", $" CodigoRegimenFiscal = '{ CodigoRegimenFiscal }'").ToEntero
|
||||
DdlRegimenFiscal.SelectedValueExist(CveRegimenFiscal)
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
Else
|
||||
TxtRazonSocial.Text = HttpUtility.HtmlDecode(ValorXml(node, "nombre"))
|
||||
TxtNombreComercial.Text = HttpUtility.HtmlDecode(ValorXml(node, "nombre"))
|
||||
Dim nodeDomicilio As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:DomicilioFiscal", Prefijo), namespaces)
|
||||
TxtDireccion.Text = ValorXml(nodeDomicilio, "calle") & " " & ValorXml(nodeDomicilio, "noExterior")
|
||||
ChkEstado.Checked = True
|
||||
Else
|
||||
TxtRazonSocial.Text = HttpUtility.HtmlDecode(ValorXml(node, "nombre"))
|
||||
TxtNombreComercial.Text = HttpUtility.HtmlDecode(ValorXml(node, "nombre"))
|
||||
Dim nodeDomicilio As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:DomicilioFiscal", Prefijo), namespaces)
|
||||
TxtDireccion.Text = ValorXml(nodeDomicilio, "calle") & " " & ValorXml(nodeDomicilio, "noExterior")
|
||||
ChkEstado.Checked = True
|
||||
|
||||
node = XMLDoc.SelectSingleNode(String.Format("//{0}:Impuestos", Prefijo), namespaces)
|
||||
If node IsNot Nothing AndAlso node.ChildNodes.Count > 0 Then
|
||||
'Dim nodeRetenciones As XmlNodeList = XMLDoc.SelectNodes(String.Format("//{0}:Retencion", Prefijo), namespaces)
|
||||
'Dim nodeRet As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Retenciones", Prefijo), namespaces)
|
||||
node = XMLDoc.SelectSingleNode(String.Format("//{0}:Impuestos", Prefijo), namespaces)
|
||||
If node IsNot Nothing AndAlso node.ChildNodes.Count > 0 Then
|
||||
'Dim nodeRetenciones As XmlNodeList = XMLDoc.SelectNodes(String.Format("//{0}:Retencion", Prefijo), namespaces)
|
||||
'Dim nodeRet As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Retenciones", Prefijo), namespaces)
|
||||
|
||||
Dim nodeTraslados As XmlNodeList = XMLDoc.SelectNodes(String.Format("//{0}:Traslado", Prefijo), namespaces)
|
||||
For Each traslado As XmlNode In nodeTraslados
|
||||
If traslado.Attributes("impuesto").Value = "IVA" Then
|
||||
TxtIVA.Text = traslado.Attributes("tasa").Value.ToDouble.ToString("N2")
|
||||
'Retenciones
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
Dim nodeTraslados As XmlNodeList = XMLDoc.SelectNodes(String.Format("//{0}:Traslado", Prefijo), namespaces)
|
||||
For Each traslado As XmlNode In nodeTraslados
|
||||
If traslado.Attributes("impuesto").Value = "IVA" Then
|
||||
TxtIVA.Text = traslado.Attributes("tasa").Value.ToDouble.ToString("N2")
|
||||
'Retenciones
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
Alert(String.Format("No se pudo cargar la información ({0})", ex.Message), TipoMensaje.MsgAdvertencia)
|
||||
Return 0
|
||||
End Try
|
||||
End If
|
||||
|
||||
End If
|
||||
Return 1
|
||||
@@ -5847,11 +5857,8 @@ Partial Class Compras_Proveedores
|
||||
Protected Sub LnkDownLoadDoc_Click(sender As Object, e As EventArgs)
|
||||
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
|
||||
Dim Adjunto As String = GvRow.DataKey("Adjunto")
|
||||
|
||||
|
||||
Dim stringDescargaDocumento As String = UsuarioActual.Empresa.Ruta & String.Format("Edoc\\Proveedor\{0}\{1}", CveProveedor, Adjunto)
|
||||
|
||||
|
||||
Dim File As New FileInfo(stringDescargaDocumento)
|
||||
|
||||
If File.Exists Then
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="LibroMayor.aspx.vb" Inherits="Contabilidad_LibroMayor" %>
|
||||
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="LibroMayor.aspx.vb" Inherits="Conta_LibroMayor" EnableEventValidation="false" %>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="Css" runat="server">
|
||||
<style>
|
||||
@@ -6,111 +6,260 @@
|
||||
width: 300px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
table {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
tr {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
td {
|
||||
border: none !important;
|
||||
}
|
||||
</style>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="H" runat="Server">
|
||||
<asp:UpdatePanel runat="server">
|
||||
<asp:UpdatePanel ID="UpAcciones" runat="server" >
|
||||
<ContentTemplate>
|
||||
<li>
|
||||
<asp:LinkButton ID="ImgExcel" Visible="false" runat="server"><i class="fa fa-ad-excel"></i> Generar EXCEL</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="Imprimir" Visible="false" runat="server"><i class="fa fa-print"></i> Imprimir</asp:LinkButton>
|
||||
<asp:LinkButton ID="ImgExcel" runat="server" Visible="true"><i class="fa fa-file-excel-o" ></i> Generar EXCEL</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="ImgExcel" />
|
||||
<asp:PostBackTrigger ControlID="Imprimir" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
|
||||
<%-- <li>
|
||||
<asp:LinkButton ID="Imprimir" runat="server" Visible="false"><i class="fa fa-print"></i> Imprimir</asp:LinkButton>
|
||||
</li>--%>
|
||||
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="E" runat="Server">
|
||||
Libro Mayor
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="C" runat="Server">
|
||||
|
||||
|
||||
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
|
||||
<div class="portlet solid grey-cascade portlet-filter">
|
||||
<div class="portlet-title portlet-filterT smalltitle">
|
||||
<div class="tools">
|
||||
<asp:Button ID="BtnConsultar" runat="server" CssClass="btn btn-primary" Text="Consultar" Width="100px" OnClick="BtnConsultar_Click" Enabled="false"/>
|
||||
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" CssClass="btn btn-default" OnClick="BtnConsultar_Click" ValidationGroup="Valida" />
|
||||
<a href="javascript:;" data-idchekbox="<%= chkexpand.ClientID%>" class=" <%= IIf(chkexpand.Checked = True, "collapse", "expand")%>"></a><%--class="expand"--%>
|
||||
<asp:CheckBox ID="chkexpand" CssClass="hidden" runat="server" />
|
||||
</div>
|
||||
<div class="titlefiltros caption ">
|
||||
<div class="row">
|
||||
<label class="col-md-1" style="width: 90px; padding-right: 2px;">Fecha Inicio:</label>
|
||||
<div class="col-md-2" style="width: 140px;">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 80px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtFechaDel" runat="server" CssClass="form-control" Width="99%" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="ImgCalendarioDel" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaDel" runat="server" TargetControlID="TxtFechaDel" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender ID="CalendarioDel" runat="server" TargetControlID="TxtFechaDel" PopupButtonID="ImgCalendarioDel" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
|
||||
<asp:CompareValidator ID="CVFechaDel" runat="server" ControlToValidate="TxtFechaDel" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCOFecha2Del" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaDel" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<label class="col-md-1" style="width: 80px; padding-right: 2px;">Fecha Fin:</label>
|
||||
<div class="col-md-2" style="width: 140px;">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 80px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtFechaAl" runat="server" CssClass="form-control" Width="99%" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="ImgCalendarioAl" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaAl" runat="server" TargetControlID="TxtFechaAl" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender ID="CalendarioAl" runat="server" TargetControlID="TxtFechaAl" PopupButtonID="ImgCalendarioAl" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
|
||||
<asp:CompareValidator ID="CVFechaAl" runat="server" ControlToValidate="TxtFechaAl" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCOFecha2Al" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaAl" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<%-- <label class="col-md-2" style="width: 60px;">Moneda:</label>
|
||||
<div class="col-md-1">
|
||||
<asp:DropDownList ID="DdlMoneda" CssClass="select2me" runat="server" DataTextField="Moneda" DataValueField="CveMoneda" TabIndex="5" ClientIDMode="Static">
|
||||
Cuenta:
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<asp:DropDownList ID="DdlCuentas" runat="server" AppendDataBoundItems="true" DataTextField="CuentaFormatoNombre" DataValueField="CveCuenta" CssClass="form-control input-sm select2me" Enabled="false">
|
||||
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>--%>
|
||||
<asp:RequiredFieldValidator ID="RFVDdlCuentas" runat="server" InitialValue="-1" ControlToValidate="DdlCuentas" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cuenta''</b> es necesario, por favor ingréselo." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="CERFVDdlCuentas" runat="server" HighlightCssClass="vco" TargetControlID="RFVDdlCuentas" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
<div class="col-md-1">
|
||||
Fecha Inicio:
|
||||
</div>
|
||||
<div class="col-md-1" style="min-width: 115px">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 100px !important; padding: 0px;">
|
||||
<asp:TextBox Width="80px" ID="txtFechaI" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="imgCalendario" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
|
||||
<asp:CompareValidator ID="cvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
<div class="col-md-1">
|
||||
Fecha Fin:
|
||||
</div>
|
||||
<div class="col-md-1" style="min-width: 115px">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 100% !important; padding: 0px;">
|
||||
<asp:TextBox Width="80px" ID="txtFechaF" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="imgCalendarioF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
|
||||
<asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoRfvFF" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoCvFF" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body" <%= IIf(chkexpand.Checked = True, "", "style=""display:none;""")%>>
|
||||
<div class="row">
|
||||
<div class="col-md-1 ">
|
||||
Tipo Movto
|
||||
</div>
|
||||
<div class="col-md-3 ">
|
||||
<asp:DropDownList ID="DdlOpcionCuentas" runat="server" DataTextField="Cuenta" DataValueField="CveCuenta" TabIndex="4" CssClass="form-control input-sm select2me" Width="100%">
|
||||
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
|
||||
<asp:ListItem Text="Con movimientos" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Saldo actual no igual a cero" Value="2"></asp:ListItem>
|
||||
<asp:ListItem Text="Con movimientos y saldo no igual a cero" Value="3"></asp:ListItem>
|
||||
<asp:ListItem Text="Con movimientos o saldo no igual a cero" Value="4"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-1 " id="tdTipoReporte" visible="false" runat="server">
|
||||
Tipo
|
||||
</div>
|
||||
<div class="col-md-2" id="tdTipoReporte2" visible="false" runat="server">
|
||||
<asp:DropDownList ID="DdlTipoReporte" CssClass="form-control input-sm select2me" runat="server" Width="100%">
|
||||
<asp:ListItem Text="Contable" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Contable y Complementario" Value="3"></asp:ListItem>
|
||||
<asp:ListItem Text="Complementario" Value="2"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-1" id="divProyecto" runat="server">
|
||||
<asp:Label ID="LblProyecto" runat="server">Proyecto:</asp:Label>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlProyecto" CssClass=" form-control input-sm select2me" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Width="95%">
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<asp:Label runat="server" ID="LblSubProyecto" CssClass="col-md-1">SubProyecto:</asp:Label>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlSubproyecto" CssClass="form-control input-sm select2me" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Width="95%" AutoPostBack="True">
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
<%-- <br />
|
||||
<div class="text-right">Buscar :
|
||||
<input type="text" id="Buscar" style="margin-right: 30px;" />
|
||||
</div>--%>
|
||||
|
||||
|
||||
<asp:UpdatePanel ID="UpDatos" UpdateMode="Conditional" runat="server" style="margin-left: 15px; margin-right: 15px;">
|
||||
</asp:UpdatePanel>
|
||||
<div class="row" style="margin-right: 10px; margin-top: 8px;" align="right">
|
||||
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
|
||||
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
|
||||
</div>
|
||||
<asp:UpdatePanel ID="UpDatos" UpdateMode="Conditional" runat="server">
|
||||
<ContentTemplate>
|
||||
|
||||
<asp:GridView ID="GvDatos" CssClass="table table-striped table-hover Widthall" GridLines="None" AutoGenerateColumns="False" runat="server">
|
||||
<div style='color:red'></div>
|
||||
<asp:GridView ID="GvDatos" runat="server"
|
||||
CssClass="table table-striped table-advance table-hover " AutoGenerateColumns="False"
|
||||
EmptyDataText="No se encontrarios movimientos."
|
||||
DataKeyNames="" OnRowDataBound="GvDatos_RowDataBound">
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Fecha" DataField="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
|
||||
<asp:BoundField HeaderText="Tipo" DataField="TipoPol" />
|
||||
<asp:BoundField HeaderText="Poliza" DataField="Folio" />
|
||||
<asp:BoundField HeaderText="Descripción" DataField="Concepto" />
|
||||
<asp:BoundField HeaderText="Cargos" DataField="Cargos" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,##0.00}" />
|
||||
<asp:BoundField HeaderText="Abonos" DataField="Abonos" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,##0.00}" />
|
||||
<asp:BoundField HeaderText="Saldo" DataField="Saldo" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,##0.00}" />
|
||||
<asp:TemplateField ControlStyle-CssClass="Widthall">
|
||||
<HeaderTemplate>
|
||||
|
||||
<table width="100%" style="border: none">
|
||||
<tr>
|
||||
<td colspan="3"><font size="2">Cuenta</font></td>
|
||||
<td colspan="1"><font size="2">Nombre</font></td>
|
||||
<td colspan="4"></td>
|
||||
<td><font size="2">Saldo Inicial</font></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="60px" align="center">Fecha</td>
|
||||
<td width="60px" align="center">Tipo</td>
|
||||
<td width="60px" align="center">Número</td>
|
||||
<td width="300px" align="left">Concepto</td>
|
||||
<td width="100px" align="center">Referencia</td>
|
||||
<td width="100px" align="center">Referencia Movto</td>
|
||||
<td width="100px" align="center"><asp:Label ID="LblSubProyecto" runat="server"></asp:Label> </td>
|
||||
<td width="100px" align="center">Cargos</td>
|
||||
<td width="100px" align="center">Abonos</td>
|
||||
<td width="100px" align="center">Saldo</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</HeaderTemplate>
|
||||
|
||||
|
||||
<ItemTemplate>
|
||||
<table width="100%" style="border: none">
|
||||
|
||||
<tr runat="server" id="tr1">
|
||||
<td colspan="3" align="left" width="180px">
|
||||
<asp:Label ID="LbCuenta" runat="server" Text='<%# Eval("Codigo")%>'></asp:Label>
|
||||
</td>
|
||||
<td colspan="1" align="left" width="300px">
|
||||
<asp:Label ID="LbNombre" runat="server" Text='<%# Eval("Nombre")%>'></asp:Label>
|
||||
</td>
|
||||
<td colspan="2" width="200px"></td>
|
||||
<td style="font-weight: normal;" align="right" width="100px">Saldo Inicial:
|
||||
</td>
|
||||
<td style="font-weight: normal;" align="right" width="100px">
|
||||
<asp:Label ID="LbSaldoInicial" runat="server" Text='<%# Eval("SaldoInicial", "{0:N2}")%>'></asp:Label>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr runat="server" id="tr2">
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:Literal ID="LbFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}")%>'></asp:Literal>
|
||||
</td>
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:Literal ID="LbTipo" runat="server" Text='<%# Eval("TipoPoliza")%>'></asp:Literal>
|
||||
</td>
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:HyperLink ID="HLPoliza" runat="server" Text='<%# Eval("Folio")%>' CssClass="Texto" Target="_blank"></asp:HyperLink>
|
||||
</td>
|
||||
|
||||
<td width="300px" align="left">
|
||||
<div class="truncate" style="width: 300px;">
|
||||
<asp:Label ID="LbConcepto" runat="server" CssClass="truncate" Text='<%# Eval("Concepto")%>' title='<%# Eval("Concepto")%>'></asp:Label>
|
||||
</div>
|
||||
</td>
|
||||
<td width="100px">
|
||||
<asp:Label ID="LbReferencia" runat="server" Text='<%# Eval("Referencia")%>'></asp:Label>
|
||||
</td>
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:Literal ID="LtlRefMovto" runat="server" Text='<%# Eval("ReferenciaAdmin")%>'></asp:Literal>
|
||||
</td>
|
||||
<td width="100px">
|
||||
<asp:Label ID="LblSubProyecto" runat="server" Text='<%# Eval("SubProyecto")%>'></asp:Label>
|
||||
</td>
|
||||
<td width="100px" align="right">
|
||||
<asp:Label ID="LbCargos" runat="server"></asp:Label>
|
||||
</td>
|
||||
<td width="100px" align="right">
|
||||
<asp:Label ID="LbAbonos" runat="server"></asp:Label>
|
||||
</td>
|
||||
<td width="100px" align="right">
|
||||
<asp:Label ID="LbSaldo" runat="server"></asp:Label>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</ItemTemplate>
|
||||
<ItemStyle />
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
|
||||
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="JS" runat="Server">
|
||||
</asp:Content>
|
||||
|
||||
|
||||
|
||||
</asp:Content>
|
||||
|
||||
@@ -2,22 +2,40 @@
|
||||
Option Strict On
|
||||
|
||||
Imports System.Data
|
||||
Imports ADServerControl.DragableList
|
||||
Imports System.IO
|
||||
Imports Extensiones
|
||||
Imports Microsoft.Reporting.WebForms
|
||||
Imports ClosedXML.Excel
|
||||
Imports System.Drawing
|
||||
|
||||
Partial Class Contabilidad_LibroMayor
|
||||
Partial Class Conta_LibroMayor
|
||||
Inherits ClsPaginas
|
||||
|
||||
|
||||
#Region "PROPIEDADES"
|
||||
Private Property DtDatos As DataTable
|
||||
Get
|
||||
DtDatos = DirectCast(ViewState("DtDatos"), DataTable)
|
||||
If ViewState("DtDatos") Is Nothing Then
|
||||
ViewState("DtDatos") = New DataTable
|
||||
End If
|
||||
|
||||
Return DirectCast(ViewState("DtDatos"), DataTable)
|
||||
End Get
|
||||
|
||||
Set(ByVal value As DataTable)
|
||||
ViewState("DtDatos") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property DtTotales As DataTable
|
||||
Get
|
||||
DtTotales = DirectCast(ViewState("DtTotales"), DataTable)
|
||||
End Get
|
||||
|
||||
Set(ByVal value As DataTable)
|
||||
ViewState("DtTotales") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property FechaInicio As Date
|
||||
Get
|
||||
FechaInicio = ViewState("FechaInicio").ToString.ToDate
|
||||
@@ -34,147 +52,312 @@ Partial Class Contabilidad_LibroMayor
|
||||
ViewState("FechaFin") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property TotalPadre As Boolean
|
||||
Get
|
||||
TotalPadre = CBool(ViewState("TotalPadre"))
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
ViewState("TotalPadre") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property DTCuentas As DataTable
|
||||
Get
|
||||
Return CType(ViewState("DTCuentas"), DataTable)
|
||||
End Get
|
||||
Set(value As DataTable)
|
||||
ViewState("DTCuentas") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property TipoReporte As String
|
||||
Get
|
||||
TipoReporte = ViewState("TP").ToString
|
||||
End Get
|
||||
Set(value As String)
|
||||
ViewState("TP") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property Cuenta As String
|
||||
Get
|
||||
Return ViewState("Cuenta").ToString
|
||||
End Get
|
||||
Set(value As String)
|
||||
ViewState("Cuenta") = value
|
||||
End Set
|
||||
End Property
|
||||
#End Region
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
If Not Page.IsPostBack Then
|
||||
|
||||
InicializaValores()
|
||||
If UsuarioActual.Empresa.TipoContabilidad = 2 Then Response.Redirect($"/Contabilidad/LibroMayorCI.aspx")
|
||||
|
||||
Dim ErrorParametros As Boolean = True
|
||||
|
||||
CargaTipoCuentas()
|
||||
|
||||
|
||||
txtFechaI.Text = NowADS().FirstDayOfMonth.ToShortDateString
|
||||
txtFechaF.Text = NowADS().LastDayOfMonth.ToShortDateString
|
||||
|
||||
|
||||
If Request("CveCuenta") IsNot Nothing AndAlso IsNumeric(Request("CveCuenta")) AndAlso Request("CveCuenta").ToEntero > 0 Then
|
||||
If Request("FF") IsNot Nothing AndAlso Request("FF").ToString.Length = 10 AndAlso Request("FF").ToDate > "01/01/1000".ToDate Then
|
||||
|
||||
FechaFin = Request("FF").ToDate
|
||||
txtFechaF.Text = FechaFin.ToShortDateString
|
||||
|
||||
DdlCuentas.SelectedValueExist(Request("CveCuenta").ToEntero)
|
||||
|
||||
|
||||
If Request("FI") IsNot Nothing AndAlso Request("FI").ToString.Length = 10 AndAlso Request("FI").ToDate > "01/01/1000".ToDate Then
|
||||
FechaInicio = Request("FI").ToDate
|
||||
txtFechaI.Text = FechaInicio.ToShortDateString
|
||||
Else
|
||||
FechaInicio = DateSerial(Year(FechaFin), Month(FechaFin), 1)
|
||||
txtFechaF.Text = FechaInicio.ToShortDateString
|
||||
End If
|
||||
|
||||
If Request("CveProyecto") IsNot Nothing AndAlso IsNumeric(Request("CveProyecto")) Then
|
||||
DdlProyecto.SelectedValueExist(Request("CveProyecto"))
|
||||
DdlProyecto_SelectedIndexChanged(Nothing, Nothing)
|
||||
End If
|
||||
|
||||
If Request("CveSubProyecto") IsNot Nothing AndAlso IsNumeric(Request("CveSubProyecto")) Then
|
||||
DdlSubproyecto.SelectedValueExist(Request("CveSubProyecto"))
|
||||
End If
|
||||
|
||||
ErrorParametros = False
|
||||
|
||||
If Request("TP") IsNot Nothing AndAlso IsNumeric(Request("TP")) AndAlso Request("TP").ToEntero > 0 Then
|
||||
TipoReporte = Request("TP").ToString
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If UsuarioActual.Empresa.UsaAC Then
|
||||
BtnConsultar.Enabled = True
|
||||
Else
|
||||
|
||||
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
|
||||
BtnConsultar.Enabled = True
|
||||
Else
|
||||
Alert("La empresa no usa Armonización Contable", TipoMensaje.MsgError)
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If Not ErrorParametros Then
|
||||
TotalPadre = True
|
||||
TipoReporte = "1"
|
||||
CargaDatos()
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub InicializaValores()
|
||||
|
||||
TxtFechaDel.Text = $"01/01/{NowADS().Year}"
|
||||
TxtFechaAl.Text = NowADS().ToShortDateString
|
||||
|
||||
'DdlMoneda.DataSource = GlobalDTMonedas
|
||||
'DdlMoneda.DataBind()
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
|
||||
CargaDatos()
|
||||
If DdlCuentas.SelectedValue.ToEntero = -2 Then
|
||||
Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError)
|
||||
Else
|
||||
FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", NowADS(), txtFechaI.Text.ToDate)
|
||||
FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", NowADS(), txtFechaF.Text.ToDate)
|
||||
|
||||
CargaDatos()
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
#Region "C A R G A - D A T O S"
|
||||
Private Sub CargaDatos()
|
||||
|
||||
FechaInicio = If(IsDate(TxtFechaDel.Text), TxtFechaDel.Text.ToDate, MinFecha)
|
||||
FechaFin = If(IsDate(TxtFechaAl.Text), TxtFechaAl.Text.ToDate, MaxFecha)
|
||||
Private Sub CargaTipoCuentas()
|
||||
|
||||
Dim ObjTipoCuenta As New ClsContabilidad
|
||||
DdlCuentas.Enabled = True
|
||||
|
||||
If ObjTipoCuenta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then
|
||||
DTCuentas = ObjTipoCuenta.DtResultados
|
||||
DdlCuentas.DataSource = ObjTipoCuenta.DtResultados.FiltraParametros("Codigo NOT IN ('_ACTIVO', '_PASIVO', '_CAPITAL', '_CUADRE', '_ESTADISTICAS', '_ORDEN', '_RACREEDOR', '_RDEUDOR', '_UTILIDAD')")
|
||||
|
||||
|
||||
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
|
||||
|
||||
|
||||
Dim ObjConta As New ClsContabilidad
|
||||
If ObjConta.GetLibroMayorSIG(-1, FechaInicio, FechaFin, 1, UsuarioActual.CveEmpresa) Then
|
||||
DtDatos = ObjConta.DtResultados
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
End If
|
||||
ObjConta.Dispose()
|
||||
|
||||
|
||||
Else
|
||||
Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
|
||||
If ObjConta.GetLibroMayor(1, FechaInicio, FechaFin, 1) Then
|
||||
DtDatos = ObjConta.DtResultados
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
End If
|
||||
ObjConta.Dispose()
|
||||
End If
|
||||
ObjTipoCuenta.Dispose()
|
||||
DdlCuentas.DataBind()
|
||||
|
||||
|
||||
|
||||
If DtDatos IsNot Nothing Then
|
||||
ImgExcel.Visible = True
|
||||
Imprimir.Visible = True
|
||||
CargaGrid()
|
||||
Else
|
||||
ImgExcel.Visible = False
|
||||
Imprimir.Visible = False
|
||||
End If
|
||||
CargarCentrosDeCosto(DdlProyecto, DdlSubproyecto, LblProyecto, LblSubProyecto, divProyecto:=divProyecto)
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlProyecto.SelectedIndexChanged
|
||||
CargarSubProyecto(DdlSubproyecto, DdlProyecto.SelectedValue, "Todos")
|
||||
End Sub
|
||||
Private Sub CargaDatos(Optional RenderGv As Boolean = True)
|
||||
|
||||
Dim CveProyecto As Integer = DdlProyecto.SelectedValue.ToEntero
|
||||
Dim CveSubProyecto As Integer = DdlSubproyecto.SelectedValue.ToEntero
|
||||
TipoReporte = DdlTipoReporte.SelectedValue.ToString
|
||||
|
||||
Cuenta = DdlCuentas.SelectedItem.ToString
|
||||
Dim ObjConta As New ClsContabilidad
|
||||
If ObjConta.GetLibroMayor2(DdlCuentas.SelectedValue.ToEntero, FechaInicio, FechaFin, -1, CveProyecto, CveSubProyecto, UsuarioActual.CveEmpresa, TipoReporte, DdlOpcionCuentas.SelectedValue.ToEntero) Then
|
||||
DtDatos = ObjConta.DtResultados
|
||||
DtTotales = DtDatos.Clone
|
||||
|
||||
If RenderGv Then
|
||||
CargaGrid()
|
||||
End If
|
||||
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
End If
|
||||
|
||||
ObjConta.Dispose()
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
Private Sub InsertaTotales()
|
||||
Dim i As Integer = 0
|
||||
Dim Aumento As Integer = 0
|
||||
Dim Row As DataRow
|
||||
Dim Row2 As DataRow
|
||||
|
||||
'Llena DtTotales
|
||||
For Each dr As DataRow In DtDatos.Rows
|
||||
If dr("Concepto").ToString = "" Then
|
||||
|
||||
Row = DtTotales.NewRow
|
||||
|
||||
Row("CveCuenta") = -1
|
||||
Row("CargosMovto") = If("1" = "1", dr("Cargos"), dr("CargosME"))
|
||||
Row("AbonosMovto") = If("1" = "1", dr("Abonos"), dr("AbonosME"))
|
||||
Row("Saldo") = dr("SaldoActual")
|
||||
Row("CtaMayor") = dr("CtaMayor")
|
||||
Row("Concepto") = String.Format("Total {0}:", dr("Nombre"))
|
||||
Row("Nombre") = dr("Nombre")
|
||||
DtTotales.Rows.Add(Row)
|
||||
Row("Clasificacion") = i
|
||||
End If
|
||||
|
||||
i += 1
|
||||
Next
|
||||
|
||||
'Inserta Totales en DtDatos
|
||||
For Each dr As DataRow In DtTotales.Rows
|
||||
i = 0
|
||||
|
||||
If dr("CtaMayor").ToString = "1" Then
|
||||
DtDatos.ImportRow(dr)
|
||||
End If
|
||||
|
||||
If dr("CtaMayor").ToString = "2" Then
|
||||
For index As Integer = dr("Clasificacion").ToString.ToEntero + Aumento To DtDatos.Rows.Count
|
||||
If DtDatos.Rows(index)("Nombre").ToString <> dr("Nombre").ToString Then
|
||||
i = index
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
Row2 = DtDatos.NewRow
|
||||
Row2.ItemArray = dr.ItemArray
|
||||
|
||||
DtDatos.Rows.InsertAt(Row2, i + Aumento)
|
||||
Aumento += 1
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
#Region "G R I D - GV DATOS"
|
||||
Private Sub CargaGrid()
|
||||
GvDatos.DataSource = DtDatos
|
||||
'GvDatos.Dispose()
|
||||
GvDatos.DataBind()
|
||||
UpDatos.Update()
|
||||
End Sub
|
||||
Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
|
||||
Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs)
|
||||
|
||||
If e.Row.RowType = DataControlRowType.Header Then
|
||||
e.Row.FCLabel("LblSubProyecto").Text = LblSubProyecto.Text
|
||||
End If
|
||||
|
||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||
|
||||
If e.Row.DBCampo("Concepto") = "" Then
|
||||
e.Row.ControlStyle.Font.Bold = True
|
||||
e.Row.ControlStyle.Height = 35
|
||||
|
||||
'0 Fecha
|
||||
'1 TipoPol
|
||||
'2 Folio
|
||||
'3 Concepto
|
||||
'4 Cargos
|
||||
'5 Abonos
|
||||
'6 Saldo
|
||||
'Cuando es Titulo
|
||||
If e.Row.DBCampo("SaldoActual") = "" Then
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Visible = False
|
||||
|
||||
'CABECERA
|
||||
If e.Row.DBCampo("TipoRenglon") = "1" Then
|
||||
e.Row.Font.Bold = True
|
||||
e.Row.Cells(0).Text = ""
|
||||
e.Row.Cells(1).Text = ""
|
||||
e.Row.Cells(2).Text = ""
|
||||
e.Row.Cells(3).Text = e.Row.DBCampo("Nombre")
|
||||
e.Row.Cells(4).Text = ""
|
||||
e.Row.Cells(5).Text = "Saldo inicial:"
|
||||
e.Row.Cells(6).Text = e.Row.DBCampo("SaldoInicial").FormatoNumero
|
||||
e.Row.CssClass = "Totales"
|
||||
End If
|
||||
|
||||
'DETALLE
|
||||
If e.Row.DBCampo("TipoRenglon") = "2" Then
|
||||
'Cuando Es Total
|
||||
Else
|
||||
CType(e.Row.FindControl("tr1"), HtmlTableRow).Visible = False
|
||||
|
||||
'Anterior para TotalPadre
|
||||
'If e.Row.DBCampo("CtaMayor").ToString = "2" And (e.Row.DBCampo("Nivel3").ToString <> "" Xor e.Row.DBCampo("Orden").ToString.Length = 18) Then
|
||||
' e.Row.FCLabel("LbReferencia").Text = "Total:"
|
||||
'Else
|
||||
' e.Row.FCLabel("LbConcepto").Text = String.Format("Total {0}:", e.Row.DBCampo("Nombre").ToString)
|
||||
'End If
|
||||
|
||||
If TotalPadre Then
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3).Width = "1px"
|
||||
'CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells.Remove(CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3))
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3).Align = "Right"
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3).Width = "400px"
|
||||
If e.Row.RowIndex + 1 = DtDatos.Rows.Count Then
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(4).Attributes.Add("style", "border-top: 1px solid black;")
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(5).Attributes.Add("style", "border-top: 1px solid black;")
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(6).Attributes.Add("style", "border-top: 1px solid black;")
|
||||
End If
|
||||
e.Row.FCLabel("LbReferencia").Text = String.Format("Total {0}:", e.Row.DBCampo("Nombre").ToString)
|
||||
|
||||
|
||||
Else
|
||||
TotalPadre = True
|
||||
e.Row.FCLabel("LbReferencia").Font.Bold = False
|
||||
e.Row.FCLabel("LbReferencia").Text = "Total:"
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(4).Align = "Right"
|
||||
End If
|
||||
|
||||
'e.Row.FCLabel("LbReferencia").Text = String.Format("Total {0}:", If(e.Row.DBCampo("CtaMayor").ToString = "2", "", e.Row.DBCampo("Nombre").ToString))
|
||||
e.Row.FCLabel("LbCargos").Text = e.Row.DBCampo("Cargos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
e.Row.FCLabel("LbAbonos").Text = e.Row.DBCampo("Abonos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
e.Row.FCLabel("LbSaldo").Text = e.Row.DBCampo("SaldoActual").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
End If
|
||||
|
||||
Else
|
||||
TotalPadre = False
|
||||
e.Row.ControlStyle.Font.Bold = False
|
||||
CType(e.Row.FindControl("tr1"), HtmlTableRow).Visible = False
|
||||
e.Row.FCHyperLink("HLPoliza").NavigateUrl = String.Format("/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}", e.Row.DBCampo("CvePoliza"))
|
||||
|
||||
If e.Row.DBCampo("CargosMovto").ToDouble <> 0 Then e.Row.FCLabel("LbCargos").Text = e.Row.DBCampo("CargosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
If e.Row.DBCampo("AbonosMovto").ToDouble <> 0 Then e.Row.FCLabel("LbAbonos").Text = e.Row.DBCampo("AbonosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
If e.Row.DBCampo("Saldo").ToDouble <> 0 Then e.Row.FCLabel("LbSaldo").Text = e.Row.DBCampo("Saldo").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
|
||||
End If
|
||||
|
||||
'SUBTOTAL
|
||||
If e.Row.DBCampo("TipoRenglon") = "3" Then
|
||||
e.Row.Font.Bold = True
|
||||
e.Row.Cells(1).Text = ""
|
||||
e.Row.Cells(2).Text = ""
|
||||
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Right
|
||||
e.Row.Cells(3).Text = "SubTotal:"
|
||||
e.Row.Cells(6).Text = ""
|
||||
e.Row.CssClass = "SubTotales"
|
||||
|
||||
'COLOREA NEGATIVOS
|
||||
If e.Row.FCLabel("LbCargos").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbCargos").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbCargos").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
'TOTAL
|
||||
If e.Row.DBCampo("TipoRenglon") = "4" Then
|
||||
e.Row.Font.Bold = True
|
||||
e.Row.Cells(0).Text = ""
|
||||
e.Row.Cells(1).Text = ""
|
||||
e.Row.Cells(2).Text = ""
|
||||
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Right
|
||||
e.Row.Cells(3).Text = $"Total ({e.Row.DBCampo("Nombre")}):"
|
||||
e.Row.Cells(6).Text = ""
|
||||
e.Row.CssClass = "Totales"
|
||||
If e.Row.FCLabel("LbAbonos").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbAbonos").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbAbonos").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
If e.Row.FCLabel("LbSaldo").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbSaldo").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbSaldo").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
If e.Row.FCLabel("LbSaldoInicial").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbSaldoInicial").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbSaldoInicial").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
End If
|
||||
@@ -182,37 +365,382 @@ Partial Class Contabilidad_LibroMayor
|
||||
|
||||
#End Region
|
||||
|
||||
Protected Sub Imprimir_click(sender As Object, e As EventArgs)
|
||||
If DdlCuentas.SelectedValue.ToEntero = -1 Then
|
||||
Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError)
|
||||
Else
|
||||
FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", NowADS(), txtFechaI.Text.ToDate)
|
||||
FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", NowADS(), txtFechaF.Text.ToDate)
|
||||
|
||||
#Region " IMPRIMIR "
|
||||
|
||||
#End Region
|
||||
|
||||
Protected Sub Imprimir_click(sender As Object, e As EventArgs) Handles Imprimir.Click
|
||||
FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", NowADS(), TxtFechaDel.Text.ToDate)
|
||||
FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", NowADS(), TxtFechaAl.Text.ToDate)
|
||||
DtDatos = DtDatos
|
||||
ImprimirReporte()
|
||||
DtDatos = DtDatos
|
||||
ImprimirReporte()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
|
||||
FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", NowADS(), TxtFechaDel.Text.ToDate)
|
||||
FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", NowADS(), TxtFechaAl.Text.ToDate)
|
||||
DtDatos = DtDatos
|
||||
ImprimirReporte("EXCEL")
|
||||
ImprimirReporte("Excel")
|
||||
End Sub
|
||||
|
||||
Private Sub ImprimirReporte(Optional Formato As String = "PDF")
|
||||
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
|
||||
'Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
||||
|
||||
Dim lista = New List(Of CrystalParametro)
|
||||
lista.Add(New CrystalParametro("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
lista.Add(New CrystalParametro("FechaInicio", FechaInicio.ToString("dd/MM/yyyy")))
|
||||
lista.Add(New CrystalParametro("FechaFin", FechaFin.ToString("dd/MM/yyyy")))
|
||||
lista.Add(New CrystalParametro("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
lista.Add(New CrystalParametro("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
|
||||
Dim WBLibroMayor = New ClosedXML.Excel.XLWorkbook
|
||||
Dim TipoReporte = DdlTipoReporte.SelectedValue.ToEntero
|
||||
|
||||
FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", NowADS(), txtFechaI.Text.ToDate)
|
||||
FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", NowADS(), txtFechaF.Text.ToDate)
|
||||
|
||||
DtDatos.Rows.Clear()
|
||||
CargaDatos(False)
|
||||
|
||||
If DtDatos.Rows.Count > 0 Then
|
||||
Dim sp As String = If(DdlSubproyecto.SelectedValue.ToEntero > 0, DdlSubproyecto.SelectedItem.Text, "")
|
||||
WBLibroMayor.AddWorksheet(WSDocumento(sp, DtDatos))
|
||||
WBLibroMayor.Worksheet(1).Name = $"LibroMayor"
|
||||
End If
|
||||
|
||||
Dim msB = New MemoryStream()
|
||||
WBLibroMayor.SaveAs(msB)
|
||||
|
||||
Dim BB As Byte() = msB.ToArray
|
||||
msB.Dispose()
|
||||
|
||||
Response.Clear()
|
||||
Response.Buffer = True
|
||||
Response.AddHeader("content-disposition", "attachment; filename=Balanza_" & Now.ToString("yyyyMMddhhmmss") & ".xlsx")
|
||||
Response.ContentType = "application/vnd.ms-excel"
|
||||
Response.BinaryWrite(BB)
|
||||
|
||||
Response.End()
|
||||
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(Server.MapPath("~/Empresas/Grales/Formatos/LibroMayor.rpt"), DtDatos, lista, "LibroMayor", Formato), "LibroMayor", Formato)
|
||||
End Sub
|
||||
|
||||
|
||||
Function WSDocumento(SubProyecto As String, DtDatos As DataTable) As IXLWorksheet
|
||||
|
||||
|
||||
Dim WBAnexoSalvar = New ClosedXML.Excel.XLWorkbook
|
||||
Dim WBReporte = New ClosedXML.Excel.XLWorkbook()
|
||||
WBReporte.Worksheets.Add("1")
|
||||
|
||||
Dim WSReporte = WBReporte.Worksheet(1)
|
||||
|
||||
Dim RutaLogo As String = String.Format("{0}Logo.png", UsuarioActual.Empresa.Ruta)
|
||||
If File.Exists(RutaLogo) Then
|
||||
|
||||
Dim imagePath As String = RutaLogo
|
||||
Dim img As Bitmap = New Bitmap(imagePath)
|
||||
Dim picture = WSReporte.AddPicture(img).MoveTo(WSReporte.Cell("A1"))
|
||||
picture.Scale(0.5)
|
||||
|
||||
End If
|
||||
|
||||
Dim Tamaniofuente As Integer = 13
|
||||
Dim Range = WSReporte.Range("A1:D1")
|
||||
|
||||
WSReporte.Style.Font.FontSize = 10
|
||||
WSReporte.Style.Font.FontName = "Arial Narrow"
|
||||
|
||||
WSReporte.Style.Alignment.WrapText = True
|
||||
|
||||
Range.Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
|
||||
WSReporte.Range("A1:J1").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A2:J2").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A3:J3").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A4:J4").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A5:J5").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
|
||||
WSReporte.Range("A1:A5").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
|
||||
|
||||
WSReporte.Column(1).Width = 15
|
||||
WSReporte.Column(2).Width = 15
|
||||
WSReporte.Column(3).Width = 14
|
||||
WSReporte.Column(4).Width = 70
|
||||
WSReporte.Column(5).Width = 35
|
||||
WSReporte.Column(6).Width = 20
|
||||
WSReporte.Column(7).Width = 14
|
||||
WSReporte.Column(8).Width = 14
|
||||
WSReporte.Column(9).Width = 14
|
||||
WSReporte.Column(10).Width = 14
|
||||
|
||||
|
||||
WSReporte.Cell(1, 1).Value = UsuarioActual.Empresa.Empresa
|
||||
WSReporte.Cell(2, 1).Value = $"Libro Mayor del {txtFechaI.Text} al {txtFechaF.Text}"
|
||||
|
||||
If SubProyecto.Length > 0 Then
|
||||
WSReporte.Cell(5, 1).Value = $"Sub Proyecto: {SubProyecto}"
|
||||
WSReporte.Cell(5, 1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left
|
||||
WSReporte.Cell(5, 1).Style.Font.Bold = True
|
||||
End If
|
||||
|
||||
|
||||
WSReporte.Cell(6, 1).Value = "Fecha"
|
||||
WSReporte.Cell(6, 2).Value = $"Cuenta{vbCrLf}Tipo"
|
||||
WSReporte.Cell(6, 1).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
WSReporte.Cell(6, 2).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
|
||||
WSReporte.Cell(6, 3).Value = $"Número"
|
||||
WSReporte.Cell(6, 4).Value = $"Concepto"
|
||||
WSReporte.Cell(6, 5).Value = $"Referencia"
|
||||
WSReporte.Cell(6, 6).Value = $"Referencia Movto"
|
||||
WSReporte.Cell(6, 7).Value = $"{LblSubProyecto.Text}"
|
||||
WSReporte.Cell(6, 8).Value = $"Cargos"
|
||||
WSReporte.Cell(6, 9).Value = $"Abonos"
|
||||
WSReporte.Cell(6, 10).Value = $"Saldo"
|
||||
|
||||
WSReporte.Range("A6:J6").Style.Font.Bold = True
|
||||
WSReporte.Range("A6:J6").Style.Font.FontSize = 10
|
||||
WSReporte.Range("A6:J6").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
|
||||
WSReporte.Range("A6:J6").Style.Border.TopBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
WSReporte.Range("A6:J6").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
WSReporte.Range("A6:J6").Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
Dim CuerrentRow As Integer = 7
|
||||
|
||||
CuerrentRow = CuerrentRow + 1
|
||||
|
||||
For Each Drow As DataRow In DtDatos.Rows
|
||||
|
||||
|
||||
|
||||
If Drow("Concepto").ToString = "" Then
|
||||
|
||||
|
||||
WSReporte.Range($"A{CuerrentRow }:J{CuerrentRow }").Style.Font.Bold = True
|
||||
WSReporte.Range($"A{CuerrentRow }:J{CuerrentRow }").Style.Font.FontSize = FontSize.XXLarge '35
|
||||
|
||||
|
||||
If Drow("SaldoActual").ToString = "" Then
|
||||
'CType(e.Row.FindControl("tr2"), HtmlTableRow).Visible = False
|
||||
'Cuando Es Total
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 1).Value = Drow("Codigo").ToString
|
||||
WSReporte.Cell(CuerrentRow, 4).Value = Drow("Nombre").ToString
|
||||
WSReporte.Cell(CuerrentRow, 9).Value = "Saldo Inicial:"
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("SaldoInicial").ToString
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
If Drow("SaldoInicial").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
Else
|
||||
'CType(e.Row.FindControl("tr1"), HtmlTableRow).Visible = False
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 1).Value = Drow("Fecha").ToString
|
||||
WSReporte.Cell(CuerrentRow, 2).Value = Drow("TipoPoliza").ToString
|
||||
WSReporte.Cell(CuerrentRow, 3).Value = Drow("Folio").ToString
|
||||
WSReporte.Cell(CuerrentRow, 4).Value = Drow("Concepto").ToString
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = Drow("Referencia").ToString
|
||||
WSReporte.Cell(CuerrentRow, 6).Value = Drow("ReferenciaAdmin").ToString
|
||||
WSReporte.Cell(CuerrentRow, 7).Value = Drow("SubProyecto").ToString
|
||||
|
||||
|
||||
If TotalPadre Then
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = String.Format("Total {0}:", Drow("Nombre").ToString)
|
||||
WSReporte.Cell(CuerrentRow, 5).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
Else
|
||||
TotalPadre = True
|
||||
WSReporte.Cell(CuerrentRow, 5).Style.Font.Bold = False
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = "Total:"
|
||||
WSReporte.Cell(CuerrentRow, 5).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
End If
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 8).Value = Drow("Cargos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 9).Value = Drow("Abonos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("SaldoActual").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
|
||||
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
|
||||
If Drow("Cargos").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 8).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("Abonos").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 9).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("SaldoActual").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 1).Value = Drow("Fecha").ToString
|
||||
WSReporte.Cell(CuerrentRow, 2).Value = Drow("TipoPoliza").ToString
|
||||
WSReporte.Cell(CuerrentRow, 3).Value = Drow("Folio").ToString
|
||||
WSReporte.Cell(CuerrentRow, 4).Value = Drow("Concepto").ToString
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = Drow("Referencia").ToString
|
||||
WSReporte.Cell(CuerrentRow, 6).Value = Drow("ReferenciaAdmin").ToString
|
||||
WSReporte.Cell(CuerrentRow, 7).Value = Drow("SubProyecto").ToString
|
||||
|
||||
TotalPadre = False
|
||||
|
||||
WSReporte.Range($"A{CuerrentRow }:J{CuerrentRow }").Style.Font.Bold = False
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("Folio").ToString
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 8).Value = Drow("CargosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 9).Value = Drow("AbonosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("Saldo").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
|
||||
If Drow("CargosMovto").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 8).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("AbonosMovto").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 9).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("Saldo").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
CuerrentRow = CuerrentRow + 1
|
||||
Next
|
||||
|
||||
|
||||
For xy As Integer = 6 To CuerrentRow
|
||||
WSReporte.Cell(xy, 10).Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
WSReporte.Cell(xy, 1).Style.Border.LeftBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
Next
|
||||
|
||||
'CuerrentRow = CuerrentRow + 1
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 1).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
'WSReporte.Cell(CuerrentRow, 2).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Value = $"Saldos Iniciales{vbCrLf}Deudor Acreedor"
|
||||
'WSReporte.Cell(CuerrentRow, 4).Value = $"Cargos"
|
||||
'WSReporte.Cell(CuerrentRow, 5).Value = $"Abonos"
|
||||
'WSReporte.Cell(CuerrentRow, 6).Value = $"Saldo Actuales{vbCrLf} Deudor Acreedo"
|
||||
|
||||
|
||||
|
||||
WSReporte.Range($"A{CuerrentRow}:J{CuerrentRow}").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
|
||||
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Font.Bold = True
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Font.FontSize = 10
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Border.TopBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
'CuerrentRow = CuerrentRow + 1
|
||||
|
||||
'Dim ultimaFila As DataRow = DtDatos.Rows(DtDatos.Rows.Count - 1)
|
||||
|
||||
'Dim LastSaldoID As Decimal = ultimaFila("SaldoID").ToString.ToDecimal
|
||||
'Dim LastTotalAbonos As Decimal = ultimaFila("TotalAbonos").ToString.ToDecimal
|
||||
'Dim LastTotalCargos As Decimal = ultimaFila("TotalCargos").ToString.ToDecimal
|
||||
'Dim LastSaldoAD As Decimal = ultimaFila("SaldoAD").ToString.ToDecimal
|
||||
'Dim LastSaldoIA As Decimal = ultimaFila("SaldoIA").ToString.ToDecimal
|
||||
'Dim LastSaldoAA As Decimal = ultimaFila("SaldoAA").ToString.ToDecimal
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 2).Value = "Sumas Iguales"
|
||||
'WSReporte.Cell(CuerrentRow, 3).Value = LastSaldoID
|
||||
'WSReporte.Cell(CuerrentRow, 4).Value = LastTotalCargos
|
||||
'WSReporte.Cell(CuerrentRow, 5).Value = LastTotalAbonos
|
||||
'WSReporte.Cell(CuerrentRow, 6).Value = LastSaldoAD
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 4).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 5).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 6).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
|
||||
CuerrentRow = CuerrentRow + 1
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Value = LastSaldoIA
|
||||
'WSReporte.Cell(CuerrentRow, 6).Value = LastSaldoAA
|
||||
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 6).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
'WSReporte.Range($"B{CuerrentRow}:F{CuerrentRow}").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
WSReporte.PageSetup.PrintAreas.Add($"A1:G{CuerrentRow + 0 + 1}")
|
||||
WSReporte.PageSetup.Margins.Top = 0.3
|
||||
WSReporte.PageSetup.Margins.Left = 0.8
|
||||
WSReporte.PageSetup.Margins.Right = 0.8
|
||||
WSReporte.PageSetup.FitToPages(1, 1)
|
||||
|
||||
WBReporte.Worksheet(1).CopyTo(WBAnexoSalvar, "LibroMayor")
|
||||
|
||||
Return WBReporte.Worksheet(1)
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Public Function CloneGridView(ByVal originalGridView As GridView) As GridView
|
||||
' Crear un nuevo GridView
|
||||
Dim clonedGridView As New GridView()
|
||||
|
||||
' Copiar propiedades básicas del GridView
|
||||
clonedGridView.ID = originalGridView.ID & "_Copy"
|
||||
clonedGridView.AutoGenerateColumns = originalGridView.AutoGenerateColumns
|
||||
clonedGridView.CssClass = originalGridView.CssClass
|
||||
clonedGridView.GridLines = originalGridView.GridLines
|
||||
clonedGridView.HeaderStyle.CopyFrom(originalGridView.HeaderStyle)
|
||||
clonedGridView.RowStyle.CopyFrom(originalGridView.RowStyle)
|
||||
clonedGridView.AlternatingRowStyle.CopyFrom(originalGridView.AlternatingRowStyle)
|
||||
clonedGridView.FooterStyle.CopyFrom(originalGridView.FooterStyle)
|
||||
clonedGridView.EmptyDataText = originalGridView.EmptyDataText
|
||||
clonedGridView.ShowHeader = originalGridView.ShowHeader
|
||||
clonedGridView.ShowFooter = originalGridView.ShowFooter
|
||||
|
||||
' Copiar columnas
|
||||
For Each col As DataControlField In originalGridView.Columns
|
||||
' Crear una copia de la columna
|
||||
Dim clonedCol As DataControlField = CType(Activator.CreateInstance(col.GetType()), DataControlField)
|
||||
clonedCol.HeaderStyle.CopyFrom(col.HeaderStyle)
|
||||
clonedCol.ItemStyle.CopyFrom(col.ItemStyle)
|
||||
clonedCol.FooterStyle.CopyFrom(col.FooterStyle)
|
||||
|
||||
' Si es un BoundField, copiar propiedades específicas
|
||||
If TypeOf col Is BoundField Then
|
||||
Dim originalBoundField As BoundField = CType(col, BoundField)
|
||||
Dim clonedBoundField As BoundField = CType(clonedCol, BoundField)
|
||||
|
||||
clonedBoundField.DataField = originalBoundField.DataField
|
||||
clonedBoundField.HeaderText = originalBoundField.HeaderText
|
||||
clonedBoundField.SortExpression = originalBoundField.SortExpression
|
||||
clonedBoundField.ReadOnly = originalBoundField.ReadOnly
|
||||
End If
|
||||
|
||||
' Añadir la columna clonada al nuevo GridView
|
||||
clonedGridView.Columns.Add(clonedCol)
|
||||
Next
|
||||
|
||||
' Copiar el DataSource (opcional, dependiendo de si deseas copiar los datos actuales)
|
||||
clonedGridView.DataSource = originalGridView.DataSource
|
||||
clonedGridView.DataBind()
|
||||
|
||||
Return clonedGridView
|
||||
End Function
|
||||
|
||||
|
||||
Public Overrides Sub VerifyRenderingInServerForm(control As Control)
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
@@ -1,265 +0,0 @@
|
||||
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="LibroMayor2.aspx.vb" Inherits="Conta_LibroMayor2" EnableEventValidation="false" %>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="Css" runat="server">
|
||||
<style>
|
||||
.truncate {
|
||||
width: 300px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
table {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
tr {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
td {
|
||||
border: none !important;
|
||||
}
|
||||
</style>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="H" runat="Server">
|
||||
<asp:UpdatePanel ID="UpAcciones" runat="server" >
|
||||
<ContentTemplate>
|
||||
<li>
|
||||
<asp:LinkButton ID="ImgExcel" runat="server" Visible="true"><i class="fa fa-file-excel-o" ></i> Generar EXCEL</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="ImgExcel" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
|
||||
<%-- <li>
|
||||
<asp:LinkButton ID="Imprimir" runat="server" Visible="false"><i class="fa fa-print"></i> Imprimir</asp:LinkButton>
|
||||
</li>--%>
|
||||
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="E" runat="Server">
|
||||
Libro Mayor
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="C" runat="Server">
|
||||
|
||||
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div class="portlet solid grey-cascade portlet-filter">
|
||||
<div class="portlet-title portlet-filterT smalltitle">
|
||||
<div class="tools">
|
||||
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" CssClass="btn btn-default" OnClick="BtnConsultar_Click" ValidationGroup="Valida" />
|
||||
<a href="javascript:;" data-idchekbox="<%= chkexpand.ClientID%>" class=" <%= IIf(chkexpand.Checked = True, "collapse", "expand")%>"></a><%--class="expand"--%>
|
||||
<asp:CheckBox ID="chkexpand" CssClass="hidden" runat="server" />
|
||||
</div>
|
||||
<div class="titlefiltros caption ">
|
||||
<div class="row">
|
||||
<div class="col-md-1">
|
||||
Cuenta:
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<asp:DropDownList ID="DdlCuentas" runat="server" AppendDataBoundItems="true" DataTextField="CuentaFormatoNombre" DataValueField="CveCuenta" CssClass="form-control input-sm select2me" Enabled="false">
|
||||
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
<asp:RequiredFieldValidator ID="RFVDdlCuentas" runat="server" InitialValue="-1" ControlToValidate="DdlCuentas" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cuenta''</b> es necesario, por favor ingréselo." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="CERFVDdlCuentas" runat="server" HighlightCssClass="vco" TargetControlID="RFVDdlCuentas" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
<div class="col-md-1">
|
||||
Fecha Inicio:
|
||||
</div>
|
||||
<div class="col-md-1" style="min-width: 115px">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 100px !important; padding: 0px;">
|
||||
<asp:TextBox Width="80px" ID="txtFechaI" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="imgCalendario" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
|
||||
<asp:CompareValidator ID="cvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
<div class="col-md-1">
|
||||
Fecha Fin:
|
||||
</div>
|
||||
<div class="col-md-1" style="min-width: 115px">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 100% !important; padding: 0px;">
|
||||
<asp:TextBox Width="80px" ID="txtFechaF" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="imgCalendarioF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
|
||||
<asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoRfvFF" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
<ajax:ValidatorCalloutExtender ID="vcoCvFF" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body" <%= IIf(chkexpand.Checked = True, "", "style=""display:none;""")%>>
|
||||
<div class="row">
|
||||
<div class="col-md-1 ">
|
||||
Tipo Movto
|
||||
</div>
|
||||
<div class="col-md-3 ">
|
||||
<asp:DropDownList ID="DdlOpcionCuentas" runat="server" DataTextField="Cuenta" DataValueField="CveCuenta" TabIndex="4" CssClass="form-control input-sm select2me" Width="100%">
|
||||
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
|
||||
<asp:ListItem Text="Con movimientos" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Saldo actual no igual a cero" Value="2"></asp:ListItem>
|
||||
<asp:ListItem Text="Con movimientos y saldo no igual a cero" Value="3"></asp:ListItem>
|
||||
<asp:ListItem Text="Con movimientos o saldo no igual a cero" Value="4"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-1 " id="tdTipoReporte" visible="false" runat="server">
|
||||
Tipo
|
||||
</div>
|
||||
<div class="col-md-2" id="tdTipoReporte2" visible="false" runat="server">
|
||||
<asp:DropDownList ID="DdlTipoReporte" CssClass="form-control input-sm select2me" runat="server" Width="100%">
|
||||
<asp:ListItem Text="Contable" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Contable y Complementario" Value="3"></asp:ListItem>
|
||||
<asp:ListItem Text="Complementario" Value="2"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-1" id="divProyecto" runat="server">
|
||||
<asp:Label ID="LblProyecto" runat="server">Proyecto:</asp:Label>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlProyecto" CssClass=" form-control input-sm select2me" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Width="95%">
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<asp:Label runat="server" ID="LblSubProyecto" CssClass="col-md-1">SubProyecto:</asp:Label>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlSubproyecto" CssClass="form-control input-sm select2me" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Width="95%" AutoPostBack="True">
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
<div class="row" style="margin-right: 10px; margin-top: 8px;" align="right">
|
||||
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
|
||||
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
|
||||
</div>
|
||||
<asp:UpdatePanel ID="UpDatos" UpdateMode="Conditional" runat="server">
|
||||
<ContentTemplate>
|
||||
|
||||
<div style='color:red'></div>
|
||||
<asp:GridView ID="GvDatos" runat="server"
|
||||
CssClass="table table-striped table-advance table-hover " AutoGenerateColumns="False"
|
||||
EmptyDataText="No se encontrarios movimientos."
|
||||
DataKeyNames="" OnRowDataBound="GvDatos_RowDataBound">
|
||||
<Columns>
|
||||
<asp:TemplateField ControlStyle-CssClass="Widthall">
|
||||
<HeaderTemplate>
|
||||
|
||||
<table width="100%" style="border: none">
|
||||
<tr>
|
||||
<td colspan="3"><font size="2">Cuenta</font></td>
|
||||
<td colspan="1"><font size="2">Nombre</font></td>
|
||||
<td colspan="4"></td>
|
||||
<td><font size="2">Saldo Inicial</font></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="60px" align="center">Fecha</td>
|
||||
<td width="60px" align="center">Tipo</td>
|
||||
<td width="60px" align="center">Número</td>
|
||||
<td width="300px" align="left">Concepto</td>
|
||||
<td width="100px" align="center">Referencia</td>
|
||||
<td width="100px" align="center">Referencia Movto</td>
|
||||
<td width="100px" align="center"><asp:Label ID="LblSubProyecto" runat="server"></asp:Label> </td>
|
||||
<td width="100px" align="center">Cargos</td>
|
||||
<td width="100px" align="center">Abonos</td>
|
||||
<td width="100px" align="center">Saldo</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</HeaderTemplate>
|
||||
|
||||
|
||||
<ItemTemplate>
|
||||
<table width="100%" style="border: none">
|
||||
|
||||
<tr runat="server" id="tr1">
|
||||
<td colspan="3" align="left" width="180px">
|
||||
<asp:Label ID="LbCuenta" runat="server" Text='<%# Eval("Codigo")%>'></asp:Label>
|
||||
</td>
|
||||
<td colspan="1" align="left" width="300px">
|
||||
<asp:Label ID="LbNombre" runat="server" Text='<%# Eval("Nombre")%>'></asp:Label>
|
||||
</td>
|
||||
<td colspan="2" width="200px"></td>
|
||||
<td style="font-weight: normal;" align="right" width="100px">Saldo Inicial:
|
||||
</td>
|
||||
<td style="font-weight: normal;" align="right" width="100px">
|
||||
<asp:Label ID="LbSaldoInicial" runat="server" Text='<%# Eval("SaldoInicial", "{0:N2}")%>'></asp:Label>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr runat="server" id="tr2">
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:Literal ID="LbFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}")%>'></asp:Literal>
|
||||
</td>
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:Literal ID="LbTipo" runat="server" Text='<%# Eval("TipoPoliza")%>'></asp:Literal>
|
||||
</td>
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:HyperLink ID="HLPoliza" runat="server" Text='<%# Eval("Folio")%>' CssClass="Texto" Target="_blank"></asp:HyperLink>
|
||||
</td>
|
||||
|
||||
<td width="300px" align="left">
|
||||
<div class="truncate" style="width: 300px;">
|
||||
<asp:Label ID="LbConcepto" runat="server" CssClass="truncate" Text='<%# Eval("Concepto")%>' title='<%# Eval("Concepto")%>'></asp:Label>
|
||||
</div>
|
||||
</td>
|
||||
<td width="100px">
|
||||
<asp:Label ID="LbReferencia" runat="server" Text='<%# Eval("Referencia")%>'></asp:Label>
|
||||
</td>
|
||||
<td width="60px" style="border: 0px;" align="center">
|
||||
<asp:Literal ID="LtlRefMovto" runat="server" Text='<%# Eval("ReferenciaAdmin")%>'></asp:Literal>
|
||||
</td>
|
||||
<td width="100px">
|
||||
<asp:Label ID="LblSubProyecto" runat="server" Text='<%# Eval("SubProyecto")%>'></asp:Label>
|
||||
</td>
|
||||
<td width="100px" align="right">
|
||||
<asp:Label ID="LbCargos" runat="server"></asp:Label>
|
||||
</td>
|
||||
<td width="100px" align="right">
|
||||
<asp:Label ID="LbAbonos" runat="server"></asp:Label>
|
||||
</td>
|
||||
<td width="100px" align="right">
|
||||
<asp:Label ID="LbSaldo" runat="server"></asp:Label>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</ItemTemplate>
|
||||
<ItemStyle />
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
|
||||
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="JS" runat="Server">
|
||||
|
||||
|
||||
|
||||
</asp:Content>
|
||||
@@ -1,746 +0,0 @@
|
||||
Option Explicit On
|
||||
Option Strict On
|
||||
|
||||
Imports System.Data
|
||||
Imports ADServerControl.DragableList
|
||||
Imports System.IO
|
||||
Imports Extensiones
|
||||
Imports Microsoft.Reporting.WebForms
|
||||
Imports ClosedXML.Excel
|
||||
Imports System.Drawing
|
||||
|
||||
Partial Class Conta_LibroMayor2
|
||||
Inherits ClsPaginas
|
||||
|
||||
|
||||
#Region "PROPIEDADES"
|
||||
Private Property DtDatos As DataTable
|
||||
Get
|
||||
If ViewState("DtDatos") Is Nothing Then
|
||||
ViewState("DtDatos") = New DataTable
|
||||
End If
|
||||
|
||||
Return DirectCast(ViewState("DtDatos"), DataTable)
|
||||
End Get
|
||||
|
||||
Set(ByVal value As DataTable)
|
||||
ViewState("DtDatos") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property DtTotales As DataTable
|
||||
Get
|
||||
DtTotales = DirectCast(ViewState("DtTotales"), DataTable)
|
||||
End Get
|
||||
|
||||
Set(ByVal value As DataTable)
|
||||
ViewState("DtTotales") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property FechaInicio As Date
|
||||
Get
|
||||
FechaInicio = ViewState("FechaInicio").ToString.ToDate
|
||||
End Get
|
||||
Set(value As Date)
|
||||
ViewState("FechaInicio") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property FechaFin As Date
|
||||
Get
|
||||
FechaFin = ViewState("FechaFin").ToString.ToDate
|
||||
End Get
|
||||
Set(value As Date)
|
||||
ViewState("FechaFin") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property TotalPadre As Boolean
|
||||
Get
|
||||
TotalPadre = CBool(ViewState("TotalPadre"))
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
ViewState("TotalPadre") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property DTCuentas As DataTable
|
||||
Get
|
||||
Return CType(ViewState("DTCuentas"), DataTable)
|
||||
End Get
|
||||
Set(value As DataTable)
|
||||
ViewState("DTCuentas") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property TipoReporte As String
|
||||
Get
|
||||
TipoReporte = ViewState("TP").ToString
|
||||
End Get
|
||||
Set(value As String)
|
||||
ViewState("TP") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property Cuenta As String
|
||||
Get
|
||||
Return ViewState("Cuenta").ToString
|
||||
End Get
|
||||
Set(value As String)
|
||||
ViewState("Cuenta") = value
|
||||
End Set
|
||||
End Property
|
||||
#End Region
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
If Not Page.IsPostBack Then
|
||||
|
||||
|
||||
|
||||
Dim ErrorParametros As Boolean = True
|
||||
|
||||
CargaTipoCuentas()
|
||||
|
||||
|
||||
txtFechaI.Text = NowADS().FirstDayOfMonth.ToShortDateString
|
||||
txtFechaF.Text = NowADS().LastDayOfMonth.ToShortDateString
|
||||
|
||||
|
||||
If Request("CveCuenta") IsNot Nothing AndAlso IsNumeric(Request("CveCuenta")) AndAlso Request("CveCuenta").ToEntero > 0 Then
|
||||
If Request("FF") IsNot Nothing AndAlso Request("FF").ToString.Length = 10 AndAlso Request("FF").ToDate > "01/01/1000".ToDate Then
|
||||
|
||||
FechaFin = Request("FF").ToDate
|
||||
txtFechaF.Text = FechaFin.ToShortDateString
|
||||
|
||||
DdlCuentas.SelectedValueExist(Request("CveCuenta").ToEntero)
|
||||
|
||||
|
||||
If Request("FI") IsNot Nothing AndAlso Request("FI").ToString.Length = 10 AndAlso Request("FI").ToDate > "01/01/1000".ToDate Then
|
||||
FechaInicio = Request("FI").ToDate
|
||||
txtFechaI.Text = FechaInicio.ToShortDateString
|
||||
Else
|
||||
FechaInicio = DateSerial(Year(FechaFin), Month(FechaFin), 1)
|
||||
txtFechaF.Text = FechaInicio.ToShortDateString
|
||||
End If
|
||||
|
||||
If Request("CveProyecto") IsNot Nothing AndAlso IsNumeric(Request("CveProyecto")) Then
|
||||
DdlProyecto.SelectedValueExist(Request("CveProyecto"))
|
||||
DdlProyecto_SelectedIndexChanged(Nothing, Nothing)
|
||||
End If
|
||||
|
||||
If Request("CveSubProyecto") IsNot Nothing AndAlso IsNumeric(Request("CveSubProyecto")) Then
|
||||
DdlSubproyecto.SelectedValueExist(Request("CveSubProyecto"))
|
||||
End If
|
||||
|
||||
ErrorParametros = False
|
||||
|
||||
If Request("TP") IsNot Nothing AndAlso IsNumeric(Request("TP")) AndAlso Request("TP").ToEntero > 0 Then
|
||||
TipoReporte = Request("TP").ToString
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
If Not ErrorParametros Then
|
||||
TotalPadre = True
|
||||
TipoReporte = "1"
|
||||
CargaDatos()
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
|
||||
If DdlCuentas.SelectedValue.ToEntero = -2 Then
|
||||
Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError)
|
||||
Else
|
||||
FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", NowADS(), txtFechaI.Text.ToDate)
|
||||
FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", NowADS(), txtFechaF.Text.ToDate)
|
||||
|
||||
CargaDatos()
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
#Region "C A R G A - D A T O S"
|
||||
|
||||
Private Sub CargaTipoCuentas()
|
||||
|
||||
Dim ObjTipoCuenta As New ClsContabilidad
|
||||
DdlCuentas.Enabled = True
|
||||
|
||||
If ObjTipoCuenta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then
|
||||
DTCuentas = ObjTipoCuenta.DtResultados
|
||||
DdlCuentas.DataSource = ObjTipoCuenta.DtResultados.FiltraParametros("Codigo NOT IN ('_ACTIVO', '_PASIVO', '_CAPITAL', '_CUADRE', '_ESTADISTICAS', '_ORDEN', '_RACREEDOR', '_RDEUDOR', '_UTILIDAD')")
|
||||
|
||||
End If
|
||||
ObjTipoCuenta.Dispose()
|
||||
DdlCuentas.DataBind()
|
||||
|
||||
CargarCentrosDeCosto(DdlProyecto, DdlSubproyecto, LblProyecto, LblSubProyecto, divProyecto:=divProyecto)
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlProyecto.SelectedIndexChanged
|
||||
CargarSubProyecto(DdlSubproyecto, DdlProyecto.SelectedValue, "Todos")
|
||||
End Sub
|
||||
Private Sub CargaDatos(Optional RenderGv As Boolean = True)
|
||||
|
||||
Dim CveProyecto As Integer = DdlProyecto.SelectedValue.ToEntero
|
||||
Dim CveSubProyecto As Integer = DdlSubproyecto.SelectedValue.ToEntero
|
||||
TipoReporte = DdlTipoReporte.SelectedValue.ToString
|
||||
|
||||
Cuenta = DdlCuentas.SelectedItem.ToString
|
||||
Dim ObjConta As New ClsContabilidad
|
||||
If ObjConta.GetLibroMayor2(DdlCuentas.SelectedValue.ToEntero, FechaInicio, FechaFin, -1, CveProyecto, CveSubProyecto, UsuarioActual.CveEmpresa, TipoReporte, DdlOpcionCuentas.SelectedValue.ToEntero) Then
|
||||
DtDatos = ObjConta.DtResultados
|
||||
DtTotales = DtDatos.Clone
|
||||
|
||||
If RenderGv Then
|
||||
CargaGrid()
|
||||
End If
|
||||
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
End If
|
||||
|
||||
ObjConta.Dispose()
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
Private Sub InsertaTotales()
|
||||
Dim i As Integer = 0
|
||||
Dim Aumento As Integer = 0
|
||||
Dim Row As DataRow
|
||||
Dim Row2 As DataRow
|
||||
|
||||
'Llena DtTotales
|
||||
For Each dr As DataRow In DtDatos.Rows
|
||||
If dr("Concepto").ToString = "" Then
|
||||
|
||||
Row = DtTotales.NewRow
|
||||
|
||||
Row("CveCuenta") = -1
|
||||
Row("CargosMovto") = If("1" = "1", dr("Cargos"), dr("CargosME"))
|
||||
Row("AbonosMovto") = If("1" = "1", dr("Abonos"), dr("AbonosME"))
|
||||
Row("Saldo") = dr("SaldoActual")
|
||||
Row("CtaMayor") = dr("CtaMayor")
|
||||
Row("Concepto") = String.Format("Total {0}:", dr("Nombre"))
|
||||
Row("Nombre") = dr("Nombre")
|
||||
DtTotales.Rows.Add(Row)
|
||||
Row("Clasificacion") = i
|
||||
End If
|
||||
|
||||
i += 1
|
||||
Next
|
||||
|
||||
'Inserta Totales en DtDatos
|
||||
For Each dr As DataRow In DtTotales.Rows
|
||||
i = 0
|
||||
|
||||
If dr("CtaMayor").ToString = "1" Then
|
||||
DtDatos.ImportRow(dr)
|
||||
End If
|
||||
|
||||
If dr("CtaMayor").ToString = "2" Then
|
||||
For index As Integer = dr("Clasificacion").ToString.ToEntero + Aumento To DtDatos.Rows.Count
|
||||
If DtDatos.Rows(index)("Nombre").ToString <> dr("Nombre").ToString Then
|
||||
i = index
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
Row2 = DtDatos.NewRow
|
||||
Row2.ItemArray = dr.ItemArray
|
||||
|
||||
DtDatos.Rows.InsertAt(Row2, i + Aumento)
|
||||
Aumento += 1
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
#Region "G R I D - GV DATOS"
|
||||
Private Sub CargaGrid()
|
||||
GvDatos.DataSource = DtDatos
|
||||
'GvDatos.Dispose()
|
||||
GvDatos.DataBind()
|
||||
UpDatos.Update()
|
||||
End Sub
|
||||
Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs)
|
||||
|
||||
If e.Row.RowType = DataControlRowType.Header Then
|
||||
e.Row.FCLabel("LblSubProyecto").Text = LblSubProyecto.Text
|
||||
End If
|
||||
|
||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||
|
||||
If e.Row.DBCampo("Concepto") = "" Then
|
||||
e.Row.ControlStyle.Font.Bold = True
|
||||
e.Row.ControlStyle.Height = 35
|
||||
|
||||
'Cuando es Titulo
|
||||
If e.Row.DBCampo("SaldoActual") = "" Then
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Visible = False
|
||||
|
||||
|
||||
'Cuando Es Total
|
||||
Else
|
||||
CType(e.Row.FindControl("tr1"), HtmlTableRow).Visible = False
|
||||
|
||||
'Anterior para TotalPadre
|
||||
'If e.Row.DBCampo("CtaMayor").ToString = "2" And (e.Row.DBCampo("Nivel3").ToString <> "" Xor e.Row.DBCampo("Orden").ToString.Length = 18) Then
|
||||
' e.Row.FCLabel("LbReferencia").Text = "Total:"
|
||||
'Else
|
||||
' e.Row.FCLabel("LbConcepto").Text = String.Format("Total {0}:", e.Row.DBCampo("Nombre").ToString)
|
||||
'End If
|
||||
|
||||
If TotalPadre Then
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3).Width = "1px"
|
||||
'CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells.Remove(CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3))
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3).Align = "Right"
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(3).Width = "400px"
|
||||
If e.Row.RowIndex + 1 = DtDatos.Rows.Count Then
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(4).Attributes.Add("style", "border-top: 1px solid black;")
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(5).Attributes.Add("style", "border-top: 1px solid black;")
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(6).Attributes.Add("style", "border-top: 1px solid black;")
|
||||
End If
|
||||
e.Row.FCLabel("LbReferencia").Text = String.Format("Total {0}:", e.Row.DBCampo("Nombre").ToString)
|
||||
|
||||
|
||||
Else
|
||||
TotalPadre = True
|
||||
e.Row.FCLabel("LbReferencia").Font.Bold = False
|
||||
e.Row.FCLabel("LbReferencia").Text = "Total:"
|
||||
CType(e.Row.FindControl("tr2"), HtmlTableRow).Cells(4).Align = "Right"
|
||||
End If
|
||||
|
||||
'e.Row.FCLabel("LbReferencia").Text = String.Format("Total {0}:", If(e.Row.DBCampo("CtaMayor").ToString = "2", "", e.Row.DBCampo("Nombre").ToString))
|
||||
e.Row.FCLabel("LbCargos").Text = e.Row.DBCampo("Cargos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
e.Row.FCLabel("LbAbonos").Text = e.Row.DBCampo("Abonos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
e.Row.FCLabel("LbSaldo").Text = e.Row.DBCampo("SaldoActual").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
End If
|
||||
|
||||
Else
|
||||
TotalPadre = False
|
||||
e.Row.ControlStyle.Font.Bold = False
|
||||
CType(e.Row.FindControl("tr1"), HtmlTableRow).Visible = False
|
||||
e.Row.FCHyperLink("HLPoliza").NavigateUrl = String.Format("/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}", e.Row.DBCampo("CvePoliza"))
|
||||
|
||||
If e.Row.DBCampo("CargosMovto").ToDouble <> 0 Then e.Row.FCLabel("LbCargos").Text = e.Row.DBCampo("CargosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
If e.Row.DBCampo("AbonosMovto").ToDouble <> 0 Then e.Row.FCLabel("LbAbonos").Text = e.Row.DBCampo("AbonosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
If e.Row.DBCampo("Saldo").ToDouble <> 0 Then e.Row.FCLabel("LbSaldo").Text = e.Row.DBCampo("Saldo").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
|
||||
End If
|
||||
|
||||
|
||||
'COLOREA NEGATIVOS
|
||||
If e.Row.FCLabel("LbCargos").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbCargos").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbCargos").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
If e.Row.FCLabel("LbAbonos").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbAbonos").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbAbonos").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
If e.Row.FCLabel("LbSaldo").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbSaldo").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbSaldo").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
If e.Row.FCLabel("LbSaldoInicial").Text.ToDouble < 0 Then
|
||||
e.Row.FCLabel("LbSaldoInicial").ForeColor = Drawing.Color.Red
|
||||
Else
|
||||
e.Row.FCLabel("LbSaldoInicial").ForeColor = Drawing.Color.Black
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
Protected Sub Imprimir_click(sender As Object, e As EventArgs)
|
||||
If DdlCuentas.SelectedValue.ToEntero = -1 Then
|
||||
Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError)
|
||||
Else
|
||||
FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", NowADS(), txtFechaI.Text.ToDate)
|
||||
FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", NowADS(), txtFechaF.Text.ToDate)
|
||||
|
||||
DtDatos = DtDatos
|
||||
ImprimirReporte()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
|
||||
ImprimirReporte("Excel")
|
||||
End Sub
|
||||
|
||||
Private Sub ImprimirReporte(Optional Formato As String = "PDF")
|
||||
|
||||
Dim WBLibroMayor = New ClosedXML.Excel.XLWorkbook
|
||||
Dim TipoReporte = DdlTipoReporte.SelectedValue.ToEntero
|
||||
|
||||
FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", NowADS(), txtFechaI.Text.ToDate)
|
||||
FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", NowADS(), txtFechaF.Text.ToDate)
|
||||
|
||||
DtDatos.Rows.Clear()
|
||||
CargaDatos(False)
|
||||
|
||||
If DtDatos.Rows.Count > 0 Then
|
||||
Dim sp As String = If(DdlSubproyecto.SelectedValue.ToEntero > 0, DdlSubproyecto.SelectedItem.Text, "")
|
||||
WBLibroMayor.AddWorksheet(WSDocumento(sp, DtDatos))
|
||||
WBLibroMayor.Worksheet(1).Name = $"LibroMayor"
|
||||
End If
|
||||
|
||||
Dim msB = New MemoryStream()
|
||||
WBLibroMayor.SaveAs(msB)
|
||||
|
||||
Dim BB As Byte() = msB.ToArray
|
||||
msB.Dispose()
|
||||
|
||||
Response.Clear()
|
||||
Response.Buffer = True
|
||||
Response.AddHeader("content-disposition", "attachment; filename=Balanza_" & Now.ToString("yyyyMMddhhmmss") & ".xlsx")
|
||||
Response.ContentType = "application/vnd.ms-excel"
|
||||
Response.BinaryWrite(BB)
|
||||
|
||||
Response.End()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Function WSDocumento(SubProyecto As String, DtDatos As DataTable) As IXLWorksheet
|
||||
|
||||
|
||||
Dim WBAnexoSalvar = New ClosedXML.Excel.XLWorkbook
|
||||
Dim WBReporte = New ClosedXML.Excel.XLWorkbook()
|
||||
WBReporte.Worksheets.Add("1")
|
||||
|
||||
Dim WSReporte = WBReporte.Worksheet(1)
|
||||
|
||||
Dim RutaLogo As String = String.Format("{0}Logo.png", UsuarioActual.Empresa.Ruta)
|
||||
If File.Exists(RutaLogo) Then
|
||||
|
||||
Dim imagePath As String = RutaLogo
|
||||
Dim img As Bitmap = New Bitmap(imagePath)
|
||||
Dim picture = WSReporte.AddPicture(img).MoveTo(WSReporte.Cell("A1"))
|
||||
picture.Scale(0.5)
|
||||
|
||||
End If
|
||||
|
||||
Dim Tamaniofuente As Integer = 13
|
||||
Dim Range = WSReporte.Range("A1:D1")
|
||||
|
||||
WSReporte.Style.Font.FontSize = 10
|
||||
WSReporte.Style.Font.FontName = "Arial Narrow"
|
||||
|
||||
WSReporte.Style.Alignment.WrapText = True
|
||||
|
||||
Range.Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
|
||||
WSReporte.Range("A1:J1").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A2:J2").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A3:J3").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A4:J4").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
WSReporte.Range("A5:J5").Merge().Style.Font.SetBold().Font.FontSize = Tamaniofuente
|
||||
|
||||
WSReporte.Range("A1:A5").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
|
||||
|
||||
WSReporte.Column(1).Width = 15
|
||||
WSReporte.Column(2).Width = 15
|
||||
WSReporte.Column(3).Width = 14
|
||||
WSReporte.Column(4).Width = 70
|
||||
WSReporte.Column(5).Width = 35
|
||||
WSReporte.Column(6).Width = 20
|
||||
WSReporte.Column(7).Width = 14
|
||||
WSReporte.Column(8).Width = 14
|
||||
WSReporte.Column(9).Width = 14
|
||||
WSReporte.Column(10).Width = 14
|
||||
|
||||
|
||||
WSReporte.Cell(1, 1).Value = UsuarioActual.Empresa.Empresa
|
||||
WSReporte.Cell(2, 1).Value = $"Libro Mayor del {txtFechaI.Text} al {txtFechaF.Text}"
|
||||
|
||||
If SubProyecto.Length > 0 Then
|
||||
WSReporte.Cell(5, 1).Value = $"Sub Proyecto: {SubProyecto}"
|
||||
WSReporte.Cell(5, 1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left
|
||||
WSReporte.Cell(5, 1).Style.Font.Bold = True
|
||||
End If
|
||||
|
||||
|
||||
WSReporte.Cell(6, 1).Value = "Fecha"
|
||||
WSReporte.Cell(6, 2).Value = $"Cuenta{vbCrLf}Tipo"
|
||||
WSReporte.Cell(6, 1).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
WSReporte.Cell(6, 2).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
|
||||
WSReporte.Cell(6, 3).Value = $"Número"
|
||||
WSReporte.Cell(6, 4).Value = $"Concepto"
|
||||
WSReporte.Cell(6, 5).Value = $"Referencia"
|
||||
WSReporte.Cell(6, 6).Value = $"Referencia Movto"
|
||||
WSReporte.Cell(6, 7).Value = $"{LblSubProyecto.Text}"
|
||||
WSReporte.Cell(6, 8).Value = $"Cargos"
|
||||
WSReporte.Cell(6, 9).Value = $"Abonos"
|
||||
WSReporte.Cell(6, 10).Value = $"Saldo"
|
||||
|
||||
WSReporte.Range("A6:J6").Style.Font.Bold = True
|
||||
WSReporte.Range("A6:J6").Style.Font.FontSize = 10
|
||||
WSReporte.Range("A6:J6").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
|
||||
WSReporte.Range("A6:J6").Style.Border.TopBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
WSReporte.Range("A6:J6").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
WSReporte.Range("A6:J6").Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
Dim CuerrentRow As Integer = 7
|
||||
|
||||
CuerrentRow = CuerrentRow + 1
|
||||
|
||||
For Each Drow As DataRow In DtDatos.Rows
|
||||
|
||||
|
||||
|
||||
If Drow("Concepto").ToString = "" Then
|
||||
|
||||
|
||||
WSReporte.Range($"A{CuerrentRow }:J{CuerrentRow }").Style.Font.Bold = True
|
||||
WSReporte.Range($"A{CuerrentRow }:J{CuerrentRow }").Style.Font.FontSize = FontSize.XXLarge '35
|
||||
|
||||
|
||||
If Drow("SaldoActual").ToString = "" Then
|
||||
'CType(e.Row.FindControl("tr2"), HtmlTableRow).Visible = False
|
||||
'Cuando Es Total
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 1).Value = Drow("Codigo").ToString
|
||||
WSReporte.Cell(CuerrentRow, 4).Value = Drow("Nombre").ToString
|
||||
WSReporte.Cell(CuerrentRow, 9).Value = "Saldo Inicial:"
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("SaldoInicial").ToString
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
If Drow("SaldoInicial").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
Else
|
||||
'CType(e.Row.FindControl("tr1"), HtmlTableRow).Visible = False
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 1).Value = Drow("Fecha").ToString
|
||||
WSReporte.Cell(CuerrentRow, 2).Value = Drow("TipoPoliza").ToString
|
||||
WSReporte.Cell(CuerrentRow, 3).Value = Drow("Folio").ToString
|
||||
WSReporte.Cell(CuerrentRow, 4).Value = Drow("Concepto").ToString
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = Drow("Referencia").ToString
|
||||
WSReporte.Cell(CuerrentRow, 6).Value = Drow("ReferenciaAdmin").ToString
|
||||
WSReporte.Cell(CuerrentRow, 7).Value = Drow("SubProyecto").ToString
|
||||
|
||||
|
||||
If TotalPadre Then
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = String.Format("Total {0}:", Drow("Nombre").ToString)
|
||||
WSReporte.Cell(CuerrentRow, 5).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
Else
|
||||
TotalPadre = True
|
||||
WSReporte.Cell(CuerrentRow, 5).Style.Font.Bold = False
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = "Total:"
|
||||
WSReporte.Cell(CuerrentRow, 5).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
End If
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 8).Value = Drow("Cargos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 9).Value = Drow("Abonos").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("SaldoActual").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
|
||||
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
|
||||
If Drow("Cargos").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 8).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("Abonos").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 9).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("SaldoActual").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 1).Value = Drow("Fecha").ToString
|
||||
WSReporte.Cell(CuerrentRow, 2).Value = Drow("TipoPoliza").ToString
|
||||
WSReporte.Cell(CuerrentRow, 3).Value = Drow("Folio").ToString
|
||||
WSReporte.Cell(CuerrentRow, 4).Value = Drow("Concepto").ToString
|
||||
WSReporte.Cell(CuerrentRow, 5).Value = Drow("Referencia").ToString
|
||||
WSReporte.Cell(CuerrentRow, 6).Value = Drow("ReferenciaAdmin").ToString
|
||||
WSReporte.Cell(CuerrentRow, 7).Value = Drow("SubProyecto").ToString
|
||||
|
||||
TotalPadre = False
|
||||
|
||||
WSReporte.Range($"A{CuerrentRow }:J{CuerrentRow }").Style.Font.Bold = False
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("Folio").ToString
|
||||
|
||||
WSReporte.Cell(CuerrentRow, 8).Value = Drow("CargosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 9).Value = Drow("AbonosMovto").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
WSReporte.Cell(CuerrentRow, 10).Value = Drow("Saldo").ToString.FormatoNumero(If("1" = "1", 2, 4))
|
||||
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Right)
|
||||
|
||||
WSReporte.Range($"H{CuerrentRow}:J{CuerrentRow}").Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
|
||||
If Drow("CargosMovto").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 8).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("AbonosMovto").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 9).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
If Drow("Saldo").ToString.ToDecimal < 0 Then
|
||||
WSReporte.Cell(CuerrentRow, 10).Style.Font.FontColor = XLColor.Red
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
CuerrentRow = CuerrentRow + 1
|
||||
Next
|
||||
|
||||
|
||||
For xy As Integer = 6 To CuerrentRow
|
||||
WSReporte.Cell(xy, 10).Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
WSReporte.Cell(xy, 1).Style.Border.LeftBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
Next
|
||||
|
||||
'CuerrentRow = CuerrentRow + 1
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 1).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
'WSReporte.Cell(CuerrentRow, 2).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Value = $"Saldos Iniciales{vbCrLf}Deudor Acreedor"
|
||||
'WSReporte.Cell(CuerrentRow, 4).Value = $"Cargos"
|
||||
'WSReporte.Cell(CuerrentRow, 5).Value = $"Abonos"
|
||||
'WSReporte.Cell(CuerrentRow, 6).Value = $"Saldo Actuales{vbCrLf} Deudor Acreedo"
|
||||
|
||||
|
||||
|
||||
WSReporte.Range($"A{CuerrentRow}:J{CuerrentRow}").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
|
||||
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Font.Bold = True
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Font.FontSize = 10
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Border.TopBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
'WSReporte.Range($"A{CuerrentRow}:F{CuerrentRow}").Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
'CuerrentRow = CuerrentRow + 1
|
||||
|
||||
'Dim ultimaFila As DataRow = DtDatos.Rows(DtDatos.Rows.Count - 1)
|
||||
|
||||
'Dim LastSaldoID As Decimal = ultimaFila("SaldoID").ToString.ToDecimal
|
||||
'Dim LastTotalAbonos As Decimal = ultimaFila("TotalAbonos").ToString.ToDecimal
|
||||
'Dim LastTotalCargos As Decimal = ultimaFila("TotalCargos").ToString.ToDecimal
|
||||
'Dim LastSaldoAD As Decimal = ultimaFila("SaldoAD").ToString.ToDecimal
|
||||
'Dim LastSaldoIA As Decimal = ultimaFila("SaldoIA").ToString.ToDecimal
|
||||
'Dim LastSaldoAA As Decimal = ultimaFila("SaldoAA").ToString.ToDecimal
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 2).Value = "Sumas Iguales"
|
||||
'WSReporte.Cell(CuerrentRow, 3).Value = LastSaldoID
|
||||
'WSReporte.Cell(CuerrentRow, 4).Value = LastTotalCargos
|
||||
'WSReporte.Cell(CuerrentRow, 5).Value = LastTotalAbonos
|
||||
'WSReporte.Cell(CuerrentRow, 6).Value = LastSaldoAD
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 4).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 5).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 6).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
|
||||
CuerrentRow = CuerrentRow + 1
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Value = LastSaldoIA
|
||||
'WSReporte.Cell(CuerrentRow, 6).Value = LastSaldoAA
|
||||
|
||||
|
||||
'WSReporte.Cell(CuerrentRow, 3).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
'WSReporte.Cell(CuerrentRow, 6).Style.NumberFormat.Format = "#,##0.00; [Black] - #,##0.00 ;""-"""
|
||||
|
||||
'WSReporte.Range($"B{CuerrentRow}:F{CuerrentRow}").Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium
|
||||
|
||||
WSReporte.PageSetup.PrintAreas.Add($"A1:G{CuerrentRow + 0 + 1}")
|
||||
WSReporte.PageSetup.Margins.Top = 0.3
|
||||
WSReporte.PageSetup.Margins.Left = 0.8
|
||||
WSReporte.PageSetup.Margins.Right = 0.8
|
||||
WSReporte.PageSetup.FitToPages(1, 1)
|
||||
|
||||
WBReporte.Worksheet(1).CopyTo(WBAnexoSalvar, "LibroMayor")
|
||||
|
||||
Return WBReporte.Worksheet(1)
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Public Function CloneGridView(ByVal originalGridView As GridView) As GridView
|
||||
' Crear un nuevo GridView
|
||||
Dim clonedGridView As New GridView()
|
||||
|
||||
' Copiar propiedades básicas del GridView
|
||||
clonedGridView.ID = originalGridView.ID & "_Copy"
|
||||
clonedGridView.AutoGenerateColumns = originalGridView.AutoGenerateColumns
|
||||
clonedGridView.CssClass = originalGridView.CssClass
|
||||
clonedGridView.GridLines = originalGridView.GridLines
|
||||
clonedGridView.HeaderStyle.CopyFrom(originalGridView.HeaderStyle)
|
||||
clonedGridView.RowStyle.CopyFrom(originalGridView.RowStyle)
|
||||
clonedGridView.AlternatingRowStyle.CopyFrom(originalGridView.AlternatingRowStyle)
|
||||
clonedGridView.FooterStyle.CopyFrom(originalGridView.FooterStyle)
|
||||
clonedGridView.EmptyDataText = originalGridView.EmptyDataText
|
||||
clonedGridView.ShowHeader = originalGridView.ShowHeader
|
||||
clonedGridView.ShowFooter = originalGridView.ShowFooter
|
||||
|
||||
' Copiar columnas
|
||||
For Each col As DataControlField In originalGridView.Columns
|
||||
' Crear una copia de la columna
|
||||
Dim clonedCol As DataControlField = CType(Activator.CreateInstance(col.GetType()), DataControlField)
|
||||
clonedCol.HeaderStyle.CopyFrom(col.HeaderStyle)
|
||||
clonedCol.ItemStyle.CopyFrom(col.ItemStyle)
|
||||
clonedCol.FooterStyle.CopyFrom(col.FooterStyle)
|
||||
|
||||
' Si es un BoundField, copiar propiedades específicas
|
||||
If TypeOf col Is BoundField Then
|
||||
Dim originalBoundField As BoundField = CType(col, BoundField)
|
||||
Dim clonedBoundField As BoundField = CType(clonedCol, BoundField)
|
||||
|
||||
clonedBoundField.DataField = originalBoundField.DataField
|
||||
clonedBoundField.HeaderText = originalBoundField.HeaderText
|
||||
clonedBoundField.SortExpression = originalBoundField.SortExpression
|
||||
clonedBoundField.ReadOnly = originalBoundField.ReadOnly
|
||||
End If
|
||||
|
||||
' Añadir la columna clonada al nuevo GridView
|
||||
clonedGridView.Columns.Add(clonedCol)
|
||||
Next
|
||||
|
||||
' Copiar el DataSource (opcional, dependiendo de si deseas copiar los datos actuales)
|
||||
clonedGridView.DataSource = originalGridView.DataSource
|
||||
clonedGridView.DataBind()
|
||||
|
||||
Return clonedGridView
|
||||
End Function
|
||||
|
||||
|
||||
Public Overrides Sub VerifyRenderingInServerForm(control As Control)
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
End Class
|
||||
116
Contabilidad/LibroMayorCI.aspx
Normal file
116
Contabilidad/LibroMayorCI.aspx
Normal file
@@ -0,0 +1,116 @@
|
||||
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="LibroMayorCI.aspx.vb" Inherits="Contabilidad_LibroMayorCI" %>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="Css" runat="server">
|
||||
<style>
|
||||
.truncate {
|
||||
width: 300px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
</style>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="H" runat="Server">
|
||||
<asp:UpdatePanel runat="server">
|
||||
<ContentTemplate>
|
||||
<li>
|
||||
<asp:LinkButton ID="ImgExcel" Visible="false" runat="server"><i class="fa fa-ad-excel"></i> Generar EXCEL</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="Imprimir" Visible="false" runat="server"><i class="fa fa-print"></i> Imprimir</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="ImgExcel" />
|
||||
<asp:PostBackTrigger ControlID="Imprimir" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="E" runat="Server">
|
||||
Libro Mayor
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="C" runat="Server">
|
||||
|
||||
|
||||
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
|
||||
<div class="portlet solid grey-cascade portlet-filter">
|
||||
<div class="portlet-title portlet-filterT smalltitle">
|
||||
<div class="tools">
|
||||
<asp:Button ID="BtnConsultar" runat="server" CssClass="btn btn-primary" Text="Consultar" Width="100px" OnClick="BtnConsultar_Click" Enabled="false"/>
|
||||
</div>
|
||||
<div class="titlefiltros caption ">
|
||||
<div class="row">
|
||||
<label class="col-md-1" style="width: 90px; padding-right: 2px;">Fecha Inicio:</label>
|
||||
<div class="col-md-2" style="width: 140px;">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 80px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtFechaDel" runat="server" CssClass="form-control" Width="99%" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="ImgCalendarioDel" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaDel" runat="server" TargetControlID="TxtFechaDel" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender ID="CalendarioDel" runat="server" TargetControlID="TxtFechaDel" PopupButtonID="ImgCalendarioDel" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
|
||||
<asp:CompareValidator ID="CVFechaDel" runat="server" ControlToValidate="TxtFechaDel" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCOFecha2Del" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaDel" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<label class="col-md-1" style="width: 80px; padding-right: 2px;">Fecha Fin:</label>
|
||||
<div class="col-md-2" style="width: 140px;">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 80px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtFechaAl" runat="server" CssClass="form-control" Width="99%" CausesValidation="true" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="ImgCalendarioAl" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MEEFechaAl" runat="server" TargetControlID="TxtFechaAl" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender ID="CalendarioAl" runat="server" TargetControlID="TxtFechaAl" PopupButtonID="ImgCalendarioAl" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
|
||||
<asp:CompareValidator ID="CVFechaAl" runat="server" ControlToValidate="TxtFechaAl" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCOFecha2Al" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaAl" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<%-- <label class="col-md-2" style="width: 60px;">Moneda:</label>
|
||||
<div class="col-md-1">
|
||||
<asp:DropDownList ID="DdlMoneda" CssClass="select2me" runat="server" DataTextField="Moneda" DataValueField="CveMoneda" TabIndex="5" ClientIDMode="Static">
|
||||
</asp:DropDownList>
|
||||
</div>--%>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
<%-- <br />
|
||||
<div class="text-right">Buscar :
|
||||
<input type="text" id="Buscar" style="margin-right: 30px;" />
|
||||
</div>--%>
|
||||
|
||||
|
||||
<asp:UpdatePanel ID="UpDatos" UpdateMode="Conditional" runat="server" style="margin-left: 15px; margin-right: 15px;">
|
||||
<ContentTemplate>
|
||||
|
||||
<asp:GridView ID="GvDatos" CssClass="table table-striped table-hover Widthall" GridLines="None" AutoGenerateColumns="False" runat="server">
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Fecha" DataField="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
|
||||
<asp:BoundField HeaderText="Tipo" DataField="TipoPol" />
|
||||
<asp:BoundField HeaderText="Poliza" DataField="Folio" />
|
||||
<asp:BoundField HeaderText="Descripción" DataField="Concepto" />
|
||||
<asp:BoundField HeaderText="Cargos" DataField="Cargos" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,##0.00}" />
|
||||
<asp:BoundField HeaderText="Abonos" DataField="Abonos" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,##0.00}" />
|
||||
<asp:BoundField HeaderText="Saldo" DataField="Saldo" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,##0.00}" />
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="JS" runat="Server">
|
||||
</asp:Content>
|
||||
|
||||
220
Contabilidad/LibroMayorCI.aspx.vb
Normal file
220
Contabilidad/LibroMayorCI.aspx.vb
Normal file
@@ -0,0 +1,220 @@
|
||||
Option Explicit On
|
||||
Option Strict On
|
||||
|
||||
Imports System.Data
|
||||
Imports Extensiones
|
||||
Imports Microsoft.Reporting.WebForms
|
||||
|
||||
Partial Class Contabilidad_LibroMayorCI
|
||||
Inherits ClsPaginas
|
||||
|
||||
#Region "PROPIEDADES"
|
||||
Private Property DtDatos As DataTable
|
||||
Get
|
||||
DtDatos = DirectCast(ViewState("DtDatos"), DataTable)
|
||||
End Get
|
||||
|
||||
Set(ByVal value As DataTable)
|
||||
ViewState("DtDatos") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property FechaInicio As Date
|
||||
Get
|
||||
FechaInicio = ViewState("FechaInicio").ToString.ToDate
|
||||
End Get
|
||||
Set(value As Date)
|
||||
ViewState("FechaInicio") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property FechaFin As Date
|
||||
Get
|
||||
FechaFin = ViewState("FechaFin").ToString.ToDate
|
||||
End Get
|
||||
Set(value As Date)
|
||||
ViewState("FechaFin") = value
|
||||
End Set
|
||||
End Property
|
||||
#End Region
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
If Not Page.IsPostBack Then
|
||||
|
||||
|
||||
|
||||
InicializaValores()
|
||||
|
||||
If UsuarioActual.Empresa.UsaAC Then
|
||||
BtnConsultar.Enabled = True
|
||||
Else
|
||||
|
||||
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
|
||||
BtnConsultar.Enabled = True
|
||||
Else
|
||||
Alert("La empresa no usa Armonización Contable", TipoMensaje.MsgError)
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub InicializaValores()
|
||||
|
||||
TxtFechaDel.Text = $"01/01/{NowADS().Year}"
|
||||
TxtFechaAl.Text = NowADS().ToShortDateString
|
||||
|
||||
'DdlMoneda.DataSource = GlobalDTMonedas
|
||||
'DdlMoneda.DataBind()
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
|
||||
CargaDatos()
|
||||
End Sub
|
||||
|
||||
#Region "C A R G A - D A T O S"
|
||||
Private Sub CargaDatos()
|
||||
|
||||
FechaInicio = If(IsDate(TxtFechaDel.Text), TxtFechaDel.Text.ToDate, MinFecha)
|
||||
FechaFin = If(IsDate(TxtFechaAl.Text), TxtFechaAl.Text.ToDate, MaxFecha)
|
||||
|
||||
|
||||
|
||||
|
||||
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
|
||||
|
||||
|
||||
Dim ObjConta As New ClsContabilidad
|
||||
If ObjConta.GetLibroMayorSIG(-1, FechaInicio, FechaFin, 1, UsuarioActual.CveEmpresa) Then
|
||||
DtDatos = ObjConta.DtResultados
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
End If
|
||||
ObjConta.Dispose()
|
||||
|
||||
|
||||
Else
|
||||
Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
|
||||
If ObjConta.GetLibroMayor(1, FechaInicio, FechaFin, 1) Then
|
||||
DtDatos = ObjConta.DtResultados
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
End If
|
||||
ObjConta.Dispose()
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If DtDatos IsNot Nothing Then
|
||||
ImgExcel.Visible = True
|
||||
Imprimir.Visible = True
|
||||
CargaGrid()
|
||||
Else
|
||||
ImgExcel.Visible = False
|
||||
Imprimir.Visible = False
|
||||
End If
|
||||
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
|
||||
#Region "G R I D - GV DATOS"
|
||||
Private Sub CargaGrid()
|
||||
GvDatos.DataSource = DtDatos
|
||||
GvDatos.DataBind()
|
||||
UpDatos.Update()
|
||||
End Sub
|
||||
Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
|
||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||
|
||||
|
||||
'0 Fecha
|
||||
'1 TipoPol
|
||||
'2 Folio
|
||||
'3 Concepto
|
||||
'4 Cargos
|
||||
'5 Abonos
|
||||
'6 Saldo
|
||||
|
||||
'CABECERA
|
||||
If e.Row.DBCampo("TipoRenglon") = "1" Then
|
||||
e.Row.Font.Bold = True
|
||||
e.Row.Cells(0).Text = ""
|
||||
e.Row.Cells(1).Text = ""
|
||||
e.Row.Cells(2).Text = ""
|
||||
e.Row.Cells(3).Text = e.Row.DBCampo("Nombre")
|
||||
e.Row.Cells(4).Text = ""
|
||||
e.Row.Cells(5).Text = "Saldo inicial:"
|
||||
e.Row.Cells(6).Text = e.Row.DBCampo("SaldoInicial").FormatoNumero
|
||||
e.Row.CssClass = "Totales"
|
||||
End If
|
||||
|
||||
'DETALLE
|
||||
If e.Row.DBCampo("TipoRenglon") = "2" Then
|
||||
|
||||
End If
|
||||
|
||||
'SUBTOTAL
|
||||
If e.Row.DBCampo("TipoRenglon") = "3" Then
|
||||
e.Row.Font.Bold = True
|
||||
e.Row.Cells(1).Text = ""
|
||||
e.Row.Cells(2).Text = ""
|
||||
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Right
|
||||
e.Row.Cells(3).Text = "SubTotal:"
|
||||
e.Row.Cells(6).Text = ""
|
||||
e.Row.CssClass = "SubTotales"
|
||||
End If
|
||||
|
||||
'TOTAL
|
||||
If e.Row.DBCampo("TipoRenglon") = "4" Then
|
||||
e.Row.Font.Bold = True
|
||||
e.Row.Cells(0).Text = ""
|
||||
e.Row.Cells(1).Text = ""
|
||||
e.Row.Cells(2).Text = ""
|
||||
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Right
|
||||
e.Row.Cells(3).Text = $"Total ({e.Row.DBCampo("Nombre")}):"
|
||||
e.Row.Cells(6).Text = ""
|
||||
e.Row.CssClass = "Totales"
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
#Region " IMPRIMIR "
|
||||
|
||||
#End Region
|
||||
|
||||
Protected Sub Imprimir_click(sender As Object, e As EventArgs) Handles Imprimir.Click
|
||||
FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", NowADS(), TxtFechaDel.Text.ToDate)
|
||||
FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", NowADS(), TxtFechaAl.Text.ToDate)
|
||||
DtDatos = DtDatos
|
||||
ImprimirReporte()
|
||||
End Sub
|
||||
|
||||
Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
|
||||
FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", NowADS(), TxtFechaDel.Text.ToDate)
|
||||
FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", NowADS(), TxtFechaAl.Text.ToDate)
|
||||
DtDatos = DtDatos
|
||||
ImprimirReporte("EXCEL")
|
||||
End Sub
|
||||
|
||||
Private Sub ImprimirReporte(Optional Formato As String = "PDF")
|
||||
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
|
||||
'Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
||||
|
||||
Dim lista = New List(Of CrystalParametro)
|
||||
lista.Add(New CrystalParametro("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
lista.Add(New CrystalParametro("FechaInicio", FechaInicio.ToString("dd/MM/yyyy")))
|
||||
lista.Add(New CrystalParametro("FechaFin", FechaFin.ToString("dd/MM/yyyy")))
|
||||
lista.Add(New CrystalParametro("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
lista.Add(New CrystalParametro("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
|
||||
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(Server.MapPath("~/Empresas/Grales/Formatos/LibroMayor.rpt"), DtDatos, lista, "LibroMayor", Formato), "LibroMayor", Formato)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -28,7 +28,8 @@
|
||||
</div>
|
||||
<div class="titlefiltros caption">
|
||||
<div class="row">
|
||||
<div class="col-md-1 truncate"><asp:Label runat="server" ID="LblFiltroSubProyecto">SubProyecto:</asp:Label></div>
|
||||
<div class="col-md-1 truncate">
|
||||
<asp:Label runat="server" ID="LblFiltroSubProyecto">SubProyecto:</asp:Label></div>
|
||||
<div class="col-md-4">
|
||||
<asp:DropDownList ID="DdlFiltroSubProyecto" CssClass="form-control select2me" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Width="70%"></asp:DropDownList>
|
||||
</div>
|
||||
@@ -89,9 +90,9 @@
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:BoundField DataField="Estatus" HeaderText="Estatus" />
|
||||
<asp:TemplateField HeaderText="">
|
||||
<asp:TemplateField HeaderText="">
|
||||
<ItemTemplate>
|
||||
<asp:HyperLink ID="HplDif" runat="server" NavigateUrl='<%# Eval("CveInventarioFisico", "~/Inventarios/RepAnomalias.aspx?CveInventarioFisico={0}") %>' Text="Dif."></asp:HyperLink>
|
||||
<asp:HyperLink ID="HplDif" runat="server" NavigateUrl='<%# Eval("CveInventarioFisico", "~/Inventarios/RepAnomalias.aspx?CveInventarioFisico={0}") %>' Text="Dif."></asp:HyperLink>
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
|
||||
@@ -218,7 +219,7 @@
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<asp:GridView ID="GvClasificacion" runat="server" GridLines="None" DataKeyNames="CveClasificacion,Clasificacion" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-heightfijo="150" data-height="150" Width="380px" AutoGenerateColumns="False" ToolTip="Listado de Clasificaciones" >
|
||||
<asp:GridView ID="GvClasificacion" runat="server" GridLines="None" DataKeyNames="CveClasificacion,Clasificacion" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-heightfijo="150" data-height="150" Width="380px" AutoGenerateColumns="False" ToolTip="Listado de Clasificaciones">
|
||||
<Columns>
|
||||
<asp:BoundField DataField="Clasificacion" HeaderText="Clasificacion" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
|
||||
@@ -254,8 +255,7 @@
|
||||
<div class="row">
|
||||
<div class="col-md-10">
|
||||
<label for="<%= DdlProductosServicios.ClientID.ToString()%>">Productos:</label>
|
||||
<ADS:Dropdownlost ID="DdlProductosServicios" CssStyle="width: 95%;" runat="server" DataTextField="PSCodigo" DataValueField="CvePS" >
|
||||
</ADS:Dropdownlost>
|
||||
<ADS:Dropdownlost ID="DdlProductosServicios" CssStyle="width: 95%;" runat="server" DataTextField="PSCodigo" DataValueField="CvePS"></ADS:Dropdownlost>
|
||||
</div>
|
||||
|
||||
<div class="col-md-2" style="margin-top: 20px;">
|
||||
@@ -263,11 +263,22 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row" id="DivSelectiva" runat="server" visible="false">
|
||||
<div class="col-md-10">
|
||||
<label for="<%= DdlSelectiva.ClientID.ToString()%>">Selectiva:</label><br />
|
||||
<asp:DropDownList ID="DdlSelectiva" CssClass="form-control select2me" Width="95%" runat="server" DataTextField="Selectiva" DataValueField="CveSelectiva"></asp:DropDownList>
|
||||
</div>
|
||||
|
||||
<div class="col-md-2" style="margin-top: 20px;">
|
||||
<asp:Button for="DdlSelectiva" ID="BtnSelectiva" runat="server" CssClass="btn btn-primary btn-sm" Text="+" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<asp:GridView ID="GvPS" runat="server" GridLines="None" DataKeyNames="CvePS" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-heightfijo="150" data-height="150" Width="380px" AutoGenerateColumns="False" EmptyDataText="">
|
||||
<Columns>
|
||||
<asp:BoundField DataField="CodigoPS" HeaderText="Productos" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="310px" HeaderStyle-Width="310px"/>
|
||||
<asp:BoundField DataField="CodigoPS" HeaderText="Productos" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="310px" HeaderStyle-Width="310px" />
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos" ItemStyle-Width="70px" HeaderStyle-Width="70px">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" OnClick="DeleteProductosServicios_Click" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
|
||||
@@ -314,7 +325,7 @@
|
||||
<asp:BoundField DataField="Clasificacion" HeaderText="Clasificacion" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="LnkEliminarClasificacionExcluida" OnClick="LnkEliminarClasificacionExcluida_Click" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
|
||||
<asp:LinkButton ID="LnkEliminarClasificacionExcluida" OnClick="LnkEliminarClasificacionExcluida_Click" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
@@ -345,11 +356,10 @@
|
||||
<div class="row">
|
||||
<div class="col-md-10">
|
||||
<label for="<%= DdlPSExcluye.ClientID.ToString()%>">Productos:</label>
|
||||
<ADS:Dropdownlost ID="DdlPSExcluye" CssStyle="width: 95%;" runat="server" DataTextField="PSCodigo" DataValueField="CvePS" >
|
||||
</ADS:Dropdownlost>
|
||||
<ADS:Dropdownlost ID="DdlPSExcluye" CssStyle="width: 95%;" runat="server" DataTextField="PSCodigo" DataValueField="CvePS"></ADS:Dropdownlost>
|
||||
</div>
|
||||
|
||||
<div class="col-md-2" style="margin-top:20px;">
|
||||
<div class="col-md-2" style="margin-top: 20px;">
|
||||
<asp:Button for="DdlPSExcluye" ID="BtnAddPSExcluye" runat="server" CssClass="btn btn-primary btn-sm" Text="+" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -390,23 +400,22 @@
|
||||
<div class="row">
|
||||
<div class="col-md-10">
|
||||
<label for="<%= DdlProveedor.ClientID.ToString()%>">Proveedor:</label>
|
||||
<ADS:Dropdownlost ID="DdlProveedor" CssStyle="width: 95%;" runat="server" DataTextField="RazonSocial" DataValueField="CveProveedor" >
|
||||
</ADS:Dropdownlost>
|
||||
<ADS:Dropdownlost ID="DdlProveedor" CssStyle="width: 95%;" runat="server" DataTextField="RazonSocial" DataValueField="CveProveedor"></ADS:Dropdownlost>
|
||||
</div>
|
||||
<div class="col-md-2" style="margin-top:20px;">
|
||||
<div class="col-md-2" style="margin-top: 20px;">
|
||||
<asp:Button for="DdlProveedor" ID="BtnAgregarProveedor" runat="server" CssClass="btn btn-primary btn-sm" Text="+" />
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<asp:GridView ID="GvProveedor" runat="server" GridLines="None" DataKeyNames="CveProveedor,RazonSocial" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-heightfijo="150" data-height="150" Width="380px" AutoGenerateColumns="False" ToolTip="Listado de Proveedores" >
|
||||
<asp:GridView ID="GvProveedor" runat="server" GridLines="None" DataKeyNames="CveProveedor,RazonSocial" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-heightfijo="150" data-height="150" Width="380px" AutoGenerateColumns="False" ToolTip="Listado de Proveedores">
|
||||
<Columns>
|
||||
<asp:BoundField DataField="RazonSocial" HeaderText="Proveedor" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" CausesValidation="False" OnClick="DeleteProveedor_Click" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si"/>
|
||||
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" CausesValidation="False" OnClick="DeleteProveedor_Click" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
@@ -420,7 +429,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" style="border-top: 1px solid #e5e5e5;">
|
||||
<div class="col-md-12" style="margin-top:15px;">
|
||||
<div class="col-md-12" style="margin-top: 15px;">
|
||||
<div class="col-md-6" runat="server" id="divUsuarios" visible="false">
|
||||
<div class="portlet light xspadding bordered" id="idUsuarios">
|
||||
<div class="portlet-title">
|
||||
@@ -438,12 +447,12 @@
|
||||
<div class="row">
|
||||
<div class="col-md-10">
|
||||
<label for="<%= DdlUsuarios.ClientID.ToString()%>">Usuarios:</label>
|
||||
<asp:DropDownList ID="DdlUsuarios" CssClass="form-control select2me" runat="server" DataTextField="Nombre" DataValueField="CveUsuario" Width="100%">
|
||||
<asp:DropDownList ID="DdlUsuarios" CssClass="form-control select2me" runat="server" DataTextField="Nombre" DataValueField="CveUsuario" Width="100%">
|
||||
</asp:DropDownList>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-2" style="margin-top:20px;">
|
||||
<div class="col-md-2" style="margin-top: 20px;">
|
||||
<asp:Button for="DdlUsuarios" ID="btnAddUsuarios" runat="server" CssClass="btn btn-primary btn-sm" Text="+" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -460,12 +469,12 @@
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Bloqueado">
|
||||
<ItemTemplate>
|
||||
<asp:CheckBox ID="chkBloqueado" runat="server" />
|
||||
<asp:CheckBox ID="chkBloqueado" runat="server" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Cerrado">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="imgCerrar" runat="server" AlternateText="Cerrar" OnClick="imgCerrar_Click" CausesValidation="False" CssClass="btn black" Text="<i class='fa fa-lock'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" style="padding-left: 7px;padding-bottom: 1px;padding-top: 1px;padding-right: 7px; color:black;"/>
|
||||
<asp:LinkButton ID="imgCerrar" runat="server" AlternateText="Cerrar" OnClick="imgCerrar_Click" CausesValidation="False" CssClass="btn black" Text="<i class='fa fa-lock'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" Style="padding-left: 7px; padding-bottom: 1px; padding-top: 1px; padding-right: 7px; color: black;" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
@@ -483,11 +492,11 @@
|
||||
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<asp:CheckBox runat="server" ID="chkUsarApp" AutoPostBack="true" Text="Usar en App:"/>
|
||||
<asp:CheckBox runat="server" ID="chkUsarApp" AutoPostBack="true" Text="Usar en App:" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel ID="UpFooter" runat="server" UpdateMode="Conditional">
|
||||
|
||||
@@ -83,6 +83,11 @@ Partial Class Inventarios_InventarioFisico
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
If Not IsPostBack Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then
|
||||
DivSelectiva.Visible = True
|
||||
CargaSelectivas()
|
||||
End If
|
||||
|
||||
CargaDdlSubProyectos()
|
||||
CargaDdlClasificacion()
|
||||
CargDdlProveedor()
|
||||
@@ -100,6 +105,17 @@ Partial Class Inventarios_InventarioFisico
|
||||
End Sub
|
||||
|
||||
#Region "CARGAS"
|
||||
Private Sub CargaSelectivas()
|
||||
Using ObjPS As New ClsProductosServicios
|
||||
If ObjPS.GetSelectiva(-1, UsuarioActual.CveEmpresa) Then
|
||||
DdlSelectiva.DataSource = ObjPS.DtResultados
|
||||
End If
|
||||
End Using
|
||||
DdlSelectiva.DataBind()
|
||||
DdlSelectiva.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub CargaDatos(CveEmpresa As Integer)
|
||||
Dim Inventario As New ClsInventarios
|
||||
Dim dt As New DataTable
|
||||
@@ -261,6 +277,35 @@ Partial Class Inventarios_InventarioFisico
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub BtnSelectiva_Click(sender As Object, e As EventArgs) Handles BtnSelectiva.Click
|
||||
If DdlSelectiva.SelectedValue = "-1" Then
|
||||
Alert("Tienes seleccionada la opcion 'Seleccione'.", TipoMensaje.MsgInformacion)
|
||||
GvPS.DataSource = Nothing
|
||||
GvPS.DataBind()
|
||||
tDTPS.Rows.Clear()
|
||||
Else
|
||||
If tDTPS IsNot Nothing Then
|
||||
tDTPS.Rows.Clear()
|
||||
End If
|
||||
|
||||
Using ObjPS As New ClsProductosServicios
|
||||
If ObjPS.GetPSSelectiva(DdlSelectiva.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa) Then
|
||||
For Each RowPS As DataRow In ObjPS.DtResultados.Rows
|
||||
Dim Row As DataRow = tDTPS.NewRow
|
||||
Row("CvePS") = RowPS("CvePS")
|
||||
Row("CodigoPS") = RowPS("CodigoPS")
|
||||
|
||||
tDTPS.Rows.Add(Row)
|
||||
Next
|
||||
End If
|
||||
End Using
|
||||
|
||||
GvPS.DataSource = tDTPS
|
||||
GvPS.DataBind()
|
||||
UpProductosServicios.Update()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub BtnAddPSExcluye_Click(sender As Object, e As EventArgs) Handles BtnAddPSExcluye.Click
|
||||
If DdlPSExcluye.SelectedValue = "-1" Then
|
||||
Alert("Tienes seleccionada la opcion 'Todos'.", TipoMensaje.MsgInformacion)
|
||||
|
||||
@@ -54,7 +54,7 @@ Partial Class Inventarios_Default
|
||||
DivListasPrecios2.Visible = True
|
||||
End If
|
||||
|
||||
If UsuarioActual.CveRol = 1 Then
|
||||
If UsuarioActual.TienePermisoProceso(387) Then
|
||||
LnkBsucarSerie.Visible = True
|
||||
End If
|
||||
|
||||
|
||||
@@ -19,14 +19,25 @@
|
||||
<li>
|
||||
<a target="_blank" class="ayuda" href="../Documentacion/DocumentacionInventarios.aspx#RecepcionAlmacen"> </a>
|
||||
</li>
|
||||
<li>
|
||||
<asp:HyperLink ID="HlAgregarExcel" NavigateUrl="#" Visible="true" data-toggle="modal" data-target="#DivCargaExcel" runat="server"><i class='fa fa-server'></i> Cargar Excel</asp:HyperLink>
|
||||
</li>
|
||||
|
||||
<%--
|
||||
<li>
|
||||
<asp:HyperLink ID="HlAgregarExcel" NavigateUrl="#" Visible="true" data-toggle="modal" data-target="#DivCargaExcel" runat="server"><i class='fa fa-server'></i> Cargar Excel</asp:HyperLink>
|
||||
</li>
|
||||
--%>
|
||||
|
||||
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional" RenderMode="Inline">
|
||||
<ContentTemplate>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkAgregarExcel" Visible="true" OnClick="LnkAgregarExcel_Click" runat="server"><i class='fa fa-server'></i> Cargar Excel</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
<asp:UpdatePanel ID="uppCargaBitacora" runat="server" UpdateMode="Conditional" RenderMode="Inline">
|
||||
<ContentTemplate>
|
||||
<li>
|
||||
<asp:LinkButton ID="HplCargaBitacora" runat="server" Visible="false" OnClick="HplCargaBitacora_Click" Style="color: #686868;"><i class="fa fa-file-load-o" style="color: #686868;"></i> Cargar Bitácora</asp:LinkButton>
|
||||
<asp:LinkButton ID="HplCargaBitacora" runat="server" Visible="false" OnClick="HplCargaBitacora_Click" Style="color: #686868;"><i class="fa fa-book" aria-hidden="true"></i> Cargar Bitácora</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
@@ -7,6 +7,7 @@ Imports System.Text
|
||||
Imports Extensiones
|
||||
Imports GemBox.Spreadsheet
|
||||
Imports Microsoft.Reporting.WebForms
|
||||
Imports Org.BouncyCastle.Asn1.X509
|
||||
|
||||
Partial Class Inventarios_RecepcionAlmacen
|
||||
Inherits ClsPaginas
|
||||
@@ -154,12 +155,21 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
ViewState("PUSerie") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property CveConsecSerie As Integer
|
||||
'Private Property CveConsecSerie As Integer
|
||||
' Get
|
||||
' Return CType(ViewState("CveConsecSerie"), Integer)
|
||||
' End Get
|
||||
' Set(value As Integer)
|
||||
' ViewState("CveConsecSerie") = value
|
||||
' End Set
|
||||
'End Property
|
||||
|
||||
Private Property CveCompraDetalle As Integer
|
||||
Get
|
||||
Return CType(ViewState("CveConsecSerie"), Integer)
|
||||
Return CType(ViewState("CveCompraDetalle"), Integer)
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveConsecSerie") = value
|
||||
ViewState("CveCompraDetalle") = value
|
||||
End Set
|
||||
End Property
|
||||
Private Property TotalGV As Decimal
|
||||
@@ -412,6 +422,11 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End Property
|
||||
Private Property ArchivoBitacora As String
|
||||
Get
|
||||
|
||||
If ViewState("ArchivoBitacora") Is Nothing Then
|
||||
ViewState("ArchivoBitacora") = ""
|
||||
End If
|
||||
|
||||
Return CType(ViewState("ArchivoBitacora"), String)
|
||||
End Get
|
||||
Set(value As String)
|
||||
@@ -420,6 +435,10 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End Property
|
||||
Private Property ArchivoBitacoraDetalle As String
|
||||
Get
|
||||
If ViewState("ArchivoBitacoraDetalle") Is Nothing Then
|
||||
ViewState("ArchivoBitacoraDetalle") = ""
|
||||
End If
|
||||
|
||||
Return CType(ViewState("ArchivoBitacoraDetalle"), String)
|
||||
End Get
|
||||
Set(value As String)
|
||||
@@ -1461,11 +1480,12 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
|
||||
'If e.Row.DBCampo("CveMetodoInventario").ToString = "5" Then
|
||||
e.Row.FCButton("BtnSerie").Visible = True
|
||||
e.Row.FCButton("BtnSerie").CommandArgument = String.Format("{0}°{1}°{2}°{3}°{4}°{5}", e.Row.DBCampo("CvePS"), e.Row.DBCampo("CveUM"), e.Row.DBCampo("PU"), e.Row.DBCampo("PS"), e.Row.DBCampo("CantidadF"), e.Row.DBCampo("Consec"))
|
||||
e.Row.FCButton("BtnSerie").CommandArgument = String.Format("{0}°{1}°{2}°{3}°{4}°{5}°{6}", e.Row.DBCampo("CvePS"), e.Row.DBCampo("CveUM"), e.Row.DBCampo("PU"), e.Row.DBCampo("PS"), e.Row.DBCampo("CantidadF"), e.Row.DBCampo("Consec"), e.Row.DBCampo("CveCompraDetalle"))
|
||||
|
||||
e.Row.FCTextBox("TbCantidadF").Enabled = False
|
||||
e.Row.FCCheckBox("cbInv").Enabled = False
|
||||
Dim Contador As Integer = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", e.Row.DataKey("Consec"))).Rows.Count
|
||||
'Dim Contador As Integer = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", e.Row.DataKey("Consec"))).Rows.Count
|
||||
Dim Contador As Integer = DtDatosDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", e.Row.DataKey("CveCompraDetalle"))).Rows.Count
|
||||
e.Row.FCTextBox("TbCantidadF").Text = Contador.ToString
|
||||
|
||||
'' Empresa Acumuladores
|
||||
@@ -1617,7 +1637,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
TdSeriePS.Visible = True
|
||||
TxtSeriePS.Focus()
|
||||
|
||||
CveConsecSerie = Gvr.DataKey("Consec").ToEntero
|
||||
'CveConsecSerie = Gvr.DataKey("Consec").ToEntero
|
||||
CveCompraDetalle = Gvr.DataKey("CveCompraDetalle").ToEntero
|
||||
CvePSSerie = Gvr.DataKey("CvePS").ToEntero
|
||||
CveUMSerie = Gvr.DataKey("CveUM").ToEntero
|
||||
Exit Sub
|
||||
@@ -1717,7 +1738,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
CvePSSerie = Argumentos(0).ToEntero
|
||||
CveUMSerie = Argumentos(1).ToEntero
|
||||
PUSerie = Argumentos(2).ToDecimal
|
||||
CveConsecSerie = Argumentos(5).ToEntero
|
||||
'CveConsecSerie = Argumentos(5).ToEntero
|
||||
CveCompraDetalle = Argumentos(6).ToEntero
|
||||
|
||||
CargaSerie(1)
|
||||
|
||||
@@ -1732,6 +1754,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
DtDatosDetalle.Columns.Add("PU", GetType(Decimal))
|
||||
DtDatosDetalle.Columns.Add("Serie", GetType(String))
|
||||
DtDatosDetalle.Columns.Add("FechaCaducidad", GetType(String))
|
||||
DtDatosDetalle.Columns.Add("CveCompraDetalle", GetType(Integer))
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -1747,11 +1771,13 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
'RegistraScript("document.getElementById(""TxtSerie"").focus();")
|
||||
RegistraScript("$('#DivSerie').modal();", "ModalLote")
|
||||
|
||||
GvSerie.DataSource = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie), "Consec DESC")
|
||||
'GvSerie.DataSource = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie), "Consec DESC")
|
||||
GvSerie.DataSource = DtDatosDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", CveCompraDetalle), "Consec DESC")
|
||||
GvSerie.DataBind()
|
||||
|
||||
'VALIDA QUE SIGA AGREGANDO
|
||||
If Not DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie)).Rows.Count < LbCantidad.Text.ToEntero Then
|
||||
'If Not DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie)).Rows.Count < LbCantidad.Text.ToEntero Then
|
||||
If Not DtDatosDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", CveCompraDetalle)).Rows.Count < LbCantidad.Text.ToEntero Then
|
||||
BtnAgregarPS.Enabled = True
|
||||
If CerrarCompletado Then
|
||||
RegistraScript("$('#DivSerie').modal('hide');")
|
||||
@@ -1764,7 +1790,9 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim Contador As Integer = 0
|
||||
For Each Gvr As GridViewRow In GvInv.Rows
|
||||
If Gvr.DataKey("CvePS").ToEntero = CvePSSerie Then
|
||||
Contador = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr.DataKey("Consec"))).Rows.Count
|
||||
'Contador = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr.DataKey("Consec"))).Rows.Count
|
||||
Contador = DtDatosDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", Gvr.DataKey("CveCompraDetalle"))).Rows.Count
|
||||
|
||||
Gvr.FCCheckBox("cbInv").Enabled = False
|
||||
Gvr.FCTextBox("TbCantidadF").Enabled = False
|
||||
If DtDatosDetalle IsNot Nothing AndAlso Contador > 0 Then
|
||||
@@ -1776,7 +1804,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim Dr As DataRow = DtInv.Select($"Consec = {Gvr.DataKey("Consec")}")(0)
|
||||
'Dim Dr As DataRow = DtInv.Select($"Consec = {Gvr.DataKey("Consec")}")(0)
|
||||
Dim Dr As DataRow = DtInv.Select($"CveCompraDetalle = {Gvr.DataKey("CveCompraDetalle")}")(0)
|
||||
Dr("CantidadSurtidaPantalla") = Gvr.FCTextBox("TbCantidadF").Text.ToDecimal
|
||||
DtInv.AcceptChanges()
|
||||
Next
|
||||
@@ -1810,7 +1839,10 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim dr As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePSSerie).FiltroPrimero("", "PS")
|
||||
|
||||
For Each Serie In SeriesArreglo
|
||||
DtDuplicado = DtDatosDetalle.FiltraParametros($"ConsecId = {CveConsecSerie} AND Serie = '{Serie}'")
|
||||
'DtDuplicado = DtDatosDetalle.FiltraParametros($"ConsecId = {CveConsecSerie} AND Serie = '{Serie}'")
|
||||
DtDuplicado = DtDatosDetalle.FiltraParametros($"CveCompraDetalle = {CveCompraDetalle} AND Serie = '{Serie}'")
|
||||
|
||||
|
||||
If DtDuplicado IsNot Nothing AndAlso DtDuplicado.Rows.Count > 0 Then
|
||||
MensajeAlert.Append($"<br/> El numero de Serie <b>""{Serie}""</b> proporcionado ya se encuentra ingresado.")
|
||||
TxtSerie.Text = ""
|
||||
@@ -1836,7 +1868,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim Index As Integer = 0
|
||||
Dim Cantidad As Integer = LbCantidad.Text.ToEntero
|
||||
|
||||
If CargaMasivaSeries Then Cantidad = DtInv.FiltroPrimeroValor("CantidadF", "Consec = " & CveConsecSerie).ToEntero
|
||||
'If CargaMasivaSeries Then Cantidad = DtInv.FiltroPrimeroValor("CantidadF", "Consec = " & CveConsecSerie).ToEntero
|
||||
If CargaMasivaSeries Then Cantidad = DtInv.FiltroPrimeroValor("CantidadF", "CveCompraDetalle = " & CveCompraDetalle).ToEntero
|
||||
'DtInv
|
||||
|
||||
For Each Serie In SeriesArreglo
|
||||
@@ -1847,7 +1880,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
If Index > Cantidad Then Exit For
|
||||
|
||||
'VALIDA QUE SIGA AGREGANDO
|
||||
If Not DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie)).Rows.Count < Cantidad Then
|
||||
'If Not DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie)).Rows.Count < Cantidad Then
|
||||
If Not DtDatosDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", CveCompraDetalle)).Rows.Count < Cantidad Then
|
||||
MensajeAlert.Append("series cargadas en su totalidad") : Exit For
|
||||
End If
|
||||
|
||||
@@ -1867,7 +1901,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End If
|
||||
End If
|
||||
|
||||
Row("ConsecId") = CveConsecSerie
|
||||
'Row("ConsecId") = CveConsecSerie
|
||||
Row("CveCompraDetalle") = CveCompraDetalle
|
||||
Row("Consec") = DtDatosDetalle.Rows.Count + 1
|
||||
Row("CvePS") = CvePSSerie
|
||||
Row("CveUM") = CveUMSerie
|
||||
@@ -1922,6 +1957,10 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim dtt As New DataTable
|
||||
dtt.ReadXml(ArchivoBitacoraDetalle)
|
||||
DtDatosDetalle = dtt
|
||||
If Not DtDatosDetalle.Columns.Contains("CveCompraDetalle") Then
|
||||
DtDatosDetalle.Columns.Add("CveCompraDetalle", GetType(Integer))
|
||||
DtDatosDetalle.AcceptChanges()
|
||||
End If
|
||||
Alert("Registro(s) Recuperados", TipoMensaje.ToastInformacion)
|
||||
End If
|
||||
CargaGVInv()
|
||||
@@ -1975,18 +2014,21 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
CvePSSerie = Argumentos(0).ToEntero
|
||||
CveUMSerie = Argumentos(1).ToEntero
|
||||
PUSerie = Argumentos(2).ToDecimal
|
||||
CveConsecSerie = Argumentos(5).ToEntero
|
||||
'CveConsecSerie = Argumentos(5).ToEntero
|
||||
CveCompraDetalle = Argumentos(6).ToEntero
|
||||
|
||||
CargaLote(1)
|
||||
End Sub
|
||||
Private Sub CargaLote(Tipo As Integer, Optional CerrarCompletado As Boolean = False)
|
||||
RegistraScript("$('#DivLote').modal();", "ModalLote")
|
||||
GvLote.Columns(2).HeaderText = UsuarioActual.Empresa.Funcionalidad(147)
|
||||
GvLote.DataSource = DtDatosLoteDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie), "Consec DESC")
|
||||
'GvLote.DataSource = DtDatosLoteDetalle.FiltraParametros(String.Format("ConsecId = {0}", CveConsecSerie), "Consec DESC")
|
||||
GvLote.DataSource = DtDatosLoteDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", CveCompraDetalle), "Consec DESC")
|
||||
GvLote.DataBind()
|
||||
|
||||
'VALIDA QUE SIGA AGREGANDO
|
||||
If Not DtDatosLoteDetalle.SUM("Cantidad", String.Format("ConsecId = {0}", CveConsecSerie)) < LbLoteCantidad2.Text.ToDecimal Then
|
||||
'If Not DtDatosLoteDetalle.SUM("Cantidad", String.Format("ConsecId = {0}", CveConsecSerie)) < LbLoteCantidad2.Text.ToDecimal Then
|
||||
If Not DtDatosLoteDetalle.SUM("Cantidad", String.Format("CveCompraDetalle = {0}", CveCompraDetalle)) < LbLoteCantidad2.Text.ToDecimal Then
|
||||
BtnAddPSLote.Enabled = False
|
||||
If CerrarCompletado Then
|
||||
RegistraScript("$('#DivLote').modal('hide');")
|
||||
@@ -1999,7 +2041,9 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim Contador As Decimal = 0
|
||||
For Each Gvr As GridViewRow In GvInv.Rows
|
||||
If Gvr.DataKey("CvePS").ToEntero = CvePSSerie Then
|
||||
Contador = DtDatosLoteDetalle.SUMD("Cantidad", String.Format("ConsecId = {0}", Gvr.DataKey("Consec")))
|
||||
'Contador = DtDatosLoteDetalle.SUMD("Cantidad", String.Format("ConsecId = {0}", Gvr.DataKey("Consec")))
|
||||
Contador = DtDatosLoteDetalle.SUMD("Cantidad", String.Format("CveCompraDetalle = {0}", Gvr.DataKey("CveCompraDetalle")))
|
||||
|
||||
Gvr.FCCheckBox("cbInv").Enabled = False
|
||||
Gvr.FCTextBox("TbCantidadF").Enabled = False
|
||||
If DtDatosLoteDetalle IsNot Nothing AndAlso Contador > 0 Then
|
||||
@@ -2049,7 +2093,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim DtSeriesNuevas As New DataTable
|
||||
DtSeriesNuevas.Columns.Add("Serie", GetType(String))
|
||||
|
||||
DtDuplicado = DtDatosLoteDetalle.FiltraParametros($"ConsecId = {CveConsecSerie} AND Lote = '{Lote}' ")
|
||||
'DtDuplicado = DtDatosLoteDetalle.FiltraParametros($"ConsecId = {CveConsecSerie} AND Lote = '{Lote}' ")
|
||||
DtDuplicado = DtDatosLoteDetalle.FiltraParametros($"CveCompraDetalle = {CveCompraDetalle} AND Lote = '{Lote}' ")
|
||||
If DtDuplicado IsNot Nothing AndAlso DtDuplicado.Rows.Count > 0 Then
|
||||
Alert($"<br/> El numero de Lote <b>""{Lote}""</b> proporcionado ya se encuentra ingresado.", TipoMensaje.MsgAdvertencia)
|
||||
RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
|
||||
@@ -2078,7 +2123,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End If
|
||||
End If
|
||||
|
||||
Row("ConsecId") = CveConsecSerie
|
||||
'Row("ConsecId") = CveConsecSerie
|
||||
Row("CveCompraDetalle") = CveCompraDetalle
|
||||
Row("Consec") = DtDatosDetalle.Rows.Count + 1
|
||||
Row("Cantidad") = CantidadLote
|
||||
Row("CvePS") = CvePSSerie
|
||||
@@ -2716,8 +2762,12 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
PUExtranjero = DtInv.Rows(gvr.RowIndex)("PUExtranjero").ToString.ToDecimal
|
||||
|
||||
'SI FUE POR SERIE LOTE
|
||||
DtDetalle = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec").ToEntero))
|
||||
DtDetalleLote = DtDatosLoteDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec").ToEntero))
|
||||
'DtDetalle = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec").ToEntero))
|
||||
'DtDetalleLote = DtDatosLoteDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec").ToEntero))
|
||||
|
||||
DtDetalle = DtDatosDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", gvr.DataKey("CveCompraDetalle").ToEntero))
|
||||
DtDetalleLote = DtDatosLoteDetalle.FiltraParametros(String.Format("CveCompraDetalle = {0}", gvr.DataKey("CveCompraDetalle").ToEntero))
|
||||
|
||||
If DtDetalle.Rows.Count > 0 Then
|
||||
Dim ContDt As Integer = 0
|
||||
' por redondeo
|
||||
@@ -3655,7 +3705,9 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
ErrorMovInv = True
|
||||
End Try
|
||||
|
||||
|
||||
If Not ErrorMovInv Then
|
||||
RenombrarBitacoras()
|
||||
End If
|
||||
|
||||
'FINAL
|
||||
If Not ErrorMovInv Then
|
||||
@@ -3759,6 +3811,26 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
If ObjContaAC IsNot Nothing Then ObjContaAC.Dispose()
|
||||
End Sub
|
||||
|
||||
Private Sub RenombrarBitacoras()
|
||||
|
||||
|
||||
Dim fechaActual As String = DateTime.Now.ToString("yyyyMMddHHmmss")
|
||||
|
||||
Dim fib As New FileInfo(ArchivoBitacora)
|
||||
Dim fibd As New FileInfo(ArchivoBitacoraDetalle)
|
||||
|
||||
If fib.Exists() Then
|
||||
Dim nuevoNombre As String = Path.Combine(fib.DirectoryName, Path.GetFileNameWithoutExtension(fib.Name) & "_" & fechaActual & ".xml")
|
||||
fib.MoveTo(nuevoNombre)
|
||||
End If
|
||||
|
||||
If fibd.Exists() Then
|
||||
Dim nuevoNombreDetalle As String = Path.Combine(fibd.DirectoryName, Path.GetFileNameWithoutExtension(fibd.Name) & "_" & fechaActual & ".xml")
|
||||
fibd.MoveTo(nuevoNombreDetalle)
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Function GenerarMovimientoAlmacenVenta(CveAlmacen As Integer, CveConceptoAlmacen As Integer, CveVenta As Integer, CveMovimientoRelacionado As Integer, DtDetalle As DataTable, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad, EsContabilizable As Boolean, Modulo As String) As MMovimientoAlmacen
|
||||
Dim ErrorMovInv As Boolean = False
|
||||
Dim Retorno As New MMovimientoAlmacen
|
||||
@@ -4816,7 +4888,7 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Alert("El nombre de la segunda columna debe ser 'Codigo'. Favor de corregirlo", TipoMensaje.MsgError)
|
||||
Exit Sub
|
||||
End If
|
||||
If Not dt.Columns(2).ColumnName = "Producto" Then
|
||||
If Not (dt.Columns(2).ColumnName = "Producto" Or dt.Columns(2).ColumnName = "Producto/Servicio") Then
|
||||
Alert("El nombre de la tercera columna debe ser 'Producto'. Favor de corregirlo", TipoMensaje.MsgError)
|
||||
Exit Sub
|
||||
End If
|
||||
@@ -4851,7 +4923,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Dim CveProducto As Integer = RowPS("CvePS").ToString().ToEntero()
|
||||
Dim CveUnidadMedida As Integer = RowPS("CveUM").ToString().ToEntero()
|
||||
CvePSSerie = CveProducto
|
||||
CveConsecSerie = DtInv.FiltroPrimeroValor("Consec", "CvePS=" & CvePSSerie).ToEntero
|
||||
'CveConsecSerie = DtInv.FiltroPrimeroValor("Consec", "CvePS=" & CvePSSerie).ToEntero
|
||||
CveCompraDetalle = DtInv.FiltroPrimeroValor("CveCompraDetalle", "CvePS=" & CvePSSerie).ToEntero
|
||||
|
||||
Dim Cantidad As Double = RowExcel("Cantidad").ToString().ToDecimal()
|
||||
Dim Serie As String = RowExcel("Serie").ToString()
|
||||
@@ -4875,7 +4948,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
|
||||
|
||||
If Valido Then
|
||||
CveConsecSerie = RowPS("Consec").ToString.ToEntero
|
||||
'CveConsecSerie = RowPS("Consec").ToString.ToEntero
|
||||
CveCompraDetalle = RowPS("CveCompraDetalle").ToString.ToEntero
|
||||
AgregaSerie(RowExcel("Serie").ToString, 1, False)
|
||||
|
||||
'AgregarPS(Cantidad, CveProducto, CveUnidadMedida, Observaciones, CveSeccionAlmacen:=DdlSeccionAlmacen.SelectedValue.ToEntero, SeccionAlmacen:=DdlSeccionAlmacen.SelectedItem.Text, Serie:=If(Not String.IsNullOrEmpty(Serie), Serie, ""), Lote:=Lote, FechaCaducidad:=FechaCaducidad, Limpia:=False)
|
||||
@@ -4887,7 +4961,7 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
|
||||
Else
|
||||
RowsNoCargados = RowsNoCargados + 1
|
||||
ProductosNoCargados.AppendFormat("{0},", RowExcel("Producto").ToString())
|
||||
ProductosNoCargados.AppendFormat("{0},", RowExcel("Producto/Servicio").ToString())
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
@@ -4896,12 +4970,20 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
Finally
|
||||
|
||||
Dim MensajeFinal As New StringBuilder()
|
||||
|
||||
If RowsNoCargados = 0 AndAlso RowsCargados > 0 Then
|
||||
MensajeFinal.Append("Los productos se cargaron correctamente. <br/><br/>")
|
||||
End If
|
||||
|
||||
If RowsCargados > 0 Then
|
||||
MensajeFinal.Append("Se cargaron <b>" & RowsCargados & "</b> productos correctamente.")
|
||||
|
||||
TxtExcel.Text = "[]"
|
||||
UpConcepto.Update()
|
||||
RegistraScript("$('#DivCargaExcel').modal('hide');")
|
||||
|
||||
End If
|
||||
|
||||
If RowsNoCargados > 0 Then
|
||||
MensajeFinal.Append("No se pudieron cargar <b>" & RowsNoCargados & "</b> productos. <br/>Los siguientes productos no se pudieron cargar: " & ProductosNoCargados.ToString())
|
||||
End If
|
||||
@@ -4922,32 +5004,67 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End Sub
|
||||
|
||||
Public Sub DescargarFormato()
|
||||
Dim Directorio As String = ModExtensiones.DirectorioBaseEmpresas & "Empresas\Grales\Formatos\FormatoRecepcionAlmacen.xlsx"
|
||||
Dim dtt As New DataTable
|
||||
dtt = DtInv.Copy()
|
||||
dtt.Columns.Remove("Cantidad")
|
||||
dtt.Columns("CantidadF").ColumnName = "Cantidad"
|
||||
dtt.Columns("PS").ColumnName = "Producto"
|
||||
dtt.Columns("Codigo").ColumnName = "Código"
|
||||
Dim PathArchivo As String = ModExtensiones.DirectorioBaseEmpresas & "Empresas\Grales\Formatos\FormatoRecepcionAlmacen.xlsx"
|
||||
|
||||
Dim existingcol As New List(Of String) '= {"Cantidad", "Producto", "Código"}
|
||||
If System.IO.File.Exists(PathArchivo) Then
|
||||
|
||||
For Each col As DataColumn In dtt.Columns
|
||||
If Not col.ColumnName.Contiene("Cantidad", "Producto", "Código") Then
|
||||
existingcol.Add(col.ColumnName)
|
||||
End If
|
||||
Next
|
||||
Response.Clear()
|
||||
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
|
||||
Response.AddHeader("Content-Disposition", "attachment; filename=FormatoRecepcionAlmacen.xlsx")
|
||||
Response.TransmitFile(Directorio)
|
||||
Response.End()
|
||||
|
||||
For Each colName As String In existingcol
|
||||
dtt.Columns.Remove(colName)
|
||||
Next
|
||||
End If
|
||||
|
||||
dtt.Columns("Cantidad").SetOrdinal(0)
|
||||
dtt.Columns("Código").SetOrdinal(1)
|
||||
dtt.Columns("Producto").SetOrdinal(2)
|
||||
|
||||
dtt.Columns.Add("Serie", GetType(String))
|
||||
dtt.ExportToExcel("FormatoRecepcionAlmacen.xlsx")
|
||||
'Dim dtt As New DataTable
|
||||
'dtt = DtInv.Copy()
|
||||
|
||||
'If dtt.Columns.Contains("Cantidad") Then
|
||||
' dtt.Columns.Remove("Cantidad")
|
||||
'End If
|
||||
|
||||
'If dtt.Columns.Contains("CantidadF") Then
|
||||
' dtt.Columns("CantidadF").ColumnName = "Cantidad"
|
||||
'End If
|
||||
|
||||
'If dtt.Columns.Contains("PS") Then
|
||||
' dtt.Columns("PS").ColumnName = "Producto"
|
||||
'End If
|
||||
|
||||
'If dtt.Columns.Contains("Codigo") Then
|
||||
' dtt.Columns("Codigo").ColumnName = "Código"
|
||||
'End If
|
||||
|
||||
|
||||
'Dim existingcol As New List(Of String) '= {"Cantidad", "Producto", "Código"}
|
||||
|
||||
'For Each col As DataColumn In dtt.Columns
|
||||
' If Not col.ColumnName.Contiene("Cantidad", "Producto", "Código") Then
|
||||
' existingcol.Add(col.ColumnName)
|
||||
' End If
|
||||
'Next
|
||||
|
||||
'For Each colName As String In existingcol
|
||||
' dtt.Columns.Remove(colName)
|
||||
'Next
|
||||
|
||||
'Try
|
||||
' dtt.Columns("Cantidad").SetOrdinal(0)
|
||||
' dtt.Columns("Código").SetOrdinal(1)
|
||||
' dtt.Columns("Producto").SetOrdinal(2)
|
||||
'Catch ex As Exception
|
||||
|
||||
'End Try
|
||||
|
||||
|
||||
'If Not dtt.Columns.Contains("PS") Then
|
||||
' dtt.Columns.Add("Serie", GetType(String))
|
||||
'End If
|
||||
|
||||
|
||||
|
||||
'dtt.ExportToExcel("FormatoRecepcionAlmacen.xlsx")
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -4957,7 +5074,7 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
'Create a DataTable.
|
||||
Dim dt As New DataTable()
|
||||
|
||||
dt.Columns.AddRange(New DataColumn(9) {New DataColumn("CodBarra", GetType(String)),
|
||||
dt.Columns.AddRange(New DataColumn(10) {New DataColumn("CodBarra", GetType(String)),
|
||||
New DataColumn("OVenta", GetType(String)),
|
||||
New DataColumn("Factura", GetType(String)),
|
||||
New DataColumn("FechaFac", GetType(String)),
|
||||
@@ -4966,7 +5083,8 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
New DataColumn("Producto", GetType(String)),
|
||||
New DataColumn("Serie", GetType(String)),'CodigoUnico
|
||||
New DataColumn("Cantidad", GetType(Integer)),
|
||||
New DataColumn("Código", GetType(String))})
|
||||
New DataColumn("Código", GetType(String)),
|
||||
New DataColumn("CveCompraDetalle", GetType(Integer))})
|
||||
FolioFactura = FolioFactura.Replace("-", "")
|
||||
|
||||
'Read the contents of CSV file.
|
||||
@@ -5049,5 +5167,10 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
End Class
|
||||
|
||||
|
||||
Protected Sub LnkAgregarExcel_Click(sender As Object, e As EventArgs)
|
||||
TxtExcel.Text = "[]"
|
||||
UpConcepto.Update()
|
||||
RegistraScript("$('#DivCargaExcel').modal('show');")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
@@ -318,6 +318,7 @@ Partial Class OS_OrdenesServicios
|
||||
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||
|
||||
If Not IsPostBack Then
|
||||
|
||||
'DATOS CLIENTE
|
||||
CveCliente = 0
|
||||
NombreCliente = ""
|
||||
@@ -3535,6 +3536,7 @@ Partial Class OS_OrdenesServicios
|
||||
ObjFactura.Paciente = TxtPacienteModal.Text.Trim
|
||||
ObjFactura.Episodio = TxtEpisodioModal.Text.Trim
|
||||
ObjFactura.Alfa1 = TxtFolioRemisionModal.Text.Trim
|
||||
ObjFactura.CveAlmacenTraspasoDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=10).FiltroPrimeroValor("CveAlmacen").ToEntero
|
||||
ObjFactura.CveVendedor = tCveVendedor
|
||||
|
||||
Dim TmpDTMat As New DataTable
|
||||
@@ -3578,7 +3580,7 @@ Partial Class OS_OrdenesServicios
|
||||
If ProcesoOK Then
|
||||
ObjFactura.CalculaTotales()
|
||||
Dim Resp As New Modelos.Factura.MMensajeFactura
|
||||
Resp = ObjFactura.EmitirFactura(False, Transac:=TransaccionSQL)
|
||||
Resp = ObjFactura.EmitirFactura(False, Transac:=TransaccionSQL, Modulo:="OS/Remision")
|
||||
|
||||
If Resp.CveVenta > 0 Then
|
||||
Respuesta.CveVenta = Resp.CveVenta
|
||||
|
||||
@@ -468,9 +468,10 @@
|
||||
<div class="col-md-12" >
|
||||
<asp:GridView ID="GvPS" CssClass="table table-striped table-hover Widthall mysmallbtn" GridLines="None" runat="server" AutoGenerateColumns="False" DataKeyNames="CvePS" OnRowDataBound="GvPS_RowDataBound" >
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Cantidad" DataField="Cantidad" ItemStyle-Width="60px" DataFormatString="{0:#,###.##}" />
|
||||
<asp:BoundField HeaderText="Solicitado" DataField="CantidadSolicitada" ItemStyle-Width="60px" DataFormatString="{0:#,###.##}" ItemStyle-HorizontalAlign="Center" />
|
||||
<asp:BoundField HeaderText="Entregado" DataField="Cantidad" ItemStyle-Width="60px" DataFormatString="{0:#,###.##}" ItemStyle-HorizontalAlign="Center" />
|
||||
<asp:BoundField HeaderText="Producto" DataField="PS" />
|
||||
<asp:BoundField HeaderText="Utilizado" DataField="CantidadRemision" DataFormatString="{0:#,###.##}" ItemStyle-HorizontalAlign="Right" />
|
||||
<asp:BoundField HeaderText="Utilizado" DataField="CantidadRemision" DataFormatString="{0:#,###.##}" ItemStyle-HorizontalAlign="Center" />
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
|
||||
@@ -609,18 +609,24 @@ Partial Class OS_RepServiciosMedicos
|
||||
Dim tCve As Integer = ObjOS.CveVenta 'busca la remisión
|
||||
If tCve <= 0 Then tCve = ObjOS.CveCotizacion 'sino hay remisión toma el pedido
|
||||
If tCve > 0 Then
|
||||
'Dim objv As New ClsVentas
|
||||
Dim dttps As New DataTable
|
||||
|
||||
If ObjOS.GetDetalleMateriales(-1, CveOsConsultar) Then
|
||||
dttps = ObjOS.DtResultados
|
||||
End If
|
||||
'If objv.GetVentaDetalle(tCve) Then
|
||||
' dttps = objv.DtResultados
|
||||
'End If
|
||||
'objv.Dispose()
|
||||
|
||||
GvPS.DataSource = dttps
|
||||
GvPS.DataBind()
|
||||
|
||||
'sino hay información, cargamos los productos a surtir
|
||||
'If dttps IsNot Nothing AndAlso dttps.Rows.Count > 0 AndAlso ObjOS.CveCotizacion > 0 Then
|
||||
' Dim objv As New ClsVentas
|
||||
' If objv.GetVentaDetalle(tCve) Then
|
||||
' dttps = objv.DtResultados
|
||||
' End If
|
||||
' objv.Dispose()
|
||||
'End If
|
||||
|
||||
End If
|
||||
Dim TipoEstatus As Integer = 0
|
||||
TipoEstatus = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("TipoEstatus", String.Format("CveEstatusOrdenServicio = {0}", ObjOS.CveEstatusOrdenServicio), "CveEstatusOrdenServicio ASC").ToEntero
|
||||
|
||||
85
Ventas/CatSelectivas.aspx
Normal file
85
Ventas/CatSelectivas.aspx
Normal file
@@ -0,0 +1,85 @@
|
||||
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatSelectivas.aspx.vb" Inherits="Ventas_CatSelectivas" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
|
||||
Catálogo de selectivas
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
|
||||
<asp:UpdatePanel runat="server" ID="UpAgregar">
|
||||
<ContentTemplate>
|
||||
<li>
|
||||
<asp:LinkButton runat="server" ID="LnkAgregar" data-toggle="tooltip" data-placement="left" title="Agregar un motivo" Text="<i class='fa fa-plus'></i>Agregar selectiva" OnClick="LnkAgregar_Click"></asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
|
||||
<asp:UpdatePanel runat="server" ID="UpDatos" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="portlet light ">
|
||||
<div class="portlet-body">
|
||||
<div class="row" style="margin-left: 0px; margin-top: 5px; margin-bottom: 5px; text-align: right">
|
||||
<div style="margin-right: 15px">
|
||||
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
|
||||
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
<asp:GridView ID="GvDatos" runat="server" GridLines="None" Width="100%" DataKeyNames="CveSelectiva,Selectiva" CssClass=" table table-striped table-advance table-hover Widthall ScrollAD mysmallbtn" data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros" OnRowDeleting="GvDatos_RowDeleting">
|
||||
<Columns>
|
||||
<asp:BoundField DataField="Selectiva" HeaderText="Selectiva" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="50%" />
|
||||
<asp:BoundField DataField="Usuario" HeaderText="Usuario" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="20%" />
|
||||
<asp:BoundField DataField="FechaIng" DataFormatString="{0:d}" HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%" />
|
||||
<asp:TemplateField HeaderText="Acciones" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="imgE" runat="server" OnClick="imgE_Click" AlternateText="Editar" CommandArgument='<%# Eval("CveSelectiva")%>' CausesValidation="False" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
|
||||
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Desea eliminar este registro?" data-btn-ok-label="si" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
<div id="DivDatos" class="modal ADS fade" role="dialog">
|
||||
<div class="modal-dialog" style="width: 450px;">
|
||||
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModal" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div class="modal-header ">
|
||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||
<h4 class="modal-title">
|
||||
<asp:Literal runat="server">Selectiva</asp:Literal></h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<asp:TextBox ID="TxtSelectiva" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
|
||||
<asp:RequiredFieldValidator ID="RFVMotivo" runat="server" ControlToValidate="TxtSelectiva" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Selectiva''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
|
||||
<label for="TxtSelectiva">Selectiva:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<div class="modal-footer">
|
||||
<asp:Button ID="BtnGuardar" runat="server" class="btn btn-success" Text="Guardar" ValidationGroup="GrpGuardar" OnClick="BtnGuardar_Click" />
|
||||
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
|
||||
</asp:Content>
|
||||
|
||||
91
Ventas/CatSelectivas.aspx.vb
Normal file
91
Ventas/CatSelectivas.aspx.vb
Normal file
@@ -0,0 +1,91 @@
|
||||
|
||||
Option Explicit On
|
||||
Option Strict On
|
||||
|
||||
Imports Extensiones
|
||||
|
||||
Partial Class Ventas_CatSelectivas
|
||||
Inherits ClsPaginas
|
||||
|
||||
Private Property CveSelectiva As Integer
|
||||
Get
|
||||
Return (IfNull(ViewState("CveSelectiva"), "-1", ViewState("CveSelectiva"))).ToString().ToEntero()
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveSelectiva") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||
If Not Page.IsPostBack Then
|
||||
CargaDatos()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub CargaDatos()
|
||||
LimpiaDatos()
|
||||
|
||||
Dim ObjGral As New ClsProductosServicios()
|
||||
If ObjGral.GetSelectiva(-1, UsuarioActual.CveEmpresa) Then
|
||||
GvDatos.DataSource = ObjGral.DtResultados.Copy()
|
||||
End If
|
||||
ObjGral.Dispose()
|
||||
GvDatos.DataBind()
|
||||
|
||||
UpDatos.Update()
|
||||
End Sub
|
||||
|
||||
Protected Sub GvDatos_RowDeleting(sender As Object, e As GridViewDeleteEventArgs)
|
||||
Dim GvRow As GridViewRow = GvDatos.Rows(e.RowIndex)
|
||||
|
||||
CveSelectiva = GvRow.DataKey("CveSelectiva").ToEntero()
|
||||
|
||||
Using ObjVentas As New ClsProductosServicios
|
||||
If ObjVentas.RemoveSelectiva(CveSelectiva, UsuarioActual.CveEmpresa) Then
|
||||
Alert("Se eliminó correctamente")
|
||||
End If
|
||||
End Using
|
||||
|
||||
CargaDatos()
|
||||
End Sub
|
||||
Protected Sub imgE_Click(sender As Object, e As EventArgs)
|
||||
Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
|
||||
|
||||
CveSelectiva = GvRow.DataKey("CveSelectiva").ToEntero()
|
||||
TxtSelectiva.Text = GvRow.DataKey("Selectiva")
|
||||
|
||||
UpModal.Update()
|
||||
|
||||
RegistraScript("$('#DivDatos').modal('show');")
|
||||
End Sub
|
||||
|
||||
Private Sub LimpiaDatos()
|
||||
CveSelectiva = -1
|
||||
TxtSelectiva.Text = ""
|
||||
End Sub
|
||||
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim ObjVentas As New ClsProductosServicios
|
||||
If CveSelectiva = -1 Then
|
||||
If ObjVentas.AddSelectiva(TxtSelectiva.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
|
||||
Alert("La selectiva se agrego correctamente")
|
||||
End If
|
||||
Else
|
||||
If ObjVentas.UpdateSelectiva(CveSelectiva, TxtSelectiva.Text, UsuarioActual.CveEmpresa) Then
|
||||
Alert("La selectiva se actualizó correctamente")
|
||||
End If
|
||||
End If
|
||||
ObjVentas.Dispose()
|
||||
|
||||
RegistraScript("$('#DivDatos').modal('hide');")
|
||||
|
||||
CargaDatos()
|
||||
End Sub
|
||||
Protected Sub LnkAgregar_Click(sender As Object, e As EventArgs)
|
||||
LimpiaDatos()
|
||||
|
||||
RegistraScript("$('#DivDatos').modal('show');")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -254,6 +254,12 @@
|
||||
<label for="<%= DdlMarca.ClientID.ToString()%>">Marca:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
<div runat="server" id="DivSelectiva" visible="false" class="form-group form-md-line-input input-iconright">
|
||||
<asp:DropDownList ID="DdlSelectiva" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" AutoPostBack="false" CausesValidation="true" DataTextField="Selectiva" DataValueField="CveSelectiva" Width="350px" Enabled="true">
|
||||
</asp:DropDownList>
|
||||
<label for="<%= DdlSelectiva.ClientID.ToString()%>">Selectiva:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<label>Aplica para Venta:</label>
|
||||
<asp:CheckBox ID="ChkAplicaParaVenta" CssClass="make-switchsd" data-size="small" runat="server" Checked="True" />
|
||||
@@ -276,7 +282,6 @@
|
||||
<label class="truncate" style="padding-left: 1px;" for="<%= TxtPorMinimoUtilidad.ClientID.ToString()%>">% Minimo de utilidad:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class=" col-md-12">
|
||||
<div runat="server" id="DivCompuesto" class="form-group form-md-line-input input-iconright" visible="false">
|
||||
@@ -350,6 +355,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -450,6 +450,9 @@ Partial Class ProductosyServicios
|
||||
DivPSAdicionales.Visible = True
|
||||
DivTipoAdicional.Visible = True
|
||||
DivPorMinimoUtilidad.Visible = True
|
||||
DivSelectiva.Visible = True
|
||||
|
||||
CargaSelectivas()
|
||||
End If
|
||||
|
||||
CvePSAdicional = -1
|
||||
@@ -473,7 +476,15 @@ Partial Class ProductosyServicios
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub CargaSelectivas()
|
||||
Using ObjPS As New ClsProductosServicios
|
||||
If ObjPS.GetSelectiva(-1, UsuarioActual.CveEmpresa) Then
|
||||
DdlSelectiva.DataSource = ObjPS.DtResultados
|
||||
End If
|
||||
End Using
|
||||
DdlSelectiva.DataBind()
|
||||
DdlSelectiva.Items.Insert(0, New ListItem("-", "-1"))
|
||||
End Sub
|
||||
Private Sub CargaCombosPSComplementos()
|
||||
|
||||
DdlClaveSectorCOFEPRIS.DataSource = GlobalDT_SAT_CP_SectorCOFEPRIS
|
||||
@@ -1152,6 +1163,7 @@ Partial Class ProductosyServicios
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then
|
||||
TxtPorMinimoUtilidad.Text = ObjProductosServicios.DtResultados.Rows(0)("PorcentajeMinimoUtilidad").ToString
|
||||
DdlSelectiva.SelectedValueExist(ObjProductosServicios.DtResultados.Rows(0)("CveSelectiva").ToString)
|
||||
End If
|
||||
Else
|
||||
Alert("El Producto o Servicio Solicitado no existe, por favor revise su búsqueda.", TipoMensaje.MsgAdvertencia)
|
||||
@@ -1550,7 +1562,7 @@ Partial Class ProductosyServicios
|
||||
CveObjetoImpuesto:=DdlObjetoImpuesto.SelectedValue.ToEntero, Litraje:=TxtLitraje.Text.ToDecimal, RegistroRSCO:=TxtRegistroRSCO.Text, FechaVigenciaRSCO:=TxtFechaVigenciaRSCO.Text.ToDate, VigenciaIndeterminadaRSCO:=ChkFechaIndeterminadaRSCO.Checked,
|
||||
NombreComercial:=TxtNombreComercial.Text.Trim, NotasAdicionales:=TxtEcommerceNota.Text.Trim, EcommerceEtiquetas:=TxtEcommerceEtiquetas.Text.Trim.Replace(".", ""), EcommercePrecio:=TxtEcommercePrecio.Text.Trim.ToDecimal,
|
||||
CveClasificacionEcommerce:=DdlEcommerceClasificacion.SelectedValue.ToEntero, EcommerceCantidad:=TxtEcommerceCantidad.Text.Trim.ToDecimal, CodigoAlterno:=TxtCodigoAlterno.Text.Trim, PSAlterno:=TxtPSAlterno.Text.Trim, ProductoExhibicion:=ChkPSExhibicion.Checked,
|
||||
PorcentajeMinimoUtilidad:=TxtPorMinimoUtilidad.Text.ToDecimal()) > 0 Then
|
||||
PorcentajeMinimoUtilidad:=TxtPorMinimoUtilidad.Text.ToDecimal(), CveSelectiva:=DdlSelectiva.SelectedValue.ToEntero()) > 0 Then
|
||||
ViewState("CvePS") = ObjProductosServicios.CvePS
|
||||
For Each GVR As GridViewRow In GvImpuestosLocales.Rows
|
||||
If GVR.FCCheckBox("ChkDeduccion").Checked Then
|
||||
@@ -1624,7 +1636,7 @@ Partial Class ProductosyServicios
|
||||
RegistroRSCO:=TxtRegistroRSCO.Text, FechaVigenciaRSCO:=TxtFechaVigenciaRSCO.Text.ToDate, VigenciaIndeterminadaRSCO:=ChkFechaIndeterminadaRSCO.Checked,
|
||||
NombreComercial:=TxtNombreComercial.Text.Trim, NotasAdicionales:=TxtEcommerceNota.Text.Trim, EcommerceEtiquetas:=TxtEcommerceEtiquetas.Text.Trim.Replace(".", ""), ActivoEcommerce:=ChkActivoEcommerce.Checked,
|
||||
EcommercePrecio:=TxtEcommercePrecio.Text.Trim.ToDecimal, CveClasificacionEcommerce:=DdlEcommerceClasificacion.SelectedValue.ToEntero, EcommerceCantidad:=TxtEcommerceCantidad.Text.Trim.ToDecimal,
|
||||
CodigoAlterno:=TxtCodigoAlterno.Text.Trim, PSAlterno:=TxtPSAlterno.Text.Trim, ProductoExhibicion:=ChkPSExhibicion.Checked, PorcentajeMinimoUtilidad:=TxtPorMinimoUtilidad.Text.ToDecimal()) Then
|
||||
CodigoAlterno:=TxtCodigoAlterno.Text.Trim, PSAlterno:=TxtPSAlterno.Text.Trim, ProductoExhibicion:=ChkPSExhibicion.Checked, PorcentajeMinimoUtilidad:=TxtPorMinimoUtilidad.Text.ToDecimal(), CveSelectiva:=DdlSelectiva.SelectedValue.ToEntero()) Then
|
||||
|
||||
If Not ObjProductosServicios.LimpiaImpuestosLocales(CvePS) Then
|
||||
TieneError = True
|
||||
|
||||
@@ -158,7 +158,7 @@ Partial Class Ventas_Promociones
|
||||
PermisoAutorizPromocionPorcentaje = UsuarioActual.TienePermisoProceso(386)
|
||||
|
||||
EmpresaFnc382 = If(UsuarioActual.Empresa.Funcionalidad(382) = "1", True, False) 'Grupo díaz
|
||||
EmpresaFnc382 = True ''Para pruebas
|
||||
'EmpresaFnc382 = True ''Para pruebas
|
||||
|
||||
If EmpresaFnc382 Then
|
||||
DVModalClasificacion.Visible = False
|
||||
@@ -1474,6 +1474,8 @@ Partial Class Ventas_Promociones
|
||||
|
||||
LblUltimoCosto.Text = DTPSUltimoCosto.FiltroPrimeroValor("UltimoCosto", "").FormatoNumero(4)
|
||||
LblCostoPromedio.Text = DTPSUltimoCosto.FiltroPrimeroValor("CostoPromedio", "").FormatoNumero(4)
|
||||
LbPUActual.Text = DTPSUltimoCosto.FiltroPrimeroValor("Importe", "").FormatoNumero(4)
|
||||
|
||||
|
||||
UpAgregar.Update()
|
||||
End Sub
|
||||
|
||||
@@ -56,6 +56,9 @@
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkVerGrafica" OnClick="LnkVerGrafica_Click" runat="server">Ver Grafica</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkModalPorcentajes" OnClick="LnkModalPorcentajes_Click" runat="server" Visible="false"><i class="fa fa-list" aria-hidden="true"></i> Consultar porcentajes</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
<li>
|
||||
@@ -275,6 +278,106 @@
|
||||
</asp:GridView>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
|
||||
<div id="DivModalPorcetajes" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UpModalPorcentajes" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div class="modal-content" style="width:700px!important">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||
<h4 class="modal-title">
|
||||
<asp:Label ID="LblModalTituloPorcentajes" runat="server" ClientIDMode="Static" Text="">Consulta Porcentajes</asp:Label>
|
||||
</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3">
|
||||
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top: -10px !important;">
|
||||
<label for="<%= TxtModalFechaInicio.ClientID.ToString()%>" style="color: #888888;">Fecha Inicio: </label>
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtModalFechaInicio" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="LnkTxtModalFechaInicio" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="METxtModalFechaInicio" runat="server" TargetControlID="TxtModalFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="CETxtModalFechaInicio" TargetControlID="TxtModalFechaInicio" PopupButtonID="LnkTxtModalFechaInicio" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<asp:RequiredFieldValidator ID="RfvTxtModalFechaInicio" CssClass="help-block errorimput" runat="server" ControlToValidate="TxtModalFechaInicio" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpModalPorcentaje"></asp:RequiredFieldValidator>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top: -10px !important;">
|
||||
<label for="<%= TxtModalFechaFin.ClientID.ToString()%>" style="color: #888888;">Fecha Fin: </label>
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtModalFechaFin" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="LnkTxtModalFechaFin" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="METxtModalFechaFin" runat="server" TargetControlID="TxtModalFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="CETxtModalFechaFin" TargetControlID="TxtModalFechaFin" PopupButtonID="LnkTxtModalFechaFin" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<asp:RequiredFieldValidator ID="RfvLnkTxtModalFechaFin" CssClass="help-block errorimput" runat="server" ControlToValidate="TxtModalFechaFin" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpModalPorcentaje"></asp:RequiredFieldValidator>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<asp:TextBox ID="TxtModalPorcentaje" runat="server" CausesValidation="true" CssClass="form-control" MaxLength="13" Text="5" Enabled="true"></asp:TextBox>
|
||||
<asp:RequiredFieldValidator ID="RfvTxtModalPorcentaje" CssClass="help-block errorimput" runat="server" ControlToValidate="TxtModalPorcentaje" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Porcentaje''</b> es necesario, por favor ingréselo." ValidationGroup="GrpModalPorcentaje"></asp:RequiredFieldValidator>
|
||||
<ajax:FilteredTextBoxExtender ID="FIETTxtModalPorcentaje" TargetControlID="TxtModalPorcentaje" FilterType="Numbers,Custom" ValidChars="-" runat="server" />
|
||||
<label for="<%= TxtModalPorcentaje.ClientID.ToString()%>">Porcentaje Menor a:</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<asp:Button runat="server" ID="BtnModalConsultaPorcentaje" CssClass="btn btn-primary" Text="Consultar" CausesValidation="true" ValidationGroup="GrpModalPorcentaje" OnClick="BtnModalConsultaPorcentaje_Click" />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12" style="height:10px!important"></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
|
||||
<div class="col-md-12">
|
||||
<asp:GridView ID="GvPorcentajes" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Ventas Utilidad con los filtros especificados"
|
||||
CssClass="table table-advance table-hover Widthall ScrollAD" data-sort="true" GridLines="None" OnRowDataBound="GvPorcentajes_RowDataBound" >
|
||||
<Columns>
|
||||
|
||||
<asp:BoundField ItemStyle-HorizontalAlign="Left" HeaderText="SubProyecto" DataField="SubProyecto" ItemStyle-Width="200px" />
|
||||
|
||||
<asp:HyperLinkField ItemStyle-HorizontalAlign="Center" HeaderText="Serie Folio" DataTextField="SerieFolio" DataTextFormatString="{0}" Target="_blank"
|
||||
DataNavigateUrlFields="CveVenta"
|
||||
DataNavigateUrlFormatString="Ventas.aspx?CveVenta={0}" />
|
||||
<asp:BoundField ItemStyle-HorizontalAlign="Center" HeaderText="Fecha" DataField="FechaVenta" DataFormatString="{0:d}" ItemStyle-Width="100px" />
|
||||
<asp:BoundField ItemStyle-HorizontalAlign="Right" HeaderText="SubTotal" DataField="SubTotal" DataFormatString="{0:N}" ItemStyle-Width="100px" />
|
||||
|
||||
<asp:BoundField ItemStyle-HorizontalAlign="Right" HeaderText="Costo" DataField="Costo" DataFormatString="{0:N}" ItemStyle-Width="100px" />
|
||||
<asp:BoundField ItemStyle-HorizontalAlign="Right" HeaderText="% Neto" DataField="PorNeto" DataFormatString="{0:N}" ItemStyle-Width="100px" />
|
||||
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
<div id="DivModalGrafica" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UPModalProd" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
@@ -288,18 +391,20 @@
|
||||
<div class="modal-body">
|
||||
<div class="row">
|
||||
|
||||
<label class="col-md-1 truncate">Ver:</label>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlVer" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlVer_SelectedIndexChanged" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
|
||||
<asp:ListItem Selected="True" Text="Neto" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Rentabilidad" Value="2"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<label class="col-md-1 truncate">Ver:</label>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlVer" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlVer_SelectedIndexChanged" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
|
||||
<asp:ListItem Selected="True" Text="Neto" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Rentabilidad" Value="2"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<br />
|
||||
|
||||
<br />
|
||||
<div id="chartdiv"></div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-danger" data-dismiss="modal">Cerrar</button>
|
||||
</div>
|
||||
@@ -307,6 +412,10 @@
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
|
||||
<script src="https://www.amcharts.com/lib/3/amcharts.js"></script>
|
||||
|
||||
@@ -32,19 +32,37 @@ Partial Class Ventas_RepVentasUtilidadPadre
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||
If Not IsPostBack Then
|
||||
'If UsuarioActual.Empresa.Funcionalidad(382) <> "1" Then
|
||||
' GvDatos.Columns(3).Visible = False
|
||||
' GvDatos.Columns(5).Visible = False
|
||||
'End If
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then
|
||||
LnkModalPorcentajes.Visible = True
|
||||
End If
|
||||
|
||||
CargaCombos()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Private Property SubProyectoConf As String
|
||||
Get
|
||||
If ViewState("SubProyectoConf") Is Nothing Then
|
||||
ViewState("SubProyectoConf") = ""
|
||||
End If
|
||||
Return ViewState("SubProyectoConf").ToString
|
||||
End Get
|
||||
|
||||
Set(value As String)
|
||||
ViewState("SubProyectoConf") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
|
||||
#Region " INICIALIZA VALORES "
|
||||
Private Sub CargaCombos()
|
||||
|
||||
TxtModalFechaInicio.Text = NowADS().FirstDayOfMonth.ToShortDateString
|
||||
TxtModalFechaFin.Text = NowADS().LastDayOfMonth.ToShortDateString
|
||||
|
||||
txtFechaI.Text = NowADS().FirstDayOfMonth.ToShortDateString
|
||||
txtFechaF.Text = NowADS().LastDayOfMonth.ToShortDateString
|
||||
|
||||
@@ -108,6 +126,12 @@ Partial Class Ventas_RepVentasUtilidadPadre
|
||||
|
||||
LblNeto.Text = "0"
|
||||
LblPorNeto.Text = "0"
|
||||
|
||||
|
||||
Dim LblSubProyectoConf As New Label
|
||||
CargarCentrosDeCosto(Nothing, Nothing, Nothing, LblSubProyectoConf)
|
||||
SubProyectoConf = LblSubProyectoConf.Text
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub DdlCategoria_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||
@@ -315,4 +339,42 @@ Partial Class Ventas_RepVentasUtilidadPadre
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
Protected Sub LnkModalPorcentajes_Click(sender As Object, e As EventArgs)
|
||||
|
||||
GvPorcentajes.DataSource = Nothing
|
||||
GvPorcentajes.DataBind()
|
||||
UpModalPorcentajes.Update()
|
||||
RegistraScript("$('#DivModalPorcetajes').modal(`show`);")
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Protected Sub BtnModalConsultaPorcentaje_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim ObjVentas As New ClsVentas()
|
||||
Dim FechaI As Date = TxtModalFechaInicio.Text.ToDate
|
||||
Dim FechaF As Date = TxtModalFechaFin.Text.ToDate
|
||||
If TxtModalFechaInicio.Text = "" Then FechaI = MinFecha
|
||||
If TxtModalFechaFin.Text = "" Then FechaF = MaxFecha
|
||||
|
||||
If ObjVentas.GetReporteVentasUtilidad("-1", -1, "-1", FechaI, FechaF, UsuarioActual.CveEmpresa, -1, -1, -1, -1, -1) Then
|
||||
GvPorcentajes.DataSource = ObjVentas.DtResultados.FiltraParametros($" CveVenta > 0 AND PorNeto <= {TxtModalPorcentaje.Text.ToDecimal} AND TipoDocto = 'Ing' AND CveEstatusFactura IN(2,3) ")
|
||||
End If
|
||||
|
||||
ObjVentas.Dispose()
|
||||
GvPorcentajes.DataBind()
|
||||
|
||||
ObjVentas.Dispose()
|
||||
UpModalPorcentajes.Update()
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub GvPorcentajes_RowDataBound(sender As Object, e As GridViewRowEventArgs)
|
||||
|
||||
If e.Row.RowType = DataControlRowType.Header Then
|
||||
e.Row.Cells(0).Text = SubProyectoConf
|
||||
End If
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
@@ -9457,7 +9457,7 @@ Partial Class Ventas
|
||||
End If
|
||||
|
||||
'SI SE ELIMINA EL LUBRICANTE, ELIMINAR LOS FILTROS CON PROMOCION
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso Not ClienteEsDistribuidor Then
|
||||
If TmpDT.Rows(e.RowIndex)("CveClasificacion").ToString().ToString().Contiene("20516") Then
|
||||
Dim RowsFiltros = TmpDT.Select("CveClasificacion IN(20515) AND Descuento > 0")
|
||||
For Each Row As DataRow In RowsFiltros
|
||||
@@ -19830,15 +19830,17 @@ Partial Class Ventas
|
||||
End Sub
|
||||
|
||||
Private Sub CalculaPSPromocionFiltrosLubricantes(ByRef RowEdit As DataRow)
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso Not ClienteEsDistribuidor Then
|
||||
Dim CantidadMinValidaPromoFiltro As Decimal = 4
|
||||
Dim CantidadMinValidaPromoLubricantes As Decimal = 5
|
||||
Dim CantidadDescuento As Decimal = 0
|
||||
'Dim AgregaDescuentos As Boolean = False
|
||||
|
||||
'DESCUENTO EN LUBRICANTES
|
||||
If RowEdit IsNot Nothing AndAlso RowEdit("CveClasificacion").ToString().Contiene("20516") Then
|
||||
Dim Cantidad As Decimal = RowEdit("Cantidad").ToString().ToDecimal()
|
||||
'CALCULA LA CANTIDAD DE DESCUENTO, REDONDEO HACIA ABAJO
|
||||
Dim CantidadDescuento As Decimal = Math.DivRem(Cantidad.ToString().ToEntero(), CantidadMinValidaPromoLubricantes.ToString().ToEntero(), 1).ToString().ToDecimal()
|
||||
CantidadDescuento = Math.DivRem(Cantidad.ToString().ToEntero(), CantidadMinValidaPromoLubricantes.ToString().ToEntero(), 1).ToString().ToDecimal()
|
||||
|
||||
Dim Descuentos = CantidadDescuento * RowEdit("PU").ToString().ToDecimal()
|
||||
|
||||
@@ -19864,6 +19866,9 @@ Partial Class Ventas
|
||||
Next
|
||||
End If
|
||||
|
||||
'AGREGA LOS DESCUENTOS ADICIONALES
|
||||
'AgregaDescuentos = True
|
||||
|
||||
End If
|
||||
|
||||
' DESCUENTO EN FILTROS
|
||||
@@ -19875,7 +19880,7 @@ Partial Class Ventas
|
||||
'SI HAY LUBRICANTES, 1 FILTRO DEBE SER GRATIS
|
||||
If TotalLubricantes >= CantidadMinValidaPromoFiltro Then
|
||||
'CALCULA LA CANTIDAD DE DESCUENTO, REDONDEO HACIA ABAJO
|
||||
Dim CantidadDescuento As Decimal = Math.DivRem(TotalLubricantes.ToString().ToEntero(), CantidadMinValidaPromoFiltro.ToString().ToEntero(), 1).ToString().ToDecimal()
|
||||
CantidadDescuento = Math.DivRem(TotalLubricantes.ToString().ToEntero(), CantidadMinValidaPromoFiltro.ToString().ToEntero(), 1).ToString().ToDecimal()
|
||||
|
||||
'VERIFICA QUE AUN SE PUEDA APLICAR DESCUENTO
|
||||
If TotalFiltrosDescuento < CantidadDescuento Then
|
||||
@@ -19901,12 +19906,36 @@ Partial Class Ventas
|
||||
RowEdit("Total") = (Cantidad * PU)
|
||||
RowEdit("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales)
|
||||
RowEdit("TotalConImpuestos") = (RowEdit("Total").ToString().ToDecimal() - RowEdit("Descuento").ToString().ToDecimal() + RowEdit("ImporteIVA").ToString().ToDecimal()).RoundSQL(2)
|
||||
|
||||
'AGREGA LOS DESCUENTOS ADICIONALES
|
||||
'AgregaDescuentos = True
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
'VERIFICA SI APLICAN OTROS DESCUENTOS
|
||||
'If AgregaDescuentos Then
|
||||
' Dim ObjDescuento As Modelos.VentaDescuentos = CalcularDescuentos(RowEdit("CvePS").ToString().ToEntero(), RowEdit("Cantidad").ToString().ToDecimal(), RowEdit("PU").ToString().ToDecimal())
|
||||
' If ObjDescuento.ImporteDescuento > 0 AndAlso Not ObjDescuento.EsPUModificado Then
|
||||
' Dim Cantidad As Decimal = RowEdit("Cantidad").ToString().ToDecimal()
|
||||
' Dim PU As Decimal = RowEdit("PU").ToString().ToDecimal()
|
||||
' Dim Descuentos = RowEdit("Descuento").ToString().ToDecimal() + ObjDescuento.ImporteDescuento
|
||||
|
||||
' If Descuentos < (Cantidad * PU) Then
|
||||
' Dim TotalCalculableImpuestos As Decimal = ((Cantidad * PU) - (Descuentos))
|
||||
' Dim TotalCalculableImpuestosIVA As Decimal = 0
|
||||
' TotalCalculableImpuestosIVA = TotalCalculableImpuestos * (1 + RowEdit("PorcentajeIEPS").ToString().ToDecimal)
|
||||
|
||||
' RowEdit("Descuento") = Descuentos
|
||||
' RowEdit("ImporteIVA") = (RowEdit("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales)
|
||||
' RowEdit("TotalConImpuestos") = (RowEdit("Total").ToString().ToDecimal() - RowEdit("Descuento").ToString().ToDecimal() + RowEdit("ImporteIVA").ToString().ToDecimal()).RoundSQL(2)
|
||||
' End If
|
||||
|
||||
' End If
|
||||
'End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Reference in New Issue
Block a user