7.7 Работа с датой

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Time dont wait, 23 июл 2010.

  1. TopicStarter Overlay
    Time dont wait
    Offline

    Time dont wait Опытный в 1С

    Регистрация:
    20 окт 2009
    Сообщения:
    192
    Симпатии:
    0
    Баллы:
    26
    Нужно сделать подсчет часов за определенный срок, в зависимости от того выходной это или рабочий день. Написал функцию, только происходит бесперерывный цикл.
    Код:
    Функция ВычислитьКолЧасовНевыходов(датан,датак) экспорт
    перем кдн,кчс,сч;
    кдн=0;
    кчс=0;
    сч=0;
    Пока датан<>датак цикл
    Если (НомерДняНедели(датан)<>6) ИлИ (НомерДняНедели(датан)<>7) тогда
    кдн=кдн+1;
    кчс=кдн*8;
    КонецЕсли;
    сч=сч+1;
    датан=датан+сч;
    КонецЦикла;
    Возврат кчс;
    КонецФункции
    
    
    Возможно с циклом по дням не так просто
  2. TopicStarter Overlay
    Time dont wait
    Offline

    Time dont wait Опытный в 1С

    Регистрация:
    20 окт 2009
    Сообщения:
    192
    Симпатии:
    0
    Баллы:
    26
    убрал счетчик, заработало, только по результатам функция не различает выходные дни
  3. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Нечто вроде (не проверял):
    Код:
    Функция ВычислитьКолЧасовНевыходов(датан,датак) экспорт
    перем кчс;
    кчс=0;
    Пока датан <= датак цикл
    Если (НомерДняНедели(датан)<6) тогда
    кчс=кчс+8;
    КонецЕсли;
    датан=датан+1; //тут нужно добавить 1 день. В восьмерке прибавляется количество секунд,
    // если в семерке количество дней -  то так. 
    КонецЦикла;
    Возврат кчс;
    КонецФункции
    
    
    
    
    
    
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    А не проще календарем воспользоваться?
  5. TopicStarter Overlay
    Time dont wait
    Offline

    Time dont wait Опытный в 1С

    Регистрация:
    20 окт 2009
    Сообщения:
    192
    Симпатии:
    0
    Баллы:
    26
    Нету нужной компоненты.

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