Exemplo n.º 1
0
        public static void OnWindowCreated(int WindowType)
        {
            if (WindowType == 3 || WindowType == 4)
            {
                var result = _TeamCodingChecks.CheckBeforeOpen(out string ErrorMsg);
                Seri.Log.Here().Debug($"OnWindowCreated ChackResult: {result}");

                if (result.HasFlag(eTeamCodingChecksResult.ProviderNotSet))
                {
                    _CallbackManager.GetDelegate <IDE_SetStatusMessage>()?.Invoke($"Ошибка TeamCoding: {ErrorMsg}");
                }
                else if (result.HasFlag(eTeamCodingChecksResult.Restrict))
                {
                    _CallbackManager.GetDelegate <IDE_SetStatusMessage>()?.Invoke(ErrorMsg);
                }
            }
        }
Exemplo n.º 2
0
        public T GetDbObject <T>(bool silent = false) where T : IDbObject
        {
            Seri.Log.Here().Debug("Begin GetDbObject");

            int IDEWindowType = _CallbackManager.GetDelegate <IDE_GetWindowType>()?.Invoke() ?? 0;

            if (IDEWindowType != 4 && IDEWindowType != 3)
            {
                if (silent)
                {
                    return(default);
Exemplo n.º 3
0
        public string CreateMenuItem(int index)
        {
            if (IsRibbonMenu == null)
            {
                IsRibbonMenu = _CallbackManager.GetDelegate <SYS_Version>().Invoke() >= 1200;
            }

            if (IsRibbonMenu.Value && index == 1)
            {
                return($"TAB={TabName}");
            }
            if (IsRibbonMenu.Value && index == 2)
            {
                return($"GROUP={GroupName}{GroupIndexStr}");
            }

            var item = MenuItems.FirstOrDefault(x => x.Index == index);

            if (item != null)
            {
                // Не отображаем меню TeamCoding если он отключен
                if (!_Settings.TEAMCODING_ENABLE &&
                    (item.MenuName == "TeamCoding" ||
                     item.MenuName == "CheckOut" ||
                     item.MenuName == "CheckIn"))
                {
                    return(null);
                }

                if (IsRibbonMenu.Value)
                {
                    return($"ITEM={item.MenuName}");
                }
                else
                {
                    return($"{TabName} / {item.MenuName}");
                }
            }
            return(null);
        }
Exemplo n.º 4
0
        private bool GetResult(out SQLResult result, out string[] Headers, out string ErrorMsg)
        {
            result  = new SQLResult();
            Headers = null;

            if (!RunExecuteQuery(out ErrorMsg))
            {
                return(false);
            }

            // Делегаты для работы с PL/SQL Developer
            SQL_FieldName SQL_FieldNameCallback = _CallbackManager.GetDelegate <SQL_FieldName>();
            SQL_Eof       SQL_EofCallback       = _CallbackManager.GetDelegate <SQL_Eof>();
            SQL_Field     SQL_FieldCallback     = _CallbackManager.GetDelegate <SQL_Field>();
            SQL_Next      SQL_NextCallback      = _CallbackManager.GetDelegate <SQL_Next>();

            int fieldCount = GetFieldCount();

            // Чтение заголовков
            Headers = new string[fieldCount];
            for (int i = 0; i < fieldCount; i++)
            {
                Headers[i] = SQL_FieldNameCallback(i);
            }

            Seri.Log.Here().Information("Начинаем вытягивать SQL_EofCallback");

            // Чтение данных
            while (!SQL_EofCallback())
            {
                object[] row = new object[fieldCount];
                for (int i = 0; i < fieldCount; i++)
                {
                    row[i] = SQL_FieldCallback(i);
                }
                result.AddRow(new SQLRow(row));
                SQL_NextCallback();
            }

            Seri.Log.Here().Information("SQL_EofCallback готов");

            return(true);
        }