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

Публикация № 1545228 04.11.21

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

консоль запросов запросы запрос параметры запроса

Модуль для выгрузки запроса позволит сократить время при переносе запроса и его параметров в консоль запросов.

1. Добавляем общий модуль АБ_ВыгрузкаЗапроса в свою конфигурацию, можно попробовать через расширение. 

 

 

 
 Код общего модуля

 


// АБ_ВыгрузкаЗапроса.ЗаписатьЗапросыВФайлXML(Запрос)
///////////////////////////////////////////////////////////////////////////
// ФУНКЦИИ РАБОТЫ С XML-ФАЙЛАМИ

// Записывает Запросы(текст и параметры запроса) в файл XML.
//
// Параметры:
//	ИмяФайла - имя файла XML.
//	Объект - передаваемый объект обработки.
//
Функция ЗаписатьЗапросыВФайлXML(знач ОбъектЗапроса, ИмяФайла = "C:\Запросы\TekZapros.q1c") Экспорт
	ФайлXML = Новый ЗаписьXML;
	ФайлXML.ОткрытьФайл(ИмяФайла);
	ФайлXML.ЗаписатьОбъявлениеXML();
	ФайлXML.ЗаписатьНачалоЭлемента("querylist");
	// выгрузка запроса.
	Для Сч =1 По 2 Цикл
		ФайлXML.ЗаписатьНачалоЭлемента("query");
		Если Сч = 1 Тогда
			ФайлXML.ЗаписатьАтрибут("name", "Запрос");
		Иначе	
			ФайлXML.ЗаписатьАтрибут("name", "ИсходныйЗапрос");
		КонецЕсли; 
		
			ФайлXML.ЗаписатьНачалоЭлемента("text");
			ТекстЗапроса = ОбъектЗапроса.Текст;
			Для Счетчик = 1 По СтрЧислоСтрок(ТекстЗапроса) Цикл
				ПереносСтр	= Символы.ВК + Символы.ПС;
				ТекСтрока 	= СтрПолучитьСтроку(ТекстЗапроса, Счетчик);
				ФайлXML.ЗаписатьТекст(ТекСтрока);
				ФайлXML.ЗаписатьБезОбработки(ПереносСтр);
			КонецЦикла;
			ФайлXML.ЗаписатьКонецЭлемента();
			// Запись параметров в XML-файл.
			Если ОбъектЗапроса.Параметры.Количество() > 0 Тогда 
				ФайлXML.ЗаписатьНачалоЭлемента("parameters");
				Для каждого ТекПараметр из ОбъектЗапроса.Параметры Цикл 
						ИмяПараметра		= ТекПараметр.Ключ;
						ТипПараметра		= СтрЗаменить(Строка(ТипЗнч(ТекПараметр.Значение))," ","");//ТекПараметр.Тип;   !!!
						ЗначениеПараметра			= ТекПараметр.Значение;
						
						ФайлXML.ЗаписатьНачалоЭлемента("parameter");
						ФайлXML.ЗаписатьАтрибут("name", ИмяПараметра);
						Если ТипПараметра = "Списокзначений" Тогда 
							
							ТЗ = Новый ТаблицаЗначений;
							тз.Колонки.Добавить("Значения");
							
							Для каждого ТекЗнач Из ЗначениеПараметра Цикл
								НовСтрТЗ = тз.Добавить();
								НовСтрТЗ.Значения = ТекЗнач.Значение;						
							КонецЦикла; 

							
							ФайлXML.ЗаписатьАтрибут("type", "ТаблицаЗначений");
							ЗаписатьТаблицуЗначенийВXML(ФайлXML, ТЗ);  //!!!

						ИначеЕсли ТипПараметра = "Массив" Тогда              //!!!
							
							ТЗ = Новый ТаблицаЗначений;
							тз.Колонки.Добавить("Значения");
							
							Для каждого ТекЗнач Из ЗначениеПараметра Цикл
								НовСтрТЗ = тз.Добавить();
								НовСтрТЗ.Значения = ТекЗнач;						
							КонецЦикла; 
							
							
							ФайлXML.ЗаписатьАтрибут("type", "ТаблицаЗначений");   //!!!
							ЗаписатьТаблицуЗначенийВXML(ФайлXML, ТЗ);  //!!!
						ИначеЕсли ТипПараметра = "Таблицазначений" Тогда
							ФайлXML.ЗаписатьАтрибут("type", "ТаблицаЗначений");
		
							ЗаписатьТаблицуЗначенийВXML(ФайлXML, ЗначениеПараметра);
						ИначеЕсли ТипПараметра = "Моментвремени" Тогда
							ФайлXML.ЗаписатьАтрибут("type", "МоментВремени");
							ЗаписатьМоментВремениВXML(ФайлXML, ЗначениеПараметра);
						ИначеЕсли ТипПараметра = "Граница" Тогда
							ФайлXML.ЗаписатьАтрибут("type", ТипПараметра);
							ЗаписатьГраницуВXML(ФайлXML, ЗначениеПараметра);
						Иначе
							ИмяТипа = ИмяТипаИзЗначения(ЗначениеПараметра); 
							ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
							ФайлXML.ЗаписатьАтрибут("value", XMLСтрока(ЗначениеПараметра));
						КонецЕсли;	
						ФайлXML.ЗаписатьКонецЭлемента();
				КонецЦикла;	
				ФайлXML.ЗаписатьКонецЭлемента();
			КонецЕсли;	
		ФайлXML.ЗаписатьКонецЭлемента();
    КонецЦикла;
	ФайлXML.ЗаписатьКонецЭлемента();
	ФайлXML.Закрыть();
	
	вСохранитьЗапросыВФайл(ОбъектЗапроса,СтрЗаменить(ИмяФайла,"q1c","sel"));
	
	Возврат Истина;
КонецФункции

// Записывает строки списка значений в Файл XML.
//
// Параметры:
//	ФайлXML - записьXML.
//	Значение - список значений.
//
Процедура ЗаписатьСписокЗначенийВXML(ФайлXML, Значение)
	Если ТипЗнч(Значение) <> Тип("СписокЗначений") Тогда 
		Возврат;
	КонецЕсли;	
	
	Для каждого СтрСписка из Значение Цикл
		ЗначениеЭлементаСписка	= СтрСписка.Значение;
		// Определение имени типа.
		ИмяТипа = ИмяТипаИзЗначения(ЗначениеЭлементаСписка); 
		
		ФайлXML.ЗаписатьНачалоЭлемента("item");
			ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
			ФайлXML.ЗаписатьАтрибут("value", XMLСтрока(ЗначениеЭлементаСписка));
		ФайлXML.ЗаписатьКонецЭлемента();
	КонецЦикла;	
КонецПроцедуры	



// Записывает строки списка значений в Файл XML.
//
// Параметры:
//	ФайлXML - записьXML.
//	Значение - список значений.
//
Процедура ЗаписатьМассивВXML(ФайлXML, Значение)
	Если ТипЗнч(Значение) <> Тип("Массив") Тогда 
		Возврат;
	КонецЕсли;	
	
	Для каждого СтрСписка из Значение Цикл
		ЗначениеЭлементаСписка	= СтрСписка;
		// Определение имени типа.
		ИмяТипа = ИмяТипаИзЗначения(ЗначениеЭлементаСписка); 
		
		ФайлXML.ЗаписатьНачалоЭлемента("item");
			ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
			ФайлXML.ЗаписатьАтрибут("value", XMLСтрока(ЗначениеЭлементаСписка));
		ФайлXML.ЗаписатьКонецЭлемента();
	КонецЦикла;	
КонецПроцедуры	



// Записывает ячейки таблицы значений в Файл XML.
//
// Параметры:
//	ФайлXML - записьXML.
//	Значение - таблица значений.
//
Процедура ЗаписатьТаблицуЗначенийВXML(ФайлXML, Значение)
	Если ТипЗнч(Значение) <> Тип("ТаблицаЗначений") Тогда 
		Возврат;
	КонецЕсли;	
	
	
	КолКолонок 	= Значение.Колонки.Количество();
	КолСтрок	= Значение.Количество();
	
	ФайлXML.ЗаписатьАтрибут("colcount", XMLСтрока(КолКолонок));
	ФайлXML.ЗаписатьАтрибут("rowcount", XMLСтрока(КолСтрок));

	
	Для СтрокаИндекс = 0 по КолСтрок - 1 Цикл
		Для КолонкаИндекс = 0 по КолКолонок - 1 Цикл 
			ЗначениеЭлементаСписка	= Значение.Получить(СтрокаИндекс).Получить(КолонкаИндекс);
			ИмяКолонки = Значение.Колонки.Получить(КолонкаИндекс).Имя;
			// Определение имени типа.
			ИмяТипа = ИмяТипаИзЗначения(ЗначениеЭлементаСписка); 
			
			Если ИмяТипа = "Строка" Тогда 
				Длина = Значение.Колонки.Получить(КолонкаИндекс).ТипЗначения.КвалификаторыСтроки.Длина; 	
			Иначе 
				Длина = 0;
			КонецЕсли; 
			
			ФайлXML.ЗаписатьНачалоЭлемента("item");
				ФайлXML.ЗаписатьАтрибут("nameCol", ИмяКолонки);
				ФайлXML.ЗаписатьАтрибут("row", XMLСтрока(СтрокаИндекс));
				ФайлXML.ЗаписатьАтрибут("col", XMLСтрока(КолонкаИндекс));
				ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
				ФайлXML.ЗаписатьАтрибут("length", XMLСтрока(Длина));
				ФайлXML.ЗаписатьАтрибут("value", XMLСтрока(ЗначениеЭлементаСписка));
			ФайлXML.ЗаписатьКонецЭлемента();
		КонецЦикла;
	КонецЦикла;
	
	//ag(!!!
	//если параметр не заполнен  - добавим пустую ТЗ
	Если СтрокаИндекс = 0 тогда
		Для КолонкаИндекс = 0 по КолКолонок - 1 Цикл 
			//ЗначениеЭлементаСписка	= Значение.Получить(СтрокаИндекс).Получить(КолонкаИндекс);
			ИмяКолонки = Значение.Колонки.Получить(КолонкаИндекс).Имя;
			// Определение имени типа.
			ИмяТипа = xmlТип(Значение.Колонки.Получить(КолонкаИндекс).ТипЗначения.Типы()[0]).ИмяТипа;
			
			
			//ИмяТипаИзЗначения(ЗначениеЭлементаСписка); 
			
			ФайлXML.ЗаписатьНачалоЭлемента("item");
				ФайлXML.ЗаписатьАтрибут("nameCol", ИмяКолонки);
				//ФайлXML.ЗаписатьАтрибут("row", XMLСтрока(СтрокаИндекс));
				ФайлXML.ЗаписатьАтрибут("col", XMLСтрока(КолонкаИндекс));
				ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
				//ФайлXML.ЗаписатьАтрибут("value", XMLСтрока(ЗначениеЭлементаСписка));
			ФайлXML.ЗаписатьКонецЭлемента();
		КонецЦикла;
	КонецЕсли;
	//ag)
		
КонецПроцедуры	

// Записывает момент времени в Файл XML.
//
// Параметры:
//	ФайлXML - записьXML.
//	Значение - момент времени.
//
Процедура ЗаписатьМоментВремениВXML(ФайлXML, Значение)
	Если ТипЗнч(Значение) <> Тип("МоментВремени") Тогда 
		Возврат;
	КонецЕсли;	
	
	// Определение имени типа.
	ИмяТипа = ИмяТипаИзЗначения(Значение.Ссылка); 
	
	ФайлXML.ЗаписатьНачалоЭлемента("item");
		Если Значение.Ссылка <> Неопределено Тогда 
			ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
			ФайлXML.ЗаписатьАтрибут("valueRef", XMLСтрока(Значение.Ссылка));
		КонецЕсли;	
		ФайлXML.ЗаписатьАтрибут("valueDate", XMLСтрока(Значение.Дата));
	ФайлXML.ЗаписатьКонецЭлемента();
КонецПроцедуры	

// Записывает границу.
//
Процедура ЗаписатьГраницуВXML(ФайлXML, Граница)
	Если ТипЗнч(Граница) <> Тип("Граница") Тогда 
		Возврат;
	КонецЕсли;	
	
	ФайлXML.ЗаписатьНачалоЭлемента("divide");
		// Определение имени типа.
		ИмяТипа 			= ИмяТипаИзЗначения(Граница.Значение); 
		ТипЗначенияГраницы 	= ТипЗнч(Граница.Значение);
		
		// Запись в строку вида границы.
		ИмяВидаГраницы = Строка(Граница.ВидГраницы);
		
		ФайлXML.ЗаписатьАтрибут("type", ИмяТипа);
		ФайлXML.ЗаписатьАтрибут("valueDiv", ИмяВидаГраницы);
		
		Если ТипЗначенияГраницы <> Тип("МоментВремени") Тогда 
			ФайлXML.ЗаписатьАтрибут("value", XMLСтрока(Граница.Значение));
		Иначе
			ЗаписатьМоментВремениВXML(ФайлXML, Граница.Значение);
		КонецЕсли;
	ФайлXML.ЗаписатьКонецЭлемента();
КонецПроцедуры	

// Возвращает строковое представление типа по значению.
//
// Параметры:
//	Значение - передаваемое значение.
//
Функция ИмяТипаИзЗначения(Значение) Экспорт
	Если ТипЗнч(Значение) = Тип("Строка") Тогда
		ИмяТипа = "Строка";
	ИначеЕсли ТипЗнч(Значение) = Тип("Число") Тогда 	
		ИмяТипа = "Число";
	ИначеЕсли ТипЗнч(Значение) = Тип("Булево") Тогда 	
		ИмяТипа = "Булево";
	ИначеЕсли ТипЗнч(Значение) = Тип("Дата") Тогда 		
		ИмяТипа = "Дата";
	ИначеЕсли ТипЗнч(Значение) = Тип("МоментВремени") Тогда 		
		ИмяТипа = "МоментВремени";	
	ИначеЕсли ТипЗнч(Значение) = Тип("Неопределено") Тогда 		
		ИмяТипа = "Строка";		
	Иначе	
		ИмяТипа = xmlТип(ТипЗнч(Значение)).ИмяТипа;
	КонецЕсли;	
	
	Возврат ИмяТипа;
КонецФункции	

// Определяет условие конца тэга "query" или "parameters"
//
// Параметры:
//	ФайлXML - чтениеXML.
//
Функция ПроверкаКонцаТэгов(ФайлXML)
	Если (ФайлXML.ТипУзла = ТипУзлаXML.КонецЭлемента и ФайлXML.Имя = "query") 
		 или (ФайлXML.ТипУзла = ТипУзлаXML.КонецЭлемента и ФайлXML.Имя = "parameters") Тогда
		Возврат Истина;
	Иначе
		Возврат Ложь;
	КонецЕсли;	
КонецФункции	


//////////////////////////////////////////////////////////////////////////////////////////////
// для   обычной консоли 
Функция вСохранитьЗапросыВФайл(ОбъектЗапроса, ИмяФайла = "C:\Запросы\TekZapros.sel")

	
	ДеревоЗапросов = Новый ДеревоЗначений;
	ДеревоЗапросов.Колонки.Добавить("Запрос");
	ДеревоЗапросов.Колонки.Добавить("ТекстЗапроса");
	ДеревоЗапросов.Колонки.Добавить("ПараметрыЗапроса");
	ДеревоЗапросов.Колонки.Добавить("СпособВыгрузки");
	
	мТекущаяСтрока = ДеревоЗапросов.Строки.Добавить();
	
    мТекущаяСтрока.Запрос = "Запросы";	
	мТекущаяСтрока.ТекстЗапроса = ОбъектЗапроса.Текст;
	
	
	ТаблПараметров = Новый ТаблицаЗначений;
	ТаблПараметров.Колонки.Добавить("ИмяПараметра");
	ТаблПараметров.Колонки.Добавить("ЭтоВыражение");
	ТаблПараметров.Колонки.Добавить("ЗначениеПараметра");
	
	Для каждого ТекПараметр Из ОбъектЗапроса.Параметры Цикл
		НовСтрПар = ТаблПараметров.Добавить();
		НовСтрПар.ЗначениеПараметра =  ТекПараметр.Значение;
		НовСтрПар.ИмяПараметра		= ТекПараметр.Ключ;
		НовСтрПар.ЭтоВыражение = Ложь;
	КонецЦикла; 
	
	
	мТекущаяСтрока.ПараметрыЗапроса = ТаблПараметров;
	мТекущаяСтрока.СпособВыгрузки = 2;
	
	// и копию
    мТекущаяСтрока2 = мТекущаяСтрока.Строки.Добавить();
	
    мТекущаяСтрока2.Запрос = "Исходный запрос";	
	мТекущаяСтрока2.ТекстЗапроса = ОбъектЗапроса.Текст;
	мТекущаяСтрока2.ПараметрыЗапроса = ТаблПараметров;
	мТекущаяСтрока2.СпособВыгрузки = 2;

	
	ЗначениеВФайл(ИмяФайла, ДеревоЗапросов);
	
	Возврат Истина;

КонецФункции // СохранитьЗапросыВФайл()




 

 

Необходимо поменять путь выгрузки в модуле:

 

 

2.  Запускаем отладку и останавливаемся перед выполнением запроса, например, у меня была внешняя обработка: 

 

 

3. Открываем код общего модуля АБ_ВыгрузкаЗапроса, выделяем строку и нажимаем "Вычислить выражение":

 

Значение должно быть Истина, это означает, что файл выгружен:

 

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




Все параметры заполнились:
 

 

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. RustIG 1691 04.11.21 14:21 Сейчас в теме
2. headMade 144 04.11.21 14:40 Сейчас в теме
В БСП есть ОбщегоНазначения.ЗапросВСтрокуXML
или у вас более навороченная ?
mikl79; user635629_exter; rpgshnik; RocKeR_13; Margo462; +5 Ответить
3. Margo462 425 04.11.21 20:51 Сейчас в теме
(2) спасибо, не пользовалась ни разу, но на моём примере не сработало, а если сделать как в этой статье через сохранение в файл, то работает
Прикрепленные файлы:
4. rpgshnik 3356 05.11.21 07:15 Сейчас в теме
ОбщегоНазначения.ЗапросВСтрокуXML использую регулярно совместно с https://infostart.ru/public/1254364/ там даже не нужно файл создавать, через буфер - очень удобно, рекомендую попробовать.

Так же есть возможность добавить заполнение временных таблиц менеджера.
Evg-Lylyk; user635629_exter; Margo462; +3 Ответить
5. MVK80 05.11.21 08:56 Сейчас в теме
(0), мне казалось что для консолей запросов, этот функционал по умолчанию уже идет. Многие консоли запросов такое могут "из коробки". Не проще ли сменить консоль запросов? Я, например, такой пользуюсь, как Запросник 2.0. Там всё это есть уже.
6. q_i 549 07.11.21 17:49 Сейчас в теме
В "штатной" консоли запросов есть пункт меню "Заполнить из XML". Совместно с ОбщегоНазначения.ЗначениеВСтрокуXML(Новый Структура("Текст, Параметры", Запрос.Текст, Запрос.Параметры)) решает вопрос отладки практически любого запроса. Подробнее описано тут: https://spk-code.blogspot.com/2021/06/1.html
7. Margo462 425 08.11.21 09:55 Сейчас в теме
(6) да, я так делала, ошибку выше добавила. Может из-за временной таблицы ошибка, либо консоль кривая)
8. q_i 549 08.11.21 13:25 Сейчас в теме
(7) Скачайте "прямую" с сайта итс ))
Хотя там, честно говоря, тоже я последний раз когда качал была "кривая" - какая-то ошибка периодически вываливалась, связанная с количеством строк в результате запроса. В функции ВывестиРезультатОдногоЗапроса(...) пришлось строку "КоличествоСтрок = РезультатЗапроса.Количество();" переделать в "Попытка КоличествоСтрок = РезультатЗапроса.Количество(); Исключение КоличествоСтрок = 0; КонецПопытки;".
Но при этом "Заполнить из XML" там изначально работало "из коробки" даже с временными таблицами.
9. Evg-Lylyk 4210 09.11.21 10:57 Сейчас в теме
Мои публикации на эту тему:
Отладка запроса с содержимым временных таблиц (управляемые формы)
Отладка в Infostart Toolkit
Инструменты от 1С сильно устарели, передача данных через файл неудобна в варианте клиент-сервер нужно иметь расшаренный каталог, передача через буфер может споткнутся об ограничение размера. Во многих консолях есть проблема с получением временных таблиц.
Ну и большинство как и приведенный пример не поддерживает типы параметров и полей ВТ: "УникальныйИдентификатор", "Тип".
Revachol; Margo462; +2 Ответить
10. Margo462 425 09.11.21 11:21 Сейчас в теме
(9) Спасибо! Вижу Вы из Ставрополя, я тоже))
Оставьте свое сообщение

См. также

Формат файлов выгрузки DT

Инструменты администратора БД Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Описание формата файлов выгрузки DT, может стать основой для разработки средств восстановления данных

сегодня в 16:30    219    Pasha1st    0    

9

Редактор объекта (Infostart Toolkit)

Инструменты администратора БД Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

Статья об инструменте Редактор объекта в продукте Infostart Toolkit. Изменение скрытых реквизитов, исследование объекта, восстановление битой ссылки.

16.05.2023    1296    Evg-Lylyk    5    

24

Лицензия 1С для разработчиков (бесплатно)

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Бесплатно комьюнити-лицензия для разработчиков от 1С.

20.04.2023    14788    AlOkt    63    

50

Прикрепление внешних файлов к документам и справочникам 1С 8.3

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

06.04.2023    763    ISChaplagin    3    

5

Метаданные (Infostart Toolkit)

Инструменты администратора БД Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Бесплатно (free)

Статья о инструменте Метаданные в продукте Infostart Toolkit. Просмотр метаданных, структуры хранения в режиме 1С: Предприятия.

16.03.2023    2489    Evg-Lylyk    12    

24

Отладка внешней печатной формы в управляемом приложении без создания формы, расширения или редактирования общего модуля

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free)

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

20.02.2023    2176    alex67dee    5    

29

Соревнование по программированию на 1С

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Устроим соревнование по программированию? Узнаем, кто "берёт и делает", а кто только на словах специалист? Программирование - искусство или ремесло нажимания кнопок?

15.12.2022    5315    elcoan    99    

51

Структура хранения ИБ - обработка за 5 минут и 2 строки кода - DIY

Инструменты администратора БД Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платформа 1C v8.2 Бесплатно (free)

Платформа "1С:Предприятие 8" не держит в секрете информацию об именах таблиц SQL (или внутренней БД для файловой). Для получения подробнейшей информации - есть штатная функция "ПолучитьСтруктуруХраненияБазыДанных". Данная обработка - лишь обертка над функцией. Думаю, нет смысла качать и тратить $m на то, что можно сделать самому за 5 минут.

10.11.2022    4953    DrAku1a    12    

44

Опыт использования 1С: Исполнитель (версия 2.0)

Инструментарий разработчика Языки и среды Платформа 1С v8.3 Бесплатно (free)

Дело было так. В субботу рано утром мне не спалось, надо было срочно подкинуть мозгу что-нибудь очень занятное. И тут я вспомнил одну задачу, решение которой мне определенно не нравилось. Если кратко, задача звучит так: надо выкинуть из конфигурации код, который выполняется на клиенте. Ну и сделать так, чтобы он выполнялся в фоне и на клиенте. А пока думал, спать уже и перехотелось...

26.09.2022    4079    vandalsvq    21    

29

Методика применения однострочного кода

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Уже много лет не утихают споры о полезности однострочного кода. Разберемся с этими вопросами подробно. Когда полезен однострочный код и как правильно его применять.

25.09.2022    6779    tormozit    76    

95

Ошибка при открытии StandardFindByRef.epf (описание и решение)

Инструментарий разработчика Платформа 1С v8.3 Россия Бесплатно (free)

Как решить ошибку вызова недокументированной обработки StandardFindByRef.epf.

28.07.2022    1058    CyberMax    1    

12

Infostart Toolkit – чем инструмент будет полезен для аналитиков и консультантов

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

На митапе для аналитиков "Истории внедрения" выступил Евгений Люлюк – ведущий разработчик Infostart Toolkit. Он рассказал, какие инструменты помогут аналитику исследовать незнакомую базу, находить решения проблем, работать с данными и вносить в них точечные изменения.

04.05.2022    2147    Evg-Lylyk    0    

18

Все функции (Infostart Toolkit)

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Улучшенный аналог "Все функции" или "Функции технического специалиста" из набора инструментов Infostart Toolkit.

15.04.2022    3059    Evg-Lylyk    5    

25

Конвертация HTML в PDF программно

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Инструкция по конвертации HTML файлов в файлы PDF программно в 2 строчки и без заморочек.

09.03.2022    3835    maximus_2712    2    

7

Глобальное меню (Infostart Toolkit)

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Набор инструментов Infostart Toolkit. Глобальное меню для удобства запуска.

22.02.2022    2718    Evg-Lylyk    4    

25

Подписки на события (Infostart Toolkit)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Бесплатно (free)

Все подписки на события с отбором по метаданным, поиском подписки по подстроке, отображением объектов подписки и обработчиков (с возможностью посмотреть код).

26.01.2022    2233    Evg-Lylyk    8    

35

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

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Украина Бесплатно (free)

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

20.01.2022    12755    dreamwaver_dz    42    

75

Загрузка метаданных из расширений в СППР

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Описание принципа, на котором можно сделать загрузку метаданных из расширений в СППР 2.

17.01.2022    1417    jf2000    0    

9

Решение некоторых задач с помощью "Отладчика запросов"

Инструментарий разработчика Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Управляемые формы Россия Бесплатно (free)

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

29.11.2021    1972    DrAku1a    6    

15

Тонкий конструктор СКД (Infostart Toolkit)

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Реализация конструктора СКД с нуля для управляемых форм. Контекстная подсказка для языка выражений СКД и другое.

01.09.2021    5725    Evg-Lylyk    22    

64

Разработка скриптов для Снегопата

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Это небольшая статья для тех, кто хочет сам разрабатывать скрипты для нового Снегопата, или править сам движок Снегопата, или просто собирать модуль самостоятельно для внесения оперативных исправлений. В ней я расскажу, как установить и настроить всё необходимое для этого. Скрипты будем создавать на языке TypeScript, инфраструктура заточена именно под этот язык. Предполагается, что вы умеете пользоваться git’ом и настраивать переменные окружения.

26.07.2021    3012    orefkov    1    

29

Infostart Toolkit – инструмент, в котором сделано то, что давно просят от 1С

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Лауреат Infostart Awards-2019, ведущий разработчик инструментов Infostart Toolkit Евгений Люлюк рассказывает о том, как развивается, какие задачи закрывает и какие проблемы решает представляемый им набор инструментов разработчика.

09.06.2021    9421    Evg-Lylyk    6    

38

HTML таблица для начинающих

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Несколько примеров HTML таблиц со стилями и без. Хорошая замена отчетов на СКД.

02.06.2021    11200    dsdred    27    

67

Редактор кода, запроса, ... Infostart Toolkit (интеграция с MS Monaco)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free)

Контекстная подсказка, подцветка синтаксиса в тонком клиенте. В платформе 1С редактор кода на управляемых формах обладает нулевой функциональностью, интеграция с MS Monaco позволяет запустится просто в космос.

28.05.2021    8255    Evg-Lylyk    14    

52

re: Flowcon

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Flowcon возвращается.

28.04.2021    2906    1c-intelligence    26    

25

10 полезных, но малоизвестных возможностей IS Toolkit

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Будет полезно пользователям Toolkit, а также тем, кому интересны возможности данного инструмента.

23.04.2021    4212    Evg-Lylyk    0    

26

Редактор схемы компоновки для тонкого клиента

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Аналог платформенного конструктора схемы компоновки данных для работы в тонком клиенте. Входит в состав набора "Универсальные инструменты 1С"

08.03.2021    6889    cprit    32    

64

Структура запроса (Infostart Toolkit)

Инструментарий разработчика Платформа 1С v8.3 Запросы Конфигурации 1cv8 Бесплатно (free)

Описание механизма разбора запроса на части (дерево), используемого в IS Toolkit и Управляемой консоли отчетов

02.03.2021    3662    Evg-Lylyk    14    

22

Чтение метаданных 1С из SQL Server и PostgreSQL

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Описание файла DBNames таблицы Params и файлов объектов метаданных таблицы Config.

16.02.2021    11676    zhichkin    72    

78

Отладка логики запроса в консоли запросов ИР

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Облегчаем поиск причины неожиданного результата запроса в консоли запросов из подсистемы "Инструменты разработчика" (ИР)

05.01.2021    10149    tormozit    10    

136

Работа с СКД в продукте "Infostart Toolkit"

Инструментарий разработчика Платформа 1С v8.3 Система компоновки данных Бесплатно (free)

Infostart Toolkit обладает большим количеством уникальных возможностей для работы с СКД – это анализ исполняемых текстов запросов, работа с внешними источниками в схеме СКД, получение данных в отладке и многое другое. Обо всех этих возможностях рассказал разработчик продукта Евгений Люлюк.

24.12.2020    4413    Evg-Lylyk    2    

16

Использование утилиты RING для проверки информации о программных лицензиях

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

В 1С есть утилита для проверки файлов с лицензиями 1С. Утилита существует довольно давно, но информация по ней разбросана, малопонятна и много где устарела, поэтому опишу свой опыт установки утилиты и работы с ней. Работаем под Windows.

16.12.2020    45870    budidich    23    

62

Метаданные и их идентификаторы

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Идентификаторы (GUID'ы) метаданных конфигурации. Немного о том, как их получить.

05.12.2020    26663    Infostart    34    

91

Отладка в Infostart Toolkit

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Отладка запросов, схем компоновки данных, просмотр содержимого менеджера временных таблиц.

05.11.2020    6399    Evg-Lylyk    18    

42