Процедуры для замены текста запросов через схему запросов

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

Разработка - Инструментарий разработчика

Запросы изменениетекстаЗапроса

Модуль с процедурами по работе с текстами запросов через схему запросов.

   Предлагаю вашему вниманию несколько процедур для изменения текста запроса, замена(добавление) полей в ВЫБРАТЬ, добавление (замена) условия в запрос. Так же можно заменить исходную таблицу в запросе.

Ограничение одно он не может править вложенные запросы, зато все остальные, будь то пакет или объединение можно исправить, добавить.

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

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

Во всяком случае меньше вероятность получения некорректных записей в регистрах...

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


// заменить поля в колноках
// in( out ) ТекстЗапроса - Текст заменяемого запроса
// in ПараметрыЗамены - Структура 
// 	ДанныеЗамены - Структура, ключ Имя колонки, Значение Новое выражение поля
//  ДоступныеПоля Структура Ключ ИмяИсточника, Значение - Массив строки с добавляемыми досупными полями( эта хрень нужня для выборки из временной таблицы, без них добавленные поля выдадут ошибку)
// 	НомерПакета - Номер пакета в пакете запросов, (для пакета, по умолчанию 0)
// 	Номераполей - Массив с номерами полей для замены, если неопределено то все поля, по умолчанию неопределено
Процедура ЗаменитьПоляЗапроса(ТекстЗапроса,ПараметрыЗамены) Экспорт

....

Процедура ЗаменитьИсходныеДанные(ТекстЗапроса,ПараметрыЗамены) Экспорт

Процедура ДобавитьПоляВЗапрос(ТекстЗапроса,ПараметрыДобавления)

Процедура ДобавитьУсловиеВЗапрос(ТекстЗапроса,ПараметрыУсловия) Экспорт

Процедура ЗаменитьУсловиеВЗапросе(ТекстЗапроса,ПараметрыУсловия)

Процедура ДобавитьСоединениеВЗапрос(ТекстЗапроса,ПараметрыСоединения)
Вместо("ТекстЗапросаТаблицаЗакупки")
Функция NF_ТекстЗапросаТаблицаЗакупки(Запрос, ТекстыЗапроса, Регистры)
	// Вставить содержимое метода.
	Результат = ПродолжитьВызов(Запрос, ТекстыЗапроса, Регистры);
	
	Если Результат = "" Тогда
		Возврат Результат;
	КонецЕсли;
	
	НайдЭлемент = ТекстыЗапроса.НайтиПоЗначению(Результат);
	ТекстыЗапроса.Удалить(НайдЭлемент);
	ПараметрыЗамены = Новый Структура;
	ДанныеЗамены = Новый Структура("Партнер,Контрагент"," 	ВЫБОР
	|		КОГДА &РасчетыЧерезОтдельногоКонтрагента ТОГДА
	|			ВЫБОР КОГДА &NF_ДопРасчетыЧерезОтдельногоКонтрагента ТОГДА
	|          		&NF_ПоставщикПартнер
	|           ИНАЧЕ
	|          		&Партнер
	|           КОНЕЦ 
	|		ИНАЧЕ ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
	|	КОНЕЦ","ВЫБОР
	|		КОГДА &РасчетыЧерезОтдельногоКонтрагента ТОГДА
	|           ВЫБОР КОГДА &NF_ДопРасчетыЧерезОтдельногоКонтрагента ТОГДА
	|          		&NF_ПоставщикКонтрагент
	|           ИНАЧЕ
	|          		&Контрагент
	|           КОНЕЦ
	|		ИНАЧЕ &Организация
	|	КОНЕЦ ");
	ПараметрыЗамены.Вставить("ДанныеЗамены",ДанныеЗамены);
	ПараметрыЗамены.Вставить("НомерПакета",0);

	
	
	//МассивПолей = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок("Партнер,Контрагент");
	NF_РаботаСЗапросамиСлужебный.ЗаменитьПоляЗапроса(Результат,ПараметрыЗамены);
	ТекстыЗапроса.Добавить(Результат,"Закупки");
	Возврат Результат;
КонецФункции

Все тестировалось на платформе 8.3.13.1865  конфигурация ЕРП 2.4.6.207

Но должно работать везде, где есть Схема Запросов.

P.S. Процедуры из модуля обработки необходимо будет перенести в общий серверный модуль.

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

Наименование Файл Версия Размер
Процедуры для замены текста запросов через схему запроссов:

.epf 7,69Kb
05.09.19
2
.epf 1 7,69Kb 2 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. cool99 06.09.19 16:30 Сейчас в теме
Заголовок хоть поправьте :) "запроССов"
2. bmk74 165 06.09.19 16:47 Сейчас в теме
(1) Спасибо поправил :)...но с с двумя сс как то загадочнее было :)
3. dhurricane 06.09.19 23:12 Сейчас в теме
Небольшая заметка.

Использование такого объекта "СхемаЗапроса" накладывает ряд серьезных ограничений на использование его для целей модификации текстов запроса. И все они имеют одну природу - схема запроса работает с запросом аналогичном тому, как это делает и констурктор запроса. И как многим известно, конструктор запроса порой заметно "портит" исходный текст запроса.

Как это может проявляться? Вот несколько примеров.
Платформа 8.3.15.1489
Конфигурация 1С:ERP Управление предприятием 2 (2.4.7.141)

1) Добавление псевдонимов полям. Имеем простой текст запроса:
ВЫБРАТЬ
	СправочникВалюты.Ссылка,
	СправочникВалюты.ПометкаУдаления,
	СправочникВалюты.Код,
	СправочникВалюты.Наименование
ИЗ
	Справочник.Валюты КАК СправочникВалюты
Пропустим такой незамысловатый текст через схему запроса, при том без какой либо модификации:
Схема = Новый СхемаЗапроса;
Схема.УстановитьТекстЗапроса(ТекстЗапроса);
ТекстЗапроса = Схема.ПолучитьТекстЗапроса();
В результате все выбираемые поля получат псевдонимы, т.е. запрос станет таким:
ВЫБРАТЬ
	СправочникВалюты.Ссылка КАК Ссылка,
	СправочникВалюты.ПометкаУдаления КАК ПометкаУдаления,
	СправочникВалюты.Код КАК Код,
	СправочникВалюты.Наименование КАК Наименование
ИЗ
	Справочник.Валюты КАК СправочникВалюты
Результат выполнения такого запроса конечно же не изменится, но такое изменение текста очень больно отзовется, если запрос применяется в динамическом списке. Элементы формы, связанные со стандартными реквизитами справочника, потеряют связь с полями динамического списка, или говоря проще, очистится их свойство "ПутьКДанным". Соответственно в таких колонках перестанут отображаться данные.

2) Добавление псевдонимов выражениям расширения языка запросов для СКД. Вполне рабочий запрос набора данных:
ВЫБРАТЬ
	Валюты.Ссылка,
	Валюты.Код,
	Валюты.Наименование
ИЗ
	Справочник.Валюты КАК Валюты
{ГДЕ
	Валюты.Код = &Код}
Здесь параметр "Код" является опциональным. Если пользователь включит использование параметра, отбор по коду сработает, если не включит - будут выбраны все элементы справочника. Однако после работы со схемой запроса получаем следующий текст запроса:
ВЫБРАТЬ
	Валюты.Ссылка КАК Ссылка,
	Валюты.Код КАК Код,
	Валюты.Наименование КАК Наименование
ИЗ
	Справочник.Валюты КАК Валюты
{ГДЕ
	(Валюты.Код = &Код) КАК Поле2}
Теперь бесполезно включать и выключать использование параметра "Код". Он не повлияет на результат запроса до тех пор, пока мы дополнительно не установим отбор по полю "Поле2".

3) Автогенерация связей таблиц. Для интерактивной работы с конструктором запроса это не проблема. Но когда работаешь с запросом программно, используя схему запроса, отсутсвие полного контроля над связями таблиц может раздражать.
Пусть у нас есть исходный запрос данных справочника Номенклатуры:
ВЫБРАТЬ
	Номенклатура.Ссылка КАК Ссылка
ИЗ
	Справочник.Номенклатура КАК Номенклатура
Попробуем добавить левое соединение с таблицей "Товары" документа "РеализацияТоваровУслуг":
Схема = Новый СхемаЗапроса;
Схема.УстановитьТекстЗапроса(ТекстЗапроса);

Оператор = Схема.ПакетЗапросов[0].Операторы[0];
Оператор.Источники.Добавить("Документ.РеализацияТоваровУслуг.Товары", "Товары");

ТекстЗапроса = Схема.ПолучитьТекстЗапроса();
Мы не успели описать связи таблиц, но текст запроса уже превратился в это:
ВЫБРАТЬ
	Номенклатура.Ссылка КАК Ссылка
ИЗ
	Документ.РеализацияТоваровУслуг.Товары КАК Товары
		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
		ПО Товары.Номенклатура = Номенклатура.Ссылка
			И Товары.НоменклатураНабора = Номенклатура.Ссылка
Обратите внимание, что помимо прочего сгенерировано аж 2 условия связи: сколько будет колонок с типом "Номенклатура" в присоединяемой таблице, столько связей и появится.
К счастью, в отлчичие от предыдущих двух пунктов, это неудобство лечится очень легко. Главное про него не забывать:
Оператор = Схема.ПакетЗапросов[0].Операторы[0];
Оператор.Источники.Добавить("Документ.РеализацияТоваровУслуг.Товары", "Товары");

Оператор.Источники[Оператор.Источники.Количество()-1].Соединения.Очистить();
Dmitryiv; K_A_O; Batman; +3 Ответить
4. bmk74 165 07.09.19 14:12 Сейчас в теме
(3)
Результат выполнения такого запроса конечно же не изменится, но такое изменение текста очень больно отзовется, если запрос применяется в динамическом списке. Элементы формы, связанные со стандартными реквизитами справочника, потеряют связь с полями динамического списка, или говоря проще, очистится их свойство "ПутьКДанным". Соответственно в таких колонках перестанут отображаться данные.

Это почему они должны потерять связь у вас путь к данным что в первом случае что во втором будет один и тот же "Список.Ссылка", для ссылки ??? так что не должен потерять ничего..кстати применял и к запросу динамического списка, все отрабатывало...

2) Добавление псевдонимов выражениям

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

3) Автогенерация связей таблиц

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

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

P.S. А вообще данные функции использовал для замены запросов в основном для замены таблиц для проведения и пока ошибок там не было найдено, что бы что то не так сделал...
5. dhurricane 07.09.19 14:42 Сейчас в теме
(4) Прошу прощения, если я ввел Вас в заблуждение своими рассуждениями, и Вам показалось, что это критика данной публикации. Я действительно не тестировал Вашу разработку. Зацепившись глазом за СхемуЗапроса, я лишь хотел поделиться своими наблюдениями относительно этого объекта встроенного языка, ну и поинтересоваться, решали ли Вы подобные проблемы. И не более того.

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

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

По поводу лишних связи, как я уже сказал, я не тестировал Вашу разработку. Я лишь поделился своими наблюдениями. Еще раз приношу свои извинения, если мои рассуждения на тему схемы запроса оказались неуместными.
6. bmk74 165 07.09.19 16:19 Сейчас в теме
(5)Ну почему по второму пункту кстати правильное замечание.

1с рекомендует замену запроса динамического списка делать такой конструкцией

СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
СвойстваСписка.ОсновнаяТаблица = "Документ.ЗаказКлиента";
СвойстваСписка.ДинамическоеСчитываниеДанных = Истина;
СвойстваСписка.ТекстЗапроса = ТекстИсходногоЗапроса;
ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, СвойстваСписка);


Может быть так получиться, хотя честно говоря не пробовал менять текст запроса по команде..всегда при создании делал...
7. cool99 09.09.19 12:00 Сейчас в теме
Вот как появилась возможность использовать схему, ни одной реальной задачи такой не было, где бы потребовалось.
И кстати оно довольно тормознутое, кто-то из знакомых юзал и сказал по итогам.
8. bmk74 165 09.09.19 13:11 Сейчас в теме
(7)
И кстати оно довольно тормознутое, кто-то из знакомых юзал и сказал по итогам.

Тормозов замечено не было от слова вовсе.
А задачи я написал, замена запросов при проведении документов, в основном..что бы потом при обновлении конфы меньше проблем было.
9. cool99 09.09.19 13:18 Сейчас в теме
(8)Ну хз... это в 16 году было... мож щас подтянули производительность... Ну пожалуй да, разве что для изменения типовых может пригодится, а так чтобы в самописном коде использовать польза отнюдь не очевидна
10. NoRazum 28 29.07.20 10:18 Сейчас в теме
ВЫБРАТЬ
    Валюты.Ссылка КАК Ссылка,
    Валюты.Код КАК Код,
    Валюты.Наименование КАК Наименование
ИЗ
    Справочник.Валюты КАК Валюты
{ГДЕ
    (Валюты.Код = &Код) КАК Поле2}


В динамическом списке столкнулся с таким БАГОМ. Долго не мог понять. ПОЧЕМУ.

Слишком умным это СхемаЗапроса себя считает.
Оставьте свое сообщение

См. также

Управляемая консоль запросов, отчетов 3.8.9 (расширение, внешняя обработка) Промо

Консоль запросов v8 v8::УФ v8::Запросы v8::СКД 1cv8.cf Абонемент ($m)

Работа с запросом и СКД, Полная поддержка пакетных запросов, временных таблиц, Сравнение результатов, текстов, Разбор структуры запроса в виде дерева, Анализ плана запроса, Групповая обработка

5 стартмани

14.08.2018    94591    2395    Evg-Lylyk    673    

Консоль запросов с перехватом открытых отчетов СКД для получения реального текста запроса

Консоль запросов v8::УФ v8::Запросы v8::СКД ERP2 УТ11 КА2 Абонемент ($m)

Обработка Консоль запросов с перехватом отчётов позволяет выбрать открытый отчёт СКД и получить реальный текст запроса с учётом наложенных пользователем параметров и отборов.

1 стартмани

28.08.2020    1766    11    kran    0    

А1Э - альтернативная стандартная библиотека для 1С

Инструментарий разработчика v8 Абонемент ($m)

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

14.08.2020    7732    3    Enigma    45    

Проверка ведения учета (универсальная)

Анализ учета Прочие инструменты разработчика v8 v8::Запросы Россия Абонемент ($m)

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

2 стартмани

11.08.2020    1690    10    vozhd    2    

Установка предопределенных элементов: просмотр, исправление и поиск ошибок (задвоенных и отсутствующих) Промо

Инструментарий разработчика Универсальные обработки v8 1cv8.cf Абонемент ($m)

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

2 стартмани

06.10.2014    152951    2010    ekaruk    165    

Консоль кода для управляемых форм

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Консоль кода для управляемых форма с подсказками и подсветкой синтаксиса.

1 стартмани

17.07.2020    13065    205    salexdv    206    

"Запросник 3.0" с раскраской кода в WebKit

Консоль запросов v8 v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Развитие легендарного "Запросника" при работе с платформами 8.3.14.1565 и выше с webkit.

1 стартмани

02.03.2020    4948    51    Gmix    7    

Консоль запросов 9000

Консоль запросов v8 v8::Запросы 1cv8.cf Абонемент ($m)

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

1 стартмани

24.02.2020    12558    254    kuza2000    125    

Консоль запросов с графом (Анализатор сложных запросов) Промо

Консоль запросов v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Консоль запросов для анализа запросов с большим количеством временных таблиц и вложенных запросов. Отображает структуру взаимосвязей временных таблиц в виде графа. Позволяет быстро передвигаться по тексту запроса и получать результат выполнения подзапросов. Единственная консоль запросов, которая позволяет выводить результат выполнения вложенных запросов и любой части объединения запроса. Удобное получение данных запроса из отладчика включая временные таблицы. Текст запроса в структурированном виде (можно свернуть, развернуть текст подзапроса). И еще много другого, чего вы не найдете в других консолях запросов. Поддержка УФ и ОФ. Версия 0.9.1 от 18.10.2019 (поддержка WebKit).

10 стартмани

03.05.2017    97180    436    manuel    263    

Преобразование объекта Отбор компоновки данных в Запрос

Практика программирования Прочие инструменты разработчика v8::УФ v8::Запросы v8::СКД 1cv8.cf Абонемент ($m)

Преобразует объект Отбор компоновки данных в объект Запрос (с заполнением текста и параметров).

1 стартмани

20.12.2019    3909    4    okon-teh    2    

Инструменты оптимизации для 1С на MS SQL Server

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Набор базовых инструментов для поиска узких мест в работе 1С на MS SQL Server.

1 стартмани

15.12.2019    16870    210    berezdetsky    23    

Консоль запросов для ЗУП 3.х

Консоль запросов v8::Запросы ЗУП3.x Россия Абонемент ($m)

Доработка стандартной консоли запросов для работы с механизмом представлений из ЗУП 3.х.

1 стартмани

05.11.2019    6783    37    evgeni-red    3    

[Расширение] Контроль отрицательных остатков по регистру бухгалтерии при проведении Промо

Универсальные функции Инструментарий разработчика Учет ТМЦ Учет ТМЦ v8 1cv8.cf Россия БУ Абонемент ($m)

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

1 стартмани

17.08.2015    47620    156    ekaruk    32    

CF & SQL : конструктор прямых запросов к БД 1С

Инструментарий разработчика Администрирование СУБД v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

02.10.2019    20204    208    dmitrydemenew    47    

Консоль запросов с перехватом отчетов СКД (для получения реального текста запроса) и запросов

Консоль запросов v8::Запросы v8::СКД 1cv8.cf Россия Абонемент ($m)

Доработанная консоль запросов с автоматическим заполнением текста запроса и всех параметров на основании объекта Запрос, полученного в "Конфигураторе" или перехваченного встроенного/внешнего отчёта СКД.

2 стартмани

29.09.2019    8522    34    strek_ivan    4    

Сервис "Конструктор запросов" (управляемое приложение без использования модальности)

Инструментарий разработчика v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Версия уже давно созданной обработки для отладки запросов в режиме предприятия. Создавалась с нуля, приоритетным отличием от существующих аналогов является то, что результаты запроса и содержимое временных таблиц выводятся не в табличные документы, а в таблицы и дерево значений, что по моему мнению более "читабельно" и даёт возможность поиска по значениям результата. Обработка намного сократила время на получение отлаженного запроса, а также позволила однократно обрабатывать данные без создания простых обработок в режиме "Конфигуратор". Разрабатывалась и тестировалась на версии платформы 8.3.12. Исправлена для поддержки версии платформы 8.3.15.1700

1 стартмани

19.09.2019    3711    9    KPAMOP    5    

Faster - многофункциональный ускоритель работы программиста 1С и других языков программирования Промо

Инструментарий разработчика v8 1cv8.cf Россия Абонемент ($m)

Программа Faster 9.4 позволяет ускорить процесс работы программиста (работает в любом текстовом редакторе). Подсказка при вводе текста на основе ранее введенного текста и настроенных шаблонов. Программа Faster позволяет делится кодом с другими программистами в два клика или передать ссылку через QR Код. Исправление введенных фраз двойным Shift (с помощью speller.yandex). Переводчик текста. Переворачивает текст случайно набранный на другой раскладке. Полезная утилита для тех, кто печатает много однотипного текста, кодирует в среде Windows на разных языках программирования. Через некоторое время работы с программой у вас соберется своя база часто используемых словосочетаний и кусков кода. Настройка любых шорткатов под себя с помощью скриптов. Никаких установок и лицензий, все бесплатно.

1 стартмани

24.05.2012    78486    212    moolex    147    

Конвейер проверки качества кода

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

Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.

3 стартмани

04.09.2019    25505    22    Stepa86    46    

Консоль запросов с перехватом открытых отчетов СКД для получения реального текста запроса

Консоль запросов v8::Запросы v8::СКД 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

30.08.2019    11623    53    strek_ivan    29    

Консоль запросов с возможностью сравнения данных между базами (управляемые формы)

Консоль запросов v8 v8::УФ v8::Запросы 1cv8.cf Россия Абонемент ($m)

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

3 стартмани

26.08.2019    7224    33    Dadriel619960    9    

Модель объекта Промо

Инструментарий разработчика v8 Абонемент ($m)

Подсистема позволяет описать модель данных объекта, где описана зависимость между реквизитами, и затем использовать эту модель в разных сценариях работы с объектом. Версия платформы: 8.3.6 и выше. С небольшими доработками будет работать на 8.2.

1 стартмани

30.06.2019    12879    0    vadim1980    5    

Переводим рутину ручного тестирования 1C на рельсы Jenkins-а и ADD

Инструментарий разработчика Jenkins v8 Абонемент ($m)

Вы все еще тестируете свои конфигурации 1С вручную? Да вы просто тратите жизнь впустую! В данном туториале попробуем скрестить ADD и jenkins для автоматического запуска тестов.

1 стартмани

03.06.2019    25928    6    ripreal1    89    

Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером

Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

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

1 стартмани

13.05.2019    30132    131    Diversus    42    

Групповая проверка доработок

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка для массовой проверки доработок конфигурации: Открытие форм, Печать, Формирование отчетов, Проведение документов, Запись справочников, ПВХ, ПВР. Выдает список обнаруженных ошибок. Рекомендуется применять для тестирования обновленной конфигурации, перед установкой пользователям. В коде используются универсальные методы поэтому подходит для большинства конфигураций, построенных на базе библиотеки стандартных подсистем. Проверялась на Зарплата и управление персоналом КОРП 3.1.8.216, Управление торговлей 11, 1С:ERP Управление предприятием 2.4.7.141, Бухгалтерия предприятия КОРП 3.0.68.66.

2 стартмани

05.05.2019    15595    106    sapervodichka    23    

Консоль запросов + ТЗ как параметры Промо

Консоль запросов v8 1cv8.cf Украина Абонемент ($m)

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

2 стартмани

12.11.2010    36315    64    Kashemir    24    

Сравнение запросов

Инструментарий разработчика v8 v8::Запросы 1cv8.cf Абонемент ($m)

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

2 стартмани

16.03.2019    10856    14    Rustig    31    

Калькулятор дерева запросов (подготовка данных для рассылок sms / email)

Инструментарий разработчика SMS рассылки Email v8::Запросы Абонемент ($m)

Универсальная обработка предназначена для автоматизации подготовки данных методом обсчета дерева запросов. Корень дерева - это окончательный результат вычисления. Например, Вы занимаетесь ежемесячной рассылкой "рекламных предложений))" и выполняете такую рутину: - шаг №1 -> взять все телефоны физ.лиц из базы - шаг №2 -> взять все телефоны юр.лиц - шаг №3 -> объединить выборки шагов №№1,2 - шаг №4 -> исключить определенные телефоны из шага №3 - шаг №5 -> сохранить окончательный список телефонов для дальнейших действий Как данная обработка поможет Вам автоматизировать эти действия - далее в описании.

1 стартмани

23.01.2019    4616    0    mrcamomile    0    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019)

Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Мобильная разработка Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ v8 v8::Mobile БУ УУ Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    45705    254    informa1555    232    

[x1c.ru] 1CDBin: Работа с файлами *.1CD на низком уровне средствами языка 1С с возможностью чтения таблиц (поддерживается формат 8.3.8.0) Промо

Тестирование и исправление Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Обработка позволяет просматривать файловые базы 1CD на низком уровне средствами встроенного языка. Реализована часть функциональности Tool_1CD, но на языке 1С Предприятия. Показываются таблицы, параметры таблиц, поля таблиц, записи таблиц, значения полей BLOB, есть 16-ричный просмотр страниц базы и консоль кода. Можно использовать для изучения структуры файлов 1CD, просмотра баз 1CD для выявления повреждений, создания своих обработок для выгрузки данных без открытия исследуемой базы в 1С:Предприятии.

1 стартмани

07.10.2014    54120    217    GusevNA    76    

Выгрузка запроса из отладки в консоль запросов (Управляемые формы)

Консоль запросов v8::УФ v8::Запросы 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

13.11.2018    8110    8    redtram    2    

Отладка запросов из отладчика в варианте Клиент-Сервер

Инструментарий разработчика v8 v8::Запросы 1cv8.cf Россия Абонемент ($m)

Описывается способ отладки запроса, полученного через отладчик. Работает как на сервере, так и на клиенте.

1 стартмани

12.11.2018    7426    16    budidich    13    

Консоль запросов для управляемых форм 8.3

Консоль запросов v8 v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

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

3 стартмани

08.11.2018    20009    222    ROL32    22    

Разбираемся со структурой правил конвертации данных Промо

Инструментарий разработчика v8 КД Абонемент ($m)

При переносе данных между различающимися данными частенько приходится смотреть в правила. И часто, чтобы выяснить, к примеру, каким документом формируются остатки по конкретному ПВД, нужно заглядывать в него и искать, какое ПКО в нем вызывается. А может вызываться и алгоритм, в котором вызывается ПКО ;-) А если правил много? Чтобы не мучить себя утомительными поисками, предлагаю воспользоваться этой обработкой.

1 стартмани

14.10.2011    22939    29    Meta    17    

Консоль Внедренца v.3.6.2 (vnedr.cf)

Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Идея данной обработки заключается в создании простого, функционального и универсального инструментария для внедренцев и программистов 1С, который будет работать как в толстом клиенте на обычных и на управляемых формах, так и в тонком клиенте. Интерфейс и логика работы максимально идентичны у обычных форм и управляемых. Инструментарий включает в себя: Консоль кода, Консоль запросов, Консоль отчетов (СКД), Универсальную обработку объектов, Средства для работы с таблицами базы данных 1С, Редактирование регистров сведений базы, Инструмент по работе с табличными документами - загрузка данных из табличного документа.

1 стартмани

27.08.2018    22342    376    evvakra    42    

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

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

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

1 стартмани

27.08.2018    38664    56    dsdred    17    

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

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

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

5 стартмани

09.08.2018    28607    26    informa1555    26    

Интерфейс сопоставления объектов для обмена (для типового регистра СоответствиеОбъектовДляОбмена) Промо

Инструментарий разработчика Универсальные обработки Перенос данных из 1C8 в 1C8 v8 КА1 БП2.0 ЗУП2.5 УТ10 УПП1 Абонемент ($m)

Вы внедряете обмен данными между двумя типовыми или основанными на типовых БД и вам необходим инструмент, чтобы сопоставить между собой справочники этих конфигураций? Вы хотите навести порядок в обмене данными, потому что вам надоело вылавливать дублирующиеся объекты? Вам очень хочется перепоручить сопоставление объектов обменивающихся баз пользователям, но нет подходящего и понятного пользователям интерфейса? Тогда вам нужна именно эта обработка!

4 стартмани

11.11.2015    40250    135    catsam    8    

Упрощение работы с SQL запросами и встроенная консоль

Инструментарий разработчика v8::УФ v8::Запросы 1cv8.cf Россия Абонемент ($m)

Просто надоело писать много букв (постоянно описывать коннекторы и объекты). Была создана обработка для минимизации кода и помогает Ctrl+пробел.

1 стартмани

01.08.2018    7609    15    SanyMaga    6    

Консоль запросов

Консоль запросов v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Консоль запросов для УФ. Внешне похожа на консоль для обычного приложения. Но есть ряд новых возможностей.

1 стартмани

25.06.2018    10184    15    17808849    10    

Сравнение результатов запросов в двух базах

Инструментарий разработчика v8 v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Внешняя обработка, которая выводит отличия между таблицами, полученными в результате выполнения запросов и в текущей базе и в подключенной через COM-соединение.

1 стартмани

07.06.2018    11183    84    Serge R    5    

Exec - Выполнение кода, консоль запросов и не только! Промо

Консоль запросов v8 1cv8.cf Абонемент ($m)

Незаменимый инструмент администратора БД и программиста: Выполняйте произвольный код из режима 1С Предприятие; сохраняйте/загружайте часто используемые скрипты; выполняйте запросы с замером производительности запроса в целом и каждой из временных таблиц в частности, а также с просмотром содержимого временных таблиц; произвольным образом изменяйте любые объекты БД, редактируя даже не вынесенные на формы реквизиты и записывая изменения в режиме "ОбменДанными.Загрузка = Истина"; легко узнавайте ИД объектов БД; выполняйте прямые запросы к SQL с замером производительности и не только!

5 стартмани

10.11.2015    41442    75    catsam    11    

Консоль HTTP-запросов с генерацией кода

Консоль запросов v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

25.05.2018    25042    275    leongl    19    

Униформальная консоль запросов

Консоль запросов v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

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

1 стартмани

23.05.2018    23765    316    Synoecium    52    

Групповая обработка реквизитов + консоль запросов

Консоль запросов v8 v8::УФ v8::Запросы Розница УНФ БП3.0 УТ11 КА2 Абонемент ($m)

Расширение конфигурации, которое в типовую обработку "Групповое изменение реквизитов" добавляет возможность отбирать объекты для обработки запросом. Необходимо наличие обработки "Консоль запросов" с ИТС.

2 стартмани

20.03.2018    17840    50    Kutuzov    6    

КонЗап - консоль запросов с улучшенным интерфейсом и дополнительными функциями Промо

Консоль запросов v8 1cv8.cf Абонемент ($m)

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

1 стартмани

16.07.2014    15294    23    serjpsv    18    

Регистры правил [Расширение]

Инструментарий разработчика Информационная безопасность v8 v8::Права УТ11 Абонемент ($m)

Регистры правил - права доступа, запрет редактирования, автоподстановка реквизитов и т.д.

10 стартмани

15.03.2018    18234    10    33lab    1    

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

Инструментарий разработчика v8::Запросы 1cv8.cf Россия Абонемент ($m)

Предназначен для формирования запросов к SQL с помощью механизма 1С "Конструктор запросов" в пользовательском режиме.

1 стартмани

26.01.2018    23754    80    lastpioneer    28    

Оптимизация запросов

Инструментарий разработчика v8 v8::Запросы 1cv8.cf Абонемент ($m)

Тестирование и проверка прироста производительности при изменении текста запроса.

1 стартмани

26.01.2018    7295    10    Pistolierro    3    

Редактор текста языка запросов на управляемой форме

Инструментарий разработчика v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Вариант решения проблемы редактирования текста (раскрашивание текста) на управляемой форме так же, как и во встроенном редакторе языка запросов 1С.

1 стартмани

25.01.2018    7574    4    Pistolierro    0    

Тестирование интерфейса в обычном приложении 8.2 при помощи SikuliX

Инструментарий разработчика Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Как же не хватает клиента тестирования на платформе 8.2. Не кликнешь на кнопку, не выберешь из списка, не проверишь видит ли надпись пользователь. Воспользуемся внешним инструментом SikuliX, который позволит нам протестировать функционал форм. Данный инструмент легко встраивается в линию сборки и может "дружить" с уже известным многим Open-source продуктами.

1 стартмани

03.01.2018    30022    5    kraynev-navi    41