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

    −151

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Процедура ВводНаОсновании(ДокОснование) 
        // .....
        ДатаДок=РабочаяДата();
       // .....
    КонецПроцедуры

    Типовая торговля для Украины.
    Зачем то явно указывается рабочая дата. Причём ровно один раз.

    Запостил: Xbrut, 24 Февраля 2012

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

    • Может, на тот маловероятный случай, что дата за время обработки изменится?
      Ответить
      • вот вот.
        со мной один раз случай был.
        сочинил я из озорства такой фрагмент (с точностью до смысла)
        Если МонетаВсталаНаРебро=Истина Тогда
        Сообщить("Якась хуйня: кличте програміста!");
        КонецЕсли;
        Проходит эдак месяцев пять. Когда звонок: "ты шо с ума сошёл? это только я вижу , или все???"
        Ответить
        • > МонетаВсталаНаРебро=Истина Тогда
          > =Истина
          > if b=true

          FFFFFFFFFFFFFFFFFFFUUUUUUUUUUUUUUUUUUUUU UUUUUUUU
          Ответить
          • umad
            Ответить
          • Одной гламурной кокотке икнули в лицо, так она упала в обморок.
            Ответить
            • Писать ==true, это не икок в лицо, это уже блевок в лицо здравому смыслу.
              Ответить
              • Контекст относится к платформе 1С7.7, в которой конструкция
                "if МонетаСталаНаРебро then"
                не возможна по определению.
                И наоборот, обязательна конструкция
                "if МонетаСталаНаРебро=ШосьТаке then"
                P.S.
                самое время метать какашки по поводу платформы 1С7.7, ибо её существование - блевок в лицо здравому смыслу :-)
                P.P.S.
                ну и хрен с ним. выручку я уже подсчитал. а Вы ебитесь со здравым смыслом.
                Ответить
              • Это же 1с, там возможно всё. Насчёт данного случая не знаю, те конфы, которые я дрочу, содержат в себе просто шедевры в духе
                Если А.Б = Перечисления.Булево.Да Тогда
                И это офигенно!
                Ответить
        • В нормальных языках для этого есть ассерты.

          Переведу для братьев наших меньших:
          Предположить(МонетаНеВсталаНаРебро,"Отака хуйня малята!")
          Ответить
    • Прежде чем кричать фу и тд нужно разбираться в платформе!!! В 1С есть понятие ТекущаяДата() это сегодняшняя дата на компьютере и РабочаяДата() - эта функция используется если вам нужно например поработать задним числом, тогда не нужно переводить дату на компне а в 1С в настройках изменяется рабочая дата и используя эту функцию работайте себе задним числом. А по умолчанию рабочая и текущая одно и то же.
      Ответить
      • Ой дружище, делаем следующее:
        создать новый документ в конфигураторе.
        кинуть на форму реквизиты по умолчанию.
        запускаем. меняем рабочую дату на 1 января 2012
        вводим новый документ. смотрим : дата=1 января.
        P.S.
        и ШО ? :-) зачем же её было присваивать явно ?
        P.S.
        Вариант - реликтовые остатки от 7.5
        Ответить
      • Прежде чем бросать такие обвинения - лучше бы самому в вопросе получше разобраться и прочитать повнимательнее.
        При открытии формы нового документа (и при создании нового документа методом .Новый()) - ДатаДок ВСЕГДА устанавливается на рабочую.
        Ответить

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