This commit is contained in:
HECTOR RODRIGUEZ
2021-06-04 03:26:22 -07:00
21 changed files with 1924 additions and 276 deletions

View File

@@ -176,7 +176,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
}
sb.AppendFormat("Folio Fiscal: {0} <br/>", uuid);
sb.AppendFormat("Codigo Estado: {0} <br/>", resp.CodigoEstatus);
sb.AppendFormat("Código Estado: {0} <br/>", resp.CodigoEstatus);
sb.AppendFormat("Estado: {0} <br/>", resp.Estado);
sb.AppendFormat("Es Cancelable: {0} <br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EsCancelable);
sb.AppendFormat("Estatus de Cancelación: {0} <br/><br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EstatusCancelacion);
@@ -225,6 +225,16 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
{
retorno.EnviarAcuse = true;
CveEstatus = respCancelacion.CveEstatus;
var ObjVentas = new ClsVentas();
if (ObjVentas.UpdateEstatusVenta(CveVenta, CveEstatus, UsuarioActual.CveEmpresa))
{
sb.Append("El estatus de la factura fue cambiado a 'Cancelada'.");
}
else
{
sb.Append("Ocurrió un error al cambiar el estatus de la factura.");
}
ObjVentas.Dispose();
sb.Append("El documento se canceló correctamente.");
sb.Append($"</br> <a href='/Compras/PopUpVerFactura.aspx?P={Encripta($"OP=CAN&CVEVTA={CveVenta}")}' class='Texto' target='_blank'>Imprimir Acuse</a>");
if (!EsRefacturacion)
@@ -254,6 +264,21 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
}
ObjVentas.Dispose();
}
else if (resp.Estado.ToUpper().Trim() == "VIGENTE" && string.IsNullOrEmpty(resp.EstatusCancelacion))
{
//ASIGNAMOS ESTATUS EMITIDA
CveEstatus = 3;
var ObjVentas = new ClsVentas();
if (ObjVentas.UpdateEstatusVenta(CveVenta, CveEstatus, UsuarioActual.CveEmpresa))
{
sb.Append("El estatus de la factura fue cambiado a 'Emitida'.");
}
else
{
sb.Append("Ocurrió un error al cambiar el estatus de la factura.");
}
ObjVentas.Dispose();
}
}
}
else

View File

@@ -67,6 +67,9 @@
<li>
<asp:LinkButton ID="ImgExcel" runat="server"> <i class="fa fa-file-excel-o" style="font-weight:bold;"></i> Excel</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkRepDiario" runat="server" Visible="false" OnClick="LnkRepDiario_Click"> <i class="fa fa-file-o" style="font-weight:bold;"></i> Reporte Diario</asp:LinkButton>
</li>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
@@ -134,33 +137,32 @@
</div>
</div>
</div>
<div class="portlet-body" style="display: none">
<div class="row">
<label class="col-md-1 truncate">Productos Servicios:</label>
<div class="col-md-2">
<ADS:Dropdownlost runat="server" ID="DdlPS" CssStyle="width:55%;" CssClass="DdlPS" CssClassDdl="select2me " DataTextField="PSCodigo" DataValueField="CvePS" />
</div>
<label class="col-md-1 truncate">Clasificación:</label>
<div class="col-md-2">
<asp:ListBox ID="DdlClasificacion" AutoPostBack="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Style="width: 100%" data-text="Todos" SelectionMode="Multiple">
</asp:ListBox>
</div>
<label runat="server" id="LblLinea" data-placement="top" class="col-md-1" visible="false">Linea:</label>
<div runat="server" id="DivLinea" class="col-md-2" visible="false">
<asp:ListBox ID="DdlLinea" CssClass="select2me" runat="server" DataTextField="ClasificacionDetalle" DataValueField="CveClasificacionDetalle" Style="width: 100%" data-text="Todos" SelectionMode="Multiple"></asp:ListBox>
</div>
<label runat="server" id="LblMarca" title="Proveedor" data-toggle="tooltip" data-placement="top" class="col-md-1" visible="false">Marca:</label>
<div runat="server" id="DivMarca" class="col-md-2" visible="false">
<asp:ListBox ID="DdlMarcaPSDes" CssClass="select2me" runat="server" DataTextField="Marca" DataValueField="CveMarca" Style="width: 100%" data-text="Todos" SelectionMode="Multiple"></asp:ListBox>
</div>
</div>
<asp:Panel ID="pnlOrden" Visible="false" runat="server" CssClass="row">
<label class="col-md-1 truncate">Productos Servicios:</label>
<div class="col-md-2">
<ADS:Dropdownlost runat="server" ID="DdlPS" CssStyle="width:55%;" CssClass="DdlPS" CssClassDdl="select2me " DataTextField="PSCodigo" DataValueField="CvePS" />
</div>
<label class="col-md-1 truncate">Clasificación:</label>
<div class="col-md-2">
<asp:ListBox ID="DdlClasificacion" AutoPostBack="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Style="width: 100%" data-text="Todos" SelectionMode="Multiple"></asp:ListBox>
</div>
<label runat="server" id="LblLinea" data-placement="top" class="col-md-1" visible="false">Linea:</label>
<div runat="server" id="DivLinea" class="col-md-2" visible="false">
<asp:ListBox ID="DdlLinea" CssClass="select2me" runat="server" DataTextField="ClasificacionDetalle" DataValueField="CveClasificacionDetalle" Style="width: 100%" data-text="Todos" SelectionMode="Multiple"></asp:ListBox>
</div>
<label runat="server" id="LblMarca" title="Proveedor" data-toggle="tooltip" data-placement="top" class="col-md-1" visible="false">Marca:</label>
<div runat="server" id="DivMarca" class="col-md-2" visible="false">
<asp:ListBox ID="DdlMarcaPSDes" CssClass="select2me" runat="server" DataTextField="Marca" DataValueField="CveMarca" Style="width: 100%" data-text="Todos" SelectionMode="Multiple"></asp:ListBox>
</div>
</div>
<asp:Panel ID="pnlOrden" Visible="false" runat="server" CssClass="row">
<label class="col-md-1 truncate">Orden:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlOrden" runat="server" CssClass="select2me" Width="100%">
@@ -180,7 +182,7 @@
</div>
</div>
</div>--%>
</asp:Panel>
</asp:Panel>
</div>
</div>
</ContentTemplate>
@@ -190,14 +192,13 @@
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron productos con los filtros especificados" ToolTip="Listado de Ventas"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" Style="text-align: center;" GridLines="None" Width="99%">
<Columns>
<asp:TemplateField HeaderText="Grupo" ItemStyle-HorizontalAlign="Left">
<asp:TemplateField HeaderText="Grupo" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Literal ID="LtlGrupo" runat="server" Text='<%# Eval("GPO") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left">
<HeaderTemplate >
<asp:TemplateField ItemStyle-HorizontalAlign="Left">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlGrupoPS" runat="server" Text='<%# Eval("PS") %>'></asp:Literal>

View File

@@ -4,10 +4,12 @@ Option Strict On
Imports Extensiones
Imports System.Data
Imports Microsoft.Reporting.WebForms
Imports GemBox.Spreadsheet
Imports System.Globalization
Partial Class Ventas_RepPS
Inherits ClsPaginas
Inherits ClsPaginas
#Region "P R O P I E D A D E S"
Private Property DtReporte As DataTable
Get
@@ -16,9 +18,9 @@ Partial Class Ventas_RepPS
Set(value As DataTable)
ViewState("DtReporte") = value
End Set
End Property
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
pnlOrden.Visible = False
@@ -34,6 +36,10 @@ Partial Class Ventas_RepPS
'DdlMarca.Items.Insert(0, New ListItem("Todos", "-1"))
End If
If UsuarioActual.TienePermisoProceso(320) Then
LnkRepDiario.Visible = True
End If
CargaDatosIniciales()
CargaCombos()
@@ -179,9 +185,9 @@ Partial Class Ventas_RepPS
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
CargaDatos()
End Sub
End Sub
#Region " IMPRIMIR "
Protected Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click
If GvDatos.Rows.Count > 0 Then
@@ -227,8 +233,404 @@ Partial Class Ventas_RepPS
Alert("No hay información para mostrar.", TipoMensaje.MsgAdvertencia)
End If
End Sub
End Sub
#End Region
Protected Sub LnkRepDiario_Click(sender As Object, e As EventArgs)
Dim CveMoneda As Integer = -1
Dim TC As Integer = 1
Dim TCEspecifico As Decimal = -1
Dim DataSet As DataSet = New DataSet
Dim ObjVentas As New ClsVentas()
If ObjVentas.GetRepPSDiario(-1, -1, Now, UsuarioActual.CveEmpresa, CveUsuarioConsulta:=UsuarioActual.CveUsuario, GPO:=-1, CveMoneda:=CveMoneda, TipoCambio:=TC, TCEspecifico:=TCEspecifico) Then
DataSet = ObjVentas.DataSetResultados.Copy()
End If
ObjVentas.Dispose()
If DataSet IsNot Nothing Then
SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
Dim FileExcel As New ExcelFile()
Dim worksheetName As String = $"{ToShortMonthName(Now).ToUpper()}{Now.Day}"
Const invalidCharsRegex As String = "[/\\*'?[\]:]+"
Const maxLength As Integer = 31
Dim safeName As String = Regex.Replace(worksheetName, invalidCharsRegex, " ").Replace(" ", " ").Trim()
If String.IsNullOrEmpty(safeName) Then
safeName = "RepPSDiario" ' cannot be empty
ElseIf safeName.Length > maxLength Then
safeName = safeName.Substring(0, maxLength)
End If
Dim worksheet = FileExcel.Worksheets.Add(safeName)
Dim CellRangeTitulo = worksheet.Cells.GetSubrangeAbsolute(0, 0, 0, 12)
CellRangeTitulo.Merged = True
CellRangeTitulo.Value = $"{UsuarioActual.Empresa.Empresa}. VENTA DEL DIA {Now.Day} DE {ToMonthName(Now).ToUpper()} DEL {Now.Year}."
CellRangeTitulo.Style.VerticalAlignment = VerticalAlignmentStyle.Center
CellRangeTitulo.Style.HorizontalAlignment = HorizontalAlignmentStyle.Center
#Region "V E N T A S - L L A N T A S, R I N E S, A L I N E A C I O N E S"
worksheet.Cells(2, 0).Value = "Sucursal"
'TITULO DE LLANTAS
worksheet.Cells.GetSubrangeAbsolute(1, 1, 1, 3).Merged = True
worksheet.Cells(1, 3).Value = "LLANTAS"
worksheet.Cells(2, 1).Value = "Ant"
worksheet.Cells(2, 2).Value = "Dia"
worksheet.Cells(2, 3).Value = "Acum"
'TITULO DE RINES
worksheet.Cells.GetSubrangeAbsolute(1, 4, 1, 6).Merged = True
worksheet.Cells(1, 6).Value = "RINES"
worksheet.Cells(2, 4).Value = "Ant"
worksheet.Cells(2, 5).Value = "Dia"
worksheet.Cells(2, 6).Value = "Acum"
'TITULO DE ALINEACIONES
worksheet.Cells.GetSubrangeAbsolute(1, 7, 1, 9).Merged = True
worksheet.Cells(1, 9).Value = "ALINEACIONES"
worksheet.Cells(2, 7).Value = "Ant"
worksheet.Cells(2, 8).Value = "Dia"
worksheet.Cells(2, 9).Value = "Acum"
'TITULO DE VENTAS DEL DIA
worksheet.Cells.GetSubrangeAbsolute(1, 10, 1, 12).Merged = True
worksheet.Cells(1, 12).Value = "VENTA EN PESOS"
worksheet.Cells(2, 10).Value = "Ant"
worksheet.Cells(2, 11).Value = "Dia"
worksheet.Cells(2, 12).Value = "Acum"
Dim StyleTitleTable1 = worksheet.Cells.GetSubrangeAbsolute(1, 1, 1, 12).Style
StyleTitleTable1.Font.Weight = ExcelFont.BoldWeight
StyleTitleTable1.Font.Name = "Calibri"
StyleTitleTable1.Font.Size = 8 * 20
StyleTitleTable1.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleTitleTable1.VerticalAlignment = VerticalAlignmentStyle.Center
StyleTitleTable1.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim StyleSubTitleTable1 = worksheet.Cells.GetSubrangeAbsolute(2, 0, 2, 12).Style
StyleSubTitleTable1.Font.Weight = ExcelFont.BoldWeight
StyleSubTitleTable1.Font.Name = "Calibri"
StyleSubTitleTable1.Font.Size = 8 * 20
StyleSubTitleTable1.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleSubTitleTable1.VerticalAlignment = VerticalAlignmentStyle.Center
StyleSubTitleTable1.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim DtSucursalesLLantasAlin As DataTable = DataSet.Tables(0)
'INICIA DESDE LA CUARTA FILA
Dim IdxSucursalesLlantasAlin As Integer = 3
For Each Row As DataRow In DtSucursalesLLantasAlin.Rows
worksheet.Cells(IdxSucursalesLlantasAlin, 0).Value = Row("SubProyecto")
worksheet.Cells(IdxSucursalesLlantasAlin, 1).Value = Row("LlantasCantidadAnterior")
worksheet.Cells(IdxSucursalesLlantasAlin, 2).Value = Row("LlantasCantidadDia")
'worksheet.Cells(IdxSucursalesLlantasAlin, 3).Value = Row("LlantasCantidadAcumulada")
worksheet.Cells(IdxSucursalesLlantasAlin, 3).Formula = $"=SUM({worksheet.Cells(IdxSucursalesLlantasAlin, 1).Name}:{worksheet.Cells(IdxSucursalesLlantasAlin, 2).Name})"
worksheet.Cells(IdxSucursalesLlantasAlin, 4).Value = Row("RinCantidadAnterior")
worksheet.Cells(IdxSucursalesLlantasAlin, 5).Value = Row("RinCantidadDia")
'worksheet.Cells(IdxSucursalesLlantasAlin, 6).Value = Row("RinCantidadAcumulada")
worksheet.Cells(IdxSucursalesLlantasAlin, 6).Formula = $"=SUM({worksheet.Cells(IdxSucursalesLlantasAlin, 4).Name}:{worksheet.Cells(IdxSucursalesLlantasAlin, 5).Name})"
worksheet.Cells(IdxSucursalesLlantasAlin, 7).Value = Row("AlinCantidadAnterior")
worksheet.Cells(IdxSucursalesLlantasAlin, 8).Value = Row("AlinCantidadDia")
'worksheet.Cells(IdxSucursalesLlantasAlin, 9).Value = Row("AlinCantidadAcumulada")
worksheet.Cells(IdxSucursalesLlantasAlin, 9).Formula = $"=SUM({worksheet.Cells(IdxSucursalesLlantasAlin, 7).Name}:{worksheet.Cells(IdxSucursalesLlantasAlin, 8).Name})"
worksheet.Cells(IdxSucursalesLlantasAlin, 10).Value = Row("VentaAnterior")
worksheet.Cells(IdxSucursalesLlantasAlin, 11).Value = Row("VentaDia")
'worksheet.Cells(IdxSucursalesLlantasAlin, 12).Value = Row("VentaAcumulada")
worksheet.Cells(IdxSucursalesLlantasAlin, 12).Formula = $"=SUM({worksheet.Cells(IdxSucursalesLlantasAlin, 10).Name}:{worksheet.Cells(IdxSucursalesLlantasAlin, 11).Name})"
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxSucursalesLlantasAlin, 0, IdxSucursalesLlantasAlin, 12).Style
StyleData.Font.Weight = ExcelFont.BoldWeight
StyleData.Font.Name = "Calibri"
StyleData.Font.Size = 8 * 20
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
'LAS VENTAS DEL DIA NO DEBEN ESTAR EN NEGRITAS
worksheet.Cells(IdxSucursalesLlantasAlin, 0).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesLlantasAlin, 0).Style.HorizontalAlignment = HorizontalAlignmentStyle.Left
worksheet.Cells(IdxSucursalesLlantasAlin, 2).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesLlantasAlin, 5).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesLlantasAlin, 8).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesLlantasAlin, 11).Style.Font.Weight = ExcelFont.NormalWeight
IdxSucursalesLlantasAlin += 1
Next
'LA FILA DE LOS TOTALES DEBE ESTAR EN NEGITAS
worksheet.Cells.GetSubrangeAbsolute(IdxSucursalesLlantasAlin - 1, 0, IdxSucursalesLlantasAlin - 1, 12).Style.Font.Weight = ExcelFont.BoldWeight
DtSucursalesLLantasAlin.Dispose()
#End Region
#Region "V E N T A S - S E R V I C I O S D E I N S T A L A C I O N, A M O R T I G U A D O R E S, P O L I Z A S"
Dim IdxRefSucursalesServiciosAmortPolizas As Integer = IdxSucursalesLlantasAlin + 3
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 0).Value = "Sucursal"
'TITULO SERVICIOS DE INSTALACION
worksheet.Cells.GetSubrangeAbsolute(IdxRefSucursalesServiciosAmortPolizas - 1, 1, IdxRefSucursalesServiciosAmortPolizas - 1, 3).Merged = True
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas - 1, 3).Value = "SERVICIOS DE INSTALACION"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 1).Value = "Ant"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 2).Value = "Dia"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 3).Value = "Acum"
'TITULO AMORTIGUADORES
worksheet.Cells.GetSubrangeAbsolute(IdxRefSucursalesServiciosAmortPolizas - 1, 4, IdxRefSucursalesServiciosAmortPolizas - 1, 6).Merged = True
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas - 1, 6).Value = "AMORTIGUADORES"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 4).Value = "Ant"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 5).Value = "Dia"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 6).Value = "Acum"
'TITULO DE POLIZAS
worksheet.Cells.GetSubrangeAbsolute(IdxRefSucursalesServiciosAmortPolizas - 1, 7, IdxRefSucursalesServiciosAmortPolizas - 1, 9).Merged = True
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas - 1, 9).Value = "POLIZAS"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 7).Value = "Ant"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 8).Value = "Dia"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 9).Value = "Acum"
'TITULO DE VENTAS DEL DIA
worksheet.Cells.GetSubrangeAbsolute(IdxRefSucursalesServiciosAmortPolizas - 1, 10, IdxRefSucursalesServiciosAmortPolizas - 1, 12).Merged = True
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas - 1, 12).Value = "MANO DE OBRA PESOS"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 10).Value = "Ant"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 11).Value = "Dia"
worksheet.Cells(IdxRefSucursalesServiciosAmortPolizas, 12).Value = "Acum"
Dim StyleTitleTable2 = worksheet.Cells.GetSubrangeAbsolute(IdxRefSucursalesServiciosAmortPolizas - 1, 1, IdxRefSucursalesServiciosAmortPolizas - 1, 12).Style
StyleTitleTable2.Font.Weight = ExcelFont.BoldWeight
StyleTitleTable2.Font.Name = "Calibri"
StyleTitleTable2.Font.Size = 8 * 20
StyleTitleTable2.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleTitleTable2.VerticalAlignment = VerticalAlignmentStyle.Center
StyleTitleTable2.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim StyleSubTitleTable2 = worksheet.Cells.GetSubrangeAbsolute(IdxRefSucursalesServiciosAmortPolizas, 0, IdxRefSucursalesServiciosAmortPolizas, 12).Style
StyleSubTitleTable2.Font.Weight = ExcelFont.BoldWeight
StyleSubTitleTable2.Font.Name = "Calibri"
StyleSubTitleTable2.Font.Size = 8 * 20
StyleSubTitleTable2.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleSubTitleTable2.VerticalAlignment = VerticalAlignmentStyle.Center
StyleSubTitleTable2.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim DtSucursalesServiciosAmortPolizas As DataTable = DataSet.Tables(1)
'INICIA DESDE LA CUARTA FILA
Dim IdxSucursalesServiciosAmortPolizas As Integer = IdxRefSucursalesServiciosAmortPolizas + 1
For Each Row As DataRow In DtSucursalesServiciosAmortPolizas.Rows
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 0).Value = Row("SubProyecto")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 1).Value = Row("ServiciosCantidadAnterior")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 2).Value = Row("ServiciosCantidadDia")
'worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 3).Value = Row("ServiciosCantidadAcumulada")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 3).Formula = $"=SUM({worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 1).Name}:{worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 2).Name})"
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 4).Value = Row("AmortCantidadAnterior")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 5).Value = Row("AmortCantidadDia")
'worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 6).Value = Row("AmortCantidadAcumulada")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 6).Formula = $"=SUM({worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 4).Name}:{worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 5).Name})"
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 7).Value = Row("PolizasCantidadAnterior")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 8).Value = Row("PolizasCantidadDia")
'worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 9).Value = Row("PolizasCantidadAcumulada")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 9).Formula = $"=SUM({worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 7).Name}:{worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 8).Name})"
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 10).Value = Row("VentaAnterior")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 11).Value = Row("VentaDia")
'worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 12).Value = Row("VentaAcumulada")
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 12).Formula = $"=SUM({worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 10).Name}:{worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 11).Name})"
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxSucursalesServiciosAmortPolizas, 0, IdxSucursalesServiciosAmortPolizas, 12).Style
StyleData.Font.Weight = ExcelFont.BoldWeight
StyleData.Font.Name = "Calibri"
StyleData.Font.Size = 8 * 20
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
'LAS VENTAS DEL DIA NO DEBEN ESTAR EN NEGRITAS
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 0).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 0).Style.HorizontalAlignment = HorizontalAlignmentStyle.Left
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 2).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 5).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 8).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxSucursalesServiciosAmortPolizas, 11).Style.Font.Weight = ExcelFont.NormalWeight
IdxSucursalesServiciosAmortPolizas += 1
Next
'LA FILA DE LOS TOTALES DEBE ESTAR EN NEGITAS
worksheet.Cells.GetSubrangeAbsolute(IdxSucursalesServiciosAmortPolizas - 1, 0, IdxSucursalesServiciosAmortPolizas - 1, 12).Style.Font.Weight = ExcelFont.BoldWeight
DtSucursalesServiciosAmortPolizas.Dispose()
#End Region
#Region "P O R C E N T A J E S"
Dim IdxRefPorcentajes As Integer = IdxSucursalesServiciosAmortPolizas + 3
worksheet.Cells(IdxRefPorcentajes, 0).Value = "Sucursal"
'TITULO SERVICIOS
worksheet.Cells.GetSubrangeAbsolute(IdxRefPorcentajes - 1, 1, IdxRefPorcentajes - 1, 2).Merged = True
worksheet.Cells(IdxRefPorcentajes - 1, 2).Value = "INSTALACION"
worksheet.Cells(IdxRefPorcentajes, 1).Value = "Cant"
worksheet.Cells(IdxRefPorcentajes, 2).Value = "%"
'TITULO POLIZAS
worksheet.Cells.GetSubrangeAbsolute(IdxRefPorcentajes - 1, 3, IdxRefPorcentajes - 1, 4).Merged = True
worksheet.Cells(IdxRefPorcentajes - 1, 4).Value = "POLIZAS"
worksheet.Cells(IdxRefPorcentajes, 3).Value = "Cant"
worksheet.Cells(IdxRefPorcentajes, 4).Value = "%"
'TITULO DE ALINEACIONES
worksheet.Cells.GetSubrangeAbsolute(IdxRefPorcentajes - 1, 5, IdxRefPorcentajes - 1, 6).Merged = True
worksheet.Cells(IdxRefPorcentajes - 1, 6).Value = "ALINEACIONES"
worksheet.Cells(IdxRefPorcentajes, 5).Value = "Cant"
worksheet.Cells(IdxRefPorcentajes, 6).Value = "%"
Dim StyleTitleTable3 = worksheet.Cells.GetSubrangeAbsolute(IdxRefPorcentajes - 1, 1, IdxRefPorcentajes - 1, 6).Style
StyleTitleTable3.Font.Weight = ExcelFont.BoldWeight
StyleTitleTable3.Font.Name = "Calibri"
StyleTitleTable3.Font.Size = 8 * 20
StyleTitleTable3.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleTitleTable3.VerticalAlignment = VerticalAlignmentStyle.Center
StyleTitleTable3.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim StyleSubTitleTable3 = worksheet.Cells.GetSubrangeAbsolute(IdxRefPorcentajes, 0, IdxRefPorcentajes, 6).Style
StyleSubTitleTable3.Font.Weight = ExcelFont.BoldWeight
StyleSubTitleTable3.Font.Name = "Calibri"
StyleSubTitleTable3.Font.Size = 8 * 20
StyleSubTitleTable3.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleSubTitleTable3.VerticalAlignment = VerticalAlignmentStyle.Center
StyleSubTitleTable3.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim DtPorcentajes As DataTable = DataSet.Tables(2)
'INICIA DESDE LA CUARTA FILA
Dim IdxPorcentajes As Integer = IdxRefPorcentajes + 1
For Each Row As DataRow In DtPorcentajes.Rows
worksheet.Cells(IdxPorcentajes, 0).Value = Row("SubProyecto")
worksheet.Cells(IdxPorcentajes, 1).Value = Row("Servicios")
worksheet.Cells(IdxPorcentajes, 2).Value = Row("ServiciosPorcentaje")
worksheet.Cells(IdxPorcentajes, 3).Value = Row("Polizas")
worksheet.Cells(IdxPorcentajes, 4).Value = Row("PolizasPorcentaje")
worksheet.Cells(IdxPorcentajes, 5).Value = Row("Alineaciones")
worksheet.Cells(IdxPorcentajes, 6).Value = Row("AlinPorcentaje")
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxPorcentajes, 0, IdxPorcentajes, 6).Style
StyleData.Font.Weight = ExcelFont.BoldWeight
StyleData.Font.Name = "Calibri"
StyleData.Font.Size = 8 * 20
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
'LAS VENTAS DEL DIA NO DEBEN ESTAR EN NEGRITAS
worksheet.Cells(IdxPorcentajes, 0).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxPorcentajes, 0).Style.HorizontalAlignment = HorizontalAlignmentStyle.Left
worksheet.Cells(IdxPorcentajes, 1).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxPorcentajes, 3).Style.Font.Weight = ExcelFont.NormalWeight
worksheet.Cells(IdxPorcentajes, 5).Style.Font.Weight = ExcelFont.NormalWeight
IdxPorcentajes += 1
Next
'LA FILA DE LOS TOTALES DEBE ESTAR EN NEGITAS
worksheet.Cells.GetSubrangeAbsolute(IdxPorcentajes - 1, 0, IdxPorcentajes - 1, 6).Style.Font.Weight = ExcelFont.BoldWeight
DtPorcentajes.Dispose()
#End Region
#Region "A Ñ O A N T E R I O R"
Dim IdxRefAnioAnteriorLlantas As Integer = IdxPorcentajes + 3
worksheet.Cells(IdxRefAnioAnteriorLlantas, 0).Value = "Sucursal"
worksheet.Cells(IdxRefAnioAnteriorLlantas, 1).Value = (Now.Year - 1).ToString()
worksheet.Cells(IdxRefAnioAnteriorLlantas, 2).Value = Now.Year.ToString()
worksheet.Cells(IdxRefAnioAnteriorLlantas, 3).Value = "Dif"
Dim StyleTitleTable4 = worksheet.Cells.GetSubrangeAbsolute(IdxRefAnioAnteriorLlantas, 0, IdxRefAnioAnteriorLlantas, 3).Style
StyleTitleTable4.Font.Weight = ExcelFont.BoldWeight
StyleTitleTable4.Font.Name = "Calibri"
StyleTitleTable4.Font.Size = 8 * 20
StyleTitleTable4.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleTitleTable4.VerticalAlignment = VerticalAlignmentStyle.Center
StyleTitleTable4.HorizontalAlignment = HorizontalAlignmentStyle.Center
Dim DtAnioAnteriorLLantas As DataTable = DataSet.Tables(3)
'INICIA DESDE LA CUARTA FILA
Dim IdxAnioAnteriorLlantas As Integer = IdxRefAnioAnteriorLlantas + 1
For Each Row As DataRow In DtAnioAnteriorLLantas.FiltraParametros("TipoFila > 1").Rows
worksheet.Cells(IdxAnioAnteriorLlantas, 0).Value = Row("Grupo")
worksheet.Cells(IdxAnioAnteriorLlantas, 1).Value = Row("LLantasAnioAnterior")
worksheet.Cells(IdxAnioAnteriorLlantas, 2).Value = Row("LLantas")
worksheet.Cells(IdxAnioAnteriorLlantas, 3).Formula = $"=({worksheet.Cells(IdxAnioAnteriorLlantas, 1).Name} - {worksheet.Cells(IdxAnioAnteriorLlantas, 2).Name})"
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxAnioAnteriorLlantas, 0, IdxAnioAnteriorLlantas, 3).Style
StyleData.Font.Weight = ExcelFont.NormalWeight
StyleData.Font.Name = "Calibri"
StyleData.Font.Size = 8 * 20
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
If Row("TipoFila").ToString() = "2" Then
StyleData.Font.Weight = ExcelFont.BoldWeight
StyleData.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(255, 215, 0), SpreadsheetColor.FromArgb(255, 255, 255))
End If
IdxAnioAnteriorLlantas += 1
Next
For Each Row As DataRow In DtAnioAnteriorLLantas.FiltraParametros("TipoFila = 1").Rows
worksheet.Cells(IdxAnioAnteriorLlantas, 0).Value = Row("Grupo")
worksheet.Cells(IdxAnioAnteriorLlantas, 1).Value = Row("LLantasAnioAnterior")
worksheet.Cells(IdxAnioAnteriorLlantas, 2).Value = Row("LLantas")
worksheet.Cells(IdxAnioAnteriorLlantas, 3).Formula = $"=(+{worksheet.Cells(IdxAnioAnteriorLlantas, 1).Name} - {worksheet.Cells(IdxAnioAnteriorLlantas, 2).Name})"
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxAnioAnteriorLlantas, 0, IdxAnioAnteriorLlantas, 3).Style
StyleData.Font.Weight = ExcelFont.BoldWeight
StyleData.Font.Name = "Calibri"
StyleData.Font.Size = 8 * 20
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
StyleData.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(255, 215, 0), SpreadsheetColor.FromArgb(255, 255, 255))
IdxAnioAnteriorLlantas += 1
Next
DtAnioAnteriorLLantas.Dispose()
#End Region
Dim columnCount = worksheet.CalculateMaxUsedColumns()
For i = 0 To columnCount
worksheet.Columns(i).AutoFit(1, worksheet.Rows(0), worksheet.Rows(worksheet.Rows.Count - 1))
Next
FileExcel.Save(Response, $"DIARIO_{Now.ToString("dd_MM_yyyy")}.xlsx", SaveOptions.XlsxDefault)
End If
End Sub
Public Function ToMonthName(ByVal dateTime As DateTime) As String
Return New CultureInfo("es-MX").DateTimeFormat.GetMonthName(dateTime.Month)
End Function
Public Function ToShortMonthName(ByVal dateTime As DateTime) As String
Return New CultureInfo("es-MX").DateTimeFormat.GetAbbreviatedMonthName(dateTime.Month)
End Function
End Class

View File

@@ -453,7 +453,21 @@ Partial Class Ventas_RepVentas
FechaInicial = New DateTime(Anio, Mes, 1).ToString("dd/MM/yyyy")
End If
FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy")
Dim FechaFinalRef = New DateTime(Anio, Mes, Dia)
'ASIGNAR LA FECHA FINAL DEL GRUPO, SI ES MENOR A LA FECHA DEL FILTRO
If FechaF <> "-1" Then
If FechaFRef < FechaFinalRef Then
FechaFinal = FechaFRef.ToString("dd/MM/yyyy")
Else
FechaFinal = FechaFinalRef.ToString("dd/MM/yyyy")
End If
Else
FechaFinal = FechaFinalRef.ToString("dd/MM/yyyy")
End If
End If
Case 3 ' AÑO/MES
@@ -479,7 +493,19 @@ Partial Class Ventas_RepVentas
FechaInicial = New DateTime(Anio, Mes, 1).ToString("dd/MM/yyyy")
End If
FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy")
Dim FechaFinalRef = New DateTime(Anio, Mes, Dia)
'ASIGNAR LA FECHA FINAL DEL GRUPO, SI ES MENOR A LA FECHA DEL FILTRO
If FechaF <> "-1" Then
If FechaFRef < FechaFinalRef Then
FechaFinal = FechaFRef.ToString("dd/MM/yyyy")
Else
FechaFinal = FechaFinalRef.ToString("dd/MM/yyyy")
End If
Else
FechaFinal = FechaFinalRef.ToString("dd/MM/yyyy")
End If
End If
Case 4 ' FECHA

View File

@@ -353,7 +353,7 @@
<asp:HyperLink ID="HlCuentaTerminal" data-toggle="modal" data-target="#ModalCuentaTerminal" runat="server" Visible="false"><i class="fa fa-money"></i> Asignar Cuenta de Terminal</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="HplFolioFiscalModal" data-toggle="modal" data-target="#ModalFolioFiscal" runat="server" Visible="false"><i class="fa fa-plus"></i> Asignar Folio Fiscal</asp:HyperLink>
<asp:HyperLink ID="HplFolioFiscalModal" data-toggle="modal" data-target="#ModalFolioFiscal" runat="server" Visible="false"><i class="fa fa-pencil"></i> Asignar Folio Fiscal</asp:HyperLink>
</li>
<li>
<asp:LinkButton runat="server" ID="LnkImprimirFormatoCicovisa" Visible="false" OnClick="LnkImprimirFormatoCicovisa_Click">Imprimir Formato Cicovisa</asp:LinkButton>
@@ -4812,10 +4812,19 @@
<asp:RadioButtonList ID="RblTipo" runat="server" AutoPostBack="true" RepeatDirection="Horizontal" CssClass="input-group col-md-12" CellSpacing="100">
<asp:ListItem Value="3" Class="one" Selected="True"><label><b>Total x Concepto</b></label></asp:ListItem>
<asp:ListItem Value="1" Class="one"><label><b>Total General</b></label></asp:ListItem>
<asp:ListItem Value="2" Class="one"><label><b>Total x Remisión</b></label></asp:ListItem>
<asp:ListItem Value="2" Class="one"><label><b>Total x Remisión</b></label></asp:ListItem>
</asp:RadioButtonList>
</div>
</div>
<div class="row" id="DivPSRemision" runat="server" visible="false">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<label for="<%= DdlPSRemision.ClientID.ToString()%>">Producto/Servicio:</label>
<ADS:Dropdownlost runat="server" ID="DdlPSRemision" CssStyle="width: 100%;" CssClass=" form-control input-sm DdlPS" IncluyeTodos="false" CssClassDdl="select2me form-control" DataTextField="PSCodigo" DataValueField="CvePS" />
</div>
</div>
</div>
<br />
<div class="row">
<div class="col-md-8">
<asp:CheckBox ID="ChkRemProductos" runat="server" AutoPostBack="true" Text="Mostrar Productos" />
@@ -6230,7 +6239,7 @@
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Facturas Relacionadas</h4>
</div>
<div class="modal-body">
<div class="modal-body" style="width:900px;">
<div class="row">
<div class="col-md-2">
<label>Relación:</label>
@@ -6249,7 +6258,19 @@
<asp:DropDownList ID="DdlFacturaARelacionar" runat="server" AutoPostBack="true" AppendDataBoundItems="true" DataTextField="Folio" DataValueField="CveVenta" Width="100%" CssClass="select2me"></asp:DropDownList>
</div>
<div class="col-md-2">
<asp:LinkButton ID="LnkAgregarFacturaRelacionada" runat="server" CssClass="btn btn-sm btn-primary" OnClick="LnkAgregarFacturaRelacionada_Click"><i class="fa fa-plus"></i>Agregar</asp:LinkButton>
<asp:LinkButton ID="LnkAgregarFacturaRelacionada" runat="server" CssClass="btn btn-sm btn-primary" OnClick="LnkAgregarFacturaRelacionada_Click"><i class="fa fa-plus"></i>Agregar Factura</asp:LinkButton>
</div>
</div>
<br />
<div id="DivFolioFiscalAgregar" runat="server" class="row">
<div class="col-md-2">
<label>Folio Fiscal:</label>
</div>
<div class="col-md-8">
<asp:TextBox ID="TxtFolioFiscalRelacionar" runat="server" Text="" Width="100%" CssClass="form-control input-sm"></asp:TextBox>
</div>
<div class="col-md-2">
<asp:LinkButton ID="LnkAgregarFolioFiscalRelacionada" runat="server" CssClass="btn btn-sm btn-primary" OnClick="LnkAgregarFolioFiscalRelacionada_Click"><i class="fa fa-plus"></i>Agregar Folio</asp:LinkButton>
</div>
</div>
<br />
@@ -6290,8 +6311,10 @@
<div class="modal-body">
<asp:UpdatePanel runat="server" ID="UpdatePanel3" UpdateMode="Conditional">
<ContentTemplate>
Folio Fiscal
<asp:TextBox ID="TxtModalFolioFiscal" runat="server" Width="250px"></asp:TextBox>
<div class="row">
<div class="col-md-2"> Folio Fiscal</div>
<div class="col-md-10"> <asp:TextBox ID="TxtModalFolioFiscal" runat="server" Width="100%"></asp:TextBox></div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
@@ -6870,7 +6893,7 @@
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
<asp:Button Text="Aplicar Remisiones" ID="BtnAplicarRNCDevoluciones" OnClick="BtnAplicarRNCDevoluciones_Click" CssClass="btn btn-primary" runat="server" ValidationGroup="VGAplicarRNC" />
</div>
</div>

View File

@@ -2226,6 +2226,7 @@ Partial Class Ventas
CargaClasificaciones()
CargaPS(-1, DdlPS)
CargaPSRemision(-1, DdlPSRemision)
CargaPSPyME(-1, DdlPSPyME)
CreaDTVentas()
@@ -2312,7 +2313,7 @@ Partial Class Ventas
End If
'MUESTRA EL MODAL PARA PODER RELACIONAR FACTURAS
If UsuarioActual.Empresa.Funcionalidad(592) = "1" Then
If UsuarioActual.TienePermisoProceso(321) Then
HlFacturasRelaciondas.Visible = True
End If
@@ -2322,7 +2323,7 @@ Partial Class Ventas
ViewState("CveVenta") = Request("CveVenta")
If CargaVenta() Then
If UsuarioActual.Empresa.Funcionalidad(592) = "1" Then
If UsuarioActual.TienePermisoProceso(321) Then
CargaRelacionadasPendientes()
End If
@@ -4112,8 +4113,9 @@ Partial Class Ventas
'TxtIEPS.Text = If(TmpDT.SUM("IEPS") > 0, TmpDT.SUM("IEPS").FormatoNumero, TxtIEPS.Text)
End If
If DdlTipoComprobante.SelectedValue.Contiene("Egs", "Ing", "Ant", "Dev") AndAlso LblFolioFiscal.Text.Trim = "" Then HplFolioFiscalModal.Visible = True
If UsuarioActual.TienePermisoProceso(318) Then
If DdlTipoComprobante.SelectedValue.Contiene("Egs", "Ing", "Ant", "Dev") AndAlso String.IsNullOrEmpty(LblFolioFiscal.Text.Trim) Then HplFolioFiscalModal.Visible = True
End If
Select Case DbRowVenta("TipoDocto").ToString()
Case "Ing"
@@ -5963,7 +5965,7 @@ Partial Class Ventas
Private Sub CargaRelacionadasPendientes()
If CveVenta > 0 AndAlso UsuarioActual.Empresa.Funcionalidad(592) = "1" Then
If CveVenta > 0 AndAlso UsuarioActual.TienePermisoProceso(321) Then
Me.TmpDTFacturasRelacionadas = New DataTable()
Me.TmpDTFacturasRelacionadas.Columns.Add(New DataColumn("CveVenta", GetType(Integer)))
Me.TmpDTFacturasRelacionadas.Columns.Add(New DataColumn("SerieFolio", GetType(String)))
@@ -6051,6 +6053,37 @@ Partial Class Ventas
UpFacturasRelacionadas.Update()
End If
End Sub
Protected Sub LnkAgregarFolioFiscalRelacionada_Click(sender As Object, e As EventArgs)
If CveVenta <= 0 OrElse EsCreaApartirDe Then
If Me.TmpDTFacturasRelacionadas Is Nothing Then
CreaTmpFacturasRelacionadas()
End If
'If TmpDTFacturasRelacionadas.COUNT("CveVenta", $"CveVenta ={DdlFacturaARelacionar.SelectedValue.ToEntero()}") > 0 Then
' Alert("La factura ya fue agregada", TipoMensaje.MsgAdvertencia)
' Exit Sub
'End If
Dim idx As Integer = TmpDTFacturasRelacionadas.MIN("CveVenta", $"CveVenta <= 0").ToEntero()
If idx = 0 Then
idx = -1
End If
Dim Row As DataRow = TmpDTFacturasRelacionadas.NewRow()
Row("CveVenta") = idx - 1
Row("SerieFolio") = "SIN ASIGNAR"
Row("FolioFiscal") = TxtFolioFiscalRelacionar.Text
Me.TmpDTFacturasRelacionadas.Rows.Add(Row)
GvFacturasRelacionadas.DataSource = Me.TmpDTFacturasRelacionadas
GvFacturasRelacionadas.DataBind()
UpFacturasRelacionadas.Update()
End If
End Sub
Protected Sub BtnAgregarFacturasRelaciondas_Click(sender As Object, e As EventArgs)
If CveVenta <= 0 OrElse EsCreaApartirDe Then
@@ -6477,6 +6510,9 @@ Partial Class Ventas
ElseIf LimiteRestanteSucursal < LimiteRestanteCliente Then
Retorno = LimiteRestanteSucursal
PorcentajeCredito = PorcentajeSaldoSucursal
ElseIf LimiteRestanteSucursal = LimiteRestanteCliente Then
Retorno = LimiteRestanteSucursal
PorcentajeCredito = PorcentajeSaldoSucursal
End If
Else
@@ -6546,6 +6582,29 @@ Partial Class Ventas
Objeto.ddlWS.Attributes.Add("data-AplicaparaVenta", "1")
End If
End Sub
Private Sub CargaPSRemision(CveClasificacion As Integer, Objeto As ADServerControl.Dropdownlost)
Objeto.setEsWebService(UsuarioActual.Empresa.Funcionalidad(141).ToString() = "1")
If Not UsuarioActual.Empresa.Funcionalidad(141).ToString() = "1" Then
Objeto.ddl.Items.Clear()
'Objeto.ddl.DataSource = GlobalDTProductosServicios(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion, AplicaParaVenta:=1, Estatus:=1)
Objeto.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion, Estatus:=1, AplicaParaVenta:=1)
Objeto.ddl.DataBind()
Objeto.ddl.Items.Insert(0, New ListItem("*** Actualizar listado de Productos o Servicios ***", "-2"))
Objeto.ddl.Items.Insert(0, New ListItem("Seleccione el Producto", "-1"))
Else
Dim cvesubproyecto As String = "-1"
Objeto.Attributes.Add("data-cvesubproyecto", cvesubproyecto)
Objeto.ddlWS.Attributes.Add("data-cveclasificacion", CveClasificacion.ToString())
Objeto.ddlWS.Attributes.Add("data-pagina", "ventas/ventas")
Objeto.ddlWS.Attributes.Add("data-Estatus", "1")
Objeto.ddlWS.Attributes.Add("data-AplicaparaVenta", "1")
End If
End Sub
Private Sub CargaNC(pCveVenta As Integer)
If pCveVenta > 0 AndAlso DdlTipoComprobante.SelectedValue.Contiene("Egs", "Dev") Or DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant") Then
@@ -9112,6 +9171,13 @@ Partial Class Ventas
DtVentasNC.AcceptChanges()
End If
'ASIGNAR RFC RECEPTOR
If ObjFacturaBonificacion.Timbre IsNot Nothing Then
If ObjFacturaBonificacion.Timbre.Receptor IsNot Nothing Then
ObjFacturaBonificacion.RFCReceptor = ObjFacturaBonificacion.Timbre.Receptor.RFC
End If
End If
End Sub
@@ -9981,6 +10047,13 @@ Partial Class Ventas
ObjFactura.DescuentoProntoPago = HdnProntoPago.Value.ToDecimal()
ObjFactura.NuevaFactura = Me.NuevaFactura
'ASIGNAR RFC RECEPTOR
If ObjFactura.Timbre IsNot Nothing Then
If ObjFactura.Timbre.Receptor IsNot Nothing Then
ObjFactura.RFCReceptor = ObjFactura.Timbre.Receptor.RFC
End If
End If
End Sub
Private Sub CreaObjetosVentaDevolucion()
@@ -10273,6 +10346,13 @@ Partial Class Ventas
End If
ObjFacturaDevolucion.Timbre = PreParaTimbre(ObjFacturaDevolucion)
'ASIGNAR RFC RECEPTOR
If ObjFacturaDevolucion.Timbre IsNot Nothing Then
If ObjFacturaDevolucion.Timbre.Receptor IsNot Nothing Then
ObjFacturaDevolucion.RFCReceptor = ObjFacturaDevolucion.Timbre.Receptor.RFC
End If
End If
End Sub
Private Function PreParaTimbre(Obj As Modelos.Factura) As CFDITimbre
@@ -10378,7 +10458,7 @@ Partial Class Ventas
End If
'SI LAS FACTURAS SE RELACIONARAN MANUALMENTE SE AGREGAN
If UsuarioActual.Empresa.Funcionalidad(592) = "1" AndAlso Me.AplicaRelacionManual AndAlso DdlTipoRelacionARelacionar.SelectedValue.ToEntero() > 0 Then
If UsuarioActual.TienePermisoProceso(321) AndAlso Me.AplicaRelacionManual AndAlso DdlTipoRelacionARelacionar.SelectedValue.ToEntero() > 0 Then
Dim CveTipoRelacion As Integer = DdlTipoRelacionARelacionar.SelectedValue.ToEntero()
@@ -10432,7 +10512,7 @@ Partial Class Ventas
Dim concepto As New CFDIConceptos With {.Cantidad = drr("Cantidad").ToString().ToDecimal,
.Descripcion = tPS,
.ValorUnitario = drr("PU").ToString().ToDecimal,
.Importe = drr("TotalImporte").ToString().ToDecimal,
.Importe = If(UsuarioActual.Empresa.CvePAC = 3, drr("Total").ToString().ToDecimal, drr("TotalImporte").ToString().ToDecimal),
.Descuento = drr("Descuento").ToString().ToDecimal.RoundSQL(2),
.Unidad = drr("UM").ToString(),
.ClaveUnidad = drr("SATClaveUM").ToString(),
@@ -11025,11 +11105,20 @@ Partial Class Ventas
End If
End If
If UsuarioActual.Empresa.Funcionalidad(592) = "1" AndAlso Me.AplicaRelacionManual Then
If UsuarioActual.TienePermisoProceso(321) AndAlso Me.AplicaRelacionManual Then
For Each GvRow As GridViewRow In GvFacturasRelacionadas.Rows
If GvRow.RowType = DataControlRowType.DataRow Then
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, GvRow.DataKey("CveVenta").ToEntero()) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
If GvRow.DataKey("CveVenta").ToEntero() > 0 Then
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, GvRow.DataKey("CveVenta").ToEntero()) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
End If
Else
Dim FolioFiscalRelacionado As String = GvRow.DataKey("FolioFiscal")
If Not String.IsNullOrEmpty(FolioFiscalRelacionado) Then
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, -1, FolioFiscal:=FolioFiscalRelacionado) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
End If
End If
End If
End If
Next
@@ -14843,6 +14932,19 @@ Partial Class Ventas
Alert("La amortización no se pudo realizar ya que los importes no cubren la totalidad del documento. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
End If
End If
If Amortizacion > SubTotalRef Then
'[IPP] LIMPIA LO SELECCIONADO EN CASO DE QUE NO SEA AMORTIZACIÓN DEL 100% 15Junio2018
Amortizacion = 0
For Each gvr As GridViewRow In GVAnticipos.Rows
gvr.FCCheckBox($"Chk{gvr.RowIndex}").Checked = False
Next
If CveVenta <= 0 Then
Alert($"La amortización no se pudo realizar ya que los importes exceden la totalidad del documento.<br/> Importe sugerido para amortizar:<b>{SubTotalRef.FormatoNumero(2)}</b>.<br/> Por favor verifique y vuelva a intentar", TipoMensaje.MsgAdvertencia)
End If
End If
LblAmortizacion.Text = Amortizacion.FormatoNumero(2)
@@ -16178,7 +16280,7 @@ Partial Class Ventas
Private Sub DdlSubProyectoDatos_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlSubProyectoDatos.SelectedIndexChanged
CambiaSucursalGeneral()
End Sub
Private Sub CambiaSucursalGeneral()
Private Sub CambiaSucursalGeneral(Optional RecargarPartidas As Boolean = True)
Dim ObjSubProyectos As New ClsSubProyectos
'Dim ObjSucursal As New ClsSucursales
If ObjSubProyectos.GetSubProyectos() Then
@@ -16192,7 +16294,7 @@ Partial Class Ventas
'DdlSubProyecto.SelectedValue = "-1"
DdlSubProyecto.DataBind()
DdlSubProyecto.SelectedValueExist(DdlSubProyectoDatos.SelectedValue)
CambiaSucursal()
CambiaSucursal(RecargarPartidas)
DdlSubProyectoEjecucion.SelectedValueExist(DdlSubProyectoDatos.SelectedValue)
DdlSubProyectoCobranza.SelectedValueExist(DdlSubProyectoDatos.SelectedValue)
@@ -16210,12 +16312,16 @@ Partial Class Ventas
UpDetalle.Update()
End Sub
Private Sub CambiaSucursal()
Private Sub CambiaSucursal(Optional RecargarPartidas As Boolean = True)
CargaFormatoSucursal()
CargaFolios()
CargaVendedores()
CargarAlmacenes()
RecargaSucursalPartidas()
If RecargarPartidas Then
RecargaSucursalPartidas()
End If
DdlPS.Attributes.Remove("data-cvesubproyecto")
DdlPS.Attributes.Add("data-cvesubproyecto", DdlSubProyectoDatos.SelectedValue)
@@ -16225,6 +16331,7 @@ Partial Class Ventas
UpPS.Update()
End Sub
Private Sub RecargaSucursalPartidas()
Dim CveSubProyecto As Integer = DdlSubProyectoDatos.SelectedValue.ToEntero()
Dim SubProyecto As String = ""
If CveSubProyecto > 0 Then
@@ -23321,12 +23428,12 @@ Partial Class Ventas
Private Sub CargaPSPyME(CveClasificacion As Integer, Objeto As ADServerControl.Dropdownlost)
DdlPSPyME.setEsWebService(True)
Objeto.setEsWebService(True)
DdlPSPyME.Attributes.Add("data-cvesubproyecto", DdlSubProyectoDatos.SelectedValue)
DdlPSPyME.ddlWS.Attributes.Add("data-cveclasificacion", CveClasificacion.ToString())
DdlPSPyME.ddlWS.Attributes.Add("data-pagina", "ventas/ventas")
DdlPSPyME.ddlWS.Attributes.Add("data-Estatus", "1")
Objeto.Attributes.Add("data-cvesubproyecto", DdlSubProyectoDatos.SelectedValue)
Objeto.ddlWS.Attributes.Add("data-cveclasificacion", CveClasificacion.ToString())
Objeto.ddlWS.Attributes.Add("data-pagina", "ventas/ventas")
Objeto.ddlWS.Attributes.Add("data-Estatus", "1")
End Sub
@@ -24053,6 +24160,7 @@ Partial Class Ventas
Dim FileExtension As String = "-1"
Dim Filesgral As List(Of Archivo) = TxtFileCliente.getfiles().Archivos
Dim Filename As String = ""
Dim ErrorCarga As Boolean = False
For Each fileItem As Archivo In Filesgral
Try
@@ -24071,6 +24179,17 @@ Partial Class Ventas
Count = +1
Next
End If
If fileItem Is Nothing Then
ErrorCarga = True
Exit For
Else
If fileItem.FileUrl Is Nothing Then
ErrorCarga = True
Exit For
End If
End If
DtDocumentacionCliente(IndexDocumentoCliente)("RutaArchivo") = fileItem.FileUrl
DtDocumentacionCliente(IndexDocumentoCliente)("UpArchivo") = "1"
@@ -24083,6 +24202,11 @@ Partial Class Ventas
Next
If ErrorCarga Then
Alert("No se pudo cargar el archivo", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
GvDocumentosCliente.DataSource = DtDocumentacionCliente
GvDocumentosCliente.DataBind()
@@ -28357,8 +28481,11 @@ Partial Class Ventas
HuboCambioRemi = Not HuboCambioRemi
'TOTAL X CONCEPTO
If RblTipo.SelectedValue = "3" Then
'DivPSRemision.Visible = False
ChkRemProductos.Visible = True
Else
'DivPSRemision.Visible = True
CargaPSRemision(-1, DdlPSRemision)
ChkRemProductos.Visible = False
ChkRemProductos.Checked = False
End If
@@ -28367,6 +28494,12 @@ Partial Class Ventas
End Sub
Protected Sub BtnGuardarRemisiones_Click(sender As Object, e As EventArgs) Handles BtnGuardarRemisiones.Click
If GvRem.Rows.Count > 0 Or GvRemPS.Rows.Count > 0 Then
If RblTipo.SelectedValue.Contiene("1", "2") AndAlso DdlPSRemision.SelectedValue.ToEntero() <= 0 Then
Alert("Debe seleccionar un producto para facturar la remisión", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
'Checa las facturas selecionadas
If Not VerificaRemisiones(DTRemisiones) Then
Alert("La cantidad/total debe ser mayor que 0", TipoMensaje.MsgAdvertencia)
@@ -28468,9 +28601,9 @@ Partial Class Ventas
Next
IsTotalxConcepto = False
Dim PU As Decimal = dtSeleccionadas.SUM("SubTotal").ToDecimal
Dim PS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa)(0)
Dim PS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPSRemision.SelectedValue.ToEntero())(0)
Dim IVA As Double = If(dtSeleccionadas.SUM("Iva") > 0, dtSeleccionadas.SUM("Iva") / dtSeleccionadas.SUM("SubTotal"), 0.16)
Dim rowSP As DataRow = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa)(0)
Dim rowSP As DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa)(0)
AgregarProductoServicio(1, PS("CveUM").ToString().ToEntero(), PS("UnidadMedida").ToString(), PS("CveClasificacion").ToString().ToEntero(),
PS("Clasificacion").ToString(), PS("CvePS").ToString().ToEntero(), PS("PS").ToString(), "", PU, 0,
@@ -28496,8 +28629,8 @@ Partial Class Ventas
End If
Next
Dim PS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa)(0)
Dim rowSP As DataRow = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa)(0)
Dim PS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPSRemision.SelectedValue.ToEntero())(0)
Dim rowSP As DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa)(0)
Dim IVA As Double = If(dtSeleccionadas.SUM("Iva") > 0, dtSeleccionadas.SUM("Iva") / dtSeleccionadas.SUM("SubTotal"), 0.16)
For Each gvr As GridViewRow In GvRem.Rows
If gvr.FCCheckBox("Chk").Checked Then
@@ -29283,7 +29416,7 @@ Partial Class Ventas
End If
End If
ObjCliente.Dispose()
DdlTipoRetencion_SelectedIndexChanged(DdlTipoRetencion, EventArgs.Empty)
'DdlTipoRetencion_SelectedIndexChanged(DdlTipoRetencion, EventArgs.Empty)
TrVistaPrevia.Visible = True
TxtFechaVencimientoCotizacion.Text = Now.ToShortDateString
@@ -29293,7 +29426,7 @@ Partial Class Ventas
GvPS.Columns(18).Visible = True
CambiaTipoDocto()
CambiaSucursalGeneral()
CambiaSucursalGeneral(RecargarPartidas:=False)
CargaAnticipos(CveCliente)
CargaRestriccionesCreditoCliente(CveVenta:=-1)
@@ -29314,6 +29447,14 @@ Partial Class Ventas
CalculaTotalesVenta()
Dim PorcentajeRetIVA = (TmpDT.MAX("PorcentajeRetIVA").ToDecimal() * 100)
If PorcentajeRetIVA > 0 Then
TrRetIVA.Style.Add("display", "")
UsuarioActual.Empresa.MostrarRetIVA = True
DdlTipoRetencion.Visible = True
End If
UpnTools.Update()
UpCliente.Update()
UpParametros.Update()