1. 1C / Говнокод #12222

    −119

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    ВЫБРАТЬ
    	ЕСТЬNULL(СрокПолезногоИспользования, 0) КАК СрокПолезногоИспользования
    ИЗ
    	РегистрСведений.РасчетАмортизацииОС.СрезПоследних
    ГДЕ
    	ОС = &ОсновноеСредство

    Типовая конфигурация. Там такой запрос используют в печатной форме Основных средств... Думает по 10-15 минут
    2 глупых ошибки:
    1. Проверка на NULL, в данном случае его быть не может (хотя это особо ни на что не влияет)
    2. Условие по законам 1С должно применяться в РегистрСведений.РасчетАмортизацииОС.Срез Последних(,ОС = &ОсновноеСредство), иначе сильно падает скорость выполнения.

    Запостил: ok0504, 29 Ноября 2012

    Комментарии (11) RSS

    • > ЕСТЬNULL
      Странно, почему NULL по английски?
      Ответить
      • Это не единственная нелепость, ее кстати, еще можно обойти, т.к. 1С понимает ISNULL, но при открытии запроса в конструкторе, упрямо переделывает в свое ЕСТЬNULL. Мне больше не нравится в параметрах ставить знак "&", делали бы совсем как в ADODB "?" он хоть в русской раскладке есть.
        Ответить
      • Они не знали, как будет НУЛЛ по-русски.
        Ответить
        • А как правильно Ноль или Нуль?
          nil в русском нету, так что Тарас может расслабится
          Ответить
          • Ничего или пусто!
            - вскричал Горлум, что было не очень честно, давать сразу два ответа на одну загадку.
            Ответить
        • ёбанное ничего
          Ответить
    • А чо, еще остались в живых те 1С-ники, которые не знают про параметры виртуальных таблиц?
      Ответить
    • А вдруг ОС - это ресурс, а, тогда что?
      Ответить

    Добавить комментарий