public void Mostrar(Lbl.Articulos.Articulo articulo) { this.EtiquetaTitulo.Text = "Conformación de existencias de " + articulo.ToString(); ListaConformacion.BeginUpdate(); ListaConformacion.Items.Clear(); System.Data.DataTable Situaciones = this.Connection.Select("SELECT id_situacion, nombre FROM articulos_situaciones WHERE id_situacion IN (SELECT DISTINCT id_situacion FROM articulos_stock WHERE id_articulo=" + articulo.Id.ToString() + ")"); foreach (System.Data.DataRow Situacion in Situaciones.Rows) { ListViewGroup Grupo = ListaConformacion.Groups.Add(Situacion["id_situacion"].ToString(), Situacion["nombre"].ToString()); System.Data.DataTable Articulos = this.Connection.Select("SELECT serie, cantidad FROM articulos_series WHERE cantidad<>0 AND id_articulo=" + articulo.Id.ToString() + " AND id_situacion=" + Situacion["id_situacion"].ToString()); foreach(System.Data.DataRow Articulo in Articulos.Rows){ string Serie = Articulo["serie"].ToString(); ListViewItem Itm = ListaConformacion.Items.Add(Serie); Itm.SubItems[0].Text = Serie; Itm.SubItems.Add(Lfx.Types.Formatting.FormatStock(System.Convert.ToDecimal(Articulo["cantidad"]), Lbl.Sys.Config.Articulos.Decimales)); Itm.Group = Grupo; } } DataTable Stocks = this.Connection.Select("SELECT id_articulo, id_situacion, cantidad FROM articulos_stock WHERE id_articulo=" + articulo.Id.ToString() + " AND cantidad<>0 AND id_situacion<>998 AND id_situacion<>999 ORDER BY id_situacion"); if (Stocks != null) { ListViewGroup Grupo = ListaConformacion.Groups.Add("000", "Totales por depósito"); foreach (System.Data.DataRow Stock in Stocks.Rows) { Lfx.Data.Row Situacion = this.Connection.Row("articulos_situaciones", "id_situacion", System.Convert.ToInt32(Stock["id_situacion"])); ListViewItem Itm = ListaConformacion.Items.Add(Situacion["nombre"].ToString()); Itm.SubItems.Add(Lfx.Types.Formatting.FormatStock(System.Convert.ToDecimal(Stock["cantidad"]), Lbl.Sys.Config.Articulos.Decimales)); Itm.Group = Grupo; } } ListaConformacion.EndUpdate(); }
public Lfx.Types.OperationResult Entregar(Lbl.Comprobantes.Recibo reciboDePago) { this.Estado = 11; this.AgregarComentario("Entregado s/" + reciboDePago.ToString()); this.ReciboPago = reciboDePago; return this.Guardar(); }
public void Mostrar(Lbl.ElementoDeDatos elemento) { this.Text = "Historial de " + elemento.ToString(); this.Mostrar(elemento.TablaDatos, elemento.Id); }
public void FromRow(Lbl.IElementoDeDatos row) { // Si todavía no conozco el tipo de elemento de este formulario, lo tomo de row if (this.ElementoTipo == null || this.ElementoTipo == typeof(Lbl.ElementoDeDatos)) this.ElementoTipo = row.GetType(); this.ReadOnly = true; this.Connection = row.Connection; this.Elemento = row; if (this.Encabezado.Visible && this.Encabezado.DisplayStyle.Icon == null) { if (this.Elemento.Existe) this.StockImage = "editar"; else this.StockImage = "crear"; } bool PuedeVerHistorial = Lbl.Sys.Config.Actual.UsuarioConectado.TienePermiso(this.Elemento, Lbl.Sys.Permisos.Operaciones.Administrar) || Lbl.Sys.Config.Actual.UsuarioConectado.TienePermiso(typeof(Lbl.Sys.Log.Entrada), Lbl.Sys.Permisos.Operaciones.Ver); this.PanelAccionesTerciarias.FormActions["historial"].Visibility = (this.Elemento.Existe && PuedeVerHistorial) ? Lazaro.Pres.Forms.FormActionVisibility.Tertiary : Lazaro.Pres.Forms.FormActionVisibility.Hidden; this.PanelAccionesTerciarias.FormActions["comentarios"].Visibility = this.Elemento.Existe ? Lazaro.Pres.Forms.FormActionVisibility.Tertiary : Lazaro.Pres.Forms.FormActionVisibility.Hidden; Lbl.Atributos.Presentacion AttrMuestraPanel = this.ElementoTipo.GetAttribute<Lbl.Atributos.Presentacion>(); if (AttrMuestraPanel != null) { EntradaComentarios.Visible = this.Elemento.Existe; MuestraPanel = AttrMuestraPanel.PanelExtendido; this.PanelAccionesTerciarias.FormActions["panelextendido"].Visibility = (MuestraPanel != Lbl.Atributos.PanelExtendido.Nunca) ? Lazaro.Pres.Forms.FormActionVisibility.Tertiary : Lazaro.Pres.Forms.FormActionVisibility.Hidden; } if (this.ControlUnico != null) { this.ControlUnico.FromRow(row); if (this.MuestraPanel != Lbl.Atributos.PanelExtendido.Nunca) { if (row is Lbl.IElementoConImagen) { EntradaImagen.Elemento = row; EntradaImagen.ActualizarControl(); EntradaImagen.Visible = true; } else { EntradaImagen.Visible = false; } EntradaComentarios.Elemento = row; EntradaTags.Elemento = row; EntradaComentarios.ActualizarControl(); EntradaTags.ActualizarControl(); if (MuestraPanel == Lbl.Atributos.PanelExtendido.Siempre) PanelExtendido.Show(); } } Lbl.Atributos.Nomenclatura Attr = this.ElementoTipo.GetAttribute<Lbl.Atributos.Nomenclatura>(); if (row != null && row.Existe) { if (Attr != null && Attr.PrefijarNombreConTipo) this.Text = Attr.NombreSingular + " " + row.ToString(); else this.Text = row.ToString(); } else { if (Attr != null) this.Text = "Creando " + Attr.NombreSingular.ToLowerInvariant(); else this.Text = "Creando " + row.GetType().ToString(); } this.ReadOnly = !this.PuedeEditar(); this.PanelAccionesPrimariasYSecundarias.FormActions["imprimir"].Visibility = this.PuedeImprimir() ? Lazaro.Pres.Forms.FormActionVisibility.Main : Lazaro.Pres.Forms.FormActionVisibility.Hidden; this.ActualizarFormActions(); this.SetControlsChanged(this.Controls, false); }
public void Mostrar(Lbl.Articulos.Articulo articulo) { Listado.BeginUpdate(); Listado.Items.Clear(); this.EtiquetaTitulo.Text = "Historial de entrada y salida de " + articulo.ToString(); System.Data.DataTable Detalles = this.Connection.Select("SELECT id_movim, id_articulo, desdesituacion, haciasituacion, cantidad, series, fecha, saldo, obs FROM articulos_movim WHERE id_articulo=" + articulo.Id.ToString() + " ORDER BY fecha"); ListViewItem itm = null; foreach (System.Data.DataRow Detalle in Detalles.Rows) { string DesdeSituacion = "Público"; string HaciaSituacion = "Público"; Detalle["desdesituacion"] = Lfx.Data.Connection.ConvertDBNullToZero(Detalle["desdesituacion"]); Detalle["haciasituacion"] = Lfx.Data.Connection.ConvertDBNullToZero(Detalle["haciasituacion"]); if (System.Convert.ToInt32(Detalle["desdesituacion"]) != 0) { if (SituacionCache.ContainsKey(System.Convert.ToInt32(Detalle["desdesituacion"])) == false) SituacionCache[System.Convert.ToInt32(Detalle["desdesituacion"])] = this.Connection.FieldString("SELECT nombre FROM articulos_situaciones WHERE id_situacion=" + Detalle["desdesituacion"].ToString()); DesdeSituacion = SituacionCache[(int)Detalle["desdesituacion"]]; } if (System.Convert.ToInt32(Detalle["haciasituacion"]) != 0) { if (SituacionCache.ContainsKey((int)Detalle["haciasituacion"]) == false) SituacionCache[(int)Detalle["haciasituacion"]] = this.Connection.FieldString("SELECT nombre FROM articulos_situaciones WHERE id_situacion=" + Detalle["haciasituacion"].ToString()); HaciaSituacion = SituacionCache[(int)Detalle["haciasituacion"]]; } itm = Listado.Items.Add(System.Convert.ToString(Detalle["id_movim"])); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Lfx.Types.Formatting.FormatDateAndTime(System.Convert.ToDateTime(Detalle["fecha"])))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Lfx.Types.Formatting.FormatNumber(System.Convert.ToDecimal(Detalle["cantidad"]), Lbl.Sys.Config.Articulos.Decimales))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Detalle["series"].ToString())); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, DesdeSituacion)); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, HaciaSituacion)); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Lfx.Types.Formatting.FormatNumber(System.Convert.ToDecimal(Detalle["saldo"]), Lbl.Sys.Config.Articulos.Decimales))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, System.Convert.ToString(Detalle["obs"]))); } Listado.EndUpdate(); if (itm != null) { itm.Selected = true; itm.Focused = true; itm.EnsureVisible(); } ListadoPedidos.BeginUpdate(); ListadoPedidos.Items.Clear(); System.Data.DataTable Pedidos = this.Connection.Select(@"SELECT comprob.id_comprob, comprob.fecha, comprob.id_cliente, comprob.tipo_fac, comprob.numero, comprob_detalle.cantidad, comprob_detalle.precio, comprob.estado FROM comprob, comprob_detalle WHERE comprob.id_comprob=comprob_detalle.id_comprob AND comprob.compra=1 AND comprob.tipo_fac='PD' AND comprob.estado=50 AND comprob_detalle.id_articulo=" + articulo.Id.ToString() + @" ORDER BY comprob.fecha"); itm = null; foreach (System.Data.DataRow Pedido in Pedidos.Rows) { itm = ListadoPedidos.Items.Add(System.Convert.ToString(Pedido["id_comprob"])); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, this.Connection.FieldString("SELECT nombre_visible FROM personas WHERE id_persona=" + Lfx.Data.Connection.ConvertDBNullToZero(Pedido["id_cliente"]).ToString()))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, System.Convert.ToString(Pedido["numero"]))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Lfx.Types.Formatting.FormatDateAndTime(System.Convert.ToDateTime(Pedido["fecha"])))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Lfx.Types.Formatting.FormatNumber(System.Convert.ToDecimal(Pedido["cantidad"]), Lbl.Sys.Config.Articulos.Decimales))); itm.SubItems.Add(new ListViewItem.ListViewSubItem(itm, Lfx.Types.Formatting.FormatNumber(System.Convert.ToDecimal(Pedido["precio"]), Lfx.Workspace.Master.CurrentConfig.Moneda.DecimalesCosto))); switch (System.Convert.ToInt32(Pedido["estado"])) { case 50: itm.ForeColor = System.Drawing.Color.DarkOrange; break; case 100: itm.ForeColor = System.Drawing.Color.DarkGreen; break; case 200: itm.ForeColor = System.Drawing.Color.DarkRed; itm.Font = new Font(itm.Font, System.Drawing.FontStyle.Strikeout); break; } } ListadoPedidos.EndUpdate(); if (itm != null) { itm.Selected = true; itm.Focused = true; itm.EnsureVisible(); } }
public ChatControl IniciarChat(Lbl.Personas.Persona personaRemota, string estacionRemota) { if (this.InvokeRequired) { object Res = this.Invoke((Func<object>)(delegate { return this.IniciarChat(personaRemota, estacionRemota); })); return Res as ChatControl; } else { ChatControl NuevoCtrl = new ChatControl(); NuevoCtrl.Margin = new Padding(8); NuevoCtrl.Dock = DockStyle.Fill; NuevoCtrl.Visible = true; this.SuspendLayout(); this.Controls.Add(NuevoCtrl); this.ResumeLayout(true); NuevoCtrl.IniciarChat(personaRemota, estacionRemota); ToolStripButton Pestania = new ToolStripButton(personaRemota.ToString()); Pestania.Margin = new System.Windows.Forms.Padding(2); Pestania.Tag = NuevoCtrl; Pestania.Checked = true; this.Pestanias.Items.Add(Pestania); NuevoCtrl.Select(); Listado.Visible = false; return NuevoCtrl; } }