Ejemplo n.º 1
0
        bool IsXpoType(Type typeToCreateOn)
        {
            XpoTypeInfoSource xpoTypeInfoSource = XpoTypesInfoHelper.GetXpoTypeInfoSource();

            return(xpoTypeInfoSource.GetOriginalType(typeToCreateOn) != null &&
                   xpoTypeInfoSource.RegisteredEntities.Contains(typeToCreateOn));
        }
        public static SimpleDataLayer CreateCachedDataLayer(this XafApplication xafApplication, IDataStore argsDataStore)
        {
            var cacheRoot = new DataCacheRoot(argsDataStore);
            var cacheNode = new DataCacheNode(cacheRoot);

            return(new SimpleDataLayer(XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary, cacheNode));
        }
Ejemplo n.º 3
0
        private void EjecutarConsultaActionOnExecute(object sender, SimpleActionExecuteEventArgs e)
        {
            var objectSpace = (XPObjectSpace)Application.CreateObjectSpace();

            var objetoParametros = (IConsultaStoredProcedure)View.CurrentObject;
            var xpClassInfo      =
                XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary.QueryClassInfo(objetoParametros.ClaseResultados);

            var objectsFromSproc = objectSpace.Session.GetObjectsFromSproc(xpClassInfo,
                                                                           objetoParametros.NombreStoredProcedure, objetoParametros.Parametros);
            var collectionSource = new CollectionSource(objectSpace, objetoParametros.ClaseResultados);

            foreach (var item in objectsFromSproc)
            {
                collectionSource.Add(item);
            }

            var view = Application.CreateListView(Application.Model.BOModel[xpClassInfo.FullName].DefaultListView,
                                                  collectionSource, true);

            view.Editor.AllowEdit = false;
            Application.MainWindow.SetView(view);

            e.ShowViewParameters.TargetWindow = TargetWindow.NewWindow;
            e.ShowViewParameters.Context      = TemplateContext.ApplicationWindow;
        }
Ejemplo n.º 4
0
        private static DevExpress.Xpo.Metadata.XPDictionary CreateDictionary()
        {
            CustomCreateXPDictionaryEventArgs args = new CustomCreateXPDictionaryEventArgs();

            CustomCreateXPDictionary?.Invoke(null, args);
            return(args.Dictionary ?? XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary);
        }
        public HttpResponseMessage get_Gender()
        {
            try
            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(Gender));
                List <Gender_Model>   list           = new List <Gender_Model>();
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                IList <Gender>        collection     = ObjectSpace.GetObjects <Gender>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1", null));
                foreach (Gender row in collection)
                {
                    Gender_Model model = new Gender_Model();
                    model.Oid        = row.Oid.ToString();
                    model.GenderName = row.GenderName;
                    model.IsActive   = row.IsActive;
                    list.Add(model);
                }
                return(Request.CreateResponse(HttpStatusCode.OK, list));
            }
            catch (Exception ex)
            {                   //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
 private static void RegisterEntities()
 {
     XpoTypesInfoHelper.GetXpoTypeInfoSource();
     XafTypesInfo.Instance.RegisterEntity(typeof(Employee));
     XafTypesInfo.Instance.RegisterEntity(typeof(PermissionPolicyUser));
     XafTypesInfo.Instance.RegisterEntity(typeof(PermissionPolicyRole));
 }
Ejemplo n.º 7
0
        private static void RegistrarObjectSpace()
        {
            string connectionString = "";

            if (ConfigurationManager.ConnectionStrings["ConnectionString"] != null)
            {
                connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            }

            IDataStore   store = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.SchemaAlreadyExists);
            XPDictionary dict  = new ReflectionDictionary();

            dict.GetDataStoreSchema(System.Reflection.Assembly.GetExecutingAssembly());
            XpoDefault.DataLayer = new ThreadSafeDataLayer(dict, store);

            XpoTypesInfoHelper.ForceInitialize();
            XpoTypesInfoHelper.GetXpoTypeInfoSource();

            XafTypesInfo.Instance.RegisterEntity(typeof(Venta));
            XafTypesInfo.Instance.RegisterEntity(typeof(TipoDocumento));
            XafTypesInfo.Instance.RegisterEntity(typeof(CobroPendiente));
            XafTypesInfo.Instance.RegisterEntity(typeof(ReporteCxcEmpleado));
            XafTypesInfo.Instance.RegisterEntity(typeof(CorteDeCaja));
            XafTypesInfo.Instance.RegisterEntity(typeof(Empleado));

            XafTypesInfo.Instance.RegisterEntity(typeof(Sucursal));


            XafTypesInfo.Instance.RegisterEntity(typeof(ReportDataV2));

            XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(connectionString, null, true);

            ObjectsPaceConnection.PropObjectSpace = directProvider.CreateObjectSpace();
            ObjectsPaceConnection.Session         = ((XPObjectSpace)ObjectsPaceConnection.PropObjectSpace).Session;
        }
Ejemplo n.º 8
0
        public override void CustomizeTypesInfo(ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            CalculatedPersistentAliasHelper.CustomizeTypesInfo(typesInfo);

            #region 自动创建关联属性功能
            //派生自 单据<T>的类型,将根据基类使用情况创建关联的Items和Master属性,这样可以实现使用泛型类型做为主从结构的基类
            var dict = XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary;

            var autoCreatePropertyTypes = XafTypesInfo.Instance.FindTypeInfo(typeof(单据)).Descendants.Where(x => x.IsPersistent);
            foreach (var i in autoCreatePropertyTypes)
            {
                var master = dict.GetClassInfo(i.Type);
                if (master.BaseClass.ClassType.IsGenericType)
                {
                    var child        = dict.GetClassInfo(master.BaseClass.ClassType.GetGenericArguments()[0]);
                    var relationName = master.ClassType.Name + "-" + child.ClassType.Name;
                    master.CreateMember("Items", typeof(XPCollection <>).MakeGenericType(child.ClassType), true, true,
                                        new AssociationAttribute(relationName, child.ClassType),
                                        new DevExpress.Xpo.AggregatedAttribute());
                    child.CreateMember("Master", i.Type, false, true, new AssociationAttribute(relationName));

                    XafTypesInfo.Instance.RefreshInfo(master.ClassType);
                    XafTypesInfo.Instance.RefreshInfo(child.ClassType);
                    Debug.WriteLine("自动为单据创建了属性:" + master.FullName);
                }
            }
            #endregion
        }
        /// ประเภทเมล็ด
        public HttpResponseMessage loadSeedType()
        {
            try
            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(SeedType));
                List <SeedType_Model> list           = new List <SeedType_Model>();
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                //   Activity ActivityOid = ObjectSpace.FindObject<Activity>(CriteriaOperator.Parse("GCRecord is null and IsActive = 1 and ActivityName ='เพื่อช่วยเหลือภัยพิบัติ'  ", null));
                ForageType       objseedtype = ObjectSpace.FindObject <ForageType>(CriteriaOperator.Parse("IsActive = 1 and  ForageTypeName = 'เสบียงสัตว์ ' ", null));
                IList <SeedType> collection  = ObjectSpace.GetObjects <SeedType>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1  and [ForageTypeOid] ='" + objseedtype.Oid + "'  ", null));
                foreach (SeedType row in collection)
                {
                    SeedType_Model model = new SeedType_Model();
                    model.SeedTypeOid  = row.Oid.ToString();
                    model.SeedTypeName = row.SeedTypeName;
                    model.IsActive     = row.IsActive;
                    list.Add(model);
                }
                return(Request.CreateResponse(HttpStatusCode.OK, list));
            }
            catch (Exception ex)
            {                   //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
        /// ประเภทอาหารสัตว์
        public HttpResponseMessage loadAnimalsupplies()
        {
            try
            {
                string animalsupplieroid = HttpContext.Current.Request.Form["animalsupplieroid"].ToString();
                // string animalsuppliertypeoid = HttpContext.Current.Request.Form["animalsuppliertypeoid"].ToString();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(AnimalSupplieType));
                List <AnimalSupplieType_Model> list           = new List <AnimalSupplieType_Model>();
                XPObjectSpaceProvider          directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace ObjectSpace             = directProvider.CreateObjectSpace();
                IList <AnimalSupplieType> collection = ObjectSpace.GetObjects <AnimalSupplieType>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1 and [AnimalSupplie.oid] = ? ", animalsupplieroid));
                foreach (AnimalSupplieType row in collection)
                {
                    AnimalSupplieType_Model model = new AnimalSupplieType_Model();
                    model.animalsupplieoid     = row.AnimalSupplie.Oid.ToString();
                    model.AnimalSupplieTypeOid = row.Oid.ToString();
                    model.SupplietypeName      = row.SupplietypeName;
                    model.AnimalSupplieName    = row.AnimalSupplie.AnimalSupplieName;
                    model.SalePrice            = row.SalePrice;
                    model.IsActive             = row.IsActive;
                    list.Add(model);
                }
                return(Request.CreateResponse(HttpStatusCode.OK, list));
            }
            catch (Exception ex)
            {                   //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
        /// วิธีเก็บเกี่ยว
        public HttpResponseMessage loadHarvesting(string ForageTypeOid) // เมล็ดพัรธุ์ | เสบียงสัตว์ | ค่าว่าง
        {
            try

            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(Harvest));
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                IList <Harvest>       collection     = ObjectSpace.GetObjects <Harvest>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1", null));

                List <PlantModel> list = new List <PlantModel>();
                foreach (Harvest row in collection)
                {
                    PlantModel plant = new PlantModel();
                    plant.Oid           = row.Oid;
                    plant.ForageTypeOid = row.HarvestName;
                    list.Add(plant);
                }
                return(Request.CreateResponse(HttpStatusCode.OK, list));
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
Ejemplo n.º 12
0
            //Dennis: It is important to set the SequenceGenerator.DefaultDataLayer property to the main application data layer.
            //If you use a custom IObjectSpaceProvider implementation, ensure that it exposes a working IDataLayer.
            public static void Initialize()
            {
                Guard.ArgumentNotNull(Application, "Application");
                XPObjectSpaceProvider provider = Application.ObjectSpaceProvider as XPObjectSpaceProvider;

                if (provider != null)
                {
                    Guard.ArgumentNotNull(provider, "provider");
                    if (provider.DataLayer == null)
                    {
                        provider.CreateObjectSpace();
                    }
                    if (provider.DataLayer is ThreadSafeDataLayer)
                    {
                        SequenceGenerator.DefaultDataLayer = XpoDefault.GetDataLayer(
                            ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString,
                            XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary,
                            DevExpress.Xpo.DB.AutoCreateOption.None);
                    }
                    else
                    {
                        SequenceGenerator.DefaultDataLayer = provider.DataLayer;
                    }
                }
            }
Ejemplo n.º 13
0
        private XPClassInfo FindXPClassInfo(Type type)
        {
            ITypeInfo typeInfo       = XafTypesInfo.Instance.FindTypeInfo(type);
            var       typeInfoSource = XpoTypesInfoHelper.GetXpoTypeInfoSource();

            return(typeInfoSource.TypeIsKnown(type) ? typeInfoSource.GetEntityClassInfo(typeInfo.Type) : null);
        }
Ejemplo n.º 14
0
 public void AfterContextCleanup()
 {
     Isolate.CleanUp();
     ReflectionHelper.Reset();
     XafTypesInfo.Reset();
     XafTypesInfo.HardReset();
     XpoTypesInfoHelper.GetXpoTypeInfoSource().ResetDictionary();
 }
Ejemplo n.º 15
0
 public long GetNextSequence(ITypeInfo typeInfo, string prefix)
 {
     if (typeInfo == null)
     {
         throw new ArgumentNullException("typeInfo");
     }
     return(GetNextSequence(XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary.GetClassInfo(typeInfo.Type), prefix));
 }
Ejemplo n.º 16
0
        void ApplicationOnSetupComplete(object sender, EventArgs eventArgs)
        {
            _module.Application.SetupComplete -= ApplicationOnSetupComplete;
            var typesInfo         = ((XafApplication)sender).TypesInfo;
            var xpoTypeInfoSource = XpoTypesInfoHelper.GetXpoTypeInfoSource();

            _generatedTypes = typesInfo.PersistentTypes.Where(info => info.IsInterface).Select(info => xpoTypeInfoSource.GetGeneratedEntityType(info.Type)).Where(type => type != null).ToArray();
            CollectRules((XafApplication)sender);
        }
Ejemplo n.º 17
0
        public static void GenerateSequence(ISupportSequenceObject supportSequenceObject)
        {
            var info     = XafTypesInfo.Instance.FindTypeInfo(supportSequenceObject.GetType());
            var typeInfo = info.IsInterface
                ? XafTypesInfo.Instance.FindTypeInfo(XpoTypesInfoHelper.GetXpoTypeInfoSource().GetGeneratedEntityType(info.Type))
                : XafTypesInfo.Instance.FindTypeInfo(((XPBaseObject)supportSequenceObject).ClassInfo.FullName);

            GenerateSequence(supportSequenceObject, typeInfo);
        }
Ejemplo n.º 18
0
        public HttpResponseMessage news_Detail()
        {
            try
            {
                int    number  = 0;
                string newsOid = HttpContext.Current.Request.Form["Oid"].ToString();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(News));
                List <newsmodel>       list           = new List <newsmodel>();
                List <ImageURL_Detail> detail         = new List <ImageURL_Detail>();
                XPObjectSpaceProvider  directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace           ObjectSpace    = directProvider.CreateObjectSpace();
                News         objNews    = ObjectSpace.FindObject <News>(CriteriaOperator.Parse("  GCRecord is null and Oid =?", newsOid));
                IList <News> collection = ObjectSpace.GetObjects <News>(CriteriaOperator.Parse("GCRecord is null and Oid='" + newsOid + "'", null));
                if (objNews.Oid != null)
                {
                    newsmodel model = new newsmodel();
                    model.Oid        = objNews.Oid.ToString();
                    model.CreateDate = objNews.CreateDate;
                    model.Subject    = objNews.Subject;
                    model.Details    = objNews.Details.Replace("/Images/News/", "http://nutritionit.dld.go.th/Images/News/");
                    model.TotalTimes = objNews.TotalTimes + 1;

                    String[] spearator = { "<img src=" };
                    string[] Arr       = objNews.Details.ToString().Split(spearator, System.StringSplitOptions.RemoveEmptyEntries);

                    ImageURL_Detail objdetail = null;
                    foreach (var row in Arr)
                    {
                        if (row.Contains("Images"))
                        {
                            String[] spearator2 = { "alt=" };
                            string[] Arr2       = row.ToString().Split(spearator2, System.StringSplitOptions.RemoveEmptyEntries);
                            objdetail          = new ImageURL_Detail();
                            objdetail.ImageURL = Arr2[0].ToString().Replace(@"""", "").Replace(" ", "").Replace("/Images/News/", "http://nutritionit.dld.go.th/Images/News/");
                            detail.Add(objdetail);
                        }
                    }
                    model.objImage = detail;
                    ObjectSpace.CommitChanges();

                    list.Add(model);
                }
                return(Request.CreateResponse(HttpStatusCode.OK, list));
            }
            catch (Exception ex)
            {
                //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
Ejemplo n.º 19
0
        public IHttpActionResult ReceiveOrderSeed()
        {
            object ReceiveOrgOid;

            try
            {
                ReceiveOrgOid = HttpContext.Current.Request.Form["ReceiveOrgOid"].ToString();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(SendOrderSeed));
                XPObjectSpaceProvider         directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace                  ObjectSpace    = directProvider.CreateObjectSpace();
                List <SendOrderSeed_Model>    list_detail    = new List <SendOrderSeed_Model>();
                List <ReceiveOrderSeed_Model> list           = new List <ReceiveOrderSeed_Model>();
                IList <SendOrderSeed>         collection     = ObjectSpace.GetObjects <SendOrderSeed>(CriteriaOperator.Parse("GCRecord is null and SendStatus = 2 and ReceiveOrgOid=? ", ReceiveOrgOid));
                double sum = 0;
                string WeightUnit;
                if (collection.Count > 0)
                {
                    foreach (SendOrderSeed row in collection)
                    {
                        ReceiveOrderSeed_Model Model = new ReceiveOrderSeed_Model();

                        Model.ReceiveNo   = row.SendNo;
                        Model.ReceiveDate = row.SendDate.ToString("dd-MM-yyyy", new CultureInfo("us-US"));;
                        //    FinanceYear = ObjectSpace.GetObject<nutrition.Module.FinanceYear>(CriteriaOperator.Parse(nameof"Oid = @FinanceYearOid ", null));
                        Model.FinanceYear    = row.FinanceYearOid.YearName;
                        Model.ReceiveOrgOid  = row.ReceiveOrgOid.Oid;
                        Model.ReceiveOrgName = row.ReceiveOrgOid.SubOrganizeName;
                        Model.SendOrgOid     = row.SendOrgOid.Oid;
                        Model.SendOrgName    = row.SendOrgOid.SubOrganizeName;
                        foreach (SendOrderSeedDetail row2 in row.SendOrderSeedDetails)
                        {
                            sum        = sum + row2.Weight;
                            WeightUnit = row2.WeightUnitOid.ToString();
                        }
                        Model.Weight_All = sum.ToString() + " " + "กิโลกรัม";
                        list.Add(Model);
                    }
                    return(Ok(list));
                }

                else
                {
                    return(BadRequest("NoData"));
                }
            }

            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                return(BadRequest(ex.Message));
            }
        }
Ejemplo n.º 20
0
        public MultiDataStoreProxy(IDataStore dataStore, string connectionString, XPDictionary dictionary = null) : base(dataStore)
        {
            if (dictionary == null)
            {
                dictionary = XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary;
            }

            _dataStoreManager = new DataStoreManager(connectionString);
            FillDictionaries(dictionary);
        }
Ejemplo n.º 21
0
        protected void CreateDesignTimeCollection(ITypesInfo typesInfo, Type classType, string propertyName)
        {
            XPClassInfo info = XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary.GetClassInfo(classType);

            if (info.FindMember(propertyName) == null)
            {
                info.CreateMember(propertyName, typeof(XPCollection), true);
                typesInfo.RefreshInfo(classType);
            }
        }
Ejemplo n.º 22
0
        public async Task Display_TraceEvent_On_New_Client()
        {
            var dictionary = XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary;

            dictionary.CollectClassInfos(GetType().Assembly);
            dictionary.CollectClassInfos(typeof(ModuleInfo).Assembly);
            using var application = Platform.Win.NewApplication <ReactiveLoggerHubModule>();
            var startServer = application.WhenTraceOnNextEvent(nameof(ReactiveLoggerHubService.StartServer))
                              .FirstAsync().SubscribeReplay().SubscribeOn(Scheduler.Default);
            var connecting = TraceEventHub.Connecting.FirstAsync().SubscribeReplay();

            application.AddModule <ReactiveLoggerHubModule>(typeof(RLH));
            application.Model.ToReactiveModule <IModelReactiveModuleLogger>().ReactiveLogger.TraceSources[nameof(ReactiveModule)].Level = SourceLevels.Verbose;
            application.Logon();
            application.CreateObjectSpace();

            await startServer.Timeout(Timeout);

            var receive   = TraceEventReceiver.TraceEvent.FirstAsync(_ => _.Method == nameof(XafApplicationRxExtensions.WhenDetailViewCreated)).SubscribeReplay();
            var broadcast = TraceEventHub.Trace.FirstAsync(_ => _.Method == nameof(XafApplicationRxExtensions.WhenDetailViewCreated))
                            .SubscribeReplay();

            using var clientWinApp = new ClientWinApp { EditorFactory = new EditorsFactory() };
            clientWinApp.AddModule <ReactiveLoggerHubModule>();
            clientWinApp.Model.BOModel.GetClass(typeof(TraceEvent)).DefaultListView.UseServerMode = false;
            clientWinApp.Logon();


            var listView           = clientWinApp.NewObjectView <ListView>(typeof(TraceEvent));
            var collectionReloaded = listView.CollectionSource.WhenCollectionReloaded().FirstAsync().SubscribeReplay();

            clientWinApp.CreateViewWindow().SetView(listView);

            await connecting.Timeout(Timeout);


            var detailViewCreated = application.WhenDetailViewCreated().FirstAsync().SubscribeReplay();



            application.NewObjectView <DetailView>(typeof(RLH));


            await broadcast.Timeout(Timeout);

            await receive.Timeout(Timeout);

            await detailViewCreated.Timeout(Timeout);

            await collectionReloaded;
            var   events = listView.CollectionSource.Objects <TraceEvent>().ToArray();

            events.FirstOrDefault(_ => _.Method == nameof(XafApplicationRxExtensions.WhenDetailViewCreated)).ShouldNotBeNull();
            events.FirstOrDefault(_ => _.Location == nameof(ReactiveLoggerHubService)).ShouldNotBeNull();
        }
        private static XPObjectSpaceProvider CreateObjectSpaceProvider(string CompanyId) //TODO use companyID
        {
            XpoTypesInfoHelper.ForceInitialize();
            ITypesInfo        typesInfo         = XpoTypesInfoHelper.GetTypesInfo();
            XpoTypeInfoSource xpoTypeInfoSource = XpoTypesInfoHelper.GetXpoTypeInfoSource();

            RegisterBOTypes(typesInfo);
            ConnectionStringDataStoreProvider dataStoreProvider = new ConnectionStringDataStoreProvider(MSSqlConnectionProvider.GetConnectionString("weedware101.database.windows.net,1433", "demodbjose", "*.mk3247", "demodbjose"));

            return(new XPObjectSpaceProvider(dataStoreProvider, typesInfo, xpoTypeInfoSource));
        }
Ejemplo n.º 24
0
        public static ExpressionEvaluator NewExpressionEvaluator(this CriteriaOperator criteriaOperator, object targetObject)
        {
            var objectType = targetObject.GetType();
            var wrapper    = new LocalizedCriteriaWrapper(objectType, criteriaOperator);

            wrapper.UpdateParametersValues(targetObject);
            var descriptor = GetEvaluatorContextDescriptor(objectType, targetObject);

            return(new ExpressionEvaluator(descriptor, wrapper.CriteriaOperator,
                                           XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary.CustomFunctionOperators));
        }
Ejemplo n.º 25
0
        public static XPObjectSpaceProvider CreateObjectSpaceProvider(string connectionString)
        {
            XpoTypesInfoHelper.ForceInitialize();
            ITypesInfo        typesInfo         = XpoTypesInfoHelper.GetTypesInfo();
            XpoTypeInfoSource xpoTypeInfoSource = XpoTypesInfoHelper.GetXpoTypeInfoSource();

            RegisterBOTypes(typesInfo);
            ConnectionStringDataStoreProvider dataStoreProvider = new ConnectionStringDataStoreProvider(connectionString);

            return(new XPObjectSpaceProvider(dataStoreProvider, typesInfo, xpoTypeInfoSource));
        }
        static void Main(string[] args)
        {
            DevExpress.ExpressApp.FrameworkSettings.DefaultSettingsCompatibilityMode = DevExpress.ExpressApp.FrameworkSettingsCompatibilityMode.v20_1;
            try {
                ValueManager.ValueManagerType = typeof(MultiThreadValueManager <>).GetGenericTypeDefinition();

                //string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
                InMemoryDataStoreProvider.Register();
                string connectionString = InMemoryDataStoreProvider.ConnectionString;


                Console.WriteLine("Starting...");
                ConsoleApplicationServerServerApplication serverApplication = new ConsoleApplicationServerServerApplication();

                serverApplication.ConnectionString = connectionString;

                Console.WriteLine("Setup...");
                serverApplication.Setup();
                Console.WriteLine("CheckCompatibility...");
                serverApplication.CheckCompatibility();
                serverApplication.Dispose();

                Console.WriteLine("Starting server...");
                QueryRequestSecurityStrategyHandler securityProviderHandler = delegate() {
                    return(new SecurityStrategyComplex(typeof(SecuritySystemUser), typeof(SecuritySystemRole), new AuthenticationStandard()));
                };

                SecuredDataServer dataServer =
                    new SecuredDataServer(connectionString, XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary, securityProviderHandler);
                RemoteSecuredDataServer.Initialize(dataServer);

                //"Authentication with the TCP Channel" at http://msdn.microsoft.com/en-us/library/59hafwyt(v=vs.80).aspx

                IDictionary t = new Hashtable();
                t.Add("port", 1425);
                t.Add("secure", true);
                t.Add("impersonate", true);

                TcpChannel channel = new TcpChannel(t, null, null);
                ChannelServices.RegisterChannel(channel, true);
                RemotingConfiguration.RegisterWellKnownServiceType(typeof(RemoteSecuredDataServer), "DataServer", WellKnownObjectMode.Singleton);

                Console.WriteLine("Server is started. Press Enter to stop.");
                Console.ReadLine();
                Console.WriteLine("Stopping...");
                ChannelServices.UnregisterChannel(channel);
                Console.WriteLine("Server is stopped.");
            }
            catch (Exception e) {
                Console.WriteLine("Exception occurs: " + e.Message);
                Console.WriteLine("Press Enter to close.");
                Console.ReadLine();
            }
        }
        public HttpResponseMessage quata_typemanage()
        {
            try
            {
                string ManageAnimalSupplier = HttpContext.Current.Request.Form["manageanimalsupplieroid"].ToString();
                //      string animalSupplieOid = HttpContext.Current.Request.Form["animalSupplieOid"].ToString();
                string quotatypeoid = HttpContext.Current.Request.Form["quotatypeoid"].ToString();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(ManageAnimalSupplier));
                XafTypesInfo.Instance.RegisterEntity(typeof(QuotaType));
                XafTypesInfo.Instance.RegisterEntity(typeof(ManageSubAnimalSupplier));
                XafTypesInfo.Instance.RegisterEntity(typeof(AnimalSupplie));
                XPObjectSpaceProvider           directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace                    ObjectSpace    = directProvider.CreateObjectSpace();
                List <objManageAnimalSupplier>  listdetail     = new List <objManageAnimalSupplier>();
                ManageAnimalSupplier_Modelinfo2 item           = new ManageAnimalSupplier_Modelinfo2();
                QuotaType objQuotaType = ObjectSpace.FindObject <QuotaType>(CriteriaOperator.Parse(" GCRecord is null and  oid = ? ", quotatypeoid));
                IList <ManageSubAnimalSupplier> objmanageSubAnimalSupplier = ObjectSpace.GetObjects <ManageSubAnimalSupplier>(CriteriaOperator.Parse("ProvinceOid.OrganizationOid= '" + ManageAnimalSupplier + "' ", null));
                ManageSubAnimalSupplier         manageanimalsupplie        = ObjectSpace.FindObject <ManageSubAnimalSupplier>(CriteriaOperator.Parse(" GCRecord is null and  [ProvinceOid.OrganizationOid]= ? ", ManageAnimalSupplier));
                if (objQuotaType.QuotaName == "โควตาปศุสัตว์จังหวัด")
                {
                    QuotaType_Model itemquota = new QuotaType_Model();
                    item.QuotaName = objQuotaType.QuotaName;
                    //item.OrganizationOid = manageanimalsupplie.ManageAnimalSupplierOid.OrganizationOid.Oid.ToString();
                    //item.Organizationname = manageanimalsupplie.ManageAnimalSupplierOid.OrganizationOid.SubOrganizeName;

                    foreach (ManageSubAnimalSupplier row in objmanageSubAnimalSupplier)
                    {
                        objManageAnimalSupplier detail = new objManageAnimalSupplier();
                        detail.ProvinceOid  = row.ProvinceOid.Oid.ToString();
                        detail.Provincename = row.ProvinceOid.ProvinceNameTH;
                        listdetail.Add(detail);
                    }
                    item.detail = listdetail;
                }
                else
                {
                    item.QuotaName = objQuotaType.QuotaName;
                }

                return(Request.CreateResponse(HttpStatusCode.OK, item));
            }

            catch (Exception ex)
            {                   //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
Ejemplo n.º 28
0
        public static void ValidateAndCommitChanges(this Session session)
        {
            var unitOfWork  = ((UnitOfWork)session);
            var objectSpace = new XPObjectSpace(XafTypesInfo.Instance, XpoTypesInfoHelper.GetXpoTypeInfoSource(), () => unitOfWork);
            var result      = Validator.RuleSet.ValidateAllTargets(objectSpace, session.GetObjectsToSave(), ContextIdentifier.Save);

            if (result.ValidationOutcome == ValidationOutcome.Error)
            {
                throw new Exception(result.GetFormattedErrorMessage());
            }
            unitOfWork.CommitChanges();
        }
        public HttpResponseMessage Activity_info()

        {
            try
            {
                string ObjectTypeOid = "b100c7c1-4755-4af0-812e-3dd6ba372d45"; //เพื่อช่วยเหลือภัยพิบัติ

                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(Activity));
                XPObjectSpaceProvider        directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace                 ObjectSpace    = directProvider.CreateObjectSpace();
                List <activity_Model>        list           = new List <activity_Model>();
                List <activityDetails_Model> detail         = new List <activityDetails_Model>();
                IList <Activity>             collection     = ObjectSpace.GetObjects <Activity>(CriteriaOperator.Parse("GCRecord is null and IsActive = 1 and MasterActivity = '" + ObjectTypeOid + "' ", null));
                {
                    if (collection.Count > 0)

                    {
                        foreach (Activity row in collection)
                        {
                            activity_Model Item = new activity_Model();
                            Item.ActivityNameOid = row.Oid.ToString();
                            Item.ActivityName    = row.ActivityName;
                            Item.ObjectTypeOid   = row.ObjectTypeOid.Oid.ToString();
                            Item.ObjectTypeName  = row.ObjectTypeOid.ObjectTypeName;
                            if (row.MasterActivity != null)
                            {
                                Item.MasterActivity = row.MasterActivity.Oid.ToString();
                            }

                            list.Add(Item);
                        }
                    }
                    else
                    {          //invalid
                        UserError err = new UserError();
                        err.status  = "false";
                        err.code    = "0";
                        err.message = "กรุณาใส่ข้อมูลให้เรียบร้อย";
                        return(Request.CreateResponse(HttpStatusCode.NotFound, err));
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
        protected override void CustomizeTypesInfo()
        {
            base.CustomizeTypesInfo();
            TypesInfo    xafTypesInfo = (TypesInfo)TypesInfo;
            var          xpotis       = xafTypesInfo.EntityStores.OfType <XpoTypeInfoSource>().FirstOrDefault();
            XPDictionary dict         = XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary;

            xafTypesInfo.RegisterEntities(xpotis.XPDictionary.Classes
                                          .OfType <XPClassInfo>()
                                          .Where(ci => ci.IsPersistent)
                                          .Select(ci => ci.ClassType)
                                          .ToArray());
        }