Программный вывод таблицы значений в таблицу на управляемой форме

Публикация № 1644076 15.04.22

Разработка - Работа с интерфейсом

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

Механизм предусматривает работу как с реквизитом объекта, так и с реквизитом формы.

 

И по сути является аналогом метода обычных форм:

СоздатьКолонки()

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

 

Пример вызова:

ПрограммныйВыводТаблицыЗначенийВТаблицуНаФорму(МодульОбъкта.ТЗИзExcel, "ТЗИзExcel", Истина, Истина);
// Процедура - Программный вывод таблицы значений в таблицу на форму
//
// Параметры:
//  ТаблицаЗначенийДляВывода			 - ТаблицаЗначений 	- ТаблицаЗначений для вывода на форму
//  ИмяРеквизитаФормы					 - Строка 			- Наименование реквизита формы ДанныеФормыКоллекция
//  ИспользованиеКолонкиОтметка			 - Булево 			- Вывод колокни отметка
//  ТолькоКнопкаОткрытия				 - Булево 			- Отображение кнопок
//
&НаСервере
Процедура ПрограммныйВыводТаблицыЗначенийВТаблицуНаФорму(ТаблицаЗначенийДляВывода, ИмяРеквизитаФормы, ИспользованиеКолонкиОтметка = Ложь, ТолькоКнопкаОткрытия = Истина)
	
	Попытка  
		
		Если ТипЗнч(ТаблицаЗначенийДляВывода) = Тип("ТаблицаЗначений") Тогда		
			Если ТипЗнч(ИмяРеквизитаФормы) = Тип("Строка") Тогда
				// Опрелеляем является заполняемый реквизит, реквизитом объекта или реквизитом формы 
				Если Объект.Свойство(ИмяРеквизитаФормы) И  ТипЗнч(Объект[ИмяРеквизитаФормы]) = Тип("ДанныеФормыКоллекция") Тогда			
					ПутьКДаннымФормыКоллекция = "Объект." + ИмяРеквизитаФормы;
					ОбъектДляОтображенияНаФорме = РеквизитФормыВЗначение("Объект." + ИмяРеквизитаФормы);
					ЭтоРеквизитОбъекта = Истина;
				ИначеЕсли ТипЗнч(ЭтаФорма[ИмяРеквизитаФормы]) = Тип("ДанныеФормыКоллекция") Тогда   			
					ПутьКДаннымФормыКоллекция = ИмяРеквизитаФормы;               
					ОбъектДляОтображенияНаФорме = РеквизитФормыВЗначение(ИмяРеквизитаФормы ,Тип("ТаблицаЗначений"));	
					ЭтоРеквизитОбъекта = Ложь;
				КонецЕсли;
			КонецЕсли;
			
			МассивУдаляемыхРеквизитов = Новый Массив;
			МассивДобавляемыхРеквизитов = Новый Массив;
			МассивИсключаемыхРеквизитов = Новый Массив;
			
			// Формируем массив колонок для удаления
			Для каждого Колонка Из ОбъектДляОтображенияНаФорме.Колонки Цикл
				МассивУдаляемыхРеквизитов.Добавить(ПутьКДаннымФормыКоллекция + "." + Колонка.Имя); 
			КонецЦикла;
			
			// Удаляем колонки с формы
			Для каждого Колонка Из ОбъектДляОтображенияНаФорме.Колонки Цикл
				ЭлементКолонки = Элементы.Найти(ИмяРеквизитаФормы + Колонка.Имя);	
				Если НЕ ЭлементКолонки = Неопределено Тогда
					Элементы.Удалить(ЭлементКолонки);
				КонецЕсли;			
			КонецЦикла;
			
			// Добавляем колонку "Отметка"
			Если ИспользованиеКолонкиОтметка Тогда
				НоваяКолонка = Новый РеквизитФормы("Отметка", Новый ОписаниеТипов("Булево"),  ПутьКДаннымФормыКоллекция);
				МассивДобавляемыхРеквизитов.Добавить(НоваяКолонка);
			КонецЕсли;
			
			// Формируем массив колонок из таблицы значений
			Для каждого Колонка Из ТаблицаЗначенийДляВывода.Колонки Цикл
				Если Колонка.ТипЗначения.Типы().Найти(Тип("Тип")) = Неопределено Тогда
					НоваяКолонка = Новый РеквизитФормы(Колонка.Имя, Новый ОписаниеТипов(Колонка.ТипЗначения.Типы()), ПутьКДаннымФормыКоллекция);
					МассивДобавляемыхРеквизитов.Добавить(НоваяКолонка);
				Иначе
					Сообщить("Колонка " + Строка(Колонка.Имя) + " с типом: <ТИП> не может быть выгружена");
					МассивИсключаемыхРеквизитов.Добавить(Колонка);
				КонецЕсли;		
			КонецЦикла;	
			
			// Обновляем реквизиты формы
			ИзменитьРеквизиты(МассивДобавляемыхРеквизитов, МассивУдаляемыхРеквизитов);
			
			//Создаем элементы на форме для отображения колонок
			ЭлементТЗ = Элементы[ИмяРеквизитаФормы];
			
			// Добавляем колонку "Отметка"    
			Если ИспользованиеКолонкиОтметка Тогда
				НовыйЭлементФормы = Элементы.Добавить(ИмяРеквизитаФормы + "Отметка", Тип("ПолеФормы"), ЭлементТЗ);
				НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеФлажка;
				НовыйЭлементФормы.ПутьКДанным = ПутьКДаннымФормыКоллекция + "." + "Отметка";
				НовыйЭлементФормы.РежимРедактирования = РежимРедактированияКолонки.ВходПриВводе;
			КонецЕсли;
			
			// Добавляем колонки из таблицы
			Для Каждого Колонка ИЗ ТаблицаЗначенийДляВывода.Колонки Цикл
				Если МассивИсключаемыхРеквизитов.Найти(Колонка) = Неопределено Тогда
					НовыйЭлементФормы = Элементы.Добавить(ИмяРеквизитаФормы + Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ);			
					НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;   
					// Устанавливаем доступность кнопок
					Если ТолькоКнопкаОткрытия Тогда
						НовыйЭлементФормы.РедактированиеТекста = Ложь;
						НовыйЭлементФормы.ВыбиратьТип = Ложь;
						НовыйЭлементФормы.КнопкаВыбора  = Ложь;
						НовыйЭлементФормы.КнопкаВыпадающегоСписка = Ложь;
						НовыйЭлементФормы.КнопкаОткрытия = Истина;
						НовыйЭлементФормы.КнопкаОчистки = Ложь;	
					Иначе
						НовыйЭлементФормы.РедактированиеТекста = Истина;
						НовыйЭлементФормы.ВыбиратьТип = Истина;
						НовыйЭлементФормы.КнопкаВыбора  = Истина;
						НовыйЭлементФормы.КнопкаВыпадающегоСписка = Истина;
						НовыйЭлементФормы.КнопкаОткрытия = Истина;
						НовыйЭлементФормы.КнопкаОчистки = Истина;
					КонецЕсли;
					НовыйЭлементФормы.КнопкаРегулирования = Ложь;
					НовыйЭлементФормы.КнопкаСоздания = Ложь;
					НовыйЭлементФормы.КнопкаСпискаВыбора = Ложь;
					НовыйЭлементФормы.ИсторияВыбораПриВводе = ИсторияВыбораПриВводе.НеИспользовать;
					НовыйЭлементФормы.БыстрыйВыбор = Ложь;
					НовыйЭлементФормы.ПутьКДанным = ПутьКДаннымФормыКоллекция + "." + Колонка.Имя;
				КонецЕсли;	
			КонецЦикла;
			
			// Загружаем таблицу значений в данные формы коллекцию
			Если ЭтоРеквизитОбъекта Тогда
				Объект[ИмяРеквизитаФормы].Загрузить(ТаблицаЗначенийДляВывода);
			Иначе
				ЭтаФорма[ИмяРеквизитаФормы].Загрузить(ТаблицаЗначенийДляВывода);
			КонецЕсли;
		Иначе
			Сообщить("Выводить можно только таблицу значений");
		КонецЕсли;
		
	Исключение
		ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ОписаниеОшибки());
	КонецПопытки;
	
КонецПроцедуры

 

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 19.04.22 10:14
Сообщение было скрыто модератором.
...
2. пользователь 19.04.22 11:22
Сообщение было скрыто модератором.
...
3. пользователь 19.04.22 16:35
Сообщение было скрыто модератором.
...
4. пользователь 20.04.22 00:31
Сообщение было скрыто модератором.
...
13. пользователь 21.04.22 10:33
Сообщение было скрыто модератором.
...
5. пользователь 20.04.22 11:08
Сообщение было скрыто модератором.
...
9. пользователь 20.04.22 18:34
Сообщение было скрыто модератором.
...
6. skeptik2105 20.04.22 12:14 Сейчас в теме
Использование метода "Сообщить" - нарушение стандартов и методик разработки.

https://its.1c.ru/db/v8std/content/418/hdoc

Для вывода сообщений пользователю во всех случаях следует использовать объект СообщениеПользователю, даже когда сообщение не «привязывается» к некоторому элементу управления формы. Метод Сообщить применять не следует.
sapervodichka; +1 Ответить
7. Yashazz 4512 20.04.22 13:04 Сейчас в теме
(6) Ну. скажем так, они сами свои стандарты не очень-то соблюдают. Это не самое страшное из всей этой публикации.
8. Yashazz 4512 20.04.22 13:25 Сейчас в теме
1. Случай, когда "ИмяРеквизитаФормы" не строка, не обработан. Взялись делать "защиту от дурака", как для типа "ТаблицаЗначенийДляВывода", так уж везде.
2. Подход, при котором сперва все колонки и элементы удаляются, может быть неверен - правильнее выяснять, есть ли нужный реквизит (и элемент формы) и просто его не трогать, либо донастраивать. А уж добавленные в конфигураторе вы так вообще не удалите.
3. Обращение "ПутьКДаннымФормыКоллекция = "Объект." + ИмяРеквизитаФормы;" не покрывает все случаи. Есть ещё "Отчёт", есть "Запись", в их формах тоже могут понадобиться таблицы значений. Равно как и само обращение к переменной "Объект".
4. Конструкция "Новый ОписаниеТипов(Колонка.ТипЗначения.Типы())" неверна - так вы не установите квалификаторы простых типов, и будет у вас всё для них по умолчанию. Правильнее было напрямую передать "Колонка.ТипЗначения". А ещё в типах Null попадается, и некоторые релизы при попытке объявить реквизит такого типа падают.
5. Проверять только на наличие типа "Тип" мало. Там любая "прелесть" может попасться, включая такую, что в данных формы фигурировать не может, и налетите на ошибку. Правильнее проверять на допустимые - их меньше, и их чётко видно при описании типа реквизита коллекции. И отдельно думать, что, если тип "Произвольный". Это очень такой подводный камень. Есть вообще такие, что храниться в коллекции могут, а вот в элементе будет показано только их строковое представление, вроде "Массив". И составные типы бывают очень не айс, и характеристики.
6. Мысль с флажками, может, и неплоха, но... Нет проверки на тип "Булево", да и, раз уж правка, вместо "РежимРедактированияКолонки.ВходПриВводе" хорошо бы "Непосредственно", так пользователям удобнее. Ну и картинки в колонках тогда уж, раз такая пьянка. Иконки, это бывает очень даже нужно. А ещё порой бывает надо 3 состояния флажка...
7. "НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода" - всегда прям? А ничего другого не бывает нужно? И править прям можно? См. вопрос про возможные типы. Много ли смысла для такого имеет кнопка открытия без перехвата её события?
8. Почему кнопка создания всегда "Ложь" и нельзя быстрый выбор, непонятно, т.к. бывает очень надо. Лучше бы, помимо умолчаний, передавать некое "описание" для нужных реквизитов, вроде массива структур или отдельной таблицы - кому чего включать и выключать.
9. Не скажу за все релизы, но некоторые не любят, когда путь к данным указывается после настройки кнопок, и сбрасывают эти настройки на умолчания.
10. "ОбщегоНазначенияКлиентСервер.СообщитьПользователю" - это из БСП. А она далеко не у всех.

Ну и по мелочам: "НЕ ЭлементКолонки = Неопределено" это два логических действия, лучше писать "ЭлементКолонки<>Неопределено".

Так - конкретнее?))
ixijixi; user612295_death4321; sapervodichka; Batman; +4 Ответить
10. RocKeR_13 1215 21.04.22 09:24 Сейчас в теме
(8)
10. "ОбщегоНазначенияКлиентСервер.СообщитьПользователю" - это из БСП. А она далеко не у всех.

Более того, на актуальных версиях БСП:
// Устарела. Следует использовать ОбщегоНазначенияКлиент.СообщитьПользователю или ОбщегоНазначения.СообщитьПользователю
11. пользователь 21.04.22 09:42
Сообщение было скрыто модератором.
...
12. пользователь 21.04.22 10:27
Сообщение было скрыто модератором.
...
14. lvictor58 135 25.04.22 16:19 Сейчас в теме
На просторах инета нашел простую функцию, которой с успехом пользуюсь

 &НаСервере
Процедура СоздатьТаблицуФормы(Знач ИмяПоляТаблицыФормы, Знач ИмяРеквизитаДанныеФормыКоллекция, Знач ТаблицаЗначений)
    
	//// Если руками не создали эелемент формы Таблица, то создается программно
	//Если Элементы.Найти(ИмяПоляТаблицыФормы) = Неопределено Тогда
	//    ЭлементРеквизита = Элементы.Добавить(ИмяПоляТаблицыФормы, Тип("ТаблицаФормы"),);
	//    ЭлементРеквизита.ПутьКДанным = ИмяРеквизитаДанныеФормыКоллекция;
	//КонецЕсли;
	//
	УдаляемыеРеквизиты = Новый Массив; //Удалять можно только ранее программно добавленные реквизиты.
	РеквизитыДляУдаления = ПолучитьРеквизиты(ИмяРеквизитаДанныеФормыКоллекция);
	Для Каждого РеквизитУдаления Из РеквизитыДляУдаления Цикл
		УдаляемыеРеквизиты.Добавить(ИмяРеквизитаДанныеФормыКоллекция+"."+РеквизитУдаления.Имя);
		// Удаляем элементы формы
		Элементы.Удалить(Элементы[ИмяПоляТаблицыФормы+РеквизитУдаления.Имя]);
	КонецЦикла;
   
    // Добавление реквизитов в таблицу формы
    ДобавляемыеРеквизиты = Новый Массив;
    Для каждого Колонка Из ТаблицаЗначений.Колонки Цикл
        ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(Колонка.Имя, Колонка.ТипЗначения, ИмяРеквизитаДанныеФормыКоллекция, Колонка.Заголовок));
    КонецЦикла;
    ИзменитьРеквизиты(ДобавляемыеРеквизиты,УдаляемыеРеквизиты);
    
    // Добавление элементов форму
    Для каждого Колонка Из ТаблицаЗначений.Колонки Цикл
        ЭлементРеквизита = Элементы.Добавить(ИмяПоляТаблицыФормы + Колонка.Имя, Тип("ПолеФормы"), Элементы[ИмяПоляТаблицыФормы]);
        ЭлементРеквизита.ПутьКДанным = ИмяРеквизитаДанныеФормыКоллекция + "." + Колонка.Имя;
        ЭлементРеквизита.Вид = ВидПоляФормы.ПолеВвода;
    КонецЦикла;
    
    ЗначениеВРеквизитФормы(ТаблицаЗначений, ИмяРеквизитаДанныеФормыКоллекция);      
КонецПроцедуры
Показать


пример применения:
На форме размещаю реквизит "ТаблицаРезультат" типа таблица значений
и там где надо посмотреть то, что имеем заполняем эту таблицу

	ТаблицаДанных = ПолучитьИзВременногоХранилища(АдресФайлаЗагрузки); 

	Если ФлагОтладки Тогда
		Попытка
			СоздатьТаблицуФормы("ТаблицаРезультат", "ТаблицаРезультат", ТаблицаДанных);
			ТаблицаРезультат.Загрузить(ТаблицаДанных);

			Элементы.ТаблицаРезультат.Обновить();
		Исключение
			Сообщить("Показать итоги "+ОписаниеОшибки());
		КонецПопытки;
		возврат;
	КонецЕсли;

Показать
assa; TheOldGuard; +2 Ответить
Оставьте свое сообщение

См. также

Подсистема 1С "Визуальные инструменты АФРОДИТА" (Панель показателей и виджетов)

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

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

10800 руб.

20.03.2023    6936    7    19    

24

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

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

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

5000 руб.

14.01.2016    52129    15    21    

38

Модель состояния для MVC

Работа с интерфейсом Идеи и тренды в разработке Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    1525    kalyaka    2    

16

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

Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

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

12.11.2021    13689    acces969    95    

142

Редактор графов

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

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

1000 руб.

06.10.2020    7543    4    7    

6

[Общий модуль] Динамическое формирование интерфейса

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

Библиотека готовых функций для разработки интерфейса формы и размещения на нём элементов формы с помощью программного кода.

28.08.2020    31100    rpgshnik    88    

284

Самый простой парсинг и обработка веб-страниц в 1С

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

Рассмотрим самый простой парсинг веб-страниц средствами платформы 1С и еще некоторые полезные приемы работы с веб-страницами.

07.08.2020    25090    Infostart    30    

146

Управление дашбордами

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    13054    15    4    

22

Форма выбора (подбор) в управляемых формах

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

Разбор небольших примеров того, как правильно открывать форму выбора (подбора) в управляемых формах, не прибегая к модальным окнам.

08.05.2020    180433    user5300    40    

291

СКД. Шаг 3. Используем макеты для оформления отчета

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

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

13.01.2020    72306    aximo    23    

199

Сходство Джаро - Винклера. Нечеткое сравнение строк

Универсальные функции Платформа 1С v8.3 Россия Бесплатно (free)

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

25.12.2019    11342    brooho    21    

170

[Взрыв шаблона!] Новый способ программной настройки условного оформления

Работа с интерфейсом Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

01.12.2019    30558    73    mszsuz    13    

161

Создание асинхронных виджетов

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

Описание нескольких способов создания асинхронных виджетов для 1С:Предприятия. Рассматриваются способы с использованием HTTP-сервисов и фоновых заданий.

16.10.2019    16394    Infostart    19    

156

Полезные процедуры и функции для программиста

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

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

07.10.2019    48046    HostHost    41    

284

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

Работа с интерфейсом Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Абонемент ($m)

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

1 стартмани

09.09.2019    26127    46    bmk74    9    

83

[Шпаргалка] Программное создание элементов формы

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

Программное создание практически всех популярных элементов формы.

06.09.2019    209036    rpgshnik    87    

863

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

Универсальные функции Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

24.08.2019    24753    BenGunn    29    

132

Отслеживание выполнения фонового задания

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

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

17.08.2019    56188    ids79    23    

224

[Механизм интерфейса] Свой флажок (чекбокс)

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

09.08.2019    32168    29    rpgshnik    44    

172

Подсистема "Варианты отчетов". Используете ли Вы ее правильно?

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

Небольшая история про использование подсистемы "Варианты отчетов" из БСП. Используете ли Вы ее правильно?

04.06.2019    72696    Infostart    57    

334

Добавление отчетов в типовые конфигурации 1С

Универсальные функции БСП (Библиотека стандартных подсистем) Управляемые формы Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

Описание различных способов добавления общих и контекстных отчетов в конфигурации 1С, построенные на базе БСП. Основные моменты и нюансы.

07.03.2019    104895    ids79    51    

325

Программное добавление элементов на управляемую форму

Работа с интерфейсом Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Пример добавления Команд, Полей ввода, Групп, Страниц, Реквизитов, Обработчиков событий.

1 стартмани

13.02.2019    145293    74    spec8s    47    

256

Расширение: Темы для 1С 8.3

Работа с интерфейсом Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Расширение позволяет сменить цвет оформления для интерфейса Такси.

3 стартмани

10.02.2019    33849    213    spec8s    29    

60

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

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

29.01.2019    34680    Synoecium    46    

215

Подмена заголовка 1С

Универсальные функции Работа с интерфейсом Россия Бесплатно (free)

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

08.12.2018    12451    moolex    26    

26

Универсальные функции ЗУП 3.1 / ЗКГУ 3.1, которые помогут в разработке

Универсальные функции Зарплата Кадровый учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Бухгалтерский учет Бесплатно (free)

В статье размещен список стандартных процедур и функций с примерами, которые могут помочь при разработке (доработке) конфигураций Зарплата и управление персоналом ред. 3.1 и Зарплата и кадры государственного учреждения 3.1. Иногда бывает довольно сложно правильно получить данные или долго, поэтому лучшим вариантом будет использование стандартных процедур. Буду очень признателен, если Вы поделитесь своим опытом и предложите свои варианты стандартных процедур которые помогают в работе. Или предложите, как дополнить имеющиеся процедуры.

14.11.2018    231548    GeterX    175    

1007

Шпаргалка разработчика для работы с формами

Работа с интерфейсом Платформа 1С v8.3 Россия Абонемент ($m)

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

3 стартмани

31.10.2018    22095    95    ELAM    3    

30

Открывашка ячеек таблиц

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

27.10.2018    29191    16    tormozit    39    

107

Отправка электронной почты с помощью локального почтового клиента из 1С, развернутой под удаленным рабочим столом

Печатные формы Универсальные функции Email рассылки Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием Абонемент ($m)

Решение для интерактивной (нажал-отредактировал) отправки электронных писем и печатных форм через почтовый клиент (Thunderbird, Outlook) находящийся на локальном компьютере, из конфигурации 1С, развернутой под удаленным рабочим столом (RDP, remote-app). Подходит также для локального развертывания 1С. Представлен пример быстрой интеграции с конфигурациями "Управление торговлей 10.3", "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1", "Бухгалтерия предприятия 2.0".

1 стартмани

21.09.2018    40359    24    stvorl    1    

20

Визуализация событий на временной шкале средствами "Поле HTML документа"

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Интересный способ наглядно отобразить события на временной шкале. Например, может быть применен для красивого вывода документов по клиенту. Тестировалось на платформе 8.3.12.1469

1 стартмани

31.07.2018    36242    160    Plotks2017    27    

236

[Шпаргалка] Свой заголовок отчету на СКД с параметрами, картинками (без программирования)

Работа с интерфейсом Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

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

23.07.2018    103245    rpgshnik    73    

366

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

Работа с интерфейсом Платформа 1С v8.3 Россия Абонемент ($m)

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

1 стартмани

17.07.2018    96751    33    kalyaka    17    

74

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

Универсальные функции Платформа 1С v8.3 Бесплатно (free)

Пара полезных процедур для работы с дополнительными реквизитами на форме. Далее в статье: 1. Как называются дополнительные реквизиты на форме и в какой момент они появляются на форме? 2. Как проверить до записи корректность заполнения пользователем дополнительного реквизита? 3. Как заполнить значение дополнительного реквизита по другому событию и обновить данные на форме? 4. Как расположить дополнительный реквизит в указанном месте на форме?

15.07.2018    77884    papche    81    

266

Строим графы средствами 1С (без GraphViz)

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

Множество статей на Инфостарте описывают, как работать с компонентой GraphViz, чтобы построить ориентированный граф. Но практически нет материалов, как работать с такими графами средствами 1С. Сегодня я расскажу, как красиво строить графы с минимальным пересечением. Нам этот метод пригодился для отрисовки алгоритмов в БИТ.Финансе, т.к. типовой механизм не устраивал. Еще это может быть полезно для визуализации различных зависимостей: расчета себестоимости, графы аффилированности компаний и т.д. Надеюсь, эта статья поможет сделать мир 1С красивее и гармоничней:) Итак, поехали...

23.05.2018    27817    slozhenikin_com    20    

55

Условное оформление горизонтальных итогов без использования макетов

Работа с интерфейсом Система компоновки данных Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

14.03.2018    24425    nreisende    19    

142

23 способа изменить язык интерфейса в 1С

Работа с интерфейсом Бесплатно (free)

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

04.02.2018    129100    ekaruk    44    

250