Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -945,6 +945,7 @@ Partial Class AF_AF
|
||||
CargaSubTipoActivoFijo()
|
||||
DdlSubTipoActivoFijo.SelectedValue = ObjActivoFijo.CveSubTipoActivoFijo.ToString()
|
||||
LatLong.Visible = UsuarioActual.CveEmpresa = 158 And ((DdlTipoActivoFijo.SelectedItem.Text.ToUpper() = "POZO") Or (DdlSubTipoActivoFijo.SelectedItem.Text.ToUpper() = "POZO") Or (DdlTipoActivoFijo.SelectedItem.Text.ToUpper() = "POZOS") Or (DdlSubTipoActivoFijo.SelectedItem.Text.ToUpper() = "POZOS"))
|
||||
TxtAgroCuenta.Text = ObjActivoFijo.DtResultados.Rows(0)("AgroCuenta").ToString()
|
||||
TxtLatitud.Text = ObjActivoFijo.DtResultados.Rows(0)("Lat").ToString()
|
||||
TxtLongitud.Text = ObjActivoFijo.DtResultados.Rows(0)("Long").ToString()
|
||||
|
||||
@@ -2490,7 +2491,7 @@ Partial Class AF_AF
|
||||
DdlEstadoActivoFijo.SelectedValue.ToEntero, DdlCtaContableDepreciacion.SelectedValue.ToEntero, TxtPorDepreciacion.Text.Trim.ToDouble,
|
||||
TxtObservaciones.Text.Trim, Ddlclientes.SelectedValue.ToEntero, CveMovimientoSalidaInv, UsuarioActual.CveUsuario, CveEmpresaActual, CveMarca:=DdlMarcas.SelectedValue.ToEntero,
|
||||
CveModelo:=DdlModelos.SelectedValue.ToEntero, CveGrupo:=DdlGrupo.SelectedValue.ToEntero, CveAFPadre:=DdlAFPadres.SelectedValue.ToEntero, CveDispositivo:=DdlDispositivo.SelectedValue.ToEntero,
|
||||
FechaBaja:=FechaBaja, Lat:=TxtLatitud.Text, Longi:=TxtLongitud.Text) > 0 Then
|
||||
FechaBaja:=FechaBaja, Lat:=TxtLatitud.Text, Longi:=TxtLongitud.Text, AgroCuenta:=TxtAgroCuenta.Text) > 0 Then
|
||||
ViewState("CveActivoFijo") = ObjAF.CveActivoFijo
|
||||
Else
|
||||
ErrorGuardar = True
|
||||
@@ -2596,7 +2597,7 @@ Partial Class AF_AF
|
||||
DdlSubProyecto.SelectedValue.ToEntero, DdlCtaContable.SelectedValue.Trim.ToEntero, DdlEstadoActivoFijo.SelectedValue.ToEntero, DdlCtaContableDepreciacion.SelectedValue.ToEntero,
|
||||
TxtPorDepreciacion.Text.Trim.ToDouble, TxtObservaciones.Text.Trim, Ddlclientes.SelectedValue.ToEntero, UsuarioActual.CveUsuario, CveEmpresaActual,
|
||||
CveMarca:=DdlMarcas.SelectedValue.ToEntero, CveModelo:=DdlModelos.SelectedValue.ToEntero, CveGrupo:=DdlGrupo.SelectedValue.ToEntero, CveAFPadre:=DdlAFPadres.SelectedValue.ToEntero, CveDispositivo:=DdlDispositivo.SelectedValue.ToEntero,
|
||||
FechaBaja:=FechaBaja, Lat:=TxtLatitud.Text, Longi:=TxtLongitud.Text) Then
|
||||
FechaBaja:=FechaBaja, Lat:=TxtLatitud.Text, Longi:=TxtLongitud.Text, AgroCuenta:=TxtAgroCuenta.Text) Then
|
||||
|
||||
'Comentado porque te redirecciona no se ocupa - 22 Enero 2016 - Israel Piña
|
||||
'CargaDatos()
|
||||
|
||||
@@ -1931,7 +1931,7 @@ Public Class ClsCompras
|
||||
|
||||
#Region " REFACTURACION "
|
||||
|
||||
Public Function GetRefacturacion(CveProveedor As Integer, SubTotal As Double, IVA As Double, Total As Double, Opcion As Integer, CveEmpresa As Integer) As Boolean
|
||||
Public Function GetRefacturacion(CveProveedor As Integer, SubTotal As Double, IVA As Double, Total As Double, Opcion As Integer, CveEmpresa As Integer, Optional Top As Integer = 100000) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_Comp_RefacturacionGet")
|
||||
|
||||
@@ -1942,6 +1942,7 @@ Public Class ClsCompras
|
||||
.Add("@Total", SqlDbType.Float).Value = Total
|
||||
.Add("@Opcion", SqlDbType.Int).Value = Opcion ' 1. Exácta, 2. Con diferencia
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
.Add("@Top", SqlDbType.Int).Value = Top
|
||||
End With
|
||||
|
||||
Try
|
||||
|
||||
@@ -6150,7 +6150,12 @@ Public Class ClsPaginas
|
||||
rds.Value = DtDatos
|
||||
lrds.Add(rds)
|
||||
|
||||
ImprimirbytesPDF(StreamBytesStimulsoft("Facturas", RutaReporte, lrds, Parametros, NombreArchivo:=NombreArchivo, Formato:="PDF"), NombreArchivo, Formato, Content_Disposition:=Content_Disposition)
|
||||
Dim Extension = "pdf"
|
||||
If Formato.ToLower() = "excel" Then
|
||||
Extension = "xlsx"
|
||||
End If
|
||||
|
||||
ImprimirbytesPDF(StreamBytesStimulsoft("Facturas", RutaReporte, lrds, Parametros, NombreArchivo:=NombreArchivo, Formato:=Formato), NombreArchivo, Formato, Content_Disposition:=Content_Disposition, Extension:=Extension)
|
||||
End Sub
|
||||
Public Sub ImprimirPDFMultiDS(RutaReporte As String, lrds As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional RDSName As String = "DataSet1", Optional MR As ReportViewer = Nothing)
|
||||
ImprimirPDF(RutaReporte, lrds, Parametros, NombreArchivo, Formato, MR)
|
||||
@@ -6614,10 +6619,9 @@ Public Class ClsPaginas
|
||||
''' <param name="NombreArchivo"></param>
|
||||
''' <param name="Formato"></param>
|
||||
''' <remarks></remarks>
|
||||
Public Sub ImprimirbytesPDF(bytes As Byte(), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional Descarga As Boolean = False, Optional Content_Disposition As String = "attachment")
|
||||
Public Sub ImprimirbytesPDF(bytes As Byte(), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional Descarga As Boolean = False, Optional Content_Disposition As String = "attachment", Optional Extension As String = "")
|
||||
'limpio ReportViwer
|
||||
Dim mimeType As String = Nothing
|
||||
Dim extension As String = Nothing
|
||||
|
||||
'If Descarga Then
|
||||
' Try
|
||||
@@ -6642,7 +6646,15 @@ Public Class ClsPaginas
|
||||
Response.ContentType = mimeType
|
||||
End If
|
||||
Response.ClearHeaders()
|
||||
Response.AddHeader("content-disposition", String.Format("{0}; filename=""{1}.{2}""", Content_Disposition, NombreArchivo, If(Formato = "PDF", "pdf", "xls")))
|
||||
|
||||
Dim fileExtension As String = ""
|
||||
If Not String.IsNullOrEmpty(extension) Then
|
||||
fileExtension = extension
|
||||
Else
|
||||
fileExtension = If(Formato = "PDF", "pdf", "xls")
|
||||
End If
|
||||
|
||||
Response.AddHeader("content-disposition", String.Format("{0}; filename=""{1}.{2}""", Content_Disposition, NombreArchivo, fileExtension))
|
||||
Response.BinaryWrite(bytes) ' create the file
|
||||
Response.Flush() ' send it to the client to download
|
||||
bytes = Nothing
|
||||
|
||||
@@ -69,13 +69,15 @@ Partial Class Bancos_RepCxCCliente
|
||||
Mov.Dispose()
|
||||
GvCxC.DataBind()
|
||||
|
||||
'If (GvCxC.Rows.Count > 0) Then
|
||||
GvCxC.UseAccessibleHeader = True
|
||||
GvCxC.HeaderRow.TableSection = TableRowSection.TableHeader
|
||||
RegistraScript("OrdenarGV();")
|
||||
UPDatos.Update()
|
||||
If (GvCxC.Rows.Count > 0) Then
|
||||
GvCxC.UseAccessibleHeader = True
|
||||
If GvCxC.HeaderRow IsNot Nothing Then
|
||||
GvCxC.HeaderRow.TableSection = TableRowSection.TableHeader
|
||||
End If
|
||||
RegistraScript("OrdenarGV();")
|
||||
|
||||
'End If
|
||||
End If
|
||||
UPDatos.Update()
|
||||
End Sub
|
||||
Protected Sub GvCxC_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvCxC.RowDataBound
|
||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||
|
||||
@@ -1199,6 +1199,22 @@ Partial Class Compras_Compras
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property TipoCompraOriginal As Integer
|
||||
Get
|
||||
|
||||
If ViewState("TipoCompraOriginal") Is Nothing Then
|
||||
ViewState("TipoCompraOriginal") = -1
|
||||
End If
|
||||
|
||||
Return ViewState("TipoCompraOriginal").ToString.ToEntero
|
||||
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("TipoCompraOriginal") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||
If Not IsPostBack Then
|
||||
@@ -2616,6 +2632,7 @@ Partial Class Compras_Compras
|
||||
CvePrePoliza = dr("CvePrePoliza").ToString.ToEntero
|
||||
EstatusAlmacen = dr("EstatusAlmacen").ToString.ToEntero
|
||||
DdlTipoCompra.SelectedValueExist(dr("CveTipoCompra"))
|
||||
TipoCompraOriginal = dr("CveTipoCompra").ToString.ToEntero
|
||||
CveTipoConcepto = dr("CveTipoConcepto").ToString.ToEntero
|
||||
|
||||
ChkEsNoDeducible.Checked = Boolean.Parse(dr("NoDeducible").ToString)
|
||||
@@ -6391,6 +6408,7 @@ Partial Class Compras_Compras
|
||||
'RECORREMOS PARA DETECTAR LA MODALIDAD DEL ALMACEN, EN CASO DE SER SOLO EXISTENCIA LIMPIAMOS CVEALMACEN
|
||||
'SI LA COMPRA ES DE TIPO GASTO CON ALMACEN DEBE REGISTRAR MOVIMIENTO
|
||||
Dim AlmacenSoloExistencia As Boolean = False
|
||||
|
||||
If DdlTipoCompra.SelectedValue <> "10" Then
|
||||
For Each Dr As DataRow In DT.Rows
|
||||
If DtAlmacenes.FiltroPrimeroValor("Modalidad", $"CveAlmacen = {Dr("CveAlmacen").ToString.ToEntero}").ToString = "Solo Existencia" Then
|
||||
@@ -6400,6 +6418,7 @@ Partial Class Compras_Compras
|
||||
Dr.AcceptChanges()
|
||||
Next
|
||||
End If
|
||||
|
||||
DT.AcceptChanges()
|
||||
DT = DT.FiltraParametros("ISNULL(CveAlmacen,0) > 0")
|
||||
If DT.Rows.Count > 0 AndAlso Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then
|
||||
@@ -9433,6 +9452,8 @@ Partial Class Compras_Compras
|
||||
Msg.Append("La Compra se actualizó correctamente")
|
||||
|
||||
Alert(Msg.ToString())
|
||||
TipoCompraOriginal = DdlTipoCompra.SelectedValue.ToEntero
|
||||
|
||||
Else
|
||||
ObjCompra.RollBack()
|
||||
If ObjContaAC IsNot Nothing Then ObjContaAC.RollBack()
|
||||
@@ -9468,7 +9489,8 @@ Partial Class Compras_Compras
|
||||
(row1("CveActivoFijo").ToString.ToEntero <> row2("CveActivoFijo").ToString.ToEntero) Or
|
||||
(row1("AFMedida").ToString.ToEntero <> row2("AFMedida").ToString.ToEntero) Or
|
||||
(row1("TipoAF").ToString.ToEntero <> row2("TipoAF").ToString.ToEntero) Or
|
||||
(row1("CvePS").ToString.ToEntero <> row2("CvePS").ToString.ToEntero) Then
|
||||
(row1("CvePS").ToString.ToEntero <> row2("CvePS").ToString.ToEntero Or
|
||||
DdlTipoCompra.SelectedValue.ToEntero <> TipoCompraOriginal) Then
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
@@ -9582,6 +9604,7 @@ Partial Class Compras_Compras
|
||||
'Removemos los conceptos de la prepoliza
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 6, CveCompra, 1) Then ErrorPrepoliza = True 'GASTO
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 68, CveCompra, 1) Then ErrorPrepoliza = True 'ALMACEN
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 95, CveCompra, 1) Then ErrorPrepoliza = True 'GASTO CON ALMACEN RELLENO
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 49, CveCompra, 1) Then ErrorPrepoliza = True 'AF
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 205, CveCompra, 1) Then ErrorPrepoliza = True 'PS YA RECIBIDO
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 230, CveCompra, 1) Then ErrorPrepoliza = True 'PS YA RECIBIDO
|
||||
@@ -9590,6 +9613,15 @@ Partial Class Compras_Compras
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 228, CveCompra, 1) Then ErrorPrepoliza = True 'PS NO RECIBIDO
|
||||
If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 229, CveCompra, 1) Then ErrorPrepoliza = True 'PS NO RECIBIDO
|
||||
|
||||
|
||||
'SI ES GASTO CON ALMACEN REGISTRA EL CONCEPTO 95
|
||||
If DdlTipoCompra.SelectedValue = "10" Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMN, Referencia, 95, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=False) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
'OBTIENE METODO DE CONTABILIZACIÓN AL GUARDAR
|
||||
Dim ConceptoContabilizacionAlmacen = 0
|
||||
If ObjCompra.GetCompras(CveCompra, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then
|
||||
@@ -9659,8 +9691,11 @@ Partial Class Compras_Compras
|
||||
importeMovimiento = 0
|
||||
IdCtaContable = 0
|
||||
|
||||
|
||||
|
||||
|
||||
'INV [MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA) ]
|
||||
If UsuarioActual.Empresa.UsaInventarios And Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") And Not UsuarioActual.Empresa.Funcionalidad(126) = "1" And ConceptoContabilizacionAlmacen.Contiene(176, 205) Then
|
||||
If DdlTipoCompra.SelectedValue.ToEntero <> 10 AndAlso UsuarioActual.Empresa.UsaInventarios And Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") And Not UsuarioActual.Empresa.Funcionalidad(126) = "1" And ConceptoContabilizacionAlmacen.Contiene(176, 205) Then
|
||||
importeMovimiento = TmpDT.SUM("Total", $"ISNULL(TipoAF,0) <> 2 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal
|
||||
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
|
||||
|
||||
@@ -9713,18 +9748,29 @@ Partial Class Compras_Compras
|
||||
DT.AcceptChanges()
|
||||
DtAlmacenes.Dispose()
|
||||
|
||||
'QUITA 1-[MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA)] 2-[NC CON PRODUCTOS]
|
||||
If UsuarioActual.Empresa.UsaInventarios And Not UsuarioActual.Empresa.Funcionalidad(126) = "1" And ConceptoContabilizacionAlmacen > 0 Then
|
||||
DT = DT.FiltraParametros("CveTipoPS <> 2")
|
||||
|
||||
If DdlTipoCompra.SelectedValue.ToEntero <> 10 Then
|
||||
'QUITA 1-[MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA)] 2-[NC CON PRODUCTOS]
|
||||
If UsuarioActual.Empresa.UsaInventarios And Not UsuarioActual.Empresa.Funcionalidad(126) = "1" And ConceptoContabilizacionAlmacen > 0 Then
|
||||
DT = DT.FiltraParametros("CveTipoPS <> 2")
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
Dim DTDistinct = DT.Copy
|
||||
If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then
|
||||
DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"})
|
||||
|
||||
If DdlTipoCompra.SelectedValue.ToEntero = 10 Then
|
||||
DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto", "CveAlmacen"})
|
||||
Else
|
||||
DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"})
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then
|
||||
DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"})
|
||||
Else
|
||||
DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"})
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
If DTDistinct.Rows.Count > 0 Then
|
||||
For Each Row2 As DataRow In DTDistinct.Rows
|
||||
|
||||
@@ -9734,6 +9780,12 @@ Partial Class Compras_Compras
|
||||
Else
|
||||
importeMovimiento = DT.SUM("Total", String.Format("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveClasificacion = {0} AND CveSubProyecto = {1} AND ISNULL(CveTipoGasto,0) = {2}", Row2("CveClasificacion").ToString.ToEntero, Row2("CveSubProyecto").ToString.ToEntero, Row2("CveTipoGasto").ToString.ToEntero)).ToString.ToDecimal
|
||||
End If
|
||||
|
||||
If DdlTipoCompra.SelectedValue.ToEntero = 10 Then
|
||||
importeMovimiento = DT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"CveAlmacen > 0 ").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen > 0").ToString.ToDecimal
|
||||
End If
|
||||
|
||||
|
||||
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
|
||||
|
||||
'CLASIFICACION
|
||||
|
||||
@@ -14,7 +14,6 @@ using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Xml;
|
||||
using System.Xml.Linq;
|
||||
using iTextSharp.text.pdf;
|
||||
|
||||
|
||||
public partial class Documentacion_TableroMaterialidad : ClsPaginas
|
||||
@@ -286,8 +285,8 @@ public partial class Documentacion_TableroMaterialidad : ClsPaginas
|
||||
{
|
||||
XElement xfile = new XElement("archivo");
|
||||
xfile.SetAttributeValue("URL", urfile);
|
||||
xfile.SetAttributeValue("EXT", Path.GetExtension(urfile).ToLower());
|
||||
if (Path.GetExtension(urfile).ToLower() == ".xml")
|
||||
xfile.SetAttributeValue("EXT",System.IO.Path.GetExtension(urfile).ToLower());
|
||||
if (System.IO.Path.GetExtension(urfile).ToLower() == ".xml")
|
||||
{
|
||||
var xmlobj = ADSistemaLibrary3.SatXml.XmlSatCFDI.readXML(urfile);
|
||||
|
||||
@@ -372,7 +371,7 @@ public partial class Documentacion_TableroMaterialidad : ClsPaginas
|
||||
{
|
||||
try
|
||||
{
|
||||
PdfReader reader = new PdfReader(urfile);
|
||||
var reader = new iTextSharp.text.pdf.PdfReader(urfile);
|
||||
|
||||
text = iTextSharp.text.pdf.parser.PdfTextExtractor.GetTextFromPage(reader, 1, new iTextSharp.text.pdf.parser.LocationTextExtractionStrategy());
|
||||
foliofiscal = string.Empty;
|
||||
|
||||
@@ -4623,12 +4623,16 @@ Partial Class Inventarios_EntradasSalidas
|
||||
tIdCtaGasto = 1321
|
||||
End Select
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ValorSalida + ValorEntrada, "", 290, tConcepto, Fecha, tIdCtaGasto, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=tCveClasificacion, CveSubProyecto:=tCveSubProyectoSalida, ImporteMX:=ValorSalida + ValorEntrada, Contabilizable:=EsContabilizable) Then
|
||||
ErrorMovInv = True
|
||||
Mensaje = "Ocurrió un error al guardar los movimientos contables de ajuste de salida"
|
||||
If Math.Abs((ValorSalida + ValorEntrada)) <> 0 Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ValorSalida + ValorEntrada, "", 290, tConcepto, Fecha, tIdCtaGasto, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=tCveClasificacion, CveSubProyecto:=tCveSubProyectoSalida, ImporteMX:=ValorSalida + ValorEntrada, Contabilizable:=EsContabilizable) Then
|
||||
ErrorMovInv = True
|
||||
Mensaje = "Ocurrió un error al guardar los movimientos contables de ajuste de salida"
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
|
||||
If Not ErrorMovInv Then
|
||||
If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
|
||||
|
||||
@@ -3963,7 +3963,7 @@ Partial Class Inventarios_EntregaAlmacen
|
||||
RegistraScript("$('#ModalVerSugerencias').modal('hide')")
|
||||
End Sub
|
||||
|
||||
Protected Sub DdlAlmacen_SelectedIndexChanged(sender As Object, e As EventArgs) 'Handles DdlAlmacen.SelectedIndexChanged
|
||||
Protected Sub DdlAlmacen_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlAlmacen.SelectedIndexChanged
|
||||
RecargaporAlmacenes()
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -1639,7 +1639,7 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
ErrorMovInv = True
|
||||
Else
|
||||
Dim CveMovimientoDetalleSalida As Integer = 0
|
||||
Dim importe As Double = 0
|
||||
'Dim importe As Double = 0
|
||||
|
||||
For Each GvRow As GridViewRow In GvDatosRecepcion.Rows
|
||||
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||
@@ -1675,7 +1675,7 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
End If
|
||||
End If
|
||||
|
||||
importe += Cantidad * PrecioUnitario
|
||||
'importe += Cantidad * PrecioUnitario
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
@@ -1700,15 +1700,15 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
If CveAlmacenVirtual > 0 And CveAlmacenVirtualSalida > 0 Then
|
||||
|
||||
Dim dtvirtual As DataTable = Nothing
|
||||
Dim importePoliza As Decimal = 0
|
||||
'Dim importePoliza As Decimal = 0
|
||||
|
||||
If ObjInventario.GetMovimientosDetalleVirtual(CveMovimientoEntrada, UsuarioActual.CveEmpresa, CveMovimientoRelacionado:=CveMovimientoSalida) Then
|
||||
dtvirtual = ObjInventario.DtResultados
|
||||
If dtvirtual.Rows.Count > 0 Then
|
||||
|
||||
CveMovimientoVirtualEntrada = ObjInventario.AddMovimiento(CveAlmacenVirtual, 36, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesRecepcion.Text.Trim, CveMovimientoRelacionado:=CveMovimientoEntrada, Modulo:="TA/C2")
|
||||
CveMovimientoVirtualEntrada = ObjInventario.AddMovimiento(CveAlmacenVirtual, 36, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesRecepcion.Text.Trim, CveMovimientoRelacionado:=CveMovimientoEntrada, MovimientoFijo:=True, Modulo:="TA/C2")
|
||||
|
||||
CveMovimientoVirtualSalida = ObjInventario.AddMovimiento(CveAlmacenVirtualSalida, 37, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesRecepcion.Text.Trim, CveMovimientoRelacionado:=CveMovimientoSalidaTransitorio, Modulo:="TA/C3")
|
||||
CveMovimientoVirtualSalida = ObjInventario.AddMovimiento(CveAlmacenVirtualSalida, 37, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesRecepcion.Text.Trim, CveMovimientoRelacionado:=CveMovimientoSalidaTransitorio, MovimientoFijo:=True, Modulo:="TA/C3")
|
||||
|
||||
FolioVirtualEntrada = ObjInventario.Folio
|
||||
|
||||
@@ -1720,7 +1720,7 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
Dim CostoIndirecto As Decimal = RowVirtual("CostoIndirecto").ToString().ToDecimal()
|
||||
|
||||
|
||||
importePoliza = importePoliza + (CantidadUsado * PU)
|
||||
'importePoliza = importePoliza + (CantidadUsado * PU)
|
||||
|
||||
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoVirtualEntrada, CantidadUsado, CveUM, CvePS, PU, -1, CostoIndirecto:=CostoIndirecto, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
|
||||
ErrorMovInv = True
|
||||
@@ -1743,6 +1743,11 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
|
||||
If Not ErrorMovInv AndAlso (CveMovimientoSalida > 0 And CveMovimientoVirtualEntrada > 0) Then
|
||||
|
||||
Dim importePoliza As Decimal = 0
|
||||
If ObjInventario.GetMovimientosDetalle(CveMovimientoVirtualEntrada, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
|
||||
importePoliza = ObjInventario.DtResultados.SUMD("Total").RoundSQL
|
||||
End If
|
||||
|
||||
Dim CvePrePolizaMovVirtual As Integer = ObjConta.AddPrePolizas("TA/C2|TA/C3", 53, importePoliza, importePoliza, 1, TxtFecha.Text.ToDate, "TA/C2|TA/C3", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
|
||||
If CvePrePolizaMovVirtual > 0 Then
|
||||
If Not ErrorMovInv AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePolizaMovVirtual, True, importePoliza, importePoliza, 68, TxtObservacionesRecepcion.Text, TxtObservacionesRecepcion.Text, -1, -1, CveMovimientoAlmacen:=CveMovimientoVirtualSalida, Contabilizable:=False) Then
|
||||
@@ -1770,7 +1775,11 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
End If
|
||||
|
||||
If Not ErrorMovInv Then
|
||||
Dim ImporteDecimal As Decimal = importe.ToDecimal.RoundAD
|
||||
Dim ImporteDecimal As Decimal = 0
|
||||
If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
|
||||
ImporteDecimal = ObjInventario.DtResultados.SUMD("Total").RoundSQL
|
||||
End If
|
||||
|
||||
Dim IdCtaContable As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", String.Format("CveAlmacen = {0}", DdlAlmacenTransitorioRecepcion.SelectedValue.ToEntero)).ToEntero
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteDecimal, TxtObservaciones.Text, 68, TxtObservaciones.Text, Fecha, IdCtaContable, -1,
|
||||
@@ -3354,6 +3363,29 @@ Partial Class Inventarios_TraspasoAlmacen
|
||||
Return Respuesta
|
||||
End Function
|
||||
|
||||
'Private Sub CargaDireccionesEnvio()
|
||||
' Dim ObjClientes As New ClsClientes
|
||||
' Dim TieneError = False
|
||||
|
||||
' DdlDireccionEnvio.Items.Clear()
|
||||
' If ObjClientes.DireccionEnvioGet(-1, CveCliente, -1) Then
|
||||
' DdlDireccionEnvio.DataSource = ObjClientes.DtResultados.FiltraParametros(String.Format("Estatus = 1"))
|
||||
' DdlDireccionEnvio.DataBind()
|
||||
' 'DdlDireccionEnvio.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
||||
' TmpDTEnvioDireccion = ObjClientes.DtResultados
|
||||
' Else
|
||||
' TieneError = True
|
||||
' End If
|
||||
|
||||
' If TieneError Then
|
||||
' Alert("Ocurrió un error al obtener las direcciones de envío", TipoMensaje.MsgError)
|
||||
' End If
|
||||
|
||||
' ObjClientes.Dispose()
|
||||
' UpCliente.Update()
|
||||
|
||||
'End Sub
|
||||
|
||||
#End Region
|
||||
End Class
|
||||
|
||||
|
||||
@@ -4232,7 +4232,23 @@ Partial Class Clientes
|
||||
Try
|
||||
Dim File As Byte()
|
||||
If Archivo.Exists Then
|
||||
File = ImprimirPDFCrystal($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.rpt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato)
|
||||
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
|
||||
|
||||
Dim lrds As New List(Of ReportDataSource)
|
||||
Dim rds As New ReportDataSource
|
||||
rds.Name = "Datos"
|
||||
rds.Value = DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha")
|
||||
lrds.Add(rds)
|
||||
|
||||
File = StreamBytesStimulsoft("Facturas", $"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", lrds, listass, NombreArchivo:="Estado de cuenta", Formato:=Formato)
|
||||
Else
|
||||
File = ImprimirPDFCrystal($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.rpt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato)
|
||||
End If
|
||||
Else
|
||||
File = ImprimirPDFCrystal(Server.MapPath("~/Empresas/Grales/Formatos/RepClientesCxC.rpt"), DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato)
|
||||
End If
|
||||
@@ -4265,7 +4281,6 @@ Partial Class Clientes
|
||||
Alert("El correo se envió con éxito", TipoMensaje.MsgInformacion)
|
||||
Catch ex As Exception
|
||||
Alert("Ocurrió un error al enviar el correo", TipoMensaje.MsgAdvertencia)
|
||||
|
||||
End Try
|
||||
|
||||
Catch ex As Exception
|
||||
@@ -4278,8 +4293,8 @@ Partial Class Clientes
|
||||
Dim listass As New List(Of ReportParameter)
|
||||
For Each item As CrystalParametro In lista
|
||||
listass.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
Next
|
||||
ImprimirPDFStimulsoft($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), listass, "Estado de cuenta", Formato)
|
||||
Next
|
||||
ImprimirPDFStimulsoft($"{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
|
||||
@@ -4331,8 +4346,8 @@ Partial Class Clientes
|
||||
Dim listass As New List(Of ReportParameter)
|
||||
For Each item As CrystalParametro In lista
|
||||
listass.Add(New ReportParameter(item.Nombre, item.Valor.ToString()))
|
||||
Next
|
||||
ImprimirPDFStimulsoft($"{UsuarioActual.Empresa.Ruta}Formatos/RepClientesCxC.mrt", DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), listass, "Estado de cuenta", Formato)
|
||||
Next
|
||||
ImprimirPDFStimulsoft($"{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
|
||||
@@ -4340,6 +4355,56 @@ Partial Class Clientes
|
||||
ImprimirbytesPDF(ImprimirPDFCrystal(Server.MapPath("~/Empresas/Grales/Formatos/RepClientesCxC.rpt"), DtCxCFact2.FiltraParametros("", "CveMoneda,Fecha"), lista, "Estado de cuenta", Formato), "Estado de cuenta", Formato)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub ImprimirExcelStimulsoft(RutaReporte As String, DtDatos As DataTable, Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional RDSName As String = "Datos", Optional Content_Disposition As String = "attachment")
|
||||
Dim lrds As New List(Of ReportDataSource)
|
||||
Dim rds As New ReportDataSource
|
||||
rds.Name = RDSName
|
||||
rds.Value = DtDatos
|
||||
lrds.Add(rds)
|
||||
|
||||
ImprimirbytesExcel(StreamBytesStimulsoft("Facturas", RutaReporte, lrds, Parametros, NombreArchivo:=NombreArchivo, Formato:="EXCEL"), NombreArchivo, "EXCEL", Content_Disposition:=Content_Disposition)
|
||||
End Sub
|
||||
Public Sub ImprimirbytesExcel(bytes As Byte(), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional Descarga As Boolean = False, Optional Content_Disposition As String = "attachment")
|
||||
'limpio ReportViwer
|
||||
Dim mimeType As String = Nothing
|
||||
Dim extension As String = Nothing
|
||||
|
||||
'If Descarga Then
|
||||
' Try
|
||||
' bytes = bytes
|
||||
' File.WriteAllBytes(String.Format("{0}PDF/whatever.gif", UsuarioActual.Empresa.Ruta), img)
|
||||
' Catch ex As Exception
|
||||
' If UsuarioActual.CveRol = 1 Then
|
||||
' Alert(ex.Message, TipoMensaje.MsgAdvertencia)
|
||||
' Else
|
||||
' Alert("Ocurrió un error al generar la descarga. Favor de contactar a soporte tecnico cod'IMPDFclspag'", TipoMensaje.MsgAdvertencia)
|
||||
' End If
|
||||
' End Try
|
||||
'End If
|
||||
|
||||
Try
|
||||
bytes = bytes
|
||||
Response.Buffer = True
|
||||
Response.Clear()
|
||||
Response.ContentType = "application/vnd.ms-excel"
|
||||
Response.ClearHeaders()
|
||||
Response.AddHeader("content-disposition", String.Format("{0}; filename=""{1}.{2}""", Content_Disposition, NombreArchivo, If(Formato = "PDF", "pdf", "xlsx")))
|
||||
Response.BinaryWrite(bytes) ' create the file
|
||||
Response.Flush() ' send it to the client to download
|
||||
bytes = Nothing
|
||||
HttpContext.Current.Response.SuppressContent = True
|
||||
HttpContext.Current.ApplicationInstance.CompleteRequest()
|
||||
'HttpContext.Current.Response.End()
|
||||
Catch ex As Exception
|
||||
|
||||
If UsuarioActual.CveRol = 1 Then
|
||||
Alert($"Error: {ex.Message} | Descripcion: {If(ex.InnerException IsNot Nothing AndAlso ex.InnerException.InnerException IsNot Nothing AndAlso ex.InnerException.InnerException.Message IsNot Nothing, ex.InnerException.InnerException.Message, If(ex.InnerException IsNot Nothing AndAlso ex.InnerException.Message IsNot Nothing, ex.InnerException.Message, "Sin descripcion"))}", TipoMensaje.MsgAdvertencia)
|
||||
Else
|
||||
Alert("Ocurrió un error al generar la descarga. Favor de contactar a soporte tecnico cod:'IMPDFclspag'", TipoMensaje.MsgAdvertencia)
|
||||
End If
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub MandaCorreoEstadoCuenta(CveUsuario As Integer, CveEmpresa As Integer, CveCliente As Integer, File As Byte(), Para As String, Asunto As String, Body As String, Optional GuardarBitacora As Boolean = False)
|
||||
|
||||
|
||||
@@ -186,12 +186,21 @@ Partial Class PopUpBuscarFolio
|
||||
e.Row.FCLiteral("LtlXML").Text = "<div class='truncate' style='width:23px;'></div>"
|
||||
End If
|
||||
|
||||
If IO.File.Exists($"{Ruta}PDF\{e.Row.DBCampo("TipoDocto")}\{e.Row.DBCampo("Folio")}.pdf") Then
|
||||
e.Row.FCLiteral("LtlPDF").Text = String.Format("<div class='truncate' style='width:23px;'><a class=""Texto"" target=""_blank"" href=""/Compras/PopUpVerFactura.aspx?TipoDocto={0}&File={1}.pdf&TipoArchivo=PDF"">PDF</a></div>", e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("Folio"))
|
||||
If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then
|
||||
If e.Row.DBCampo("TipoDocto") <> "Cot" AndAlso IO.File.Exists($"{Ruta}PDF\{e.Row.DBCampo("TipoDocto")}\{e.Row.DBCampo("Folio")}.pdf") Then
|
||||
e.Row.FCLiteral("LtlPDF").Text = String.Format("<div class='truncate' style='width:23px;'><a class=""Texto"" target=""_blank"" href=""/Compras/PopUpVerFactura.aspx?TipoDocto={0}&File={1}.pdf&TipoArchivo=PDF"">PDF</a></div>", e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("Folio"))
|
||||
Else
|
||||
e.Row.FCLiteral("LtlPDF").Text = "<div class='truncate' style='width:23px;'></div>"
|
||||
End If
|
||||
Else
|
||||
e.Row.FCLiteral("LtlPDF").Text = "<div class='truncate' style='width:23px;'></div>"
|
||||
If IO.File.Exists($"{Ruta}PDF\{e.Row.DBCampo("TipoDocto")}\{e.Row.DBCampo("Folio")}.pdf") Then
|
||||
e.Row.FCLiteral("LtlPDF").Text = String.Format("<div class='truncate' style='width:23px;'><a class=""Texto"" target=""_blank"" href=""/Compras/PopUpVerFactura.aspx?TipoDocto={0}&File={1}.pdf&TipoArchivo=PDF"">PDF</a></div>", e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("Folio"))
|
||||
Else
|
||||
e.Row.FCLiteral("LtlPDF").Text = "<div class='truncate' style='width:23px;'></div>"
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
<div class="portlet light smmallpadding traspasorow bordered">
|
||||
<div class="portlet-title">
|
||||
<div class="caption font-green">
|
||||
<span class="caption-subject bold uppercase" style="line-height: 1;">Facturas Pendientes Por Respuesta</span>
|
||||
<span class="caption-subject bold uppercase" style="line-height: 1;">Facturas Pendientes Por Respuesta <asp:Literal ID="LtlFacturasPendiente" runat="server"></asp:Literal></span>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
|
||||
@@ -551,7 +551,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
|
||||
if (DtVentas != null)
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
foreach (DataRow Row in DtVentas.Rows)
|
||||
foreach (DataRow Row in DtVentas.FiltraParametros("(CveEstatusFactura IN (20) AND CveEstatusRefacturacion IN (0,4))").Rows)
|
||||
{
|
||||
int CveVenta = Row["CveVenta"].ToEntero();
|
||||
string Total = Row["Total"].ToString();
|
||||
@@ -564,7 +564,8 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
|
||||
int CveCliente = Row["CveCliente"].ToEntero();
|
||||
if (CveVenta > 0)
|
||||
{
|
||||
sb.AppendFormat("{0}<br/>", VerificarVigenciaSAT(CveVenta, CveCliente, Folio, TipoDocto, Uuid, UsuarioActual.Empresa.RFC, RFCReceptor, SubTotal));
|
||||
var resp = VerificarVigenciaSAT(CveVenta, CveCliente, Folio, TipoDocto, Uuid, UsuarioActual.Empresa.RFC, RFCReceptor, SubTotal);
|
||||
sb.AppendFormat("{0}<br/>",resp.Mensaje);
|
||||
}
|
||||
}
|
||||
Alert(sb.ToString());
|
||||
|
||||
@@ -3440,6 +3440,10 @@ Partial Class Ventas
|
||||
LblRotacion.Text = FechaRotaAlinea.AddMonths(6).ToShortDateString
|
||||
LblAlineacion.Text = FechaRotaAlinea.AddMonths(6).ToShortDateString
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso Me.CveVenta > 0 AndAlso DdlTipoComprobante.SelectedValue = "Cot" Then
|
||||
HplDownPDF.Visible = False
|
||||
End If
|
||||
|
||||
UPObservaciones.Update()
|
||||
End If
|
||||
|
||||
|
||||
Reference in New Issue
Block a user