0. akor77 906 11.03.15 21:09 Сейчас в теме

Консоль запросов для УФ универсальная 8.3.7.3

Реализован программный вызов консоли для захвата "рваного" запроса, МВТ и параметров.
В консоли реализована полная поддержка работы с таблицами значений.
Выборочный просмотр пакетов и временных таблиц.
Возможность выборочной выгрузки пакета запроса в ТЗ, с последующим её редактированием, сохранением на диск.
Использование сохранённой ТЗ в качестве параметра для других запросов.
Возможность обхода ТЗ в цикле с выполнением кода.
Отсутствуют ошибки при наличии уничтожения временных таблиц.
Замер времени выполнения каждого пакета запроса.
Приличное окно настройки типа (только для параметров запроса), лёгкое преобразование в список значений и обратно.
Поддержка дополнительных типов: ТЗ, Граница, Момент времени, Вид счёта, Вид движения и т.д.
Форматирование типа значения при выводе запроса (NULL, пустая ссылка, пустая строка и т.п.).
Наверное, самый лучший подбор ширины колонок.
Возможность добавлять листы для вывода результатов запросов.
Генерируется текст для конфигуратора с учётом количества результирующих пакетов, для каждого пакета можно настроить выборку или выгрузку и пересоздать текст....

Короче, лучше один раз увидеть ...

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

Комментарии
Избранное Подписка Сортировка: Древо
379. akor77 906 06.06.18 14:15 Сейчас в теме
(378) Добрый день! Да. Дело в том, что на некоторые доработки я трачу по несколько дней, по этому в рамках поддержки - это не такие большие расходы.
Сколько стоит час Вашей работы?
380. Froloid 66 06.06.18 18:34 Сейчас в теме
(379)
Сколько стоит час Вашей работы?

Вопрос не публичный, но достаточно много...

Суть я понимаю и согласен. Просто схема получается не очень - тут наверное даже не к Вам вопрос.

Получается что сама обработка - достаточно комплексная и полезная. И почему она стоит 5 см, а не 1 как большинство - понятно. Но видно - что она очень живая и поэтому часто обновляется. И сколько бы не стоил час и сколько бы их не было затрачено, сама схема при которой активный пользователь обработки если хочет иметь свежую версию за 3 месяца купит её 5 раз (а см - это я как понимаю те же деньги) - это как-то не справедливо. Разовая стоимость обновления комплексного инструмента, не должна равняться его стоимости (по крайней мере если это не новая редакция, а просто новый релиз в понятиях типовых конфигураций 1С).

С учётом скорости с которой ведутся изменения, логично было бы уже сделать её платной и поддержку (бесплатные обновления) на 12 месяцев.
381. akor77 906 06.06.18 19:05 Сейчас в теме
(380)Всё верно, вопрос про зарплату, это больше ответ чем вопрос.
И курьёз ситуации мне понятен.
На данный момент, мне пока не виден способ решения ситуации.
Мне надо разобраться, как правильно организовать продажу и обновление.
Пока у меня нет понимания как это организовать.
382. Froloid 66 06.06.18 23:22 Сейчас в теме
(381) Если решите продавать за денежку сравнимую с подобными вещами здесь, то рассмотрю со всей серьёзностью. А пока скачал очередную версию.

Чтобы от нашей переписки мог выйти какой-нибудь толк накидаю чего бы мне хотелось бы ещё от данной (и так мега-полезной) обработки:
1) Редактор табличного документа:
а) Запоминать использованные для таблицы настройки сортировки (иногда отсортируешь по 5 полям, затем понимаешь что нужно последовательность полей поменять, а приходится всю сортировку заново настраивать);
в) Добавить возможность фильтрации таблицы (наподобии сортировки);
г) Добавить возможность открытия произвольного mxl/xlsx документа в редакторе (удобная штука для работы и с другими таблицами, плюс иногда документ полученный и из консоли хочется сохранить как эталон и потом когда-нибудь с ним сравнить; здесь возможно и сравнение двух таб доков пригодилось бы)
2) Вывод результатов запроса/пакетов: большие выборки сильно тормозят при выводе. Сейчас есть лимит при превышении которого ни чего не выводится. Лучше было бы в данной ситуации что-то из (или по выбору):
а) Выводить первые в рамках лимита;
б) Выводить в простом виде без форматирования (в старой типовой консоли на обычных формах даже многомилионные таблицы выводятся без особых проблем);
в) Выводить в разбивке на страницы (например, как в DataCommander'е);
3) Выполнение запросов:
а) На выполнение ветки желательно сделать комбинацию клавиш (например, Ctrl+5);
б) При выполнении ветки, если текущая строка это "лист", то выполнять стоит родительскую ветвь;
г) Разбиение запросов на более простые:
1. Желательно иметь возможность разбить запрос, на вложенные запросы по каждому пакету отдельно, назначив им с родительским один МВТ. Тогда можно будет отлаживать конкретные пакеты больших (тяжёлых) запросов выполняя непосредственно только нужный пакет и используя при этом ранее сформированные таблицы;
2. В идеале ещё уметь разбивать на отдельные подзапросы/пакеты вложенные запросы (преобразовать вложенный запрос в 2 пакета);
3. Ещё в идеале уметь разбивать запрос содержащий несколько объединений на отдельные запросы (что бы понять откуда взялись данные в результате). При этом не просто разбить текст на несколько, а в каждом последующем запросе перетащить псевдонимы из первого, чтобы везде колонки именовались как в родительском;
д) При выполнении запроса, если для него определён МВТ, то сначала уничтожать эти ВТ.

Если что сумбурно изложил - готов пояснить. По 3-му пункту многие вещи самому очень хочется. Поэтому если чего сделаю (не дождавшись :0), то готов буду поделиться.
383. Froloid 66 06.06.18 23:24 Сейчас в теме
(382) Делал отступы упорно перед каждым пунктом - а они все слетели :0( Хоть кодом в виде комментариев оформляй прямо :0)
384. akor77 906 06.06.18 23:49 Сейчас в теме
(382) Спасибо, за хороший отзыв!
Хорошие пожелания, благодарю. Буду выполнять.
г) Разбиение запросов на более простые

За подобное я брался 3 года назад. Там вложенные запросы полностью разбирались на временные таблицы. Надо поискать обработку и как-нибудь продолжить.
У меня есть в планах ещё пара отличных идей, но они пока пусть останутся в тайне.

Пункт
При выполнении запроса, если для него определён МВТ, то сначала уничтожать эти ВТ
не совсем понятен.
385. Froloid 66 07.06.18 00:04 Сейчас в теме
(384)
Пункт
При выполнении запроса, если для него определён МВТ, то сначала уничтожать эти ВТ
не совсем понятен.


Пример подобной необходимости в текущей реализации обработки (если реализовать пожелание с разбиением на подзапрос для каждого пакета с единым МВТ, то там ни куда от этого):

' Выполнил я один запрос и хочу посмотреть, что будет, если его немного изменить. Я его копирую, вношу изменения и пытаюсь выполнить ветку (верхнюю, для этого мне нужно кликнуть по ней мышкой - там было такое пожелание чтобы выполнялась верхняя если текущий уровень лист), чтобы посмотреть сразу оба результата и сравнить изменения. При этом я получаю ошибку, что ВТ такая же уже существует (если они ВТ в запросе используются естественно).
386. akor77 906 07.06.18 00:40 Сейчас в теме
387. manuel 363 07.06.18 13:36 Сейчас в теме
(382)
г) Разбиение запросов на более простые:
1. Желательно иметь возможность разбить запрос, на вложенные запросы по каждому пакету отдельно, назначив им с родительским один МВТ. Тогда можно будет отлаживать конкретные пакеты больших (тяжёлых) запросов выполняя непосредственно только нужный пакет и используя при этом ранее сформированные таблицы;
2. В идеале ещё уметь разбивать на отдельные подзапросы/пакеты вложенные запросы (преобразовать вложенный запрос в 2 пакета);
3. Ещё в идеале уметь разбивать запрос содержащий несколько объединений на отдельные запросы (что бы понять откуда взялись данные в результате). При этом не просто разбить текст на несколько, а в каждом последующем запросе перетащить псевдонимы из первого, чтобы везде колонки именовались как в родительском;

Все это есть в Анализаторе сложных запросов. Единственно псевдонимы не перетаскиваются. А так весь запрос полностью раскладывается на составляющие. И выполнить можно по отдельности хоть вложенный запрос, хоть часть объединения.
Evg-Lylyk; Alexx85; +2 Ответить
390. Froloid 66 07.06.18 22:00 Сейчас в теме
(387) О, прикольная вещичка. Надо попбовать.
388. sonGodv 41 07.06.18 15:44 Сейчас в теме
Жаль, что нет раскраски кода в окне текста запроса
389. akor77 906 07.06.18 18:16 Сейчас в теме
(388)Привет, обещать ничего не буду, но как-нибудь рассмотрю возможность такой реализации.
391. Froloid 66 07.06.18 22:04 Сейчас в теме
(389) Вот очень хочется мне сделать что-то типа встроенного объекта (ole и activex) в утром текст запроса можно редактировать в sublime или npp с установленными приборами для 1с... Прям очень очень...
392. Froloid 66 13.06.18 19:31 Сейчас в теме
Вызов консоли в отладчике - таблицы МВТ.

Я сначала обрадовался такой здоровской функции, а потом сник - оказывается таблицы существующие в МВТ запроса не сериализуются. А без этого отлаживать "сложные запросы типовых" не получится. Там это сплошь и радом. Нужно срочно добавлять этот функционал :0)

Я так полагаю у автора уже есть эта фича - нужно только релизнуть ;0)
393. akor77 906 13.06.18 20:17 Сейчас в теме
(392)Это была моя заготовка для сюрприза!
394. Froloid 66 14.06.18 00:37 Сейчас в теме
(393) Мил человек, релизни пожалуйста. Я её 3 раза ради такой фичи скачаю:0)
395. akor77 906 14.06.18 00:38 Сейчас в теме
(394)Хорошо, на выходных сделаю.
396. Froloid 66 14.06.18 00:56 Сейчас в теме
401. akor77 906 18.06.18 18:49 Сейчас в теме
(396)Дмитрий, я про ""Тип не может быть выбран в запросе"" (из личной переписки), это ложь.

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

А вот когда пользователь 1С в самостоятельном порядке создает колонки таблицы значений, то ему необходимо также самостоятельно и вручную указывать тип для каждой создаваемой колонки отдельно.

ПРОФ вариант корректно захватывает содержимое МВТ.

По этому, это не с консолью запросов что-то не так, а с передаваемой в параметр ТЗ - нетипизированые колонки.
402. babys 83 20.06.18 11:18 Сейчас в теме
403. akor77 906 20.06.18 11:34 Сейчас в теме
(402) Этот функционал будет в версии ПРОФ.
Данная версия пока в работе.
1. В первом релизе будет захват запроса с МВТ.
2.а "Буфер обмена" таблиц значений без сохранения и загрузки файлов, это позволит легко работать с Внешними источниками данных,
2.б использовать результаты запросов в качестве параметров другого запроса с возможностью программной обработки промежуточной таблицы значений.
3. Использование параметров запроса в коде программной обработки таблиц значений.
407. klinval 285 26.06.18 16:48 Сейчас в теме
(403)
Этот функционал будет в версии ПРОФ

А что за версия ПРОФ?
408. akor77 906 26.06.18 16:57 Сейчас в теме
(407)Это будет новая консоль на основе текущей версии. Там будет реализовываться более сложный функционал. на данный момент, предполагаю, что выкладываться будет за деньги.
397. milkers 2382 15.06.18 14:47 Сейчас в теме
(0) Очень хотелось бы иметь механизм рекомпозиции запроса

Сейчас когда я пишу вложенный запросы я начинаю с самой внутренней таблицы, отлаживаю запрос, запоминаю текст запроса в буфер обмена, создаю новый запрос, в нем создаю новую вложенную таблицу, вхожу в ее редактирование, прописываю для нее текст запроса из буфера, выхожу в основной запрос, выбираю реквизиты из вложенной таблицы.

Это приходится делать на каждом уровне вложенности.

Если бы можно было сделать это одной кнопкой!!!
398. akor77 906 15.06.18 14:59 Сейчас в теме
(397)Привет, в планах это есть, но не на первом месте. На данный момент, работаю над подобием "буфера обмена" для таблиц значений используемых в параметрах, выгрузках запросов. Чтобы эти таблицы можно было легко назначать в качестве параметров запросов не прибегая к внешним файлам (сохранению и загрузке). Кроме того, этот механизм сделает удобной работу с внешними источниками данных.
Что касается рекомпозиции запроса, то займусь ею в порядке очереди, после того, что описал в начале.
399. milkers 2382 15.06.18 15:35 Сейчас в теме
400. akor77 906 15.06.18 15:41 Сейчас в теме
(399)Про "буфер таблиц значений" сам, про "внешние источники данных" тоже. Что касается парсинга запроса, то им я начинал заниматься года три назад, но так и не смог тогда продолжить, сделал только переводчик запроса "рус - eng" и обратно. Ещё, где-то лежит обработка, которая вложенные запросы "вытаскивает" во временные таблицы - с точностью до наоборот того о чём ты говорил. )
404. akim2040 15 25.06.18 13:11 Сейчас в теме
Заранее извиняюсь если уже реализовано.
Можно сделать что бы при удалении запроса из дерева, это самое дерево не сворачивалось.
решил почистить лишние запросы, и мягко говоря это было не удобно.
версия 8.3.4.3
405. akor77 906 25.06.18 13:30 Сейчас в теме
(404)В релизе 8.3.5.1 над деревом запроса произведены доработки и исправления.
Проблема сворачивания дерева запроса после удаления ветки - решена.
406. kiruha 382 25.06.18 15:32 Сейчас в теме
Скачал.
Залил запрос.
Параметр неопределенного типа - пытаюсь задать - ничего не происходит - не могу задать параметр.

В старой консоли можно было выбрать тип, а потом значение.
PS
А вижу - надо сверху изменить тип . ОК, хотя не совсем очевидно
410. Zord 04.07.18 14:47 Сейчас в теме
Супер! В предопределенные значения ещё можно добавить ВидДвиженияНакопления
411. akor77 906 04.07.18 16:02 Сейчас в теме
(410)Понял, спасибо, добавлю.
414. VitaliyTokarev 230 17.07.18 11:16 Сейчас в теме
(0)

При уничтожении таблиц в результаты выводится надпись типа:
УНИЧТОЖИТЬ втВсеДатыВсехДвиженийОбъединение (0 мс.)

Но когда пытаешься отключить вывод результата, выдаётся ошибка:

{ВнешняяОбработка.КонсольЗапросовУФ.МодульОбъекта(116)}: Значение не является значением объектного типа (Выбрать)
Выборка = РезультатЗапроса.Выбрать();
415. akor77 906 17.07.18 13:00 Сейчас в теме
416. x2z7yy 19.07.18 08:38 Сейчас в теме
Какого же монстра вы тут наваяли уже))
417. babys 83 19.07.18 10:03 Сейчас в теме
Александр, жду проф с нетерпением.
418. headMade 142 31.07.18 16:09 Сейчас в теме
Подскажите можно ли затащить запрос в консоль со всеми параметрами из конфигуратора ?
419. akor77 906 31.07.18 17:13 Сейчас в теме
(418)Да, как это реализовать показано в описании ВЕРСИИ 8.3.4.3.
420. PavelZnaikin 158 06.08.18 21:28 Сейчас в теме
А есть более подробная инструкция как затащить запрос с параметрами из конфигуратора?
421. akor77 906 07.08.18 09:08 Сейчас в теме
(420)
Добрый день!

Создай строку вызова консоли для захвата запроса (Смотри опиание ВЕРСИЯ 8.3.4.3)
Установи точку останова в конфигураторе у переменной "Запрос", запусти отладчик.
Когда выполнение остановится на точке останова, открой окно "Вычислить выражение" (Shift+F9).
Вставьте строку вызова консоли и нажмите рассчитать.
В консоли дорбавьте полученный фал (описано в версии 8.3.5.1).

P.S.: Посмотри описание версии 8.3.2.1
422. PavelZnaikin 158 07.08.18 21:25 Сейчас в теме
У меня база находится на сервере, соответственно когда нажимаю кнопку указать путь к лбработке у меня открывается каталог сервера в место моего ПК.
Как в этом случае быть ?
423. akor77 906 08.08.18 10:10 Сейчас в теме
(422)Укажи каталог на сервере и сохрани в него. Т.к., вызов консоли для захвата происходит на сервере, то сохранить можно в папку, видимую на сервере.
В консоли есть возможность открывать файлы, находящиеся на сервере приложения.
424. PavelZnaikin 158 09.08.18 21:09 Сейчас в теме
Спасибо разобрался.
У меня еще вопрос:
Можно ли в эту консоль запросов передать массив строк в качестве параметра:

Пример:

Отбираю справочник контрагентов, а в качестве параметра выбираю код элемента справочника.
И вот в этот параметр мне надо передать к примеру 10 кодов справочника контрагентов.
425. akor77 906 10.08.18 10:14 Сейчас в теме
(424) Можно. Способы:
1. Сделать параметр списком значений можно с помощью установки галки "Список значений" в окне "Редактирование типа данных". Смотри самую первую картинку в описании.
2. В параметр можно подставить любое значение получаемое произвольным исполняемым кодом. Значение присваивается переменной "Параметр". Смотри описание версии 8.3.2.9
426. PavelZnaikin 158 10.08.18 21:07 Сейчас в теме
1. Список значений уже пробовал, удобная вещь. Но туда нельзя из буфера вставить значения или подгрузить из файла. Только добавлять руками
427. PavelZnaikin 158 10.08.18 21:44 Сейчас в теме
Второй вариант подошел.

Но единственное не получается указать строку в столбик:

Строка = "00-000013,
00-000014,
00-000015";

При таком с ошибкой падает.

Работает только:
Строка = Строка = "00-000013,00-000014,00-000015";
429. akor77 906 10.08.18 23:25 Сейчас в теме
(427)
не получается указать строку в столбик

Должно так получиться (в столбик):
Строка = "00-000013,
|00-000014,
|00-000015";


А почему бы не сделать так?:
Результат = Новый Массив();
Результат.Добавить("00-000013");
Результат.Добавить("00-000014");
Результат.Добавить("00-000015");
Параметр = Результат;


Наверно, чтобы было удобно подставлять строку с запятыми копи-пастом из какого-нибудь отчёта?
428. PavelZnaikin 158 10.08.18 21:46 Сейчас в теме
Может кому пригодиться:

Строка = "00-000013,00-000014,00-000015";    
Разделитель = ",";
ПропускатьПустыеСтроки = Истина;
СокращатьНепечатаемыеСимволы = Истина;

Результат = Новый Массив();

Позиция = СтрНайти(Строка, Разделитель);
	Пока Позиция > 0 Цикл
		Подстрока = Лев(Строка, Позиция - 1);
		Если Не ПропускатьПустыеСтроки Или Не ПустаяСтрока(Подстрока) Тогда
			Если СокращатьНепечатаемыеСимволы Тогда
				Результат.Добавить(СокрЛП(Подстрока));
			Иначе
				Результат.Добавить(Подстрока);
			КонецЕсли;
		КонецЕсли;
		Строка = Сред(Строка, Позиция + СтрДлина(Разделитель));
		Позиция = СтрНайти(Строка, Разделитель);
КонецЦикла;

Если Не ПропускатьПустыеСтроки Или Не ПустаяСтрока(Строка) Тогда
		Если СокращатьНепечатаемыеСимволы Тогда
			Результат.Добавить(СокрЛП(Строка));
		Иначе
			Результат.Добавить(Строка);
		КонецЕсли;
КонецЕсли;


Параметр = Результат;
Показать
430. akor77 906 10.08.18 23:28 Сейчас в теме
(428) посмотри функцию СтрРазделить(<Строка>, <Разделитель>, <ВключатьПустые>)
431. Evg-Lylyk 2762 14.08.18 17:00 Сейчас в теме
Всем кто пользуется этой консолью рекомендую посмотреть [8.3] Управляемая консоль отчетов (расширение)
432. kraynev-navi 443 30.08.18 09:39 Сейчас в теме
В описании файла, наверное, где-то ошибка: Консоль запросов для УФ 8.3.5.1, а версия там же 8.3.4.10. Чему верить? Обработка-то свежая?
433. akor77 906 30.08.18 10:21 Сейчас в теме
(432)
Обработка-то свежая?
Да, там скачивается версия 8.3.5.1.
Я забыл и не заметил, что необходимо поменять номер версии в описании.
434. Batman 150 31.08.18 14:40 Сейчас в теме
Доброго времени суток (файл скачал)
версия файла - 8.3.5.1, платформа - 8.3.11.2924, режим базы - Серверный, режим использования модальности - Использовать с предупреждениями
Очень заинтересовал функционал редактора табличного документа.
Открываю редактор через кнопку "Сервис" - "Редактор табличного документа"
В открывшемся окне не нахожу кнопки открытия файла (считать таблицу из mxl, например), поэтому вставляю таблицу (с шапкой) через буфер обмена. Ни группировок строк, ни "маркера" над таблицей, конечно, при таком варианте добавления, нет (таблица получена из другого источника).
Пробую задействовать интересующий меня функционал - просуммировать выделенные ячейки, добавить итоговую строку таблицы, сортировать таблицу. Получаю сообщение "Активная ячейка выделения должна быть в таблице" (а при суммировании - числа = 0).
Правильно ли я понял, что полноценно функционал работает с таблицами, переданными из самой обработки? Или обработка "узнает" таблицу по каким-то маркерам? Можно ли использовать редактор табличных документов таким способом? Для таблиц "извне"
435. akor77 906 31.08.18 15:37 Сейчас в теме
(434)Редактор работает с таблицами полученными только из консоли.
Для работы с таблицами из внешних данных будет необходима доработка редактора.
438. brylig 07.09.18 09:40 Сейчас в теме
Здравствуйте. Давно использую Вашу консоль и вот, решил написать несколько пожеланий.

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

2. Применение конструктора запроса кроме форматирования его текста удаляет из него все комментарии, а они бывает ой как нужны. Кроме, собственно, описания сути частей запроса, также с их помощью можно отключать и включать отдельные его части. Тем более, что в самом редакторе есть кнопки быстрого комментирования/раскомментирования выделенного текста. Но, если в запросе есть комментарии, то сейчас применение конструктора вынуждает от них отказаться.

3. Выгружать ТЗ в ТЧ объектов можно было бы не только создавая новые экземпляры объектов, но и иметь возможность выбирать из базы существующие записи для выгрузки в них с вопросом: заменять или дополнять их табличные части содержимым выгрузки.

4. Ну и в целом по развитию этой великолепной консоли: может превратить ее в полноценный редактор схем СКД с возможностью сохранения созданных схем для последующей их загрузки в конфигурацию. Отлаживать отчеты было бы просто идеально. Также можно было бы дополнить редактор схем возможностью декомпилировать их в текст модулей для их программного формирования. Это бы позволило получить доступ к тем свойствам и методам схемы, которые невозможно отредактировать в редакторе схем. То есть, по сути, получится консоль запросов с консолью кода и редактором схем СКД, которые можно декомпилировать в консоль кода. Тогда, подготовив в консоли схему и текст модуля, мы получаем практически готовый отчет для внедрения в конфигурацию.

С четвертым пунктом у меня, конечно, фантазия разыгралась, но первые три сильно бы упростили жизнь уже сейчас.
А по поводу четвертого пункта, то, кроме шуток, не жалко было бы заплатить за такой инструмент реальные деньги в разумных пределах, а не стартмани.

Спасибо за внимание.
439. Alias 153 14.09.18 10:46 Сейчас в теме
Обработкой активно пользуюсь, нравится. Идеи для развития (чего не хватает):

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

В общем:
- разобраться и причесать сохранение в файл/восстановление из файла. Для минимизации проблем отказаться от сохранения реквизитов (ВТ, ДеревоЗапросов, ПараметрыТЗ) в форме, вместо этого при открытии считывать всё из файла. Нормализовать отображение имени файла настроек в заголовке (сейчас не всегда соответствует).
- при выводе текста запроса/кода установки значений параметров корректно выводить присвоение строковых значений -- нужно в кавычках.
- причесать дерево запросов -- сделать в нём красивые группы (с пиктограммой), а по двойному клику -- сразу выполнение.
- и чем чёрт не шутит -- выдернуть из стандартной типовой консоли блок по просмотру SQL-плана выполнения запроса.
440. akor77 906 17.09.18 10:32 Сейчас в теме
(439)Приветствую!

Я сделал паузу в разработке консоли, т.к. на меня в моём окружении идёт дьявольское подавление. Я русский, а русским очень несладко в окружении русофобов.

Теперь к делу.
Ваши замечания реальны и пол делу, в отличии от некоторых.
В ПРОФ-версии у меня создан отдельный "Справочник" алгоритмов с "формой списка/выбора" и "форма списка таблиц значений" имеющиеся в параметрах запросов, из выгрузок запросов и ещё сохраняются непривязанные ТЗ которые можно выбирать в качестве параметров, правда пока руками. Сейчас возьмусь за разработку механизма получения в качестве параметра результата другого запроса с возможностью обработки таблицы выбранным алгоритмом из имеющегося списка.
441. babys 83 18.09.18 10:11 Сейчас в теме
(440) Где уже ПРОФ версия, куда таньгу нести?
444. akor77 906 20.09.18 17:59 Сейчас в теме
(441)
(442)
ПРОФ-версия пока в разработке и пока не готова к продаже.
446. akim2040 15 21.09.18 04:45 Сейчас в теме
(444) Отличия кардинальные? Или интрига будет до релиза?))
447. akor77 906 21.09.18 11:17 Сейчас в теме
(446) Пока не буду говорить "Гоп".
442. akim2040 15 18.09.18 10:46 Сейчас в теме
(440) Что за ПРОФ версия, с чем её едят, и как её получить?
443. Groylov 19.09.18 07:57 Сейчас в теме
Консоль 8.3.5.1
Платформа 8.3.12.1529
Режим использования модальности: Использовать с предупреждением
Режим использования синхронных вызовов: Использовать

1) Сохраняем файл запросов. (1.txt)
2) Правим запрос
3) Сохраняем файл запросов как... (2.txt)
4) Открываем файл дерева запроса (2.txt)
5) Сохраняем файл запросов
И вместо файла 2.txt запросы сохраняются в 1.txt
445. akor77 906 20.09.18 17:59 Сейчас в теме
448. shoy 19 01.10.18 14:58 Сейчас в теме
Консоль 8.3.5.1
Платформа 8.3.10.2753

1) загружаем консоль, по умолчанию она подтягивает файл запросов (Нр, с именем Первый.txt).
В заголовке пишет Файл: Первый.txt
2) меню Файл, Открыть файл дерева запросов Второй.txt
В заголовке пишет Файл: Первый.txt

Я даже сохранять побоялся ;)))
449. shoy 19 01.10.18 15:43 Сейчас в теме
Кстати, почему нет возможности просто создать новый файл запросов?
450. EvgeniuXP 12.10.18 13:49 Сейчас в теме
Выбираю в консоли меню "Файл - Открыть файл дерево запросов", появляется окно "Открыть как", нажимаю сверху справа крестик, получаю ошибку: "Недопустимое значение параметра (параметр номер `1`). Если нажать подробно:

"{ВнешняяОбработка.КонсольЗапросовУФ.Форма.Форма.Форма(2332)}: Ошибка при вызове метода контекста (ПолучитьИзВременногоХранилища)
ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресВременногоХранилища);
по причине:
Недопустимое значение параметра (параметр номер '1')"

Платформа 8.3.13.1458, в режиме запуска толстый клиент управляемое приложение.
634. harisov_r 26 03.06.19 14:22 Сейчас в теме
1С:Предприятие 8.3 (8.3.15.1194)
Бухгалтерия предприятия, редакция 3.0 (3.0.67.70)
КонсольЗапросовУФ_8.3.7.1@ 2

Ошибки:
1. Меню Файл- Сохранить запрос.
{(1,30)}: Переменная не определена (Текст)
{ВнешняяОбработка.КонсольЗапросовУФ.Форма.Форма.Форма(450)}: Функция ВхождениеСтроки(_1432431096,_306836996)ВозвращаемоеЗначение=0;Если Объект.РежимСовместимости="НеИспользовать"Тогда Выполнить("ВозвращаемоеЗначение = СтрНайти(Текст, ИскомыйТекст);");Иначе Выполнить("ВозвращаемоеЗначение = Найти(Текст, ИскомыйТекст);");КонецЕсли;Возврат ВозвращаемоеЗначение;КонецФункции
{ВнешняяОбработка.КонсольЗапросовУФ.Форма.Форма.Форма(363)}: Процедура СохранитьДеревоЗапросовЗавершение(_477075260,_2461787491)Экспорт Если _477075260=Неопределено Тогда Возврат;КонецЕсли;Если ТипЗнч(_477075260)=Тип("Строка")Тогда пПутьКФайлу=_477075260;ИначеЕсли ТипЗнч(_477075260)=Тип("Массив")Тогда пПутьКФайлу=_477075260[0];Иначе Сообщить("Ошибка в имени файла!");Возврат;КонецЕсли;ИДВетки=Неопределено;Если НЕ _2461787491=Неопределено И _2461787491.Свойство("ИДВетки",ИДВетки)Тогда Объект.ПутьКФайлуВеткиЗапроса=пПутьКФайлу;Иначе Объект.ПутьКФайлуЗапроса=пПутьКФайлу;КонецЕсли;Элементы.ДеревоЗапросовСохранитьДеревоЗапросов.Доступность=НЕ ПустаяСтрока(пПутьКФайлу);НовыйЗаголовок=Лев(Заголовок,ВхождениеСтроки(Заголовок,". Файл: ")+7);Заголовок=НовыйЗаголовок+?(ПустаяСтрока(Объект.ПутьКФайлуЗапроса),"Не сохранен",Объект.ПутьКФайлуЗапроса)+".";Адрес=ПолучитьФайлНаСервере(_2461787491);Описание=Новый ОписаниеПередаваемогоФайла(пПутьКФайлу,Адрес);МассивОписаний=Новый Массив;МассивОписаний.Добавить(Описание);Если Объект.МодальностьРазрешена Тогда КодВыполнения=" ПолучитьФайлы(МассивОписаний, , , Ложь);";Иначе КодВыполнения=" Оповещение = Новый ОписаниеОповещения(""СохранениеФайлаНаДиск"", ЭтаФорма, Неопределено); НачатьПолучениеФайлов(Оповещение, МассивОписаний, , Ложь);";КонецЕсли;Выполнить(КодВыполнения);КонецПроцедуры
{ВнешняяОбработка.КонсольЗапросовУФ.Форма.Форма.Форма(354)}: Процедура СохранитьДеревоЗапросов(_664598586)Если ПустаяСтрока(Объект.ПутьКФайлуЗапроса)Тогда СохранитьДеревоЗапросовКак(Неопределено);Возврат;КонецЕсли;СохранитьДеревоЗапросовЗавершение(Объект.ПутьКФайлуЗапроса,Неопределено)КонецПроцедуры

по причине:
{(1,30)}: Переменная не определена (Текст)
ВозвращаемоеЗначение = Найти(<<?>>Текст, ИскомыйТекст);
{(1,37)}: Переменная не определена (ИскомыйТекст)
ВозвращаемоеЗначение = Найти(Текст, <<?>>ИскомыйТекст);

2. После закрытия конструктора запросов текст запроса не попадает в обработку. Там пусто!

3. При попытке выполнить запрос тоже возникала ошибка. Но я ее уже поправил.
Слишком длииная строка кода. 1С ее не понял. Отформатировал ее по левому краю и все заработало.
451. eeeio 111 18.10.18 20:24 Сейчас в теме
сюда б просмотр плана запроса еще включить...
452. misha226 20 31.10.18 21:16 Сейчас в теме
Есть проблема с установкой в качестве параметра типа "Уникальный идентификатор". Попробовал установить через код, нашу КлючСвязи=Новый УникальныйИдентификатор("4fa435d1-ab18-4918-b9cd-4650e7b41ff2");
тип значения слетает на строковый и запрос не отрабатывает из-за не соответствия типов при сравнении.
В типовой есть способ выбора для УИД. см пикчю.
Прикрепленные файлы:
453. isn 13 06.11.18 13:47 Сейчас в теме
Добрый день!
Ранее скачал консоль УФ 8.3.3.0. Есть возможность получить новую версию не тратя старт мани за повторное скачивание?
Заранее спасибо за ответ.
454. Kyrales 135 09.11.18 05:44 Сейчас в теме
Предлагаю дополнения:

1. Добавить возможность редактирования типов "Планы обмена" в параметрах

2. Возможность открывать код модуля без формирования данных запроса. Чтобы проверить код, пересохранить его

3. При сохранении кода: не сохранять таблицу значений, т.к. это долгая процедура Или сделать это опциональным
456. isn 13 20.11.18 12:55 Сейчас в теме
Обнаружена ошибка (необычное поведение). Консоль 8.3.5.1 (1С:Предприятие 8.3 (8.3.13.1513) , УФ режим совместимости 8.3.5). Если список запросов сохранить, а затем открыть другой список, то в заголовке останется старый сохраненный путь к консоли.
457. qeos 108 11.12.18 12:26 Сейчас в теме
для запроса

ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 10
	ТИПЗНАЧЕНИЯ(ПоступлениеБезналичныхДенежныхСредствРасшифровкаПлатежа.Заказ) КАК Заказ
ИЗ
	Документ.ПоступлениеБезналичныхДенежныхСредств.РасшифровкаПлатежа КАК ПоступлениеБезналичныхДенежныхСредствРасшифровкаПлатежа


выдается ошибка

{ВнешняяОбработка.КонсольЗапросовУФ.МодульОбъекта(779)}: Значение не является значением объектного типа (Имя)
Ячейка.Текст = "<Тип: " + пТип + Метаданные.НайтиПоТипу(Ячейка.Значение).Имя + ">";
Прикрепленные файлы:
458. akor77 906 11.12.18 13:59 Сейчас в теме
(457)привет, конфигурация какая? Запрос точно из той конфиги?
459. qeos 108 11.12.18 17:50 Сейчас в теме
(458) УТ 11.4 измененная с расширениями. А что значит "из той конфиги"? У вас не выдается ошибки?
460. akor77 906 11.12.18 17:53 Сейчас в теме
(459)У меня сейчас нет УТ11 под рукой, не могу воспроизвести
461. akor77 906 11.12.18 21:10 Сейчас в теме
(460)Ошибку воспроизвёл, исправил.
462. qeos 108 11.12.18 21:14 Сейчас в теме
463. vlivanov 5 14.12.18 17:34 Сейчас в теме
(458) Подскажите, каждую новую версию обработки нужно покупать заново, или есть какой-то способ получать обновления, единожды заплатив за нее?
464. akor77 906 14.12.18 23:00 Сейчас в теме
(463)А вы не подскажите, почему ИТС у 1С платная?
465. EvgeniuXP 15.12.18 15:16 Сейчас в теме
(464) а она разве платная? всю жизнь получаю на работе бесплатно :)))
466. akor77 906 15.12.18 16:10 Сейчас в теме
(465)Это вам о чем-нибудь говорит?



Судя по смайликам, вы просто делаете мне обесценку, другими словами - издеваетесь.

Дай Бог вам здоровья, на сколько вы ко мне искренне дружелюбны!

Всего доброго!
467. vlivanov 5 17.12.18 10:22 Сейчас в теме
(464)
Такой вопрос. Скачанный файл называется: "Консоль запросов для УФ 8.3.5.2"
Но в окне консоли написано: "Консоль запросов УФ 8.3.4.12"
Это ошибка в надписи или не тот файл был выложен?
468. akor77 906 17.12.18 10:35 Сейчас в теме
469. vlivanov 5 17.12.18 11:30 Сейчас в теме
(468) Еще вопрос. Можно как-то отключить сохранение вместе с текстами запросов еще и результатов их работы? Когда объемы данных превышают 100к строк, то сохранение занимает существенное время и файл весит больше 70 мегабайт.
470. izidakg 154 20.12.18 09:45 Сейчас в теме
наткнулся в 8.3.5.1, возможно в новой и нет такого
в тонком клиенте условие: ".Номер ПОДОБНО "%" + &Номер + "%""
при заполнении параметра тип строка более 1 символа занести не дает. в толстом клиенте работает
473. akor77 906 20.12.18 21:15 Сейчас в теме
(470)Да, с подобной проблемой я сталкивался, выкручивался сначала сделав ".Номер = &Номер", после этого в задавал значение параметра и тогда возвращал текст запроса ".Номер ПОДОБНО "%" + &Номер + "%"

Необходимо допилить форму выбора типа. Но это пока в планах.
471. isn 13 20.12.18 17:21 Сейчас в теме
akor77 в качестве пожелания и возможного развития консоли (консолью пользуюсь активно): не хватает загрузки в таблицу значений из файла табличного документа 1с (mxl).
472. akor77 906 20.12.18 21:11 Сейчас в теме
(471)Спасибо, приму во внимание. Но не сразу. Этот функционал будет реализован немного по другому, через новую версию редактора табличных документов, над которой я сейчас работаю.
474. Wolfis 6 25.12.18 17:18 Сейчас в теме
вопрос. а эта консоль не будет зависать если в расширениях добавлены объекты?
475. akor77 906 25.12.18 20:22 Сейчас в теме
(474)Честно говоря, не вижу причину возникновения проблемы. Если будут, то сообщите.
476. Wolfis 6 26.12.18 11:24 Сейчас в теме
(475) я тоже не вижу.. но при добавление в расширение объекта, конструктор запросов в 1с предприятие просто виснет при открытии
477. akor77 906 26.12.18 15:46 Сейчас в теме
(476) А что за конфигурация и что за объекты в расширении? Опиши ситуацию как программист. У меня в конфигурациях с расширениями всё нормально работает, например в ЗУП 3
478. Wolfis 6 27.12.18 09:08 Сейчас в теме
(477) 1С:ERP Управление предприятием 2 (2.4.6.174). добавлено пару справочников, документов и регистров сведений.
при выполнение кода

КонструкторЗапроса = Новый КонструкторЗапроса;
КонструкторЗапроса.Показать(Новый ОписаниеОповещения("РедактированиеЗапросаКонструкторомЗакончено", ЭтаФорма));


1с просто зависает. замер производительности нечего не показывает. журнал регистрации пуст. в конфигурации где в расширениях нету новых объектов(или в той же с отключенным расширением ), все отрабатывает штатно.
вот и единственное что приходит в голову, что КонструкторЗапроса начинает колбасить при получения объектов расширения.

З.Ы. такая ситуация как под тонким клиентом, так и под толстым клиентом(только под толстым 1с вылетает напрочь)
под толстым также пробывал вместо
КонструкторЗапроса.Показать(Новый ОписаниеОповещения("РедактированиеЗапросаКонструкторомЗакончено", ЭтаФорма));
использовать
КонструкторЗапроса.ОткрытьМодально();

ситуация не поменялась
479. akor77 906 27.12.18 09:22 Сейчас в теме
(478)Похоже, это уже не к консоли вопрос, а к разработчикам платформы.
480. Wolfis 6 27.12.18 09:30 Сейчас в теме
(479) да это понятно. просто очень грустно...я сейчас на платформе 8.3.13.1644. а в описание даже 14 платформы про эту ошибку не видел нечего.
482. akor77 906 27.12.18 09:39 Сейчас в теме
(480)Думаю, что использовать расширения стоит только для модификации типовых форм, либо для добавления обработок и отчётов, т.е. объектов не хранящих данные в таблицах. добавляйте "табличные" объекты в саму базу. при обновлении это гемора не создаст. А вот делать анализ с учетом расширений - гемор ещё тот!
481. akor77 906 27.12.18 09:38 Сейчас в теме
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Новосибирск
зарплата от 80 000 руб. до 120 000 руб.
Полный день

Программист 1С
Чебоксары
зарплата от 50 000 руб. до 70 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 110 000 руб. до 150 000 руб.
Полный день

Программист 1С
Воронеж
зарплата от 70 000 руб.
Полный день

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