|
Mostrar Temas
|
Páginas: [1]
|
1
|
Programación / .NET (C#, VB.NET, ASP) / poner en pausa datos grilla c#
|
en: 27 Agosto 2022, 16:45 pm
|
hola buenos dias programadores tengo una aplicacion hecha en visual studio 2015 sql 2016 es una aplicacion de restaurant tengo un formulario de mesas y formulario de comandas en el frmmesas tengo las mesas al presionar por ejemplo la mesa 5 aparece el formulario frmconanda esta formualrio se llena con botones una grilla la informacion pero al momento de cerrar desaparece la informacion de la grilla necesito mantenerla esa informacion del formualrio codigo BindingList<Comanda_Detalle> ListadoComanda = new BindingList<Comanda_Detalle>(); si lo dejo publico queda la embarrada que da en memoria en todas la instancia del formulario no sirve por que al abrir otra mesa se abre la información en todas la mesas error public static BindingList<Comanda_Detalle> ListadoComanda = new BindingList<Comanda_Detalle>(); } BtnP[k] = new Button(); BtnP[k].Name = "BtnS" + j.ToString(); BtnP[k].Size = new Size(150, 80); BtnP[k].Text =ListaProductos[k].NombreProducto; BtnP[k].Tag =ListaProductos[k].IdProducto; BtnP[k].Location = locP; BtnP[k].BackColor = Color.Tomato; BtnP[k].TabStop = false; locP.X += 155; BtnP[k].Click += (object p, EventArgs ak) => { dynamic Pt = (Button)p; //Agregar a la comanda var myproducto = objProducto.GetByID(Convert.ToInt32(Pt.Tag)); if (myproducto != null) { if (myproducto.NombreSubFamilia != "OPCIONALES" && myproducto.NombreSubFamilia != "Opcionales") { if ((myproducto.Stock <= 0) && (myproducto.CalcularStock == true)) { MessageBox.Show("No existe stock suficiente para vender", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } //DgvDetalleComanda.Rows.Add(0, 0, myproducto.IdProducto, myproducto.NombreProducto, myproducto.Precio, 1, 0.19, "", 1, false); var deta = new Comanda_Detalle(); deta.IdDetalle = 0; deta.IdComanda = 0; deta.IdProducto = myproducto.IdProducto; deta.NombreProducto = myproducto.NombreProducto; deta.Precio = myproducto.Precio; deta.Cantidad = 1; deta.PorcentajeIVA = eImpuesto.TasaImpuesto; if (myproducto.NombreSubFamilia == "OPCIONALES" || myproducto.NombreSubFamilia == "Opcionales") { deta.Observaciones = myproducto.NombreSubFamilia.ToString(); } else { deta.Observaciones = ""; } deta.IdSeccion =myproducto.IdSeccion; deta.Impreso = false; deta.IdPrioridad = 0; ListadoComanda.Add(deta); CalcularComanda(); DgvDetalleComanda.DataSource = ListadoComanda; }; } panelProductos.Controls.AddRange(BtnP); tambien trate ocultar formulario y nada private void button1_Click(object sender, EventArgs e) { FrmMesas form = new FrmMesas();
this.Hide();
form.ShowDialog();
this.Show(); }
se oculto pero aperecieron dos instancia del formulario Frmesas
esto es lo que tengo en el boton formulario mesas
|
|
|
2
|
Programación / .NET (C#, VB.NET, ASP) / conexion puerto com
|
en: 25 Agosto 2021, 05:15 am
|
buenas tardes programadores tengo conectada una pantalla vdf al puerto com necesito enviar un variable total ejemplo 1.000 que la muestre en pantalla tengo este cogigo en delphi quiero pasarlo a c #
-Guest display instruction---------------- 1、initialize guest display to 2400,n,8,1 2、indicator light Total chr(27)+chr(115)+chr(50) Change chr(27)+chr(115)+chr(52) Price chr(27)+chr(115)+chr(51) 3、Send word chr(27)+chr(81)+chr(65)+8位字符(8 Digital)+chr(13)
Example:(delphi) procedure GY8Client(Port: string; iLight: Integer; FirstRow: AnsiString); var s: AnsiString; begin AssignFile(hPort,Port); Rewrite(hPort); case iLight of 1:s:=#27#115#50; //Total 2:s:=#27#115#51; //Price 3:s:=#27#115#52; //Change end; s:=s+#27#81#65+trim(FirstRow)+#13; Write(hPort,s); end;
private void btnEnviar_Click_1(object sender, EventArgs e) { try { serialPort1.Write(txtTx.Text.Trim()); txtTx.Clear(); } catch (Exception ex) { MessageBox.Show("No se puedo enviar la información", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
como lo podria hacer
|
|
|
3
|
Programación / .NET (C#, VB.NET, ASP) / hacer dos consultas diferentes en entity framework
|
en: 1 Mayo 2017, 23:43 pm
|
buenas tardes amigos del foro estoy haciendo una aplicación de venta de productos esta mi tabla con los campos productos idproducto, codigobarra, precio , idmedida,stock,idsubfamilia y tengo un formulario ventas me problema surge cuando quiero vender productos granel entonces estaba pensando cuando el codigo = codigobusqueda y el idmedida = 3 que es lo mismo a kilogramo me muestre un formulario modal entoces un else que sea distinto a kilogramo por que no seria a granel si no = unidad codigo para buscar productos por codigo esto funciona correctamente entoces quiero agregar un else para que me busque segun la otra condicion que seria por el idmedida = 3 esto es kilogramo en esta linea busco el producto eProd = objProducto.GetByCodigoBarras(TxtCodigoBarras.Text); y lo me trae public PRODUCTO GetByCodigoBarras(string Codigo) { DAL.IRepository repository = new Modelo.Repository(); try { var producto = repository.FindEntity<PRODUCTO>(a => a.CodigoBarras ==Codigo, "Venta_Detalles", "Compras_Detalle", "Medida", "SubFamiliaProducto"); if (producto != null) { producto.IdFamilia = producto.SubFamiliaProducto.IdFamilia; var fami = new FamiliaProducto(); fami = repository.FindEntity<FamiliaProducto>(x => x.IdFamilia == producto.SubFamiliaProducto.IdFamilia); producto.NombreFamilia = fami.NombreFamilia; producto.NombreMedida = producto.Medida.Medida1; producto.NombreSubFamilia = producto.SubFamiliaProducto.NombreSubFamilia;
} else { producto = null; } return producto; } catch (Exception ex) { throw new Exception(ex.Message); } } private void TxtCodigoBarras_KeyPress(object sender, KeyPressEventArgs e) { if(TxtCodigoBarras.Text.Length>0) { if (e.KeyChar == Convert.ToChar(Keys.Return)) {
DetalleVentaDTO eDeta = new DetalleVentaDTO(); PRODUCTO eProd = new PRODUCTO(); eProd = objProducto.GetByCodigoBarras(TxtCodigoBarras.Text); if (eProd == null) { if (MessageBox.Show("Producto no existe, ¿Desea agregarlo?", "Confirme", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { Form frm = this.MdiChildren.FirstOrDefault(x => x is FrmProductos); if (frm != null) { frm.BringToFront(); return; } frm = new FrmProductos(idUsuario); frm.MdiParent = this.MdiParent; frm.Show(); } return; } if (eProd.Stock <= 0) { MessageBox.Show("No existe stock suficiente para vender", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Error); return; }
eDeta.Cantidad = 1;
eDeta.CodigoBarras = eProd.CodigoBarras; eDeta.FechaReg = DateTime.Now; eDeta.IdDetalle = 0; eDeta.IdProducto = eProd.IdProducto; eDeta.IdVenta = 0; eDeta.Importe = eProd.Precio * eDeta.Cantidad; eDeta.NombreProducto = eProd.NombreProducto; eDeta.PorcentajeIVA = eImpuesto.TasaImpuesto; eDeta.Precio = eProd.Precio; Detalles.Add(eDeta); //DgvDetalle.DataSource = null; DgvDetalle.DataSource = Detalles; TxtCodigoBarras.Clear(); TxtCodigoBarras.Focus(); } este lo carga en la grilla perfecto lo que necesito con la condicion portal de imagenes gratisel codigo que quiero insertar con else para que cumpla la condicion que sea igual a idmedida = 3 kilogramo PRODUCTO eProds = new PRODUCTO(); eProds = objProducto.GetByCodigoBarrasKilogramo(TxtCodigoBarras.Text); if (eProds == null)
{ if (MessageBox.Show("Producto no existe, ¿Desea agregarlo?", "Confirme", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { Form frm = this.MdiChildren.FirstOrDefault(x => x is FrmProductos); if (frm != null) { frm.BringToFront(); return; } frm = new FrmProductos(idUsuario); frm.MdiParent = this.MdiParent; frm.Show(); } return; } if (eProds.Stock <= 0) { MessageBox.Show("No existe stock suficiente para vender", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Error); return; }
string idbusqueda = Convert.ToString(TxtCodigoBarras.Text); NombreProductos = eProds.NombreProducto; Precioss = Convert.ToString(eProds.Precio);
FrmGranel form = new FrmGranel(idbusqueda, NombreProductos, Precioss); form.MdiParent = this.MdiParent; form.Show();
codigo busqueda idmedida = 3 public PRODUCTO GetByCodigoBarrasKilogramo(string Codigo) {
DAL.IRepository repository = new Modelo.Repository(); try { var producto = repository.FindEntity<PRODUCTO>(a => a.CodigoBarras == Codigo, "Venta_Detalles", "Compras_Detalle", "Medida", "SubFamiliaProducto"); if (producto != null) { producto.IdMedida = producto.Medida.IdMedida; var Medidas = new Medida(); Medidas = repository.FindEntity<Medida>(x => x.IdMedida == 3); producto.NombreSubFamilia = producto.SubFamiliaProducto.NombreSubFamilia;
} else { producto = null; } return producto; } catch (Exception ex) { throw new Exception(ex.Message); } }
|
|
|
4
|
Programación / .NET (C#, VB.NET, ASP) / imprimir directamente en una impresora un reporte rdlc
|
en: 6 Diciembre 2016, 01:48 am
|
buenas noches señores programadores cómo podría imprimir directamente a la impresora con ReportViewer Estoy intentando imprimir un ticket directamente Vb.net sql server 2014 visual studio 2015 Private Sub WFrm_REPORTE_BOLETA_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'DataSet_Restaurante.PA_ReportarBoleta' table. You can move, or remove it, as needed. Me.PA_ReportarBoletaTableAdapter.Fill(Me.DataSet_Restaurante.PA_ReportarBoleta, CodigoImprimirComanda) Me.ReportViewer2.RefreshReport() End Sub
|
|
|
5
|
Programación / .NET (C#, VB.NET, ASP) / problema al llamar a una capa de negocios
|
en: 18 Octubre 2016, 04:08 am
|
buenas tardes señores programadores si alguien me puede echar una por fa estoy haciendo una aplicacion estacionamiento de vehiculos en capas vb.net y sql server trata de llenar los datos de una consulta sql y llenar los textbox del formulario si pongo todo el codigo en el formulario funciona perfectamente entoces para hacerlo mas ordenado lo quise hacer en capas entoces tengo esta funcion que se llama mostrarvehiculos esta en la capa datos Public Function mostrarvehiculos(obj As VregistroEntrada) Dim Conn As New SqlConnection(conexion.Connectionstring) Dim eEntradavehiculo As VregistroEntrada = Nothing Dim Cmd As New SqlCommand Try Conn.Open() Cmd.CommandText = "Select IdEntraVehiculo,Placa,FechaHoraEntrada,Codigo From EntradaVehiculo Where Codigo = @Codigo" Cmd.CommandType = CommandType.Text Cmd.Connection = Conn Cmd.Parameters.Add("@Codigo", SqlDbType.Int).Value = obj.Codigo Dim DT As New SqlDataAdapter(Cmd) Dim TABLA As New DataTable DT.Fill(TABLA) eEntradavehiculo = New VregistroEntrada If TABLA.Rows.Count > 0 Then Dim row As DataRow = TABLA.Rows(0) eEntradavehiculo.Placa = If(CStr(row.IsNull(1)), "", row(1)) eEntradavehiculo.FechaHoraEntrada = If(row.IsNull(2), Nothing, row(2)) eEntradavehiculo.Codigo = CStr(row("Codigo")) End If Catch ex As Exception Throw New Exception(ex.Message) Finally If Conn.State = ConnectionState.Open Then Conn.Close() Conn.Dispose() End If End Try Return eEntradavehiculo End Function
y en la capa entidad me manda un error dice que no puedo convertirlo a integer Function mostrarvehiculos(ByVal obj As Capa_Entidad.VregistroEntrada) Dim OMostrar As New DaoInsertTicker Dim Result As Integer = 0 Try Result = Convert.ToInt32(OMostrar.mostrar(obj)) Catch ex As Exception Throw New Exception(ex.Message) End Try Return Result End Function
tratao de llamar a mi funcion pero me marca error ( Result = Convert.ToInt32(OMostrar.mostrar(obj)) no se puede convertir a inter tengo el formulario mostrar la informacion segun la consulta de la funcion pero no se como llamarlo
|
|
|
7
|
Programación / .NET (C#, VB.NET, ASP) / pero como le asigno un valor monetario a una hora
|
en: 5 Febrero 2016, 01:50 am
|
buenas noches si me puede orientar por favor gracias estoy tratando de hacer una aplicación de un estacionamiento entrada y salida de vehículos por ejemplo un auto llego 12:00 y salio 13:00 = 01:00 estuvo una hora el cobro seria $500 ¿si el vehículo estuvo ejemplo llego 12:00 y salio 12:15 = estuvo 15 minutos pero igual se le cobra los $500? otro ejemplo si el vehiculo llego 12:00 y salio 13:15 = estuvo 01:15 entoces cada 15 minutos depues de la hora deberia cobrarse $150 cada quince minutos después de la hora ¿ pero como le asigno un valor monetario a una hora ? este es mi codigo para sumar las horas Dim fechaini As DateTime Dim fechafin As DateTime DateTime.TryParse(TextBox1.Text, fechaini) ' 12:00 DateTime.TryParse(TextBox2.Text, fechafin) '13:00 Dim dif As TimeSpan = fechafin - fechaini MsgBox("Han transcurridos " & dif.Hours & ":" & dif.Minutes & " hrs.")
|
|
|
|
|
|
|