Создаем свой календарь для произвольных целей

02.12.16

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

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Пример календаря
.epf 8,96Kb
20
20 Скачать (1 SM) Купить за 1 850 руб.

1. Делаем макет дня и шапки календаря примерно такой:

 

 

2. Выводим календарь:

	НачалоМесяца = НачалоМесяца(Дата);
	НачалоМесяцаСлед = ДобавитьМесяц(НачалоМесяца, 1);
	
	Макет = ПолучитьМакет("Макет");
	Шапка = Макет.ПолучитьОбласть("Шапка");
	ОблДень = Макет.ПолучитьОбласть("Неделя|ДеньНедели");
	ОблДень1 = Макет.ПолучитьОбласть("Неделя|ДеньНеделиВнеМесяца");
	
	ТД.Очистить();
	
	Шапка.Параметры.Месяц = Формат(Дата, "ДФ='ММММ гггг'");
	ТД.Вывести(Шапка);
	
	Начало = ДеньНедели(НачалоМесяца);
	День = НачалоМесяца;
	
	Строка = Новый ТабличныйДокумент;
	Если Начало<>1 Тогда
		Для Ном = 1 по Начало - 1 Цикл
			ОблДень1.Параметры.День = День(НачалоМесяца - (Начало - 1)*24*60*60);
			Строка.Присоединить(ОблДень1);
		КонецЦикла;
	КонецЕсли;
	
	НД_ТД = НачалоДня(ТекущаяДата());
	ЖирнаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 2);
	ОбчнаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
	
	Пока День < НачалоМесяцаСлед Цикл
		
		ОблДень.Параметры.День = День(День);
		Если День = НД_ТД Тогда
			мОблДень = ОблДень.Область(1,1, 5,2);
			мОблДень.ЦветФона = WebЦвета.СветлоКоралловый;
			//ЗаполнитьДень(ОблДень, ДанныеЗаполнения, День);
			Строка.Присоединить(ОблДень);
			мОблДень.ЦветФона = Новый Цвет;
		Иначе
			//ЗаполнитьДень(ОблДень, ДанныеЗаполнения, День);
			Строка.Присоединить(ОблДень);
		КонецЕсли;
		ДеньНедели = ДеньНедели(День);
		Если ДеньНедели = 7 Тогда
			ТД.Вывести(Строка);
			Строка = Новый ТабличныйДокумент;
		КонецЕсли;
		День = День + 24*60*60;
	КонецЦикла;
	
	
	Если ДеньНедели <> 7 Тогда
		Для Ном = ДеньНедели+1 по 7 Цикл
			ОблДень1.Параметры.День = День(День);
			Строка.Присоединить(ОблДень1);
			День = День + 24*60*60;
		КонецЦикла;
		ТД.Вывести(Строка);
	КонецЕсли;

3. Добавляем кнопки управления для не управляемых форм:

	Попытка
		Кнопка = ЭлементыФормы.Добавить(Тип("Кнопка"),"ПредМесяц",,ТД); 
		Кнопка.Заголовок = "<<";
		Шрифт = Новый Шрифт(Кнопка.Шрифт,,10,Истина);
		Кнопка.Шрифт = Шрифт;
		Кнопка.УстановитьДействие("Нажатие", Новый Действие("ПредМесяц"));
	Исключение
		Кнопка = ЭлементыФормы.ПредМесяц;
	КонецПопытки;
	Кнопка.Расположить(ТД.Область(3,2,3,2));
	
	Попытка
		Кнопка = ЭлементыФормы.Добавить(Тип("Кнопка"),"СледМесяц",,ТД); 
		Кнопка.Заголовок = ">>";
		Кнопка.Шрифт = Шрифт;
		Кнопка.УстановитьДействие("Нажатие", Новый Действие("СледМесяц"));
	Исключение
		Кнопка = ЭлементыФормы.СледМесяц;
	КонецПопытки;
	Кнопка.Расположить(ТД.Область(3,4,3,4));
	
	
	Попытка
		Кнопка = ЭлементыФормы.Добавить(Тип("Кнопка"),"ТекМесяц",,ТД); 
		Кнопка.Заголовок = "Тек. месяц";
		Кнопка.Шрифт = Шрифт;
		Кнопка.УстановитьДействие("Нажатие", Новый Действие("ТекМесяц"));
	Исключение
		Кнопка = ЭлементыФормы.ТекМесяц;
	КонецПопытки;
	Кнопка.Расположить(ТД.Область(2,3,2,3));

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

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

Календарь Табличный документ ТД

См. также

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

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

5000 руб.

14.01.2016    55303    17    23    

43

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

Богатый редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    63695    44    59    

82

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

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

2400 руб.

29.06.2020    19547    27    6    

42

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

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

1500 руб.

06.10.2020    10766    7    7    

11

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

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

20.08.2024    20809    mrXoxot    44    

128

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

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

27.05.2024    10291    smielka    37    

105

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    17736    1223    elcoan    53    

125
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Alexey_ 27 02.12.16 11:10 Сейчас в теме
2. FirePyres 72 02.12.16 11:48 Сейчас в теме
Данная обработка это только каркас для дальнейших разработок
У нас например я организовал запись сотрудников на обучение, с созданием и редактированием документов
3. Alexey_ 27 02.12.16 16:35 Сейчас в теме
(2)так есть же планировщик
4. skillman 17 05.06.21 08:24 Сейчас в теме
(3) Колхоз дело добровольное :)
Оставьте свое сообщение