Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Помощь с кодом Табличной части

Помощь с кодом Табличной части
Я
   asisdes
 
15.09.18 - 18:16
Есть Табель в виде документа, у документа есть Табличная часть отработанное время.
По циклу там в выходные дни проставляется буковка В (выходной),
так я хотел бы что бы ячейки с буквой В фон был цветным.
Ник то не поможет как правильно обратится к ячейке...
 
 
   asisdes
 
1 - 15.09.18 - 18:18
Функция ЗаполнитьЯвкуПроцедура();
    //установим границы периода


    ДатаНачалаПериода      = НачалоМесяца(Дата);
    ДатаОкончанияПериода = КонецМесяца(Дата);    
    
    ЭлементыФормы.ОтработанноеВремя.ВыделенныеСтроки.Очистить();
    Для Каждого ТекущаяСтрока ИЗ ОтработанноеВремя Цикл  //ТабличноеПоле1

        КоличествоЧасов = 0;  
        КоличествоДней = 0;
        //расчет за период количества дней и часов по норме

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

        |ИЗ
        |    РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
        |ГДЕ
        |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &НачалоМесяца И &КонецМесяца
        |
        |УПОРЯДОЧИТЬ ПО
        |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря";
        Результат = Запрос.Выполнить();
        Данные = Результат.Выгрузить();
        Для ДеньМесяца = День(ДатаНачалаПериода) по День(ДатаОкончанияПериода) Цикл
            ВидДня = Данные[ДеньМесяца - 1].ВидДня;
            Если 
                ВидДня = Перечисления.ВидыДнейПроизводственногоКалендаря.Суббота ИЛИ
                ВидДня = Перечисления.ВидыДнейПроизводственногоКалендаря.Воскресенье ИЛИ
                ВидДня = Перечисления.ВидыДнейПроизводственногоКалендаря.Праздник
            Тогда
                ТекущаяСтрока["Колонка" + ДеньМесяца] = "в";
            Иначе
                Часов = 8 * ТекущаяСтрока.Ставка;                
                ТекущаяСтрока["Колонка" + ДеньМесяца] = "я";
                ТекущаяСтрока["Часы" + ДеньМесяца] = Часов;
                
                КоличествоЧасов = КоличествоЧасов + Часов;
                КоличествоДней = КоличествоДней + 1;
            КонецЕсли;
        КонецЦикла;
        
        ТекущаяСтрока.НормаДней = КоличествоДней;
        ТекущаяСтрока.НормаЧасов = КоличествоЧасов;
    КонецЦикла;
    

    ПересчетИтоговПроцедура();
КонецФункции



Процедуру прилагаю, табель не мой, взял с одного из сайтов который по запросу "табель 1с" сразу выйдет

ПС не нашел как код обрамлять(((
   Cool_Profi
 
2 - 15.09.18 - 18:47
ПриПолученииДанных() оформляй
   Darych
 
3 - 15.09.18 - 18:51
ПриВыводеСтроки() оформляй
   Chameleon1980
 
4 - 15.09.18 - 18:58
(3) мне с самого начала ИМХАЕТСЯ, что в ПриПолученииДАнных быстрее
   asisdes
 
5 - 15.09.18 - 19:31
Спасибо, всем!!!! Все получилось.
Я все время на ячейку жмякал,  а надо было на всю Табличную часть))))

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует