/// <summary>
        /// Удалить все блокировки текущего юзера (какие есть в базе).
        /// В качестве сервиса данных используется переданный сервис данных.
        /// <param name="dataService">Сервис данных.</param>
        /// </summary>
        public static void ClearAllUserLocks(IDataService dataService)
        {
            var ds = dataService ?? DataServiceProvider.DataService;

            // убиваем все блокировки, оставшиеся с предыдущих времен
            SQLWhereLanguageDef lg = SQLWhereLanguageDef.LanguageDef;
            var vd = new VariableDef(lg.GetObjectTypeForNetType(typeof(string)), "UserName");

            Function func = lg.GetFunction(
                lg.funcEQ, vd, GetUserName() + (UseMachineNameInKey ? " @ " + Environment.MachineName : string.Empty));

            var lcs1 = new LoadingCustomizationStruct(0);

            var view = new View(typeof(LockData), View.ReadType.WithRelated);

            lcs1.Init(null, func, new[] { typeof(LockData) }, view, null);

            DataObject[] arr = ds.LoadObjects(lcs1);

            foreach (DataObject obj in arr)
            {
                obj.SetStatus(ObjectStatus.Deleted);
            }

            ds.UpdateObjects(ref arr);
        }
Beispiel #2
0
        public void FunctionalLanguageDefGetObjectTypeForNetType1Test()
        {
            FunctionalLanguageDef langDef = new SQLWhereLanguageDef();

            var result = langDef.GetObjectTypeForNetType(typeof(DetailArray));

            Assert.Null(result);
        }
Beispiel #3
0
        public void FunctionalLanguageDefGetObjectTypeForNetTypeTest()
        {
            FunctionalLanguageDef langDef = new SQLWhereLanguageDef();

            var result = langDef.GetObjectTypeForNetType(typeof(System.Decimal));

            Assert.Equal(result.NetCompatibilityType.Name, "Decimal");
        }