INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Крючков Владимир | Начальник сектора разработки | ООО "Группа Полипластик"

«Как мы разрабатываем в EDT»

1. Ответим на вопрос как мы переходили на разработку в EDT. Где было больно и что стало лучше? Где светлое будущее? 2. Расскажем про использование процессов разработки для коммерческих продуктов и open source. Что такое «Git Flow», «Git Lab Flow» и «Git Hub Flow» в чем их отличие и в чем сила? 3. Командная разработка в новых реалиях: Где и как нам помогает SCRUM? Как и где используем KANBAN? Нужно ли следовать за белым кроликом? 4. Про системы баг трекинга: Интеграция с системами баг трекинга для коммерческих решений на примере JIRA. Достаточно ли возможностей «Git Hub Issue» для open source? 5. Про репозитарии: Какой репозитарий выбрать? Что такое «bitbucket», «github» и что они умеют? Как все это увязать с EDT и баг трекингом? Когда использовать приватные, а когда публичные хранилища? 6. Используем новые волшебные возможности: автосборка релиза, code review, pull request, ветвление (bruches) и др. Как именовать ветки и что писать в коммитах чтобы получить профит. 7. Немного про качество продукта: Как мы запускаем тесты при разработке в EDT? Как используем open source Фреймворк «Тестирование 3.0»?

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

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

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

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

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

Комментарии
Сортировка: Древо
305. Crazy_Max 4 22.01.18 19:55 Сейчас в теме
Хочу сказать: Ну кенты, вы и даёте стране угля! Такой офигенный инструмент забабахали!
Круто!
306. akor77 744 23.01.18 10:33 Сейчас в теме
(305) Спасибо за отзыв, пользуйтесь!
307. yuraskas 173 05.02.18 09:00 Сейчас в теме
Большое спасибо, давно искал хорошую консоль на УФ!
308. PolSerg 05.02.18 17:31 Сейчас в теме
Здравствуйте, Александр!
Спасибо огромное за функциональную консоль запросов, но есть один недочет, который портит впечатление, а именно работа с файлами, если мы нажимаем открыть файл запросов, то выбор предлагается из файлов с произвольным расширением, но запись происходит в файл с расширением только .txt, но это пол беды, основная неприятность в том что после того как мы открыли файл запросов, консоль не запоминает наш выбор и кнопка "сохранить" либо не доступна, либо сохраняет в файл который был использован ранее при сохранении через кнопку "Сохранить как...", т.е. изменить рабочий файл можно только нажатием кнопки "Сохранить как", хотя логично было бы менять путь к рабочему файлу запросов после кнопки "Открыть".
309. akor77 744 06.02.18 00:21 Сейчас в теме
310. V1V 109 09.02.18 10:35 Сейчас в теме
Что ж вы версию платформы нигде не написали? "СтрНайти" и прочее. Ну нет этих функций в режимах совместимости. А время потеряно. Очень жаль.
316. akor77 744 04.03.18 19:40 Сейчас в теме
(310)Привет, жаль что это Вас расстроило. Думаю, Вам будет очень трудно работать программистом.
311. nasik90 16.02.18 16:54 Сейчас в теме
Александр, каким образом можно скопировать значение поля из результат запроса в табличной части?
Горячая клавиша Ctrl+C не копирует.
317. akor77 744 04.03.18 19:41 Сейчас в теме
(311) Привет, надо включить режим редактирования. Смотри в описании.
312. kadild 17.02.18 01:24 Сейчас в теме
Платформа 8.3.10.2667 УФ

1. Загрузка из XML в параметры не работает. Выгрузил таблицу значений ОбщегоНазначения.ЗначениеВСтрокуXML(ТЗ), сохранил в файл. При попытки загрузить в параметры в консоле все виснет на долго и после вылетает.

Есть ли другие способы передать данные из эксель в параметры?

2. Не нашел как добавить параметры самому. Есть только автозаполнение из запроса, но свои варианты не могу добавить.

Может я не там смотрю?

Жаль нужные мне функции не работают, только ради них качал
318. akor77 744 04.03.18 19:46 Сейчас в теме
(312)Привет,
1. консоль не загружает в параметры XML с таблицей значений.
В консоли есть функционал выгрузки и загрузки объектов из одной базы в другую, с аналогичными структурами объектов.
Читайте внимательно описание, там всё описано.
2. а зачем тебе свои параметры если они не используются? Ну если тебе очень хочется добавить лишних строк, то добавь их в тексте запроса и они автоматом появятся в таблице параметров. Ответь,зачем они тебе?
320. kadild 06.03.18 01:02 Сейчас в теме
(318)
Читайте внимательно описание, там всё описано.

Серьезно? Как автор могли ответить более развернуто.
Все что там написано у вас про XML, что значение параметра ТЗ, одну колонку, можно выгрузить в файл, которая и то вызывает ошибку "Поле объекта не обнаружена (Ссылка)". Загрузки всего ТЗ нет. Зачем так урезать функционал, непонятно.
Я в любой типовой конфигурации с БСП могу в отладке поставить точку останова и одной строкой получить текст XML любого значения и целого запроса со всеми его параметрами (ЗначениеВСтрокуXML, ЗапросВСтрокуXML). Это все легко копипастится в консоль для продолжения работы, но у вас в отличие от типового консоля это все вырезано. Тоже не понятно почему.

В консоли есть функционал выгрузки и загрузки объектов из одной базы в другую, с аналогичными структурами объектов.
Наверное круто, но какое это отношение имеет к моему вопросу.

2. а зачем тебе свои параметры если они не используются? Ну если тебе очень хочется добавить лишних строк, то добавь их в тексте запроса и они автоматом появятся в таблице параметров. Ответь,зачем они тебе?

Отвечаю: затем, что при разработке как и у других людей у меня часто несколько вариантов одних и тех же параметров.
Объясняю, например, есть параметр ТЗ с данными и чтобы прогнать запрос с другим содержимым я должен заполнить его содержимое другими данными без возможности возврата старой версии? Менять названия параметра, чтобы наконец-то появился нужный параметр? Лишние телодвижения никогда не ускоряли работу. В таком комбайне как ваш запросник, было странным решением ограничить разработчика.
321. akor77 744 06.03.18 16:15 Сейчас в теме
(320)1. Вы поняли что-то своё, а не то, что написано на картинке в описании: "Добавлена возможность выгрузки объектов в XML, ссылки которых находятся в одной из колонок таблицы." Подчёркиваю: Выгрузка ОБЪЕКТОВ (Документы, справочники, т.е. объекты с ссылкой). Это было сделано для копирования элементов справочников, счетов БУ и т.п. из одной БД в другую.
Это не сохранение и получение таблиц значений при помощи XML, это Выгрузка/Загрузка ссылочных ОБЪЕКТОВ.
2. Тебе всё-равно придётся менять название параметра в тексте запроса, таким образом, появится новый параметр. Это не решит проблему, или я что-то не понимаю?
324. kadild 06.03.18 21:03 Сейчас в теме
(321)
1. Вы поняли что-то своё
Похоже да.
2. Тебе всё-равно придётся менять название параметра в тексте запроса, таким образом, появится новый параметр. Это не решит проблему, или я что-то не понимаю?
Не решит проблему, создаст новую. Добавлять параметры через код - дико.
Что касается загрузки ТЗ из XML, то это хорошая идея, реализую.
Будет круто. Так же прикрутить возможность, как в типовой, загрузки всего запроса с текстом и его параметрами из отладчика в консоль
"ЗначениеВФайл(<ИмяФайла>, <Значение>)"
Тоже не удобно использовать для этого отдельный файл и бегать туда за содержимым, когда можно в отладчике сразу получить значение XML. Может есть функция получения результата напрямую?

Ну как говорится, хозяин барин, если тебе не нужно - ну и хрен сними.
325. akor77 744 06.03.18 22:41 Сейчас в теме
(324)Дружище, сделай хорошо и поделись решением.
329. kadild 08.03.18 13:40 Сейчас в теме
(325)
Дружище, сделай хорошо и поделись решением.

Понял. Странно, я даю фитбэк, чтобы продукт развивался, а вместо этого ощущение, что просто хотят заткнуть. Смысла нет что-то тут писать.
322. akor77 744 06.03.18 16:24 Сейчас в теме
(320)Что касается загрузки ТЗ из XML, то это хорошая идея, реализую.
323. akor77 744 06.03.18 17:02 Сейчас в теме
(320)Используй для сохранения таблицы вместо "ОбщегоНазначения.ЗначениеВСтрокуXML(ТЗ)" функцию платформы "ЗначениеВФайл(<ИмяФайла>, <Значение>)".
Потом этот файл загружай кнопкой "Загрузить таблицу из файла" (на форме вверху слева первая).
313. klebedev 21.02.18 16:16 Сейчас в теме
IMHO заполнение результата запроса для нулевых значений значениями <0> лучше сделать настраиваемым - пусто или новый механизм
315. akor77 744 04.03.18 19:34 Сейчас в теме
(313)привет, если четно, то мне тоже не нравится знак "<0>", он как бельмо, пока не придумал чем его заменить.
314. kubiky 123 01.03.18 15:08 Сейчас в теме
Александр, спасибо за консоль.
Недостаток: не совсем понятна настройка связей таблиц (невозможно вручную сопоставить связи)
319. akor77 744 04.03.18 19:54 Сейчас в теме
(314)Привет, это к разработчикам платформы 1С
326. akim2040 07.03.18 09:01 Сейчас в теме
Вопрос. Так и задумано что нельзя скопировать полученное значение в результате выполнения запроса?
и второй вопрос, автоподбор ширины колонок отключается? не всегда это удобно
327. akor77 744 07.03.18 10:26 Сейчас в теме
(326)Привет, Что касается копирования результата запроса, то эта проблема решена начиная с версии 8.3.2.25. Эта версия в тестовой обкатке, скоро выложу.Что делать сейчас - нажать над табличным документом кнопку редактирования, тогда копирование будет доступно.
Что касается ширины колонок, то пока ещё не рассматривал этот вопрос, возьму на заметку.
328. akim2040 07.03.18 11:20 Сейчас в теме
(327) Благодарю. По ширине колонок реально бывает непомерно расширяет колонку из-за пары значений, хотя колонка сама по себе миниатюрная должна быть.
330. Georg_QQ 10.03.18 13:35 Сейчас в теме
Есть предложение разбор запроса на пакеты выполнять не ручным анализом текста с удалением комментариев и т.д. а через конструкцию схемы запроса.
Функция СоздатьТаблицуВТ(Знач ТекстДляРазбора) Экспорт
	
	ВТ = Новый ТаблицаЗначений;
	ВТ.Колонки.Добавить("ИмяПакета", Новый ОписаниеТипов("Строка"));
	ВТ.Колонки.Добавить("ЭтоВТ", Новый ОписаниеТипов("Булево"));
	ВТ.Колонки.Добавить("УничтожениеВТ", Новый ОписаниеТипов("Булево"));
	ВТ.Колонки.Добавить("ТекстПакета", Новый ОписаниеТипов("Строка"));
	
	Сч = 0;
	
	СхемаЗапроса = Новый СхемаЗапроса();
	СхемаЗапроса.УстановитьТекстЗапроса(ТекстДляРазбора);
	
	Для Каждого ЗапросПакета Из СхемаЗапроса.ПакетЗапросов Цикл
		
		СтрокаПакета = ВТ.Добавить();
		
		Если ТипЗнч(ЗапросПакета) = Тип("ЗапросУничтоженияТаблицыСхемыЗапроса") Тогда
			
			СтрокаПакета.ИмяПакета	= "Уничтожение " + ЗапросПакета.ИмяТаблицы;
			СтрокаПакета.ТекстПакета= "УНИЧТОЖИТЬ " + ЗапросПакета.ИмяТаблицы;
			СтрокаПакета.УничтожениеВТ = Истина;
			
		ИначеЕсли ТипЗнч(ЗапросПакета) = Тип("ЗапросВыбораСхемыЗапроса") Тогда
			
			Если НЕ ПустаяСтрока(ЗапросПакета.ТаблицаДляПомещения) Тогда
				СтрокаПакета.ИмяПакета	= ЗапросПакета.ТаблицаДляПомещения;
				СтрокаПакета.ЭтоВТ = Истина;
			Иначе
				Сч = Сч + 1;
				СтрокаПакета.ИмяПакета = "Результат" + Формат(Сч, "ЧГ=0");
				
			КонецЕсли;
			СтрокаПакета.ТекстПакета= ЗапросПакета.ПолучитьТекстЗапроса();
				
		КонецЕсли;
		
		
	КонецЦикла;
	
	Возврат ВТ;
	
КонецФункции
Показать


Метод получается более короткий и надежный. тот же принцип можно использовать при проверке на ошибки. При наличии ошибок исключение даст эта строка
СхемаЗапроса.УстановитьТекстЗапроса(ТекстДляРазбора);
.

Плюс метода не нужно избавляться от комментариев и любых других незначащих строк текста запроса. По времени выполнения сказать ничего не могу, не замерял. но чисто визуально в данном плане на тестовом запросе из 100+ пакетов ничего не изменилось.

Еще маленькая хотелка. Было бы неплохо иметь возможность выбора вывода в табличный документ (как сейчас) или в Список таблиц значений с их одновременным отображением на вкладках вместо таб.документа, т.к. как при необходимости проверки результатов открытие окна ТЗ блокирует форму обработки. Если дадите разрешение могу заняться подобной плюшкой, но чуть позже.
331. akor77 744 10.03.18 14:02 Сейчас в теме
(330)Привет, в планах имеется использование "Схемы запроса", но есть проблема совместимости с версиями платформы ниже 8.3.5. По этому, если схема запроса будет использоваться, то для других целей и не на всех платформах.

Что касается одновременного анализа двух таблиц, то выводи всё в табличный документ и открывай "редактор табличного документа", там удаляй, добавляй всё что нужно из табличного документа обработки в табличный документ редактора. Даже кнопка для выделения текущей таблицы (таблица, в которой выделена ячейка) создана, выделяй, копируй, вставляй, сравнивай, анализируй!
332. Georg_QQ 10.03.18 14:48 Сейчас в теме
(331) Идея хорошая. но при большом количестве строк в клиент серверном варианте табличный документ реагирует на простое выделение ячейки почти минуту (8.3.2.25) Как бы это не есть хорошо. в 24 версии такого не было.

Поправка, при небольшом количестве строк задержка все равно есть +-10 сек. очень неудобно.

Проблема в функции СуммироватьЗначения не указан контекст исполнения. Происходит постоянный вызов сервера. при использовании &НаКлиентеНаСервереБезКонтекста все становится хорошо.
333. akor77 744 10.03.18 15:04 Сейчас в теме
(332) У меня сейчас нет под рукой базы с большими данными, по этому проверить не могу. Предполагаю, что это из-за пересчёта сумм в ячейках.
334. Georg_QQ 10.03.18 15:07 Сейчас в теме
(333) да, только дело было не в размере выборки данных, а просто при каждой активизации ячейки неявный контекстный вызов сервера. Файловая база не заметит, а клиент-серверная вешалась. Где проблема. см. (332)
335. akor77 744 10.03.18 15:33 Сейчас в теме
(334)Есть ошибка, не указал инструкцию препроцессору для процедуры "СуммироватьЗначения" (в основной форме обработки и в форме редактора табличного документа).

правка: На рисунке указано "НаКлиенте", надо "НаКлиентеНаСервереБезКонтекста".
Прикрепленные файлы:
336. Georg_QQ 12.03.18 06:53 Сейчас в теме
Нашел еще пару ошибок. в версии 8.3.2.25, но для 8.3.2.26 полагаю тоже актуально.


1. путь к файлу в заголовке почему-то иногда отображается так как на картинке
2. При комментировании части кода, если 1 строка комментируемого выделения находится на более дальней позиции от начала строки, чем последующие символы "//" вставляются некорректно
Прикрепленные файлы:
337. akor77 744 12.03.18 07:37 Сейчас в теме
(336)Спасибо, буду исправлять.
338. Georg_QQ 12.03.18 11:53 Сейчас в теме
При исполнении запроса есть проверка на пакет уничтожения таблицы, которая выполняется после получения результата данного пакета
Если Лев(СтрокаПакета.ТекстПакета, 10) = "УНИЧТОЖИТЬ" ИЛИ Лев(СтрокаПакета.ТекстПакета, 4) = "DROP" Тогда

не проще проверить таким образом?
Если РезультатЗапроса = Неопределено Тогда

Основываюсь на информации из синтаксис-помощника
Запрос (Query)
Выполнить (Execute)
Синтаксис:

Выполнить()
Возвращаемое значение:

Тип: РезультатЗапроса; Неопределено.
Результатом исполнения запроса на уничтожение временной таблицы является значение Неопределено.


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

{ВнешняяОбработка.КонсольЗапросовУФ.МодульОбъекта(140)}: Значение не является значением объектного типа (Выбрать)
Выборка = РезультатЗапроса.Выбрать();

Корректнее будет
Если РезультатЗапроса = Неопределено Тогда
			
	Если СтрокаПакета.Показать Тогда
		ОблЗаголовка.Текст = СтрокаПакета.ТекстПакета + " (" + ВремяВыполнения + " мс.)";
		ОблЗаголовка.Шрифт = Новый Шрифт( , , 14, Истина);
		ОблЗаголовка.ЦветТекста = WebЦвета.Красный;
	КонецЕсли;
				
	Продолжить;
						
КонецЕсли;
Показать
339. akor77 744 12.03.18 16:39 Сейчас в теме
340. Georg_QQ 29.03.18 09:33 Сейчас в теме
Небольшой недочет выравнивания значений табличного документа результатов.
Прикрепленные файлы:
341. akor77 744 29.03.18 11:16 Сейчас в теме
(340)Действительно! Честно говоря, я даже не замечал этого. )
Заявка принята.
342. user607480_elsystem2000 2 29.03.18 18:28 Сейчас в теме
На первый взгляд - это консоль запросов из мечты. Спасибо, буду играться.
dj_serega; +1 Ответить
343. akor77 744 29.03.18 18:53 Сейчас в теме
344. user790109 3 02.04.18 12:51 Сейчас в теме
Постоянно выпадает ошибка. С 10 попытки может и не вылезет ошибка. платформа 8.3.10.2580
Прикрепленные файлы:
345. akor77 744 02.04.18 13:37 Сейчас в теме
(344)похоже на ошибку текста запроса, добавь в самом начале запроса выражение "ВЫБРАТЬ". )
346. user790109 3 02.04.18 14:48 Сейчас в теме
(345)Это когда я нажимаю конструктор запроса и просто выбираю документ.. На этапе выбора документа вылезает эта ошибка
347. akor77 744 02.04.18 16:29 Сейчас в теме
(346)Попробуй почистить кэш. Конструктор запроса - это объект платформы.
349. Waxy 01.05.18 21:01 Сейчас в теме
Консоль очень интересная, спасибо за ваш труд.
Правильно ли я понял из описания, что для захвата запроса с параметрами из кода необходимо редактировать сам код и иметь доступ к дисковому пространству, доступному с сервера?
Не планируется ли когда-нибудь добавить возможность вызова консоли с заполненным запросом и параметрами прямо из режима отладки?
Как например в https://infostart.ru/public/15306/ или https://infostart.ru/public/236904/
350. akor77 744 02.05.18 13:40 Сейчас в теме
(349)Привет! Вызвать консоль можно без редактирования текста. для этого её можно вызвать в отладчике через форму "Вычислить выражение".
Папка должна быть доступна. но там есть нюанс, если консоль открыта с клиента, а база серверная и сервер 1С на другом сервере (железе), то надо прописать полный путь к сохраняемому файлу как на сервере. Во всех случаях, папка должна быть расшарена для 1С.
351. akor77 744 02.05.18 14:03 Сейчас в теме
(349)для вызова консоли используй код "ВнешниеОбработки.Создать("C:\КонсольЗапросовУФ.epf", Ложь).ОбработатьВнешнийЗапрос(Запрос, "РезультатыЗапроса")", где параметры:
- "Запрос" + сохраняемый запрос.
- ВМЕСТО "РезультатыЗапроса" - укажи полный путь файла БЕЗ расширения. (на данный момент, подстановка пути по умолчанию (равной каталогу вызова консоли) не работает.
352. AlexO 125 05.05.18 12:57 Сейчас в теме
Не может открыть обыкновенный файл с деревом запросов.
В функции "ОткрытьДеревоЗапросовЗавершение" проверяется почему-то только на тип "Структура", хотя возвращается "ДеревоЗначений", да и в функции "ПолучитьФайлНаСервере" вроде как сохраняется в хранилище также тип "ДеревоЗначений".
А на выходе - уже получаем тип Структура.
Ну и далее ошибка и выход с "Загружаемый файл не является файлом дерева запросов!".
Вот честно, вроде навороченный запросник, а с разгону - даже не может открыть файл SEL с запросами.
Что, никто не проверял даже?)
353. akor77 744 05.05.18 17:16 Сейчас в теме
(352)всем понятно, что у данной консоли свой формат сохранения запросов. Вы первый, кто этого не понял и пытается открыть файл созданный в другой консоли.
354. akor77 744 05.05.18 17:18 Сейчас в теме
(352)я тебя вспомнил, ты меня уже тролит и обесценивал мою консоль.
355. AlexO 125 05.05.18 18:01 Сейчас в теме
(354) ну ты сам посуди - консоль не открывает ТИПОВЫЕ файлы запросов, имея какие-то "свои" форматы сохранения.
И в описании об этом речи нет потому - что это тоже троллинг твоей консоли?
Тогда у Вас что-то не так с восприятием вашей разработки.
(353)
и пытается открыть файл созданный в другой консоли.
Не какая-то "растакая другая" консоль, а есть стандартный формат хранения файлов запросов 1С в текстовом виде.
У Вас он не поддерживается (по причине - чего? Вы сами можете это объяснить?), хотя консоль разработана для использования в 1С, для правки запросов в 1С.
Ничего же не мешало открывать типовой запрос, и сохранять его в вашем любимом формате (ну разве что предупредить об этом при сохранении).
Т.е. у Вас сделано вроде как много всего - но нет даже связи с форматами 1С?
Вы понимаете, что это, по меньшей мере, странно)
357. akor77 744 06.05.18 00:14 Сейчас в теме
(355)про подавляющих личностей (как ты) написано в книге Рут Миншулл "Спады и подъемы". Это для тех, кто читает нашу переписку и находится под подавлением.
358. Georg_QQ 14.05.18 08:51 Сейчас в теме
(355)
а есть стандартный формат хранения файлов запросов 1С в текстовом виде.


SEL не есть стандартный формат хранения запроса в файле. он морально устарел вместе с 8.1 и уже очень много времени стандартный формат сохранения запросов q1c. И он не текстовый, а xml. именно его использует 1С (смотри итс). так что то что используете вы именно "растакая другая" консоль к 1с никакого отношения не имеющая. и никак иначе.

То что большинство продолжает использовать устаревший механизм, не значит что его должны использовать все. это раз. Два: т.к. большинство использует, не тот формат что рекомендован для данных целей разработчиками платформы, то ваша претензия не имеет под собой никаких оснований. Три: Нигде не сказано "все консоли запросов обязаны поддерживать стандартный формат 1с (q1c) и все устаревшие форматы (включая SEL) для обратной совместимости". Разработчик сам вправе решать что ему использовать.
359. EvgeniuXP 16.05.18 22:10 Сейчас в теме
Сразу получил два недочета: платформа 8.3.11.2700. Посмотрите, что можно сделать... Первая - сразу как открываю просто форму, вторая картинка - когда нажал кнопку "Сортировать таблицу".
Прикрепленные файлы:
360. akor77 744 16.05.18 22:57 Сейчас в теме
(359)Привет, похоже, что консоль запросов открыта как внутренняя обработка.
Это мой косяк.
Как исправить:
Открой в конфигураторе модуль формы "ФормаРедакторТабличногоДокумента" и замени там строку:
ОткрытьФорму("ВнешняяОбработка.КонсольЗапросовУФ.Форма.ФормаНастройкаСортировкиТаблицыЗначений", ПараметрыФормы, ЭтаФорма, ЭтаФорма, , , Оповещение, );

На
ОткрытьФорму(ПолучитьИмяОбработки() + ".Форма.ФормаНастройкаСортировкиТаблицыЗначений", ПараметрыФормы, ЭтаФорма, ЭтаФорма, , , Оповещение, );
361. akor77 744 16.05.18 22:59 Сейчас в теме
(359)А что касается первой картинки, то даже не знаю что сказать. Похоже на косяк платформы.
EvgeniuXP; +1 Ответить
362. akor77 744 16.05.18 23:33 Сейчас в теме
(359)
платформа 8.3.11.2700

её нет на сайте обновлений, походу, кривой релиз. Обнови платформу.
EvgeniuXP; +1 Ответить
363. EvgeniuXP 17.05.18 18:20 Сейчас в теме
(362)
её нет на сайте обновлений, походу, кривой релиз. Обнови платформу.
версия 8.3.12.1469 - тоже самое
364. akor77 744 17.05.18 18:23 Сейчас в теме
(363)
версия 8.3.12.1469 - тоже самое

Этот релиз тоже кривой, его нет на сайте обновлений
EvgeniuXP; +1 Ответить
365. EvgeniuXP 17.05.18 18:26 Сейчас в теме
(364)
Этот релиз тоже кривой, его нет на сайте обновлений

убрал режим совместимости с 8.3.3 - вроде помогло :) Спасибо, за оперативность :)
366. EvgeniuXP 17.05.18 18:33 Сейчас в теме
(365) а это так и должно быть? что там писать нужно?

P.S. Там ничего и писать нельзя... не понимаю смысла...
Прикрепленные файлы:
367. akor77 744 17.05.18 18:39 Сейчас в теме
(366)
там у колонки надо установить флаг выбора из списка, я в очередном релизе поправил, пока не выкладывал.
368. akor77 744 17.05.18 18:43 Сейчас в теме
(366) Установит флаг "РежимВыбораИзСписка"
369. EvgeniuXP 24.05.18 21:51 Сейчас в теме
а можно еще сделать, чтобы в табличную часть отображать гуиды? иногда нужно, не всегда, обмен ведем по гуидам, можно было быстро находить. В других консолях это есть, а в этой вроде нет, не нашел... а другую консоль как-то и ставить не хочется, эта больно нравится :)
371. akor77 744 25.05.18 00:08 Сейчас в теме
(369)Привет, есть один вариант получения гуидов. Надо выполнить запрос с выгрузкой в табличную часть, а потом воспользоваться готовым шаблоном, который добавит колонку уида в таблице и сгенерирует код для получения гуидов. Это описано в версии "ВЕРСИЯ 8.3.2.17" пункт 3 пп. а.

Я так получал таблицы одинаковых справочников из разных баз, а потом запросом эти две таблицы сравнивал.
370. EvgeniuXP 24.05.18 22:33 Сейчас в теме
Вот, еще ошибку нашел, если открыть редактор табличного документа, выделить всё содержимое (CTRL+A) и нажать на панели инструментов "Выделить текущую область" или "текущую строку" или "текущую колонку" получим ошибку. Понимаю, это дурак выделяет всё, а потом еще команду дает выделить область, строку или колонку :) мелкие придирки, на усмотрение автора.
Прикрепленные файлы:
372. akor77 744 25.05.18 00:09 Сейчас в теме
373. UUUU4 30.05.18 21:53 Сейчас в теме
1С:Предприятие 8.3 (8.3.11.2924) для ЗУП 2.5 на толстом клиенте не открывается сообщение об ошибке не выводит
374. akor77 744 30.05.18 22:56 Сейчас в теме
(373)Привет, а как воспроизвести ошибку?
375. UUUU4 30.05.18 23:21 Сейчас в теме
(374)
1С:Предприятие 8.3 (8.3.11.2924) для ЗУП 2.5 на толстом клиенте

просто попробовать открыть обработку, появляется у курсора мыши символ ожидания и затем не чего не происходит нет ни каких уведомлений. Обычная консоль запросов от ИТС под 82 работает, но мне нужен GUID в запросе
376. akor77 744 30.05.18 23:32 Сейчас в теме
(375)"Консоль запросов для Управляемых форм", а ЗУП 2.5 на простых формах.
377. akor77 744 30.05.18 23:40 Сейчас в теме
(375)Не знаю, получится ли, в конфигураторе настроить как конфигурацию на управляемых формах и попробовать посмотреть консолью. Завтра ам попробую на копии ЗУПа 2.5.
378. Froloid 65 06.06.18 13:12 Сейчас в теме
Подскажите пожалуйста по порядку распространения обновлений. Получается что 5 стармани нужно за каждую новую версию платить?
379. akor77 744 06.06.18 14:15 Сейчас в теме
(378) Добрый день! Да. Дело в том, что на некоторые доработки я трачу по несколько дней, по этому в рамках поддержки - это не такие большие расходы.
Сколько стоит час Вашей работы?
380. Froloid 65 06.06.18 18:34 Сейчас в теме
(379)
Сколько стоит час Вашей работы?

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

Вакансии

Бизнес-аналитик 1С
Санкт-Петербург
Полный день

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

Ведущий программист
Москва
зарплата от 130 000 руб. до 200 000 руб.
Полный день

Программист 1С
Одесса (Украина)
зарплата от 40 000 руб.
Полный день

Менеджер по продажам проектов 1С
Санкт-Петербург
Полный день