Имя: Пароль:
1C
1С v8
Вычисление условной даты изгот. детали используя произв. календарь.
0 Босечка
 
02.10.13
19:09
Задачка нарисовалась...
Надо вычислить усл. дату изготовления детали, используя производственный календарь. Дата начальная дата и время, дана НормаЧасов, надо вычислить дату и время  изготовл. детали, учитывая, что каждый день работали по 8 часов (это в календаре стоит).
Функцию написала, котрая формирует Табл Значений с данными, а дальше не знаю как это вычислить, может кто знает или сталкивался или в готовых конфах это есть


Функция ОпределитьДатуИВремя(ДатаНач, ЧислоЧасов,График,ВидУчетаВрем) Экспорт
    
    Запрос = Новый  Запрос;
    Запрос.УстановитьПараметр("ДатаНач",             ДатаНач);
    //Запрос.УстановитьПараметр("ЧислоЧасов",           ЧислоЧасов);
    
    Сообщить(График);
    Если ЧислоЧасов > 0 Тогда
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ГрафикиРаботыПоВидамВремени.ГрафикРаботы.Ссылка,
    |    ГрафикиРаботыПоВидамВремени.ПроизводственныйКалендарьПятидневкаЧасы,
    |    ГрафикиРаботыПоВидамВремени.ВидУчетаВремени.Ссылка КАК ВидУчетаВремениСсылка,
    |    ГрафикиРаботыПоВидамВремени.Дата КАК Дата,
    |    ВидыУчетаВремени.Ссылка,
    |    ВидыУчетаВремени.Порядок,
    |    ГрафикиРаботы.Ссылка КАК Ссылка1
    |ИЗ
    |    РегистрСведений.ГрафикиРаботыПоВидамВремени КАК ГрафикиРаботыПоВидамВремени
    |        ЛЕВОЕ СОЕДИНЕНИЕ Перечисление.ВидыУчетаВремени КАК ВидыУчетаВремени
    |        ПО ГрафикиРаботыПоВидамВремени.ВидУчетаВремени = ВидыУчетаВремени.Ссылка
    |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ГрафикиРаботы КАК ГрафикиРаботы
    |        ПО ГрафикиРаботыПоВидамВремени.ГрафикРаботы = ГрафикиРаботы.Ссылка
    |ГДЕ
    |    ГрафикиРаботыПоВидамВремени.Дата >= &ДатаНач
    |    И ГрафикиРаботы.Ссылка = &График
    |    И ГрафикиРаботыПоВидамВремени.ВидУчетаВремени.Ссылка = &ВидУчетаВрем
    |
    |УПОРЯДОЧИТЬ ПО
    |    Дата
    |АВТОУПОРЯДОЧИВАНИЕ";    
        
     КонецЕсли;
  Запрос.УстановитьПараметр("ДатаНач",ДатаНач);
  Запрос.УстановитьПараметр("График",График);
  Запрос.УстановитьПараметр("ВидУчетаВрем",ВидУчетаВрем);
    
     Выборка = Запрос.Выполнить().Выбрать();
1 Нуф-Нуф
 
02.10.13
19:12
кури нарастающий итог в запросе
2 Босечка
 
02.10.13
19:18
добавилсь
    
|ИТОГИ ПО
    |    ПроизводственныйКалендарьПятидневкаЧасы
и что это дает? В таблице ничего не изменилось.
3 Жан Пердежон
 
02.10.13
19:20
дальше условие на >=&ЧислоЧасов и минимум по дате. только мнится мне, что все это использоваться не будет, так как к началу изговотления детали рабочий должен быть ничем не занят...
4 Босечка
 
02.10.13
19:26
А что >=&ЧислоЧасов? Итоги? Непонятно....Надо прибавить часы к нач. дате, а причем тут итоги?
5 Босечка
 
03.10.13
08:29
ап...
6 Sabbath
 
03.10.13
08:54
(0) А что за конфа? В УПП была функция, которая рассчитывает дату по исходной дате и количеству дней по производственному календарю. Возможно, для часов тоже работает
7 Босечка
 
03.10.13
09:21
Конфа самопальная, не типовая. Была бы очень признательна, если бы вы мне скинули эту функцию.
8 Sabbath
 
03.10.13
09:42
(7) А я давно с УПП не работаю, поэтому у меня нет
9 Босечка
 
03.10.13
10:02
ап