Заказы на доработку 1С (сервис удаленной работы)

Хранилище

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

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Печать Календаря , и табличного файла          
burza Подменю пользователя
сообщение 30.09.25, 16:41
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 346
Спасибо сказали: 1 раз
Рейтинг: 1

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

xlmel Подменю пользователя
сообщение 30.09.25, 16:48
Сообщение #2

Говорящий
***
Группа: Пользователи
Сообщений: 73
Из: Харьков
Спасибо сказали: 35 раз
Рейтинг: 37.7

Сделайте запрос к производственному календарю за определенный период с левым соединением к документу по дате

burza Подменю пользователя
сообщение 30.09.25, 16:57
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 346
Спасибо сказали: 1 раз
Рейтинг: 1

xlmel @ Сегодня, 17:48 * ,
а как это то напечатать?)

xlmel Подменю пользователя
сообщение 30.09.25, 17:14
Сообщение #4

Говорящий
***
Группа: Пользователи
Сообщений: 73
Из: Харьков
Спасибо сказали: 35 раз
Рейтинг: 37.7

как вариант вывести в табличный документ и его напечатать. Или можно на СКД сделать простой отчет, туда запихнуть этот запрос.

burza Подменю пользователя
сообщение 30.09.25, 18:13
Сообщение #5

Оратор
*****
Группа: Пользователи
Сообщений: 346
Спасибо сказали: 1 раз
Рейтинг: 1

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

xlmel @ Сегодня, 18:14 * ,
нужно понять еще какой день из чилса. Понедельник,вторник и .тд

xlmel Подменю пользователя
сообщение 01.10.25, 9:03
Сообщение #6

Говорящий
***
Группа: Пользователи
Сообщений: 73
Из: Харьков
Спасибо сказали: 35 раз
Рейтинг: 37.7

burza @ Вчера, 18:13 * ,
Так есть же функция ДеньНедели. Конечно она выдает число, но Вы можете добавить массив или перечисление с днями недели и выводить.

burza Подменю пользователя
сообщение 01.10.25, 11:46
Сообщение #7

Оратор
*****
Группа: Пользователи
Сообщений: 346
Спасибо сказали: 1 раз
Рейтинг: 1

Сейчас выводит просто календарь на печать. а нужно в день подставлять ВидЗаписи . куда прикрутить?

Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    КалендарьДляВодителяДанныеМесяца.День КАК День,
    |    КалендарьДляВодителяДанныеМесяца.ВидЗаписи КАК ВидЗаписи
    |ИЗ
    |    Документ.КалендарьДляВодителя.ДанныеМесяца КАК КалендарьДляВодителяДанныеМесяца
    |ГДЕ
    |    КалендарьДляВодителяДанныеМесяца.Ссылка = &Ссылка";
    Запрос.Параметры.Вставить("Ссылка", Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();
    
    
    ТабДок.Очистить();

    НачалоМесяца = НачалоМесяца(Ссылка.Дата);
    НачалоМесяцаСлед = ДобавитьМесяц(НачалоМесяца, 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;
            КонецЦикла;
            ТабДок.Вывести(Строка);
        КонецЕсли;
        
        
        ВставлятьРазделительСтраниц = Истина;
        
    //КонецЦикла;


burza @ Сегодня, 11:58 * ,
Отвечаю сам себе. может кому пригодиться
    ТабДок.Очистить();

    НачалоМесяца = НачалоМесяца(Ссылка.Дата);
    НачалоМесяцаСлед = ДобавитьМесяц(НачалоМесяца, 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;
            КонецЦикла;
            ТабДок.Вывести(Строка);
        КонецЕсли;
        
        
        ВставлятьРазделительСтраниц = Истина;

burza Подменю пользователя
сообщение 01.10.25, 12:59
Сообщение #8

Оратор
*****
Группа: Пользователи
Сообщений: 346
Спасибо сказали: 1 раз
Рейтинг: 1

burza @ Сегодня, 12:46 * ,
[необходимо зарегистрироваться для просмотра ссылки] вот это было бы идеально)

как такое к моему макету прикрутить) ото у меня фигня получаеться

andytg Подменю пользователя
сообщение 01.10.25, 16:35
Сообщение #9

Завсегдатай
****
Группа: Пользователи
Сообщений: 121
Из: Киев
Спасибо сказали: 37 раз
Рейтинг: 33.9

burza @ Сегодня, 13:59 * ,

такое -- это в смысле, свои заметки в календарь?
можно попробовать что-то типа таблицы в режиме ввода данных (как регламентированный отчет) и потом сохранять "заметки" куда-либо, хоть в справочник, хоть в независимый регистр сведений

когда-то давно делал такое на 7.7 -- закупающие захотели некую таблицу (отчет) "как в экселе" (с), чтоб туда выводились строки вспомогательных документов (внутренних заявок на закупку), они там в этой простыне что-то редактировали (типа, запрос продающего менеджера -- ответ закупающего), а потом при закрытии таблицы отчета всё из ячеек разносилось обратно в строки документов, типа им так нагляднее и удобнее smile.gif

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 03.10.25, 9:07
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!