gifts2017

Дополненная обработка Консоль запросов (обычный + управляемый)

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

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

В управляемом режиме часть функционала может быть не реализована.

Возможности обработки:

  • Автоподстановка (Intellisense)
  • Выполнение произвольного кода над результатом запроса
  • Запуск обработки из конфигуратора для отладки запроса (с подставленными параметрами)
  • Запоминание ширины колонок в таблице результов запроса
  • Формирование из текста запроса кода, для вставки в конфигурацию
  • Вставка текста запроса из кода конфигуратора
  • Групповые(и одиночные) действия над результатами запроса:
    • Проведение документов
    • Снятие проведения документов
    • Пометка удаления объектов
    • Снятие пометки удаления объектов
  • Быстрое формирование запросов
    • все документы
    • выбранные документы
    • все справочники
    • выбранные справочники
  • Заполнение параметра(списка значений) на основе результата запроса 
  • пр...

История версий:   

18.11.2016, релиз 3.0.49 (beta)
Изменен функционал
  • Внимание!!! Изменися формат файла с запросами. Для работы в старых версиях обработки новый формат не подходит. Делайте копии старых версий!  
  • Переработка интерфейса (использована библиотека картинок Дмитрия Цымбала - MasterPrometey@mail.ru)
Добавлен функционал
  • кнопка с информацией о результате запроса (количество строк результата запроса)
    • загрузка и сохранение файла с запросами в новом формате для режима "Обычное приложение"
Исправлены ошибки
  • Рефакторинг кода
23.06.2016, релиз 3.0.2 (beta)
Добавлен функционал
  • Внесены изменения от пользователя Коршанова Виктория(Chif13, http://infostart.ru/profile/24564/) в функцию кзПодставитьПараметр в части формирования кода заполнения параметра с типом "Документ" (используется при "выгрузке" текста запроса в код 1С)
Изменен функционал
  • рефакторинг кода
  • Управляемый режим. исправление ошибок, доработки
11.01.2016, релиз 3.0.1 (beta)
Добавлен функционал
  • Управляемый режим. Добавлена возможность комментирования/снятие комментариев текста запроса комбинациями клавиш Ctrl+/ | Ctrl+Shift+/ соответственно
04.01.2016, релиз 3.0.0 (beta)
Изменен функционал
  • Полностью переработан интерфейс для управляемых форм (Внимание!!! Данный релиз в части работы под управляемыми формами находится в бета тестировании. Формат файлов для сохраненных запросов будет меняться, поэтому при работе в управляемом режиме сохраняйте запросы в новые файлы, чтобы не затереть данные, сохраненные в режиме для обычных форм!!!)
  • Управляемый режим. Реализован функционал отладки запросов на сервере (по аналогии с обработкой Владимира Тезина http://infostart.ru/public/72969/)

Полностью история изменений доступна по кнопке "О программе" меню "Информация".

Отблагодарить автора

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

Наименование Файл Версия Размер Кол. Скачив.
consquery83.epf релиз 3.x (бета)
.epf 330,95Kb
18.11.16
8
.epf 330,95Kb 8 Скачать
consquery82.epf релиз 2.x
.epf 269,41Kb
18.11.16
133
.epf 269,41Kb 133 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Евгений - (zenechka) 16.05.07 18:57
Не плюй в колодец вылетит не поймаешь. По поводу пароля вопрос вечный. Я решил запоролить. По каким причинам. Да кому какое дело. Заинтересовало что-то - могу кинуть фрагмент кода без проблем.
терь по пунктам :)
1. я все-таки на excel задумывал, можно то конечно можно, но нужно ли
2. что есть запрос? Если это элемент дерева запросов в обработке, то вместе с текстом запроса копируются все его параметры при копировании этого элемента. Т.е все понятно но что конкретно...
3. вот по поводу, того что ты называешь в 3-м пункте я уже объяснял, что не всегда обработка в цикле линейна, и соответственно красивые буквы показывающие какое то время, менее правдивы, чем обычные проценты. Тут может я не прав. Возможно и добавлю.
4. А кто сказал, что нельзя написать произвольный текст. Все что пишется, подставлятся в команду Выполнить(). Т.е. никакой жесткой привязки к результату запроса нет.

"Да, и еще, убей это позорище от программистов 1С с номерами колонок." - мысли читать не умею пока еще. Об чем речь?

А в целом спасибо за внимание к моей обработке :)
4. artbear2 (artbear) 30.05.07 15:10
В принципе, понравилось. Но есть замечания:
1) каким образом реализовано, например, выполнение документов в транзакции?
все доки в одной транзакции? или фиксированное число доков в одной транзакции, т.е. транзакций много ?
2) Пароль, конечно, мешает :(
Соответственно возникает куча глупых вопросов типа п.1 :(
5. artbear2 (artbear) 30.05.07 15:35
В продолжение
1) Сам понимаешь, если все доки проводятся в одной транзакции, это очень плохо :(
2) Если бы не было пароля, можно было бы добавить автовызов обработки с заполнением нужных параметров и выполнением нужного кода.

Жду более подробную инфу.
6. Евгений - (zenechka) 30.05.07 16:54
1. Да, все в одной транзакции. Сделал навсякий случай. Согласен с замечанием. Добавлю параметр "количество действий за одну транзакцию".
2. По поводу автозапуска обработки с параметрами. Такие предложения уже поступали. Хотелось бы уточнение. В каких случаях планируется запускать ее с параметрами. Ведь получится столько параметров, что пользование обработкой потеряет смысл. Приведите пример как данный функционал может облегчить жиздь :)
Есть вариант загрузка из кода программы в обработку с удалением мусора(в виде определения переменных) и заполнением параметров. Это планируется релизовать.
7. Евгений - (zenechka) 02.06.07 16:34
хотя....по поводу транзакции. Возможность проводить(удалять и т.д.) объекты в транзакции я делал для случаев, когда даные действия необходимо откатить, если на каком-нибудь объекте произошел сбой. В противном случае можно не использовать транзакцию(для это выводится запрос на использовании транзакции или нет перед выполнением групповых действий над объектами).
8. Евгений - (zenechka) 04.12.07 09:03
29.11.2007 1.13.50
часть процедур и функций перенесена из модуля объекта в модуль формы

26.11.2007 1.13.44
добавлен префикс к процедурам и функциям модуля

10.10.2007 1.13.44
доработка интерфейса

10.10.2007 1.13.43
очередное исправление ошибки при заполнении параметров из буфера обмена

09.08.2007
исправление ошибки при заполнении параметров из буфера обмена
9. Сергей Ожерельев (Поручик) 16.11.11 00:11
(0) Некоторые пиктограммы в верхней панели не показываются. Скрин
Прикрепленные файлы:
10. Евгений - (zenechka) 16.11.11 00:16
Речь о меню со стрелками?
Там не предполагался вывод пиктограммы.
11. Сергей Ожерельев (Поручик) 16.11.11 08:18
(10) Дело твоё, хотя так не понятно, что в этих меню.
12. Евгений - (zenechka) 16.11.11 09:58
(11)Если не понятно, то надо думать как сделать понятно :)
Буду подумать.
13. EvgeniuXP EvgeniuXP (EvgeniuXP) 16.11.11 23:56
Не плюй в колодец вылетит не поймаешь. По поводу пароля вопрос вечный. Я решил запоролить. По каким причинам. Да кому какое дело. Заинтересовало что-то - могу кинуть фрагмент кода без проблем.
терь по пунктам
1. я все-таки на excel задумывал, можно то конечно можно, но нужно ли
2. что есть запрос? Если это элемент дерева запросов в обработке, то вместе с текстом запроса копируются все его параметры при копировании этого элемента. Т.е все понятно но что конкретно...
3. вот по поводу, того что ты называешь в 3-м пункте я уже объяснял, что не всегда обработка в цикле линейна, и соответственно красивые буквы показывающие какое то время, менее правдивы, чем обычные проценты. Тут может я не прав. Возможно и добавлю.
4. А кто сказал, что нельзя написать произвольный текст. Все что пишется, подставлятся в команду Выполнить(). Т.е. никакой жесткой привязки к результату запроса нет.

"Да, и еще, убей это позорище от программистов 1С с номерами колонок." - мысли читать не умею пока еще. Об чем речь?

А в целом спасибо за внимание к моей обработке
14. sergej anonymous (ksv74) 17.11.11 00:20
(13) EvgeniuXP, заминусовать что ли за перепост?
Поручик; +1 Ответить 1
15. Сергей Ожерельев (Поручик) 17.11.11 00:30
(14) Рейтинг: 0. Стартмани набивает.
16. Александр Иванов (dkprim) 17.11.11 06:39
интересная публикация. буду пробовать и сравнивать с подобными. ищу наиболее функциональную и эргономичную.
17. Петр Лунегов (pvlunegov) 25.11.11 12:51
Обработка замечательная, спасибо автору!

Нашел опечатку на последней картинке - "Стока поиска". Настораживает.
18. Евгений - (zenechka) 25.11.11 15:19
19. Сергей Ожерельев (Поручик) 27.11.11 22:41
(18) Заодно дополнить функционал этой фичей http://infostart.ru/public/90482/ .
Параметры ИБ дополнить указанием типа платформы (8.1 или 8.2)
20. Сергей Ожерельев (Поручик) 10.12.11 18:59
21. Сергей Ожерельев (Поручик) 10.12.11 19:56
(18) Опечатка.
Модуль формы Форма

	Если Установить Тогда					
		
		Если Версия = "8.2" Тогда 
			V8COMConnector = Новый COMОбъект("V82.COMConnector");
		ИначеЕсли Версия = "8.2" Тогда 
			V8COMConnector = Новый COMОбъект("V81.COMConnector");
		Иначе
			V8COMConnector = Новый COMОбъект("V.COMConnector");
		КонецЕсли;
...Показать Скрыть


Лучше так

	Если Установить Тогда					
		
		Если Лев(Версия, 3) = "8.2" Тогда 
			V8COMConnector = Новый COMОбъект("V82.COMConnector");
		ИначеЕсли Лев(Версия, 3) = "8.1" Тогда 
			V8COMConnector = Новый COMОбъект("V81.COMConnector");
		Иначе
			V8COMConnector = Новый COMОбъект("V.COMConnector");
		КонецЕсли;
...Показать Скрыть



Для списка баз 8.1 версия платформы при разборе файла со списком баз не устанавливается.
22. Евгений - (zenechka) 14.12.11 12:24
(19) Спасибо. Исправил. Не учел, что версия может содержать релизы... и понаделал опечаток.
Есть правда нюанс..старая версия *.v8i не содержит информации по версии.
Можно при пустой версии считать что это 8.1 или добавить попытку и пробовать подключать с разными коннекторами..вобщем подумаю еще

Добавление функционала по заполнению обработки "Поиск и замена значений" добавлять не планирую, так как появится завязка на внешний функционал, который прийдется отслеживать.
При желании это может каждый сделать..код открыт
23. Сергей Ожерельев (Поручик) 14.12.11 13:43
(22) 8.0 давно не актуально, можно по дефолту считать 8.1
24. Alex Koso (AlexKoso) 14.12.11 14:48
давний поклонник сего произведения. Евгений, респект ;)
25. Евгений - (zenechka) 14.12.11 14:50
26. Noy14 - (Noy14) 17.01.12 08:36
<<
(18) Заодно дополнить функционал этой фичей http://infostart.ru/public/90482/ .
Параметры ИБ дополнить указанием типа платформы (8.1 или 8.2)
>>

Поддерживаю
27. Евгений - (zenechka) 17.01.12 09:09
28. Anna Kustova (VIP_1392) 09.02.12 14:03
интересная публикация. буду пробовать и сравнивать с подобными. Благодарю!)))
29. Сергей Ожерельев (Поручик) 19.02.12 02:42
(27) Внизу мой вариант процедуры КоманднаяПанельФормыВыгрузитьТекстЗапроса из основной формы. В оригинале объявление запроса и формирование кода выборки происходит только в случае, если определены параметры запроса, что не всегда требуется.

Процедура КоманднаяПанельФормыВыгрузитьТекстЗапроса(Элемент)
	
	ТекстЗапроса = ЭтаФорма.ПолучитьТекстЗапроса(Истина) ; 
	
	ПараметрыЗапроса = кзПолучитьПараметрыЗапроса(ТекстЗапроса, True);
	
	Результат = "";
	
	//[begin] Added by Sergey. http://infostart.ru/profile/18346/
	//17.02.2012 16:53:42
	Результат = "Запрос = Новый Запрос;" + Символы.ПС;
	Результат = Результат + "Запрос.Текст = """ + Символы.ПС;
	//[end] Added 
	
	//Символ(34)  - " (кавычки)
	//Символ(13)  - cr (возврат коретки)
	Для СЦ = 1 по СтрЧислоСтрок(ТекстЗапроса) цикл
		ТекСтр = СтрЗаменить(СтрПолучитьСтроку(ТекстЗапроса,СЦ), Символ(13), ""); 
		ТекСтр = СтрЗаменить(ТекСтр,Символ(34),Символ(34) + Символ(34)); 
		Если Лев(СокрЛП(ТекСтр),1)<> "|" Тогда
			Результат = Результат + "|" + ТекСтр + Символы.ПС;
		КонецЕсли; 	
	КонецЦикла;
	Результат = Результат  + "|"";" + Символы.ПС;
	
	Если ПараметрыЗапроса <> Неопределено Тогда
		Для каждого ТекПараметрЗапроса Из кзПолучитьПараметрыЗапроса(ТекстЗапроса) Цикл
			СтрокаСПараметром = ЭтаФорма.мФормаПараметров.Параметры.Найти(ТекПараметрЗапроса.Имя, "ИмяПараметра");
			Если СтрокаСПараметром = Неопределено Тогда 
				Сообщить("Не задан параметр """ + ТекПараметрЗапроса.Имя + """");
			ИначеЕсли ТипЗнч(СтрокаСПараметром.ЗначениеПараметра) = Тип("СписокЗначений") Тогда
				ЗначениеПараметра = "кзСписок" + ТекПараметрЗапроса.Имя;
				Результат = Результат + ЗначениеПараметра + " = Новый СписокЗначений;" + Символы.ПС;
				Для каждого ТекЗначениеСписка Из СтрокаСПараметром.ЗначениеПараметра Цикл
					Результат = Результат + "кзСписок" + ТекПараметрЗапроса.Имя + ".Добавить(" + кзПодставитьПараметр(ТекЗначениеСписка.Значение) + ");" + Символы.ПС;
				КонецЦикла; 
			Иначе
				ЗначениеПараметра = кзПодставитьПараметр(СтрокаСПараметром.ЗначениеПараметра);
			КонецЕсли;
			Результат = Результат + "Запрос.УстановитьПараметр(""" + ТекПараметрЗапроса.Имя + """, " + 
				?(СтрокаСПараметром = Неопределено, "", ЗначениеПараметра) + ");" + Символы.ПС;
		КонецЦикла; 
		
		Результат = Результат + Символы.ПС;

	Конецесли;
	
	//[begin] Added by Sergey. http://infostart.ru/profile/18346/
	//17.02.2012 16:52:18
	Если Элемент.Имя = "ВыгрузитьТекстЗапроса" Тогда
		Результат = Результат + "Результат = Запрос.Выполнить();" + Символы.ПС;
		Результат = Результат + "Выборка = Результат.Выбрать();" + Символы.ПС;
		Результат = Результат + "Пока Выборка.Следующий() Цикл" + Символы.ПС;
		Результат=Результат + "КонецЦикла;"+Символы.ПС;
	ИначеЕсли Элемент.Имя = "ВыгрузитьТекстЗапросаВТЗ" Тогда
		Результат = Результат + "Результат = Запрос.Выполнить();" + Символы.ПС;
		Результат = Результат + "Выборка = Результат.Выгрузить();" + Символы.ПС;
		Результат = Результат + "Для каждого СтрокаТЗ Из Выборка Цикл" + Символы.ПС;
		Результат=Результат + "КонецЦикла;"+Символы.ПС;
	КонецЕсли;
	//[end] Added 

	Ответ = Вопрос("Скопировать в буфер?", РежимДиалогаВопрос.ДаНетОтмена);
	Если Ответ = КодВозвратаДиалога.Да Тогда
		кзСкопироватьВБуфер(ПолучитьФорму("Точка"),Результат);
	ИначеЕсли Ответ = КодВозвратаДиалога.Нет Тогда
		ТД = Новый ТекстовыйДокумент(); 
		ТД.УстановитьТекст(Результат);
		ТД.Показать(,); 
	КонецЕсли;
КонецПроцедуры
...Показать Скрыть
30. Евгений - (zenechka) 20.02.12 13:47
(29) Спасибо, добавил Ваш код, выложил на свой сайт, сюда руки не доходят выложить :)
Постараюсь сегодня выложить.
32. mailrum2004 10.05.12 13:15
Нужна была обработка для перепроведения документов из результатов запроса. Нашел Вашу. Спасибо.
33. Владимир Бабайцев (discant) 19.07.12 10:24
Спасибо! оччень полезная работа!
34. Евгений - (zenechka) 19.07.12 10:26
35. Станислав Чернов (uinx) 08.08.12 05:21
Не соединяется с SQL - базами, если имя ИБ содержит пробелы. (пример: "baza new")


надо заменить строку в коде:

//серверный вариант
СтрокаСоединения = "Srvr = " + СокрЛП(SQL_Сервер) + ";Ref = """ + СокрЛП(SQL_БазаДанных);

На такую:
СтрокаСоединения = "Srvr = " + СокрЛП(SQL_Сервер) + ";Ref = """ + СокрЛП(SQL_БазаДанных) + """";
36. Сергей Ожерельев (Поручик) 12.09.12 11:50
(34) Скачал. В модуле обработки
апНазваниеОбработки		= "Консоль запросов";
апВерсияОбработки			= "1.17.11";

А задекларирована версия 1.17.12
37. Евгений - (zenechka) 12.09.12 16:08
(36) Спасибо.
Не было времени выложить исправленную версию. Теперь за одно выложу новую версию
38. Евгений Кузнецов (kuzev) 13.09.12 13:52
Часто использую Вашу обработку. Спасибо.
39. Евгений - (zenechka) 13.09.12 14:23
40. Сергей Ожерельев (Поручик) 18.09.12 21:17
(39) Не хватало возможности выполнить пакет, для отладки и просмотра результатов пакетных запросов без временных таблиц, как в консоли от Чистова aka GROOVY.
Во вложении текст модуля формы. Пару фрагментов кода выдрал из той консоли. Все вставки выделены моими комментариями.
Модификация добавляет кнопку "Выполнить пакет" в верхнюю командную панель.
Прикрепленные файлы:
new 3.zip
41. Евгений - (zenechka) 19.09.12 11:11
(40) Добавил данный функционал. Описание в информации к обработке.
42. Евгений - (zenechka) 19.09.12 11:52
(35) спасибо, хоть с опозданием, но исправил :)
43. Сергей Ожерельев (Поручик) 19.09.12 12:28
(42) В процедуре модуля формы КоманднаяПанельФормыВыполнитьПакет способ выгрузки у Чистова не зря принудительно менялся. Иначе при выполнении пакета можно получить ошибку, если указано Дерево.

Процедура КоманднаяПанельФормыВыполнитьПакет(Кнопка)
	СпособВыгрузки = 1;
	ВыполнитьЗапрос(,,Истина);
	ЭлементыФормы.ПанельРезультата.ТекущаяСтраница = ЭлементыФормы.ПанельРезультата.Страницы[0]; //позиционируемся на первую страницу
КонецПроцедуры
...Показать Скрыть
44. Евгений - (zenechka) 19.09.12 15:27
(43) Спасибо. Исправил. Богат день на релизы получился.
45. shurikvz 09.11.12 10:35
Доработка обработки, для повышения точности замера времени выполнения запроса до миллисекунд:
1. В начале модуля формы объявляем переменную:
//Начало изменений shurikvz 09/11/2012
Перем мЯваСкрипт; //Использована идея DimitrO   (http://www.itland.ru/forum/lofiversion/index.php/t18959.html)
//Конец изменений shurikvz 09/11/2012
...Показать Скрыть


2. В раздел

////////////////////////////////////////////////////////////­////////////////////
// ОПЕРАТОРЫ ОСНОВНОЙ ПРОГРАММЫ

добавляем следующий код:
//Начало изменений shurikvz 09/11/2012
Попытка
	мЯваСкрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
	мЯваСкрипт.Language = "javascript";
Исключение
	Сообщить("Не возможно подключить MSScriptControl.ScriptControl");
КонецПопытки;
//Конец изменений shurikvz 09/11/2012
...Показать Скрыть


3. В процедуре Процедура ВыполнитьЗапрос(ОбъектЗапрос = Неопределено, ЭлементТаблицаРезультата = Неопределено, ВыполнитьПакет = Ложь) делаем два изменения:
строку
мДатаНачалаВыполнения = ТекущаяДата();

меняем на
//Начало изменений shurikvz 09/11/2012
Если мЯваСкрипт = Неопределено Тогда
	мДатаНачалаВыполнения = ТекущаяДата();
Иначе
	мДатаНачалаВыполнения = мЯваСкрипт.Eval("(new Date()).valueOf()");
КонецЕсли;
//Конец изменений shurikvz 09/11/2012
...Показать Скрыть

строку
мДатаОкончанияЗапроса = ТекущаяДата();

меняем на
//Начало изменений shurikvz 09/11/2012
Если мЯваСкрипт = Неопределено Тогда
	мДатаОкончанияЗапроса = ТекущаяДата();
Иначе
	мДатаОкончанияЗапроса = мЯваСкрипт.Eval("(new Date()).valueOf()");
КонецЕсли;
//Конец изменений shurikvz 09/11/2012
...Показать Скрыть


4. Функцию Функция кзПреобразоватьСекунды(Секунд) Экспорт модифицируем следующим образом:
Функция кзПреобразоватьСекунды(Секунд) Экспорт

	//Начало изменений shurikvz 09/11/2012
	Если мЯваСкрипт <> Неопределено Тогда
		//Результат приходит в миллисекундах
		Секунд = Секунд / 1000;
	КонецЕсли;
	//Конец изменений shurikvz 09/11/2012
	
	Если Секунд > 0 Тогда
		Час = Цел(Секунд / 60 / 60);
		Мин = Цел((Секунд % 3600) / 60);
		//Начало изменений shurikvz 09/11/2012
		Сек = Секунд % 60;
		//Конец изменений shurikvz 09/11/2012
		Результат = ?(час > 0, строка(час) + " час ", "") + ?(мин > 0, строка(мин) + " мин ", "") + ?(сек > 0, строка(сек) + " сек", "");
	Иначе
		Результат = "меньше секунды"
	КонецЕсли;
	
	Возврат Результат;
	
КонецФункции
...Показать Скрыть
46. Максим Безрукавый (max8max) 24.11.12 20:07
Для себя немного модифицировал обработку:
1) Вывел параметры на главную форму. Нет необходимости каждый раз открывать отдельное окно, и всегда они перед глазами.
2) При выборе в качестве значения параметра элемента подчиненного справочника, если в параметрах содержатся потенциальные владельцы - форма выбора открывается с соответствующим отбором. Часто приходится выполнять разные запросы по взаиморасчетам с контрагентами в разрезе договоров - не приходится дважды указывать контрагента.
Прикрепленные файлы:
consquery82Дополненная.epf
47. Андрей Пашин (Andryxa) 04.12.12 23:28
Спасибо большое, очень помогла обработка в написании запросов для обработки, помогающей проставить партии в документах возврата от покупателей.
48. Евгений - (zenechka) 04.12.12 23:31
49. Петр Лунегов (pvlunegov) 27.12.12 07:35
Автор, где версия для 1с 8.1?

В описании обработки написано, что для 8.1
ГДЕ?
Я потратил свои баллы, чтобы скачать ее. По скриншотам уважаю ваш труд, написано на уровне, хотел попробовать...

Но поймите меня правильно, если на фантике написано "Конфета", ты ее разворачиваешь, а там бумажка "Извините, это бета-версия конфеты, возможно вы ее не сможете съесть..."
Как мне реагировать?

Один мат приходит на ум по поводу ленивых разработчиков, которые не подумали, о том, что текст на упаковке не соответствует содержанию
50. Евгений - (zenechka) 27.12.12 08:58
(49) День добрый, Петр.

Если бы Вы внимательней ознакомились с описанием, то увидели бы ссылки на старые версии обработки


(Обработку под 8.1 релиз 1.14.3 можно скачать здесь)

(Обработку под 8.0 релиз 1.14.01 можно скачать здесь)


...с указанием релизов, на которых остановилась разработка данных версий.
..причем скачали бы их совершенно бесплатно :)

Считаю, обвинения в "ленности" мягко говоря необоснованными :)

Сам скачиваемый файл тоже не просто видимо имеет суффикс "82".

Итого, прийдя по фильтру на страницу обработки Вам доступны все перечисленные в описании версии. Причем некоторые даже без платы.

Где здесь несоответствие "фантика" и "конфеты"?

Были бы Вы были менее эмоциональны и сдержанней, я бы вернул Вам по Вашей же невнимательности потраченные мани моментально,... но в данной ситуации решил этого не делать :)
51. Евгений - (zenechka) 27.12.12 09:09
(49) сейчас заметил :), что и в списке доступных для скачивания файлов (посмотреть и скачать все файлы (3)) есть все перечисленные версии.

Или Вы предлагаете по умолчанию для скачивания установить версию 8.1??

Так что внимательней надо быть и берегите свои нервы.
52. Сергей Ожерельев (Поручик) 27.12.12 11:06
(49) У разработчика со стажем не хватает ума заглянуть в список файлов или хотя бы внимательно почитать описание. Один мат приходит на ум по поводу ленивых, чуть не написал д....в.
53. Павел Иванов (blockcode) 05.03.13 10:32
В первую очередь хочу поблагодарить Вас за "Консоль запросов", она мне очень помогает в работе. Для отладки сложных вложенных запросов я добавил в "Консоль..." пару кнопок "Разобрать" и "Собрать".

Действия кнопки "Разобрать":
1. Внимание!!! Удаляет все подчиненные ветви в дереве запросов.
2. Создает и добавляет подзапросы в виде ветвей текущего запроса.
3. Копирует все параметры в подчиненную ветвь запроса.
4. Рекурсивно раскладывает до последнего вложенного запроса.

Действие кнопки "Собрать":
1. Заменяет текущие подзапросы запросами из ветвей подчинения первого уровня вложения. Сборка ведется не по именам подзапросов, а позиционно, в том порядке в котором происходила разборка.
2. Внимание!!! Сборка не отслеживает соответствие возвращаемых переменных, при его изменении после разборки.

Практически это выглядит следующим образом:
1. Выкладываем запрос для отладки и корректировки в "Консоль"
2. Указываем все необходимые параметры.
3. Нажимаем кнопку "Разобрать"
4. Находим ветвь с необходимым для отладки подзапросом
5. Вносим необходимые изменения.
6. Поднимаемся на 1 уровень выше, нажимаем "Собрать" и выполняем подзапрос более верхнего уровня.
7. При возникновении ошибок устраняем их и выполняем пункт 6. до тех пор пока не поднимемся до основного запроса.

Мне часто приходится работать со сложными запросами и данный механизм здорово облегчает жизнь.
Прикрепленные файлы:
Консоль запросов Главная для работы.epf
54. Сергей Старых (tormozit) 05.03.13 10:54
(53) Консоль запросов из ИР пробовал? Судя по описанию доработки она бы могла тебя заинтересовать. Там это возможно будет удобнее и нагляднее делать.
55. Павел Иванов (blockcode) 05.03.13 11:01
не встречал... поэтому и пришлось свой механизм разборки писать...
56. Сергей Старых (tormozit) 05.03.13 11:22
(55) Подсистема "Инструменты разработчика" http://infostart.ru/public/15126/ и конкретно инструмент "Консоль запросов" вместе с функцией режима отладки От() предназначены для удобной отладки запросов на платформе 1С.
57. Павел Иванов (blockcode) 05.03.13 11:26
58. Евгений - (zenechka) 06.03.13 08:46
(54), (56) А это нормально превозносить СВОЮ разработку, тем более в комментариях к чужой ? :)

"...Там это намного удобнее и нагляднее делать....", "являются по крайней мере одним из самых мощных средств отладки запросов на платформе 1С"
59. Сергей Старых (tormozit) 06.03.13 09:55
(58) В (53) пользователь захотел некоторый функционал, который уже есть в моей консоли. В (54) я кратко без ссылки указал на наличие подобного функционала в своей консоли. В (55) он сообщил, что не встречал такую. С его (всех кроме тебя) точки зрения ответный пост (56) для него благо, а не вред. Вот если бы я просто запостил (56), тогда это было бы некрасиво.

Если считаешь (56) нарушением каких то норм, то удали (56). (54) же вообще не тянет на нарушение.

Если пользователя заинтересовала консоль запросов, то ему наверняка будет интересно узнать и о других.
60. Евгений - (zenechka) 06.03.13 11:27
(59) Суть моего спитча в том, что я считаю несколько не этично сравнивать СВОИ разработки на "чужой" территории :)

Одно дело, когда некий пользователь зашел на страницу обработки и рассказал что эта вот "так себе", а вот есть там-то супер вещь. Она делает то-то и то-то, не то что эта.

Мнение же автора всегда субъектиное, его творение всегда будет лучше, краше и т.д.

Я не прав?

Т.е. "претензия" только к тем частям фраз, которые я выделил в кавычки в (58)
61. Сергей Старых (tormozit) 06.03.13 11:57
(60) Ок. Субъективные оценки заменил.
62. Евгений - (zenechka) 06.03.13 12:04
(61) Спасибо за понимание :)
Минусы убрал.
63. Юрий Осипов (yuraos) 29.05.13 08:42
Плюс единомышленнику!
А здесь мой скромный плод единомыслия.
64. Евгений - (zenechka) 29.05.13 09:06
(63) а в чем именно единомыслие проявилось? :)
65. Юрий Осипов (yuraos) 29.05.13 17:28
(64) zenechka,
ну пройдись по ссылке, прикрепленной к слову "здесь".
66. Евгений - (zenechka) 30.05.13 08:57
(65) Ты в каждом своем сообщение ссылаешься на свою обработку? :)
Конечно сходил я по твоей ссылке, поэтому и уточнил что ты именно имел ввиду.
P.S. Намечается интересная тенденция ссылаться в данной ветки на свои разработки.
67. Cube_krsk 27.06.13 05:49
Когда будет переезд на консоль под УФ и будет ли? На ИТС, уже пол года как, есть типовая консоль под УФ - можно пилить!)))
А то надоело конфу на УФ запускать в обычном режиме ради запросов или пользоваться другими консолями. Я к вашей привык, она мне родная :))
68. Евгений - (zenechka) 30.06.13 23:32
(67) Переезд уже начался :)
Типовую консоль под УФ уже добавил, но релиз еще не выкладывал, так как не видел смысла выкладывать голый типовой функционал, к тому же в последнее время не хватало времени, а потом долгожданный отпуск...
Пишите какой функционал из моей консоли Вы хотелось бы видеть на УФ и я буду его переносить в первую очередь. Спасибо.
69. Cube_krsk 01.07.13 05:02
(68) Ну конечно же F5! В смысле, обработка результата запроса произвольным кодом.
70. Евгений - (zenechka) 01.07.13 09:16
71. Фёдор (Tedman) 23.10.13 09:51
Большое спасибо за обработку! Пользуюсь теперь только ей, и друзьям насоветовал. Очень удобно и приятно в ней работать, за исключением одного но!
Резюме: Очень не хватает аналога галочки "Единые параметры для всех запросов" в "оригинальной" консоле запросов г-на Чистова.
Описание: Правлю большой отчёт, в котором колонки "план", "факт" и пр. В запросе большого отчёта все параметры настроены, а при переключении в другие запросы (где, к примеру, я сделал расшифровку по плану или факту) эти же параметры приходится устанавливать заново, что очень не удобно, и пипец как не удобно, когда в виде параметров выступает список каких-либо значений.
Не могли бы Вы добавить в свою разработку вышеописанный механизм?
72. Евгений - (zenechka) 23.10.13 10:24
(71) Спасибо за отзыв. Посмотрю этот функционал.
73. Фёдор (Tedman) 23.10.13 11:24
(72) zenechka, Спасибо. Буду ждать обновления.
74. Фёдор (Tedman) 28.10.13 11:23
в параметрах запроса добавлен флаг "Использовать параметры для всех запросов" (по просьбе Tedman. Идея взята из консоли Чистова)

Супер! Спасибо огромное!
75. Евгений - (zenechka) 28.10.13 11:45
76. Владимир Гусев (adhocprog) 14.02.14 16:22
(0) Спасибо, классные фишки )
77. Александр Удалов (higs) 27.03.14 19:06
Спасибо, попробую использовать и такую консоль. Особенно понравился механизм передачи параметров в другие запросы. Попробую сравнить с UCR - универсальная консоль отчетов, взятой тут же и используемой для разработки уже долгое время.
78. dvv01 (dvv01) 28.08.14 13:36
Автору:
регулярно пользуюсь, но все время дописываю свой функционал выгрузки результата в ТЧ нового или выбранного документа. Дописанная обработка 207+ приложена.
А можно сие добавить в оригинал?
Прикрепленные файлы:
consquery82-207x.epf
79. Евгений - (zenechka) 28.08.14 15:03
to (dvv01)
Спасибо, функционал понравился, добавлю.
80. Сергей Ожерельев (Поручик) 29.08.14 06:54
Да, оказывается многое пропустил.
81. Виктория Коршанова (Chif13) 08.10.14 12:46
У меня Ошибку формата потока выдает к сожалению. Версия Обработка "Консоль запросов 1.17.2" работает нормально.
1С:Предприятие 8.2 (8.2.16.368), конфа с режимом совместимости с 8.1 (может в этом глюк).
82. Евгений - (zenechka) 09.10.14 00:33
(81) Chif13,
Действительно, Виктория, под каким-то релизом видимо сломался файл.
Перезалил файл.
Сейчас должен открываться под Вашим релизом.
83. Kohmar 31.10.14 15:52
клёвая обработка, спасибо :)
84. Алексей (Смешной 1С) 14.11.14 09:30
Спасибо за обработку.
Планируется ли добавление возможности по использованию конструктора в тонком клиенте для 8.3.5?
85. Евгений - (zenechka) 14.11.14 13:51
(84) Смешной 1С, спасибо за спасибо :)
По поводу режима под управляемые формы..есть желание уйти в данном случае от типового варианта. Оно реально не удобен. И соответственно уже там использовать возможности новых версий платформы, в том числе и конструктор для тонкого клиента. Но по срокам не готов сказать, когда это случиться.
В принципе код открыт, можете менять сами, при желании выкладывать сюда свой вариант.
86. Виктория Коршанова (Chif13) 25.12.14 16:19
В модуле формы в строке стр.2479 лучше ИМХО заместо кода
ТекстЗапроса1С = стрЗаменить(ТекстЗапроса1С, ";", "");

поставит так
ТекстЗапроса1С = стрЗаменить(ТекстЗапроса1С, """;", "");

Так не убираются ; разделяющие пакетные запросы. Очень неудобно, если отлаживаешь громаднейший пакетный запрос, потом бегать по тексту и проставлять ;
87. Евгений - (zenechka) 25.12.14 23:48
(86) Chif13, согласен

заменю на Ваш код.
88. Евгений - (zenechka) 26.12.14 12:16
(86) Chif13, перезалил измененную обработку..

Заодно обнаружил, что параметры не определялись при загрузке из буфера. Исправил. Так что спасибо за Ваш комментарий :)
89. Андрей Бертыш (ignor) 15.01.15 22:31
Добрый день, Евгений. Нюанс в части подстановки условий. На данной вверсии консоли при генерации запросов можно поставить только условие ГДЕ, но нельзя сгенерить Условие на ИМЕЮЩИЕ.
То есть я добавляю в условие запроса по всем документам
"КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Ссылка) > 0"
И естественно при этом генерация запроса пытается засунуть это в ДЕ, что естественно приводит к некорректному формированию запроса.

Так же проблема с использованием строк. Не знаю как в других конструкциях но в условие точно
[Имя]<>"ПереносДанных"
меняется
на
[Имя]<>"ПЕРЕНОСДАННЫХ"
Что приводит к тому что документы которые хотелось бы отсечь по имени всё равно попадают в запрос

А вообще спасибо Вам Женечка
90. Евгений - (zenechka) 16.01.15 11:37
(89) ignor, спасибо за отзыв :)
1. по поводу условия на имеющие ..
вы можете в условии написать
"Истина Сгруппировать по ... Имеющие КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Ссылка) > 0" 

при этом в запрос подставится текст
"ГДЕ Истина Сгруппировать по ... Имеющие КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Ссылка) > 0" 

это решит Вашу задачу.
расширять же функционал данного мастера мне кажется не имеет смысла. это усложнит работу с инструментом. хотя ....время покажет

2. соглашусь, что преобразование в верхний регистр текста условия ограничивает использование этого инструмента. Думаю лучше наложить ограничение на использование шаблонных слов только в верхнем регистре("ИМЯ", "СИНОНИМ"), при этом можно будет отказать от перевода в верхний регистр всего текста условия. Внесу эти изменения в следующий релиз.
91. CargoBird (cargobird) 09.02.15 13:04
План выполнения запроса (через технологический журнал) не хотите подключить?)
А то на управляемых формах есть для версий 8.2 и 8.3, а на обычных формах, к сожалению, нет.
Хотел было подключить ПВЗ в обычную консоль запросов, но там многого не хватает, а потом увидел вашу консоль, и вот, написал...
92. Евгений - (zenechka) 09.02.15 18:41
День добрый, Даниил.
Спасибо за отзыв.
Сам пока не испытывал потребности в данном функционале для данной обработки.
Если у Вас есть желание, Вы можете добавить этот функционал сами в консоль и опубликовать.
Если Ваши доработки будут отвечать моим видениям развития обработки :), то я включу его в свою версию (с Вашего согласия и ссылкой на Вас).

cargobird; +1 Ответить
93. Сергей Старых (tormozit) 09.02.15 18:50
94. CargoBird (cargobird) 09.02.15 20:09
Похоже на то что нужно, спасибо, посмотрю.
95. Александр Шавлов (Kraft2013) 21.03.16 17:48
Скачал бету. И как там выполнить действия над результатом запроса?
96. Евгений - (zenechka) 22.03.16 09:38
(95) Kraft2013, под обычные формы ничего не поменялось....под управляемые - это первый шаг в переработке интерфейса. На текущий момент только начал перенос функционала(и пока застрял из-за нехватки времени), в частности выполнения под упр формы на этой версии еще не реализовал.
97. Виктория Коршанова (Chif13) 23.03.16 16:12
Можно взять на себя смелость предложить пару поправок. Я Вашей консолью пользуюсь давно. За что большущее спасибо.
Посмотрите, может надо будет, если нет - не берите в голову: в Форме в процедуре кзПодставитьПараметр добавила код:
		// <- <chif13> 
		ИначеЕсли Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Параметр)) Тогда
			ИмяМетаданного = Параметр.Метаданные().Имя; 
			Если Параметр.Пустая() Тогда
				Результат = "Документы." + ИмяМетаданного + ".ПустаяСсылка()";
			Иначе    
				Результат = "Документы." + ИмяМетаданного + ".НайтиПоНомеру(""" + Параметр.Номер + """)";
			КонецЕсли;
			
		ИначеЕсли ТипЗнч(Параметр) = Тип("МоментВремени") Тогда
			Результат = "Новый МоментВремени(Дата(""" + Параметр.Дата + """), " + кзПодставитьПараметр(Параметр.Ссылка) + ")";			
		// <- <chif13> 
...Показать Скрыть


И еще. Скаченная здесь обработка 8.2 ну никаким макаром в 8.2 не открывается - ошибка формата потока, зато вот в 8.3 без проблем. А очень бы хотелось иметь формат именно 8.2.
98. Евгений - (zenechka) 23.03.16 16:47
(97) Спасибо, Виктория, за код, обязательно добавлю. Была даже мысль выложить обработку куда-нить, наподобие github для коллективной разработки, но пока как-то не сложилось.
По поводу ошибки потока... такая ошибка случалась для некоторых релизов... какой у Вас релиз, режим совместимости? я проверю, и выложу новый вариант.
99. Виктория Коршанова (Chif13) 24.03.16 10:05
Да, наверное в режиме. Режим совместимости с 8.1. Тогда не парьтесь. Он у меня скоро снимется и все будет ок. Поработаю со старой версией пока.
А насчет коллективной я бы не стала так делать. Такого могут наворочать, что лучше не надо. Одно дело прислать вариант вам, а Вы решите надо там это или нет, другое дело будут писать все кто на что горазд. Общее - значит ничейное... Ни-ни...
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа