Запросник

Публикация № 72969

Разработка - Практика программирования

запрос консоль запросов обработка запросник

487
Переработанная консоль запросов. За основу взята консоль с диска ИТС. Основные изменения: 1. Добавлена возможность просмотра результата запроса в соответствии с настроенными выборками из него. 2. Добавлен просмотр содержания временных таблиц результата запроса. 3. Добавлен вызов консоли из текста программного модуля для отладки запроса. 4. Добавлены замеры времени выполнения как запроса в целом, так и запросов пакета для создания временных таблиц. 5. Добавлено отображение типов данных в результате запроса и отображение NULL. Также добавлено открытие на просмотр значений в результате запроса. 6. Добавлена возможность выполнения произвольного программного алгоритма над результатом запроса. Сохранение и загрузка алгоритмов. 7. Расширен список типов параметров. В том числе добавлена возможность работы с параметрами типа ТаблицаЗначений, Граница, МоментВремени 8. Добавлена возможность создавать запросы ко всем документам и элементам всех справочников конфигурации. 9. Существенно переработан интерфейс. В том числе добавлены просмотры в отдельных максимизированных окнах текста запроса, результата запроса, содержания временных таблиц. Много других доработок.

Доработанная стандартная консоль запросов.

Добавленные возможности.

По работе с текстом запроса (в контекстном меню)

1. Пункт "Пропылесосить текст из модуля" - очистить текст запроса, перенесенный из программного модуля от символов "|", ";" и кавычек

2. Пункт "Получить текст для модуля" - получить текст запроса для передачи в программный модуль (добавить символы "|", ";" и кавычки)

Работа с выборками из результата запроса

На закладке "Выборки" можно настроить правила выборки данных из результата запроса.

Предусмотрено 2 режима выгрузки результата запроса в таблицу/дерево:

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

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

При работе с настроенными выборками становится доступным флажок "Обходить иерархические выборки рекурсивно". При установленном флажке обход иерархических выборок осуществляется рекурсивно до нижнего уровня. При снятом флажке иерархическая выборка вернет только единственный уровень иерархии результата.

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

Работа со временными таблицами

На закладке «Временные таблицы» можно посмотреть содержимое временных таблиц запроса.

В поле «Временная таблица» из выпадающего списка необходимо выбрать имя временной таблицы и нажать кнопку «Показать». В результате в табличной части будет отображено содержимое временной таблицы.

Выполнение алгоритма над результатом запроса

Для выполнения произвольного алгоритма над результатом запроса необходимо нажать кнопку "Выполнить алгоритм..." на закладке "Результат". Выполнение алгоритма возможно только если результат представлен в виде таблицы значений (режим Таблица на закладке "Результат").

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

При написании алгоритма для обращения к строке результата необходимо использовать выражение СтрокаРезультата.

В левой части формы отображается таблица со списком полей результата запроса. Двойной клик на строке таблицы вставит в текст алгоритма конструкцию СтрокаРезультата.[Поле], где [Поле] - имя выбранного поля.

В подменю кнопки "Выполнить алгоритм" находится дополнительный пункт "Выполнить для первой строки". При выборе этого пункта алгоритм выполняется только для первой строки результата. Этот режим рекомендуется использовать для отладки алгоритма.

Вызов консоли из текста модуля для анализа отлаживаемого запроса

Консоль запросов может также использоваться для отладки запросов в режиме отладки кода. Для этого, необходимо после описания и установки параметров запроса вставить код:

ВнешниеОбработки.Создать("Q:\1С\8.2\My_EPFs\Запросник82.epf").Отладить(Запрос);

где

"Q:\1С\8.2\My_EPFs\Запросник82.epf" - путь к консоли на локальном диске;

Запрос - отлаживаемый запрос.

В результате в режиме "1С:Предприятие" будет открыто окно консоли с загруженным в нее запросом и установленными у него параметрами.

Прочие доработки

1. Добавлен режим редактирования текста запроса в отдельном большом окне (кнопка со стрелкой в правом верхнем углу текста запроса).

2. Добавлена кнопка копирования текста запроса в буфер обмена (в нижнем правом углу текста запроса)

3. Добавлена выгрузка результата запроса в табличный документ (пункт в контекстном меню )

4. В таблице результата добавлено отображение значения NULL

5. Добавлено открытие значение ячейки результата запроса по двойному клику.

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

7. Возможность работать с параметрами типа «МоментВремени» и "Граница" (кнопка «Момент времени / Граница» на закладке «Параметры»).

8. Хранение истории версий запроса.

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

10. Интерфейсные доработки.

Полное описание возможностей и порядок работы с Запросником включены в справку по нему.

Сайт Запросника: https://sites.google.com/site/vtezin/zaprosnik-1s

487

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

Наименование Файл Версия Размер
Запросник82.epf
.epf 135,81Kb
27.10.16
2302
.epf 27.10.2016 135,81Kb 2302 Скачать
Запросник81.epf
.epf 133,84Kb
27.10.16
2524
.epf 27.10.2016 133,84Kb 2524 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Serj1C 477 14.07.10 08:08 Сейчас в теме
Отладка запросов - отличная идея!
Один недочет - по кнопке получить параметры из запроса слетают значения параметров, которые имеют тип "Список Значений".
Интерфейс поначалу не интуитивный, но быстро привыкаешь. Плюс!
2. tezin 549 14.07.10 09:16 Сейчас в теме
Ошибка с очисткой параметров исправлена.
3. Serj1C 477 14.07.10 09:48 Сейчас в теме
Привычна кнопка F7 дает ошибку))

{Форма.Форма(60)}: Преобразование значения к типу Булево не может быть выполнено
Если Не ТолькоВыделенныйТекст Тогда
4. sss999 38 14.07.10 10:56 Сейчас в теме
Если интересно можешь посмотреть мою дороботку консоли Чистова.
5. Kondrat 10 14.07.10 11:01 Сейчас в теме
Есть небольшая ошибка в функции ПропылесоситьТекстЗапроса(), последняя кавычка не убирается. Сначала нужно убрать закрывающую точку с запятой. А так Плюс!
7. tezin 549 14.07.10 12:22 Сейчас в теме
объясните плиз как работает кнопка F7
8. Alias 153 14.07.10 13:45 Сейчас в теме
Командная панель "КонтМеню" (визуально расположенное под деревом запросов) содержит в себе пункт ВыполнитьЗапрос (с одноимённым действием) с установленным акселератором F7.
Процедура ВыполнитьЗапрос() предполагает наличие одного необязательного булевого параметра, место которого занимает ссылка на кнопку командной панели, что вызывает ошибку.
Методы обхода каждый выбирает для себя сам... можно проверить тип параметра, можно повесить на пункт свою процедуру, из которой уже вызвать ВыполнитьЗапрос() и т.д.
9. Alias 153 14.07.10 13:47 Сейчас в теме
Ах да... что хотел сказать-то на самом деле. Пожелание.
Очень надо сделать просмотр хранилищ значений. То есть если в результате есть поле типа хранилище, нужно не просто говорить о том что о но хранилище -- это понятно. Нужно его получить, попытаться определить тип и открыть или хотя бы дать какую-то доп.информацию в случае невозможности открытия.
Спасибо.
10. tezin 549 14.07.10 14:40 Сейчас в теме
F7 - исправлено
с Хранилищем - принято, идея правильная
11. direktorSan 257 14.07.10 21:22 Сейчас в теме
Вот такой простой запрос

выбрать истина поместить ист;
выбрать ложь поместить лож;
выбрать * из ист объединить выбрать * из лож

1) выполняется нормально.
Однако в списке временных таблиц ни таблицы "ист", ни таблицы "лож" НЕ видно!

2) Если скормить этот запрос конструктору но вместо ПОМЕСТИТЬ написать INTO - опять же ни одной таблицы не видно!

3) Если написать "ПОМЕСТИТЬ ист // просто временная таблица", то в списке временных таблиц появится таблица "ист // просто временная таблица". Имя не верное, но содержимое отображается правильно.

4) А если написать вот так:
ПОМЕСТИТЬ
// таб;
ист //просто временная таблица;
;

то в списке временных таблиц будет таблица "// таб;"
И при попытке посмотреть ее содержимое вываливается ошибка:
"{Форма.Форма(1563)}: Ошибка при вызове метода контекста (Выполнить): {(2, 1)}: Неверное присоединение
ВременнаяТаблица = ЗапросТМП.Выполнить().Выгрузить();
по причине:
{(2, 1)}: Неверное присоединение"

12. tezin 549 14.07.10 22:19 Сейчас в теме
выбрать истина ПОМЕСТИТЬ ист;
выбрать ложь ПОМЕСТИТЬ лож;
выбрать * из ист объединить выбрать * из лож

вот так работает
все дело в регистре ПОМЕСТИТЬ
добавлю и нижний
25. direktorSan 257 16.07.10 14:22 Сейчас в теме
(12) А как с англоязычными формами?
А как с комментариями в запросе? ;)
28. tezin 549 19.07.10 12:33 Сейчас в теме
(25) А в чем проблема? Конструктор их убивает, но это особенность конструктора.
29. direktorSan 257 20.07.10 09:42 Сейчас в теме
(28)
У меня проблем нет - юзаю свою консоль! Чего и Вам желаю! ;)
13. Serj1C 477 15.07.10 07:16 Сейчас в теме
Вот прицепились)) Все эти ошибки мы и сами можем поправить.
Еще раз спасибо за идею отладки запроса!
26. direktorSan 257 17.07.10 02:01 Сейчас в теме
(13) Следуя этой логике - и платформу можно дописать "под себя"...
Ток никто чего-то не пытается этого делать! ;)
30. rasswet 82 21.07.10 10:50 Сейчас в теме
свалилось в ошибку

{ВнешнийОтчет.РасчетЗатратНЗП(26)}: Значение не является значением объектного типа (Количество)
Если Выборка.Количество()=0 тогда
при нажатии на ок
вылетает вторая

{Форма.Форма(732)}: Ошибка при вызове метода контекста (Выполнить): {(53, 4)}: Ошибка обработки представления "РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты:Несоответствие типов (параметр номер ""2"")"
<<?>>РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериодаГраница, , , Счет В (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОсновноеПроизводство)), , ) КАК ХозрасчетныйОстаткиИОбороты
***отдельно без консоли этот запрос работает.
куда копать? конфа БУХ КОРП
если скопировать руками через буфер мой запрос и вставить его в консоль-он работает.
где-то при автоматическом перебрасывании
для режима "для отладки запросов в режиме отладки кода" глюк имхо.
вторая ошибка связанана с тем, что не передался корректно параметр "граница".
31. tezin 549 21.07.10 15:29 Сейчас в теме
(30) какой режим стоит на закладке "Выборки"?
вышлите пожалуйста мне на vtezin@gmail.com текст запроса
36. rasswet 82 25.07.10 14:59 Сейчас в теме
(31) режим дефолтный. самый верхний по моему. в пн только смогу точно сказать.
выборка количество-это из моего отчета далее по тексту. т.е она по идее не должна срабатывать..но это не Ваш косяк думаю.
а вот второе из моего вопроса (30) это касательно границы я так думаю. попробуйте передать параметр граница в какой-то свой запрос. работает?
может консоль не понимает что такое граница?
37. tezin 549 26.07.10 10:00 Сейчас в теме
Добавлена возможность работы с параметрами Типа "Момент времени" (одноименная кнопка на закладке "Параметры"). В планах: докрутить до возможности работать с Границами.
(36) Консоль действительно не понимает границ, т.к. невозможно задать такой тип на колонку в табличном поле. Научим :)
38. rasswet 82 27.07.10 09:19 Сейчас в теме
(37) как научишь-маякни-буду дальше тестировать. очень помогает просмотр ВТ.
39. tezin 549 27.07.10 09:46 Сейчас в теме
43. rasswet 82 28.07.10 08:46 Сейчас в теме
14. tezin 549 15.07.10 09:53 Сейчас в теме
Доработано:
1. Открытие данных типа ХранилищеЗначения из результата запроса
2. Улучшено создание списка временных таблиц

Всем кому пригодилось - пожалуйста :)
А про ошибки все равно пишите.
Чем доделанней результат - тем радостнее всем :)
15. air_mike 25 15.07.10 11:58 Сейчас в теме
Понравилась консолька.
Ошибки:
1.При нажатии "Выполнить запрос", сбрасываются все изменения и нельзя отменить предыдущее действие(Ctrl+Z).
Закоментил строку (1223).
2.Добавил из стандартной автосохранение.
3.Слегка изменил интерфейс.
16. tezin 549 15.07.10 13:06 Сейчас в теме
что было в строке 1223? в текущем релизе она пустая

автосохранение думаю добавить в будущем опционально

что не понравилось в интерфейсе?
17. Serj1C 477 15.07.10 13:30 Сейчас в теме
(16) Классический интерфейс с ИТС был бы привычней.
Неудобство: При формировании запроса по зеленой кнопке курсор улетает в начало запроса, что не заставляет заново искать проблемное место. Причем по кнопке F7 - такого не происходит
18. Alias 153 15.07.10 13:45 Сейчас в теме
>Открытие данных типа ХранилищеЗначения из результата запроса
Мало, мало.... недостаточно. Если в хранилище структура -- просто пишет "Структура".
В той же Консолидации много в хранилищах -- и хрен что посмотришь.

У нас просто тоже есть свои наработки, в них сделано так:
Создана дополнительная форма "ФормаОтображенияТаблицы", на которой лежит табличное поле без колонок.
Написаны отдельные процедуры по программному формированию колонок в случае если переданный в форму параметр является Массивом, ТаблицейЗначений, СпискомЗначений, Структурой.
И затем загрузка данных в сформированные колонки.

Причем из себя же эта форма может вызываться рекурсивно (то есть например элемент массива в свою очредь является списком значений)

Советую :)
19. tezin 549 15.07.10 14:00 Сейчас в теме
20. galich 148 15.07.10 14:05 Сейчас в теме
И еще бы сделать выполнение произвольной обработки по выборке как в consquery :)
21. tezin 549 15.07.10 15:28 Сейчас в теме
добавлено отображение по двойному клику на ячейке результата содержимого коллекций (массив, таблица значений, структура и т.д.) сохраненных в хранилищах значений

идея и код любезно предоставлены Alias :)

произвольную обработку по выборке добавлять думаю не стоит
хочется сохранить сочетание простоты, удобства и функциональности

данный инструмент предназначен для написания и отладки запросов
ну и анализа его результата
обработка результата на мой взгляд немного другая тема
23. Alias 153 15.07.10 16:11 Сейчас в теме
(21) Хорошо. :) уберите только подчёркивание в 169-ой строке формы отображения данных. А то имя формы неверное -- вложенное раскрытие коллекций не работает.
Плюсег поставил, уже вовсю пользуюсь для отладки :)
Что ещё хотелось бы, но знаю как удобнее это увидеть:
Сейчас очень хорошо что написан тип пустой ссылки. То есть если пусто -- видно что из себя это пусто представляет. А бывает надо понять тип _непустого_ значения... например, если перечисление -- то какого типа. В большинстве случаев (для ссылок на документы и справочники) этот вопрос может решиться двойным кликом. И то не всегда. А для перечислений узнать тип уже нереально. Вот как бы это можно придумать поудобнее?
может быть сделать аналог настройки списка чтоб по каждой колонке можно было бы отметить флажок "выводить доп.колонку типа данных"... при этом программно добавлять колонку и рисовать в ней тип. И в контекстное меню добавить пункт "Показать тип", чтоб правой кнопкой на значении щёлкнул -- тип увидел.
Такой функционал кому-то ещё кажется нужным?
27. tezin 549 19.07.10 12:32 Сейчас в теме
(23) Мне кажется хорошей штукой. Подумаю как лучше и сделаю
22. air_mike 25 15.07.10 15:36 Сейчас в теме
В интерфейсе не понравилось расположение кнопок "выполнить запрос"(поставил сразу после "Выборки". Так привычнее, да и всё же удобнее сразу из кода поднять мышь просто вверх а не вверх по ближе к закрытию.) и "конструктор"(переместил слева от скопировать в буфер).
а так же размеры окон. Сделал привязку гор. разделителя по центру. окно с запросами увеличили в ширину.

В строке 1223 была проца пропылисосить или как то так. кнопка выполнить запрос.
24. lemich 3 16.07.10 09:24 Сейчас в теме
Огромной спасибо! Очень полезная консоль.
32. Serj1C 477 22.07.10 15:35 Сейчас в теме
Еще одна проблема. При работе с регистрами расчета необходимы параметры типа массив. И подругому никак. Видел что этот тип не доступен в табличном поле.

Выкрутился из ситуации так:
1) Добавил колонку "ЭтоМассив" в параметры
2) ПередОткрытием Формы устанавливаю его в Истина (для типа Массив), преобразование в СписокЗначений отставляю
3) По кнопке выполнить заполняю параметры запроса при наличии этой галочки как Параметр.ВыгрузитьЗначения(), чтобы получился на выходе массив
4) Последний штрих - при активации левого списка (с запросами), заполняю эту галочку (оно там почему-то через [индекс] сделано)

Если это добавите - будет еще лучше )
35. tezin 549 23.07.10 14:17 Сейчас в теме
(32) Для решения этой проблемы в новом варианте консоли сделан автоматический перевод параметров типа СписокЗначений в Массив. Вроде массивы вместо списков всегда подходят. Если кто найдет вариант когда список нельзя заменить массивом - сообщайте, будем думать дальше. Я пока таких вариантов не нашел.
33. Serj1C 477 23.07.10 08:15 Сейчас в теме
Не пробывали для получения результатов временных таблиц использовать метод ВыполнитьПакет() ?

Запрос (Query)
ВыполнитьПакет (ExecuteBatch)
Синтаксис:
ВыполнитьПакет()
Возвращаемое значение:
Тип: Массив.
Описание:
Последовательно выполняет все запросы и возвращает массив результатов для каждого запроса из пакета. Результаты помещаются в массив в последовательности расположения запросов в тексте пакета. Результатом выполнения запроса на уничтожение временной таблицы является значение Неопределено, которое также помещается в массив результатов.
34. tezin 549 23.07.10 12:07 Сейчас в теме
(33) такой метод знаю
только пока не понял зачем он здесь
он тащит все результаты всех запросов массива с сервера в оперативку клиента
на моей практике обычно нужен результат последнего запроса
а промежуточные временные таблицы при отладке можно посмотреть и моим вариантом
40. German 871 27.07.10 10:42 Сейчас в теме
каждому хочется сделать свою консоль, есть очень много консолей (проверенных временем ) в которых нет этих "детских болезней"....

41. tezin 549 27.07.10 11:41 Сейчас в теме
(40) детские болезни предпочитаю взрослым :D
все лучшее в этом мире вообще давно уже сделано
аминь
Serg3141; +1 Ответить
42. AlexDKam 27.07.10 21:51 Сейчас в теме
А в режиме отладки есть возможность передать временные таблицы через Запрос.МенеджерВременныхТаблиц = МойМенеджерТаблиц, которые были уже созданы перед вызовом текущего запроса?
44. tezin 549 28.07.10 11:33 Сейчас в теме
45. tezin 549 28.07.10 11:51 Сейчас в теме
(42) попробуй
по идее запрос передается как объект
скорее всего и менеджер идет с ним
просто в списке временных таблиц они не отобразятся
он формируется по тексту запроса
но имя таблицы можно и вручную вбить
46. almas 198 29.07.10 10:50 Сейчас в теме
Уважаемый Tezin добавь пожалуйста функционал "действия с результатом запроса" реализованный в консоли http://www.lavelin.ru. К сожалению его консоль более не развивается, а функциональные возможности огромны. :idea:
47. tezin 549 29.07.10 12:04 Сейчас в теме
(46) а дайте пожалуйста ссылку на описания необходимого функционала
на указанном сайте ничего похожего не нашел
48. a-novoselov 1088 02.08.10 08:33 Сейчас в теме
(47) http://www.7homes.ru/1_v8 - очень удобная штука с возможностью обработки результата запроса в режиме "Предприятие". Для одноразовых выборок очень полезная. Пишешь в ней обработку даже не заглянув в конфигуратор ;)
51. rasswet 82 05.08.10 09:49 Сейчас в теме
53. tezin 549 05.08.10 13:13 Сейчас в теме
(51) угу посмотрю
спасибо за инфу
если будет еще че интересное - кидай
особо расширять функционал не планирую, чтобы не наворотить мегамонстра
в первую очередь простота и удобство по работе и отладке запросов
думаю на след неделе выдать новый релиз
много планов уже накопилось
пока в основном по удобству работы а не по функционалу
49. tezin 549 02.08.10 22:46 Сейчас в теме
Добавлена генерация фрагмента текста модуля с созданием запроса, установкой параметров и копированием его в буфер. Новая кнопка вынесена на поле текста запроса справа внизу.
50. rasswet 82 04.08.10 15:49 Сейчас в теме
лишние "" генерит в параметре
Запрос.УстановитьПараметр(""Дата"", );
(49) баг
52. tezin 549 05.08.10 13:09 Сейчас в теме
54. air_mike 25 11.08.10 13:27 Сейчас в теме
Есть ошибка "Не описана ни одна выборка из запроса!". В обычной консоли данный запрос работает. Запрос выглядит примерно так. (в РегСв. хранится папка с номенклатурой)
ВЫБРАТЬ
Номенклатура.Ссылка
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
Номенклатура.Ссылка = &Номенклатура
И Номенклатура.Ссылка В ИЕРАРХИИ
(ВЫБРАТЬ
ОбязательноеОбеспечениеНоменклатуры.Номенклатура
ИЗ
РегистрСведений.ОбязательноеОбеспечениеНоменклатуры КАК ОбязательноеОбеспечениеНоменклатуры)
55. tezin 549 11.08.10 14:14 Сейчас в теме
(54) Если на закладке Выборки стоит режим "Обход по списку настроенных выборок" и выборки не описаны, то выдается именно это предупреждение
В обычной консоли работы с выборками нет
56. air_mike 25 12.08.10 08:19 Сейчас в теме
Спасибо (55). Действительно не стоял не один из переключателей. Не планируешь создать в параметрах возможность ввода "списков значений"?
57. tezin 549 12.08.10 09:01 Сейчас в теме
59. air_mike 25 12.08.10 09:44 Сейчас в теме
(57) Ну тогда бы сказал, как это работает у тебя. У меня ставится только галочка и дальше не дает ни какого выбора. Вощем я не разобрался и встроил из http://www.lavelin.ru/index.php?option=com_jdownloads&Itemid=58&task=view.download&catid=5&cid=21 список значений.

Название "консоль запросов + " мне лично нравилось больше.))
60. tezin 549 12.08.10 09:59 Сейчас в теме
(59) Работает стандартно. Очищаешь значение параметра. Потом в типе значения указываешь Список значений. Потом заполняешь список.
Таким же образом кстати заполняется параметр типа Массив, т.е. через список.
Или я не совсем понял о чем ты.

Консолей много - Запросник один ;)
61. air_mike 25 12.08.10 13:59 Сейчас в теме
(60) Ты правильно понял. У меня просто нет ни где выбора типа. Да ладно ерунда. Добавил уже поле выбора вместо булево "Выражение".
63. tezin 549 12.08.10 15:02 Сейчас в теме
(61) Если параметр уже заполнен, то очисть поле крестиком - тогда появится кнопка выбора типа. Специально проверил - все работает :)
58. tezin 549 12.08.10 09:42 Сейчас в теме

Новый релиз. Обработка теперь называется Запросник, чтобы не путалась с другими консолями.
Изменено многое. Вот основные моменты:
1. Оптимизировано размещение кнопок, надписей, панелей.
2. Убраны многие лишние вопросы, предупреждения и .т.д.
3. Добавлена возможность скрыть-отобразить список запросов. При работе с одним запросом – это лишний элемент формы. При открытии Запросника с одним запросом список скрывается автоматически.
4. Изменена работа с настройкой параметров, выборок и списком предыдущих файлов запросов. Теперь это делается на панели в центре формы.
5. Удалена сводная таблица из панели результата.
Добавлено:
1. Вывод типа значения в текущей ячейке результата или временной таблицы (под таблицей результата).
2. Открытие значения ячейки по двойному клику из временной таблицы.
3. Открытие результата запроса в отдельном максимизированном окне.
4. Возможность сохранять описание к запросу (окно под списком запросов).
5. Автоматическое открытие настройки параметров если после закрытия конструктора запроса появились новые
6. При переключение режима таблица/дерево результата запроса или изменении настроек выборок запрос не выполняется заново а переформируется только его результат. Если запрос еще не выполнен – он выполнится.

P.S. Так как пререработок много, то и косяки могут быть. Заранее приношу извинения и обещаю оперативно поправлять.
62. rasswet 82 12.08.10 14:53 Сейчас в теме
не хватает такой штуки.
делаю два запроса.
выполняю первый. заполняется ТЧ.переключаюсь. ВЫполняю второй. а потом переключаюсь опять на первый и хочу видеть результат первого. чтобы можно было выполнить по очереди два запроса и потом сравнить два запроса. а то можно видеть в результате только тот, который выполнялся последним. Создавать может еще страничку результата...как-то так.
64. tezin 549 12.08.10 15:08 Сейчас в теме
(62) добавил такую фишку:
при максимизации результата запроса он отркывается всегда в новом окне
соответственно можно сравнивать результаты как разных запросов так и например одного с разными параметрами
не забыть бы описать :)
67. rasswet 82 13.08.10 13:25 Сейчас в теме
(64) это когда на стрелку жмем вправо вверх?
68. tezin 549 13.08.10 14:14 Сейчас в теме
(67)
да над результатом справа
65. artbear 1156 13.08.10 08:58 Сейчас в теме
Код
Консоль = ВнешниеОбработки.Создать("Q:\1C\8.1\My_EPFs\КонсольЗапросов81+.epf");
Консоль.ВнешнийЗапрос = Запрос;
Форма = Консоль.ПолучитьФорму();
Форма.Открыть();
Возврат;

неудобен.
Вместо него лучше сделать спец.функцию обработки и тогда можно использовать в отладчике следующий вызов
ВнешниеОбработки.Создать("Q:\1C\8.1\My_EPFs\КонсольЗапросов81+.epf").Отладить(Запрос);

просто и удобно.

ЗЫ а вообще посмотри мою статью "Повышение удобства разработки", я там описал очень удобные и мощные консоли.
66. tezin 549 13.08.10 10:19 Сейчас в теме
(65) принято и сделано
новый вариант вызова для отладки:
ВнешниеОбработки.Создать("Q:\1С\8.1\My_EPFs\Запросник81.epf").Отладить(Запрос);
спасибо за ценный совет
так действительно гораздо удобнее
статью обязательно почитаю
69. BigMih 16.08.10 11:38 Сейчас в теме
Запросник получился очень даже неплохой! 8-) Спасибо!
70. tezin 549 17.08.10 08:09 Сейчас в теме
Доработки:
1. Добавлено описание
2. В окне описания добавлена автоматически формируемая строка вызова Запросника для отладки запроса.
3. Двойной клик по запросу в списке - выполнение запроса (было - открытие в максимизированном окне для редактирования)
4. отдельная нескрываемая панель работы с файлами запросов
71. tezin 549 20.08.10 17:25 Сейчас в теме
Переработана логика работы со списком запросов. Теперь при добавлении в список нового элемента он помещается на текущий уровень списка, а не становится подчиненным текущему как раньше. Для добавления подчиненного элемента создана специальная кнопка.
72. tezin 549 26.08.10 09:04 Сейчас в теме
В форме справки добавлена кнопка копирования в буфер строки вызова Запросника для отладки запроса.
В панели управления списком запросов добавлена кнопка редактирования наименования запроса.
73. tezin 549 15.09.10 16:08 Сейчас в теме
Иногда при открытии формы наблюдалось кривое расположение панелей. Исправлено.
74. xuser 17.09.10 20:07 Сейчас в теме
Может для "Выполнить запрос" по умолчанию лучше "F5"?
По аналогии с "Продолжить отладку", а то как-то не привычно.
А для выполнения выделенного текста, например "Ctrl/Shift/Alt"+"F5"
75. tezin 549 21.09.10 09:02 Сейчас в теме
(74) Горячие клавиши оставлены как в стандартной консоли. Так тоже привычней :)
76. BigMih 07.10.10 08:47 Сейчас в теме
Добавить функционал для работы с таблицами значений возможно? В смысле использования их в разделе параметров (очень хочется &ТЗ :) ). кстати так и не понял как там граница/момент работает - постоянно кнопка недоступная
78. Grohovod 20.10.10 12:07 Сейчас в теме
(76) Чтобы кнопка с границей заработала достаточно на нее повесить процедуру КоманднаяПанельЦентральноеОкноРедактироватьМоментВремени
Видимо автор ее переименовал но забыл сменить в свойствах кнопы
77. tezin 549 18.10.10 11:37 Сейчас в теме
Исправлена ошибка с отображением служебной информации о записи результата (типы записей и уровни группировок) в режиме обхода по настроенным выборкам.
79. tezin 549 20.10.10 14:17 Сейчас в теме
Исправлена ошибка с редактированием параметров типа Граница или МоментВремени.

(спасибо Grohovod)

В режиме Момент времени:

- добавлена кнопка очистки в поле редактировании ссылки на документ в режиме момента времени,

- исправлена ошибка, возникавшая при очистке ссылки на документ.
80. Wicked 59 21.10.10 17:38 Сейчас в теме
если в запросе УНИЧТОЖАЕТСЯ Врем Таблица то ее просмотреть невозможно!
Исправить бы :)
81. tezin 549 27.10.10 13:41 Сейчас в теме
Добавлена версия для 8.2 (толстый клиент)
82. Kyrales 132 28.10.10 05:48 Сейчас в теме
83. tezin 549 28.10.10 09:23 Сейчас в теме
(82) Теперь точно есть
Почему то через Chrome файл не загружался, хотя публикация сохранялась.
Залил через IE.
84. ivbs 02.11.10 11:14 Сейчас в теме
85. rasswet 82 03.11.10 14:30 Сейчас в теме
можно доделать, чтобы показывало время выполнения для временных таблиц (каждая в отдельности)?
86. tezin 549 04.11.10 08:10 Сейчас в теме
(85) если подскажете как - с удовольствием :)
87. rasswet 82 04.11.10 11:45 Сейчас в теме
еще есть такая вариация http://www.infostart.ru/public/64522/?PAGEN_1=1
и http://www.infostart.ru/public/19577/ но время выполнения умеет засекать вот эта http://narod.yandex.ru/disk/26998761000/wremjawt.epf. не помню кто автор, может сможете оттуда забрать себе механизм, засекающий время вт. очень часто нужно. приходится пользоватся и вашей и той.
88. tezin 549 08.11.10 11:10 Сейчас в теме
(87)
http://narod.yandex.ru/disk/26998761000/wremjawt.epf
- интересный вариант
сделаю ориентировочно ближе к концу недели
сейчас в отпуске
89. tezin 549 08.11.10 20:23 Сейчас в теме
Добавлен расчет времени выполнения запросов создания временных таблиц.

Изменен интерфейс работы со временными таблицами:

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

- при переходе на закладку "Временные таблицы" или при выборе временной таблицы на данной закладке, открывается диалог с информацией о временных таблицах (имя таблицы, время выполнения, количество строк). Для просмотра содержимого временной таблицы необходимо дважды кликнуть на нужной строке диалога. В результате в табличной части закладки "Временные таблицы" будет отображено содержимое выбранной таблицы.
90. rasswet 82 08.11.10 23:23 Сейчас в теме
(89) не вижу время выполнения ВТ(((
91. tezin 549 09.11.10 19:11 Сейчас в теме
(90) опять не сработала выкладка через Хром :(
перезалил через ИЕ
92. rasswet 82 09.11.10 20:58 Сейчас в теме
(91) теперь всё ок. если бы еще куда-то вывести на время выполнения так, чтобы не пропадало оно. а то когда открывается сама таблица, то времени уже не видно... но сойдет конечно и так! спасибо!
95. tezin 549 10.11.10 09:31 Сейчас в теме
(92) Добавлено отображение времени выполнения запроса по временной таблице на закладку "Временные таблицы"
93. CheBurator 3400 09.11.10 23:48 Сейчас в теме
Этих консолей запросов столько, что за их выкладывание без подробного описания чем лучше/хуже остальных - скоро банить надо..
94. tezin 549 10.11.10 09:04 Сейчас в теме
(93) если есть претензии к описанию данной консоли - будь конкретней;
если есть желание написать обзор всех консолей, которых очень много с глубоким сравнительным анализом и подробным описанием кто-кого чем лучше или хуже - удачи в святом порыве, заодно глядишь и самую лучшую сбацаешь ;)


96. CheBurator 3400 10.11.10 11:50 Сейчас в теме
(94) так как я семерочник только с совсем началом использования/изучения 7.7 - то таковой обзор написать не могу. А он - нужен! Потому что консолей в 8-ке расплодилось столько, как и перенумераторов в 7.7 - практически полная аналогия... но если перенумераторы в 7.7 видетельствоали скорее всего о том, что написавший в глаза не видел штатного инструмента по перенумерации и является скорее "чайником" - то про 8-ов в этом ключе даже и не знаю что думать...
98. artbear 1156 10.11.10 15:25 Сейчас в теме
(96) По 8-ке можешь мои статьи в моем профиле посмотреть.
97. mialord 10.11.10 14:33 Сейчас в теме
Для 8.1 на данном ресурсе есть уже консоли вразы мощнее и с доп. функционалом.
99. tezin 549 10.11.10 17:19 Сейчас в теме
(97) ну хоть в разы, а не на порядки :D
из того, что я видел мне кажется моя удобнее
дай плиз ссылку на "самую-самую" по твоему мнению
и CheBurator'у пригодится
Оставьте свое сообщение

См. также

Описание формата внутреннего представления данных 1С в контексте обмена данными 145

Статья Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных Разработка

Фирма 1С не рекомендует использовать внутреннее представление данных для любых целей, которые отличны от обмена с 1С:Предприятием 7.7. Но сама возможность заглянуть на "внутреннюю кухню" платформы с помощью функций ЗначениеВСтрокуВнутр(), ЗначениеВФайл(), ЗначениеИзСтрокиВнутр() и ЗначениеИзФайла(), дала возможность сообществу программистов 1С разработать новые приемы разработки и анализа. Так, именно на использовании внутреннего представления был построен алгоритм "быстрого массива", который позволяет практически мгновенно создать массив в памяти на основании строки с разделителями. С помощью разбора внутреннего представления можно "на лету" программным кодом выполнить анализ обычной формы и даже сделать редактор графической схемы. Во внутреннем формате сохраняют свои данные между сеансами различные популярные внешние обработки. А еще это возможность сделать быстрый обмен с внешними системами.

1 стартмани

06.09.2019    4431    4    Dementor    27       

Вам нравятся запросы в 1С? 13

Инструменты и обработки Программист Конфигурация (md, cf) v8 v8::Запросы 1cv8.cf Абонемент ($m) Практика программирования Разработка

Речь не только о том, что простейший запрос с "легальным" оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать "в нагрузку" к тексту запроса. Все эти "Новый Запрос", "УстановитьПараметр" и последующие пляски с обработкой результата... Пора с этим заканчивать!

1 стартмани

03.07.2019    9231    1    m-rv    73       

1С:Ассемблер. Немного летнего веселья! 291

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Разработка

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

1 стартмани

21.06.2019    12743    37    Evil Beaver    108       

Простые примеры сложных отчетов на СКД 253

Статья Программист Архив с данными v8 v8::СКД 1cv8.cf Абонемент ($m) Практика программирования

Подписи в отчете. Особенности соединения наборов: как соединить несоединяемое. Остатки на дату и обороты по месяцам в одном отчете. Курс валюты на каждую дату без группировок и соединений в запросе. Отчет с произвольными колонками и с произвольной последовательностью. "Неадекватный отчет".

1 стартмани

12.06.2019    11786    11    Hatson    22       

Безопасная работа с транзакциями во встроенном языке 184

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Разработка

Разбираемся с опасностями использования транзакций во встроенном языке 1С. Познаем ошибку "В данной транзакции уже происходили ошибки". Учимся защищаться от них.

1 стартмани

25.03.2019    13471    7    tormozit    35       

Баг или фича? Неожиданное поведение платформы 165

Статья Системный администратор Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Тестирование и исправление Разработка

Рассмотрим несколько случаев неожиданного поведения платформы 1С, а также что с этим можно cделать.

18.02.2019    12087    31    YPermitin    88       

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8 514

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных WEB Универсальные функции Инструментарий разработчика Универсальные обработки

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

1 стартмани

31.01.2019    25446    245    bonv    108       

HTML в новой версии 8.3.14 на примере 3-х JavaScript библиотек: AmCharts, HighCharts, DHTMLX 167

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Универсальные обработки Практика программирования Разработка

Тестируем возможности HTML в новой версии 8.3.14 платформы на примере 3-х JavaScript библиотек: AmCharts, HighCharts, DHTMLX.

1 стартмани

29.01.2019    12887    62    Synoecium    33       

Отладка сложных отчетов на СКД 137

Отчеты и формы Программист Расширение (cfe) v8 v8::СКД 1cv8.cf Россия Абонемент ($m) Практика программирования

Расширение для отладки сложных отчетов на СКД (в т.ч. для собираемых программно "на лету") и быстрого перехода к отладке таких отчетов в консоли запросов и отчетов на СКД.

1 стартмани

28.12.2018    13337    53    maxx    42       

Реализация простого http-сервиса "Просмотр карточки номенклатуры(товара) в браузере" 144

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования

Практический пример реализации простого http-сервиса средствами 1С Предприятие 8.3. Обеспечивает просмотр списка товаров и просмотр данных товара в браузере.

1 стартмани

07.12.2018    12861    10    dmitry1975    31       

Использование подсистемы БСП "Заполнение объектов" 134

Статья Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Россия Абонемент ($m) Практика программирования Универсальные функции БСП (Библиотека стандартных подсистем)

Применение механизмов БСП для добавления новых команд заполнения к формам различных объектов. Использование расширений конфигурации для доработки. Шаблоны для реализации собственных команд заполнения.

1 стартмани

23.11.2018    13075    8    ids79    22       

Работа с публикациями "Инфостарт" 13

Инструменты и обработки Программист Архив с данными v8 УУ Абонемент ($m) Практика программирования О сообществе WEB

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    8293    10    RocKeR_13    12       

HTTP Сервисы: Путь к своему сервису. Часть 3 133

Инструменты и обработки Системный администратор Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Инструментарий разработчика Практика программирования

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.

1 стартмани

27.08.2018    14999    29    dsdred    13       

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции 63

Инструменты и обработки Программист Бизнес-аналитик Приложение (apk) v8 Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    14845    23    informa1555    26       

Работа с данными выбора 38

Инструменты и обработки Программист Архив с данными v8 Россия Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

17.07.2018    20054    13    kalyaka    15       

HTTP Сервисы: Путь к своему сервису. Часть 1 258

Статья Системный администратор Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Практика программирования WEB

Уже много было написано про http-сервисы, но то и дело всплывают «Новые» статьи по обмену между базами V8 по COM, что «Немножко» удивляет. Решил внести свои 5 копеек, поработаем с http-сервисом.

1 стартмани

15.07.2018    35390    15    dsdred    22       

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар") 105

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::Запросы 1cv8.cf Абонемент ($m) Практика программирования

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    19121    86    m-rv    57       

БСП: Дополнительная обработка (Регламенты), примеры от простого к сложному 236

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования БСП (Библиотека стандартных подсистем)

Очень много попадается странных решений, которые можно решить через БСП:Дополнительные отчеты и обработки. Я бы вообще БСП из-за этой подсистемы переименовал в «Большое Спасибо Программистам». Поработаем с подсистемой в части написания регламентных заданий.

1 стартмани

10.05.2018    26435    24    dsdred    34       

Как выполнить отчет на СКД через COM и получить данные отчета? 86

Статья Программист Архив с данными v8 УПП1 Россия Windows Абонемент ($m) Практика программирования

Для чего это нужно. Например, нужно в одной базе получить какой-либо показатель из другой базы. Этот показатель вычисляется в каком-либо сложном отчете, который написан на СКД. Можно, конечно, "скопипастить" текст запроса из другой базы, немного подправить его и выполнять в том же COM подключении. Но с этим теряется гибкость: если отчет изменился, то нужно помнить о том, что где-то есть его "немного модифицированная" копия. В статье будет рассмотрен пример получения данных из базы ЗУП.

2 стартмани

08.05.2018    17327    10    wowik    3       

Работа со схемой запроса 171

Статья Программист Конфигурация (md, cf) v8 v8::Запросы Абонемент ($m) Инструментарий разработчика Практика программирования

Стандартом взаимодействия с реляционной базой данных стал язык SQL. Приемником SQL в 1С является язык запросов. Язык запросов, также как и SQL, является структурированным. Составляющие структуры запроса отвечают на разные вопросы о том, какие данные требуется получить и какие манипуляции с множествами данных необходимо произвести при получении. В простых случаях текст запроса можно написать вручную, однако в сложных случаях, а также при программном формировании, - лучше воспользоваться объектной моделью запроса и использовать объект "Схема запроса". В статье дается описание объектной модели и особенностей работы с ней, а также приводится решение, упрощающее взаимодействие с объектом "Схема запроса".

1 стартмани

24.04.2018    27370    72    kalyaka    34       

Асинхронная запись и чтение файла без использования модальных методов и временных файлов 131

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

10.04.2018    18187    17    Alxby    23       

Заполняем по шаблону (по умолчанию) 68

Инструменты и обработки Программист Архив с данными v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

08.02.2018    17498    20    mvxyz    17       

Бесплатная проверка контрагентов в ФНС (общий модуль с алгоритмом). На примере выводим статус в список справочника контрагентов 122

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования

Если вам интересно проверить контрагенте в ФНС, вам поможет данная публикация. Весь алгоритм работы строится на основе данных, полученных с сервиса http://npchk.nalog.ru совершенно бесплатно.

1 стартмани

01.02.2018    24377    61    rpgshnik    46       

Расширение возможностей печати: Вывод произвольного нижнего и верхнего колонтитула 8

Отчеты и формы Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Печатные формы документов Практика программирования Универсальные функции

Расширяем функционал вывода нижнего / верхнего колонтитула. Стандартно 1С имеет достаточно ограничений по выводу и наполнению колонтитулов содержимым, взять хотя бы такие, как вывод только текста и отсутствие ограничения на номер конечной страницы. А при разработке кода сталкиваешься с тем, что свой блок с нижним колонтитулом нужно прижимать к низу страницы. Казалось бы быстро решаемый вопрос, но и в нем есть нюансы. Сейчас я расскажу о том, как решалась эта задача. UPD 15.02.2018. Добавлен вывод верхнего колонтитула; Вывод колонтитулов на первой и последней странице управляется параметрами; Научился считать страницы: Добавлено заполнение переменных аналогичных стандартным из колонтитулов; Задаются форматы даты и времени. Ограничения прежние: 1. Повторно сформировать табличный документ после смены параметров страницы интерактивно.; 2. Передавать данные для более плотной печати как можно более мелко нарезанными кусками.

1 стартмани

29.12.2017    21555    21    agent00mouse    0       

Практика доступа в базу 1С через протокол oData. Чтение данных 276

Статья Системный администратор Программист Бизнес-аналитик Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Сервисные утилиты Практика программирования Администрирование данных 1С

Для чего нужен доступ в базу 1С через REST-интерфейс по протокол oData? Как его организовать? Как не будучи гуру в JavaScript и .NET получить быстрый визуальный доступ к данным базы 1С? Попробую дать ответ на эти вопросы и прокомментирую некоторые нюансы, с которыми я столкнулся.

1 стартмани

11.12.2017    55401    232    Dementor    42       

Печатная форма, сделанная как расширение конфигурации для БП 3.0. Новые возможности БСП 26

Инструменты и обработки Программист Расширение (cfe) v8 БП3.0 Абонемент ($m) Практика программирования Универсальные печатные формы

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

1 стартмани

06.12.2017    17927    52    kwazi    6       

Простой бесплатный DashBoard с помощью http сервиса 256

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования

Как создать свой DashBoard без дополнительных затрат и сложных технических доработок.

1 стартмани

25.11.2017    43510    58    dewersia    32       

Полезный код для программистов 1С (часть 1). Управление свойствами элементов формы. Хранение копии данных реквизитов 141

Статья Программист Архив с данными v8 Абонемент ($m) Инструментарий разработчика Практика программирования

У каждого программиста за время работы накапливается полезный инструментарий, которым он привык пользоваться. Естественно и у меня он тоже имеется. И вот решено было немного поделиться с сообществом. Возможно идеи не новые. Более того, допускаю, что реализованы они не самым оптимальным образом. Но ведь для этого сообщество и существует, чтобы делиться с ним, получая обратную связь.

1 стартмани

24.09.2017    31560    17    vandalsvq    79       

Telegram-боты 149

Инструменты и обработки Программист Архив с данными v8 Абонемент ($m) Практика программирования

Описание теории, разбор архитектуры и пример реализации telegram-ботов. Сразу скажу, со структурированием изложения мало что могу поделать. :) редакция от 18.07.2018 Правки последней редакции выделены жирным.

1 стартмани

01.09.2017    21854    119    PLAstic    45       

Макеты СКД 282

Статья Программист Внешний отчет (ert,erf) v8 v8::СКД 1cv8.cf Абонемент ($m) Практика программирования

Рассмотрены некоторые типовые задачи, которые решаются с помощью предопределенных макетов, а также перечислены несколько случаев, для которых макеты не подходят

1 стартмани

25.07.2017    68453    106    json    24       

Расширения конфигураций 1С: учимся перехватывать методы 110

Инструменты и обработки Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования

В этой статье я на примерах разберу некоторые механизмы расширений конфигураций 1С. А именно «перехваты» методов модуля объекта и «перехваты» событий формы и элементов формы. Данная статья написана с учебными целями, чтобы показать, как при помощи расширений конфигурации можно делать такие доработки, ради которых раньше приходилось снимать конфигурацию с поддержки.

1 стартмани

30.05.2017    82343    14    signum2009    45       

Многопоточность. Универсальный «Менеджер потоков» (фреймворк) с отслеживанием зависимости объектов 176

Статья Программист Архив с данными v8 1cv8.cf Россия Абонемент ($m) Практика программирования Математика и алгоритмы Универсальные функции Производительность и оптимизация (HighLoad)

Восстановление партий, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

26.05.2017    38506    168    DarkAn    86       

Регулярные выражения – это просто. Построитель и отладчик регулярных выражений 181

Инструменты и обработки Программист Архив с данными v8 1cv8.cf Абонемент ($m) Инструментарий разработчика Практика программирования

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

1 стартмани

13.03.2017    22393    112    romasna    47       

Несколько шаблонов для доработки типовых конфигураций 174

Инструменты и обработки Программист Конфигурация (md, cf) v8 v8::УФ Абонемент ($m) Практика программирования Инструментарий разработчика

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

1 стартмани

03.10.2016    27624    102    json    25       

Простой способ индексирования интервалов 181

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования

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

1 стартмани

28.09.2016    31710    39    ildarovich    22       

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут 61

Инструменты и обработки Системный администратор Программист Компонента, плагин (dll, vbs,..) v8 Windows Абонемент ($m) Практика программирования

Как сделать автоматические уведомления о разных событиях из 1С в корпоративный чат MyChat для сотрудников компании

1 стартмани

14.08.2016    38196    35    Demanoidos    60       

Хранение файлов в томах на диске (для УПП 1.3) 76

Инструменты и обработки Программист Архив с данными v8 УПП1 Windows Абонемент ($m) Практика программирования

Доработка типовой УПП 1.3 в плане хранения присоединенных файлов вне базы данных

2 стартмани

05.06.2016    43623    4    wowik    27       

БСП 2.3 и БСП 3.0: Просто про выполнение внешней обработки в фоне (c индикацией прогресса выполнения) 185

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика Практика программирования БСП (Библиотека стандартных подсистем)

Простое пояснение о том, как сделать внешнюю обработку с фоновым выполнением и индикацией процесса для любой конфигурации на основе БСП 2.3.2. UPDATE 20/09/19: добавлен вариант обработки с индикацией процента выполнения и статусом выполнения для БСП 3.0.

1 стартмани

18.05.2016    45862    136    rozer    52       

Остатки на каждый день в запросе 34

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf УУ Windows Учет ТМЦ Абонемент ($m) Практика программирования

Запрос формирует остатки товаров на каждый день в пределах выбранного периода.

1 стартмани

26.04.2016    34135    19    arakelyan    17       

Выполнение JavaScript кода из 1С в объекте Поле HTML Документа (HTML 5) и вызов события в 1С ПриНажатии 150

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Россия Windows Абонемент ($m) Практика программирования

Пример выполнения JS кода из 1С в Поле HTML Документа под управляемыми формами, с удобным получением результата в 1С(С помощью вызова привязанного события ПриНажатии к элементу ПолеHTMLДокумента)

1 стартмани

22.03.2016    60349    135    igo1    49       

Количество дней недели (понедельников/вторников/...) в заданном диапазоне одним запросом 29

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 Абонемент ($m) Практика программирования

При реализации периодического авто-заполнения маршрутных листов по графику (недельному) необходимо было просчитать стоимость всего периода, с условием выездов только по определенным дням. Заморачиваться с обходом результата не хотелось. Пришлось написать "Небольшой" запрос.

1 стартмани

03.03.2016    12061    1    Alexander.Shvets    5       

Простые радости жизни программиста 1С: выбор типа значения 51

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

17.02.2016    38611    45    yuraos    17       

Отображение прогресса выполнения длительных операций в БСП и их отладка в текущем сеансе. 160

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Практика программирования БСП (Библиотека стандартных подсистем)

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

1 стартмани

17.02.2016    40399    143    balanton    20       

Яндекс.Деньги "Благотворительность" 17

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Яндекс.Деньги теперь в 1С. Форма для приема благотворительных взносов. Форму легко сделать и вставить на любую страницу сайта или блога. Платежи будут приходить на ваш кошелек. На форме есть три способа платежа: из кошелька, с банковской карты, с баланса мобильного.

1 стартмани

16.02.2016    17264    9    Tatitutu    5       

Мастер рассылки e-mail 2.2 для управляемых форм 9

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ ERP2 БП3.0 УТ11 Абонемент ($m) Практика программирования Email

Для пользователей: переделанный из старый разработки под 8.2 с использованием библиотеки Мастер рассылки e-mail 2.2 (ERP, УТ, БП) (Только управляемые формы), который теперь может запускаться под любой версией платформы с разрешенными или запрещенными модальными/синхронными вызовами в конфигурации. Также удобный выбор e-mail и их владельцев с помощью отбора динамического списка по любым критериям и галочки исключения.

1 стартмани

29.12.2015    30491    20    milkers    4       

Нечеткий поиск одним запросом 37

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

28.12.2015    19150    57    vasvl123    9       

Передача больших пакетов через веб-сервисы 137

Инструменты и обработки Системный администратор Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования Администрирование данных 1С Внешние источники данных

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

1 стартмани

06.12.2015    41024    44    YPermitin    19       

Пример связи 1С и мессенджера Telegram. Получение данных из 1С запросом из Telegram 242

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных

В результате чтения публикации Вы получите готовую внешнюю обработку, позволяющую получать из 1С данные, запрашиваемые через Telegram. В данной статье рассмотрим следующее: Использование HTTPСоединение; Чтение JSON для версии 1С 8.3.6 и выше, а также аналог JSON для версии 1С ниже 8.3.6; Подключение обработчика ожидания; Некоторые основные возможности API Telegram; Как создать бота для Telegram; Программное создание колонок дерева на управляемой форме;

1 стартмани

19.11.2015    69796    417    Luchik    199