8.х Как в СКД отнять две даты ?

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Pol, 4 окт 2011.

  1. TopicStarter Overlay
    Pol
    Offline

    Pol Опытный в 1С

    Регистрация:
    23 июн 2011
    Сообщения:
    84
    Симпатии:
    0
    Баллы:
    26
    Доброго времени суток.

    Спомощтю системы компановки данных зделал такой небольшой фрагмент "отчета"

    Код:
    ВЫБРАТЬ
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.Должность,
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема,
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо
    ИЗ
    Документ.ПриемНаРаботуВОрганизацию.РаботникиОрганизации КАК ПриемНаРаботуВОрганизациюРаботникиОрганизации
    
    

    Задача следущая нужно рассчитать стаж работника. Теоритически нужно взять датуПриема и отнять Текущую дату и получим наш стаж.

    Вообщем датуПриема вытащил а вот откуда можно вытащить ТекущуюДату ? и как их потом отнять ?

    Конечно если стаж получается немного иначе или каким то другим способом буду рад узнать =)

    Одним словом помагите люди добрые буду вам очень признателен. Заранее спасибо!
  2. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    а текущая дата разве не готовая функция ТекущаяДата()?
  3. TopicStarter Overlay
    Pol
    Offline

    Pol Опытный в 1С

    Регистрация:
    23 июн 2011
    Сообщения:
    84
    Симпатии:
    0
    Баллы:
    26
    В СКД когда я хотел присовить параметру &ТекДата = ТекущаяДата() то он меня послал =)
  4. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    На закладке "Параметры" заведите параметр ТекущаяДата и выражение расчета ТекущаяДата()
  5. TopicStarter Overlay
    Pol
    Offline

    Pol Опытный в 1С

    Регистрация:
    23 июн 2011
    Сообщения:
    84
    Симпатии:
    0
    Баллы:
    26
    Спасибо с ТекущейДатой разобрались теперь самое главное как отнять от ТекущейДаты ДатуПриема? что бы полчуить стаж
  6. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    а если человек работал на фирме, потом его сократили в кризис, а потом опять взяли на ту же должность.. в этом случае ваш алгоритм будет считать стаж неправильно.

    а по поводу как вычесть текущую дату:

    Код:
    ВЫБРАТЬ
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.Должность,
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема,
    ПриемНаРаботуВОрганизациюРаботникиОрганизации.ФизЛицо,
    
    &ТекущаяДата - ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема КАК Стаж
    
    ИЗ
    Документ.ПриемНаРаботуВОрганизацию.РаботникиОрганизации КАК ПриемНаРаботуВОрганизациюРаботникиОрганизации
    
    
    
    
    
    упс.. не срабатывает.. наверное надо функцию использовать РазностьДат

    Код:
    РАЗНОСТЬДАТ(&ТекущаяДата, ЗаказПокупателя.Дата, ПриемНаРаботуВОрганизациюРаботникиОрганизации.ДатаПриема) КАК Стаж
    
    
  7. TopicStarter Overlay
    Pol
    Offline

    Pol Опытный в 1С

    Регистрация:
    23 июн 2011
    Сообщения:
    84
    Симпатии:
    0
    Баллы:
    26
    Спасибо большое за ваш шикарный ответ :angry: Вы мне очень помогли. Как вами было верно подмечено если сотрудник увольнялся а потом востанавливался то стаж будет считатся неверно. Поэтому есть еще над чем поразмыслить. Если у вас есть предложение по этому поводу буду рад выслушать.

Поделиться этой страницей