|   |   | 
| 
 | C Новым годом! (или прыганье дат) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Profenixxx 29.12.16✎ 11:02 | 
        ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Вт_Календарь.ДатаГрафика, ЧАС, ЧАС(ВложенныйЗапрос.ДатаСоздания)), МИНУТА, МИНУТА(ВложенныйЗапрос.ДатаСоздания)), СЕКУНДА, СЕКУНДА(ВложенныйЗапрос.ДатаСоздания))
 Когда использую следующую конструкцию все хорошо добавляется хорошо в течении этого года, но как дней добавляется больше значения уходит в НУЛЛ, не подскажете с чем связанно? всех с наступающим! | |||
| 1
    
        shuhard 29.12.16✎ 11:04 | 
        (0) это связано с отсутствием заполненного производственного календаря и графиков     | |||
| 2
    
        Волшебник модератор 29.12.16✎ 11:04 | 
        (0) Пишется "в течение года"     | |||
| 3
    
        Profenixxx 29.12.16✎ 11:08 | 
        (1) Календарь заполнен     | |||
| 4
    
        Мимохожий Однако 29.12.16✎ 11:10 | 
        Проверь таблицу Вт_Календарь в консоли     | |||
| 5
    
        shuhard 29.12.16✎ 11:12 | 
        (3)и графиков     | |||
| 6
    
        Profenixxx 29.12.16✎ 11:17 | 
        (5)
 ВЫБРАТЬ КалендарныеГрафики.ДатаГрафика, КалендарныеГрафики.КоличествоДнейВГрафикеСНачалаГода, КалендарныеГрафики.Год, КалендарныеГрафики.ДеньВключенВГрафик ПОМЕСТИТЬ Вт_Календарь ИЗ РегистрСведений.КалендарныеГрафики КАК КалендарныеГрафики ГДЕ КалендарныеГрафики.Календарь.Наименование = "Производственный календарь" ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВложенныйЗапрос.Запрос, ВложенныйЗапрос.Услуга, ВложенныйЗапрос.ПлановоеВремя, ВложенныйЗапрос.ДатаСоздания, ВложенныйЗапрос.ВремяРеагирования, ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Вт_Календарь.ДатаГрафика, ЧАС, ЧАС(ВложенныйЗапрос.ДатаСоздания)), МИНУТА, МИНУТА(ВложенныйЗапрос.ДатаСоздания)), СЕКУНДА, СЕКУНДА(ВложенныйЗапрос.ДатаСоздания)) КАК ДатаРеагированияСУчетомВыходных ИЗ (ВЫБРАТЬ ВложенныйЗапрос.Запрос КАК Запрос, ВложенныйЗапрос.Услуга КАК Услуга, ВложенныйЗапрос.ПлановоеВремя КАК ПлановоеВремя, ВложенныйЗапрос.ДатаСоздания КАК ДатаСоздания, ВложенныйЗапрос.ВремяРеагирования КАК ВремяРеагирования, Вт_Календарь.КоличествоДнейВГрафикеСНачалаГода КАК КоличествоДнейВГрафикеСНачалаГода ИЗ (ВЫБРАТЬ itilprofЗапросы.Ссылка КАК Запрос, &Услуга КАК Услуга, &ПлановоеВремяЗагрузкиСпециалиста КАК ПлановоеВремя, itilprofЗапросы.ДатаСоздания КАК ДатаСоздания, ВЫБОР КОГДА НЕ &Услуга ЕСТЬ NULL ТОГДА ВЫБОР КОГДА НЕ &ПлановоеВремяЗагрузкиСпециалиста = 0 ТОГДА &ПлановоеВремяЗагрузкиСпециалиста ИНАЧЕ 1 КОНЕЦ ИНАЧЕ 1 КОНЕЦ КАК ВремяРеагирования ИЗ Документ.itilprofЗапросы КАК itilprofЗапросы ГДЕ itilprofЗапросы.Ссылка = &Ссылка) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Вт_Календарь КАК Вт_Календарь ПО (ГОД(ВложенныйЗапрос.ДатаСоздания) = Вт_Календарь.Год) И (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.ДатаСоздания, ДЕНЬ) = Вт_Календарь.ДатаГрафика)) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Вт_Календарь КАК Вт_Календарь ПО (ГОД(ВложенныйЗапрос.ДатаСоздания) = Вт_Календарь.Год) И (ВложенныйЗапрос.КоличествоДнейВГрафикеСНачалаГода + ВложенныйЗапрос.ВремяРеагирования = Вт_Календарь.КоличествоДнейВГрафикеСНачалаГода) И (Вт_Календарь.ДеньВключенВГрафик = ИСТИНА) Календарный графиг заполнен полностью на весь 2017 год, проблема не в нем. | |||
| 7
    
        Serg_1960 29.12.16✎ 11:25 | 
        Может быть в том, что я в запросе добавлением могут получить дату "31 июня" :( есть такой фильм :)     | |||
| 8
    
        shuhard 29.12.16✎ 11:28 | 
        (7) добавлением не получишь     | |||
| 9
    
        Serg_1960 29.12.16✎ 11:28 | 
        (офф) Как я/Мы сложно мыслю/мыслим - аж даже в предложении раздвоение личности :))     | |||
| 10
    
        catena 29.12.16✎ 11:32 | 
        ПО (ГОД(ВложенныйЗапрос.ДатаСоздания) = Вт_Календарь.Год)
 И (ВложенныйЗапрос.КоличествоДнейВГрафикеСНачалаГода + ВложенныйЗапрос.ВремяРеагирования = Вт_Календарь.КоличествоДнейВГрафикеСНачалаГода) Видимо ВложенныйЗапрос.КоличествоДнейВГрафикеСНачалаГода + ВложенныйЗапрос.ВремяРеагирования больше 365 | |||
| 11
    
        Profenixxx 29.12.16✎ 11:37 | 
        Решено влженном запросом на следующий год
 ВЫБРАТЬ ВложенныйЗапрос.Запрос КАК Запрос, ВложенныйЗапрос.Услуга КАК Услуга, ВложенныйЗапрос.ПлановоеВремя КАК ПлановоеВремя, ВложенныйЗапрос.ДатаСоздания КАК ДатаСоздания, ВложенныйЗапрос.ВремяРеагирования КАК ВремяРеагирования, Вт_Календарь.КоличествоДнейВГрафикеСНачалаГода КАК КоличествоДнейВГрафикеСНачалаГода, МаксимальноеЧислоДнейГрВгоду.МаксКоличествоДнейВГодуИзГрафика КАК МаксКоличествоДнейВГодуИзГрафика, ВЫБОР КОГДА Вт_Календарь.КоличествоДнейВГрафикеСНачалаГода + ВложенныйЗапрос.ВремяРеагирования <= МаксимальноеЧислоДнейГрВгоду.МаксКоличествоДнейВГодуИзГрафика ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК ВРамкахГода ИЗ (ВЫБРАТЬ itilprofЗапросы.Ссылка КАК Запрос, &Услуга КАК Услуга, &ПлановоеВремяЗагрузкиСпециалиста КАК ПлановоеВремя, itilprofЗапросы.ДатаСоздания КАК ДатаСоздания, ВЫБОР КОГДА НЕ &Услуга ЕСТЬ NULL ТОГДА ВЫБОР КОГДА НЕ &ПлановоеВремяЗагрузкиСпециалиста = 0 ТОГДА &ПлановоеВремяЗагрузкиСпециалиста ИНАЧЕ 1 КОНЕЦ ИНАЧЕ 1 КОНЕЦ КАК ВремяРеагирования ИЗ Документ.itilprofЗапросы КАК itilprofЗапросы ГДЕ itilprofЗапросы.Ссылка = &Ссылка) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Вт_Календарь КАК Вт_Календарь ПО (ГОД(ВложенныйЗапрос.ДатаСоздания) = Вт_Календарь.Год) И (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.ДатаСоздания, ДЕНЬ) = Вт_Календарь.ДатаГрафика) ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ МАКСИМУМ(Вт_Календарь.КоличествоДнейВГрафикеСНачалаГода) КАК МаксКоличествоДнейВГодуИзГрафика, Вт_Календарь.Год КАК Год ИЗ Вт_Календарь КАК Вт_Календарь СГРУППИРОВАТЬ ПО Вт_Календарь.Год) КАК МаксимальноеЧислоДнейГрВгоду ПО (ГОД(ВложенныйЗапрос.ДатаСоздания) = МаксимальноеЧислоДнейГрВгоду.Год) | |||
| 12
    
        Serg_1960 29.12.16✎ 11:57 | 
        (8) Твоя правда :( Моё сумеречное сознание :) Добавление к дате  учитывает даже високосные года.     | |||
| 13
    
        shuhard 29.12.16✎ 12:42 | 
        (12) завязывай с ноотропами =)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |