Имя: Пароль:
1C
1С v8
ЗУП 3.1. Не могу понять, откуда берется ТелефонДомашний
,
0 Target1025
 
25.10.19
10:26
Возникла просьба у Отдела Кадров, чтобы в Т2 выходил телефон мобильный, а не телефон домашний. Смотрю отчет  УнифицированнаяФормаТ2, макет УнифицированнаяФормаТ2Базовая и не могу понять, откуда он берется и как заполняется. Запрос оттуда (лишнее вырезал):


ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Сотрудники.Ссылка КАК Сотрудник,
    ВЫБОР
        КОГДА &Период < ТекущиеКадровыеДанныеСотрудников.ДатаПриема
            ТОГДА ТекущиеКадровыеДанныеСотрудников.ДатаПриема
        ИНАЧЕ &Период
    КОНЕЦ КАК Период
ПОМЕСТИТЬ ВТСотрудники
{ВЫБРАТЬ
    Сотрудник.*}
ИЗ
    Справочник.Сотрудники КАК Сотрудники
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекущиеКадровыеДанныеСотрудников КАК ТекущиеКадровыеДанныеСотрудников
        ПО Сотрудники.ФизическоеЛицо = ТекущиеКадровыеДанныеСотрудников.ФизическоеЛицо
            И Сотрудники.Ссылка = ТекущиеКадровыеДанныеСотрудников.Сотрудник
{ГДЕ
    Сотрудники.Ссылка.* КАК Сотрудник,
    Сотрудники.Код КАК ТабельныйНомер,
    Сотрудники.ФизическоеЛицо.*,
    Сотрудники.ГоловнаяОрганизация.*,
    Сотрудники.ТекущийПроцентСевернойНадбавки КАК ПроцентСевернойНадбавки,
    Сотрудники.ФизическоеЛицо.Пол КАК Пол,
    Сотрудники.ФизическоеЛицо.ДатаРождения КАК ДатаРождения,
    Сотрудники.ФизическоеЛицо.ИНН КАК ИНН,
    Сотрудники.ФизическоеЛицо.СтраховойНомерПФР КАК СтраховойНомерПФР,
    Сотрудники.ФизическоеЛицо.МестоРождения КАК МестоРождения}
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ВЫРАЗИТЬ("" КАК СТРОКА) КАК ТелефонДомашнийПредставление
ПОМЕСТИТЬ Представления_КадровыеДанныеСотрудников
ИЗ
    ВТСотрудники КАК ВТСотрудники
ГДЕ
    "ТолькоРазрешенные" = ИСТИНА
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Представления_КадровыеДанныеСотрудников.ТелефонДомашнийПредставление КАК ТелефонДомашний,
ИЗ
    Представления_КадровыеДанныеСотрудников КАК Представления_КадровыеДанныеСотрудников
1 unenu
 
25.10.19
10:31
изучите механизм представлений - это просто, правда некоторые после попыток изучения ушли в монастырь
2 dka80
 
25.10.19
10:32
Недавно делал. Сейчас посмотрю
3 dka80
 
25.10.19
10:35
В процедуре ПриКомпановкеРезультата после строк

// Обозначим начало вывода
ПроцессорВывода.Вывести(ПроцессорКомпоновки, Истина);

Группировки = ЗарплатаКадрыОтчеты.ПолучитьПоляГруппировок(КомпоновщикНастроек);

Добавил следующий код:
    //если не заполнен домашний телефон, попытаемся вывести хоть какой-нибудь
            Для Каждого Строка Из Данные.Строки Цикл
                Если ПустаяСтрока(Строка.ЛичныеДанныеКонтактнаяИнформацияТелефонДомашний) Тогда
                    СписокФЛ = Новый Массив;
                    СписокФЛ.Добавить(fodd_Строка.ЛичныеДанныеФизическоеЛицо);
                    Телефоны = КадровыйУчет.КадровыеДанныеФизическихЛиц(Истина, СписокФЛ, "ТелефонМобильныйПредставление, ТелефонРабочийПредставление");
                    Если Телефоны.Количество() Тогда
                        Если Не ПустаяСтрока(Телефоны[0].ТелефонМобильныйПредставление) Тогда
                            fodd_Строка.ЛичныеДанныеКонтактнаяИнформацияТелефонДомашний = fodd_Телефоны[0].ТелефонМобильныйПредставление;
                        ИначеЕсли Не ПустаяСтрока(Телефоны[0].ТелефонРабочийПредставление) Тогда
                            fodd_Строка.ЛичныеДанныеКонтактнаяИнформацияТелефонДомашний = Телефоны[0].ТелефонРабочийПредставление;
                        КонецЕсли;
                    КонецЕсли;
                КонецЕсли;
4 dka80
 
25.10.19
10:35
Потому что в запросе жестко домашний выбирается
5 Target1025
 
25.10.19
10:36
(3) Спасибо!
6 dka80
 
25.10.19
10:36
+3
Блин. Почему нельзя редактировать свой пост??!!!
везде "fodd_" нужно убрать
7 Target1025
 
25.10.19
10:49
(4) Я понимаю, что он жестко выбирается, но я не понимаю, откуда и как он дергается. :(
8 Vadim_37
 
25.10.19
10:52
{ВЫБРАТЬ
    Сотрудник.*}
9 Айвонттубифри
 
25.10.19
11:09
(0) Вот здесь смотрите:
- Отчет  УнифицированнаяФормаТ2
- Макет УнифицированнаяФормаТ2Расширенная
- вкладка "Настройки"
- Детальные записи
- Выбранные поля "ЛичныеДанные.КонтактнаяИнформация.ТелефонДомашний"
10 Amra
 
25.10.19
11:49
(3) Запросы в цикле, брррр....
11 dka80
 
25.10.19
11:52
(10) ой все
Есть такое понятие как инженерная точность. Так вот в данном случае на это глубоко положить. Массово Т-2 мы не формируем, а для одного сотрудника "и так сойдет!"
12 kumena
 
25.10.19
13:04
(11)
https://youtu.be/6bv_RRz24_g
Мультфильм - Так сойдет © Союзмультфильм, 1981
Мультфильм о зайчике, которому было лень доводить дела до конца и о том, чем это может закончиться.
13 dka80
 
25.10.19
13:13
(12) я из тех, кто в детстве читал эту книжку
14 dka80
 
25.10.19
13:14
+12 и чем может закончится формирование карточки Т-2?
P.S. если ваш пост несет только юмористический характер, то прошу прощения