From e24689db222273d6949426e7552e3f5c3643566c Mon Sep 17 00:00:00 2001 From: rakcsle Date: Thu, 31 Oct 2024 16:10:01 -0700 Subject: [PATCH] Compras correciones, no actualiza iva al editar despues de asignar, AF insumos check de AF encontrado mantener activo --- Compras/Compras.aspx | 6 +- Compras/Compras.aspx.vb | 57 +++++++--- Compras/eFacturas.aspx.vb | 156 +++++++++++++++++++++++++-- Empresas/Grales/Formatos/CFDIV3.rdlc | 3 +- OC/OC.aspx.vb | 37 ++++++- Ventas/RepVentasDetalle.aspx | 2 +- 6 files changed, 224 insertions(+), 37 deletions(-) diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index c876401d5..cebbc762b 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -2212,8 +2212,8 @@ - - + + @@ -2313,7 +2313,7 @@ <%----%> - + diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 9c813819a..5132a9e44 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -8056,10 +8056,13 @@ Partial Class Compras_Compras If (TmpDT.Rows(IndiceUltimo)("IVA").ToString.ToDecimal + DiferenciaIVas) < 0 Then - Dim AjusteteDividido As Decimal = DiferenciaIVas / CantidadRegistroConIVA - For Each dRow As DataRow In TmpDT.Rows - dRow("IVA") = dRow("IVA").ToString.ToDecimal + AjusteteDividido + + If dRow("IVA").ToString.ToDecimal > 0 Then + Dim AjusteCorrespondiente As Decimal = (DiferenciaIVas * dRow("IVA").ToString.ToDecimal) / 100 + dRow("IVA") = dRow("IVA").ToString.ToDecimal - AjusteCorrespondiente + End If + Next Else @@ -11472,7 +11475,8 @@ Partial Class Compras_Compras If e.Row.DBCampo("TipoAF").ToEntero = 1 Then If e.Row.DBCampo("CveActivoFijo").ToEntero > 0 Then e.Row.FCTextBox("LblCodigo").Text = e.Row.DBCampo("CodAF").ToString - e.Row.FCLabel("LblValido").Attributes("display") = "" + 'e.Row.FCLabel("LblValido").Attributes("display") = "" + e.Row.FCLabel("LblValido").Visible = False e.Row.FCHiddenField("HdnCveAF").Value = e.Row.DBCampo("CveActivoFijo").ToString e.Row.FCHiddenField("HdnCodAF").Value = e.Row.DBCampo("CodAF").ToString SinValor = False @@ -11483,7 +11487,10 @@ Partial Class Compras_Compras e.Row.FCTextBox("LblCodigo").Text = "" e.Row.FCHiddenField("HdnCveAF").Value = "0" e.Row.FCHiddenField("HdnCodAF").Value = "0" - e.Row.FCLabel("LblValido").Attributes("display") = "none" + 'e.Row.FCLabel("LblValido").Attributes("display") = "none" + e.Row.FCLabel("LblValido").Visible = False + Else + e.Row.FCLabel("LblValido").Visible = True End If If e.Row.DBCampo("AFTipoMantenimiento").ToEntero > 0 Then @@ -11605,15 +11612,23 @@ Partial Class Compras_Compras Dim ObjAF As New ClsAF Dim Index As Integer = HdnIndexTmpDT.Value.ToEntero() If ObjAF.GetActivosFijos(-1, UsuarioActual.CveEmpresa, HdnCodAFEdit.Value, "-1", -1, -1, "-1", -1, -1, -1, -1, -1, "", -1, UsuarioActual.CveEmpresa) Then - If ObjAF.DtResultados.Rows.Count = 1 Then + + Dim DTResultadosAF As New DataTable + If ObjAF.DtResultados IsNot Nothing Then + DTResultadosAF = ObjAF.DtResultados.FiltraParametros($" Codigo = '{HdnCodAFEdit.Value.Trim}' ") + End If + + If DTResultadosAF.Rows.Count = 1 Then 'VERIFICAR QUE EL ACTIVO FIJO ESTE ACTIVO. que no este en baja, inactivo. If HdnTipoAF.Value.ToEntero = 1 Then - GvAFInsumos.Rows(Index).FCHiddenField("HdnCveAF").Value = ObjAF.DtResultados.Rows(0)("CveActivoFijo").ToString - GvAFInsumos.Rows(Index).FCHiddenField("HdnCodAF").Value = ObjAF.DtResultados.Rows(0)("Codigo").ToString - RegistraScript(String.Format("MuestraCheckAF('{0}','');", GvAFInsumos.Rows(Index).FCLabel("LblValido").ClientID), "A2") + GvAFInsumos.Rows(Index).FCHiddenField("HdnCveAF").Value = DTResultadosAF.Rows(0)("CveActivoFijo").ToString + GvAFInsumos.Rows(Index).FCHiddenField("HdnCodAF").Value = DTResultadosAF.Rows(0)("Codigo").ToString + GvAFInsumos.Rows(Index).FCLabel("LblValido").Visible = True + + 'RegistraScript(String.Format("MuestraCheckAF('{0}','');", GvAFInsumos.Rows(Index).FCLabel("LblValido").ClientID), "A2") Try - TmpDT.Rows(Index)("CveActivoFijo") = ObjAF.DtResultados.Rows(0)("CveActivoFijo").ToString + TmpDT.Rows(Index)("CveActivoFijo") = DTResultadosAF.Rows(0)("CveActivoFijo").ToString TmpDT.AcceptChanges() Catch ex As Exception @@ -11621,12 +11636,13 @@ Partial Class Compras_Compras ElseIf HdnTipoAF.Value.ToEntero = 2 Then - GvAFCompras.Rows(Index).FCHiddenField("HdnCveAF").Value = ObjAF.DtResultados.Rows(0)("CveActivoFijo").ToString - GvAFCompras.Rows(Index).FCHiddenField("HdnCodAF").Value = ObjAF.DtResultados.Rows(0)("Codigo").ToString - RegistraScript(String.Format("MuestraCheckAF('{0}','');", GvAFCompras.Rows(Index).FCLabel("LblValido").ClientID), "A2") + GvAFCompras.Rows(Index).FCHiddenField("HdnCveAF").Value = DTResultadosAF.Rows(0)("CveActivoFijo").ToString + GvAFCompras.Rows(Index).FCHiddenField("HdnCodAF").Value = DTResultadosAF.Rows(0)("Codigo").ToString + GvAFCompras.Rows(Index).FCLabel("LblValido").Visible = True + 'RegistraScript(String.Format("MuestraCheckAF('{0}','');", GvAFCompras.Rows(Index).FCLabel("LblValido").ClientID), "A2") Try - TmpDT.Rows(Index)("CveActivoFijo") = ObjAF.DtResultados.Rows(0)("CveActivoFijo").ToString + TmpDT.Rows(Index)("CveActivoFijo") = DTResultadosAF.Rows(0)("CveActivoFijo").ToString TmpDT.AcceptChanges() Catch ex As Exception @@ -11641,7 +11657,8 @@ Partial Class Compras_Compras If HdnTipoAF.Value.ToEntero = 1 Then GvAFInsumos.Rows(Index).FCHiddenField("HdnCveAF").Value = "-1" GvAFInsumos.Rows(Index).FCHiddenField("HdnCodAF").Value = "-1" - RegistraScript(String.Format("MuestraCheckAF('{0}','none');", GvAFInsumos.Rows(Index).FCLabel("LblValido").ClientID), "A2") + GvAFInsumos.Rows(Index).FCLabel("LblValido").Visible = False + 'RegistraScript(String.Format("MuestraCheckAF('{0}','none');", GvAFInsumos.Rows(Index).FCLabel("LblValido").ClientID), "A2") Try @@ -11655,7 +11672,8 @@ Partial Class Compras_Compras ElseIf HdnTipoAF.Value.ToEntero = 2 Then GvAFCompras.Rows(Index).FCHiddenField("HdnCveAF").Value = "-1" GvAFCompras.Rows(Index).FCHiddenField("HdnCodAF").Value = "-1" - RegistraScript(String.Format("MuestraCheckAF('{0}','none');", GvAFCompras.Rows(Index).FCLabel("LblValido").ClientID), "A2") + GvAFCompras.Rows(Index).FCLabel("LblValido").Visible = True + 'RegistraScript(String.Format("MuestraCheckAF('{0}','none');", GvAFCompras.Rows(Index).FCLabel("LblValido").ClientID), "A2") Try TmpDT.Rows(Index)("CveActivoFijo") = Nothing @@ -11670,6 +11688,8 @@ Partial Class Compras_Compras End If End If + UPDatosAFInsumos.Update() + UPDatosAFCompras.Update() ObjAF.Dispose() End Sub Protected Sub DdlTipoMantemiento_SelectedIndexChanged(sender As Object, e As EventArgs) @@ -17887,10 +17907,13 @@ Partial Class Compras_Compras Dim PU As Double = DrPS("PU").ToString.ToDouble Dim Descuento As Double = DrPS("Descuento").ToString.ToDouble Dim Total As Double = (Cantidad * PU) - Descuento + Dim PorcentajeIVAActual As Decimal = DrPS("IVAPorcentaje").ToString.ToDecimal + Dim PorcentajeIVADDl As Decimal = Math.Round(DdlIVA.SelectedValue.ToDecimal - 1, 2) + DrPS("NoDeducible") = ChkEsNoDeduciblePS.Checked Dim ActualizarIva As Boolean = False - If Cantidad.RoundSQL(2) <> TxtCantidad.Text.Trim.ToDouble.RoundSQL(2) Or PU.RoundSQL(2) <> TxtPrecio.Text.Trim.ToDouble.RoundSQL(2) Then + If Cantidad.RoundSQL(2) <> TxtCantidad.Text.Trim.ToDouble.RoundSQL(2) Or PU.RoundSQL(2) <> TxtPrecio.Text.Trim.ToDouble.RoundSQL(2) Or PorcentajeIVAActual <> PorcentajeIVADDl Then ActualizarIva = True End If diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb index 0634a389f..94837b32c 100644 --- a/Compras/eFacturas.aspx.vb +++ b/Compras/eFacturas.aspx.vb @@ -28,6 +28,7 @@ Imports System.Drawing Imports Microsoft.Owin.Security.Provider Imports Telerik.Web.UI Imports Stimulsoft.Base.StiDbType + 'Imports Telerik.Web.UI @@ -1577,9 +1578,6 @@ Partial Class Compras_eFacturas Dim swTiempo As New StringBuilder sw.Start() - - - For Each comprmido As String In ListComprimidos Dim FiInfo As New FileInfo(comprmido) @@ -4204,6 +4202,8 @@ Partial Class Compras_eFacturas Using MR As ReportViewer = New ReportViewer() Dim rdsTotales As ReportDataSource = New ReportDataSource() + + Dim ltotales As List(Of utilValores) = New List(Of utilValores)() ltotales.Add(New utilValores("Subtotal", objxml.comprobante.SubTotal.ToString("N2"))) @@ -8966,7 +8966,9 @@ Namespace ADS.eFacturas Public Sub ImprimirPDF(UsuarioActual As Usuario, NombreArchivo As String, DirectorioEmpresa As String, TipodeComprobante As String) Dim objxml As XmlSatCFDI = Me - Dim rutaReporte As String = If(TipodeComprobante = "Pag", "Grales\Formatos\CFDIV3Pago.rdlc", "Grales\Formatos\CFDIV3.rdlc") + Dim rutaReporte As String = $"{DirectorioEmpresas}{If(TipodeComprobante = "Pag", "Grales\Formatos\CFDIV3Pago.rdlc", "Grales\Formatos\CFDIV3.rdlc")}" + + 'Dim rutaReporte As String = If(TipodeComprobante = "Pag", "Grales\Formatos\CFDIV3Pago.rdlc", "Grales\Formatos\CFDIV3.rdlc") Dim cQr As Byte() = Nothing @@ -9035,46 +9037,173 @@ Namespace ADS.eFacturas Dim listaDS As New List(Of ReportDataSource) Dim rdsTotales As New ReportDataSource() Dim ltotales As New List(Of utilValores)() + + Dim DTTotales As New DataTable + DTTotales.TableName = "DTTotales" + DTTotales.Columns.Add("Nombre") + DTTotales.Columns.Add("Valor") + ltotales.Add(New utilValores("Subtotal", objxml.comprobante.SubTotal.ToString("N2"))) If objxml.comprobante.Descuento > 0 Then ltotales.Add(New utilValores("Descuento", objxml.comprobante.Descuento.ToString("N2"))) End If For Each item As CFDIImpuesto In objxml.Impuestos + Dim nRow As DataRow = DTTotales.NewRow If item.Importe > 0 Then Dim TasaOCuota As Decimal = 0 Decimal.TryParse(item.TasaOCuota, TasaOCuota) ltotales.Add(New utilValores($"Impuestos {item.Tipo} {item.ImpuestoTexto} {(If(item.TipoFactor = "Tasa", (TasaOCuota * 100).ToString("N4"), item.TasaOCuota))} {(If(item.TipoFactor = "Tasa", "%", ""))}", item.Importe.ToString("N2"))) + + nRow("Nombre") = $"Impuestos {item.Tipo} {item.ImpuestoTexto} {(If(item.TipoFactor = "Tasa", (TasaOCuota * 100).ToString("N4"), item.TasaOCuota))} {(If(item.TipoFactor = "Tasa", "%", ""))}" + nRow("Valor") = item.Importe.ToString("N2") + DTTotales.Rows.Add(nRow) + End If Next ltotales.Add(New utilValores("Total", objxml.comprobante.Total.ToString("N2"))) rdsTotales.Name = "dsTotales" - rdsTotales.Value = ltotales + rdsTotales.Value = DTTotales 'ltotales.ToDataTable listaDS.Add(rdsTotales) + + Dim dtByte As New DataTable() + dtByte.Columns.Add("ImagenByte", GetType(Byte())) + dtByte.TableName = "dtImagenes" + Dim nrowByteArray As DataRow = dtByte.NewRow + nrowByteArray("ImagenByte") = cQr + dtByte.Rows.Add(nrowByteArray) + + 'byteArrayList.Add(cQr) Dim rds2 As New ReportDataSource() - Dim limagenes As New List(Of utilImage)() - limagenes.Add(New utilImage(cQr)) + 'Dim limagenes As New List(Of utilImage)() + 'limagenes.Add(New utilImage(cQr)) rds2.Name = "dsImagenes" - rds2.Value = limagenes + rds2.Value = dtByte listaDS.Add(rds2) + + Dim dtRelacionados As New DataTable + dtRelacionados.TableName = "dtRelacionados" + dtRelacionados.Columns.Add("TipoRelacion") + dtRelacionados.Columns.Add("TipoRelacionTexto") + dtRelacionados.Columns.Add("UUID") + + + For Each relaciondo As CFDIRelacionado In objxml.cFDIRelacionados + Dim CFDIRelacionadoRow As DataRow = dtRelacionados.NewRow + CFDIRelacionadoRow("TipoRelacion") = relaciondo.TipoRelacion + CFDIRelacionadoRow("TipoRelacionTexto") = relaciondo.TipoRelacionTexto + CFDIRelacionadoRow("UUID") = relaciondo.UUID + dtRelacionados.Rows.Add(CFDIRelacionadoRow) + Next + Dim rdsrelacionados As New ReportDataSource() rdsrelacionados.Name = "dsRelacionados" - rdsrelacionados.Value = objxml.cFDIRelacionados + rdsrelacionados.Value = dtRelacionados 'objxml.cFDIRelacionados listaDS.Add(rdsrelacionados) + + + Dim dtConceptos As New DataTable + dtConceptos.TableName = "dtConceptos" + dtConceptos.Columns.Add("tipo", GetType(Integer)) + dtConceptos.Columns.Add("orden", GetType(Integer)) + dtConceptos.Columns.Add("ClaveProdServ", GetType(String)) + dtConceptos.Columns.Add("NoIdentificacion", GetType(String)) + dtConceptos.Columns.Add("Cantidad", GetType(String)) ' Nota: Se asume que es cadena, cambiar si necesario + dtConceptos.Columns.Add("ClaveUnidad", GetType(String)) + dtConceptos.Columns.Add("Unidad", GetType(String)) + dtConceptos.Columns.Add("ValorUnitario", GetType(Decimal)) + dtConceptos.Columns.Add("Importe", GetType(Decimal)) + dtConceptos.Columns.Add("Descuento", GetType(Decimal)) + dtConceptos.Columns.Add("NumeroPedimento", GetType(String)) + dtConceptos.Columns.Add("CuentaPredial", GetType(String)) + dtConceptos.Columns.Add("Descripcion", GetType(String)) + dtConceptos.Columns.Add("Impuesto", GetType(String)) + dtConceptos.Columns.Add("Impuesto_Tipo", GetType(String)) + dtConceptos.Columns.Add("Impuesto_Base", GetType(Decimal)) + dtConceptos.Columns.Add("Impuesto_TipoFactor", GetType(String)) + dtConceptos.Columns.Add("Impuesto_TasaOCuota", GetType(String)) + dtConceptos.Columns.Add("Impuesto_Importe", GetType(Decimal)) + + For Each concepto As CFDIConcepto_I In objxml.GetConceptosforpdf() + Dim CFDIRelacionadoRow As DataRow = dtConceptos.NewRow + + CFDIRelacionadoRow("tipo") = concepto.tipo + CFDIRelacionadoRow("orden") = concepto.orden + CFDIRelacionadoRow("ClaveProdServ") = concepto.ClaveProdServ + CFDIRelacionadoRow("NoIdentificacion") = concepto.NoIdentificacion + CFDIRelacionadoRow("Cantidad") = concepto.Cantidad + CFDIRelacionadoRow("ClaveUnidad") = concepto.ClaveUnidad + CFDIRelacionadoRow("Unidad") = concepto.Unidad + CFDIRelacionadoRow("ValorUnitario") = concepto.ValorUnitario + CFDIRelacionadoRow("Importe") = concepto.Importe + CFDIRelacionadoRow("Descuento") = concepto.Descuento + CFDIRelacionadoRow("NumeroPedimento") = concepto.NumeroPedimento + CFDIRelacionadoRow("CuentaPredial") = concepto.CuentaPredial + CFDIRelacionadoRow("Descripcion") = concepto.Descripcion + CFDIRelacionadoRow("Impuesto") = concepto.Impuesto + CFDIRelacionadoRow("Impuesto_Tipo") = concepto.Impuesto_Tipo + CFDIRelacionadoRow("Impuesto_Base") = concepto.Impuesto_Base + CFDIRelacionadoRow("Impuesto_TipoFactor") = concepto.Impuesto_TipoFactor + CFDIRelacionadoRow("Impuesto_TasaOCuota") = If(concepto.Impuesto_TasaOCuota Is Nothing, "", concepto.Impuesto_TasaOCuota) + CFDIRelacionadoRow("Impuesto_Importe") = If(concepto.Impuesto_Importe > 0, concepto.Impuesto_Importe, 0) + + dtConceptos.Rows.Add(CFDIRelacionadoRow) + Next + + + Dim rds1 As New ReportDataSource() rds1.Name = "dsConceptos" - rds1.Value = objxml.GetConceptosforpdf() + rds1.Value = dtConceptos 'objxml.GetConceptosforpdf() listaDS.Add(rds1) + If objxml.complemento.Pagos IsNot Nothing Then + + ' Crear un nuevo DataTable y agregar las columnas correspondientes + Dim DTdoctosRelacionados As New DataTable() + DTdoctosRelacionados.TableName = "dtDocumentos" + + ' Agregar todas las columnas respetando los tipos de datos + DTdoctosRelacionados.Columns.Add("IdDocumento", GetType(String)) + DTdoctosRelacionados.Columns.Add("Serie", GetType(String)) + DTdoctosRelacionados.Columns.Add("Folio", GetType(String)) + DTdoctosRelacionados.Columns.Add("MonedaDR", GetType(String)) + DTdoctosRelacionados.Columns.Add("MetodoDePagoDR", GetType(String)) + DTdoctosRelacionados.Columns.Add("NumParcialidad", GetType(String)) + DTdoctosRelacionados.Columns.Add("ImpSaldoAnt", GetType(Decimal)) + DTdoctosRelacionados.Columns.Add("ImpPagado", GetType(Decimal)) + DTdoctosRelacionados.Columns.Add("ImpSaldoInsoluto", GetType(Decimal)) + + ' Llenar el DataTable con los valores de la lista de documentos + For Each doctosRelacionado As CFDIPagoDoctoRelacionado In objxml.complemento.Pagos.doctosRelacionados + Dim nRowdoctosRelacionados As DataRow = DTdoctosRelacionados.NewRow() + + ' Asignar valores a cada columna desde las propiedades del objeto documento + nRowdoctosRelacionados("IdDocumento") = doctosRelacionado.IdDocumento + nRowdoctosRelacionados("Serie") = doctosRelacionado.Serie + nRowdoctosRelacionados("Folio") = doctosRelacionado.Folio + nRowdoctosRelacionados("MonedaDR") = doctosRelacionado.MonedaDR + nRowdoctosRelacionados("MetodoDePagoDR") = doctosRelacionado.MetodoDePagoDR + nRowdoctosRelacionados("NumParcialidad") = doctosRelacionado.NumParcialidad + nRowdoctosRelacionados("ImpSaldoAnt") = doctosRelacionado.ImpSaldoAnt + nRowdoctosRelacionados("ImpPagado") = doctosRelacionado.ImpPagado + nRowdoctosRelacionados("ImpSaldoInsoluto") = doctosRelacionado.ImpSaldoInsoluto + + ' Agregar la fila al DataTable + DTdoctosRelacionados.Rows.Add(nRowdoctosRelacionados) + Next + Dim rdsp As New ReportDataSource() rdsp.Name = "dsPagos" - rdsp.Value = objxml.complemento.Pagos.doctosRelacionados + rdsp.Value = DTdoctosRelacionados ' objxml.complemento.Pagos.doctosRelacionados listaDS.Add(rdsp) + + End If @@ -9097,6 +9226,11 @@ Namespace ADS.eFacturas End Sub Public Class utilValores + + Public Sub New() + ' Constructor sin parámetros + End Sub + Public Sub New(nombre As String, valor As String) Me.Nombre = nombre Me.Valor = valor diff --git a/Empresas/Grales/Formatos/CFDIV3.rdlc b/Empresas/Grales/Formatos/CFDIV3.rdlc index eb90118c0..110283351 100644 --- a/Empresas/Grales/Formatos/CFDIV3.rdlc +++ b/Empresas/Grales/Formatos/CFDIV3.rdlc @@ -4624,7 +4624,7 @@ - =Fields!Impuesto_TasaOCuota.Value & if(Fields!Impuesto_TipoFactor.Value="Tasa","%","") + = CStr(Fields!Impuesto_TasaOCuota.Value) & IIf(Fields!Impuesto_TipoFactor.Value = "Tasa", "%", "") + true diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index a07691dee..fecbf4358 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -1427,6 +1427,16 @@ Partial Class OC_OC ObjOC.Dispose() End Sub + + + Protected Function GetCveSubProyectoDetalles() As Integer + + Dim CveSubProyectoDetalles As Integer = DtDetalle.MAX("CveSubProyecto").ToEntero + + Return CveSubProyectoDetalles + + End Function + #End Region #Region " CARGA DATOS " @@ -2880,9 +2890,13 @@ Partial Class OC_OC If Not TieneError Then ' AGREGAR ORDEN DE COMPRA - Dim tCveSubProyecto As Integer = -1 + Dim tCveSubProyecto As Integer = UsuarioActual.CveSubProyecto If ModalidadSubProyectoGeneral Then tCveSubProyecto = DdlSubProyectoGral.SelectedValue.ToEntero + If tCveSubProyecto <= 0 Then + tCveSubProyecto = GetCveSubProyectoDetalles() + End If + If OC.AddOrdenCompra(If(TipoOS, "OS", TipoOC), tCveSubProyecto, TxtDescrip.Text, TxtJustificacion.Text, DdlPrioridad.SelectedValue.ToEntero, TxtFecha.Text.ToDate, DdlMoneda.SelectedValue.ToEntero, CveEstatusNuevo, If(TxtFechaEstimadaEntrega.Text.Trim = "", "-1", TxtFechaEstimadaEntrega.Text.Trim), LugarEntrega, UsuarioActual.CveUsuario, CveEmpresaActual, GvD.Rows(0).FCHiddenField("HdnCvePresupuestoEgreso").Value.ToString.ToEntero, pCveProveedor:=CveProveedor, pCveProveedorSucursal:=CveProveedorSucursal, RequiereCotizacion:=ChkCotizacion.Checked, CveUsuarioAsignado:=DdlUsuariosAsignado.SelectedValue.ToEntero, CveCliente:=Ddlcliente.txtValue.Value.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, PrioridadObservacion:=txtobsprioridad.Text, @@ -2907,6 +2921,7 @@ Partial Class OC_OC If Not TieneError Then CveOCGeneradas.Add(CveOrdenCompra) FolioOCGeneradas.Add(OC.Folio) + SerieFolio = OC.Folio.ToString End If End If @@ -3547,8 +3562,16 @@ Partial Class OC_OC If Not ValidaNumRemision(TxtNumRemision.Text.Trim(), "OC", CveProveedor, objOrdenCompra.IniciaTransacSQL) Then HuboError = True End If - Dim CveSubProyecto As Integer = -1 - If ModalidadSubProyectoGeneral Then CveSubProyecto = DdlSubProyectoGral.SelectedValue.ToEntero + + Dim CveSubProyecto As Integer = UsuarioActual.CveSubProyecto + + If ModalidadSubProyectoGeneral Then + CveSubProyecto = DdlSubProyectoGral.SelectedValue.ToEntero + End If + + If CveSubProyecto <= 0 Then + CveSubProyecto = GetCveSubProyectoDetalles() + End If If (Not HuboError) AndAlso objOrdenCompra.AddOrdenCompra("OC", CveSubProyecto, TxtDescrip.Text, TxtJustificacion.Text, DdlPrioridad.SelectedValue.ToEntero, TxtFecha.Text.ToDate, DdlMoneda.SelectedValue.ToEntero, CveEstatusInicialOC, TxtFechaEstimadaEntrega.Text, LugarEntrega, CveUsuario, CveEmpresaActual, 0, pCveProveedor:=CveProveedor, CveCliente:=Ddlcliente.txtValue.Value.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, PrioridadObservacion:=txtobsprioridad.Text, @@ -3624,8 +3647,14 @@ Partial Class OC_OC HuboError = True End If - Dim tCveSubProyecto As Integer = -1 + Dim tCveSubProyecto As Integer = UsuarioActual.CveSubProyecto If ModalidadSubProyectoGeneral Then tCveSubProyecto = DdlSubProyectoGral.SelectedValue.ToEntero + If tCveSubProyecto <= 0 Then + tCveSubProyecto = GetCveSubProyectoDetalles() + End If + + + If (Not HuboError) AndAlso objOrdenCompra.AddOrdenCompra("OC", tCveSubProyecto, TxtDescrip.Text, TxtJustificacion.Text, DdlPrioridad.SelectedValue.ToEntero, TxtFecha.Text.ToDate, DdlMoneda.SelectedValue.ToEntero, CveEstatusInicialOC, TxtFechaEstimadaEntrega.Text, LugarEntrega, CveUsuario, CveEmpresaActual, 0, pCveProveedor:=DdlProveedores.SelectedValue.ToEntero, pCveProveedorSucursal:=DdlProveedorSucursal.SelectedValue.ToEntero, CveUsuarioAsignado:=DdlUsuariosAsignado.SelectedValue.ToEntero(), CveCliente:=Ddlcliente.txtValue.Value.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, PrioridadObservacion:=txtobsprioridad.Text, diff --git a/Ventas/RepVentasDetalle.aspx b/Ventas/RepVentasDetalle.aspx index 40f6f00f6..16de624de 100644 --- a/Ventas/RepVentasDetalle.aspx +++ b/Ventas/RepVentasDetalle.aspx @@ -540,7 +540,7 @@ <%-- 31--%> - + <%-- 32--%>