public string InsertNotaCredito(E_NotaCredito ObjE_NotaCredito, string EmpresaSede) { SqlDatabase SqlClient = new SqlDatabase(connectionString); DbConnection tCnn; tCnn = SqlClient.CreateConnection(); tCnn.Open(); DbTransaction tran = tCnn.BeginTransaction(); string NotaCreditoID; try { DbCommand SqlCommandVenta = SqlClient.GetStoredProcCommand("Ventas.Usp_Insert_NotaCreditoNavideño"); SqlClient.AddInParameter(SqlCommandVenta, "@ClienteID", SqlDbType.Int, ObjE_NotaCredito.ClienteID); SqlClient.AddInParameter(SqlCommandVenta, "@NumComprobante", SqlDbType.Char, ObjE_NotaCredito.NumComprobante); SqlClient.AddInParameter(SqlCommandVenta, "@TipoComprobanteID", SqlDbType.Int, ObjE_NotaCredito.TipoComprobanteID); SqlClient.AddInParameter(SqlCommandVenta, "@Importe", SqlDbType.Decimal, ObjE_NotaCredito.Importe); SqlClient.AddInParameter(SqlCommandVenta, "@Concepto", SqlDbType.VarChar, ObjE_NotaCredito.Concepto); SqlClient.AddInParameter(SqlCommandVenta, "@UsuarioID", SqlDbType.Int, ObjE_NotaCredito.UsuarioID); SqlClient.AddInParameter(SqlCommandVenta, "@SedeID", SqlDbType.Char, ObjE_NotaCredito.SedeID); SqlClient.AddInParameter(SqlCommandVenta, "@EmpresaSede", SqlDbType.Char, EmpresaSede); NotaCreditoID = Convert.ToString(SqlClient.ExecuteScalar(SqlCommandVenta, tran)); SqlCommandVenta.Dispose(); tran.Commit(); tCnn.Close(); tCnn.Dispose(); return(NotaCreditoID); } catch (Exception ex) { tran.Rollback(); throw new Exception(ex.Message); } }
public string add_NotaCredito(E_NotaCredito oNotaCredito) { try { cn.Open(); cmd = new SqlCommand("INSERT INTO NotasCredito(fechaAlta,idCliente,monto,codVenta) " + "VALUES(@fechaAlta,@idCliente,@monto,@codVenta) ", cn); cmd.CommandType = CommandType.Text; cmd.Parameters.AddWithValue("@fechaAlta", oNotaCredito.fecha); cmd.Parameters.AddWithValue("@idCliente", oNotaCredito.idCliente); cmd.Parameters.AddWithValue("@monto", oNotaCredito.monto); cmd.Parameters.AddWithValue("@codVenta", oNotaCredito.codVenta); cmd.ExecuteNonQuery(); } catch (Exception e) { xRet = e.Message; } finally { if (cn.State == ConnectionState.Open) { cn.Close(); } } return(xRet); }
public string delete_NotaCredito(E_NotaCredito oNotaCredito) { try { cn.Open(); cmd = new SqlCommand("UPDATE NotasCredito Set(fecha=@fecha,idCliente=@idCliente,monto=@monto,fechaUtilizado = @fechaUtilizado " + " montoUtilizado =@montoUtilizado) where idNotaCredito=@idNotaCredito", cn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@idCliente", oNotaCredito.idCliente); cmd.Parameters.AddWithValue("@fecha", oNotaCredito.fecha); cmd.Parameters.AddWithValue("@idCliente", oNotaCredito.idCliente); cmd.Parameters.AddWithValue("@monto", oNotaCredito.monto); cmd.Parameters.AddWithValue("@fechaUtilizado", oNotaCredito.fechaUtilizado); cmd.Parameters.AddWithValue("@montoUtilizado", oNotaCredito.montoUtilizado); cmd.ExecuteNonQuery(); } catch (Exception e) { xRet = e.Message; } finally { if (cn.State == ConnectionState.Open) { cn.Close(); } } return(xRet); }
/// <summary> /// Permite obtener el primer credito vigente otorgado al cliente /// </summary> /// <param name="idCliente"></param> /// <returns></returns> public E_NotaCredito getPrimerCredito(Int64 idCliente) { E_NotaCredito oNotaCredito = null; try { cn.Open(); cmd = new SqlCommand("getPrimerCredito", cn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@idCliente", idCliente); SqlDataReader oReader = cmd.ExecuteReader(); while (oReader.Read()) { oNotaCredito = new E_NotaCredito(); oNotaCredito.idNotaCredito = Convert.ToInt64(oReader["idNotaCredito"]); oNotaCredito.fecha = Convert.ToDateTime(oReader["fechaAlta"]); oNotaCredito.monto = Convert.ToDecimal(oReader["monto"]); oNotaCredito.idCliente = Convert.ToInt64(oReader["idCliente"]); //oNotaCredito.fechaUtilizado = if (oReader["fechaUtilizado"] == DBNull.Value) { oNotaCredito.utilizado = false; } else { oNotaCredito.fechaUtilizado = Convert.ToDateTime(oReader["fechaUtilizado"]); oNotaCredito.montoUtilizado = Convert.ToDecimal(oReader["montoUtilizado"]); } oNotaCredito.codVenta = oReader["codVenta"] == DBNull.Value ? 0 : Convert.ToInt64(oReader["codVenta"]); //oNotaCredito.nombreCliente = Convert.ToString(oReader["cliente"]); } } catch (Exception e) { xRet = e.Message; oNotaCredito = null; } finally { if (cn.State == ConnectionState.Open) { cn.Close(); } } return(oNotaCredito); }
public string InsertNotaCredito(E_NotaCredito ObjE_NotaCredito, DataTable DtDetalle, string EmpresaSede, bool ActualizaStock) { string xml; string xmlDetalle = null; CD_NotaCredito ObjCD_NotaCredito = new CD_NotaCredito(AppSettings.GetConnectionString); if (ActualizaStock == true) { xml = new BaseFunctions().GetXML(DtDetalle).Replace("NewDataSet", "DocumentElement"); xmlDetalle = xml.Replace("Table", "DetalleComprobante"); } return(ObjCD_NotaCredito.InsertNotaCredito(ObjE_NotaCredito, xmlDetalle, EmpresaSede, ActualizaStock)); }
public List <E_NotaCredito> getAll(DateTime fecDesde, DateTime fecHasta, string descripcionClie) { List <E_NotaCredito> listNotaCredito = new List <E_NotaCredito>(); try { cn.Open(); cmd = new SqlCommand("getAllNotaCredito", cn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@fecDesde", fecDesde); cmd.Parameters.AddWithValue("@fecHasta", fecHasta); cmd.Parameters.AddWithValue("@descripcion", descripcionClie); SqlDataReader oReader = cmd.ExecuteReader(); while (oReader.Read()) { E_NotaCredito oNotaCredito = new E_NotaCredito(); oNotaCredito.idNotaCredito = Convert.ToInt64(oReader["idNotaCredito"]); oNotaCredito.fecha = Convert.ToDateTime(oReader["fechaAlta"]); oNotaCredito.monto = Convert.ToDecimal(oReader["monto"]); oNotaCredito.idCliente = Convert.ToInt64(oReader["idCliente"]); oNotaCredito.montoUtilizado = oReader["montoUtilizado"] == DBNull.Value ? 0: Convert.ToDecimal(oReader["montoUtilizado"]); oNotaCredito.codVenta = oReader["codVenta"] == DBNull.Value ? 0 : Convert.ToInt64(oReader["codVenta"]); oNotaCredito.nombreCliente = Convert.ToString(oReader["cliente"]); listNotaCredito.Add(oNotaCredito); } return(listNotaCredito); } catch (Exception e) { xRet = e.Message; listNotaCredito = null; } finally { if (cn.State == ConnectionState.Open) { cn.Close(); } } return(listNotaCredito); }
public string UtilizarCredito(Entidades.E_Venta venta) { string xRet = "0"; //CREdit decimal totalCreditoUtilizar = venta.precioTotal; while (totalCreditoUtilizar > 0) { Entidades.E_NotaCredito nc = bdNotaCredito.getPrimerCredito(venta.cliente.idCliente); if (nc != null) //Tiene credito vigente { if (nc.monto >= totalCreditoUtilizar) // El monto del credito es mayo o igual al total utilizar { //Utilizo el credito xRet = bdNotaCredito.utilizarCredito(totalCreditoUtilizar, venta.codVenta, nc.idNotaCredito); if (nc.monto > totalCreditoUtilizar) // SI el monto del credito es mayor que el total de la venta a utilizar { //Creo un nuevo credito con el restante decimal restanteCredito = nc.monto - totalCreditoUtilizar; Entidades.E_NotaCredito nvaNc = new E_NotaCredito(venta.cliente.idCliente, restanteCredito, DateTime.Now, venta.codVenta); bdNotaCredito.add_NotaCredito(nvaNc); } //resto el total de credito a utilizar totalCreditoUtilizar -= nc.monto; } else { //Utilizo el total del credito xRet = bdNotaCredito.utilizarCredito(nc.monto, venta.codVenta, nc.idNotaCredito); } } else // no tiene credito vigente { totalCreditoUtilizar = 0; } } return("0"); }
public string InsertNotaCreditoI(E_NotaCredito ObjE_NotaCredito, string EmpresaSede) { CD_NotaCredito ObjCD_NotaCredito = new CD_NotaCredito(AppSettings.GetConnectionString); return(ObjCD_NotaCredito.InsertNotaCreditoI(ObjE_NotaCredito, EmpresaSede)); }
private void BtnRegistrar_Click(object sender, EventArgs e) { ErrProvider.Clear(); Cursor = Cursors.WaitCursor; try { bool ActualizaStock = false; if (LblDevolucion.Text != "" & TxtConcepto.Text != "" || rbOtros.Checked) { if (Importe > 0 || rbOtros.Checked == true) { E_NotaCredito ObjE_NotaCredito = new E_NotaCredito(); ObjE_NotaCredito.ClienteID = ClienteID; ObjE_NotaCredito.NumCaja = NumCaja; ObjE_NotaCredito.NumComprobante = NumComprobante; ObjE_NotaCredito.TipoComprobanteID = TipoComprobanteID; if (rbOtros.Checked) { ObjE_NotaCredito.Importe = 0; } else { ObjE_NotaCredito.Importe = Importe; } if (rbDescuentos.Checked) { ObjE_NotaCredito.descuento = Convert.ToDecimal(txtDescuento.Text); } ObjE_NotaCredito.Concepto = TxtConcepto.Text; ObjE_NotaCredito.UsuarioID = AppSettings.UserID; ObjE_NotaCredito.SedeID = AppSettings.SedeID; DataTable DT = new DataTable("DetalleComprobante"); if (rbNormal.Checked) { //eliminar columnas DataView DV = new DataView(DtDetalleComprobante); DV.RowFilter = "Descontar > 0"; DT = DV.ToTable(); DT.Columns.Remove("NumComprobante"); DT.Columns.Remove("TipoComprobanteID"); DT.Columns.Remove("Alias"); DT.Columns.Remove("UnidadMedidaID"); DT.Columns.Remove("Cantidad"); DT.Columns.Remove("PrecioUnitario"); DT.Columns.Remove("Importe"); DT.Columns.Remove("EstadoID"); ActualizaStock = true; } else { ActualizaStock = false; } NotaCreditoID = ObjCL_NotaCredito.InsertNotaCredito(ObjE_NotaCredito, DT, EmpresaID + AppSettings.SedeID, ActualizaStock); MessageBox.Show("Se creo la nota de credito correctamente.", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information); // MessageBox.Show(ObjCL_NotaCredito.FormatoNotaCredito(LblEmpresa.Text, NotaCreditoID, NumComprobante, cbComprobante.Columns["NomTipoComprobante"].Value.ToString(), AppSettings.NomSede, LblRUC.Text, AppSettings.Usuario, Importe, NomCaja, TxtConcepto.Text), "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information); Limpiar(); } } else { if (TxtConcepto.Text == "") { ErrProvider.SetError(TxtConcepto, "Debe ingresar el motivo de la devolución."); } if (LblDevolucion.Text == "" | LblDevolucion.Text == "0") { ErrProvider.SetError(LblDevolucion, "El importe de devolución no debe ser cero."); } } Cursor = Cursors.Default; } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); Cursor = Cursors.Default; } }
public string add_NotaCredito(E_NotaCredito oNotaCredito) { return(bdNotaCredito.add_NotaCredito(oNotaCredito)); }