| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | using System;using InABox.Clients;using InABox.Core;namespace Comal.Classes{    public abstract class BaseActivityLookupGenerator<T> : LookupGenerator<T>    {        public BaseActivityLookupGenerator(T[] items) : base(items)        {            AddColumn("Code", typeof(string));            AddColumn("Description", typeof(string));            AddColumn("Color", typeof(string));            AddColumn("Charge.Chargeable", typeof(bool));        }        protected abstract Guid EmployeeID();        protected virtual Filter<EmployeeActivity> CreateFilter()        {            return new Filter<EmployeeActivity>(x => x.Employee.ID).IsEqualTo(EmployeeID());        }        protected override void DoGenerateLookups()        {            Clear();            var eacts = new Client<EmployeeActivity>().Query(                CreateFilter(),                new Columns<EmployeeActivity>(x => x.Activity.ID)                    .Add(x => x.Activity.Code)                    .Add(x => x.Activity.Description)                    .Add(x => x.Activity.Color)                    .Add(x=>x.Activity.Charge.Chargeable),                new SortOrder<EmployeeActivity>(x => x.Activity.Code)            );            foreach (var row in eacts.Rows)                AddValue(                    row.Get<EmployeeActivity, Guid>(col => col.Activity.ID),                    string.Format("{0}: {1}", row.Get<EmployeeActivity, string>(col => col.Activity.Code),                        row.Get<EmployeeActivity, string>(col => col.Activity.Description)),                    row.Get<EmployeeActivity, string>(col => col.Activity.Code),                    row.Get<EmployeeActivity, string>(col => col.Activity.Description),                    row.Get<EmployeeActivity, string>(col => col.Activity.Color),                    row.Get<EmployeeActivity, bool>(col => col.Activity.Charge.Chargeable)                );        }    }}
 |