hola gente, tengo una aplicacion que genera una boleta cuando se realiza una venta.
El problema que tengo es que en este momento no tengo una impresora instalada y lo que necesitaria es poder ejecutar el resto del codigo sin la necesidad de tener una instalada.
lo que necesitaria es saber como preguntar si existe una impresora instalada.
el codigo:
Código:
//Se crea el remito para la venta
//se recorre la lista de items de la venta y se las guarda en el remito
foreach(ItemVenta itemv in venta.Items){
ItemRemito iR = new ItemRemito();
iR.Cantidad = itemv.Cantidad;
iR.Precio = itemv.Precio;
iR.Producto = itemv.Producto;
iR.Precio = itemv.Precio;
iR.CodigoArt = itemv.CodigoArt;
itemv.Total = itemv.Total;
venta.Remito.Items.Add(iR);
}
venta.Remito.Cliente = venta.Cliente;
venta.Remito.Fecha = venta.Fecha;
venta.Factura.Cliente = venta.Cliente;
venta.Factura.Fecha = venta.Fecha;
venta.calcularTotal();
venta.Factura.Total = venta.Total;
//Se Persiste la venta en la bsse
IRepositorioVenta rVenta = new RepositorioVenta();
rVenta.Agregar(venta);
//Se persiste el registro de cuenta corriente
IRepositorioCuenta rCuenta = new RepositorioCuenta();
Cuenta cuenta = new Cuenta();
cuenta.Cliente = venta.Cliente;
cuenta.Fecha = venta.Fecha;
cuenta.Debe = venta.Factura.Total;
cuenta.Factura = venta.Factura;
cuenta.Saldo = rCuenta.ObtenerSaldoCli(venta.Cliente.Id);
cuenta.Saldo = cuenta.Saldo - cuenta.Debe;
rCuenta.Agregar(cuenta);
//Se imprimen los datos
PrintDialog1 = new PrintDialog();
System.Drawing.Printing.PrintDocument docToPrint = new System.Drawing.Printing.PrintDocument();
PrintDialog1.AllowSomePages = true;
PrintDialog1.ShowHelp = true;
docToPrint.PrintPage += new PrintPageEventHandler(this.PrintPage);
PrintDialog1.Document = docToPrint;
//Se configura y muestra el preview
printPreviewDialog1.Document = PrintDialog1.Document;
printPreviewDialog1.ShowDialog();//aca me tira error "No hay impresoras instaldas
//Vaciar todo llamando al Form Load
frmVenta_Load(this, e);