예제 #1
0
        private ObjectId GetDicPlugin(bool create)
        {
            // Словарь объекта
            var idDboDic = ExtDicHelper.GetDboExtDic(dbo, create);

            // Словарь ПИК
            var idDicPik = ExtDicHelper.GetDic(idDboDic, ExtDicHelper.PikApp, create, false);

            // Словарь плагина
            var idDicPlugin = ExtDicHelper.GetDic(idDicPik, pluginName, create, false);
            var res         = idDicPlugin;

            return(res);
        }
예제 #2
0
        /// <summary>
        /// Удаление словаря из объекта
        /// </summary>
        public void Delete([CanBeNull] string dicName = null)
        {
            var dicId = GetDicPlugin(false);

            if (!string.IsNullOrEmpty(dicName))
            {
                // Проверить. Если в словаре объекта есть только удаляемый словарь по имени, то удалить весь словарь объекта
                var dicDbo    = ExtDicHelper.GetDicEd(dicId);
                var dicDelete = dicDbo?.GetInner(dicName);
                if (dicDelete != null)
                {
                    if (dicDbo.Inners.Count != 1 || dicDbo.Recs.Any())
                    {
                        // Удаление только словаря с этим именем
                        dicId = ExtDicHelper.GetDic(dicId, dicName, false, false);
                    }
                }
            }

            // Удаление словаря
            ExtDicHelper.DeleteDic(dicId, dbo);
        }
예제 #3
0
        public DicED Load()
        {
            var dicId = GetDicPlugin(false);

            return(ExtDicHelper.GetDicEd(dicId));
        }
예제 #4
0
        /// <summary>
        /// Сохранение словаря в объект.
        /// dbo\ExtDic\Pik\Plugin\dic
        /// </summary>
        /// <param name="dic">Словарь для сохранения</param>
        public void Save(DicED dic)
        {
            var dicId = GetDicPlugin(true);

            ExtDicHelper.SetDicED(dicId, dic);
        }