1. Pascal / Говнокод #2079

    +99.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    procedure TConsFrame.FillConsGrid(ConsHistory: TConsumptionHistory;
      Date: TDateTime);
    var
      I: Integer;
    begin
      for I := 0 to ConsHistory.Count - 1 do
      begin
        if not (TConsumptionRecord(ConsHistory[I]).State = osDeleted) then
          if DateOf(TConsumptionRecord(ConsHistory[I]).Date) = DateOf(Date) then
            if ((not FIsSelTime) or
               (FIsSelTime and (FSelTime = FormatDateTime('HH:mm', TConsumptionRecord(ConsHistory[I]).Date)))) then
              if ((not FIsSelName) or  (FIsSelName and (pos(FSelName, TProduct.TGlobalCollection.Products.RecursiveGetNodeByID(TConsumptionRecord(ConsHistory[I]).IDProduct)).Name) > 0))) then
                ConsGrid.AddChild(nil, ConsHistory[I]);
      end;
    end;

    Чтобы это безобразие написать пришлось студию на два монитора раздвинуть =)))
    И то ладно еще что на 4 проверки разбил - а то в одной вообще страшно было. Потом как оказалось у меня в цикле идет вызов рекурсивной процедуры, короче все виснет. Так что это безобразие в контексте моей программы оказалось еще и бесолезным %)

    Запостил: Washington, 31 Октября 2009

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

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

    Ошибка компиляции комментария:
    1. Гости могут высказаться только во вторник, пятницу или субботу
    ava Семь раз отмерь — один отрежь, guest!
    А не использовать ли нам bbcode?
    • [b]жирный[/b] — жирный
    • [i]курсив[/i] — курсив
    • [u]подчеркнутый[/u] — подчеркнутый
    • [s]перечеркнутый[/s] — перечеркнутый
    • [blink]мигающий[/blink] — мигающий
    • [color=red]цвет[/color] — цвет (подробнее)
    • [size=20]размер[/size] — размер (подробнее)
    • [code=<language>]some code[/code] (подробнее)
    Проверочный код