Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -8,6 +8,7 @@ Imports System.IO
|
||||
Imports System.Net
|
||||
Imports System.Net.Http
|
||||
Imports Extensiones
|
||||
Imports Microsoft.JScript
|
||||
Imports Microsoft.Reporting.WebForms
|
||||
Imports Newtonsoft.Json
|
||||
Imports Newtonsoft.Json.Linq
|
||||
@@ -4107,7 +4108,7 @@ Partial Class Clientes
|
||||
|
||||
Private Sub GenerarPDFCrystal(Optional Formato As String = "PDF")
|
||||
|
||||
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.rpt", UsuarioActual.Empresa.Ruta))
|
||||
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.mrt", UsuarioActual.Empresa.Ruta))
|
||||
Dim RutaReporteGrales As New System.IO.FileInfo($"{DirectorioEmpresas}Grales\Formatos\RepClientesCxC.rpt")
|
||||
|
||||
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
|
||||
@@ -4134,8 +4135,8 @@ Partial Class Clientes
|
||||
Dim TipoDocto As String = If(DdlTipoDocto.GetSelectedValuesM = "", "-1", DdlTipoDocto.GetSelectedValuesM)
|
||||
Dim TipoDocto2 As String = If(DdlTipoDocto.GetSelectedValuesM = "", "-1", DdlTipoDocto.GetSelectedValuesM(True))
|
||||
Dim FechaVencimientoI As DateTime = If(TxtFechaVICxP.Text = "", MinFecha, TxtFechaVICxP.Text.ToDate())
|
||||
Dim FechaVencimientoF As DateTime = If(TxtFechaVFCxP.Text = "", MaxFecha, TxtFechaVFCxP.Text.ToDate())
|
||||
|
||||
Dim FechaVencimientoF As DateTime = If(TxtFechaVFCxP.Text = "", MaxFecha, TxtFechaVFCxP.Text.ToDate())
|
||||
|
||||
Dim ObjMovtos As New ClsMovimientos()
|
||||
If ObjMovtos.GetCxCClienteDetalle(CveCliente, FI, FF, -1, -1, UsuarioActual.CveEmpresa, DdlSucursalCliente.SelectedValue.ToEntero(), FechaVencimientoI:=FechaVencimientoI, FechaVencimientoF:=FechaVencimientoF) Then
|
||||
DtCxCFact = If(DdlTipoCuentasCxC.SelectedValue = "-1", ObjMovtos.DtResultados.FiltraParametros("", "TipoDocto").Copy, ObjMovtos.DtResultados.FiltraParametros("Tipo = 'Act'", "TipoDocto"))
|
||||
@@ -4332,23 +4333,46 @@ Partial Class Clientes
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió error al mandar MAIL de Orden de Compra", ex)
|
||||
End Try
|
||||
Else
|
||||
If Archivo.Exists Then
|
||||
Dim ArchivoSti As New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.mrt", UsuarioActual.Empresa.Ruta))
|
||||
If ArchivoSti.Exists Then
|
||||
Dim listass As New List(Of ReportParameter)
|
||||
For Each item As CrystalParametro In lista
|
||||
listass.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
Next
|
||||
ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), listass, "Estado de cuenta", Formato)
|
||||
Else
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.rpt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
End If
|
||||
|
||||
Else
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(RutaReporteGrales.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
Else
|
||||
|
||||
Dim ParametrosStimul As New List(Of ReportParameter)
|
||||
For Each item As CrystalParametro In lista
|
||||
ParametrosStimul.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
Next
|
||||
|
||||
If Archivo.Exists Then
|
||||
ImprimirPDFStimul(Archivo.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), ParametrosStimul, "Estado de cuenta", Formato)
|
||||
Else
|
||||
Archivo = New System.IO.FileInfo(String.Format("{0}Grales/Formatos/RepClientesCxC.mrt", DirectorioEmpresas))
|
||||
If Archivo.Exists Then
|
||||
ImprimirPDFStimul(Archivo.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), ParametrosStimul, "Estado de cuenta", Formato)
|
||||
Else
|
||||
Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.rpt", UsuarioActual.Empresa.Ruta))
|
||||
If Archivo.Exists Then
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(Archivo.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
Else
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(String.Format("{0}Grales/Formatos/RepClientesCxC.rpt", DirectorioEmpresas), DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
'If Archivo.Exists Then
|
||||
' Dim ArchivoSti As New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.mrt", UsuarioActual.Empresa.Ruta))
|
||||
' If ArchivoSti.Exists Then
|
||||
' Dim listass As New List(Of ReportParameter)
|
||||
' For Each item As CrystalParametro In lista
|
||||
' listass.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
' Next
|
||||
' ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), listass, "Estado de cuenta", Formato)
|
||||
' Else
|
||||
' ImprimirbytesPDF(ImprimirPDFCrystal($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.rpt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
' End If
|
||||
|
||||
'Else
|
||||
' ImprimirbytesPDF(ImprimirPDFCrystal(RutaReporteGrales.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
'End If
|
||||
|
||||
End If
|
||||
Else
|
||||
Dim lista As New List(Of CrystalParametro)
|
||||
@@ -4384,22 +4408,48 @@ Partial Class Clientes
|
||||
drr("Saldo") = 0
|
||||
drr("SaldoAnticipo") = 0
|
||||
drr("CveMoneda") = 1
|
||||
DtCxCFact2.Rows.Add(drr)
|
||||
DtCxCFact2.Rows.Add(drr)
|
||||
|
||||
Dim ParametrosStimul As New List(Of ReportParameter)
|
||||
For Each item As CrystalParametro In lista
|
||||
ParametrosStimul.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
Next
|
||||
|
||||
If Archivo.Exists Then
|
||||
Dim ArchivoSti As New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.mrt", UsuarioActual.Empresa.Ruta))
|
||||
If ArchivoSti.Exists Then
|
||||
Dim listass As New List(Of ReportParameter)
|
||||
For Each item As CrystalParametro In lista
|
||||
listass.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
Next
|
||||
ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), listass, "Estado de cuenta", Formato)
|
||||
Else
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.rpt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
End If
|
||||
Else
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(RutaReporteGrales.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
|
||||
If Archivo.Exists Then
|
||||
ImprimirPDFStimul(Archivo.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), ParametrosStimul, "Estado de cuenta", Formato)
|
||||
Else
|
||||
Archivo = New System.IO.FileInfo(String.Format("{0}Grales/Formatos/RepClientesCxC.mrt", DirectorioEmpresas))
|
||||
If Archivo.Exists Then
|
||||
ImprimirPDFStimul(Archivo.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), ParametrosStimul, "Estado de cuenta", Formato)
|
||||
Else
|
||||
Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.rpt", UsuarioActual.Empresa.Ruta))
|
||||
If Archivo.Exists Then
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(Archivo.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
Else
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(String.Format("{0}Grales/Formatos/RepClientesCxC.rpt", DirectorioEmpresas), DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
'If Archivo.Exists Then
|
||||
' Dim ArchivoSti As New System.IO.FileInfo(String.Format("{0}Formatos/RepClientesCxC.mrt", UsuarioActual.Empresa.Ruta))
|
||||
' If ArchivoSti.Exists Then
|
||||
' Dim listass As New List(Of ReportParameter)
|
||||
' For Each item As CrystalParametro In lista
|
||||
' listass.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
' Next
|
||||
' ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), listass, "Estado de cuenta", Formato)
|
||||
' Else
|
||||
' ImprimirbytesPDF(ImprimirPDFCrystal($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.rpt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
' End If
|
||||
'Else
|
||||
' ImprimirbytesPDF(ImprimirPDFCrystal(RutaReporteGrales.FullName, DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
'End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
Private Sub MandaCorreoEstadoCuenta(UsuarioActual As Usuario, CveEmpresa As Integer, CveCliente As Integer, File As Byte(), Para As String, Asunto As String, Body As String, Optional GuardarBitacora As Boolean = False)
|
||||
@@ -10898,19 +10948,24 @@ Partial Class Clientes
|
||||
Dim PorcentajePagoDevDin As Decimal = (gvr.DataKey("Saldo").ToDecimal / gvr.DataKey("Total").ToDecimal).RoundSQL(6)
|
||||
Dim tCveConcepto As Integer
|
||||
ImporteAplicar = gvr.DataKey("Saldo").ToDecimal
|
||||
Dim CveVentaAmortizacion As Integer = -1
|
||||
|
||||
If gvr.DataKey("Tipo") = "IxC" Then
|
||||
tCveConcepto = 92 : tTipoMovto = False
|
||||
ElseIf gvr.DataKey("Tipo").Contiene("Dev", "NC") Then
|
||||
tCveConcepto = 12 : ImporteAplicar = -ImporteAplicar : tTipoMovto = True
|
||||
CveVentaAmortizacion = gvr.DataKey("CveVenta").ToEntero
|
||||
tCveConcepto = 91 : ImporteAplicar = ImporteAplicar : tTipoMovto = False
|
||||
ElseIf gvr.DataKey("Tipo").Contiene("Ant") Then
|
||||
tCveConcepto = 11 : ImporteAplicar = ImporteAplicar : tTipoMovto = False
|
||||
End If
|
||||
|
||||
ImporteAplicarMN = (ImporteAplicar * If(tCveMoneda = 1, 1, tTipoCambio)).RoundSQL()
|
||||
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, tTipoMovto, ImporteAplicar, ImporteAplicarMN, tCveConcepto, ReferenciaAplicar, ConceptoAplicar, CveIE:=gvr.DataKey("CveIE").ToEntero, CveVenta:=gvr.DataKey("CveVenta").ToEntero, CveCliente:=CveCliente, ImporteME:=ImporteAplicarME) Then
|
||||
|
||||
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, tTipoMovto, ImporteAplicar, ImporteAplicarMN, tCveConcepto, ReferenciaAplicar, ConceptoAplicar, CveIE:=gvr.DataKey("CveIE").ToEntero, CveVenta:=gvr.DataKey("CveVenta").ToEntero, CveCliente:=CveCliente, ImporteME:=ImporteAplicarME, CveVentaAmortizacion:=CveVentaAmortizacion) Then
|
||||
MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
|
||||
Exit For
|
||||
End If
|
||||
|
||||
'IMPUESTOS
|
||||
If gvr.DataKey("IVA").ToDecimal > 0 Then
|
||||
tImporte = -(gvr.DataKey("IVA").ToDecimal * PorcentajePagoDevDin).RoundSQL
|
||||
@@ -10923,6 +10978,7 @@ Partial Class Clientes
|
||||
Exit For
|
||||
End If
|
||||
End If
|
||||
|
||||
If gvr.DataKey("IEPS").ToDecimal > 0 Then
|
||||
tImporte = (gvr.DataKey("IEPS").ToDecimal * PorcentajePagoDevDin).RoundSQL
|
||||
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, tImporte, tImporte, 39, ReferenciaAplicar, ConceptoAplicar, CveIE:=CveIE, CveVenta:=gvr.DataKey("CveVenta").ToEntero, CveCliente:=CveCliente, ImporteME:=ImporteAplicarME) Then
|
||||
@@ -10930,6 +10986,7 @@ Partial Class Clientes
|
||||
Exit For
|
||||
End If
|
||||
End If
|
||||
|
||||
If gvr.DataKey("RetIVA").ToDecimal > 0 Then
|
||||
tImporte = (gvr.DataKey("RetIVA").ToDecimal * PorcentajePagoDevDin).RoundSQL
|
||||
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, tImporte, tImporte, 62, ReferenciaAplicar, ConceptoAplicar, CveIE:=CveIE, CveVenta:=gvr.DataKey("CveVenta").ToEntero, CveCliente:=CveCliente, ImporteME:=ImporteAplicarME) Then
|
||||
@@ -10937,6 +10994,7 @@ Partial Class Clientes
|
||||
Exit For
|
||||
End If
|
||||
End If
|
||||
|
||||
If gvr.DataKey("RetISR").ToDecimal > 0 Then
|
||||
tImporte = (gvr.DataKey("RetISR").ToDecimal * PorcentajePagoDevDin).RoundSQL
|
||||
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, tImporte, tImporte, 63, ReferenciaAplicar, ConceptoAplicar, CveIE:=CveIE, CveVenta:=gvr.DataKey("CveVenta").ToEntero, CveCliente:=CveCliente, ImporteME:=ImporteAplicarME) Then
|
||||
@@ -10944,6 +11002,7 @@ Partial Class Clientes
|
||||
Exit For
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
Next
|
||||
|
||||
|
||||
@@ -2390,8 +2390,16 @@ Partial Class Ventas_PVCobranza
|
||||
Next
|
||||
End If
|
||||
|
||||
Dim CveVenta As Integer = gvr.DataKey("CveVenta").ToEntero()
|
||||
Dim CveIE As Integer = gvr.DataKey("CveIE").ToEntero()
|
||||
Dim CveVenta As Integer = -1
|
||||
Dim CveIE As Integer = -1
|
||||
|
||||
If gvr.DataKey("Tipo").Contiene("NC", "Ant") Then
|
||||
CveVenta = gvr.DataKey("CveVenta").ToEntero()
|
||||
End If
|
||||
|
||||
If gvr.DataKey("Tipo").Contiene("IxC") Then
|
||||
CveIE = gvr.DataKey("CveIE").ToEntero()
|
||||
End If
|
||||
|
||||
Dim ObjVta As New ClsVentas
|
||||
If ObjVta.AddAutorizacionLimite(UsuarioActual.CveEmpresa, CveCliente, CveVendedor, Saldo, CveEstatus:=0, CveUsuario:=UsuarioActual.CveUsuario, TipoAutorizacion:=1, TipoDocumento:="Ant", DiasVencidos:=1, CveVenta:=CveVenta, CveIE:=CveIE) Then
|
||||
|
||||
@@ -420,11 +420,15 @@
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkEnvioDeCorreoFactura" runat="server" CausesValidation="False" OnClick="LnkEnvioDeCorreoFactura_Click" Visible="false"> <i class="fa fa-envelope-o" aria-hidden="true"></i> Envio De Correo</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkExportarExcelCot" runat="server" CausesValidation="False" OnClick="LnkExportarExcelCot_Click" Visible="false"> <i class="fa fa-file-excel-o" aria-hidden="true"></i> Exportar a Excel</asp:LinkButton>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:AsyncPostBackTrigger ControlID="LnkImprimir" EventName="Click" />
|
||||
<asp:PostBackTrigger ControlID="LnkImprimirFormatoCicovisa" />
|
||||
<asp:PostBackTrigger ControlID="LnkImprimirFormatoTelcel" />
|
||||
<asp:PostBackTrigger ControlID="LnkExportarExcelCot" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
</asp:Content>
|
||||
@@ -1284,7 +1288,7 @@
|
||||
</table>
|
||||
|
||||
<asp:GridView ID="GvPS" GridLines="None" runat="server" data-tableheader="#tbps" ShowHeader="true" AutoGenerateColumns="False"
|
||||
DataKeyNames="Consec,CvePS,Total, IEPS, CveClasificacion,Clasificacion,CveUM,UM,CveProyecto,CveSubProyecto,TipoDocto,PS,Obs,Cantidad,PU,Descuento,IVA,ImporteIVA,CantidadInventario,CantidadFacturadaRem,CveVentaDetalle,CvePromocionDetalle,CvePrecioLista"
|
||||
DataKeyNames="Consec,CvePS,Total, IEPS, CveClasificacion,Clasificacion,CveUM,UM,CveProyecto,CveSubProyecto,TipoDocto,PS,Obs,Cantidad,PU,Descuento,IVA,ImporteIVA,CantidadInventario,CantidadFacturadaRem,CveVentaDetalle,CvePromocionDetalle,CvePrecioLista,Codigo,NumeroParte,TotalImporte"
|
||||
CssClass="table table-striped table-advance table-hover Widthall Sortable mysmallbtn ScrollAD" Style="min-width: 980px;">
|
||||
<Columns>
|
||||
<%--0--%>
|
||||
|
||||
@@ -14,6 +14,7 @@ Imports Extensiones
|
||||
Imports Microsoft.Reporting.WebForms
|
||||
Imports Modelos
|
||||
Imports Newtonsoft.Json.Linq
|
||||
Imports GemBox.Spreadsheet
|
||||
|
||||
Partial Class Ventas
|
||||
Inherits ClsPaginas
|
||||
@@ -2345,6 +2346,15 @@ Partial Class Ventas
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property TieneFacturasCanceladas As Integer
|
||||
Get
|
||||
Return IfNull(ViewState("TieneFacturasCanceladas"), "0", ViewState("TieneFacturasCanceladas")).ToString().ToEntero()
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("TieneFacturasCanceladas") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property TieneBloqueoPorCreditoVencimiento As Integer
|
||||
Get
|
||||
Return IfNull(ViewState("TieneBloqueoPorCreditoVencimiento"), "0", ViewState("TieneBloqueoPorCreditoVencimiento")).ToString().ToEntero()
|
||||
@@ -4982,6 +4992,11 @@ Partial Class Ventas
|
||||
If DbRowVenta("TipoDocto").ToString() = "Egs" Then
|
||||
If ObjVentas.GetVentasRelacionadas(CveVenta, UsuarioActual.CveEmpresa, TipoRelacion:=2) Then
|
||||
DtVentasRelacionadas = ObjVentas.DtResultados.FiltraParametros("TipoDocto IN ('Ing','Ant','Egs','Dev')")
|
||||
|
||||
If DtAntRelacionados IsNot Nothing AndAlso DtAntRelacionados.FiltraParametros("TipoEstatus = 5").Rows.Count > 0 Then
|
||||
TieneFacturasCanceladas = 1
|
||||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
@@ -6386,6 +6401,18 @@ Partial Class Ventas
|
||||
Next
|
||||
End If
|
||||
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(385)
|
||||
|
||||
If PuedeVerCosto AndAlso DbRowVenta("TipoDocto").ToString() = "Cot" Then
|
||||
GvPS.Columns(10).Visible = True
|
||||
thCosto.Visible = True
|
||||
thCosto2.Visible = True
|
||||
LnkExportarExcelCot.Visible = True
|
||||
|
||||
UpnTools.Update()
|
||||
UpPS.Update()
|
||||
End If
|
||||
|
||||
End If
|
||||
End Using
|
||||
End If
|
||||
@@ -7799,7 +7826,7 @@ Partial Class Ventas
|
||||
|
||||
Dim ValorAutorizacion As String = UsuarioActual.Empresa.Funcionalidad(595)
|
||||
'solo para bdh, que se generen NC
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then DdlSolCreditoTipoDocto.Items.Add(New ListItem("Nota de crédito", "Egs"))
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso DdlSolCreditoTipoDocto.Items.FindByValue("Egs") Is Nothing Then DdlSolCreditoTipoDocto.Items.Add(New ListItem("Nota de crédito", "Egs"))
|
||||
Me.Bloqueada = False
|
||||
'OBLIGAR PAGO DE CONTADO SI EL CLIENTE NO PERMITE CREDITO
|
||||
If Not EsFilial AndAlso (Not UsuarioActual.Empresa.Funcionalidad(702).Contiene("1")) AndAlso Me.PermiteCredito = False AndAlso ((DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "Cot") AndAlso CveVenta < 1) OrElse (DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "Cot", "PA") AndAlso EsCreaApartirDe) OrElse (DdlTipoComprobante.SelectedValue.Contiene("Cot") AndAlso CveVenta > 0)) Then
|
||||
@@ -8390,15 +8417,19 @@ Partial Class Ventas
|
||||
If Not CBool(ObjClie.DtResultados.FiltroPrimeroValor("InformacionCompleta")) Then
|
||||
Dim OpcionMsg As String = String.Format("El Cliente se encuentra bloqueado por la siguiente razón: <br> <br> {0}", "Información incompleta")
|
||||
Alert(OpcionMsg, TipoMensaje.MsgAdvertencia)
|
||||
|
||||
BtnEmitirImprimir.Visible = False
|
||||
BtnsFacturar.Visible = False
|
||||
BtnGenerarRemision.Visible = False
|
||||
|
||||
TieneBloqueoPorCreditoVencimiento = 1
|
||||
End If
|
||||
End If
|
||||
ObjClie.Dispose()
|
||||
|
||||
If TieneBloqueoPorCreditoVencimiento = 1 Then
|
||||
BtnEmitirImprimir.Visible = False
|
||||
BtnsFacturar.Visible = False
|
||||
BtnGenerarRemision.Visible = False
|
||||
|
||||
UpFacturar.Update()
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
@@ -9143,10 +9174,10 @@ Partial Class Ventas
|
||||
End If
|
||||
End If
|
||||
|
||||
If CveVenta <= 0 Then
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(201) OrElse UsuarioActual.TienePermisoProceso(385)
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(385)
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" AndAlso PuedeVerCosto Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" AndAlso PuedeVerCosto Then
|
||||
If CveVenta <= 0 Then
|
||||
If e.Row.DBCampo("PU").ToDecimal() > 0 Then
|
||||
e.Row.FCLabel("LblCosto").Text = String.Format("{0:N2}", e.Row.DBCampo("Costo").ToDecimal())
|
||||
e.Row.FCLabel("LblCostoPorcentaje").Text = String.Format("{0:N2} %", ((e.Row.DBCampo("PU").ToDecimal() - e.Row.DBCampo("Costo").ToDecimal()) / e.Row.DBCampo("PU").ToDecimal()) * 100D)
|
||||
@@ -9154,6 +9185,14 @@ Partial Class Ventas
|
||||
e.Row.FCLabel("LblCosto").Text = ""
|
||||
e.Row.FCLabel("LblCostoPorcentaje").Text = ""
|
||||
End If
|
||||
ElseIf CveVenta > 0 Then
|
||||
If e.Row.DBCampo("PU").ToDecimal() > 0 Then
|
||||
e.Row.FCLabel("LblCosto").Text = String.Format("{0:N2}", e.Row.DBCampo("UltimoCosto").ToDecimal())
|
||||
e.Row.FCLabel("LblCostoPorcentaje").Text = String.Format("{0:N2} %", ((e.Row.DBCampo("PU").ToDecimal() - e.Row.DBCampo("UltimoCosto").ToDecimal()) / e.Row.DBCampo("PU").ToDecimal()) * 100D)
|
||||
Else
|
||||
e.Row.FCLabel("LblCosto").Text = ""
|
||||
e.Row.FCLabel("LblCostoPorcentaje").Text = ""
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
@@ -13742,7 +13781,13 @@ Partial Class Ventas
|
||||
Timbre.Comprobante.TipoComprobante = If(Obj.TipoDocto.Contiene("Ing", "Ant"), "I", If(Obj.TipoDocto.Contiene("Egs", "Dev"), "E", ""))
|
||||
Timbre.Comprobante.Folio = Obj.Folio.ToString()
|
||||
Timbre.Comprobante.Serie = Obj.Serie
|
||||
Timbre.Comprobante.Fecha = Obj.FechaCP
|
||||
|
||||
If Me.CveVenta = 4381091 Then
|
||||
Timbre.Comprobante.Fecha = Obj.Fecha
|
||||
Else
|
||||
Timbre.Comprobante.Fecha = Obj.FechaCP
|
||||
End If
|
||||
|
||||
|
||||
Timbre.Comprobante.CondicionesdePago = If(UsuarioActual.CveEmpresa.Contiene(15, 76, 198), "No Aplica", Obj.FormaPago)
|
||||
Timbre.Comprobante.MetodoPago = GlobalDTVtaMetodoPago.FiltroPrimeroValor("ClaveMetodoPagoSAT", $"CveMetodoPago = {Obj.CveMetodoPago}") ' Obj.ClaveMetodoPagoSAT
|
||||
@@ -18406,6 +18451,11 @@ Partial Class Ventas
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If TieneFacturasCanceladas = 1 Then
|
||||
Alert("La factura relacionada esta cancelada", TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If UsuarioActual.Empresa.TipoFacturacion = "CFDi" Then
|
||||
If UsuarioActual.Empresa.FacturaProduccion Then
|
||||
|
||||
@@ -18940,7 +18990,7 @@ Partial Class Ventas
|
||||
|
||||
If UsuarioActual.CveEmpresa = 189 Then
|
||||
AgregarPSAutomaticamente = False
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(201) OrElse UsuarioActual.TienePermisoProceso(385)
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(385)
|
||||
|
||||
Dim Costo As Decimal = 0
|
||||
|
||||
@@ -22597,9 +22647,9 @@ Partial Class Ventas
|
||||
' HlAgregarExcel.Visible = True
|
||||
End If
|
||||
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(201) OrElse UsuarioActual.TienePermisoProceso(385)
|
||||
Dim PuedeVerCosto As Boolean = UsuarioActual.TienePermisoProceso(385)
|
||||
|
||||
If (CveVenta <= 0 OrElse EsCreaApartirDe) AndAlso UsuarioActual.Empresa.Funcionalidad(382) = "1" AndAlso DdlTipoComprobante.SelectedValue = "Cot" AndAlso PuedeVerCosto Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" AndAlso DdlTipoComprobante.SelectedValue = "Cot" AndAlso PuedeVerCosto Then
|
||||
GvPS.Columns(10).Visible = True
|
||||
thCosto.Visible = True
|
||||
thCosto2.Visible = True
|
||||
@@ -38491,6 +38541,22 @@ Partial Class Ventas
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
'SI ESTA BLOQUEADO Y NO ES POR INFO INCOMPLETA, DEJAR MANDAR SOLICITUD DE AUTORIZACION
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
||||
Dim InformacionCompleta As Boolean = False
|
||||
Dim ObjClie As New ClsClientes
|
||||
If ObjClie.GetClienteInformacionCompleta(CveCliente, UsuarioActual.CveEmpresa) Then
|
||||
InformacionCompleta = CBool(ObjClie.DtResultados.FiltroPrimeroValor("InformacionCompleta"))
|
||||
End If
|
||||
ObjClie.Dispose()
|
||||
|
||||
If InformacionCompleta AndAlso TieneBloqueoPorCreditoVencimiento = 1 Then
|
||||
If DdlSolCreditoTipoDocto.Items.FindByValue("Ing") Is Nothing Then
|
||||
DdlSolCreditoTipoDocto.Items.Insert(0, New ListItem("Ingreso", "Ing"))
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
TxtImporteSolicitud.Text = ""
|
||||
DdlSolCreditoTipoDocto_SelectedIndexChanged(Nothing, EventArgs.Empty)
|
||||
RegistraScript("$('#DivModalSolicitarCredito').modal('show')")
|
||||
@@ -41735,5 +41801,71 @@ Partial Class Ventas
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub LnkExportarExcelCot_Click(sender As Object, e As EventArgs)
|
||||
Dim DtExcel As DataTable = (From row As GridViewRow In GvPS.Rows.Cast(Of GridViewRow)
|
||||
Where row.RowType = DataControlRowType.DataRow
|
||||
Select New With
|
||||
{
|
||||
.Codigo = row.DataKey("Codigo").Trim(),
|
||||
.NumeroParte = row.DataKey("NumeroParte").Trim(),
|
||||
.Descripcion = row.DataKey("PS").Trim(),
|
||||
.Medida = row.DataKey("UM").Trim(),
|
||||
.Cantidad = row.FCLiteral("LtlCantidad").Text.Trim().ToDecimal(),
|
||||
.Precio = row.FCLiteral("LtlPU").Text.Trim().ToDecimal(),
|
||||
.SubImporte = row.DataKey("TotalImporte").ToDecimal(),
|
||||
.MargenUtilidad = row.FCLabel("LblCostoPorcentaje").Text.Replace("%", "").Replace(" ", "").Trim().ToDecimal(),
|
||||
.UltimoCosto = row.FCLabel("LblCosto").Text.Trim().ToDecimal()
|
||||
}).QueryToDataTable(True)
|
||||
If DtExcel.Rows.Count < 1 Then
|
||||
Alert("No hay resultados en la busqueda.", TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim folio = LblSerie.Text + "-" + TxtFolio.Text
|
||||
|
||||
|
||||
DtExcel.TableName = folio
|
||||
|
||||
|
||||
DtExcel.Columns("Codigo").ColumnName = "Código"
|
||||
DtExcel.Columns("Descripcion").ColumnName = "Descripción"
|
||||
DtExcel.Columns("NumeroParte").ColumnName = "Número de parte"
|
||||
DtExcel.Columns("SubImporte").ColumnName = "Sub-Importe"
|
||||
DtExcel.Columns("MargenUtilidad").ColumnName = "Margen de utilidad"
|
||||
DtExcel.Columns("UltimoCosto").ColumnName = "Último costo"
|
||||
|
||||
SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
|
||||
|
||||
Dim FileExcel As New ExcelFile()
|
||||
|
||||
Dim worksheet As ExcelWorksheet = FileExcel.Worksheets.Add(DtExcel.TableName)
|
||||
worksheet.InsertDataTable(DtExcel, New InsertDataTableOptions() With
|
||||
{
|
||||
.ColumnHeaders = True,
|
||||
.StartRow = 0,
|
||||
.StartColumn = 0
|
||||
})
|
||||
worksheet.Rows(0).Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(75, 119, 190), SpreadsheetColor.FromArgb(255, 255, 255))
|
||||
worksheet.Rows(0).Style.Font.Color = SpreadsheetColor.FromArgb(255, 255, 255)
|
||||
|
||||
'CANTIDAD
|
||||
worksheet.Columns(4).Style.NumberFormat = "#,##0.00"
|
||||
'PRECIO
|
||||
worksheet.Columns(5).Style.NumberFormat = "$#,##0.00_);($#,##0.00)"
|
||||
'IMPORTE
|
||||
worksheet.Columns(6).Style.NumberFormat = "$#,##0.00_);($#,##0.00)"
|
||||
'UTILIDAD
|
||||
worksheet.Columns(7).Style.NumberFormat = "#,##0.00"
|
||||
'ULTIMO COSTO
|
||||
worksheet.Columns(8).Style.NumberFormat = "$#,##0.00_);($#,##0.00)"
|
||||
|
||||
Dim columnCount As Integer = worksheet.CalculateMaxUsedColumns()
|
||||
For i As Integer = 0 To columnCount
|
||||
worksheet.Columns(i).AutoFit(1, worksheet.Rows(0), worksheet.Rows(worksheet.Rows.Count - 1))
|
||||
Next
|
||||
|
||||
FileExcel.Save(Response, $"{folio}.xlsx", SaveOptions.XlsxDefault)
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user