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

    Всего: 6

  2. 1C / Говнокод #16695

    −126

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
            НовыйДокумент = Документы.ДокументПредЗаявка.СоздатьДокумент();
             НовыйДокумент.Дата = ТекущаяДата();
             НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
             СПД = НовыйДокумент.Ссылка;
             
             //Открываем документ
             ОткрытьЗначение(СПД);
          
    КонецПроцедуры

    Я не вкурил, но полагаю, что ЭТО новый способ создания документа на основании...

    Danik, 15 Сентября 2014

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

    −166

    1. 1
    Дата = Формат(День(Запись.Период),"ЧЦ=2; ЧРГ=; ЧВН=") + "/" + Формат(Месяц(Запись.Период),"ЧЦ=2; ЧРГ=; ЧВН=") + "/" + Формат(Год(Запись.Период),"ЧГ=");

    О как можно еще получить дату в формате: день/месяц/год.
    Хотя тот же результат будет, если: Дата = Формат(Запись.Период, "ДФ=dd/MM/yyyy");
    И этот бред писал специалист крупной внедренческой компании.

    Danik, 18 Июля 2014

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

    −124

    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
    Procedure mes(aVal) export
      Message(aVal);
    endProcedure
    
    function eqStr(a,b) export
    	result=false;
    	return ВРЕГ(TrimAll(a))=ВРЕГ(TrimAll(b));
    	if ВРЕГ(TrimAll(a))=ВРЕГ(TrimAll(b)) then
      	result=true;
     endif;	
     mes(result);
     return result;
    endfunction

    Форматирование не менял.
    1. Зачем вызывать процедуру "mes", где выводится только сообщение. Когда вывесли сообщение можно там же.
    2. В функции eqStr никогда не выполнится условие и вызов процедуры "mes".

    Danik, 17 Июля 2013

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

    −166

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Function toString(aDate) export
    		s=Format(Строка(aDate),"ДФ=ддMMгггг");
    		return лев(s,10);
    endFunction
    
    .......
    ДатаДД=uDates.toString(Отбор.Дата);
    .......

    Функция находится в общем модуле uDates.
    Вызов функции происходит в одном из документов:

    Danik, 17 Июля 2013

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

    −124

    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
    Function	 ms2Str(Миллисекунды) export
    	КолВоЧасов=Цел(Миллисекунды/(60*60*1000));
    	Остаток=Миллисекунды-КолВоЧасов*60*60*1000;
    	КолВоМинут=Цел(Остаток/(60*1000));
    	Остаток=Остаток-КолВоМинут*60*1000;
    	КолВоСекунд=Цел(Остаток/1000);
    	КолВоМиллисекунд=Остаток-КолВоСекунд*1000;
    	h=Формат(КолВоЧасов,"ЧЦ=3;ЧН=;ЧВН=")+":";
    	if КолВоЧасов=0 then
    		 h="";
     endif;	 
       m=Формат(КолВоМинут,"ЧЦ=2;ЧН=;ЧВН=")+":";	 
     if КолВоМинут=0 then
    	  m="";
    	endif;  
    	return h+m+Формат(КолВоСекунд,"ЧЦ=2;ЧН=;ЧВН=")+":"+Формат(КолВоМиллисекунд,"ЧЦ=3;ЧН=;ЧВН=");
    endFunction

    Перевод время в миллисекундах в строку. Автор: Жуков А.П.

    Danik, 13 Ноября 2012

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

    −125

    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
    procedure setParameters(aq)
     спДекрет= Новый СписокЗначений;
     спДекрет.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускПоБеременностиИРодам);
     спДекрет.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускПоУходуЗаРебенком);
    	
    	
    	aq.setParameter("Дат",КонецДня(НачПериода));
    	aq.setParameter("Уволен",Перечисления.ПричиныИзмененияСостояния.Увольнение);
    	aq.setParameter("Оклад",Перечисления.СпособыРасчетов.Оклад);
    	aq.setParameter("МРП",Перечисления.СпособыРасчетов.КолМРП);
    	aq.setParameter("Сумма",Перечисления.СпособыРасчетов.Сумма);
    	aq.setParameter("Оклад",Перечисления.СпособыРасчетов.ПроцентОтОклада);
    	aq.setParameter("Доход",Перечисления.СпособыРасчетов.ПроцентОтДоходов);
    	aq.setParameter("ПодразделениеОрганизации",ПодразделениеОрганизации);
    	aq.setParameter("ФизЛицо",Работник);
    	aq.setParameter("Должность",Должность);
    	aq.setParameter("ВидЗанятости",ВидЗанятости);
    	aq.setParameter("ТарифныйРазряд",ТРазряд);
    	
    	aq.setParameter("ВРЭкология",ВРЭкология);
    	
    	//Декретники
    	aq.setParameter("Декрет",спДекрет);
    	//Состояние общее
    	aq.setParameter("Состояние",Состояние);
    	aq.setParameter("Сост",Состояние1);
    endprocedure
    
    procedure setБабло(Тз)
    	Тз.Колонки.Добавить("id",new ОписаниеТипов("Строка"));
    	Тз.Колонки.Добавить("Размер",new ОписаниеТипов("Число"));
    endProcedure
    
    ...
    	q=new Query;
    	q.Текст="                                            //--------------------------------------------бабло
    |Select  
    |	ПлановыеНачисленияРаботниковОрганизацийСрезПоследнихКон.Размер,
    |	ПлановыеНачисленияРаботниковОрганизацийСрезПоследнихКон.ФизЛицо.код id
    |from
    |	РегистрСведений.ПлановыеНачисленияРаботниковОрганизаций.СрезПоследних(
    |			&Дат,
    |			ВидРасчета.ЯвляетсяОсновнымНачислением
    |				И Размер <> 0) КАК ПлановыеНачисленияРаботниковОрганизацийСрезПоследнихКон
    |";
    	
    	setParameters(q);
    	бабло=New ТаблицаЗначений;
    	setБабло(бабло);
    	rs=q.Выполнить().Выбрать();
    	while rs.next() do
    			s=бабло.Добавить();
       s.id=rs.id;
       s.Размер=rs.Размер;
    enddo;
     бабло.Индексы.Добавить("id"); 
    ...

    Форматирование текста оставил как есть. Автор: Жуков А.П.

    Danik, 13 Ноября 2012

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