Example #1
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            switch (row.Fields["vencimientos.estado"].ValueInt)
            {
            case 1:
                item.SubItems["vencimientos.estado"].Text = "Activo";
                DbDateTime Vencimiento = row.Fields["vencimientos.fecha_proxima"].ValueDateTime;
                if (Vencimiento != null)
                {
                    if (Vencimiento <= DateTime.Now)
                    {
                        item.ForeColor = System.Drawing.Color.Red;
                    }
                    else if (Vencimiento <= DateTime.Now.AddDays(5))
                    {
                        item.ForeColor = System.Drawing.Color.Orange;
                    }
                }
                break;

            case 2:
                item.SubItems["vencimientos.estado"].Text = "Inactivo";
                break;

            case 100:
                item.SubItems["vencimientos.estado"].Text = "Terminado";
                break;
            }
        }
Example #2
0
        /// <summary>
        /// Carga (o vuelve a cargar) el elemento desde su registro asociado en la base de datos.
        /// </summary>
        public virtual Lfx.Types.OperationResult Cargar()
        {
            if (m_ItemId == 0)
            {
                throw new InvalidOperationException("No se puede cargar el registro desde la tabla " + this.TablaDatos + " porque no tiene Id.");
            }
            else
            {
                // Quito el registro de la caché
                Lfx.Workspace.Master.Tables[this.TablaDatos].FastRows.RemoveFromCache(this.Id);
            }

            // En realidad, lo único que hago es vaciar los valores en memoria y dejo que this.Registro.Get() lo cargue.
            this.m_Registro         = null;
            this.m_RegistroOriginal = null;
            this.m_Etiquetas        = null;
            this.m_ImagenCambio     = false;
            this.m_Imagen           = null;
            // Fuerzo la carga.
            Lfx.Data.Row Dummy = this.Registro;

            if (Dummy == null)
            {
                return(new Lfx.Types.FailureOperationResult("No se pudo cargar el registro"));
            }
            else
            {
                return(new Lfx.Types.SuccessOperationResult());
            }
        }
Example #3
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            item.SubItems["comprob.pv"].Text     = row.Fields["comprob.pv"].ValueInt.ToString("0000");
            item.SubItems["comprob.numero"].Text = row.Fields["comprob.numero"].ValueInt.ToString("00000000");
            Contadores[0].AddValue(row.Fields["pendiente"].ValueDecimal);

            if (row.Fields["comprob.id_formapago"] != null)
            {
                int          idFormPago = row.Fields["id_formapago"].ValueInt;
                Lfx.Data.Row formPago   = Lfx.Workspace.Master.Tables["formaspago"].FastRows[idFormPago];
                switch (idFormPago)
                {
                case 1:
                case 3:
                    //Controla Pago
                    break;

                default:
                    item.SubItems["comprob.cancelado AS total"].Text = "";
                    break;
                }
                if (formPago != null)
                {
                    item.SubItems["comprob.id_formapago"].Text = formPago.Fields["nombre"].Value.ToString();
                }
            }
        }
Example #4
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            switch (row.Fields["chequeras.estado"].ValueInt)
            {
            case 0:
                item.SubItems["chequeras.estado"].Text = "Fuera de uso";
                break;

            case 1:
                item.SubItems["chequeras.estado"].Text = "Activa";
                break;

            default:
                item.SubItems["chequeras.estado"].Text = "???";
                break;
            }

            item.SubItems["chequeras.desde"].Text = row.Fields["chequeras.desde"].ValueInt.ToString("00000000");
            item.SubItems["chequeras.hasta"].Text = row.Fields["chequeras.hasta"].ValueInt.ToString("00000000");

            /* item.SubItems["chequeras.id_banco"].Text = this.Connection.Tables["bancos"].FastRows[System.Convert.ToInt32(row["chequeras.id_banco"])].Fields["nombre"].ToString();
             * int IdCaja = row.Fields["id_caja"].ValueInt;
             * if (IdCaja > 0)
             *      item.SubItems["chequeras.id_caja"].Text = this.Connection.Tables["cajas"].FastRows[IdCaja].Fields["nombre"].ToString();
             * */
        }
Example #5
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            if (row.Fields["comprob.anulada"].ValueInt == 0)
            {
                switch (row.Fields["comprob.tipo_fac"].ValueString)
                {
                case "NCA":
                case "NCB":
                case "NCC":
                case "NCE":
                case "NCM":
                    this.Contadores[0].AddValue(-row.Fields["comprob.total"].ValueDecimal);
                    break;

                default:
                    this.Contadores[0].AddValue(row.Fields["comprob.total"].ValueDecimal);
                    break;
                }
            }
            else
            {
                // Si está anulada, la tacho
                item.SubItems["personas.nombre_visible"].Text = "Anulada";
            }

            base.OnItemAdded(item, row);
        }
Example #6
0
        public override void ActualizarElemento()
        {
            Lbl.Entidades.Moneda Mon = this.Elemento as Lbl.Entidades.Moneda;

            Mon.Nombre              = EntradaNombre.Text;
            Mon.Simbolo             = EntradaSigno.Text;
            Mon.NomenclaturaIso     = EntradaISO.Text;
            Mon.Cotizacion          = EntradaCotizacion.ValueDecimal;
            Mon.Decimales           = EntradaDecimales.ValueInt;
            Mon.ActualizarProductos = 0;


            Lfx.Data.Row RowProdConMoneda = this.Connection.FirstRowFromSelect("SELECT id_articulocotiza FROM articulos_cotiza WHERE id_moneda=" + Mon.Id + " AND estado=1");
            if (RowProdConMoneda != null)
            {
                Lui.Forms.YesNoDialog Pregunta = new Lui.Forms.YesNoDialog("¿Desea actualizar los productos que cotizan con esta moneda?", "¿Actualización de Productos?");
                Pregunta.DialogButtons = Lui.Forms.DialogButtons.YesNo;
                if (Pregunta.ShowDialog() == DialogResult.OK)
                {
                    Mon.ActualizarProductos = 1;
                    reiniciar = true;
                }
            }

            base.ActualizarElemento();
            //Lfx.Workspace.Master.RunTime.Execute("REBOOT");
        }
Example #7
0
        /// <summary>
        /// Crea una instancia de un Lbl.ElementoDeDatos a partir de un registro de base de datos.
        /// </summary>
        public static T Instanciar <T>(Lfx.Data.IConnection dataBase, Lfx.Data.Row row) where T : Lbl.ElementoDeDatos
        {
            Type tipo = typeof(T);

            System.Reflection.ConstructorInfo TConstr = tipo.GetConstructor(new Type[] { typeof(Lfx.Data.Connection), typeof(Lfx.Data.Row) });
            return((T)(TConstr.Invoke(new object[] { dataBase, row })));
        }
Example #8
0
        protected virtual void AgregarTags(qGen.IStatement comando, Lfx.Data.Row registro, string tabla)
        {
            Lfx.Data.Table Tabla = Lfx.Workspace.Master.Tables[tabla];
            if (Tabla.Tags != null && Tabla.Tags.Count > 0)
            {
                foreach (Lfx.Data.Tag Tg in Tabla.Tags)
                {
                    if (Tg.Nullable == false && registro[Tg.FieldName] == null)
                    {
                        switch (Tg.FieldType)
                        {
                        case Lazaro.Orm.ColumnTypes.Currency:
                        case Lazaro.Orm.ColumnTypes.Integer:
                        case Lazaro.Orm.ColumnTypes.SmallInt:
                        case Lazaro.Orm.ColumnTypes.MediumInt:
                        case Lazaro.Orm.ColumnTypes.TinyInt:
                        case Lazaro.Orm.ColumnTypes.Numeric:
                            comando.ColumnValues.AddWithValue(Tg.FieldName, System.Convert.ToInt32(Tg.DefaultValue));
                            break;

                        default:
                            comando.ColumnValues.AddWithValue(Tg.FieldName, "");
                            break;
                        }
                    }
                    else
                    {
                        comando.ColumnValues.AddWithValue(Tg.FieldName, registro[Tg.FieldName]);
                    }
                }
            }
        }
Example #9
0
        public static string CodigoPredet(Lfx.Workspace workspace, Lfx.Data.Row Articulo)
        {
            // Devuelve el código predeterminado de un artículo
            // Si se pasa un registro artículo como parmetro, devuelve el valor del
            // De lo contrario, devuelve el nombre del campo
            // Espero que no se preste a confusin
            string CodPredet = workspace.CurrentConfig.ReadGlobalSetting <string>("Sistema.Stock.CodigoPredet", "0");

            switch (CodPredet)
            {
            case "0":
            case "":
                // Usar el código autonumérico integrado
                CodPredet = "id_articulo";
                break;

            default:
                // Usar un código en particular
                CodPredet = "codigo" + CodPredet;
                break;
            }

            if (Articulo == null)
            {
                return(CodPredet);
            }
            else
            {
                return(System.Convert.ToString(Articulo[CodPredet]));
            }
        }
Example #10
0
        protected override Lfx.Types.OperationResult OnEdit(int itemId)
        {
            Lfx.Data.Row Movim = Lfx.Workspace.Master.Tables["ctacte"].FastRows[itemId];
            if (this.Cliente == null)
            {
                this.Cliente = new Lbl.Personas.Persona(this.Connection, System.Convert.ToInt32(Movim["id_cliente"]));
                ((Lazaro.Pres.Filters.RelationFilter)(this.Definicion.Filters["ctacte.id_cliente"])).Value = this.Cliente;
                RefreshList();
            }
            else
            {
                if (Movim != null)
                {
                    if (Movim["id_recibo"] != null)
                    {
                        int IdRecibo = System.Convert.ToInt32(Movim["id_recibo"]);
                        Lfx.Workspace.Master.RunTime.Execute("EDITAR Lbl.Comprobantes.Recibo " + IdRecibo.ToString());
                    }
                    if (Movim["id_comprob"] != null)
                    {
                        int IdFactura = System.Convert.ToInt32(Movim["id_comprob"]);
                        Lfx.Workspace.Master.RunTime.Execute("EDITAR Lbl.Comprobantes.ComprobanteConArticulos " + IdFactura.ToString());
                    }
                }
            }

            return(new Lfx.Types.SuccessOperationResult());
        }
Example #11
0
        private void AddFromRow(Lfx.Data.Row row)
        {
            T Elem = Instanciador.Instanciar <T>(this.DataBase, row);

            this.Add(Elem);
            this.HayAgregados = true;
        }
Example #12
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            if (row.Fields["destacado"].ValueInt != 0)
            {
                item.Font = new Font(item.Font, FontStyle.Bold);
            }

            if (item.SubItems.ContainsKey("stock_actual"))
            {
                if (row.Fields["stock_actual"].ValueDecimal < row.Fields["stock_minimo"].ValueDecimal)
                {
                    //Faltante
                    item.UseItemStyleForSubItems            = false;
                    item.SubItems["stock_actual"].BackColor = System.Drawing.Color.Pink;
                    item.SubItems["stock_actual"].BackColor = System.Drawing.Color.Pink;
                }
            }

            if (item.SubItems.ContainsKey("apedir"))
            {
                if (row.Fields["apedir"].ValueDecimal > 0)
                {
                    item.SubItems["apedir"].Text = "-";
                }
                else
                {
                    item.SubItems["apedir"].BackColor = System.Drawing.Color.LightPink;
                }
            }
        }
Example #13
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            string TamanoPapel = row["tamanopapel"].ToString();

            switch (TamanoPapel)
            {
            case "a4":
                item.SubItems["sys_plantillas.tamanopapel"].Text = "A4";
                break;

            case "a5":
                item.SubItems["sys_plantillas.tamanopapel"].Text = "A5";
                break;

            case "letter":
                item.SubItems["sys_plantillas.tamanopapel"].Text = "Carta";
                break;

            case "legal":
                item.SubItems["sys_plantillas.tamanopapel"].Text = "Oficio";
                break;

            case "cont":
                item.SubItems["sys_plantillas.tamanopapel"].Text = "Continuo";
                break;

            default:
                item.SubItems["sys_plantillas.tamanopapel"].Text = TamanoPapel.ToTitleCase();
                break;
            }
            base.OnItemAdded(item, row);
        }
Example #14
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            switch (((Lbl.Pagos.EstadosCupones)System.Convert.ToInt32(row["estado"])))
            {
            case Lbl.Pagos.EstadosCupones.SinPresentar:
                this.Contadores[1].AddValue(row.Fields["importe"].ValueDecimal);
                break;

            case Lbl.Pagos.EstadosCupones.Anulado:
                item.ForeColor = Color.Gray;
                item.Font      = new Font(item.Font, FontStyle.Strikeout);
                break;

            case Lbl.Pagos.EstadosCupones.Rechazaro:
                item.ForeColor = Color.Gray;
                item.Font      = new Font(item.Font, FontStyle.Strikeout);
                break;

            case Lbl.Pagos.EstadosCupones.Presentado:
                this.Contadores[0].AddValue(row.Fields["importe"].ValueDecimal);
                item.ForeColor = Color.DarkGreen;
                break;

            case Lbl.Pagos.EstadosCupones.Acreditado:
                this.Contadores[2].AddValue(row.Fields["importe"].ValueDecimal);
                item.ForeColor = Color.Gray;
                break;
            }

            base.OnItemAdded(item, row);
        }
Example #15
0
        protected virtual void AgregarTags(qGen.Command comando, Lfx.Data.Row registro, string tabla)
        {
            Lfx.Data.Table Tabla = this.Connection.Tables[tabla];
            if (Tabla.Tags != null && Tabla.Tags.Count > 0)
            {
                foreach (Lfx.Data.Tag Tg in Tabla.Tags)
                {
                    if (Tg.Nullable == false && registro[Tg.FieldName] == null)
                    {
                        switch (Tg.FieldType)
                        {
                        case Lfx.Data.DbTypes.Currency:
                        case Lfx.Data.DbTypes.Integer:
                        case Lfx.Data.DbTypes.SmallInt:
                        case Lfx.Data.DbTypes.MediumInt:
                        case Lfx.Data.DbTypes.TinyInt:
                        case Lfx.Data.DbTypes.Numeric:
                            comando.Fields.AddWithValue(Tg.FieldName, 0);
                            break;

                        default:
                            comando.Fields.AddWithValue(Tg.FieldName, "");
                            break;
                        }
                    }
                    else
                    {
                        comando.Fields.AddWithValue(Tg.FieldName, registro[Tg.FieldName]);
                    }
                }
            }
        }
Example #16
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            item.SubItems["bancos_cheques.numero"].Text = row.Fields["numero"].ValueInt.ToString("00000000");

            decimal Importe = row.Fields["importe"].ValueDecimal;

            this.Contadores[0].AddValue(Importe);

            switch (row.Fields["estado"].ValueInt)
            {
            case 0:
                if (this.Emitidos)
                {
                    item.SubItems["bancos_cheques.estado"].Text = "A pagar";
                }
                else
                {
                    item.SubItems["bancos_cheques.estado"].Text = "A cobrar";
                }
                if (DateTime.Compare(row.Fields["fechacobro"].ValueDateTime, System.DateTime.Now) <= 0)
                {
                    item.ForeColor = System.Drawing.Color.Green;
                }
                else
                {
                    item.ForeColor = System.Drawing.Color.Black;
                }
                this.Contadores[1].AddValue(Importe);
                break;

            case 5:
                item.SubItems["bancos_cheques.estado"].Text = "Depositado";
                this.Contadores[1].AddValue(Importe);
                break;

            case 10:
                if (this.Emitidos)
                {
                    item.SubItems["bancos_cheques.estado"].Text = "Pagado";
                }
                else
                {
                    item.SubItems["bancos_cheques.estado"].Text = "Cobrado";
                }
                item.ForeColor = System.Drawing.Color.Gray;
                break;

            case 11:
                item.SubItems["bancos_cheques.estado"].Text = "Entregado";
                item.ForeColor = System.Drawing.Color.Gray;
                break;

            case 90:
                item.SubItems["bancos_cheques.estado"].Text = "Anulado";
                item.ForeColor = System.Drawing.Color.Gray;
                item.Font      = new Font(item.Font, FontStyle.Strikeout);
                break;
            }
        }
Example #17
0
 protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
 {
     if (row.Fields["articulos_situaciones.deposito"].ValueInt == 0)
     {
         item.SubItems["articulos_situaciones.deposito"].Text = "No";
     }
     base.OnItemAdded(item, row);
 }
Example #18
0
 public Caja(Lfx.Data.IConnection dataBase, Lfx.Data.Row row)
     : base(dataBase, row)
 {
     CajaController = new Lazaro.Base.Controller.CajaController(
         new Lazaro.Orm.EntityManager(this.Connection, Lfx.Workspace.Master.MetadataFactory),
         this
         );
 }
Example #19
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            switch (row.Fields["pvs.tipo_fac"].ValueString)
            {
            case "F":
                item.SubItems[Listado.Columns["pvs.tipo_fac"].Index].Text = "Facturas";
                break;

            case "F,ND":
                item.SubItems[Listado.Columns["pvs.tipo_fac"].Index].Text = "Facturas y notas de débito";
                break;

            case "F,NC,ND":
                item.SubItems[Listado.Columns["pvs.tipo_fac"].Index].Text = "Facturas, notas de crédito y débito";
                break;

            case "R":
                item.SubItems[Listado.Columns["pvs.tipo_fac"].Index].Text = "Remitos";
                break;

            case "RC":
                item.SubItems[Listado.Columns["pvs.tipo_fac"].Index].Text = "Recibos de cobro";
                break;

            case "RP":
                item.SubItems[Listado.Columns["pvs.tipo_fac"].Index].Text = "Recibos de pago";
                break;
            }

            int TipoPv = row.Fields["pvs.tipo"].ValueInt;

            if (TipoPv == 0)
            {
                item.SubItems[Listado.Columns["pvs.tipo"].Index].Text = "Inactivo";
            }
            if (TipoPv == 1)
            {
                item.SubItems[Listado.Columns["pvs.tipo"].Index].Text = "Talonario / Papel";
            }
            else if (TipoPv == 2)
            {
                item.SubItems[Listado.Columns["pvs.tipo"].Index].Text = "Controlador fiscal AFIP";
            }
            else if (TipoPv == 10)
            {
                item.SubItems[Listado.Columns["pvs.tipo"].Index].Text = "Electrónico AFIP";
            }

            if (item.SubItems[Listado.Columns["pvs.carga"].Index].Text == "0")
            {
                item.SubItems[Listado.Columns["pvs.carga"].Index].Text = "Automática";
            }
            else if (item.SubItems[Listado.Columns["pvs.carga"].Index].Text == "1")
            {
                item.SubItems[Listado.Columns["pvs.carga"].Index].Text = "Manual";
            }
        }
Example #20
0
        protected override void OnCreateControl()
        {
            base.OnCreateControl();
            if (this.Connection != null)
            {
                EntradaStockActual.DecimalPlaces = Lbl.Sys.Config.Articulos.Decimales;
                EntradaStockMinimo.DecimalPlaces = Lbl.Sys.Config.Articulos.Decimales;
                EntradaCosto.DecimalPlaces       = Lfx.Workspace.Master.CurrentConfig.Moneda.DecimalesCosto;
                EntradaPvp.DecimalPlaces         = Lfx.Workspace.Master.CurrentConfig.Moneda.Decimales;

                Lfx.Data.Row Nombre = null;

                Nombre = Lfx.Workspace.Master.Tables["articulos_codigos"].FastRows[1];
                if (Nombre != null)
                {
                    EtiquetaCodigo1.Text = Nombre["nombre"].ToString();
                }

                Nombre = Lfx.Workspace.Master.Tables["articulos_codigos"].FastRows[2];
                if (Nombre != null)
                {
                    EtiquetaCodigo2.Text = Nombre["nombre"].ToString();
                }

                Nombre = Lfx.Workspace.Master.Tables["articulos_codigos"].FastRows[3];
                if (Nombre != null)
                {
                    EtiquetaCodigo3.Text = Nombre["nombre"].ToString();
                }

                Nombre = Lfx.Workspace.Master.Tables["articulos_codigos"].FastRows[4];
                if (Nombre != null)
                {
                    EtiquetaCodigo4.Text = Nombre["nombre"].ToString();
                }

                this.Margenes = new Lbl.ColeccionGenerica <Lbl.Articulos.Margen>(this.Connection, Lfx.Workspace.Master.Tables["margenes"]);

                int      i             = 0;
                string[] ListaMargenes = new string[this.Margenes.Count + 1];

                //Ordeno el listado de Margenes
                this.Margenes.Sort((x, y) => x.Porcentaje.CompareTo(y.Porcentaje));

                foreach (Lbl.Articulos.Margen Mg in this.Margenes)
                {
                    ListaMargenes[i] = Mg.Nombre + " (" + Lfx.Types.Formatting.FormatNumber(Mg.Porcentaje, 2) + "%)|" + Mg.Id.ToString();
                    i++;
                }

                ListaMargenes[i] = "Otro|0";
                IgnorarCostoMargenPvpPvpIvaTextChanged++;
                EntradaMargen.SetData = ListaMargenes;
                IgnorarCostoMargenPvpPvpIvaTextChanged--;
            }
        }
Example #21
0
        public override Lfx.Types.OperationResult ValidarControl()
        {
            Lfx.Types.OperationResult Res = new Lfx.Types.SuccessOperationResult();

            if (EntradaNombre.Text.Length < 2)
            {
                Res.Success  = false;
                Res.Message += "Por favor escriba el nombre del artículo." + Environment.NewLine;
            }

            if (EntradaCodigo1.Text.Length > 0)
            {
                Lfx.Data.Row Articulo = this.Connection.FirstRowFromSelect("SELECT id_articulo FROM articulos WHERE codigo1='" + EntradaCodigo1.Text + "' AND id_articulo<>" + this.Elemento.Id.ToString());

                if (Articulo != null)
                {
                    Res.Success  = false;
                    Res.Message += "Ya existe un artículo con el mismo código (" + EtiquetaCodigo1.Text + " " + EntradaCodigo1.Text + ") en la base de datos." + Environment.NewLine;
                }
            }

            if (EntradaCodigo2.Text.Length > 0)
            {
                Lfx.Data.Row Articulo = this.Connection.FirstRowFromSelect("SELECT id_articulo FROM articulos WHERE codigo2='" + EntradaCodigo2.Text + "' AND id_articulo<>" + this.Elemento.Id.ToString());

                if (Articulo != null)
                {
                    Res.Success  = false;
                    Res.Message += "Ya existe un artículo con el mismo código (" + EtiquetaCodigo2.Text + " " + EntradaCodigo2.Text + ") en la base de datos." + Environment.NewLine;
                }
            }

            if (EntradaCodigo3.Text.Length > 0)
            {
                Lfx.Data.Row Articulo = this.Connection.FirstRowFromSelect("SELECT id_articulo FROM articulos WHERE codigo3='" + EntradaCodigo3.Text + "' AND id_articulo<>" + this.Elemento.Id.ToString());

                if (Articulo != null)
                {
                    Res.Success  = false;
                    Res.Message += "Ya existe un artículo con el mismo código (" + EtiquetaCodigo3.Text + " " + EntradaCodigo3.Text + ") en la base de datos." + Environment.NewLine;
                }
            }

            if (EntradaCodigo4.Text.Length > 0)
            {
                Lfx.Data.Row Articulo = this.Connection.FirstRowFromSelect("SELECT id_articulo FROM articulos WHERE codigo4='" + EntradaCodigo4.Text + "' AND id_articulo<>" + this.Elemento.Id.ToString());

                if (Articulo != null)
                {
                    Res.Success  = false;
                    Res.Message += "Ya existe un artículo con el mismo código (" + EtiquetaCodigo4.Text + " " + EntradaCodigo4.Text + ") en la base de datos." + Environment.NewLine;
                }
            }

            return(Res);
        }
Example #22
0
        protected override void OnItemAdded(ListViewItem item, Lfx.Data.Row row)
        {
            if (row.Fields["comprob.anulada"].ValueInt != 0)
            {
                // Si está anulada, le cambio el nombre
                item.SubItems["personas.nombre_visible"].Text = "Anulada";
            }

            base.OnItemAdded(item, row);
        }
Example #23
0
 private void monedaCotiza_TextChanged(object sender, EventArgs e)
 {
     if (cotizaValor.ValueDecimal == 0)
     {
         Lfx.Data.Row rowCotiza = this.Connection.FirstRowFromSelect("SELECT cotizacion FROM monedas WHERE id_moneda=" + this.monedaCotiza.Elemento.Id.ToString());
         if (rowCotiza != null)
         {
             cotizaValor.ValueDecimal = Convert.ToDecimal(rowCotiza["cotizacion"]);
         }
     }
 }
Example #24
0
 public virtual Row Clone()
 {
     Lfx.Data.Row Res = new Lfx.Data.Row();
     Res.DataTable = this.DataTable;
     foreach (Lazaro.Orm.Data.ColumnValue Fld in this.Fields)
     {
         Res.Fields.Add(Fld.Clone());
     }
     Res.IsModified = this.IsModified;
     Res.IsNew      = this.IsNew;
     return(Res);
 }
Example #25
0
 /// <summary>
 /// Crea un nuevo elemento nuevo, con sus valores predeterminados.
 /// </summary>
 public virtual void Crear()
 {
     m_ItemId           = 0;
     m_Registro         = new Lfx.Data.Row();
     m_RegistroOriginal = null;
     m_Etiquetas        = null;
     if (this is ICamposBaseEstandar)
     {
         ((ICamposBaseEstandar)this).Estado = 1;
         this.SetFieldValue("fecha", this.Connection.ServerDateTime);
     }
 }
Example #26
0
 public void AddRange(System.Data.DataTable tabla)
 {
     if (tabla != null)
     {
         foreach (System.Data.DataRow Rw in tabla.Rows)
         {
             Lfx.Data.Row Lrw = (Lfx.Data.Row)Rw;
             this.AddFromRow(Lrw);
         }
     }
     this.HayCambios = false;
 }
Example #27
0
 private void EntradaMoneda_TextChanged(object sender, EventArgs e)
 {
     if (EntradaMoneda.Enabled && EntradaMoneda.Elemento != null)
     {
         Lfx.Data.Row rowCotiza = this.Connection.FirstRowFromSelect("SELECT cotizacion FROM monedas WHERE id_moneda=" + this.EntradaMoneda.Elemento.Id.ToString());
         if (rowCotiza != null)
         {
             EntradaCotiza.ValueDecimal = Convert.ToDecimal(rowCotiza["cotizacion"]);
             EntradaCosto.Focus();
         }
     }
 }
Example #28
0
        public virtual Lazaro.Pres.Forms.FormActionCollection GetFormActions()
        {
            if (m_FormActions == null)
            {
                m_FormActions = new Lazaro.Pres.Forms.FormActionCollection();
                // Obtengo una lista de acciones basadas en la tabla sys_tags
                if (this.ElementoTipo != null && Lfx.Data.DatabaseCache.DefaultCache.Tables.ContainsKey("sys_tags"))
                {
                    Lbl.Atributos.Datos AttrDatos = this.ElementoTipo.GetAttribute <Lbl.Atributos.Datos>();
                    if (AttrDatos != null)
                    {
                        string NombreTabla = AttrDatos.TablaDatos;

                        var Conn = this.Connection;
                        if (Conn == null)
                        {
                            Conn = Lfx.Workspace.Master.MasterConnection;
                        }
                        System.Data.DataTable TagsTable = Conn.Select("SELECT * FROM sys_tags WHERE fieldtype IN ('action') AND tablename='" + NombreTabla + "'");
                        foreach (System.Data.DataRow TagRow in TagsTable.Rows)
                        {
                            Lfx.Data.Row ActionRow = (Lfx.Data.Row)TagRow;
                            Lazaro.Pres.Forms.FormAction NewAction = new Lazaro.Pres.Forms.FormAction(ActionRow.Fields["label"].ValueString, null, ActionRow.Fields["label"].ValueString, 0);
                            switch (ActionRow.Fields["inputtype"].ValueString)
                            {
                            case "primary":
                            case "pri":
                                NewAction.Visibility = Lazaro.Pres.Forms.FormActionVisibility.Main;
                                break;

                            case "tertiary":
                            case "ter":
                                NewAction.Visibility = Lazaro.Pres.Forms.FormActionVisibility.Tertiary;
                                break;

                            case "secondary":
                            case "sec":
                            default:
                                NewAction.Visibility = Lazaro.Pres.Forms.FormActionVisibility.Secondary;
                                break;
                            }
                            NewAction.Extra = ActionRow.Fields["extra"].ValueString;


                            m_FormActions.Add(NewAction);
                        }
                    }
                }
            }

            return(m_FormActions.ShallowClone());
        }
Example #29
0
        /// <summary>
        /// Devuelve el tipo y número de un comprobante (por ejemplo: B 0001-00000135).
        /// </summary>
        public static string TipoYNumeroCompleto(Lfx.Data.IConnection connection, int itemId)
        {
            Lfx.Data.Row Comp = Lfx.Workspace.Master.Tables["comprob"].FastRows[itemId];

            if (Comp == null)
            {
                return("");
            }
            else
            {
                return((string)Comp["tipo_fac"].ToString() + " " + System.Convert.ToInt32(Comp["pv"]).ToString("0000") + "-" + System.Convert.ToInt32(Comp["numero"]).ToString("00000000"));
            }
        }
Example #30
0
 public void AddRange(Lfx.Data.Table tabla)
 {
     if (tabla != null)
     {
         tabla.PreLoad();
         foreach (Lfx.Data.Row Rw in tabla.FastRows.Values)
         {
             Lfx.Data.Row Lrw = Rw;
             this.AddFromRow(Lrw);
         }
     }
     this.HayCambios = false;
 }
Example #31
0
		protected override void OnBeginPrint(System.Drawing.Printing.PrintEventArgs ev)
		{
			base.OnBeginPrint(ev);
			// Abro el Comprobante
                        m_Comprob = this.Workspace.DefaultDataBase.Row("comprob", "id_comprob", this.Comprobante.Id);
                        m_Detalle = this.Workspace.DefaultDataBase.Select("SELECT * FROM comprob_detalle WHERE id_comprob=" + this.Comprobante.Id.ToString());
                        m_Cliente = this.Workspace.DefaultDataBase.FieldString("SELECT nombre_visible FROM personas WHERE id_persona=" + m_Comprob["id_cliente"].ToString());
                        m_Vendedor = this.Workspace.DefaultDataBase.FieldString("SELECT nombre FROM personas WHERE id_persona=" + m_Comprob["id_vendedor"].ToString());
			m_Pagina = 0;
			m_LastRow = 0;
			this.DocumentName = "Presupuesto N " + m_Comprob["numero"].ToString();
			DefaultPageSettings.Margins.Bottom = 60;
			DefaultPageSettings.Margins.Top = 140;
			DefaultPageSettings.Margins.Left = 100;
			DefaultPageSettings.Margins.Right = 80;
		}
Example #32
0
                public Lfx.Data.Row FirstRowFromSelect(string selectCommand)
                {
                        /* System.Data.DataTable SelTbl = this.Select(selectCommand);
                        if (SelTbl.Rows.Count == 0)
                                return null;

                        Lfx.Data.Row Res = ((Lfx.Data.Row)(SelTbl.Rows[0]));
                        Res.IsNew = false;
                        return Res; */

                        using (System.Data.IDataReader Rdr = this.GetReader(selectCommand)) {
                                if (Rdr != null) {
                                        Lfx.Data.Row Res = null;
                                        if (Rdr.Read()) {
                                                Res = new Lfx.Data.Row();
                                                Res.IsNew = false;
                                                for (int i = 0; i < Rdr.FieldCount; i++) {
                                                        object Val = Rdr[i];
                                                        if (Val is DateTime && (DateTime)Val == DateTime.MinValue)
                                                                Res[Rdr.GetName(i)] = null;
                                                        else if (Val == DBNull.Value)
                                                                Res[Rdr.GetName(i)] = null;
                                                        else
                                                                Res[Rdr.GetName(i)] = Rdr[i];
                                                }
                                                Res.IsModified = false;
                                        }
                                        Rdr.Close();
                                        return Res;
                                } else {
                                        return null;
                                }
                        }
                }
Example #33
0
                /// <summary>
                /// Procesa un registro según el mapa de columnas correspondiente a la tabla y devuelve un Lfx.Data.Row
                /// </summary>
                public Lfx.Data.Row ProcesarRegistro(MapaDeTabla mapa, System.Data.DataRow externalRow)
                {
                        Lfx.Data.Row internalRow = new Lfx.Data.Row();
                        internalRow.IsNew = true;
                        internalRow.Table = this.Connection.Tables[mapa.TablaLazaro];

                        foreach (MapaDeColumna Col in mapa.MapaDeColumnas) {
                                object FieldValue = null;
                                switch (Col.Conversion) {
                                        case ConversionDeColumna.ConvertirAMinusculas:
                                                FieldValue = externalRow[Col.ColumnaExterna].ToString().ToLowerInvariant();
                                                break;
                                        case ConversionDeColumna.ConvertirAMayusculasYMinusculas:
                                                FieldValue = externalRow[Col.ColumnaExterna].ToString().ToTitleCase();
                                                break;
                                        case ConversionDeColumna.InterpretarNombreYApellido:
                                                FieldValue = externalRow[Col.ColumnaExterna].ToString().ToTitleCase();
                                                string Nombre = FieldValue.ToString();
                                                string Apellido = Lfx.Types.Strings.GetNextToken(ref Nombre, " ");
                                                internalRow["nombre"] = Nombre.Trim();
                                                internalRow["apellido"] = Apellido.Trim();
                                                if (Nombre.Length > 0 && Apellido.Length > 0)
                                                        FieldValue = Apellido + ", " + Nombre;
                                                break;
                                        case ConversionDeColumna.InterpretarSql:
                                                string Sql = Col.ParametroConversion.ToString();
                                                string ClaveBuscada = externalRow[Col.ColumnaExterna].ToString();

                                                if (this.CacheConversiones.ContainsKey(Sql) && this.CacheConversiones[Sql].ContainsKey(ClaveBuscada)){
                                                        FieldValue = this.CacheConversiones[Sql][ClaveBuscada];
                                                } else {
                                                        Lfx.Data.Row Result = this.Connection.FirstRowFromSelect(Sql.Replace("$VALOR$", ClaveBuscada));
                                                        if (Result == null || Result[0] == null)
                                                                FieldValue = null;
                                                        else
                                                                FieldValue = Result[0];

                                                        if (this.CacheConversiones.ContainsKey(Sql) == false)
                                                                // Agrego esta conversión a la cache
                                                                this.CacheConversiones.Add(Sql, new Dictionary<string, object>());
                                                        this.CacheConversiones[Sql].Add(ClaveBuscada, FieldValue);
                                                }
                                                
                                                break;
                                        case ConversionDeColumna.Ninguna:
                                                if (Col.ColumnaExterna != null) {
                                                        FieldValue = externalRow[Col.ColumnaExterna];
                                                } else {
                                                        FieldValue = Col.ValorPredeterminado;
                                                }
                                                break;
                                        default:
                                                throw new NotImplementedException("Lbl.Servicios.Importar.Filtro: no implementa ConversionDeColumna." + Col.Conversion.ToString());
                                }
                                internalRow.Fields.AddWithValue(Col.ColumnaLazaro, FieldValue);
                                if (Col.ColumnaExterna != null)
                                        internalRow.Fields.AddWithValue("original_" + Col.ColumnaExterna, externalRow[Col.ColumnaExterna]);
                        }

                        // El id de seguimiento de importación
                        string[] ColumnasExternas = mapa.ColumnaIdExterna.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                        if (ColumnasExternas.Length == 1) {
                                internalRow[mapa.ColumnaIdLazaro] = externalRow[mapa.ColumnaIdExterna];
                                internalRow.Fields.AddWithValue("original_" + mapa.ColumnaIdExterna, externalRow[mapa.ColumnaIdExterna]);
                        } else {
                                string Valor = null;
                                foreach (string ColumnaExterna in ColumnasExternas) {
                                        if (Valor == null)
                                                Valor = externalRow[ColumnaExterna].ToString();
                                        else
                                                Valor += "--" + externalRow[ColumnaExterna].ToString();
                                        internalRow.Fields.AddWithValue("original_" + ColumnaExterna, externalRow[ColumnaExterna]);
                                }
                                internalRow[mapa.ColumnaIdLazaro] = Valor;
                        }
                        
                        this.ProcesarRemplazos(mapa, ref internalRow);

                        return internalRow;
                }
Example #34
0
 public virtual Row Clone()
 {
         Lfx.Data.Row Res = new Lfx.Data.Row();
         Res.DataTable = this.DataTable;
         foreach (Lfx.Data.Field Fld in this.Fields) {
                 Res.Fields.Add(Fld.Clone());
         }
         Res.IsModified = this.IsModified;
         Res.IsNew = this.IsNew;
         return Res;
 }