gifts2017

Консоль запросов 1С и SQL (на основе View) + Edit (Управляемая форма)

Опубликовал Женька Ture (ture) в раздел Программирование - Инструментарий

Консоль запросов 1С хороша своим умением строить запросы 1С и SQL.
Позволяет редактировать прикладные объекты минуя логику приложения, на основе прямого редактирования таблиц на сервере SQL.
Также создаются интуитивно понятные View, которые позволяют работать с таблицами сервера SQL без затрат времени и производительности.

Консоль 1С хороша своим умением строить запросы.
Однако совершенно очевидна нехватка административного ресурса. Т.е. найдя экземпляр хранимого прикладного объекта через консоль запросов мы можем на него только поглазеть и поворчать.

Я взял кем-то пофиксенную консоль запросов (автор ее вполне может найтись и поставить мне плюсик) и добавил в нее нечто названное коротко "Edit".
"Edit" позволяет взглянуть на строки таблиц SQL хранящих сведений об объекте и подредактировать их.

Закладка "Соединение" позволит Вам указать сведения об SQL сервере. Галка "Windows Login" отменяет использование полей "User" и "Pass", зато подхватывает Ваши регистрационные данные к домену. Мне не известен способ передать в последнем случае произвольные "User" и "Pass", т.е. зарегистрироваться под произвольной учеткой из AD.

Если использованная учетная запись имеет достаточно прав, для редактирования таблиц SQL, то будет доступна операция редактирования. Для соединения от имени Вашей доменной учетки использован SQL Server Native Client 11.0 (если у Вас такого нет, то поправьте версию или пользуйтесь атентификацией SQL сервера , а не AD).

Пока Вы не нажали кнопку "Внести изменения SQL", изменения не отразятся в базе SQL. Совершенно очевидно, что "запись объекта" в этом случае носит характер удара ниже "ватерлинии" разработчикам 1С и прикладного решения.

Есть возможность удалить представления к таблицам на SQL и создать снова. Это позволить как-то ориентироваться в базе, если Вы смотрите на нее глазами SQL сервера. Не забывайте добавлять with(nolock) к имени таблицы или представления, чтоб исключить блокировки и "случайно" не внести изменения в базу (если Вы только учитесь). Работа с реальными таблицами через представления позволит обращаться к базе 1С из других источников и разработчики только спасибо скажут, т.к. теперь "там на SQL" все по русски написано и можно разобраться не дергая программиста 1С всякий раз.

Для работы с "прямыми запросами" добавил функционал на закладке "SQLQuery". При расшифровке ссылок будет выполняться поиск объекта (при двойном клике). 

 

Часто натыкаюсь на "Платное скачивание файла". Это меня как-то коробит. С одной стороны, я не ищу мелкого дохода, а с другой - я не получаю уплаченных Вами денег за скачивание моих обработок. Изменить доступ к файлу не могу (нет такой возможности). Но! eturin@gmail.com 

Помните, что риски использования Вами этой обработки (как уж заведено) ложатся на ваши плечи.

 

Скачать файлы

Наименование Файл Версия Размер
КонсольУ_Edit_ 274
.epf 51,36Kb
31.05.15
274
.epf 51,36Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение
Комментарии
0. Женька Ture (ture) 27.02.12 11:56
Консоль запросов 1С хороша своим умением строить запросы 1С и SQL.
Позволяет редактировать прикладные объекты минуя логику приложения, на основе прямого редактирования таблиц на сервере SQL.
Также создаются интуитивно понятные View, которые позволяют работать с таблицами сервера SQL без затрат времени и производительности.


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

0. Женька Ture (ture) 27.02.12 11:56
Консоль запросов 1С хороша своим умением строить запросы 1С и SQL.
Позволяет редактировать прикладные объекты минуя логику приложения, на основе прямого редактирования таблиц на сервере SQL.
Также создаются интуитивно понятные View, которые позволяют работать с таблицами сервера SQL без затрат времени и производительности.


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

1. Алексей Ситников (SiAl) 27.02.12 11:56
"Совершенно очевидно, что "запись объекта" в этом случае носит характер удара ниже "ватерлинии" разработчикам 1С и прикладного решения."

Если водила автомобиля со всей дури прёт на дерево, виноват ли конструктор автомобиля? Так что все вопросы к водиле автомобиля (админу), потому что пассажиры (юзеры) имеют право порулить.
2. UncleVader (UncleVader) 01.03.12 13:44
Ctl+BackSpace на удаление подзапроса, без предупреждения - большой косяк!!!
4. Елена Шекемова (ea_len) 04.04.12 09:39
Почему-то не активна кнопка "Открыть конструктор запроса"... Неудобно.
5. Женька Ture (ture) 04.04.12 10:39
В тонком клиенте пункт "Открыть конструктор запроса" отключен самой 1Сы
6. Петр Петров (jONES1979) 22.04.12 10:15
А для полных чайников, подскажите: Эта обработка расчитана только на базы, где данные хранятся на SQL-сервере, или будет работать с файловой-БД?
7. Женька Ture (ture) 22.04.12 18:19
to jONES1979
Это все для SQL и в большой степени даже не консоль, а интерфейс к данным 1C на сервере.
Чайник вполне обойдется первой закладкой, где строятся запросы к 1С (и не важно SQL или файловая). Остальные закладки будут бесполезны.
8. EfiopReal (Созинов) 02.08.12 09:25
Спасибо за обработку, как раз нужно делать запрос напрямую к базе sql, и нужна была обработка под УП
Но функционал по внесению изменений в базу sql - бомба замедленного действия, можно много дел натворить, хотя конечно иногда может пригодится.
Спасибо.
9. h00m (h00m) 06.08.13 16:52
Лично мне обработка помогла с тем, что я вижу сразу нужные таблицы, не надо ничего искать. Спасибо огромное разработчику.
А есть ли возможность включить конструктор? По-моему через внесение изменение в конфигурацию можно было.
10. Александр Кузин (sashocq) 16.10.13 12:00
Супер! То, что мне было нужно. Только там есть 2 бага:
1. Если отметить "Для ссылок выводить ГУИД", то на перечислениях вылетает ошибка, т. к. у перечисления нет метода УникальныйИдентификатор(). Для себя я добавил такую функцию:
Функция ПолучитьУникальныйИдентификатор(Ссылка)
	Стр = ЗначениеВСтрокуВнутр(Ссылка);
	ПозДвоет = Найти(Стр, ":");
	Стр = Сред(Стр, ПозДвоет + 1, 32);
	//GUID: 0907e882-80e2-47fe-8017-007637a9add1
	//Стр:  8017007637a9add147fe80e20907e882
	//   25:                        0907e882
	//   21:                    80e2
	//   17:                47fe
	//    1:8017
	//    5:    007637a9add1
	Стр = Сред(Стр, 25, 8) + "-" + Сред(Стр, 21, 4) + "-" + Сред(Стр, 17, 4) + "-" + Лев(Стр, 4) + "-" + Сред(Стр, 5, 12);
	Возврат Новый УникальныйИдентификатор(Стр);
КонецФункции
...Показать Скрыть


2. Для полей вида Fld2115_S создается поле ИмяПоля5_S вместо ИмяПоля_S. Это тоже легко исправляется в модуле.
11. Татьяна Крестьянкина (oleg212) 03.01.14 11:41
Спасибо за обработку, очень пригодиться делать запросы напрямую к базе sql.