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

    +1412

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    counter++;
                        if (counter == 10)
                        {
                            Console.WriteLine();
                            counter = 0;
                        }

    Не сразу понял, что делает этот код.

    Langnasen_Dora, 07 Мая 2017

    Комментарии (65)
  2. 1C / Говнокод #22905

    −264

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Ответ = Вопрос("Будет запущена процедура создания договоров и печати документов. Продолжить?",
              РежимДиалогаВопрос.ДаНет, 60, КодВозвратаДиалога.Да, ЗаголовокОкнаПредупреждения);
        
    Если НЕ Ответ = КодВозвратаДиалога.Да Тогда
             Возврат;
    КонецЕсли;

    wezug, 05 Мая 2017

    Комментарии (2)
  3. Си / Говнокод #22876

    −33

    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
    #include <http://govnokod.ru/21585>
    
    // assembly output for f1_signed and f2_signed on GCC 7,6,5 ... versions are same
    
    signed char f1_signed(signed char a1, signed char a2, signed char a3)
    {
      return MAXS(a1,a2,a3,a1,a2,a3);
    }
    
    signed char f2_signed(signed char a1, signed char a2, signed char a3)
    {
      return MAXS(a1,a2,a3);
    }
    
    // assembly output for f1_unsigned and f2_unsigned on GCC 7,6,5 ... versions are differend
    // GCC compiler can't do same simplification for unsigned function
    
    // This function produces much more assembler code than second
    unsigned char f1_unsigned(unsigned char a1, unsigned char a2, unsigned char a3)
    {
      return MAXS(a1,a2,a3,a1,a2,a3);
    }
    
    unsigned char f2_unsigned(unsigned char a1, unsigned char a2, unsigned char a3)
    {
      return MAXS(a1,a2,a3);
    }

    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80574

    Очередной мой багрепорт в GCC. Компилятор GCC может заоптимизировать повторяющуйся в MAXS хрень для signed char, но не может для unsigned
    А вот Clang не может заоптимизировать ни то, ни другое. https://godbolt.org/g/7Kt9X0

    j123123, 30 Апреля 2017

    Комментарии (100)
  4. 1C / Говнокод #22823

    −10

    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
    Функция РазностьДатВДнях(Дата1, Дата2, ВключаяГраницы = Истина)
    	
    	Результат = ?(ВключаяГраницы, 1, 0);
    	Если Дата1 < Дата2 Тогда
    		ТекущаяДата = НачалоДня(Дата1);
    		ДатаОкончания = НачалоДня(Дата2);
    	Иначе
    		ТекущаяДата = НачалоДня(Дата2);
    		ДатаОкончания = НачалоДня(Дата1);
    	КонецЕсли;
    	Пока ТекущаяДата < ДатаОкончания Цикл
    		ТекущаяДата = НачалоДня(ТекущаяДата + 24 * 60 * 60);
    		Результат = Результат + 1;
    	КонецЦикла;
    	Возврат Результат;
    
    КонецФункции

    можно тремя строками заменить:
    ДатаНачала = Мин(НачалоДня(Дата1), НачалоДня(Дата2));
    ДатаОкончания = Макс(НачалоДня(Дата1), НачалоДня(Дата2));
    Возврат ?(ВключаяГраницы, 1, 0) + (ДатаОкончания - ДатаНачала) / 86400

    noncode, 17 Апреля 2017

    Комментарии (14)
  5. 1C / Говнокод #22734

    −98

    1. 1
    2. 2
    Если НоменклатураКонтрагентов.Наличие=Перечисления.ДаНет.Да тогда
    ....

    Создан новый элемент перечисления "ДаНет" на который ссылается измерение регистра сведений. Джордж Буль продолжает медленно крутиться...

    FesenkoA, 03 Апреля 2017

    Комментарии (5)
  6. 1C / Говнокод #22715

    −99

    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
    Процедура ДвиженияПоРегистрамНесортированнаяПродукция(РежимПроведения, СтруктураШапкиДокумента, ТаблицаПоПродукции, Отказ, Заголовок);
    
    	Если Не Отказ Тогда
    
    		Запрос = Новый Запрос;
    		Запрос.Текст = 
    			"ВЫБРАТЬ
    			|	ОтчетПроизводстваЗаСменуПродукция.Количество КАК Количество,
    			|	ОтчетПроизводстваЗаСменуПродукция.Номенклатура,
    			|	ОтчетПроизводстваЗаСменуПродукция.ХарактеристикаНоменклатуры
    			|ИЗ
    			|	Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция
    			|ГДЕ
    			|	ОтчетПроизводстваЗаСменуПродукция.Ссылка = &Ссылка
    			|	И ОтчетПроизводстваЗаСменуПродукция.Номенклатура.АС_УчетНесортированнойПродукции = &ФлагДа";
    
    		Запрос.УстановитьПараметр("ФлагДа", Истина);
    		Запрос.УстановитьПараметр("Ссылка", Ссылка);
    
    		Результат = Запрос.Выполнить().Выгрузить();
    
    		НаборДвижений = Движения.АС_НесортированнаяПродукцияНаСкладах;
    		Если Результат.Количество()>0 Тогда
    			Для Каждого Стр ИЗ Результат Цикл
    				НоваяСтрока = НаборДвижений.Добавить();
    				НоваяСтрока.ВидДвижения = ВидДвиженияНакопления.Приход;
    				ЗаполнитьЗначенияСвойств(НоваяСтрока,Стр);
    				НоваяСтрока.Период = Дата;
    				НоваяСтрока.Регистратор = Ссылка;
    			КонецЦикла;
    		КонецЕсли;	
    	КонецЕсли;
    	
    КонецПроцедуры

    Нужно больше параметров! Иначе ты не адинэсник, а полное ничтожество. (Это не результат легаси, там реально скопипащено ПЯТЬ процедур с одинаковыми параметрами, из которых используется только "Отказ", да и то как видим - через заднепроходное отверстие)

    Old_Chroft, 31 Марта 2017

    Комментарии (3)
  7. 1C / Говнокод #22708

    −98

    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
    ВЫБОР
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 1
    		ТОГДА "01 Январь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 2
    		ТОГДА "02 Февраль"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 3
    		ТОГДА "03 Март"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 4
    		ТОГДА "04 Апрель"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 5
    		ТОГДА "05 Май"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 6
    		ТОГДА "06 Июнь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 7
    		ТОГДА "07 Июль"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 8
    		ТОГДА "08 Август"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 9
    		ТОГДА "09 Сентябрь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 10
    		ТОГДА "10 Октябрь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 11
    		ТОГДА "11 Ноябрь"
    	ИНАЧЕ "12 Декабрь"
    КОНЕЦ

    Конвертация

    spaceashot, 30 Марта 2017

    Комментарии (4)
  8. 1C / Говнокод #22655

    −11

    1. 1
    ДобавитьИндексерованиеВТекстЗапроса(ТекстЗапросаПодневынеДанные, "НеИнициализированныеИстчоникиДанных...

    ЗУП КОРП 3.1.2.121
    Типовой код.
    Обработка.МенеджерДанныхУчетаВремениСотр удников.МодульОбъекта - строка 2410

    Arhal, 22 Марта 2017

    Комментарии (0)
  9. 1C / Говнокод #22653

    −13

    1. 1
    2. 2
    3. 3
    ...
    ТабличныйДокумент.Вывести(Отчеты[Сред(Лев(ЭтаФорма.ИмяФормы, СтрНайти(ЭтаФорма.ИмяФормы, ".Форма.") - 1), 7)].ПолучитьМакет(Сред(ЭтаФорма.ИмяФормы, СтрНайти(ЭтаФорма.ИмяФормы, "ФормаОтчета")) + "_" + Раздел.ИмяСтраницы));
    ...

    Типовая ЗУП 3.0.25.150, модуль ФОРМЫ регл. отчета 6-НДФЛ.

    SkyHunter, 22 Марта 2017

    Комментарии (2)
  10. 1C / Говнокод #22650

    −19

    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
    БланкПостроителяОтчетаНоменклатура = Новый ПостроительОтчета;
    	Если Конфигурация = "ТорговляУкраина" 
    		ИЛИ Конфигурация = "УТПУкраина" Тогда
    		Если Истина Тогда
    			БланкПостроителяОтчетаНоменклатура.Текст=
    			ЗапросПодготовкаДанных + 
    			"ВЫБРАТЬ РАЗРЕШЕННЫЕ
    			|	НоменклатураДетализация.Номенклатура.Код КАК Код,
    			|	НоменклатураДетализация.Номенклатура.Артикул КАК Артикул,
    			|	НоменклатураДетализация.Номенклатура КАК Номенклатура,
    			|	НоменклатураДетализация.Детализация КАК Детализация,
    			|	ЕСТЬNULL(ОстаткиРезервы.Остаток, 0) КАК Остаток,
    			|	НоменклатураДетализация.ТипДетализации КАК ТипДетализации,
    //................................................................................................................................................................. //

    Если Истина Тогда ...
    Действительно, а вдруг Истина = Ложь!

    saturn5, 21 Марта 2017

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