Бухгалтерия / Говнокод #3630 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
Отбор = РегистрыСведений.БазыКонтрагентов.СрезПоследних(Дата,новый Структура("Производитель",Контрагент));
Если Отбор.Количество()>0 Тогда
	Для каждого ТекТМ из Отбор Цикл
		Элемент.списокВыбора.Очистить();		
		Для каждого ТекТМ из Отбор Цикл
			Элемент.списокВыбора.ДОбавить(ТекТМ.ТорговаяМарка,ТекТМ.ТорговаяМарка);
		КонецЦикла;	
	КонецЦикла;			
КонецЕсли;

Сложно сказать что хотел сделать этим автор :)
Может добавить последнюю строку из отбора? :D

PayneBLADE PayneBLADE, (Updated )

Комментарии (89, +89)

Бухгалтерия / Говнокод #3617 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
Если ДатаЧисло(НачДата) < 10 Тогда
	ЧислоДата = "0"+ДатаЧисло(НачДата);
Иначе
	ЧислоДата =  ДатаЧисло(НачДата);
КонецЕсли;

Если ДатаМесяц(НачДата) < 10 Тогда
	МесяцДата = "0"+ДатаМесяц(НачДата);
Иначе
	МесяцДата =  ДатаМесяц(НачДата);
КонецЕсли;			
		
Если ДатаЧисло(КонДата) < 10 Тогда
	КонЧислоДата = "0"+ДатаЧисло(КонДата);
Иначе
	КонЧислоДата =  ДатаЧисло(КонДата);
КонецЕсли;

Если ДатаМесяц(КонДата) < 10 Тогда
	КонМесяцДата = "0"+ДатаМесяц(КонДата);
Иначе                                                                     
	КонМесяцДата =  ДатаМесяц(КонДата);
КонецЕсли;			

/// ... где-то ниже
ЧислоДата+"/"+МесяцДата+"/"+ДатаГод(НачДата)+";"+КонЧислоДата+"/"+КонМесяцДата+"/"+ДатаГод(КонДата)

У меня это ужалось до 2х строк:
ДатаСтр = Строка(Формат(НачДата, "ДDDMMYYYY"));
ДатаСтр = СтрЗаменить(ДатаСтр, ".", "/");

just_geek just_geek, (Updated )

Комментарии (41, +41)

Бухгалтерия / Говнокод #2965 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
Перем Да, Нет Экспорт;

Да  = 1;
Нет = 0;

и далее в кодах идет 
Если <что то>=Да Тогда
....
КонецЕсли;

сразу скажу....это все пишется в 1С 7.7

походу ребятки ПЕРЕКОДИЛИ в 8-ке и снова вернулись на 7-ку

s.komaroff s.komaroff, (Updated )

Комментарии (14, +14)

Бухгалтерия / Говнокод #2948 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
........
Перем Cont Экспорт;
........

Процедура ЗаписатьКонтекст(Конт) export
	Cont = Конт;
КонецПроцедуры

не знаю что автор хотел этим сказать
но обнаружили мы это у себя утром сегодня в конфе...а вчера не было))))

конфа комплексная...

s.komaroff s.komaroff, (Updated )

Комментарии (65, +65)

Бухгалтерия / Говнокод #2936 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
Процедура ДействияФормыСформировать(Кнопка)
	Запись = Новый Структура;
	Запись.Вставить("Номер",);
	Запись.Вставить("ФизЛицо",);
	Запись.Вставить("ТабНомер",);

	Запись.Вставить("д1",);
	Запись.Вставить("д2",);
	Запись.Вставить("д3",);
	Запись.Вставить("д4",);
	Запись.Вставить("д5",);
	Запись.Вставить("д6",);
	Запись.Вставить("д7",);
	Запись.Вставить("д8",);
	Запись.Вставить("д9",);
	Запись.Вставить("д10",);
	Запись.Вставить("д11",);
	Запись.Вставить("д12",);
	Запись.Вставить("д13",);
	Запись.Вставить("д14",);
	Запись.Вставить("д15",);
	Запись.Вставить("д16",);
	Запись.Вставить("д17",);
	Запись.Вставить("д18",);
	Запись.Вставить("д19",);
	Запись.Вставить("д20",);
	Запись.Вставить("д21",);
	Запись.Вставить("д22",);
	Запись.Вставить("д23",);
	Запись.Вставить("д24",);
	Запись.Вставить("д25",);
    	Запись.Вставить("д26",);
	Запись.Вставить("д27",);
	Запись.Вставить("д28",);
	Запись.Вставить("д29",);
	Запись.Вставить("д30",);
    	Запись.Вставить("д31",);

Не ожидал от своего коллеги такого говнокода :) Хорошо, что в месяце не 100 дней ;_)
Данный код можно заменить
Для й = 1 По 31 Цикл
Запись.Вставить("д" + Строка(й));
КонецЦикла;

tiger_x tiger_x, (Updated )

Комментарии (26, +26)

Бухгалтерия / Говнокод #2901 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
Для й = 1 По КонДата-НачДата+1 Цикл
        ТекДата = НачДата+й-1;
        
        ДокТ.ВыбратьДокументы(ТекДата, ТекДата);
        Пока ДокТ.ПолучитьДокумент() = 1 Цикл

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

Lewkee Lewkee, (Updated )

Комментарии (9, +9)

Бухгалтерия / Говнокод #2805 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
ТаблицаДоговоров = ДоговораМенеджера.Выгрузить();
ТаблицаДоговоров.Свернуть("Договор");

		
ЗапросПоДоговорам = новый Запрос;
ЗапросПоДоговорам.УстановитьПараметр("НаДату", Дата);
ЗапросПоДоговорам.УстановитьПараметр("СписокДоговоров", ТаблицаДоговоров.ВыгрузитьКолонку("Договор"));

ЗапросПоДоговорам.Текст = 
"ВЫБРАТЬ
|	ОтветственныеПоДоговорамСрезПоследних.Договор,
|	ОтветственныеПоДоговорамСрезПоследних.Приложение,
|	ОтветственныеПоДоговорамСрезПоследних.ВидОтветственного,
|	ОтветственныеПоДоговорамСрезПоследних.Ответственный,
|	СтатусыДоговоровСрезПоследних.Статус,
|	ПриложенияДоговоровСрезПоследних.КонецПриложения
|ИЗ
|	РегистрСведений.ОтветственныеПоДоговорам.СрезПоследних(&НаДату, Договор В (&СписокДоговоров)) КАК ОтветственныеПоДоговорамСрезПоследних
|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыДоговоров.СрезПоследних(&НаДату, Договор В (&СписокДоговоров)) КАК СтатусыДоговоровСрезПоследних
|		ПО ОтветственныеПоДоговорамСрезПоследних.Договор = СтатусыДоговоровСрезПоследних.Договор
|			И ОтветственныеПоДоговорамСрезПоследних.Приложение = СтатусыДоговоровСрезПоследних.Приложение
|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПриложенияДоговоров.СрезПоследних КАК ПриложенияДоговоровСрезПоследних
|		ПО ОтветственныеПоДоговорамСрезПоследних.Договор = ПриложенияДоговоровСрезПоследних.Договор
|			И ОтветственныеПоДоговорамСрезПоследних.Приложение = ПриложенияДоговоровСрезПоследних.Приложение";
ТаблицаДоговоровИСтатусов = ЗапросПоДоговорам.Выполнить().Выгрузить();

так вот пишет наш ведущий программист. Зачем сворачивать???

Sameccc Sameccc, (Updated )

Комментарии (19, +19)

Бухгалтерия / Говнокод #2804 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
ТаблицаДоговоров = ДоговораМенеджера.Выгрузить();
ТаблицаДоговоров.Свернуть("Договор");

		
ЗапросПоДоговорам = новый Запрос;
ЗапросПоДоговорам.УстановитьПараметр("НаДату", Дата);
ЗапросПоДоговорам.УстановитьПараметр("СписокДоговоров", ТаблицаДоговоров.ВыгрузитьКолонку("Договор"));

ЗапросПоДоговорам.Текст = "ВЫБРАТЬ
								  |	ОтветственныеПоДоговорамСрезПоследних.Договор,
								  |	ОтветственныеПоДоговорамСрезПоследних.Приложение,
								  |	ОтветственныеПоДоговорамСрезПоследних.ВидОтветственного,
								  |	ОтветственныеПоДоговорамСрезПоследних.Ответственный,
								  |	СтатусыДоговоровСрезПоследних.Статус,
								  |	ПриложенияДоговоровСрезПоследних.КонецПриложения
								  |ИЗ
								  |	РегистрСведений.ОтветственныеПоДоговорам.СрезПоследних(&НаДату, Договор В (&СписокДоговоров)) КАК ОтветственныеПоДоговорамСрезПоследних
								  |		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыДоговоров.СрезПоследних(&НаДату, Договор В (&СписокДоговоров)) КАК СтатусыДоговоровСрезПоследних
								  |		ПО ОтветственныеПоДоговорамСрезПоследних.Договор = СтатусыДоговоровСрезПоследних.Договор
								  |			И ОтветственныеПоДоговорамСрезПоследних.Приложение = СтатусыДоговоровСрезПоследних.Приложение
								  |		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПриложенияДоговоров.СрезПоследних КАК ПриложенияДоговоровСрезПоследних
								  |		ПО ОтветственныеПоДоговорамСрезПоследних.Договор = ПриложенияДоговоровСрезПоследних.Договор
								  |			И ОтветственныеПоДоговорамСрезПоследних.Приложение = ПриложенияДоговоровСрезПоследних.Приложение";
								  
		
		ТаблицаДоговоровИСтатусов = ЗапросПоДоговорам.Выполнить().Выгрузить();

так вот пишет наш ведущий программист. Зачем сворачивать???

Sameccc Sameccc, (Updated )

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

Бухгалтерия / Говнокод #2773 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
Процедура СформироватьТаблицуГрафика()
	//Заполнение месяцев
	Для НомерМесяца = 1 По 12 Цикл
		
		НомерГода = Число(Прав(Год(ТекущаяДата()), 1));
		ДатаМесяца = Дата(НомерГода, НомерМесяца, 1);
		ДнейВМесяце = День(КонецМесяца(ДатаМесяца));

		НоваяСтрока = КалендарьНаборЗаписей.Добавить();
		НазваниеМесяца = Формат(ДатаМесяца, "ДФ=""ММММ""");
		НоваяСтрока.Установить(0, НазваниеМесяца);
		НоваяСтрока.НомерМесяца = НомерМесяца;
		
	КонецЦикла;
КонецПроцедуры

Помимо дикости написанного, эта штука не работает в 2010 году.

Зарплата и Управление Персоналом 2.5.18.3

Smallrat Smallrat, (Updated )

Комментарии (5, +5)