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

Хранилище

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

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



> Помогите с запросом          
kosalex Подменю пользователя
сообщение 27.02.14, 14:17
Сообщение #1

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Делаю отчёт по стажу на предприятии.

Все хорошо, но есть одно но, вот мой запрос:
ВЫБРАТЬ
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема,
    ФизическиеЛица.Наименование
ИЗ
    Документ.ПриемНаРаботуВОрганизацию.РаботникиОрганизации КАК ПриемНаРаботуВОрганизациюРаботникиОрганизации
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
        ПО ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо.Ссылка = ФизическиеЛица.Ссылка


есть сотрудники у которых была ситуация: "Приём в орг" -> "Увольнение с орг" -> "Приём в орг", тогда в отчет попадают одни и те же физ.лица. Помогите модифицировать запрос, чтобы был одно физ лицо.

Ardi Подменю пользователя
сообщение 27.02.14, 14:25
Сообщение #2

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

Физлицо одно, а дат сколько?


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

kosalex Подменю пользователя
сообщение 27.02.14, 14:27
Сообщение #3

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Цитата(Ardi @ 27.02.14, 14:25) *
Физлицо одно, а дат сколько?


ФизЛицо одно,а дат может быть сколько угодно, он же может раз 10 увольняться и приниматься, а стаж нужно взять за все его отработанное время на предприятии.

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

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

По запросу:
ВЫБРАТЬ
    Минимум(ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема),
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо.Наименование
ИЗ
    Документ.ПриемНаРаботуВОрганизацию.РаботникиОрганизации КАК ПриемНаРаботуВОрганизациюРаботникиОрганизации
СГРУППИРОВАТЬ ПО
   ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо.Наименование

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


Signature
Правильно поставленный вопрос содержит до 90% ответа.

kosalex Подменю пользователя
сообщение 27.02.14, 14:47
Сообщение #5

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Цитата(pablo @ 27.02.14, 14:42) *
По запросу:
ВЫБРАТЬ
    Минимум(ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема),
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо.Наименование
ИЗ
    Документ.ПриемНаРаботуВОрганизацию.РаботникиОрганизации КАК ПриемНаРаботуВОрганизациюРаботникиОрганизации
СГРУППИРОВАТЬ ПО
   ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо.Наименование

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



хм))экстровагантно))?

к примеру, история увольнения и приёма сотрудника. приём в 2000 год, уволен в 2001 году, прием в 2005 году и уволен в 2010 году. и того стаж должен получиться 6 лет. а в вашем варианте получиться 9 лет, верно?))) это и есть экстровагантность?))

pablo Подменю пользователя
сообщение 27.02.14, 15:25
Сообщение #6

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

Вопрос был:
Цитата
Помогите модифицировать запрос, чтобы был одно физ лицо.

Выше указанный запрос это делает. Но он не даст ответ на вопрос о стаже, так как одним запросом тут не справиться. Видится мне old.gif : тут несколько подзапросов должно быть.


Signature
Правильно поставленный вопрос содержит до 90% ответа.

topitop Подменю пользователя
сообщение 27.02.14, 16:27
Сообщение #7

Общительный
**
Группа: Пользователи
Сообщений: 29
Из: Днепр
Спасибо сказали: 5 раз
Рейтинг: 0

а что за конфигурация? уточните.


 ! 

Правила, п.11
 


попробуйте капнуть в эту сторону.

Сообщение отредактировал logist - 27.02.14, 16:44

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

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1298
Из: Донецк
Спасибо сказали: 208 раз
Рейтинг: 0

Цитата(topitop @ 27.02.14, 16:27) *
а что за конфигурация? уточните.
попробуйте капнуть в эту сторону.

Накапайте и мне...

Спасибо сказали: Ardi, Vofka,

Petre Подменю пользователя
сообщение 27.02.14, 17:06
Сообщение #9

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

А зачем там справочник физлица? Вам ведь только стаж нужен, а не весь список физлиц.
И если конфа типовая, то там связь с физлицами по сотрудникам.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

logist Подменю пользователя
сообщение 27.02.14, 17:19
Сообщение #10

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Petre @ 27.02.14, 17:06) *
И если конфа типовая

Гадалка подсказывает, что там ЗУП.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Спасибо сказали: lena77,

kosalex Подменю пользователя
сообщение 28.02.14, 8:15
Сообщение #11

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

ЗУП (2.1.32.1). Есть РС "ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы" в нем и храниться когда принят когда уволен.
Стаж нужно считать для сотрудников которые в данный момент работают на предприятии. Если сотрудник был уволен и принят несколько раз на предприятие, то и стаж его нужно сложить.

У кого то есть идеи как лучше посчитать этот стаж? Кипит мозг...

Petre Подменю пользователя
сообщение 28.02.14, 9:50
Сообщение #12

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Если по основному, то что-то типа этого:
ВЫБРАТЬ
    ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.Физлицо,
    ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала,
    МИНИМУМ(ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания) КАК ДатаОкончания
ИЗ
    РегистрСведений.ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы КАК ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы КАК ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1
        ПО ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.Физлицо = ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.Физлицо
            И ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала < ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания
ГДЕ
    ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала <> &ПустаяДата

СГРУППИРОВАТЬ ПО
    ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.Физлицо,
    ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

kosalex Подменю пользователя
сообщение 03.03.14, 8:03
Сообщение #13

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Спасибо,кто откликнулся! Доработал немного запрос, всё как надо считается)Есть какие нибудь замечания и т.п. (гуру) ?
ВЫБРАТЬ
    ВложенныйЗапрос.Физлицо,
    СУММА(ВложенныйЗапрос.ДниПоПериоду) КАК ВсегоДней
ИЗ
    (ВЫБРАТЬ
        ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.Физлицо КАК Физлицо,
        ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала КАК ДатаНачала,
        МИНИМУМ(ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания) КАК ДатаОкончания,
        СУММА(ВЫБОР
                КОГДА ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания ЕСТЬ NULL
                    ТОГДА РАЗНОСТЬДАТ(ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала, &КонецТекущегоМесяца, ДЕНЬ)
                ИНАЧЕ РАЗНОСТЬДАТ(ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала, ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания, ДЕНЬ)
            КОНЕЦ) КАК ДниПоПериоду
    ИЗ
        РегистрСведений.ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы КАК ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы
            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы КАК ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1
            ПО ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.Физлицо = ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.Физлицо
                И ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала < ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания
    ГДЕ
        ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала <> &ПустаяДата
    
    СГРУППИРОВАТЬ ПО
        ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.Физлицо,
        ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы.ДатаНачала) КАК ВложенныйЗапрос

СГРУППИРОВАТЬ ПО
    ВложенныйЗапрос.Физлицо

УПОРЯДОЧИТЬ ПО
    ВложенныйЗапрос.Физлицо.Наименование

kosalex Подменю пользователя
сообщение 04.03.14, 9:25
Сообщение #14

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Господа, подскажите. Выбираються все физ лица, а нужно выбирать тех которые работают в данное время на предприятии. Как это сделать в моём запросе?

World1С Подменю пользователя
сообщение 04.03.14, 10:59
Сообщение #15

Оратор
Иконка группы
Квалифицированному 1С программисту
Группа: Местный
Сообщений: 358
Из: г.Луганск, обл.Луганская
Спасибо сказали: 110 раз
Рейтинг: 0

ГДЕ
   НЕ ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания ЕСТЬ NULL

или
ГДЕ
   НЕ ПериодыРаботыРаботниковОрганизацийПоОсновномуМестуРаботы1.ДатаОкончания = &ПустаяДата


Сообщение отредактировал World1С - 04.03.14, 11:06


Signature
В наше время люди всему знают цену, но понятия не имеют о подлинной ценности.
Оскар Уайлд

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


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

 

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