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

    +1

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

    уже шестой год я работаю с этой "конфой", жаль что ее целиком нельзя сюда выложить, там, не считая исходной бух части, сплошной креатив каких то ДЦП на обеденной перемене классе во втором.

    jah, 31 Июля 2020

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    ГрИнвС = ?(ГрИнвЧ=1, "Первая", ?(ГрИнвЧ=2, "Вторая", ?(ГрИнвЧ=3, "Третья", 
             ?(ГрИнвЧ=4, "Четвертая", ?(ГрИнвЧ=5, "Пятая", ?(ГрИнвЧ=6, "Шестая",
    	 ?(ГрИнвЧ=7, "Седьмая", ?(ГрИнвЧ=8, "Восьмая", ?(ГрИнвЧ=9, "Девятая", 
    	   Строка(ГрИнвЧ))))))))));

    Определение группы инвалидности из числового значения. Возможно, код писал обладатель неизвестной медицине 9-й группы инвалидности.

    maalssy, 23 Июля 2020

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

    0

    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
    ПапкаПоставщика = СокрЛП(Поставщик);
    Попытка Excel.ActiveWorkbook.Close(); Исключение КонецПопытки;
    Попытка Excel.Quit(); Исключение КонецПопытки;
    Попытка Excel = 0; Исключение КонецПопытки;
    Попытка Предупреждение("ПАУЗА", 1); Исключение КонецПопытки;
    Попытка СоздатьКаталог(Файл.Путь + "\отклонено\" + ПапкаПоставщика); Исключение КонецПопытки;
    Попытка
    	ПереместитьФайл(Файл.ПолноеИмя, Файл.Путь + "\отклонено\" + ПапкаПоставщика + "\" + Файл.Имя);
    Исключение
    	Попытка
    		ПереместитьФайл(Файл.ПолноеИмя, Файл.Путь + "\отклонено\" + Файл.Имя);
    	Исключение
    	КонецПопытки;
    КонецПопытки;
    Попытка
    	ФайлЛог = Новый ЗаписьТекста(Файл.Путь + "\отклонено\" + ПапкаПоставщика + "\" + Файл.Имя + ".txt");
    	ФайлЛог.ЗаписатьСтроку(Сообщение);
    Исключение
    	Попытка
    		ФайлЛог = Новый ЗаписьТекста(Файл.Путь + "\отклонено\" + Файл.Имя + ".txt");
    		ФайлЛог.ЗаписатьСтроку(Сообщение);
    	Исключение
    	КонецПопытки;
    КонецПопытки;

    Больше попыток Богу попыток!

    pgenav, 15 Июля 2020

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

    +1

    1. 1
    2. 2
    https://infostart.ru/public/72175/
    1C.Net:Предприятие + DirectX = 3D-графика на формах 1С:Предприятие

    Зачем? Зачем?

    j123123, 04 Июня 2020

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

    0

    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
    Для уу = 0 по ИндексПЭ-1 цикл 
    		// ** вычисление продаж в розницу**
    		Если Отчет.НетСобственныхТорговыхСетей Тогда 
    			ПроданоВРозницу   = Окр(ОН[уу], 4) + п4_1[уу] + п4_2[уу] + п4_3[уу] - п5_2[уу] - п5_3[уу] - п5_4[уу] - п5_5[уу] - п5_5[уу] - Окр(ОК[уу],4);
    			//ПроданоВРозницу = Окр(ОН[уу], 6) + п4_1[уу] + п4_2[уу] + п4_3[уу] - п5_2[уу] - п5_3[уу] - п5_4[уу] - п5_5[уу] - п5_5[уу] - Окр(ОК[уу], 6);
    			//п5_7[уу]=п5_7[уу]+ПроданоВРозницу;
    			п5_7[уу]=ПроданоВРозницу;
    		Иначе 
    			ПроданоВРозницу =   Окр(ОН[уу], 4) + п4_1[уу] + п4_2[уу] + п4_3[уу] - п5_2[уу] - п5_3[уу] - п5_4[уу] - п5_5[уу] - п5_7[уу] - Окр(ОК[уу], 4);
    			//ПроданоВРозницу = Окр(ОН[уу], 6) + п4_1[уу] + п4_2[уу] + п4_3[уу] - п5_2[уу] - п5_3[уу] - п5_4[уу] - п5_5[уу] - п5_7[уу] - Окр(ОК[уу], 6);
    			п5_5[уу] = п5_5[уу] + ПроданоВРозницу;
    		КонецЕсли;
    		// ** вычисление колонки Итого ***
    		
    		Если Отчет.ТабачныеИзделия Тогда
    			Если уу = 8 Тогда	//  уу=6 или  уу=5
    				//колонку "Тонны" в колонку итог "млн. штук" не смешиваем....
    				Продолжить;
    			КонецЕсли; 		
    		КонецЕсли; 
    
    		п4_1[ИндексПЭ]		= п4_1[ИндексПЭ]	+ п4_1[уу]; 
    		п4_1_1[ИндексПЭ]	= п4_1_1[ИндексПЭ]	+ п4_1_1[уу]; 
    		п4_1_2[ИндексПЭ]	= п4_1_2[ИндексПЭ]	+ п4_1_2[уу]; 
    		п4_1_3[ИндексПЭ]	= п4_1_3[ИндексПЭ]	+ п4_1_3[уу]; 
    		п4_2[ИндексПЭ]		= п4_2[ИндексПЭ]	+ п4_2[уу]; 
    		п4_3[ИндексПЭ]		= п4_3[ИндексПЭ]	+ п4_3[уу];
    		п5_2[ИндексПЭ]		= п5_2[ИндексПЭ]	+ п5_2[уу];
    		п5_3[ИндексПЭ]		= п5_3[ИндексПЭ]	+ п5_3[уу];
    		п5_4[ИндексПЭ]		= п5_4[ИндексПЭ]	+ п5_4[уу];
    		п5_5[ИндексПЭ]		= п5_5[ИндексПЭ]	+ п5_5[уу];
    		п5_7[ИндексПЭ]		= п5_7[ИндексПЭ]	+ п5_7[уу];  
    		ОН[ИндексПЭ]		= ОН[ИндексПЭ]		+ ОН[уу];
    		ОК[ИндексПЭ]		= ОК[ИндексПЭ]		+ ОК[уу];
    		
    	Конеццикла;	
    	
    	Для уу = 0 по ИндексПЭ цикл
    		п5[уу] =п5_2[уу] + п5_3[уу] + п5_4[уу] + п5_5[уу] + п5_7[уу];
    		п4[уу] =п4_1[уу] + п4_2[уу] + п4_3[уу];
    	Конеццикла;

    Работаю в крупной торговой сети РБ, конфигурация переделана с 7.7 на 8-ку.
    Прилетает сегодня задачка от буха "Не сходятся цифры в алкогольной декларации", захожу в модуль отчета, в котором 2600 строк кода, вроде этого(этот самый сочный), и тут я понял что хочу уволиться))

    Не смог себя сдержать и решил этим поделиться) думаю тут этому коду самое место

    Dudozavr, 29 Мая 2020

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Если НЕ Объект.Валютный Тогда
        Объект.ПересчитыватьВалютнуюСумму=Ложь;
    Иначе
        Объект.ПересчитыватьВалютнуюСумму=Истина;
    КонецЕсли;

    Типовая УХ

    aumsej, 29 Мая 2020

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

    +2

    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
    98. 98
    99. 99
    //Начало новый код
    |select 
    |	НомерСтроки,
    |	Номенклатура,
    |	ЕдиницаИзмерения,
    |	Партия,
    |	КоличествоВозврата как Количество
    |поместить ДанныеДок
    |from Документ.РеализацияКассаВозврат.Номенклатура
    |where (ссылка=&ТекДок)
    //Конец новый код
    |;
    |
    |select 
    |	Номенклатура,
    |	ЕдиницаИзмерения,
    |	Партия,
    //Основание изменения:
    //Ускорение процесса:
    //Начало старый код
    //|	Количество как Количество,
    //|	СтоимостьРуб как СтоимостьРуб,
    //|	СуммаНДСРуб как СуммаНДСРуб,
    //|	СтоимостьУпр как СтоимостьУпр
    //|поместить ДанныеСклад
    //|from РегистрНакопления.ПартииТоваровНаСкладах
    //|where 
    //	(Период <= &Дата) и (Организация=&Организация и Подразделение=&Подразделение) 
    //Конец старый код
    
    //Начало новый код
    |	СУММА(КоличествоПриход) как Количество,
    |	СУММА(СтоимостьРубПриход) как СтоимостьРуб,
    |	СУММА(СуммаНДСРубПриход) как СуммаНДСРуб,
    //	Тригубович Л. 2016.06.29
    //Основание изменения:
    //Задача № 4036: Корректировка баз в связи с деноминацией
    //Начало новый код
    |	СУММА(СтоимостьBYNПриход) как СтоимостьBYN,
    |	СУММА(СуммаНДСBYNПриход) как СуммаНДСBYN,
    //Конец новый код
    |	СУММА(СтоимостьУпрПриход) как СтоимостьУпр
    |поместить ДанныеСклад
    //Основание изменения:
    //Договор комиссии:
    //Начало старый код
    //|from РегистрНакопления.ПартииТоваровНаСкладах.Обороты(,&Дата, Регистратор, Организация=&Организация и Подразделение=&Подразделение)
    //Конец старый код
    
    //Начало новый код
    |from РегистрНакопления.ПартииТоваровНаСкладах.Обороты("+?(Подразделение.Инглот И Дата >= '20140701', "ДатаВремя(2014,07,01)", "")+",&Дата, Регистратор, Организация=&Организация и Подразделение=&Подразделение)
    //Конец новый код
    |where 
    //Конец новый код
    |	(Номенклатура в (select Номенклатура from ДанныеДок)) 
    
    //Основание изменения:
    //Письмо Александровской Ольги от 01.02.2013 (п.2)
    //Начало новый код
    |	и (Партия в (select Партия from ДанныеДок)) 
    //Конец новый код
    |	и (Регистратор ссылка Документ.ПоступлениеТМЦ или Регистратор ссылка Документ.ПоступлениеТМЦИмпорт ИЛИ Регистратор ссылка Документ.ПеремещениеТМЦ ИЛИ Регистратор ссылка Документ.Пересорт ИЛИ Регистратор ссылка Документ.КомплектацияНаборов ИЛИ Регистратор ссылка Документ.РазукомплектацияНаборов ИЛИ Регистратор ссылка Документ.СкидкиПоСрокамГодности)
    |group by Номенклатура,ЕдиницаИзмерения,Партия
    |;
    |
    //Основание изменения:
    //Учтем данные по продажам
    //Начало новый код
    |select 
    |	Номенклатура,
    |	ЕдиницаИзмерения,
    |	Партия,
    |	СУММА(-КоличествоОборот) как Количество,
    |	СУММА(-СтоимостьРубОборот) как СтоимостьРуб,
    |	СУММА(-СуммаНДСРубОборот) как СуммаНДСРуб,
    //Основание изменения:
    //Задача № 4036: Корректировка баз в связи с деноминацией
    //Начало новый код
    |	СУММА(-СтоимостьBYNОборот) как СтоимостьBYN,
    |	СУММА(-СуммаНДСBYNОборот) как СуммаНДСBYN,
    //Конец новый код
    |	СУММА(-СтоимостьУпрОборот) как СтоимостьУпр
    |поместить ДанныеПродаж
    |from РегистрНакопления._ИмяРегистра_.Обороты("+?(ДатаРеализации = '00010101', "", "&ДатаНач")+",&ДатаКон, Регистратор, Организация=&Организация и _УсловиеПодразделение_)
    |where 
    |	Номенклатура в (select Номенклатура from ДанныеДок)
    |	и Партия в (select Партия from ДанныеДок)
    |	и (Регистратор ссылка Документ.РеализацияКасса ИЛИ Регистратор ссылка Документ.РеализацияКассаВозврат)
    |group by Номенклатура,ЕдиницаИзмерения,Партия
    |;
    |
    //Конец новый код
    |// сводные данные
    |select
    //Основание изменения:
    //Управленческий учет:
    //Начало новый код
    |	док.НомерСтроки КАК НомерСтрокиДокумента,
    //Конец новый код

    такое мог изобразить только ональный говноклоун
    сразу, на двух языках, блеать, вот бы еще украинского туда. Осмысленность и нужность комментариев феноменальна.
    анус мой от вида таких поделок полыхает.

    valchara, 30 Апреля 2020

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

    −1

    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
    Функция РазрешеноСозданиеИлиЗаписьНаЗанятие(
    	ТипЗанятия, 
    	Период, 
    	СтруктурунаяЕдиница, 
    	ОснованиеОплаты, 
    	Номенклатура, 
    	ВремяНачала, 
    	ВремяОкончания, 
    	Сотрудник, 
    	Помещение, 
    	Занятие, 
    	Статус, 
    	ИсклРег,
    	КонтрольРабВремениСотрудника,
    	КонтрольЗанятостиПомещения,
    	ОписаниеОграничения, 
    	КодОграничения) 
    	
    	Возврат Документы.Занятие.РазрешеноСозданиеИлиЗаписьНаЗанятие(
    	ТипЗанятия, 
    	Период,
    	СтруктурунаяЕдиница, 
    	ОснованиеОплаты, 
    	Номенклатура,
    	ВремяНачала, 
    	ВремяОкончания, 
    	Сотрудник,
    	Помещение, 
    	Занятие,
    	Статус, 
    	ИсклРег,
    	КонтрольРабВремениСотрудника,
    	КонтрольЗанятостиПомещения,
    	ОписаниеОграничения, 
    	КодОграничения);
    	
    КонецФункции

    Оформление по красоте, как и количество параметров.

    QuickMix, 11 Марта 2020

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

    0

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

    Когда джуны на проекте по ЕРП

    sandvich, 09 Марта 2020

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

    +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
    ОбластьТело.Параметры.Нерабочий = ?(
    	(Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 1 И (День(СсылкаНаОбъект.ДатаНачалаСобытия) = 1 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 2 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 3 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 4 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 5 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 6 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 7 
    		ИЛИ День(СсылкаНаОбъект.ДатаНачалаСобытия) = 8))
    	ИЛИ Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 2 И День(СсылкаНаОбъект.ДатаНачалаСобытия) = 23
    	ИЛИ Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 3 И День(СсылкаНаОбъект.ДатаНачалаСобытия) = 8
    	ИЛИ Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 5 И День(СсылкаНаОбъект.ДатаНачалаСобытия) = 1
    	ИЛИ Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 5 И День(СсылкаНаОбъект.ДатаНачалаСобытия) = 9
    	ИЛИ Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 6 И День(СсылкаНаОбъект.ДатаНачалаСобытия) = 12
    	ИЛИ Месяц(СсылкаНаОбъект.ДатаНачалаСобытия) = 11 И День(СсылкаНаОбъект.ДатаНачалаСобытия) = 4
    	,"праздничный", "выходной");

    Проверочка на соответствие даты действия документа праздничному дню.. не ну а чо бы нет то

    Stipa, 06 Марта 2020

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