Просмотр структуры БД, парсинг запросов SQL

0. 4442 26.02.16 17:28 Сейчас в теме
Получение некоторых данных о БД и сеансе, просмотр внутренней структуры таблиц БД 1С в SQL, "перевод" запросов SQL в терминологию 1С. Чуть больше, чем "ПолучитьСтруктуруХраненияБазыДанных"; чуть удобнее, чем аналоги; чуть другая, чем КИП.

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. cleaner_it 215 29.02.16 14:44 Сейчас в теме
Хорошая задумка и реализация)
2. Yashazz 4442 29.02.16 21:49 Сейчас в теме
Слушайте, а правда, неужели нет аналогов на ИС, которые бы показывали, например, кластерный ли индекс, уникальный ли? Или я искал хреново?
3. asved.ru 36 01.03.16 07:02 Сейчас в теме
TrustedConnection=Yes приводит к попытке windows-авторизации на SQL. Если логин USR1CV8 таким правом не обладает (а исходя из соображений безопасности - и не должен), то при попытке подключения вылезает исключение.
7. Yashazz 4442 01.03.16 19:42 Сейчас в теме
(3) asved.ru, да, есть такой момент. Собираюсь его допиливать.
(5) ага. Только мне потестить не на чем.
(6) цветовая разметка. Я смотрю, в каких индексных таблицах есть поле, и если это кластерный, то зелёный, иначе синий. Разумеется, это не полномасштабная схема плана, каковую анализирует КИП, но пока хоть так.
4. asved.ru 36 01.03.16 07:07 Сейчас в теме
P.S. Проблему, описанную тут https://habrahabr.ru/post/220863/ не забарывал

Это не проблема, а закономерная трудность, возникающая у изобретателей велосипедов на квадратных колесах вроде автора статьи с хабра.

и думаю, что можно просто по Order'у попробовать состыковать с порядком в метаданных, да и взять как есть

Да.
5. asved.ru 36 01.03.16 07:10 Сейчас в теме
PS а вот если оператор обладает правом windows-логина на SQL, то запросы в SQL приятнее будет делать с клиента.
6. artbear 1424 01.03.16 12:10 Сейчас в теме
И, ура, наконец-то можно видеть, где будет поиск по кластерному индексу, где по некластерному, а какие поля запроса ваще не индексированы.

На картинках не увидел эту фичу.
Расскажи про нее.
8. Serj1C 480 02.03.16 10:17 Сейчас в теме
Проблему с перечислениями я решил просто. Завел регистр сведений ЗначенияПеречислений (Измерения: ИмяПеречисления, Порядок, Ссылка; Ресурсы: Значение, Синоним)
Завел регламентное задание, которое это регистр заполняет/перезаполняет:

Процедура Заполнить() Экспорт
	
	Менеджер = РегистрыСведений.ЗначенияПеречислений.СоздатьНаборЗаписей();
	
	Для Каждого Эл Из Метаданные.Перечисления Цикл
		Для Каждого Зн Из Эл.ЗначенияПеречисления Цикл
			Стр = Менеджер.Добавить();
			Стр.ИмяПеречисления = Эл.Имя;
			Стр.Порядок = Эл.ЗначенияПеречисления.Индекс(Зн);
			Стр.Значение = Зн.Имя;
			Стр.Синоним = Зн.Синоним;
			Стр.Ссылка = Перечисления[Стр.ИмяПеречисления][Стр.Порядок];
		КонецЦикла;
	КонецЦикла;
	Менеджер.Записать();
	
КонецПроцедуры

Процедура Очистить() Экспорт
	
	Менеджер = РегистрыСведений.ЗначенияПеречислений.СоздатьНаборЗаписей();
	Менеджер.Записать();
	
КонецПроцедуры
Показать


И в прямых запросах могу спокойно делать соединения по ссылке и получать нормальные значения
9. slawa 26 02.03.16 12:45 Сейчас в теме
Не смог подключиться
В чем может быть проблема? Спасибо.
Задал настройки получил ошибку (скриншот № 1) Причем тут USR1CV8 ?
Под sa подключаюсь нормально (№ 2)
Далее точка останова и строка подключения


Прикрепленные файлы:
10. Alias 171 02.03.16 13:21 Сейчас в теме
(9) Да, такая же фигня. См (3) и (7). Нужно закомментировать "|Trusted_Connection=Yes;" несколькими строчками выше.
11. ulya_zz 21.11.18 10:01 Сейчас в теме
Подскажите, пожалуйста, как увидеть дебиторскую или кредиторскую задолженность в структуре таблиц 1С?
13. Yashazz 4442 03.12.18 09:44 Сейчас в теме
(11) Задолженность это конструкция смысловая, бизнесовая, к таблицам 1С отношения не имеет. Моделируется обычно регистрами накопления, отвечающими за взаиморасчёты, если речь об упр.базах (таких, как УТ), или регистром бухгалтерии по 60/62 счетам. Структура таблиц тут ничего не даст, вопрос не в эту ветку)

(12) Может, поубирать всю препроцессорную разметку, и сработает?
12. Anton18 23.11.18 17:01 Сейчас в теме
Добрый день.
На самописной конфе на 1С:Предприятие 8.2 (8.2.18.82) падает при открытии - ошибка во вложении.
На ней же на 1С:Предприятие 8.3 (8.3.12.1685) получаю другую ошибку - во вложении 83

Может я что-то не так делаю?
Может ли она проанализировать структуру метаданных и сказать где больше всего нагрузка идёт и из-за чего?

Заранее спасибо
Прикрепленные файлы:
14. Salexey 15.07.19 20:20 Сейчас в теме
15. Yashazz 4442 15.07.19 20:24 Сейчас в теме
(14) Ага. Так оно и сделано немноооожечко позже.
Оставьте свое сообщение
Вакансии
Старший тестировщик 1С
Москва
зарплата от 150 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 270 000 руб.
Полный день

Аналитик 1С
Москва
зарплата от 200 000 руб.
Полный день

Инженер 1С
Ессентуки
зарплата от 120 000 руб. до 144 000 руб.
Полный день

Программист 1С
Краснознаменск (Московская обл.)
зарплата от 150 000 руб. до 250 000 руб.
Полный день