Имя: Пароль:
1C
1С v8
1с erp 2 Форма списка сотрудников
,
0 Ilqarupup
 
01.02.19
21:48
Добрый день! Возникла проблема, хочу на форму списка сотрудников вывести доп начисления по сотруднику , как ФОТ. Был вот такой запрос в динамическом списке:

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Сотрудники.Ссылка КАК Ссылка,
    Сотрудники.ВерсияДанных КАК ВерсияДанных,
    Сотрудники.ПометкаУдаления КАК ПометкаУдаления,
    Сотрудники.Код КАК Код,
    Сотрудники.Наименование КАК Наименование,
    ДанныеДляПодбора.Наименование КАК НаименованиеСотрудника,
    Сотрудники.ФизическоеЛицо КАК ФизическоеЛицо,
    Сотрудники.ГоловнаяОрганизация КАК Организация,
    Сотрудники.ВАрхиве КАК ВАрхиве,
    Сотрудники.УточнениеНаименования КАК УточнениеНаименования,
    Сотрудники.ГоловнойСотрудник КАК ГоловнойСотрудник,
    Сотрудники.Предопределенный КАК Предопределенный,
    Сотрудники.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных,
    ВЫБОР
        КОГДА Сотрудники.ПометкаУдаления
            ТОГДА 4
        ИНАЧЕ 3
    КОНЕЦ КАК Пиктограмма,
    ДанныеДляПодбора.Филиал КАК Филиал,
    ДанныеДляПодбора.Подразделение КАК Подразделение,
    ДанныеДляПодбора.Должность КАК Должность,
    ДанныеДляПодбора.ДолжностьПоШтатномуРасписанию КАК ДолжностьПоШтатномуРасписанию,
    ДанныеДляПодбора.КоличествоСтавок КАК КоличествоСтавок,
    ДанныеДляПодбора.КоличествоСтавокПредставление КАК КоличествоСтавокПредставление,
    ВидыЗанятостиСотрудниковДляПодбора.ВидЗанятости КАК ВидЗанятости,
    ЕСТЬNULL(ДанныеДляПодбора.ВидДоговора, ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровССотрудниками.ПустаяСсылка)) КАК ВидДоговора,
    ДанныеОбОплатеТрудаДляПодбора.ТарифнаяСтавка КАК ТарифнаяСтавка,
    ДанныеОбОплатеТрудаДляПодбора.ФОТ КАК ФОТ,
    ДанныеОбОплатеТрудаДляПодбора.Надбавка КАК Надбавка,
    ДанныеОбОплатеТрудаДляПодбора.СпособРасчетаАванса КАК СпособРасчетаАванса,
    ДанныеОбОплатеТрудаДляПодбора.Аванс КАК Аванс,
    ТекущиеКадровыеДанные.ДатаПриема КАК ДатаПриема,
    ТекущиеКадровыеДанные.ДатаУвольнения КАК ДатаУвольнения,
    ТекущиеКадровыеДанные.ОформленПоТрудовомуДоговору КАК ОформленПоТрудовомуДоговору,
    ВЫБОР
        КОГДА РолиСотрудниковРаботник.Сотрудник ЕСТЬ NULL
            ТОГДА ЛОЖЬ
        ИНАЧЕ ИСТИНА
    КОНЕЦ КАК Работник,
    ВЫБОР
        КОГДА РолиСотрудниковДоговорник.Сотрудник ЕСТЬ NULL
            ТОГДА ЛОЖЬ
        ИНАЧЕ ИСТИНА
    КОНЕЦ КАК Договорник,
    СостоянияСотрудников.Состояние КАК Состояние,
    СостоянияСотрудников.ДействуетДо КАК СостояниеДействуетДо,
    ДанныеДляПодбора.ЭтоГоловнойСотрудник КАК ЭтоГоловнойСотрудник,
    ДанныеДляПодбора.Начало КАК Начало,
    ДанныеДляПодбора.Окончание КАК Окончание,
    ДанныеДляПодбора.МестоВСтруктуреПредприятия КАК МестоВСтруктуреПредприятия
ИЗ
    РегистрСведений.ДанныеДляПодбораСотрудников КАК ДанныеДляПодбора
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Сотрудники КАК Сотрудники
        ПО ДанныеДляПодбора.Сотрудник = Сотрудники.Ссылка
            И ДанныеДляПодбора.Наименование = Сотрудники.Наименование
            И (ДанныеДляПодбора.ИдентификаторЗаписи В
                (ВЫБРАТЬ ПЕРВЫЕ 1
                    ДанныеДляПодбораСотрудниковОтбор.ИдентификаторЗаписи
                ИЗ
                    РегистрСведений.ДанныеДляПодбораСотрудников КАК ДанныеДляПодбораСотрудниковОтбор
                ГДЕ
                    ДанныеДляПодбораСотрудниковОтбор.Сотрудник = ДанныеДляПодбора.Сотрудник
                    И ДанныеДляПодбораСотрудниковОтбор.Наименование = ДанныеДляПодбора.Наименование
                    И ДанныеДляПодбораСотрудниковОтбор.Начало <= &ДатаОкончания
                    И (ДанныеДляПодбораСотрудниковОтбор.Окончание = ДАТАВРЕМЯ(1, 1, 1)
                        ИЛИ ДанныеДляПодбораСотрудниковОтбор.Окончание >= &ДатаНачала)
                УПОРЯДОЧИТЬ ПО
                    ДанныеДляПодбораСотрудниковОтбор.ПоДоговоруГПХ,
                    ДанныеДляПодбораСотрудниковОтбор.Начало УБЫВ,
                    ДанныеДляПодбораСотрудниковОтбор.Организация,
                    ДанныеДляПодбораСотрудниковОтбор.Филиал,
                    ДанныеДляПодбораСотрудниковОтбор.Подразделение))
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекущиеКадровыеДанныеСотрудников КАК ТекущиеКадровыеДанные
        ПО ДанныеДляПодбора.ФизическоеЛицо = ТекущиеКадровыеДанные.ФизическоеЛицо
            И ДанныеДляПодбора.Сотрудник = ТекущиеКадровыеДанные.Сотрудник
            И ДанныеДляПодбора.Организация = ТекущиеКадровыеДанные.ГоловнаяОрганизация}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РолиСотрудников КАК РолиСотрудниковРаботник
        ПО ДанныеДляПодбора.Сотрудник = РолиСотрудниковРаботник.Сотрудник
            И (&ИспользуетсяОтборПоРолиСотрудникаРаботник = ИСТИНА)
            И (РолиСотрудниковРаботник.РольСотрудника = ЗНАЧЕНИЕ(Перечисление.РолиСотрудников.Работник))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РолиСотрудников КАК РолиСотрудниковДоговорник
        ПО ДанныеДляПодбора.Сотрудник = РолиСотрудниковДоговорник.Сотрудник
            И (&ИспользуетсяОтборПоРолиСотрудникаДоговорник = ИСТИНА)
            И (РолиСотрудниковДоговорник.РольСотрудника = ЗНАЧЕНИЕ(Перечисление.РолиСотрудников.Договорник))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияСотрудников КАК СостоянияСотрудников
        ПО ДанныеДляПодбора.Сотрудник = СостоянияСотрудников.Сотрудник
            И (СостоянияСотрудников.Период <= &ДатаОкончания)
            И (СостоянияСотрудников.ДействуетДо >= &ДатаНачалаСведений
                ИЛИ СостоянияСотрудников.ДействуетДо = ДАТАВРЕМЯ(1, 1, 1))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеОбОплатеТрудаДляПодбораСотрудников КАК ДанныеОбОплатеТрудаДляПодбора
        ПО ДанныеДляПодбора.Сотрудник = ДанныеОбОплатеТрудаДляПодбора.Сотрудник
            И ДанныеДляПодбора.ФизическоеЛицо = ДанныеОбОплатеТрудаДляПодбора.ФизическоеЛицо
            И ДанныеДляПодбора.ИдентификаторЗаписи = ДанныеОбОплатеТрудаДляПодбора.ИдентификаторЗаписи}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ВидыЗанятостиСотрудниковИнтервальный КАК ВидыЗанятостиСотрудниковДляПодбора
        ПО ДанныеДляПодбора.Сотрудник = ВидыЗанятостиСотрудниковДляПодбора.Сотрудник
            И (ВЫБОР
                КОГДА ДанныеДляПодбора.Окончание = ДАТАВРЕМЯ(1, 1, 1)
                    ТОГДА ДАТАВРЕМЯ(3999, 12, 31, 23, 59, 59)
                ИНАЧЕ КОНЕЦПЕРИОДА(ДанныеДляПодбора.Окончание, ДЕНЬ)
            КОНЕЦ МЕЖДУ ВидыЗанятостиСотрудниковДляПодбора.ДатаНачала И ВидыЗанятостиСотрудниковДляПодбора.ДатаОкончания)}

Сделал вот так:

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Сотрудники.Ссылка КАК Ссылка,
    Сотрудники.ВерсияДанных КАК ВерсияДанных,
    Сотрудники.ПометкаУдаления КАК ПометкаУдаления,
    Сотрудники.Код КАК Код,
    Сотрудники.Наименование КАК Наименование,
    ДанныеДляПодбора.Наименование КАК НаименованиеСотрудника,
    Сотрудники.ФизическоеЛицо КАК ФизическоеЛицо,
    Сотрудники.ГоловнаяОрганизация КАК Организация,
    Сотрудники.ВАрхиве КАК ВАрхиве,
    Сотрудники.УточнениеНаименования КАК УточнениеНаименования,
    Сотрудники.ГоловнойСотрудник КАК ГоловнойСотрудник,
    Сотрудники.Предопределенный КАК Предопределенный,
    Сотрудники.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных,
    ВЫБОР
        КОГДА Сотрудники.ПометкаУдаления
            ТОГДА 4
        ИНАЧЕ 3
    КОНЕЦ КАК Пиктограмма,
    ДанныеДляПодбора.Филиал КАК Филиал,
    ДанныеДляПодбора.Подразделение КАК Подразделение,
    ДанныеДляПодбора.Должность КАК Должность,
    ДанныеДляПодбора.ДолжностьПоШтатномуРасписанию КАК ДолжностьПоШтатномуРасписанию,
    ДанныеДляПодбора.КоличествоСтавок КАК КоличествоСтавок,
    ДанныеДляПодбора.КоличествоСтавокПредставление КАК КоличествоСтавокПредставление,
    ВидыЗанятостиСотрудниковДляПодбора.ВидЗанятости КАК ВидЗанятости,
    ЕСТЬNULL(ДанныеДляПодбора.ВидДоговора, ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровССотрудниками.ПустаяСсылка)) КАК ВидДоговора,
    ДанныеОбОплатеТрудаДляПодбора.ТарифнаяСтавка КАК ТарифнаяСтавка,
    ДанныеОбОплатеТрудаДляПодбора.ФОТ КАК ФОТ,
    ДанныеОбОплатеТрудаДляПодбора.Надбавка КАК Надбавка,
    ДанныеОбОплатеТрудаДляПодбора.СпособРасчетаАванса КАК СпособРасчетаАванса,
    ДанныеОбОплатеТрудаДляПодбора.Аванс КАК Аванс,
    ТекущиеКадровыеДанные.ДатаПриема КАК ДатаПриема,
    ТекущиеКадровыеДанные.ДатаУвольнения КАК ДатаУвольнения,
    ТекущиеКадровыеДанные.ОформленПоТрудовомуДоговору КАК ОформленПоТрудовомуДоговору,
    ВЫБОР
        КОГДА РолиСотрудниковРаботник.Сотрудник ЕСТЬ NULL
            ТОГДА ЛОЖЬ
        ИНАЧЕ ИСТИНА
    КОНЕЦ КАК Работник,
    ВЫБОР
        КОГДА РолиСотрудниковДоговорник.Сотрудник ЕСТЬ NULL
            ТОГДА ЛОЖЬ
        ИНАЧЕ ИСТИНА
    КОНЕЦ КАК Договорник,
    СостоянияСотрудников.Состояние КАК Состояние,
    СостоянияСотрудников.ДействуетДо КАК СостояниеДействуетДо,
    ДанныеДляПодбора.ЭтоГоловнойСотрудник КАК ЭтоГоловнойСотрудник,
    ДанныеДляПодбора.Начало КАК Начало,
    ДанныеДляПодбора.Окончание КАК Окончание,
    ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Значение КАК ДопНачисления,
    ДанныеДляПодбора.МестоВСтруктуреПредприятия КАК МестоВСтруктуреПредприятия
ИЗ
    РегистрСведений.ДанныеДляПодбораСотрудников КАК ДанныеДляПодбора
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Сотрудники КАК Сотрудники
        ПО ДанныеДляПодбора.Сотрудник = Сотрудники.Ссылка
            И ДанныеДляПодбора.Наименование = Сотрудники.Наименование
            И (ДанныеДляПодбора.ИдентификаторЗаписи В
                (ВЫБРАТЬ ПЕРВЫЕ 1
                    ДанныеДляПодбораСотрудниковОтбор.ИдентификаторЗаписи
                ИЗ
                    РегистрСведений.ДанныеДляПодбораСотрудников КАК ДанныеДляПодбораСотрудниковОтбор
                ГДЕ
                    ДанныеДляПодбораСотрудниковОтбор.Сотрудник = ДанныеДляПодбора.Сотрудник
                    И ДанныеДляПодбораСотрудниковОтбор.Наименование = ДанныеДляПодбора.Наименование
                    И ДанныеДляПодбораСотрудниковОтбор.Начало <= &ДатаОкончания
                    И (ДанныеДляПодбораСотрудниковОтбор.Окончание = ДАТАВРЕМЯ(1, 1, 1)
                        ИЛИ ДанныеДляПодбораСотрудниковОтбор.Окончание >= &ДатаНачала)
                УПОРЯДОЧИТЬ ПО
                    ДанныеДляПодбораСотрудниковОтбор.ПоДоговоруГПХ,
                    ДанныеДляПодбораСотрудниковОтбор.Начало УБЫВ,
                    ДанныеДляПодбораСотрудниковОтбор.Организация,
                    ДанныеДляПодбораСотрудниковОтбор.Филиал,
                    ДанныеДляПодбораСотрудниковОтбор.Подразделение))
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекущиеКадровыеДанныеСотрудников КАК ТекущиеКадровыеДанные
        ПО ДанныеДляПодбора.ФизическоеЛицо = ТекущиеКадровыеДанные.ФизическоеЛицо
            И ДанныеДляПодбора.Сотрудник = ТекущиеКадровыеДанные.Сотрудник
            И ДанныеДляПодбора.Организация = ТекущиеКадровыеДанные.ГоловнаяОрганизация}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РолиСотрудников КАК РолиСотрудниковРаботник
        ПО ДанныеДляПодбора.Сотрудник = РолиСотрудниковРаботник.Сотрудник
            И (&ИспользуетсяОтборПоРолиСотрудникаРаботник = ИСТИНА)
            И (РолиСотрудниковРаботник.РольСотрудника = ЗНАЧЕНИЕ(Перечисление.РолиСотрудников.Работник))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РолиСотрудников КАК РолиСотрудниковДоговорник
        ПО ДанныеДляПодбора.Сотрудник = РолиСотрудниковДоговорник.Сотрудник
            И (&ИспользуетсяОтборПоРолиСотрудникаДоговорник = ИСТИНА)
            И (РолиСотрудниковДоговорник.РольСотрудника = ЗНАЧЕНИЕ(Перечисление.РолиСотрудников.Договорник))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияСотрудников КАК СостоянияСотрудников
        ПО ДанныеДляПодбора.Сотрудник = СостоянияСотрудников.Сотрудник
            И (СостоянияСотрудников.Период <= &ДатаОкончания)
            И (СостоянияСотрудников.ДействуетДо >= &ДатаНачалаСведений
                ИЛИ СостоянияСотрудников.ДействуетДо = ДАТАВРЕМЯ(1, 1, 1))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудников.СрезПоследних КАК ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних
        ПО ДанныеДляПодбора.Сотрудник = ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Сотрудник
            И (ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Период <= &ДатаОкончания)
            И (ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.ДействуетДо >= &ДатаНачалаСведений
                ИЛИ ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.ДействуетДо = ДАТАВРЕМЯ(1, 1, 1))}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеОбОплатеТрудаДляПодбораСотрудников КАК ДанныеОбОплатеТрудаДляПодбора
        ПО ДанныеДляПодбора.Сотрудник = ДанныеОбОплатеТрудаДляПодбора.Сотрудник
            И ДанныеДляПодбора.ФизическоеЛицо = ДанныеОбОплатеТрудаДляПодбора.ФизическоеЛицо
            И ДанныеДляПодбора.ИдентификаторЗаписи = ДанныеОбОплатеТрудаДляПодбора.ИдентификаторЗаписи}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ВидыЗанятостиСотрудниковИнтервальный КАК ВидыЗанятостиСотрудниковДляПодбора
        ПО ДанныеДляПодбора.Сотрудник = ВидыЗанятостиСотрудниковДляПодбора.Сотрудник
            И (ВЫБОР
                КОГДА ДанныеДляПодбора.Окончание = ДАТАВРЕМЯ(1, 1, 1)
                    ТОГДА ДАТАВРЕМЯ(3999, 12, 31, 23, 59, 59)
                ИНАЧЕ КОНЕЦПЕРИОДА(ДанныеДляПодбора.Окончание, ДЕНЬ)
            КОНЕЦ МЕЖДУ ВидыЗанятостиСотрудниковДляПодбора.ДатаНачала И ВидыЗанятостиСотрудниковДляПодбора.ДатаОкончания)}

т.е добавил данные из РС ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудников .

Добавил новое поле на форму в список, но после обновления в списке Доп Начисление не отображается( . Я пробовал удалить ФОТ из списка (не из запроса), он удалился. Но добавить новый не получается( Подскажите п-та что еще можно сделать? К тому же некоторые формы вообще невозможно удалить, в контекстном меню Удалить не активно. Проверил, она не записана как основная форма. Впервые сталкиваюсь
1 Ilqarupup
 
01.02.19
21:59
Убрал форму списка из основных на карточке справочника, все равно ее открывает( Это какой то баг?
2 Garykom
 
гуру
01.02.19
22:00
Добавил перетаскиванием справа в лево?
3 Garykom
 
гуру
01.02.19
22:01
(1) С чего взял что не фича?
4 Ilqarupup
 
01.02.19
22:01
да, вытащил на форму
5 Ilqarupup
 
01.02.19
22:02
6 Ilqarupup
 
01.02.19
22:03
7 Ilqarupup
 
01.02.19
22:04
немного напрягает тип его, но когда в запросе в число превращаю тоже не помогает
8 Garykom
 
гуру
01.02.19
22:07
Условное оформление глянь и еще в настройках формы в режиме предприятия есть поле?
9 Garykom
 
гуру
01.02.19
22:07
Короче может там кодом лишние поля того
10 Ilqarupup
 
01.02.19
22:11
(8) нет
11 Ilqarupup
 
01.02.19
22:12
(9) тоже на это грешу, только пока не нашел где
12 Ilqarupup
 
01.02.19
22:14
на последней строчке "ПриСозданииНасервереесть", а на входе в "ПриОткрытии" нет уже
13 Ilqarupup
 
01.02.19
22:15
ЭтаФорма.Элементы.Список.ПодчиненныеЭлементы
14 Garykom
 
гуру
01.02.19
22:19
Кэш почистил, вдруг глюки?
15 Ilqarupup
 
01.02.19
22:20
нет, не чистил
16 Ilqarupup
 
01.02.19
22:27
нет, то же самое. Почистил в appdata у юзера
17 Ilqarupup
 
01.02.19
23:03
текст запроса в коде меняли, нашел
18 Ilqarupup
 
01.02.19
23:19
все ок, нашел. тема закрыта
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс