diff --git a/App_Code/ClsCompras.vb b/App_Code/ClsCompras.vb index e92fdf12d..70baf2423 100644 --- a/App_Code/ClsCompras.vb +++ b/App_Code/ClsCompras.vb @@ -173,12 +173,13 @@ Public Class ClsCompras Return Retorno End Function - Public Function GetCompraDetalle(CveCompra As Integer) As Boolean + Public Function GetCompraDetalle(CveCompra As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Comp_CompraDetalleGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveCompra", SqlDbType.Int).Value = CveCompra + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa End With Try @@ -659,7 +660,7 @@ Public Class ClsCompras Public Function GetRepComprasAF(FechaI As String, FechaF As String, CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer, Gpo As Integer, CveProyecto As Integer, CveSubProyecto As Integer, TipoCambio As Integer, TCEspecifico As Double, CveClasificacion As Integer, CveActivoFijo As Integer, CveTipoActivoFijo As Integer, CveSubTipoActivoFijo As Integer, CvePS As Integer, Optional CveUsuarioConsulta As Integer = -1, - Optional CveClasificacion2 As Integer = -1 + Optional CveClasificacion2 As Integer = -1, Optional CveTipoCompraAF As Integer = -1 ) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Comp_ComprasAFGetRep") @@ -682,6 +683,7 @@ Public Class ClsCompras .Add("@CvePS", SqlDbType.Int).Value = CvePS .Add("@CveUsuarioConsulta", SqlDbType.Int).Value = CveUsuarioConsulta .Add("@CveClasificacion2", SqlDbType.Int).Value = CveClasificacion2 + .Add("@CveTipoCompraAF", SqlDbType.Int).Value = CveTipoCompraAF 'CveClasificacion @@ -699,7 +701,7 @@ Public Class ClsCompras Public Function GetRepComprasAFDetalle(FechaI As String, FechaF As String, CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer, Gpo As Integer, CveProyecto As Integer, CveSubProyecto As Integer, TipoCambio As Integer, TCEspecifico As Double, CveClasificacion As Integer, CveActivoFijo As Integer, CveTipoActivoFijo As Integer, CveSubTipoActivoFijo As Integer, CvePS As Integer, - Anio As Integer, Mes As Integer, AnioMes As String, Optional CveUsuarioConsulta As Integer = -1, Optional CveClasificacion2 As Integer = -1) As Boolean + Anio As Integer, Mes As Integer, AnioMes As String, Optional CveUsuarioConsulta As Integer = -1, Optional CveClasificacion2 As Integer = -1, Optional CveTipoCompraAF As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Comp_ComprasAFDetalleGetRep") @@ -725,6 +727,7 @@ Public Class ClsCompras .Add("@CvePS", SqlDbType.Int).Value = CvePS .Add("@CveUsuarioConsulta", SqlDbType.Int).Value = CveUsuarioConsulta .Add("@CveClasificacion2", SqlDbType.Int).Value = CveClasificacion2 + .Add("@CveTipoCompraAF", SqlDbType.Int).Value = CveTipoCompraAF 'CveClasificacion End With diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index 4b7dd81fb..25f5e0936 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -5720,6 +5720,27 @@ Public Class ClsVentas End Function + Public Function CambioClientesVendedor(CveCliente As Integer, CveVendedor As Integer, CveEmpresa As Integer) As Boolean + + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_ClientesVendedorCambio") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveCliente", SqlDbType.VarChar).Value = CveCliente + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al cambiar al vendedor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno + + + End Function + + #Region "IDisposable Support" diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index c84d79087..b42713ae4 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -1289,7 +1289,8 @@
- + diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 6e0bcca33..6f698f90a 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -1462,9 +1462,7 @@ Partial Class Compras_Compras BtnGuardar.Enabled = False 'TdIVA.Visible = True 'DdlIVA.Enabled = False - CargaGvBitacora() - InventarioMov() - HabilitaNCInv() + DivConsignaciones.Visible = False ' 2018/05/25 - Muestra Boton Agregar Guia @@ -1639,7 +1637,7 @@ Partial Class Compras_Compras NCSeleccionFacturasRelacionadas(UUIDSList) End If - If CveFactura > 0 AndAlso Serie Isnot nothing AndAlso Serie.ToUpper = "NL" AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + If CveFactura > 0 AndAlso Serie IsNot Nothing AndAlso Serie.ToUpper = "NL" AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" Then EsDevolucionApoyoLogistico = True DdlTipoComprobante.Items.Clear() DdlTipoComprobante.Items.Add(New ListItem("Devolución", "DEV")) @@ -2830,11 +2828,10 @@ Partial Class Compras_Compras ImgDownPDF.Visible = True : ImgDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=pdf&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%")))) End If - TxtRembolsoNumero.Enabled = If(IdPoliza > 0, False, True) 'CargaDetalle - If ObjCompra.GetCompraDetalle(CveCompra) Then + If ObjCompra.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then TmpDT = ObjCompra.DtResultados TmpDTOriginal = ObjCompra.DtResultados.Copy @@ -2902,61 +2899,61 @@ Partial Class Compras_Compras CalculaTotales(True) - If UsuarioActual.Empresa.UsaInventarios Then - DtInv = TmpDT.FiltraParametros(String.Format("CveTipoPS = 2")).Copy + 'If UsuarioActual.Empresa.UsaInventarios Then + ' DtInv = TmpDT.FiltraParametros(String.Format("CveTipoPS = 2")).Copy - If dr("Inventario").ToString = "1" Then + ' If dr("Inventario").ToString = "1" Then - CveMovimientoAlmacen = dr("CveMovimiento").ToString.ToEntero + ' CveMovimientoAlmacen = dr("CveMovimiento").ToString.ToEntero - Dim Inv As New ClsInventarios - If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa) Then - 'Dim TempParametros = Encripta(String.Format("OP=Alm&CveMovimiento={0}", dr("CveMovimiento"))) - 'ImgImprimirAlmacen.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", TempParametros) + ' Dim Inv As New ClsInventarios + ' If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa) Then + ' 'Dim TempParametros = Encripta(String.Format("OP=Alm&CveMovimiento={0}", dr("CveMovimiento"))) + ' 'ImgImprimirAlmacen.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", TempParametros) - ImgImprimirAlmacen.Visible = True - ImgImprimirAlmacen.NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", dr("CveMovimiento")) + ' ImgImprimirAlmacen.Visible = True + ' ImgImprimirAlmacen.NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", dr("CveMovimiento")) - Dim drt As DataRow - 'actualizo el almacen - For Each dri As DataRow In DtInv.Rows + ' Dim drt As DataRow + ' 'actualizo el almacen + ' For Each dri As DataRow In DtInv.Rows - drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad"))) - If drt IsNot Nothing Then - Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) 'Charlie - TmpDr("CveAlmacen") = drt("CveAlmacen") 'Charlie + ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad"))) + ' If drt IsNot Nothing Then + ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) 'Charlie + ' TmpDr("CveAlmacen") = drt("CveAlmacen") 'Charlie - dri("CveAlmacen") = drt("CveAlmacen") + ' dri("CveAlmacen") = drt("CveAlmacen") - End If + ' End If - Next + ' Next - End If + ' End If - 'Proceso Super Tramposo de Charlie - If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa, CveCompra:=-123) Then - Dim drt As DataRow - For Each dri As DataRow In DtInv.Rows - drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad"))) - If drt IsNot Nothing Then - Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) - TmpDr("CveAlmacen") = drt("CveAlmacen") - End If - Next - End If + ' ''Proceso Super Tramposo de Charlie + ' 'If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa, CveCompra:=-123) Then + ' ' Dim drt As DataRow + ' ' For Each dri As DataRow In DtInv.Rows + ' ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad"))) + ' ' If drt IsNot Nothing Then + ' ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) + ' ' TmpDr("CveAlmacen") = drt("CveAlmacen") + ' ' End If + ' ' Next + ' 'End If - Inv.Dispose() + ' Inv.Dispose() - End If + ' End If - CargaGvInv() + ' CargaGvInv() - 'Ocultamos "Recibir Aqui" - GvInv.Columns(6).Visible = False - GvInv.Columns(7).Visible = False + ' 'Ocultamos "Recibir Aqui" + ' GvInv.Columns(6).Visible = False + ' GvInv.Columns(7).Visible = False - End If + 'End If End If DdlTipoComprobante.Enabled = False @@ -3204,6 +3201,9 @@ Partial Class Compras_Compras End If End If CargaComplementosPago() + CargaGvBitacora() + InventarioMov() + HabilitaNCInv() Else Alert("La compra solicitada no se encontró. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia) @@ -4194,23 +4194,18 @@ Partial Class Compras_Compras Protected Sub BtnGuardar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnGuardar.Click - - '------------------ INICIA VALIDACIONES ------------------ - If Not ValidaVincuacionNotaFactura() Then + If Not ValidaVinculacionNotaFactura() Then Alert("Se requiere que la nota este aplciada a las facturas", TipoMensaje.MsgAdvertencia) Exit Sub End If - - If Not ValidaSeleccionAnticipo() Then Alert("El proveedor tiene anticipos sin aplicar, favor de especiar uno.", TipoMensaje.MsgAdvertencia) Exit Sub End If - Dim TotalRealDevolucion As Decimal = 0 Dim EstatusCredito As Integer = 0 @@ -5567,11 +5562,8 @@ Partial Class Compras_Compras Dim indice = 0 Dim ImporteConcepto As Decimal = 0 - - If DdlTipoComprobante.SelectedValue = "Fac" Then - For Each tCveAlmacen As Integer In ListAlmacenes If GvInv.Rows(indice).FCDropDownList("DdlRecibirInv").SelectedValue = "1" Then Continue For @@ -5643,17 +5635,17 @@ Partial Class Compras_Compras ImporteConcepto = If(DdlMoneda.SelectedValue.ToEntero = 1, PUInv, PUInv * TipoCambioGuardar) - If(DdlMoneda.SelectedValue.ToEntero = 1, tDescuento, tDescuento * TipoCambioGuardar) 'si no es por serie lote ImporteConcepto = If(UsuarioActual.Empresa.UsaAC, ImporteConcepto * IVA, ImporteConcepto) - If Dr("CveAlmacen").ToString.ToEntero = tCveAlmacen Then - If Not ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, CantidadInv, CveUnidad, Dr("CvePS").ToString.ToEntero, ImporteConcepto, -1, PUTC:=If(DdlMoneda.SelectedValue.ToEntero = 1, -1, Dr("PU").ToString.ToDecimal), CostoIndirecto:=CostoIndirecto, CveCompraDetalle:=Dr("CveCompraDetalle").ToString.ToEntero, CveOrdenCompraDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero) Then - ErrorMovInv = True - Exit For - End If + If Dr("CveAlmacen").ToString.ToEntero = tCveAlmacen Then + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, CantidadInv, CveUnidad, Dr("CvePS").ToString.ToEntero, ImporteConcepto, -1, PUTC:=If(DdlMoneda.SelectedValue.ToEntero = 1, -1, Dr("PU").ToString.ToDecimal), CostoIndirecto:=CostoIndirecto, CveCompraDetalle:=Dr("CveCompraDetalle").ToString.ToEntero, CveOrdenCompraDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero) Then + ErrorMovInv = True + Exit For End If - End If + End If - i = i + 1 + + i = i + 1 contadorAlamcen = contadorAlamcen + 1 Next End If @@ -6099,16 +6091,10 @@ Partial Class Compras_Compras ErrorPrepoliza = True End If - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, importeMN, 41, Referencia, Concepto, CtaProveedorAcreedores, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CveCreditoDetalle:=CveCreditoDetalle, CveClasificacion:=CveClasificacionDT, CveSubProyecto:=CveSubProyectoDT, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveTipoGasto:=CveTipoGastoDT, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then ErrorPrepoliza = True End If - - - - If importeMovimiento <> 0 Then Dim Pago As New CompraPago Pago.ImportePago = importeMovimiento @@ -7113,75 +7099,6 @@ Partial Class Compras_Compras AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) End If Next - - 'If RBLTipoDeudor.SelectedValue.ToEntero = 1 Then - ' For Each rw As GridViewRow In GvDeudores.Rows - ' If rw.FCCheckBox("Chk").Checked Then - - ' importeMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal - ' OtrosGastosIngresos = rw.FCTextBox("TxtDeudoresOtrosGastosIngresos").Text.ToDecimal - - ' importeMN = (importeMovimiento * tipoCambioActual * Multiplicador).RoundSQL - ' Dim OtrosGastosIngresosMN As Decimal = (OtrosGastosIngresos * tipoCambioActual * Multiplicador).RoundSQL - ' IdCtaContable = CtaProveedorDeudores - ' Dim tCveProveedor As Integer = rw.DataKey("CveProveedor").ToEntero - - ' 'Conta ContPAQ - ' If IdCtaContable = 0 Then - ' CuentasContablesInvalidas.Append("
" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString) - ' idCuentaContabilizacion = 0 - ' End If - - - ' If OtrosGastosIngresos = 0 Then - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=tCveProveedor, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then - ' ErrorPrepoliza = True : Exit For - ' End If - ' Else - - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, (importeMovimiento + OtrosGastosIngresos), Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=tCveProveedor, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then - ' ErrorPrepoliza = True : Exit For - ' End If - ' End If - - - - ' Dim Pago As New CompraPago With {.ImportePago = importeMovimiento, .CveIE = CveIE, .CveMonedaPago = rw.DataKey("CveMoneda").ToEntero} - ' AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) - ' End If - ' Next - 'Else - ' For Each rw As GridViewRow In GvDeudores.Rows - ' If rw.FCCheckBox("Chk").Checked Then - ' importeMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal - ' OtrosGastosIngresos = rw.FCTextBox("TxtDeudoresOtrosGastosIngresos").Text.ToDecimal - - ' importeMN = (importeMovimiento * tipoCambioActual * Multiplicador).RoundSQL - ' Dim OtrosGastosIngresosMN As Decimal = (OtrosGastosIngresos * tipoCambioActual * Multiplicador).RoundSQL - - ' IdCtaContable = CtaProveedorDeudores - ' Dim tCveProveedor As Integer = rw.DataKey("CveProveedor").ToEntero - - ' If OtrosGastosIngresos = 0 Then - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 254, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=tCveProveedor, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then - ' ErrorPrepoliza = True - ' Exit For - ' End If - ' Else - ' adasdasdasd - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, (importeMovimiento + OtrosGastosIngresos), Referencia, 254, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=tCveProveedor, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then - ' ErrorPrepoliza = True - ' Exit For - ' End If - ' End If - - - ' Dim Pago As New CompraPago With {.ImportePago = importeMovimiento, .CveIE = CveIE, .CveMonedaPago = rw.DataKey("CveMoneda").ToEntero} - ' AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) - ' End If - ' Next - 'End If - importeMovimiento = 0 OtrosGastosIngresos = 0 @@ -7254,60 +7171,6 @@ Partial Class Compras_Compras ErrorMovtosCxP = AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) - ''CveCon = 272 - '''PAGO A FACTURA POR NC - 'If TipoCambioFactura > 1 Then CveCon = 304 - 'If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, importeMovimientoNC, Referencia, CveCon, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=Gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedorConcepto, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimientoNC, ImporteME:=importeMovimientoNC, TipoCambio:=TipoCambioFactura, Contabilizable:=SeContabiliza, CveCompraAmortizacion:=CveCompra) Then - - ' Dim CveConceptoContableComplementaria As Integer = 206 - ' If Gvr.DataKey("CveTipoConcepto").ToEntero = 2 Then CveConceptoContableComplementaria = 310 'cuando es acreedor - - ' IdCtaContable = CtaProveedorComplementaria - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, importeMNNC - importeMovimientoNC, Referencia, CveConceptoContableComplementaria, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=Gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedorConcepto, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMNNC - importeMovimientoNC, ImporteME:=importeMovimientoNC, TipoCambio:=TipoCambioFactura, Contabilizable:=SeContabiliza, CveCompraAmortizacion:=CveCompra) Then - ' ErrorPrepoliza = True - ' Exit For - ' End If - 'Else - ' ErrorPrepoliza = True - ' Exit For - 'End If - - 'importeMNNC = importeMovimientoNC * tipoCambioActual * Multiplicador - 'IdCtaContable = CtaProveedorExtranjera - 'If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimientoNC, Referencia, 60, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveCompraAmortizacion:=Gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedorConcepto, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimientoNC, ImporteME:=importeMovimientoNC, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then - ' IdCtaContable = CtaProveedorComplementaria - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMNNC - importeMovimientoNC, Referencia, 235, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveCompraAmortizacion:=Gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedorConcepto, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMNNC - importeMovimientoNC, ImporteME:=importeMovimientoNC, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then - ' ErrorPrepoliza = True - ' Exit For - ' End If - 'Else - ' ErrorPrepoliza = True - ' Exit For - ' Exit For - 'End If - - '' FLUCTUACION CAMBIARIA - 'If tipoCambioActual <> TipoCambioFactura AndAlso Not ChkNCInvNC.Checked Then ' que no se esté afectando mercancía en tránsto - ' importeMovimiento = (importeMovimientoNC * TipoCambioFactura) - (importeMovimientoNC * tipoCambioActual) - - ' If importeMovimiento > 0 Then - ' ConceptoContable = 64 : TipoMovimiento = True - ' IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria - ' ElseIf importeMovimiento < 0 Then - ' ConceptoContable = 65 : TipoMovimiento = False - ' IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria - ' End If - - ' importeMovimiento = importeMovimiento.Abs.RoundSQL() - ' importeMN = importeMovimiento - ' If importeMovimiento <> 0 Then - - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, Contabilizable:=SeContabiliza, CveSubProyecto:=CveSubProyecto) Then - ' ErrorPrepoliza = True - ' Exit For - ' End If - ' End If - 'End If End If Next @@ -8334,11 +8197,9 @@ Partial Class Compras_Compras End If End Sub - Private Function ValidaVincuacionNotaFactura() As Boolean + Private Function ValidaVinculacionNotaFactura() As Boolean Dim Respuesta As Boolean = False - - If DdlTipoComprobante.SelectedValue.Contiene("NC") Then If UsuarioActual.Empresa.Funcionalidad(531).ToString.ToEntero = 1 Then @@ -8350,15 +8211,12 @@ Partial Class Compras_Compras End If End If Next - Else Respuesta = True End If Else Respuesta = True End If - - Return Respuesta End Function @@ -8537,7 +8395,8 @@ Partial Class Compras_Compras Dim Comp As New ClsCompras() Dim ObjEventos As New ClsOIEventos(Comp.IniciaTransacSQL()) Dim ObjConta As New ClsContabilidad(Comp.IniciaTransacSQL()) - + Dim ObjInventarios As New ClsInventarios(Comp.IniciaTransacSQL()) + Dim ObjGral As New ClsGenerales(Comp.IniciaTransacSQL()) Dim ErrorCompra = False @@ -8564,6 +8423,64 @@ Partial Class Compras_Compras End If End If + + + Try + If ObjInventarios.GetInv_ComprasMov(CveCompra, UsuarioActual.CveEmpresa) Then + Dim DTInventarios As DataTable = ObjInventarios.DtResultados + If DTInventarios.Rows.Count > 0 Then + + Dim DTMovimientos As DataTable = DTInventarios.FiltraParametros("", "", {"CVeMovimiento"}) + + For Each diRow As DataRow In DTMovimientos.Rows + + Dim CveMovimientoActual As Integer = diRow("CveMovimiento").ToString.ToEntero + + Dim DTMovimientoActual As DataTable = DTInventarios.FiltraParametros($"CveMovimiento = {CveMovimientoActual} ") + + Dim detalleDescripcion As String = "" + Dim Description As String = "" + + Dim FolioMovimiento As String = "" + Dim ConceptoMovimiento As String = "" + + For Each dRowMovActual As DataRow In DTMovimientoActual.Rows + + If dRowMovActual("UM").ToString = "" Then + FolioMovimiento = dRowMovActual("Folio").ToString + ConceptoMovimiento = dRowMovActual("Concepto").ToString + + Description = String.Format("Eliminación Compra {6},Movimiento con Concepto: {0}, Almacen: {1}, Fecha: {2}, Folio: {3}, Usuario: {4}, Observaciones adicionales: {5}, Productos Información:
", + ConceptoMovimiento, + dRowMovActual("Almacen").ToString, + dRowMovActual("FechaMovto").ToString.ToDate.ToString("dd/MM/yyyy"), + FolioMovimiento, + dRowMovActual("Usuario").ToString, + dRowMovActual("Observaciones").ToString, + $"{TxtSerie.Text}-{TxtFolio.Text}") + Else + detalleDescripcion = String.Format("- Cant: {0}, PS: {1}, PU: {2}, UM: {3}
", dRowMovActual("Cantidad").ToString.ToEntero, dRowMovActual("CodigoPS"), dRowMovActual("PU"), dRowMovActual("UM")) + End If + + Next + + If Not ObjGral.AddHistorialBitacora(Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, "", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 1, + String.Format("{0}, Informacion = {1}", Description, detalleDescripcion), + "Inventarios", FolioMovimiento + " / " + ConceptoMovimiento) Then + ErrorCompra = True + Exit For + End If + Next + + End If + End If + Catch ex As Exception + ErrorCompra = True + End Try + + + + If Not ErrorCompra Then If Not Comp.DeleteCompra(CveCompra, False) Then ErrorCompra = True @@ -10075,19 +9992,14 @@ Partial Class Compras_Compras nodeCFDIRelacionados = XMLDoc.SelectSingleNode(String.Format("//{0}:CfdiRelacionados", Prefijo), namespaces) If nodeCFDIRelacionados IsNot Nothing Then - For Each CFDIRelacionados As XmlNode In nodeCFDIRelacionados UUIDSLista.Add("" & CFDIRelacionados.Attributes("UUID").Value.ToString & "") Next - End If - UUIDSList = UUIDSLista End If - - Dim node As XmlNode node = XMLDoc.SelectSingleNode(String.Format("//{0}:Emisor", Prefijo), namespaces) @@ -10117,7 +10029,6 @@ Partial Class Compras_Compras End If End If - node = XMLDoc.SelectSingleNode(String.Format("//{0}:Impuestos", Prefijo), namespaces) If node IsNot Nothing AndAlso node.ChildNodes.Count > 0 Then Dim nodeRetenciones As XmlNodeList = XMLDoc.SelectNodes(String.Format("//{0}:Comprobante/{0}:Impuestos/{0}:Retenciones/{0}:Retencion", Prefijo), namespaces) @@ -10128,9 +10039,7 @@ Partial Class Compras_Compras For Each retencion As XmlNode In nodeRetenciones If retencion.Attributes("Impuesto").Value = "002" Then RetencionIVA += retencion.Attributes("Importe").Value.ToDecimal - If retencion.Attributes("Impuesto").Value = "001" Then RetencionISR += retencion.Attributes("Importe").Value.ToDecimal - Next GvOC1.Columns(6).Visible = True GvOC2.Columns(4).Visible = True @@ -10138,9 +10047,7 @@ Partial Class Compras_Compras For Each retencion As XmlNode In nodeRetenciones If retencion.Attributes("impuesto").Value = "IVA" Then RetencionIVA += retencion.Attributes("importe").Value.ToDecimal - If retencion.Attributes("impuesto").Value = "ISR" Then RetencionISR += retencion.Attributes("importe").Value.ToDecimal - Next End If SumaTotalRetenciones += RetencionIVA @@ -10157,23 +10064,15 @@ Partial Class Compras_Compras If traslado.Attributes("Impuesto").Value = "002" Then TrasladoIVA += traslado.Attributes("Importe").Value.ToDecimal If traslado.Attributes("Impuesto").Value = "003" Then TrasladoIEPS += traslado.Attributes("Importe").Value.ToDecimal End If - - - Next - Else For Each traslado As XmlNode In nodeTraslados - - If traslado.Attributes("Importe") IsNot Nothing Then If traslado.Attributes("impuesto").Value = "IVA" Then TrasladoIVA += traslado.Attributes("importe").Value.ToDecimal If traslado.Attributes("impuesto").Value = "IEPS" Then TrasladoIEPS += traslado.Attributes("importe").Value.ToDecimal End If - - Next End If @@ -10199,9 +10098,7 @@ Partial Class Compras_Compras OtrosImpuestos = ValorXML(node, "TotaldeTraslados", "0").ToDecimal '2022.06.04-- se quitan los datos de retenciones de impuestos locales, generan conflicto. RMF 'OtrosImpuestosRetenciones = ValorXML(node, "TotaldeRetenciones", "0").ToDecimal - End If - End If End Sub @@ -10242,12 +10139,14 @@ Partial Class Compras_Compras e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("chkAnt(this,{0},{1},{2});", e.Row.FCTextBox("TxtAnticipo").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO + Dim tTCFecha As Double = If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble) + If UsuarioActual.Empresa.CveEmpresa.Contiene(13, 83) Then e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2},{3},{4},{5},{6});", e.Row.FCCheckBox("Chk").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, - If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + tTCFecha, DdlMoneda.SelectedValue.ToEntero, e.Row.FCTextBox("TxtComision").ClientID)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO @@ -10256,7 +10155,7 @@ Partial Class Compras_Compras e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, - If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + tTCFecha, DdlMoneda.SelectedValue.ToEntero, e.Row.FCTextBox("TxtAnticipo").ClientID)) Else @@ -10264,7 +10163,7 @@ Partial Class Compras_Compras e.Row.FCCheckBox("Chk").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, - If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + tTCFecha, DdlMoneda.SelectedValue.ToEntero, e.Row.FCTextBox("TxtComision").ClientID)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO @@ -10273,7 +10172,7 @@ Partial Class Compras_Compras e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, - If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + tTCFecha, DdlMoneda.SelectedValue.ToEntero, e.Row.FCTextBox("TxtAnticipo").ClientID)) End If @@ -14196,7 +14095,7 @@ Partial Class Compras_Compras Dim TipoCambioGuardar As Decimal = 1 Dim tcvealmacen As Integer = 0 - If ObjCompra.GetCompraDetalle(CveCompra) Then + If ObjCompra.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then If ObjCompra.DtResultados.Rows.Count > 0 Then TmpDT = ObjCompra.DtResultados End If @@ -16089,7 +15988,7 @@ Partial Class Compras_Compras Return False Else - If ObjCompras.GetCompraDetalle(CveCompra) Then + If ObjCompras.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then If ObjInv.GetMovimientosDetalle(-1, UsuarioActual.CveEmpresa, CveCompra) Then Dtcompra = ObjInv.DtResultados Dim TotalProductos = Dtcompra.SUM("Total").ToString.ToDecimal @@ -16133,7 +16032,6 @@ Partial Class Compras_Compras Protected Sub DdlTipoComprobante_SelectedIndexChanged(sender As Object, e As EventArgs) - If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then If DdlTipoComprobante.SelectedValue = "NC" Then @@ -16155,22 +16053,12 @@ Partial Class Compras_Compras DivReembolso.Visible = False RBLPago.Items(2).Enabled = False UpPS.Update() + If CveFactura > 0 Then NCSeleccionFacturasRelacionadas(UUIDSList) End If - - - End If - If CveFactura > 0 Then - If DdlTipoComprobante.SelectedValue = "NC" Then - NCSeleccionFacturasRelacionadas(UUIDSList) - End If - End If - - - UPCondicionesPago.Update() End Sub @@ -16925,12 +16813,14 @@ Partial Class Compras_Compras #Region "Historial de Modificacion" Private Sub CargaGvBitacora() ' COMENTADO POR IPP PARA SUBIR 5 ABRIL 2017 - Dim ObjGral As New ClsGenerales() - If ObjGral.GetHistorialBitacora(-1, -1, -1, -1, -1, CveCompra, -1, UsuarioActual.CveEmpresa) Then - GvBitacora.DataSource = ObjGral.DtResultados - GvBitacora.DataBind() + If CveCompra > 0 Then + Dim ObjGral As New ClsGenerales() + If ObjGral.GetHistorialBitacora(-1, -1, -1, -1, -1, CveCompra, -1, UsuarioActual.CveEmpresa) Then + GvBitacora.DataSource = ObjGral.DtResultados + End If + ObjGral.Dispose() End If - ObjGral.Dispose() + GvBitacora.DataBind() End Sub #End Region @@ -19929,7 +19819,6 @@ Partial Class Compras_Compras End If Next - End If End If @@ -20578,15 +20467,15 @@ Partial Class Compras_Compras End Function - Private Sub NCSeleccionFacturasRelacionadas(UUIDSListRelacioandos As List(Of String)) + Private Sub NCSeleccionFacturasRelacionadas(UUIDSListRelacionados As List(Of String)) - If UUIDSListRelacioandos.Count > 0 Then + If UUIDSListRelacionados.Count > 0 Then Dim SaldoNota As Decimal = TxtTotal.Text.ToDecimal Dim SaldoNotaPorAplicar As Decimal = SaldoNota Dim CountAplicacion As Integer = 0 Dim sbNoencontrados As New StringBuilder - For Each UUID As String In UUIDSListRelacioandos + For Each UUID As String In UUIDSListRelacionados UUID = UUID.ToUpper Dim UUIDEncontrado As Boolean = False @@ -20602,7 +20491,7 @@ Partial Class Compras_Compras Dim TeminarAmortizacion As Boolean = False - For Each UUID As String In UUIDSListRelacioandos + For Each UUID As String In UUIDSListRelacionados For Each GvRow As GridViewRow In GvFacturaNC.Rows @@ -20652,7 +20541,7 @@ Partial Class Compras_Compras MsgSalida = $"Folios Fiscales no encontradas o sin saldo: {sbNoencontrados }

" End If - MsgSalida = $"{MsgSalida} Se seleccionó $ {(SaldoNota - SaldoNotaPorAplicar).FormatoNumero} de $ {SaldoNota.FormatoNumero} a {CountAplicacion} factura {If(CountAplicacion > 0, "s", "")}." + MsgSalida = $"{MsgSalida} Se seleccionó $ {(SaldoNota - SaldoNotaPorAplicar).FormatoNumero} de $ {SaldoNota.FormatoNumero} a {CountAplicacion} factura{If(CountAplicacion > 1, "s", "")}." Alert(MsgSalida, TipoMensaje) diff --git a/Compras/Proveedores.aspx.vb b/Compras/Proveedores.aspx.vb index d6440f523..6c4530de0 100644 --- a/Compras/Proveedores.aspx.vb +++ b/Compras/Proveedores.aspx.vb @@ -5625,7 +5625,7 @@ Partial Class Compras_Proveedores TxtSerieFolio.Text = ObjCompras.DtResultados.Rows(0)("SerieFolio").ToString() End If End If - If ObjCompras.GetCompraDetalle(CveCompra) Then + If ObjCompras.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then Dim StrPS As New StringBuilder() For Each Row As DataRow In ObjCompras.DtResultados.Rows If ObjCompras.DtResultados.Rows.Count > 1 Then diff --git a/Compras/RepComprasAF.aspx b/Compras/RepComprasAF.aspx index 875cfda95..4002fd32d 100644 --- a/Compras/RepComprasAF.aspx +++ b/Compras/RepComprasAF.aspx @@ -131,13 +131,11 @@
-
SubProyecto:
-
Proveedor:
@@ -146,6 +144,15 @@ +
Tipo de Compra:
+
+ + + + + +
+
diff --git a/Compras/RepComprasAF.aspx.vb b/Compras/RepComprasAF.aspx.vb index 14d834ae7..c0f2719c9 100644 --- a/Compras/RepComprasAF.aspx.vb +++ b/Compras/RepComprasAF.aspx.vb @@ -75,15 +75,14 @@ Partial Class Compras_RepComprasAF #Region "CARGAS" Private Sub CargaCombos() + txtFechaI.Text = $"01/{Now.Month}/{Now.Year}" + DdlProveedores.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa) DdlProveedores.DataBind() DdlMonedas.DataSource = GlobalDTMonedas() DdlMonedas.DataBind() - DdlProyecto.DataSource = GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1) - DdlProyecto.DataBind() - DdlTipoActivoFijo.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros("", "TipoActivoFijo") DdlTipoActivoFijo.DataBind() @@ -99,44 +98,13 @@ Partial Class Compras_RepComprasAF DdlClasificacion2.DataSource = Nothing End If - ObjClasificacion.Dispose() DdlClasificacion2.DataBind() - - - DdlActivoFijo.DataSource = GlobalDTActivoFijos(UsuarioActual.CveEmpresa) DdlActivoFijo.DataBind() - If UsuarioActual.Empresa.Tipo_CentroCosto = 1 Then - DdlProyecto.Visible = False - 'LblSubProyecto.Text = "Sucursal" - LblProyecto.Visible = False - ' DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1) - CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto) - 'DdlSubProyecto.DataBind() - 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1")) - ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 2 Then - DdlProyecto.Visible = False - 'LblSubProyecto.Text = "Proyecto" - LblProyecto.Visible = False - - 'DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1) - 'DdlSubProyecto.DataBind() - CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto) - - 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1")) - ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 3 Or UsuarioActual.Empresa.Tipo_CentroCosto = 0 Then - LblProyecto.Text = "Proyecto" - - ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 4 Then - LblProyecto.Text = "Sucursal" - LblSubProyecto.Text = "Proyecto" - ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 5 Then - LblProyecto.Text = "Proyecto" - LblSubProyecto.Text = "Sucursal" - End If + CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, Nothing, LblSubProyecto) CargaPS(-1) @@ -151,18 +119,19 @@ Partial Class Compras_RepComprasAF End Sub Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlProyecto.SelectedIndexChanged - CargaSubProyecto() + If DdlProyecto.SelectedValue = "-1" Then + DdlProyecto.Items.Clear() + DdlSubProyecto.Items.Clear() + CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, Nothing, LblSubProyecto) + Else + CargaSubProyecto() + End If End Sub - Private Sub CargaSubProyecto() - - - CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto) - - 'DdlSubProyecto.Items.Clear() - 'DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1) - 'DdlSubProyecto.DataBind() - 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1")) + DdlSubProyecto.Items.Clear() + DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1).FiltraParametros(String.Format("CveProyecto = {0}", DdlProyecto.SelectedValue), "SubProyecto") + DdlSubProyecto.DataBind() + DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click CargaDatos() @@ -184,7 +153,7 @@ Partial Class Compras_RepComprasAF If ObjCompras.GetRepComprasAF(FechaI, FechaF, DdlProveedores.SelectedValue.ToEntero, DdlMonedas.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, RblTipoCambio.SelectedValue.ToEntero, TCEspecifico, DdlClasificacion.SelectedValue.ToEntero, DdlActivoFijo.SelectedValue.ToEntero, DdlTipoActivoFijo.SelectedValue.ToEntero, DdlSubTipoActivoFijo.SelectedValue.ToEntero, - CvePS, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero) Then + CvePS, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero, CveTipoCompraAF:=DdlTipoCompra.SelectedValue.ToEntero) Then DTDatos = ObjCompras.DtResultados GvDatos.DataSource = ObjCompras.DtResultados @@ -215,11 +184,11 @@ Partial Class Compras_RepComprasAF If e.Row.DBCampo("Orden") = "1" Then - Dim Liga As String = $"/Compras/RepComprasAFDetalle.aspx?GPO={DdlGrupo.SelectedValue}&Anio={e.Row.DBCampo("Anio")}&Mes={e.Row.DBCampo("Mes")}&AnioMes={ e.Row.DBCampo("AnioMes")}&Fecha={e.Row.DBCampo("Fecha")}&CveProveedor={ e.Row.DBCampo("CveProveedor")}&CveActivoFijo={e.Row.DBCampo("CveActivoFijo")}&CveTipoActivoFijo={e.Row.DBCampo("CveTipoActivoFijo")}&CveSubTipoActivoFijo={e.Row.DBCampo("CveSubTipoActivoFijo")}&CveProyecto={ DdlProyecto.SelectedValue}&CveSubProyecto={DdlSubProyecto.SelectedValue}&CvePS={ If(CvePS > 0, CvePS.ToString, e.Row.DBCampo("CvePS").ToString) }&CveClasificacion={e.Row.DBCampo("CveClasificacion")}&CveMoneda={ e.Row.DBCampo("CveMoneda")}&FechaI={FechaI}&FechaF={FechaF}&PS={PS}&CveClasificacion2={e.Row.DBCampo("CveClasificacion2")}" + Dim Liga As String = $"/Compras/RepComprasAFDetalle.aspx?GPO={DdlGrupo.SelectedValue}&Anio={e.Row.DBCampo("Anio")}&Mes={e.Row.DBCampo("Mes")}&AnioMes={ e.Row.DBCampo("AnioMes")}&Fecha={e.Row.DBCampo("Fecha")}&CveProveedor={ e.Row.DBCampo("CveProveedor")}&CveActivoFijo={e.Row.DBCampo("CveActivoFijo")}&CveTipoActivoFijo={e.Row.DBCampo("CveTipoActivoFijo")}&CveSubTipoActivoFijo={e.Row.DBCampo("CveSubTipoActivoFijo")}&CveProyecto={ DdlProyecto.SelectedValue}&CveSubProyecto={DdlSubProyecto.SelectedValue}&CvePS={ If(CvePS > 0, CvePS.ToString, e.Row.DBCampo("CvePS").ToString) }&CveClasificacion={e.Row.DBCampo("CveClasificacion")}&CveMoneda={ e.Row.DBCampo("CveMoneda")}&FechaI={FechaI}&FechaF={FechaF}&PS={PS}&CveClasificacion2={e.Row.DBCampo("CveClasificacion2")}&CveTipoCompraAF={DdlTipoCompra.SelectedValue}" e.Row.Cells(0).Text = String.Format("{2}", "Texto", Liga, e.Row.DataKey("GPO").ToString) Else e.Row.BackColor = Drawing.Color.LightGray - Dim Liga As String = $"/Compras/RepComprasAFDetalle.aspx?GPO=-1&Anio={e.Row.DBCampo("Anio")}&Mes={e.Row.DBCampo("Mes")}&AnioMes={ e.Row.DBCampo("AnioMes")}&Fecha={e.Row.DBCampo("Fecha")}&CveProveedor={ e.Row.DBCampo("CveProveedor")}&CveActivoFijo={e.Row.DBCampo("CveActivoFijo")}&CveTipoActivoFijo={e.Row.DBCampo("CveTipoActivoFijo")}&CveSubTipoActivoFijo={e.Row.DBCampo("CveSubTipoActivoFijo")}&CveProyecto={ DdlProyecto.SelectedValue}&CveSubProyecto={DdlSubProyecto.SelectedValue}&CvePS={ If(CvePS > 0, CvePS.ToString, e.Row.DBCampo("CvePS").ToString)}&CveClasificacion={e.Row.DBCampo("CveClasificacion")}&CveMoneda={ e.Row.DBCampo("CveMoneda")}&FechaI={FechaI}&FechaF={FechaF}&PS={PS}&CveClasificacion2={e.Row.DBCampo("CveClasificacion2")}" + Dim Liga As String = $"/Compras/RepComprasAFDetalle.aspx?GPO=-1&Anio={e.Row.DBCampo("Anio")}&Mes={e.Row.DBCampo("Mes")}&AnioMes={ e.Row.DBCampo("AnioMes")}&Fecha={e.Row.DBCampo("Fecha")}&CveProveedor={ e.Row.DBCampo("CveProveedor")}&CveActivoFijo={e.Row.DBCampo("CveActivoFijo")}&CveTipoActivoFijo={e.Row.DBCampo("CveTipoActivoFijo")}&CveSubTipoActivoFijo={e.Row.DBCampo("CveSubTipoActivoFijo")}&CveProyecto={ DdlProyecto.SelectedValue}&CveSubProyecto={DdlSubProyecto.SelectedValue}&CvePS={ If(CvePS > 0, CvePS.ToString, e.Row.DBCampo("CvePS").ToString)}&CveClasificacion={e.Row.DBCampo("CveClasificacion")}&CveMoneda={ e.Row.DBCampo("CveMoneda")}&FechaI={FechaI}&FechaF={FechaF}&PS={PS}&CveClasificacion2={e.Row.DBCampo("CveClasificacion2")}&CveTipoCompraAF={DdlTipoCompra.SelectedValue}" e.Row.Cells(0).Text = String.Format("{2}", "Texto", Liga, e.Row.DataKey("Moneda").ToString) diff --git a/Compras/RepComprasAFDetalle.aspx b/Compras/RepComprasAFDetalle.aspx index 98c3f24f4..c715eade2 100644 --- a/Compras/RepComprasAFDetalle.aspx +++ b/Compras/RepComprasAFDetalle.aspx @@ -143,7 +143,7 @@
-
SubTipo Activo Fijo:
+
SubTipo Fijo:
@@ -186,7 +186,16 @@ -
+ + +
Tipo de Compra
+
+ + + + + +
diff --git a/Compras/RepComprasAFDetalle.aspx.vb b/Compras/RepComprasAFDetalle.aspx.vb index 9077f17ce..7b8a4c1d0 100644 --- a/Compras/RepComprasAFDetalle.aspx.vb +++ b/Compras/RepComprasAFDetalle.aspx.vb @@ -106,6 +106,7 @@ Partial Class Compras_RepComprasAFDetalle DdlProyecto.SelectedValueExist(Request.QueryString("CveProyecto").ToString) DdlSubProyecto.SelectedValueExist(Request.QueryString("CveSubProyecto").ToString) DdlProveedores.SelectedValueExist(Request.QueryString("CveProveedor").ToString) + DdlTipoCompra.SelectedValueExist(Request.QueryString("CveTipoCompraAF").ToString) DdlClasificacion.SelectedValueExist(Request.QueryString("CveClasificacion").ToString) DdlClasificacion2.SelectedValueExist(Request.QueryString("CveClasificacion2").ToString) @@ -208,7 +209,7 @@ Partial Class Compras_RepComprasAFDetalle ObjClasificacion.Dispose() DdlClasificacion2.DataBind() - DdlClasificacion2.Items.Insert(0, New ListItem("Totas", "-1")) + DdlClasificacion2.Items.Insert(0, New ListItem("Todas", "-1")) DdlClasificacion2.Items.Insert(1, New ListItem("Sin Clasificación", "-2")) DdlClasificacion2.SelectedValueExist(-1) @@ -284,7 +285,7 @@ Partial Class Compras_RepComprasAFDetalle If ObjCompras.GetRepComprasAFDetalle(FechaI, FechaF, DdlProveedores.SelectedValue.ToEntero, DdlMonedas.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, -1, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, RblTipoCambio.SelectedValue.ToEntero, TCEspecifico, DdlClasificacion.SelectedValue.ToEntero, DdlActivoFijo.SelectedValue.ToEntero, DdlTipoActivoFijo.SelectedValue.ToEntero, DdlSubTipoActivoFijo.SelectedValue.ToEntero, - CvePS, Anio.ToEntero, Mes.ToEntero, AnioMes, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero) Then + CvePS, Anio.ToEntero, Mes.ToEntero, AnioMes, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero, CveTipoCompraAF:=DdlTipoCompra.SelectedValue.ToEntero) Then DTDatos = ObjCompras.DtResultados GvDatos.DataSource = DTDatos diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb index 748b09afa..0edfc89d0 100644 --- a/Contabilidad/RegPrePolizaS.aspx.vb +++ b/Contabilidad/RegPrePolizaS.aspx.vb @@ -3293,7 +3293,24 @@ Partial Class ContabilidadC_RegPrePolizaS RutaReprote = $"{DirectorioEmpresas}Grales\Formatos\PolizasResumen.rdlc" End If - ImprimirbytesPDF(StreamPDF(RutaReprote, dtVC, params, "PrePoliza", Formato:=Tipo), "PrePoliza", Formato:=Tipo, Descarga:=True) + Dim TipoPolizaString = "" + + Select Case DdlTipoPoliza.SelectedValue.ToEntero + Case 1 + TipoPolizaString = "I" + Exit Select + Case 2 + TipoPolizaString = "E" + Exit Select + + Case Else + TipoPolizaString = "D" + Exit Select + + End Select + + + ImprimirbytesPDF(StreamPDF(RutaReprote, dtVC, params, "PrePoliza", Formato:=Tipo), $"P{TipoPolizaString}{TxtFolio.Text}", Formato:=Tipo, Descarga:=True) End If ObjConta.Dispose() diff --git a/Ventas/Clientes.aspx b/Ventas/Clientes.aspx index f74b628bb..198088ed9 100644 --- a/Ventas/Clientes.aspx +++ b/Ventas/Clientes.aspx @@ -668,13 +668,18 @@ -
+
+ +
+ Actualziar +
+
diff --git a/Ventas/Clientes.aspx.vb b/Ventas/Clientes.aspx.vb index 1a853f53b..c3e1a8dfe 100644 --- a/Ventas/Clientes.aspx.vb +++ b/Ventas/Clientes.aspx.vb @@ -644,6 +644,23 @@ Partial Class Clientes ViewState("AdjuntoDocumentacion") = value End Set End Property + + Property CveVendedorOriginal As Integer + Get + If ViewState("CveVendedorOriginal") Is Nothing Then + ViewState("CveVendedorOriginal") = -1 + End If + + Return DirectCast(ViewState("CveVendedorOriginal"), Integer) + + End Get + Set(value As Integer) + ViewState("CveVendedorOriginal") = value + End Set + End Property + + + 'Private ReadOnly Property CvePersonal As Integer ' Get ' If ViewState("CvePersonal") Is Nothing Then @@ -857,9 +874,15 @@ Partial Class Clientes Tab.ActiveTabIndex = Request("ATI").ToEntero() End If 'CargaCuentasyConceptos() - Else - 'Configuración de Modalidad Insert - CargaEstados() + + If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + DVLnkCambiarVendedor.Visible = True + End If + + + Else + 'Configuración de Modalidad Insert + CargaEstados() BtnGuardar.Visible = PermiteGuardar() If UsuarioActual.Empresa.Funcionalidad(525) = "1" Then @@ -1591,6 +1614,7 @@ Partial Class Clientes Else DdlVendedor.SelectedValueExist(CveVendedor) End If + CveVendedorOriginal = CveVendedor 'TxtVendedor.Text = ObjClientes.Vendedor TxtPlazoCobranza.Text = ObjClientes.PlazoCobranza.ToString() @@ -10569,5 +10593,39 @@ Partial Class Clientes End Sub + + Protected Sub LnkCambiarVendedor_Click(sender As Object, e As EventArgs) + + If Not DdlVendedor.SelectedValue.ToEntero > 0 Then + Alert("Debe de seleccionar un Vendedor.", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + + + If CveVendedorOriginal = DdlVendedor.SelectedValue.ToEntero Then + Alert("Debe de seleccionar un vendedor distinto para actualizar.", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + + Dim ObjVentas As New ClsVentas + Dim ErrorCambio As Boolean = False + + If ObjVentas.CambioClientesVendedor(CveCliente, DdlVendedor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then + CveVendedorOriginal = DdlVendedor.SelectedValue.ToEntero + Else + ErrorCambio = True + End If + + ObjVentas.Dispose() + + If Not ErrorCambio Then + Alert("Vendedor Cambiado Correctamente.", TipoMensaje.MsgInformacion, $"document.location.href=""/Ventas/Clientes.aspx?CveCliente={CveCliente}""") + End If + + + + + End Sub + End Class diff --git a/Ventas/ProductosServicios.aspx.vb b/Ventas/ProductosServicios.aspx.vb index 906b22afb..95cffc511 100644 --- a/Ventas/ProductosServicios.aspx.vb +++ b/Ventas/ProductosServicios.aspx.vb @@ -3083,7 +3083,7 @@ Partial Class ProductosyServicios End If If Agregar Then - If Not ObjPS.AddPS(CveClasificacion, -1, CveUnidadMedida, TxtCodigo.Text.Trim, txtcodigo2.text.trim, TxtCodigoBarras.Text.Trim, PSS, TxtPrecio.Text.Trim.ToDouble, DdlIVA.SelectedValue.ToDouble, + If Not ObjPS.AddPS(CveClasificacion, -1, CveUnidadMedida, TxtCodigo.Text.Trim, TxtCodigo2.Text.Trim, TxtCodigoBarras.Text.Trim, PSS, TxtPrecio.Text.Trim.ToDouble, DdlIVA.SelectedValue.ToDouble, (TxtRetIVA.Text.Trim.ToDouble / 100), ChkInventariable.Checked, DdlProveedor.txtValue.Value.ToEntero, True, ChkAplicaParaVenta.Checked, UsuarioActual.CveUsuario, CveEmpresaFranquicia, CveMetodoInv, EsPaquete, CveTipoPS:=DdlTipoPS.SelectedValue.ToEntero, FuePorXML:=False, TipoServicio:=-1, CveClasificacion2:=CveClasificacion2, CveMarca:=CveMarcaFranquicia, AlmacenSeccion:=TxtAlmacenSeccion.Text.Trim, AplicaIEPS:=ChkAplicaIeps.Checked, IEPSPorcentaje:=DdlIEPSPorcentaje.SelectedValue.ToDecimal, @@ -3092,6 +3092,7 @@ Partial Class ProductosyServicios PrecioMinimo:=TxtPrecioMinimo.Text.ToDecimal, CveTipoFactor:=DdlTipoFactor.SelectedValue.ToEntero, CveFraccionArancelaria:=DdlFraccionArancelaria.SelectedValue.ToEntero, CveClasificacionDetalle:=CveTipo, CveTamaño:=DdlTamanio.SelectedValue.ToEntero, CveModelo:=CveModelo, CveMedida:=CveMedida, CveRinTamaño:=CveRin, ClaveImpuestoEmpaque:=DdlImpEmpaque.SelectedValue.ToString, + CveObjetoImpuesto:=DdlObjetoImpuesto.SelectedValue.ToEntero, ClaveImpuestoUM:=DdlImpUM.SelectedValue.ToString, ClaveCategoriaToxicidad:=DdlCategoriaToxicidad.SelectedValue.ToString, ClaveImpuestoTipoProducto:=DdlImpTipoProducto.SelectedValue.ToString, EsOutSourcing:=ChkEsOutSourcing.Checked, TiempoCaducidad:=TxtTiempoCaducidad.Text.ToEntero()) > 0 Then 'Alert(String.Format("Error al agregar el nuevo producto en la franquicia: '{0}'", GlobalDTEmpresas(Franquicia).FiltroPrimeroValor("Empresa"))) @@ -3102,7 +3103,7 @@ Partial Class ProductosyServicios If ObjPS.GetPS(-1, -1, CveEmpresaFranquicia, Codigo:=TxtCodigo.Text.Trim.ToUpper) Then Dim CvePS As Integer = ObjPS.DtResultados.FiltroPrimeroValor("CvePS", String.Format(" Codigo = '{0}'", TxtCodigo.Text.Trim.ToUpper)).ToEntero() - If Not ObjPS.UpdatePS(CveClasificacion, -1, CveUnidadMedida, TxtCodigo.Text.Trim, txtcodigo2.text.trim, TxtCodigoBarras.Text.Trim, PSS, TxtPrecio.Text.Trim.ToDouble, DdlIVA.SelectedValue.ToDouble, + If Not ObjPS.UpdatePS(CveClasificacion, -1, CveUnidadMedida, TxtCodigo.Text.Trim, TxtCodigo2.Text.Trim, TxtCodigoBarras.Text.Trim, PSS, TxtPrecio.Text.Trim.ToDouble, DdlIVA.SelectedValue.ToDouble, (TxtRetIVA.Text.Trim.ToDouble / 100), ChkInventariable.Checked, -1, True, ChkAplicaParaVenta.Checked, ChkEstado.Checked, UsuarioActual.CveUsuario, CvePS, CveMetodoInv, EsPaquete, DdlSATPS.SelectedValue.ToEntero, CveTipoPS:=DdlTipoPS.SelectedValue.ToEntero, TipoServicio:=-1, CveClasificacion2:=CveClasificacion2, CveMarca:=CveMarcaFranquicia, AlmacenSeccion:=TxtAlmacenSeccion.Text.Trim, AplicaIEPS:=ChkAplicaIeps.Checked, IEPSPorcentaje:=DdlIEPSPorcentaje.SelectedValue.ToDecimal, @@ -3111,6 +3112,7 @@ Partial Class ProductosyServicios CveTipoFactor:=DdlTipoFactor.SelectedValue.ToEntero, CveFraccionArancelaria:=DdlFraccionArancelaria.SelectedValue.ToEntero, CveUsuarioModifico:=UsuarioActual.CveUsuario, CveClasificacionDetalle:=CveTipo, CveTamaño:=DdlTamanio.SelectedValue.ToEntero, CveModelo:=CveModelo, CveMedida:=CveMedida, CveRinTamaño:=CveRin, ClaveImpuestoEmpaque:=DdlImpEmpaque.SelectedValue.ToString, + CveObjetoImpuesto:=DdlObjetoImpuesto.SelectedValue.ToEntero, ClaveImpuestoUM:=DdlImpUM.SelectedValue.ToString, ClaveCategoriaToxicidad:=DdlCategoriaToxicidad.SelectedValue.ToString, ClaveImpuestoTipoProducto:=DdlImpTipoProducto.SelectedValue.ToString, EsOutSourcing:=ChkEsOutSourcing.Checked, AplicaSerie:=ChkSerie.Checked, AplicaLote:=ChkLote.Checked, AplicaCaducidad:=ChkCaducidad.Checked, AplicaSeccion:=ChkSeccion.Checked, TiempoCaducidad:=TxtTiempoCaducidad.Text.ToEntero()) Then