IE2017

Конструктор запроса для 7.7

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

Visual quest - это обработка под 1с v7.7 компоненту "Оперативный учет"
для визуального построения запросов по справочникам, документам и регистрам.

Новая версия. Изменен в главную очередь способ работы с условиями. Пока тянет только на "бэту". Поэтому хотелось бы больше комментариев.

В архиве "FormEx" - библиотека, которая использовалась при написании и отладке,
"vq1", "vq2" - обработки  по версиям.

Для функционирования необходимо скопировать FormEx.dll в папку "bin" 1С-а или
в папку, где располагается база данных.

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

Наименование Файл Версия Размер
Конструктор запроса для 7.7
.rar 29,85Kb
21.02.12
547
.rar 29,85Kb 547 Скачать
vq1.rar
.rar 20,00Kb
21.02.12
8
.rar 20,00Kb 8 Скачать
FormEx.rar
.rar 188,83Kb
21.02.12
17
.rar 188,83Kb 17 Скачать

См. также

Комментарии
1. Алексей Плутенко (Noy) 1057 03.11.09 15:49 Сейчас в теме
Замечательная обработка!
Еще советую сделать похожий реестр документов, а то все (во всяком случае я не нашел) предложенные на этом портале универсальные реестры не могу вывести мне реестр расходных накладных не с названием клиента, а с его телефоном например....
2. Андрей Чибидин (andrewbc) 266 03.11.09 16:03 Сейчас в теме
идея понятна. проблемка в том, что телефон клиента хранится в одном из трех справочников "ЮрЛица", "СвоиЮрЛица" и "ФизЛица". а в справочнике "Контрагенты" "ЮрЛицо" - это реквизит "Справочник" неопределенного вида. но подумать можно...
3. Алексей Плутенко (Noy) 1057 03.11.09 16:06 Сейчас в теме
4. Ёпрст (Ёпрст) 1018 03.11.09 16:10 Сейчас в теме
Если Запрос.Выполнить(тз) = 0 Тогда
{\VISUAL QUEST.ERT(1050)}: <<?>>
Запрос[1] : Пустой запрос
5. Ёпрст (Ёпрст) 1018 03.11.09 16:15 Сейчас в теме
Добавь возможность корректировки текста запроса.
6. Альтаир (Altair777) 637 03.11.09 16:21 Сейчас в теме
(0) Интересно :)
Мне кажется, что будет удобнее "Текст запроса" и "Результат" разместить на отдельных закладках. И заодно избавиться от слоя "Дополнительный".

Кстати, вот обнаружил - при двойном клике на переменной запроса и последующем нажатии на "ОК" к имени переменной добавляется "1", хотя ничего не поменялось
Прикрепленные файлы:
7. Александр Рытов (Арчибальд) 2659 03.11.09 16:29 Сейчас в теме
Думаю, что это хорошо. А баги отловятся со временем. :)
8. Альтаир (Altair777) 637 03.11.09 16:33 Сейчас в теме
(7) Главное, что бы они не просто отлавливались, а и исправлялись :)
9. Андрей (Свой) 165 03.11.09 19:22 Сейчас в теме
спасибо, красиво, еще бы прямые запросы прикрутить
как то можно сохранять сконструированные запросы ? а возвращаться в панель настройки после выполнения запроса ?
10. Андрей (Свой) 165 03.11.09 19:30 Сейчас в теме
"а возвращаться в панель настройки после выполнения запроса ?"
- снят, это есть в обработке
11. Андрей Чибидин (andrewbc) 266 03.11.09 21:43 Сейчас в теме
Ёпрст 03.11.2009 16:10:59
Если Запрос.Выполнить(тз) = 0 Тогда
{\VISUAL QUEST.ERT(1050)}: <<?>>
Запрос[1] : Пустой запрос

это откуда?
12. Андрей Чибидин (andrewbc) 266 03.11.09 21:44 Сейчас в теме
Ёпрст 03.11.2009 16:15:35
Добавь возможность корректировки текста запроса.

а это правильно
13. Андрей Чибидин (andrewbc) 266 03.11.09 21:54 Сейчас в теме
Кстати, вот обнаружил - при двойном клике на переменной запроса и последующем нажатии на "ОК" к имени переменной добавляется "1", хотя ничего не поменялось

Это отловил. спасибо за баги.
14. Андрей Чибидин (andrewbc) 266 03.11.09 23:02 Сейчас в теме
для (6. Altair777) FormEx надо ограничивать. Слишком сильная вещь.
15. Андрей Чибидин (andrewbc) 266 03.11.09 23:12 Сейчас в теме
для 6. Altair777
если что-то изменил, то не гони на разработчика. У МЕНЯ ЗАКЛАДОК НЕ БЫЛО. (учти написно для 1С, а не для С или Delphi)
16. Андрей Чибидин (andrewbc) 266 03.11.09 23:35 Сейчас в теме
лучше бы посоветовали где можно структуру запросов 1с-скую найти (чтобы в обратку разобрать)
17. shard (shard) 246 04.11.09 01:36 Сейчас в теме
Не сочтите за рекламу, но более простая (хотя бы в плане оформления и функционала) обработка: http://infostart.ru/public/16692/

Если же будет желание прикрутить прямые запросы, то могу подкинуть примеров и помочь с идеями по реализации (стучаться в личку).
18. Андрей Чибидин (andrewbc) 266 04.11.09 02:02 Сейчас в теме
для "упрощения" выложил еще одну обработку. хотелось покрасивее и поудобнее.
19. Василий (boev) 04.11.09 10:35 Сейчас в теме
Понравилось,
при созраннении в ехель дало ошибку,хочет так :)
ПолноеИмяФайла = КаталогИБ()+"select.xls";
20. Альтаир (Altair777) 637 04.11.09 10:43 Сейчас в теме
(15)
> если что-то изменил, то не гони на разработчика. У МЕНЯ ЗАКЛАДОК НЕ БЫЛО. (учти написно для 1С, а не для С или Delphi)

Да, я изменил для себя, добавил закладки, потому что так удобнее
А я разве где-то гнал? Глюки Вы написали сами, без меня :)

Кстати, может Вы не в курсе... 1С умеет рабоатть с закладками. Хотя она и не С и не Delphi.

P.S. снял плюс
P.P.S. А версию Формекса можно было и по-свежее выложить. (в архиве 93, у меня 95)
21. Vasily Kushnir (vasilykushnir) 62 04.11.09 10:55 Сейчас в теме
(1) Для этого есть Новейший Отчет :)
Делает практически ВСЕ.
22. Альтаир (Altair777) 637 04.11.09 11:02 Сейчас в теме
(17) > Не сочтите за рекламу, но более простая (хотя бы в плане оформления и функционала) обработка: http://infostart.ru/public/16692/

вот! Это лучше :)
И редактор текста запроса есть, и закладки.
23. Алексей Плутенко (Noy) 1057 04.11.09 11:32 Сейчас в теме
(17),(22) Че-то я не разобрался, а как в http://infostart.ru/public/16692/ сделать группировку по Регистр.ОстаткиТоваров.Товар.ТорваяМарка?
А в (0) можно. Именно это считаю главным достоинством данной обработки.
Автору респект!
24. Альтаир (Altair777) 637 04.11.09 11:45 Сейчас в теме
(23) хм... в этом ты прав
Но автору не респект за отношение к критике :)
например, за 15 коммент
25. Руслан Харисов (fAngel) 371 04.11.09 12:29 Сейчас в теме
Можно еще добавить журнал расчетов для более полной картины
26. Alexandr Maloi (maloi_a) 04.11.09 14:45 Сейчас в теме
Все хорошо, только параметров не хватает.
27. Андрей Чибидин (andrewbc) 266 04.11.09 17:45 Сейчас в теме
извинения для Altair777. но я придерживаюсь мнения, что комментировать надо оригинальную разработку, а не измененную. у меня был вариант с закладками, но я их не очень люблю за то, что они убивают свободное место на форме. если монитор у разработчика 22'', а у пользователя 15'', то нужно это учитывать. хотя это не предмет для спора. кому что нравится.
28. Андрей Чибидин (andrewbc) 266 04.11.09 17:50 Сейчас в теме
редактор запроса будет. дело времени и загруженности на работе. так же будут расширены варианты условий (В списке, не В списке). еще будут добавлены условия "Когда" для функций. планирую использовать внешние переменные и функции.
вопрос для (26) Все хорошо, только параметров не хватает. - о каких параметрах идет речь?
29. Андрей Чибидин (andrewbc) 266 04.11.09 17:52 Сейчас в теме
еще раз извинения за резкий тон, тяжелый день на работе был. всем спасибо за конструктивную критику.
30. Альтаир (Altair777) 637 04.11.09 18:12 Сейчас в теме
(27) Я комментировал оригинальную разработку.
Или Вы не нашли в ней глюк, описанный в (6)? :D

И насколько же процентов закладка уменьшает место? :)

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

Извинения приняты.
Прикрепленные файлы:
31. Андрей Чибидин (andrewbc) 266 04.11.09 18:25 Сейчас в теме
(30) я нашел глюк и сразу исправил (выложено вчера). может прекратим пикировку? лучше констуктивно. сохранять запросы тоже будем. хорошая мысль. хотелось бы в этой области спросить - может уже есть наработки по интерпретации текста запроса? не хотелось бы изобретать велосипед и тратить лишнее время. а сохранять запрос во внутреннем формате глупо - разные платформы и конфигурации...
32. Альтаир (Altair777) 637 04.11.09 18:35 Сейчас в теме
(30) Вот еще глюк:
В Текст и Результаты попадают только те переменные запроса, у которых выставлен флажок "Группировка". Мне кажется, это не есть хорошо :)
33. Андрей Чибидин (andrewbc) 266 04.11.09 19:04 Сейчас в теме
в принципе так было задумано. хотя можно установить дополнительный флаг. просто я в результатах запроса пользуюсь только значениями группировок и функций. переменные обычно не несут корректной информации об итогах или движениях по группировкам. (в них находятся значения последнего движения, но не по группировке, а просто по движению регистра). если мне нужно, я добавляю группировку. но коль есть потребность, можно добавить.
34. Андрей Чибидин (andrewbc) 266 04.11.09 19:16 Сейчас в теме
кстати,

(17) > Не сочтите за рекламу, но более простая (хотя бы в плане оформления и функционала) обработка: http://infostart.ru/public/16692/

с нее все и началось (спасибо автору за идею), но для меня были нужны 2 вещи:
- (23) как в http://infostart.ru/public/16692/ сделать группировку по Регистр.ОстаткиТоваров.Товар.ТорваяМарка?
- для одной переменной назначить несколько объектов конфигурации (номенклатура = регистр.остатки.номенклатура, регистр.партииналичие.номенклатура).
по поводу второго пункта хотелось бы получить замечания по поводу правильности совмещения типов.
35. Альтаир (Altair777) 637 04.11.09 19:17 Сейчас в теме
(33) А если запрос по справочнику делается или по реквизитам документов? Тогда переменные еще ой как несут в себе информацию ;)

И, как я понимаю цель подобных разработок - это с минимальными потерями времени и не создавая внешних отчетов, получить результат.
Иначе проще в стандартном конструкторе сделать.
Вот и хотелось бы иметь действительно универсальный инструмент, не требующий дополнительных усилий для программирования :)
36. Альтаир (Altair777) 637 04.11.09 19:18 Сейчас в теме
(34) А это можно и в Описании указать... Выразить благодарность автору за идею :)
37. Андрей Чибидин (andrewbc) 266 04.11.09 19:22 Сейчас в теме
сделаю при следующем обновлении. пока не очень ориентируюсь в корректности ссылок.
38. shard (shard) 246 04.11.09 20:05 Сейчас в теме
(23) действительно, у меня (буду так называть) нет развертки по реквизитам реквизита. как вариант ручками, но это только для тех кто понимает как запросы пишутся. но согласитесь, обработки подобного класса явно не для операторов/кассиров/расчетчиков предназначены ;)

теперь по сути - использование formex я бы убрал, тк не всегда внешние библиотеки можно использовать (к примеру при первом запуске при отсутствии прав на запись в реестр). и подключение библиотеки производить при условии что она в каталоге обработки лежит (а то вдруг опять же что с правами).
39. Андрей Чибидин (andrewbc) 266 04.11.09 20:13 Сейчас в теме
с использованием FormEx'а согласен, сам не раз попадал с правами в терминальном клиенте. есть задумка реализовать дерево без ВК. но пока это тестируется как отдельная разработка.
40. Андрей Чибидин (andrewbc) 266 04.11.09 20:19 Сейчас в теме
(38) кстати, 1с даже на server 2008 x64 требует полные права на папку с ИБ. поэтому записать туда FormEx.dll не проблема. но с идеей на проверку наличия ВК в папке обработки согласен. будет учтено.
41. Андрей Чибидин (andrewbc) 266 04.11.09 20:20 Сейчас в теме
больно удобно и красиво с FormEx'ом... :)
42. Alexandr Maloi (maloi_a) 05.11.09 03:48 Сейчас в теме
(28) Речь идет о параметрах в запросе. В 7.7 это переменная, в 8.0 это &параметр, получающие значение при выполнении запроса.
43. Андрей Чибидин (andrewbc) 266 05.11.09 07:52 Сейчас в теме
44. АЛьФ (АЛьФ) 05.11.09 10:36 Сейчас в теме
2(38) Чушь какая! FormEx (в отличие от других внешних компонент) как раз не требует регистрации в реестре. Уж года два как не требует.
Altair777; +1 Ответить
45. Buxxter (Buxxter) 42 05.11.09 16:17 Сейчас в теме
Какой из двух файлов для чего нужен? Какой качать? (Лучше в шапку добавить инфу)
46. Андрей Чибидин (andrewbc) 266 05.11.09 16:20 Сейчас в теме
качать первый. второй сейчас убью. это старая версия.
47. Brr (brr) 178 07.11.09 14:34 Сейчас в теме
Неплохо бы проверять, что Formex уже загружен.
48. Brr (brr) 178 07.11.09 14:44 Сейчас в теме
Пе,Гр,БГ,НО,Пр,Рс,КО,См - расшифруйте. Гр - это группировка, БГ - без групп. А остальное? Пе - надо думать, переменная. А сортировка будет?
49. Андрей Чибидин (andrewbc) 266 07.11.09 17:12 Сейчас в теме
(47) а есть смысл? надо проконсультароваться у АЛьФ'а.
(48) НО - НачОст, Пр - Приход, Рс - Расход, КО - КонОст, См - Сумма.
с сортировкой - вопрос времени. в перспективе - полный синтаксис 1с-запроса (по возможности).
50. Raider (raider-rec@ya.ru) 09.11.09 09:35 Сейчас в теме
+1 Мне понравилось! Пригодицца когда нибудь. Спасибо!
51. sanches (sanches) 230 10.11.09 11:44 Сейчас в теме
Неплохо было бы при открытии делать проверку на то, что FormEx уже загружен. А то получается, что он у меня при запуске базы подгружается, а когда запускаю отчет, то выдает что нельзя загрузить Formex и закрывается, при этом в окне сообщений пишет что он уже загружен
52. Аркадий Кучер (Abadonna) 3681 10.11.09 13:20 Сейчас в теме
(51)>делать проверку на то, что FormEx уже загружен. А то получается, что он у меня при запуске базы подгружается.
Вот как раз и не надо! ;) Ежели уж есть FormEx, то и надо его использовать на всю катушку, т.е. как раз и грузить вначале.
А из обработки ЗагрузитьВнешнююКомпоненту убрать вообще.
53. Андрей Чибидин (andrewbc) 266 10.11.09 16:04 Сейчас в теме
(51) это сделано в новой версии. но она пока в отладке и не выложена. пока можно внести исправления вручную:

Процедура ПриОткрытии()
Попытка
Тест = СоздатьОбъект("Сервис");
Тест = "";
Исключение
Если ЗагрузитьВнешнююКомпоненту("FormEx.dll") = 0 Тогда
Предупреждение("Невозможно загрузить внешнюю компоненту FormEx.dll.
|Выполнение обработки прервано.");
СтатусВозврата(0);
Возврат;
КонецЕсли;
КонецПопытки;
..........
КонецПроцедуры

54. Александр Смоленский (Alex_Smolensky) 104 14.12.09 12:40 Сейчас в теме
55. GSoft. (GSoft) 2766 14.12.09 14:29 Сейчас в теме
единственно я бы добавил проверку загрузки Formex
у многих файл библиотеки не лежит в корне ИБ

	Попытка                             
		Сервис = СоздатьОбъект("Сервис")
	Исключение
		//Formex не загружен
		Если ЗагрузитьВнешнююКомпоненту("FormEx.dll") = 0 Тогда
			Предупреждение("Невозможно загрузить внешнюю компоненту FormEx.dll.
			|Выполнение обработки прервано.");
			СтатусВозврата(0);
			Возврат;
		КонецЕсли;
	КонецПопытки;
...Показать Скрыть
Оставьте свое сообщение