Консоль запросов "consquery.ru"

Программирование - Инструментарий

Консоль запросов(обычный и управляемый режимы) с обработкой результата, с возможностью хранения запросов и алгоритмов в "облаке": автоподстановка(Intellisense), адаптивный интерфейс, выполнение кода с возможностью использования результатов запроса, запуск обработки из конфигуратора для отладки запроса с заполненными параметрами, загрузка данных из буфера и пр. Старое название: Дополненная обработка Консоль запросов (обычный + управляемый)

Условия использования

Текущия версия предназначения для тестирования !

Обработка предоставляется без каких-либо гарантий.
Используя обработку, Вы сами несете ответственность за сохранность своих данных.
Обработка не содержит скрытый код, код обработки открыт.

Для информации: Как отключить сообщение предупреждение при открытии внешних обработок "Рекомендуется обращать внимание на источник, из которого был получен данный файл" можно прочитать здесь: ИТС 7.10.2ИТС 3.13lavelin.ru

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

Функционал для обычных форм (в планах перенос для управляемого режима)

  • хранение запросов в  "облаке" (на этапе тестирования доступ может быть ограничен; данный функционал на текущий момент реализован для обычных форм) 
  • поиск в запросах и алгоритмах (локально и в облаке)
  • выполнение запросов во внешних базах (по списку)
  • групповые действия над результатами запроса:
    • проведение документов
    • снятие проведения документов
    • пометка удаления объектов
    • снятие пометки удаления объектов
  • быстрое формирование запросов
    • все документы
    • выбранные документы
    • все справочники
    • выбранные справочники
  • и пр. (добавьте какой функционал Вы еще используете)

Участие в развитии обработки:

Планы:

  • выпуск стабильного релиза 3.x
  • хранение запросов и кода в интернете (произвольный ftp, общее хранилище)
  • перенос функционала из режима обычных форм в режим управляемых форм
  • создание инфраструктуры для обмена запросами и кодом
  • предложите свою идею по развитию.

Те, чьи идеи будут иметь отражение в очередном релизе обработки, указываются в описании к данному релизу.

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

Последние изменения и планы здесь

07.04.2017, релиз 3.1.1 (beta)
Изменен функционал
  • Перенесена часть функционала режима обработки для обычных форм
  • Исправлены ошибки
01.02.2017, релиз 3.1.0 (beta)
Изменен функционал
  • Изменена работа с глобальными параметрами запроса (в строке параметра добавлен флажок "Глобальный")
  • Исправлены ошибки
Удален функционал
  • Удален пункт меню "Выполнить запрос из переменной". Данный функционал перенесен в обычный вызов запроса
29.12.2016, релиз 3.0.51 (beta)
Удален функционал
  • в режиме обычного приложения в форме параметров удален вариант выбора типа параметра "Выражение".
    Если Вы используете параметры такого вида, пользуйтесь старой версией обработки!!!
Добавлен функционал
  • в режиме обычного приложения добавлен вариант выгрузки текста запроса в 1с с обработкой результата (для возможности загрузки в конструктор запроса с обработкой результата) (идея и код Андрея Бертыша aka lamer19)
  • в режиме управляемого приложения добавлен вариант выгрузки/загрузки запросов на ftp
Исправлены ошибки
  • Рефакторинг кода
25.11.2016, релиз 3.0.50 (beta)
Изменен функционал
  • Внимание!!! Изменился формат файла с запросами. Для работы в старых версиях обработки новый формат не подходит. Делайте копии старых версий!  
  • Переработка интерфейса (использована библиотека картинок Дмитрия Цымбала - MasterPrometey@mail.ru)
Добавлен функционал
  • кнопка с информацией о результате запроса (количество строк результата запроса)
  • загрузка и сохранение файла с запросами в новом формате для режима "Обычное приложение"
  • загрузка/выгрузка файла с запросами на FTP
Исправлены ошибки
  • рефакторинг кода

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

Наименование Файл Версия Размер
consquery83.epf релиз 3.x (бета)
.epf 380,09Kb
23.01.17
47
.epf 380,09Kb 47 Скачать
consquery83.epf релиз 3.x (бета) [обработка + помощь проекту]
.epf 380,09Kb
23.05.17
2
.epf 380,09Kb 2 Скачать
consquery83.epf релиз 3.x (бета) [обработка + помощь проекту]
.epf 380,09Kb
23.05.17
2
.epf 380,09Kb 2 Скачать
consquery82.epf релиз 2.x
.epf 269,41Kb
23.05.17
149
.epf 269,41Kb 149 Скачать

См. также

Комментарии
1. Евгений - (zenechka) 373 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) 373 30.05.07 16:54 Сейчас в теме
1. Да, все в одной транзакции. Сделал навсякий случай. Согласен с замечанием. Добавлю параметр "количество действий за одну транзакцию".
2. По поводу автозапуска обработки с параметрами. Такие предложения уже поступали. Хотелось бы уточнение. В каких случаях планируется запускать ее с параметрами. Ведь получится столько параметров, что пользование обработкой потеряет смысл. Приведите пример как данный функционал может облегчить жиздь :)
Есть вариант загрузка из кода программы в обработку с удалением мусора(в виде определения переменных) и заполнением параметров. Это планируется релизовать.
7. Евгений - (zenechka) 373 02.06.07 16:34 Сейчас в теме
хотя....по поводу транзакции. Возможность проводить(удалять и т.д.) объекты в транзакции я делал для случаев, когда даные действия необходимо откатить, если на каком-нибудь объекте произошел сбой. В противном случае можно не использовать транзакцию(для это выводится запрос на использовании транзакции или нет перед выполнением групповых действий над объектами).
8. Евгений - (zenechka) 373 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. Сергей Ожерельев (Поручик) 3655 16.11.11 00:11 Сейчас в теме
(0) Некоторые пиктограммы в верхней панели не показываются. Скрин
Прикрепленные файлы:
10. Евгений - (zenechka) 373 16.11.11 00:16 Сейчас в теме
Речь о меню со стрелками?
Там не предполагался вывод пиктограммы.
11. Сергей Ожерельев (Поручик) 3655 16.11.11 08:18 Сейчас в теме
(10) Дело твоё, хотя так не понятно, что в этих меню.
12. Евгений - (zenechka) 373 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) 85 17.11.11 00:20 Сейчас в теме
(13) EvgeniuXP, заминусовать что ли за перепост?
Поручик; +1 Ответить
15. Сергей Ожерельев (Поручик) 3655 17.11.11 00:30 Сейчас в теме
(14) Рейтинг: 0. Стартмани набивает.
16. Александр Иванов (dkprim) 5 17.11.11 06:39 Сейчас в теме
интересная публикация. буду пробовать и сравнивать с подобными. ищу наиболее функциональную и эргономичную.
17. Петр Лунегов (pvlunegov) 108 25.11.11 12:51 Сейчас в теме
Обработка замечательная, спасибо автору!

Нашел опечатку на последней картинке - "Стока поиска". Настораживает.
18. Евгений - (zenechka) 373 25.11.11 15:19 Сейчас в теме
19. Сергей Ожерельев (Поручик) 3655 27.11.11 22:41 Сейчас в теме
(18) Заодно дополнить функционал этой фичей http://infostart.ru/public/90482/ .
Параметры ИБ дополнить указанием типа платформы (8.1 или 8.2)
22. Евгений - (zenechka) 373 14.12.11 12:24 Сейчас в теме
(19) Спасибо. Исправил. Не учел, что версия может содержать релизы... и понаделал опечаток.
Есть правда нюанс..старая версия *.v8i не содержит информации по версии.
Можно при пустой версии считать что это 8.1 или добавить попытку и пробовать подключать с разными коннекторами..вобщем подумаю еще

Добавление функционала по заполнению обработки "Поиск и замена значений" добавлять не планирую, так как появится завязка на внешний функционал, который прийдется отслеживать.
При желании это может каждый сделать..код открыт
23. Сергей Ожерельев (Поручик) 3655 14.12.11 13:43 Сейчас в теме
(22) 8.0 давно не актуально, можно по дефолту считать 8.1
20. Сергей Ожерельев (Поручик) 3655 10.12.11 18:59 Сейчас в теме
21. Сергей Ожерельев (Поручик) 3655 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 версия платформы при разборе файла со списком баз не устанавливается.
26. Noy14 - (Noy14) 17.01.12 08:36 Сейчас в теме
<<
(18) Заодно дополнить функционал этой фичей http://infostart.ru/public/90482/ .
Параметры ИБ дополнить указанием типа платформы (8.1 или 8.2)
>>

Поддерживаю
27. Евгений - (zenechka) 373 17.01.12 09:09 Сейчас в теме
29. Сергей Ожерельев (Поручик) 3655 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) 373 20.02.12 13:47 Сейчас в теме
(29) Спасибо, добавил Ваш код, выложил на свой сайт, сюда руки не доходят выложить :)
Постараюсь сегодня выложить.
24. Александр Косолапов (AlexKoso) 17 14.12.11 14:48 Сейчас в теме
давний поклонник сего произведения. Евгений, респект ;)
25. Евгений - (zenechka) 373 14.12.11 14:50 Сейчас в теме
28. Anna Kustova (VIP_1392) 09.02.12 14:03 Сейчас в теме
интересная публикация. буду пробовать и сравнивать с подобными. Благодарю!)))
32. mailrum2004 10.05.12 13:15 Сейчас в теме
Нужна была обработка для перепроведения документов из результатов запроса. Нашел Вашу. Спасибо.
33. Владимир Бабайцев (discant) 19.07.12 10:24 Сейчас в теме
Спасибо! оччень полезная работа!
34. Евгений - (zenechka) 373 19.07.12 10:26 Сейчас в теме
36. Сергей Ожерельев (Поручик) 3655 12.09.12 11:50 Сейчас в теме
(34) Скачал. В модуле обработки
апНазваниеОбработки		= "Консоль запросов";
апВерсияОбработки			= "1.17.11";

А задекларирована версия 1.17.12
37. Евгений - (zenechka) 373 12.09.12 16:08 Сейчас в теме
(36) Спасибо.
Не было времени выложить исправленную версию. Теперь за одно выложу новую версию
35. Станислав Чернов (uinx) 94 08.08.12 05:21 Сейчас в теме
Не соединяется с SQL - базами, если имя ИБ содержит пробелы. (пример: "baza new")


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

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

На такую:
СтрокаСоединения = "Srvr = " + СокрЛП(SQL_Сервер) + ";Ref = """ + СокрЛП(SQL_БазаДанных) + """";
42. Евгений - (zenechka) 373 19.09.12 11:52 Сейчас в теме
(35) спасибо, хоть с опозданием, но исправил :)
43. Сергей Ожерельев (Поручик) 3655 19.09.12 12:28 Сейчас в теме
(42) В процедуре модуля формы КоманднаяПанельФормыВыполнитьПакет способ выгрузки у Чистова не зря принудительно менялся. Иначе при выполнении пакета можно получить ошибку, если указано Дерево.

Процедура КоманднаяПанельФормыВыполнитьПакет(Кнопка)
	СпособВыгрузки = 1;
	ВыполнитьЗапрос(,,Истина);
	ЭлементыФормы.ПанельРезультата.ТекущаяСтраница = ЭлементыФормы.ПанельРезультата.Страницы[0]; //позиционируемся на первую страницу
КонецПроцедуры
44. Евгений - (zenechka) 373 19.09.12 15:27 Сейчас в теме
(43) Спасибо. Исправил. Богат день на релизы получился.
38. Евгений Кузнецов (kuzev) 40 13.09.12 13:52 Сейчас в теме
Часто использую Вашу обработку. Спасибо.
39. Евгений - (zenechka) 373 13.09.12 14:23 Сейчас в теме
40. Сергей Ожерельев (Поручик) 3655 18.09.12 21:17 Сейчас в теме
(39) Не хватало возможности выполнить пакет, для отладки и просмотра результатов пакетных запросов без временных таблиц, как в консоли от Чистова aka GROOVY.
Во вложении текст модуля формы. Пару фрагментов кода выдрал из той консоли. Все вставки выделены моими комментариями.
Модификация добавляет кнопку "Выполнить пакет" в верхнюю командную панель.
Прикрепленные файлы:
new 3.zip
41. Евгений - (zenechka) 373 19.09.12 11:11 Сейчас в теме
(40) Добавил данный функционал. Описание в информации к обработке.
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) 373 04.12.12 23:31 Сейчас в теме
49. Петр Лунегов (pvlunegov) 108 27.12.12 07:35 Сейчас в теме
Автор, где версия для 1с 8.1?

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

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

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

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


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

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


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

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

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

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

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

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

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

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

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

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

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

Мне часто приходится работать со сложными запросами и данный механизм здорово облегчает жизнь.
Прикрепленные файлы:
Консоль запросов Главная для работы.epf
54. Сергей Старых (tormozit) 4523 05.03.13 10:54 Сейчас в теме
(53) Консоль запросов из ИР пробовал? Судя по описанию доработки она бы могла тебя заинтересовать. Там это возможно будет удобнее и нагляднее делать.
58. Евгений - (zenechka) 373 06.03.13 08:46 Сейчас в теме
(54), (56) А это нормально превозносить СВОЮ разработку, тем более в комментариях к чужой ? :)

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

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

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

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

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

Я не прав?

Т.е. "претензия" только к тем частям фраз, которые я выделил в кавычки в (58)
61. Сергей Старых (tormozit) 4523 06.03.13 11:57 Сейчас в теме
(60) Ок. Субъективные оценки заменил.
62. Евгений - (zenechka) 373 06.03.13 12:04 Сейчас в теме
(61) Спасибо за понимание :)
Минусы убрал.
55. Павел Иванов (blockcode) 30 05.03.13 11:01 Сейчас в теме
не встречал... поэтому и пришлось свой механизм разборки писать...
56. Сергей Старых (tormozit) 4523 05.03.13 11:22 Сейчас в теме
(55) Подсистема "Инструменты разработчика" http://infostart.ru/public/15126/ и конкретно инструмент "Консоль запросов" вместе с функцией режима отладки От() предназначены для удобной отладки запросов на платформе 1С.
57. Павел Иванов (blockcode) 30 05.03.13 11:26 Сейчас в теме
63. Юрий Осипов (yuraos) 912 29.05.13 08:42 Сейчас в теме
Плюс единомышленнику!
А здесь мой скромный плод единомыслия.
64. Евгений - (zenechka) 373 29.05.13 09:06 Сейчас в теме
(63) а в чем именно единомыслие проявилось? :)
65. Юрий Осипов (yuraos) 912 29.05.13 17:28 Сейчас в теме
(64) zenechka,
ну пройдись по ссылке, прикрепленной к слову "здесь".
66. Евгений - (zenechka) 373 30.05.13 08:57 Сейчас в теме
(65) Ты в каждом своем сообщение ссылаешься на свою обработку? :)
Конечно сходил я по твоей ссылке, поэтому и уточнил что ты именно имел ввиду.
P.S. Намечается интересная тенденция ссылаться в данной ветки на свои разработки.
67. Cube_krsk 31 27.06.13 05:49 Сейчас в теме
Когда будет переезд на консоль под УФ и будет ли? На ИТС, уже пол года как, есть типовая консоль под УФ - можно пилить!)))
А то надоело конфу на УФ запускать в обычном режиме ради запросов или пользоваться другими консолями. Я к вашей привык, она мне родная :))
68. Евгений - (zenechka) 373 30.06.13 23:32 Сейчас в теме
(67) Переезд уже начался :)
Типовую консоль под УФ уже добавил, но релиз еще не выкладывал, так как не видел смысла выкладывать голый типовой функционал, к тому же в последнее время не хватало времени, а потом долгожданный отпуск...
Пишите какой функционал из моей консоли Вы хотелось бы видеть на УФ и я буду его переносить в первую очередь. Спасибо.
69. Cube_krsk 31 01.07.13 05:02 Сейчас в теме
(68) Ну конечно же F5! В смысле, обработка результата запроса произвольным кодом.
70. Евгений - (zenechka) 373 01.07.13 09:16 Сейчас в теме
71. Фёдор (Tedman) 23.10.13 09:51 Сейчас в теме
Большое спасибо за обработку! Пользуюсь теперь только ей, и друзьям насоветовал. Очень удобно и приятно в ней работать, за исключением одного но!
Резюме: Очень не хватает аналога галочки "Единые параметры для всех запросов" в "оригинальной" консоле запросов г-на Чистова.
Описание: Правлю большой отчёт, в котором колонки "план", "факт" и пр. В запросе большого отчёта все параметры настроены, а при переключении в другие запросы (где, к примеру, я сделал расшифровку по плану или факту) эти же параметры приходится устанавливать заново, что очень не удобно, и пипец как не удобно, когда в виде параметров выступает список каких-либо значений.
Не могли бы Вы добавить в свою разработку вышеописанный механизм?
72. Евгений - (zenechka) 373 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) 373 28.10.13 11:45 Сейчас в теме
76. Владимир Гусев (adhocprog) 1102 14.02.14 16:22 Сейчас в теме
(0) Спасибо, классные фишки )
77. Александр Удалов (higs) 27.03.14 19:06 Сейчас в теме
Спасибо, попробую использовать и такую консоль. Особенно понравился механизм передачи параметров в другие запросы. Попробую сравнить с UCR - универсальная консоль отчетов, взятой тут же и используемой для разработки уже долгое время.
78. dvv01 (dvv01) 115 28.08.14 13:36 Сейчас в теме
Автору:
регулярно пользуюсь, но все время дописываю свой функционал выгрузки результата в ТЧ нового или выбранного документа. Дописанная обработка 207+ приложена.
А можно сие добавить в оригинал?
Прикрепленные файлы:
consquery82-207x.epf
79. Евгений - (zenechka) 373 28.08.14 15:03 Сейчас в теме
to (dvv01)
Спасибо, функционал понравился, добавлю.
80. Сергей Ожерельев (Поручик) 3655 29.08.14 06:54 Сейчас в теме
Да, оказывается многое пропустил.
81. Виктория Коршанова (Chif13) 910 08.10.14 12:46 Сейчас в теме
У меня Ошибку формата потока выдает к сожалению. Версия Обработка "Консоль запросов 1.17.2" работает нормально.
1С:Предприятие 8.2 (8.2.16.368), конфа с режимом совместимости с 8.1 (может в этом глюк).
82. Евгений - (zenechka) 373 09.10.14 00:33 Сейчас в теме
(81) Chif13,
Действительно, Виктория, под каким-то релизом видимо сломался файл.
Перезалил файл.
Сейчас должен открываться под Вашим релизом.
83. Kohmar 31.10.14 15:52 Сейчас в теме
клёвая обработка, спасибо :)
84. Алексей (Смешной 1С) 45 14.11.14 09:30 Сейчас в теме
Спасибо за обработку.
Планируется ли добавление возможности по использованию конструктора в тонком клиенте для 8.3.5?
85. Евгений - (zenechka) 373 14.11.14 13:51 Сейчас в теме
(84) Смешной 1С, спасибо за спасибо :)
По поводу режима под управляемые формы..есть желание уйти в данном случае от типового варианта. Оно реально не удобен. И соответственно уже там использовать возможности новых версий платформы, в том числе и конструктор для тонкого клиента. Но по срокам не готов сказать, когда это случиться.
В принципе код открыт, можете менять сами, при желании выкладывать сюда свой вариант.
86. Виктория Коршанова (Chif13) 910 25.12.14 16:19 Сейчас в теме
В модуле формы в строке стр.2479 лучше ИМХО заместо кода
ТекстЗапроса1С = стрЗаменить(ТекстЗапроса1С, ";", "");

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

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

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

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

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

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

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

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

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

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


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

{ВнешняяОбработка.КонсольЗапросов.Форма.ФормаУпр.Форма(333)}: Индекс находится за границами массива
Возврат ПоместитьВоВременноеХранилище(

1С:Предприятие 8.3 (8.3.8.2322)
Розница, редакция 2.2 (2.2.5.27)
Прикрепленные файлы:
101. Евгений - (zenechka) 373 23.08.17 22:28 Сейчас в теме
(100)
{ВнешняяОбработка.КонсольЗапросов.Форма.ФормаУпр.Форма(333)}: Индекс находится за границами массива


Похоже Вы запускаете другую консоль запросов.
В версии 8.2. я базировался на типовой консоле для управляемых форм и соответственно выглядит она по-другому (см скрин).
Специально скачал с инфостарта на случай ошибочной ссылки - нет, ошибки нет, файл как на скрине ниже.
Посмотрите версию для 8.3 - там много нового и интересного :)
Прикрепленные файлы:
Оставьте свое сообщение