1. Список говнокодов пользователя bahamot

    Всего: 21

  2. Си / Говнокод #23271

    +3

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    #include <stdio.h>
    main(t,_,a)
    char
    *
    a;
    {
     return!
    0<t?
    t<3?
    main(-79,-13,a+
    main(-87,1-_,
    main(-86, 0, a+1 )
    +a)):
    1,
    t<_?
    main(t+1, _, a )
    :3,
    main ( -94, -27+t, a )
    &&t == 2 ?_
    <13 ?
    main ( 2, _+1, "%s %d %d\n" )
    :9:16:
    t<0?
    t<-72?
    main( _, t,
    "@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l,+,/n{n+,/+#n+,/#;\
    #q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!/+k#;\
    q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!/n{n#'; \
    r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#\
    \
    n'wk nw' iwk{KK{nl]!/w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;\
    {nl'-{}rw]'/+,}##'*}#nc,',#nw]'/+kd'+e}+;\
    #'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/")
    :
    t<-50?
    _==*a ?
    putchar(31[a]):
    main(-65,_,a+1)
    :
    main((*a == '/') + t, _, a + 1 )
    :
    0<t?
    main ( 2, 2 , "%s")
    :*a=='/'||
    main(0,
    main(-61,*a, "!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry")
    ,a+1);}

    виверни свой мозк, бро !

    bahamot, 16 Августа 2017

    Комментарии (20)
  3. Куча / Говнокод #22681

    −14

    1. 1
    2. 2
    3. 3
    Посоны, а у меня другая история случилась. Вчера познакомился с айтишницей, но денег чтоб пойти с ней в ресторан у меня не было. Потому что я не айтишник, а всего лишь барыжу зеркалками. И тогда я придумал хитрый план. Я повел её в дешевый пивняк. При этом я ссал ей в уши, что мне очень нравится маргинальная атмосфера рюмочной, и что я не признаю дорогие места. Айтишница схавала пиздеж про нонконформизм и контркультуру и потекла от моего внутреннего мира — видимо это было куда интереснее, чем слушать задротскую нудятину от коллег — а я радовался тому, что сэкономил бабло, и сижу в теплом помещении с женщиной, в то время как рядом порыгивают одинокие алкаши.
    
    Короче говоря, мы как следует накидались дешевым пойлом и я уже вижу, как у неё ноги сами разъезжаются. Ну думаю, домой все равно не могу к себе позвать (дома мамка), поэтому беру айтишницу за руку и веду в клозет. А она и не против! Нагинаю её раком и, недолго думая, вставляю член прямо в её айтишную задницу. Айтишница громко ойкнула — такого поворота она не ожидала, но я схватил её за волосы и стал методично нанизывать её жопку на свою колбаску. Не буду вдаваться в дальнейшие подробности, ребята — скажу лишь то, что вечер удался на славу. И самое главное, она не подумала про меня, что я нищее быдло, неайтишник, а человек с уникальной жизненной позицией и особенным внутренним миром. Кстати, только что она прислала мне СМС-ку, где сказано что она хочет встретиться ещё.

    сезонное обострение (мопед не мой, оставь грязным)

    bahamot, 27 Марта 2017

    Комментарии (2)
  4. Куча / Говнокод #22341

    −11

    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
    static BOOLEAN UpdateFileStoreTemplates ()
    {
      BOOLEAN NotResult = FALSE;
    
      NotResult |= !UpdateFileStoreTemplate (DC_EMAIL_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (DC_TABLE_HEADER_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (DC_TABLE_ROW_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (DC_TABLE_FOOTER_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (WS_EMAIL_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (WS_TABLE_HEADER_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (WS_TABLE_ROW_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
      NotResult |= !UpdateFileStoreTemplate (WS_TABLE_FOOTER_TEMPLATE); // Not-ing a fail makes it true, so if Not result is True we've had a failure
    
      return !NotResult;
    }

    bahamot, 16 Февраля 2017

    Комментарии (5)
  5. SQL / Говнокод #15902

    −118

    1. 1
    2. 2
    3. 3
    RAISERROR ('Transaction (Process ID 53) was deadlocked on lock resources with another process 
    and has been chosen as the deadlock victim. Rerun thetransaction', 16, 1 );
    RETURN;

    гыгыгы

    bahamot, 05 Мая 2014

    Комментарии (3)
  6. JavaScript / Говнокод #15896

    +153

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    window.onload = function()
     {
         m1 = new Matrix('matrix1', 20, 20);
         m1.create();
    
        var square = new Square(1, 2, 'right');
         square.create();
    
        setInterval(square.move, 50);
     }
    
    function Square(row, col, course)
     {
     this.body = [row, col];
    
     this.course = course;
    
     var that = this; // <-- 100500 iopta !!!
    
     this.create = function()
     {
       m1.setCell(that.body[0], that.body[1], true);
     }
    
     this.move = function()
     {
       var last_body = that.body;
       switch(that.course)
       {
        case 'right':
        that.body[1]++;
        break;
        case 'left':
        break;
        case 'down':
        break;
        case 'up':
        break;
       }
    
      m1.setCell(last_body[0], last_body[1], false);
       m1.setCell(that.body[0], that.body[1], true);
     }
     }

    здесь вам не тут, понял, да !

    bahamot, 04 Мая 2014

    Комментарии (25)
  7. SQL / Говнокод #14938

    −163

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    CREATE PROCEDURE DEPTORS_EURO AS	-- Но сначала отключу ТРИГГЕРА 
       ALTER TABLE DEPTORS_REFERENCE DISABLE  TRIGGER Tr_for_DEPTORS_REFERENCE
       ALTER TABLE DEPTORS_DOC_EURO DISABLE  TRIGGER Tr_for_DEPTORS_DOC_EURO
       ALTER TABLE DEPTORS_Remander DISABLE  TRIGGER Tr_for_DEPTORS_REMANDER
       ALTER TABLE DEPTORS_Payment DISABLE  TRIGGER Tr_for_DEPTORS_Payment -- Создаю документ DEPTORS_DOC_EURO_old
                         Она будет нужна для поиска оплативших долги АК и появившихся новых */
     IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'DEPTORS_DOC_EURO_old' AND 	 type = 'U') DROP TABLE DEPTORS_DOC_EURO_old
                SELECT * INTO DEPTORS_DOC_EURO_old -- Это DEPTORS за предыдущий месяц
                FROM DEPTORS_DOC_EURO     -- После копирования данных - уничтожим DEPTORS_DOC_EURO
    DELETE  DEPTORS_DOC_EURO -- Т.О. по FK-PK обнуляютя таблицы  
    DELETE FROM STATEMENT_UKRSTA WHERE mvt_date = 
    (SELECT DISTINCT LATEST__DATE -- выбираю дату 
    FROM STATEMENT_UKRSTA , CALENDAR_BILL_DATE WHERE
     DATEPART(mm,FLIGHT_PERIOD) = DATEPART(mm, (SELECT DATEADD(mm,-1, MAX(stac_date)) FROM STATEMENT_UKRSTA WHERE type = 'FB'))  and
     DATEPART(yy,FLIGHT_PERIOD) = DATEPART(yy, (SELECT DATEADD(mm,-1, MAX(stac_date)) FROM STATEMENT_UKRSTA WHERE type = 'FB'))  and
     type = 'FB') -- Удаляю из таблицы STATEMENT_UKRSTA  все АК, которые не имеют долгов
    DELETE FROM STATEMENT_UKRSTA WHERE corr IN (SELECT corr FROM STATEMENT_UKRSTA a GROUP BY a.corr HAVING Sum(a.saldo) <= 0 ) 
    -- Создаю псевдовременную таблицу по выборке DEPTORS_REFERENCE_Vrem
    IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'DEPTORS_REFERENCE_Vrem' AND type = 'U') DROP TABLE DEPTORS_REFERENCE_Vrem  
    SELECT  corr, type, SUBSTRING(reference,1,6) AS Account, Sum(saldo) AS Saldo INTO DEPTORS_REFERENCE_Vrem FROM STATEMENT_UKRSTA GROUP BY corr, type, reference HAVING SUM(saldo) > 0  
    -- Т.К. FK-PK то сначала внесем User_Ref всех должников в DEPTORS_DOC_EURO
    IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'USER_REF' AND 	 type = 'U')
        DROP TABLE USER_REF  
    SELECT DISTINCT corr INTO USER_REF FROM DEPTORS_REFERENCE_Vrem 
    INSERT INTO DEPTORS_DOC_EURO SELECT User_Ref=a.corr,DEBT_AMOUNT=Null,Name= Null,Country=Null,Code_ICAO=Null,Final_Date=Null,Period_of_Dept=Null,Saldo_D_Facte=0,Saldo_D_Ure=0 FROM USER_REF a  
    DROP TABLE USER_REF -- Заполняю таблицу DEPTORS_REFERENCE (User_Ref уже есть - поэтому позволит внести)
    INSERT INTO DEPTORS_REFERENCE SELECT User_Ref=a.corr,reference=a.Account,type=a.type,Old_Saldo=a.Saldo,Saldo_D_Facte =0,Saldo_D_Ure=0 -- первично  
     FROM DEPTORS_REFERENCE_Vrem a   -- Удалим псевдовременную таблицу DEPTORS_REFERENCE_Vrem
    DROP TABLE  DEPTORS_REFERENCE_Vrem -- Корректирую счета (Выставлено - Оплачено)
    IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'Vrem_Stat_Negativ_Saldo' AND 	 type = 'U') DROP TABLE Vrem_Stat_Negativ_Saldo  
    SELECT  corr, type, SUBSTRING(reference,1,6) AS Account, Sum(saldo) AS Saldo INTO Vrem_Stat_Negativ_Saldo FROM STATEMENT_UKRSTA GROUP BY corr, type, reference HAVING SUM(saldo) < 0  -- Сравниваю две таблицы (DEPTORS_REFERENCE и Vrem_Stat_Negativ_Saldo)
    UPDATE a SET Old_Saldo = a.Old_Saldo + b.Saldo FROM DEPTORS_REFERENCE a INNER JOIN Vrem_Stat_Negativ_Saldo b ON a.User_Ref = b.corr and a.reference = b.Account
    DROP TABLE Vrem_Stat_Negativ_Saldo      -- Создаю новый документ DEPTORS_DOC_EURO 
    IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'Vrem_DEPTORS_DOC_EURO' AND 	 type = 'U')    DROP TABLE Vrem_DEPTORS_DOC_EURO
       SELECT User_Ref, SUM(Old_Saldo) AS Old_Saldo,SUM(Saldo_D_Facte) AS Saldo_D_Facte,SUM(Saldo_D_Ure)   AS Saldo_D_Ure
     INTO Vrem_DEPTORS_DOC_EURO FROM DEPTORS_REFERENCE GROUP BY User_Ref 
    UPDATE b
    SET 
      DEBT_AMOUNT  = a.Old_Saldo, Saldo_D_Facte = a.Old_Saldo, Saldo_D_Ure   = a.Old_Saldo  FROM Vrem_DEPTORS_DOC_EURO a INNER JOIN DEPTORS_DOC_EURO b ON a.User_Ref = b.User_Ref
      DROP TABLE  Vrem_DEPTORS_DOC_EURO
    UPDATE a SET Name= b.corr_name  FROM DEPTORS_DOC_EURO a INNER JOIN STATEMENT_UKRSTA b 
               ON a.User_Ref = b.corr              
    UPDATE a SET Code_ICAO = ICAO_CODE FROM DEPTORS_DOC_EURO a INNER JOIN AIRCOMPANYS b
         ON (a.User_Ref = b.CRCO_NUMBER) OR (a.User_Ref = b.CRCO3)
    UPDATE a SET Country = c.FULL_NAME FROM DEPTORS_DOC_EURO a INNER JOIN AIRCOMPANYS b 
         ON (a.User_Ref = b.CRCO_NUMBER) OR (a.User_Ref = b.CRCO3)
                            INNER JOIN COUNTRYS c ON b.COUNTRY_ID = c.ID
     IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'DEPTORS_DOC_EURO_NewDolg' AND 	 type = 'U')
        DROP TABLE DEPTORS_DOC_EURO_NewDolg
                   SELECT * -- Делаю выборку в таблицу   
                   INTO DEPTORS_DOC_EURO_NewDolg FROM DEPTORS_DOC_EURO
    WHERE User_Ref Not IN (SELECT User_Ref FROM DEPTORS_DOC_EURO_old)
    IF EXISTS(SELECT name  -- Удаляю, если существует в БД
    	  FROM 	 sysobjects WHERE  name = N'DEPTORS_DOC_EURO_OplatDolg' AND 	 type = 'U')
        DROP TABLE DEPTORS_DOC_EURO_OplatDolg
                   SELECT * -- Делаю выборку в таблицу   
                   INTO DEPTORS_DOC_EURO_OplatDolg FROM DEPTORS_DOC_EURO_old
    WHERE User_Ref Not IN (SELECT User_Ref FROM DEPTORS_DOC_EURO)
       ALTER TABLE DEPTORS_REFERENCE ENABLE  TRIGGER Tr_for_DEPTORS_REFERENCE
       ALTER TABLE DEPTORS_DOC_EURO ENABLE  TRIGGER Tr_for_DEPTORS_DOC_EURO
       ALTER TABLE DEPTORS_Remander ENABLE  TRIGGER Tr_for_DEPTORS_REMANDER
       ALTER TABLE DEPTORS_Payment ENABLE  TRIGGER Tr_for_DEPTORS_Payment

    курсор головного мозга 2.2

    bahamot, 24 Февраля 2014

    Комментарии (23)
  8. SQL / Говнокод #14629

    −168

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    -- Процедура формирования таблицы анализа по FIR
    CREATE PROCEDURE KojevnikovFir
                       @DateFo varchar(10),
                       @DateTo varchar(10)
    AS DECLARE @Polet int, @ProcPolet numeric(4,2)
    -- определяю кол-во выполненных рейсов в диапазоне дат----
    SET @Polet =  (SELECT DISTINCT Count(ID)  FROM PPLS WHERE                      
      ( ( FLI_ENTRY=1 or FLI_EXIT=1 )  or   (DEP=1 and DEP_AERODROME like'UK%' )  or
      (ARR=1 and DEST_AERODROME Like'UK%')  ) and (ENTRY_TIME >=@DateFo and ENTRY_TIME <=@DateTo))
    ----------- Начало формирования таблицы FIR-------------------
    -- Создаем  SCROLL курсор 1 для чтения
    DECLARE Cursor_All_Pol CURSOR SCROLL KEYSET TYPE_WARNING FOR SELECT  Marsrut,All_Polet
    FROM Marsr_All_Pol FOR READ ONLY 
    -- Открытие курсора 1 и наполнение его данными  
    OPEN Cursor_All_Pol DECLARE @Marsrut char(11), @All_Polet int,@Count1 int,@Count1_end int
    SET @Count1=1 SET @Count1_end = @@CURSOR_ROWS 
                            -- ===========обьявляю и заполняю курсор по 2 таблице==============
                            DECLARE Cursor_Air CURSOR SCROLL KEYSET TYPE_WARNING
                            FOR SELECT  Marsrut,TYPE_AIRCRAFT,kol_TypeAir FROM Marsr_kol_Air FOR READ ONLY 
                            -- Открытие курсора 2 и наполнение его данными  
                            OPEN Cursor_Air   
                            DECLARE @MarsrutAir char(11),@Type nvarchar(4), @Air_Polet int,@Count2 int,@Count2_end int
                            SET @Count2 = 0 SET @Count2_end = @@CURSOR_ROWS 
                            -- ===========обьявляю и заполняю курсор по 3 таблице==============
                            DECLARE Cursor_AK CURSOR SCROLL KEYSET TYPE_WARNING
                            FOR SELECT  Marsrut,ICAO,AK,kol_AK FROM dbo.Marsr_kol_AK FOR READ ONLY 
                            -- Открытие курсора 2 и наполнение его данными  
                            OPEN Cursor_AK   
                            DECLARE @MarsrutAK char(11),@ICAO char(3),@AK varchar(60),@kol_AK int,@Count3 int,@Count3_end int
                            SET @Count3 = 0 SET @Count3_end = @@CURSOR_ROWS 
    -- цикл по первому курсору
    WHILE @Count1 < @Count1_end BEGIN 
    -- на 1 запись курсора 1
    FETCH NEXT FROM Cursor_All_Pol INTO @Marsrut, @All_Polet
    -- вставляю строку маршрута и кол-ва полетов в таблицу
    SET @ProcPolet = ((@All_Polet * 100)/@Polet)
    INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
    VALUES (@Marsrut,@All_Polet,@ProcPolet,null,null,null,null,null)  
    SET @Count1 = @Count1 + 1 
                            -- цикл по второму курсору
                            FETCH FIRST FROM Cursor_Air INTO @MarsrutAir,@Type,@Air_Polet
                            SET @Count2 = 1
                            -- Формирую 1 строку маршрут + ВС
                            IF @Marsrut = @MarsrutAir BEGIN
                                  INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                                   VALUES (null,null,null,@Type,@Air_Polet,null,null,null)
                               END --IF  
                            WHILE @Count2 < @Count2_end BEGIN 
                            -- увеличиваю счетчик  курсора 2
                            FETCH NEXT FROM Cursor_Air INTO @MarsrutAir,@Type,@Air_Polet
                            -- Формирую строку маршрут + ВС
                            IF @Marsrut = @MarsrutAir BEGIN
                           INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                           VALUES (null,null,null,@Type,@Air_Polet,null,null,null)
                               END --IF       
                             -- закрываю цикл WHILE 2 (второй курсор)
                           SET @Count2 = @Count2 + 1
                            END   
                            -- цикл по третьему курсору
                            FETCH FIRST FROM Cursor_AK INTO @MarsrutAK,@ICAO,@AK,@kol_AK
                            SET @Count3 = 1
                            -- Формирую 1 строку маршрут + АК
                            IF @Marsrut = @MarsrutAK BEGIN
                           INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                           VALUES (null,null,null,null,null,@ICAO,@AK,@kol_AK)
                           END --IF  
                            WHILE @Count3 < @Count3_end BEGIN 
                            -- увеличиваю счетчик  курсора 3
                            FETCH NEXT FROM Cursor_AK INTO @MarsrutAK,@ICAO,@AK,@kol_AK
                            -- Формирую строку маршрут + ВС
                            IF @Marsrut = @MarsrutAK BEGIN
                           INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                           VALUES (null,null,null,null,null,@ICAO,@AK,@kol_AK)
                           END --IF       
                             -- закрываю цикл WHILE 2 (второй курсор)
                           SET @Count3 = @Count3 + 1
                            END   
    -- закрываю цикл WHILE 1 (первый курсор)
    END
                            -- Закрываю курсор 2
                            CLOSE Cursor_Air 
                            -- Удаляю курсор 1 как обьект
                            DEALLOCATE Cursor_Air
                            -- Закрываю курсор 3
                            CLOSE Cursor_AK 
                            -- Удаляю курсор 1 как обьект
                            DEALLOCATE Cursor_AK
    -- Закрываю курсор
    CLOSE Cursor_All_Pol 
    -- Удаляю курсор 1 как обьект
    DEALLOCATE Cursor_All_Pol
    ------------Конец--------------------
    GO
    select * from KojevnikovAnalizFIR 
    truncate table dbo.KojevnikovAnalizFIR
    DELETE from KojevnikovAnalizFIR
    exec dbo.KojevnikovFir '2004-01-01','2004-01-05'

    курсор головного мозга 2.1

    bahamot, 18 Февраля 2014

    Комментарии (2)
  9. SQL / Говнокод #14551

    −162

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    -- Процедура формирования таблицы анализа по FIR
    CREATE PROCEDURE KojevnikovFir @DateFo varchar(10), @DateTo varchar(10)
    AS DECLARE @Polet int, @ProcPolet numeric(4,2)
    -- определяю кол-во выполненных рейсов в диапазоне дат----
    SET @Polet = (SELECT DISTINCT Count(ID)  FROM PPLS WHERE                      
      ( ( FLI_ENTRY=1 or FLI_EXIT=1 )  or (DEP=1 and DEP_AERODROME like'UK%' )  or
      (ARR=1 and DEST_AERODROME Like'UK%')  ) and (ENTRY_TIME >=@DateFo and ENTRY_TIME <=@DateTo))
    ----------- Начало формирования таблицы FIR-------------------
    -- Создаем  SCROLL курсор 1 для чтения
    DECLARE Cursor_All_Pol CURSOR SCROLL KEYSET TYPE_WARNING FOR SELECT  Marsrut,All_Polet FROM Marsr_All_Pol FOR READ ONLY 
    -- Открытие курсора 1 и наполнение его данными  
    OPEN Cursor_All_Pol DECLARE @Marsrut char(11), @All_Polet int,@Count1 int,@Count1_end int
    SET @Count1=1 SET @Count1_end = @@CURSOR_ROWS 
    -- ===========обьявляю и заполняю курсор по 2 таблице==============
                            DECLARE Cursor_Air CURSOR SCROLL KEYSET TYPE_WARNING                        FOR SELECT  Marsrut,TYPE_AIRCRAFT,kol_TypeAirFROM Marsr_kol_Air FOR READ ONLY 
    -- Открытие курсора 2 и наполнение его данными  
                            OPEN Cursor_Air   
                            DECLARE @MarsrutAir char(11),@Type nvarchar(4), @Air_Polet int,@Count2 int,@Count2_end int
                            SET @Count2 = 0 SET @Count2_end = @@CURSOR_ROWS 
    -- ===========обьявляю и заполняю курсор по 3 таблице==============
                            DECLARE Cursor_AK CURSOR SCROLL KEYSET TYPE_WARNING
                            FOR SELECT  Marsrut,ICAO,AK,kol_AK
                            FROM dbo.Marsr_kol_AK
                            FOR READ ONLY 
    -- Открытие курсора 2 и наполнение его данными  
                            OPEN Cursor_AK   
                            DECLARE @MarsrutAK char(11),@ICAO char(3),@AK varchar(60),@kol_AK int,@Count3 int,@Count3_end int
                            SET @Count3 = 0 SET @Count3_end = @@CURSOR_ROWS 
    -- цикл по первому курсору
    WHILE @Count1 < @Count1_end BEGIN 
    -- на 1 запись курсора 1
    FETCH NEXT FROM Cursor_All_Pol INTO @Marsrut, @All_Polet
    -- вставляю строку маршрута и кол-ва полетов в таблицу
    SET @ProcPolet = ((@All_Polet * 100)/@Polet)
    INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
    VALUES (@Marsrut,@All_Polet,@ProcPolet,null,null,null,null,null)  
    SET @Count1 = @Count1 + 1 
    --  =============начало=================-- цикл по второму курсору
                            FETCH FIRST FROM Cursor_Air INTO @MarsrutAir,@Type,@Air_Polet
                            SET @Count2 = 1
    -- Формирую 1 строку маршрут + ВС
                            IF @Marsrut = @MarsrutAir BEGIN
                                  INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                                   VALUES (null,null,null,@Type,@Air_Polet,null,null,null)
                               END --IF  
                            WHILE @Count2 < @Count2_end BEGIN 
    -- увеличиваю счетчик  курсора 2
                            FETCH NEXT FROM Cursor_Air INTO @MarsrutAir,@Type,@Air_Polet
    -- Формирую строку маршрут + ВС
                            IF @Marsrut = @MarsrutAir BEGIN
                           INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                           VALUES (null,null,null,@Type,@Air_Polet,null,null,null)
                               END --IF       
    -- закрываю цикл WHILE 2 (второй курсор)
                           SET @Count2 = @Count2 + 1 END   
    --  =============конец===================                     
    --  =============начало=================
    -- цикл по третьему курсору
                            FETCH FIRST FROM Cursor_AK INTO @MarsrutAK,@ICAO,@AK,@kol_AK
                            SET @Count3 = 1
    -- Формирую 1 строку маршрут + АК
                            IF @Marsrut = @MarsrutAK BEGIN
                           INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                           VALUES (null,null,null,null,null,@ICAO,@AK,@kol_AK)
                           END --IF  
                            WHILE @Count3 < @Count3_end BEGIN 
    -- увеличиваю счетчик  курсора 3
                            FETCH NEXT FROM Cursor_AK INTO @MarsrutAK,@ICAO,@AK,@kol_AK
    -- Формирую строку маршрут + ВС
                            IF @Marsrut = @MarsrutAK BEGIN
                           INSERT KojevnikovAnalizFIR (Marsrut,All_Polet,PrcAll,TYPE_AIRCRAFT,kol_TypeAir,ICAO,AK,kol_AK)
                           VALUES (null,null,null,null,null,@ICAO,@AK,@kol_AK)
                           END --IF       
    -- закрываю цикл WHILE 2 (второй курсор)
                           SET @Count3 = @Count3 + 1 END   
    --  =============конец===================
    -- закрываю цикл WHILE 1 (первый курсор)
    END
    -- Закрываю курсор 2
                            CLOSE Cursor_Air 
    -- Удаляю курсор 1 как обьект
                            DEALLOCATE Cursor_Air
    -- Закрываю курсор 3
                            CLOSE Cursor_AK 
    -- Удаляю курсор 1 как обьект
                            DEALLOCATE Cursor_AK
    -- Закрываю курсор
    CLOSE Cursor_All_Pol 
    -- Удаляю курсор 1 как обьект
    DEALLOCATE Cursor_All_Pol
    ------------Конец--------------------
    GO
    select * from KojevnikovAnalizFIR 
    truncate table dbo.KojevnikovAnalizFIR
    DELETE from KojevnikovAnalizFIR
    exec dbo.KojevnikovFir '2004-01-01','2004-01-05'

    курсор головного мозга 2.0

    bahamot, 12 Февраля 2014

    Комментарии (51)
  10. SQL / Говнокод #14391

    −120

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    --==================================================
    -- используется для расчетного поля PPLS2BILLS_SRCO
    --==================================================
    CREATE FUNCTION RasSU 
                (   @Ves decimal(10,2),   
                    @Long decimal(10,2)   )
    RETURNS  decimal(10,2)
    AS
    BEGIN	
    DECLARE @SU decimal(10,2), @d decimal(10,2), @W decimal(10,2)
     
     SET @d=@Long / 100
     SET @W=ROUND((@Ves / 1000),2)
             IF  @d * SQRT(@W / 50) < 0 
                 BEGIN
                    SET @SU = 0
                END
             ELSE
                    SET @SU=@d * SQRT(@W / 50) 
    
    RETURN @SU
    END

    Looking for the dark matters.

    bahamot, 20 Января 2014

    Комментарии (11)
  11. Куча / Говнокод #14361

    +141

    1. 1
    getElementsByTagName("body")[0].appendChild(c),frames.__bkframe.location.replace(B);}}}),e.shift(),"undefined"!=typeof r.ignoreOutsideIframe&&r.ignoreOutsideIframe===!1){e.unshift("ret=jsht"),B=A+"?"+e.join("&"),B=B.substr(0,2000);var G=document.createElement("script");G.src=B,G.type="text/javascript",document.getElementsByTagName("body").item(0).appendChild(G);}}"function"==typeof j&&j(),e=[];}}};for(var i in h){h.hasOwnProperty(i)&&(window.BKTAG[i]=h[i]);}return"function"==typeof window.bk_async&&window.setTimeout(function(){bk_async();},0),h;}),define("../src/aliases",["../src/core"],function(){window.BKTAG.addCtxParam=function(a,b){return BKTAG.addParam("phint",a,b),BKTAG;},window.BKTAG.addBkParam=function(a,b){return BKTAG.addParam("phint","__bk_"+a,b),BKTAG;},window.BKTAG.addPageCtx=window.bk_addPageCtx=window.BKTAG.addUserCtx=window.bk_addUserCtx=function(a,b){return BKTAG.addParam("phint",a,b),BKTAG;},window.BKTAG.doJSTag=window.bk_doJSTag=function(a,b,c){BKTAG.doTag(a,b,!1,null,c);},window.BKTAG.doJSTag2=window.bk_doJSTag2=function(a,b){BKTAG.doTag(a,b);},window.BKTAG.doCarsJSTag=window.bk_doCarsJSTag=function(a,b){BKTAG.doTag(a,b,!0);},window.BKTAG.doPartnerAltTag=window.bk_doPartnerAltTag=function(a,b,c){("undefined"==typeof c||null===c)&&(c=0),BKTAG.doTag(a,b,!1,c);},window.BKTAG.doCallbackTag=window.bk_doCallbackTag=function(a,b,c,d){BKTAG.doTag(a,0,!1,null,c,b,d);},window.BKTAG.doCallbackTagWithTimeOut=window.bk_doCallbackTagWithTimeOut=function(a,b,c,d,e){BKTAG.doTag(a,0,!1,null,c,b,d,e);},window.BKTAG.sendData=function(a){BKTAG.doTag(a);};}),define("mobile",["../vendor/fortyone","../vendor/json2","../src/core","../src/aliases"],function(){}),require("mobile");}();BKTAG.version="3.0.17";

    the end

    bahamot, 14 Января 2014

    Комментарии (8)