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

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

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

    Sameccc, 16 Марта 2010

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

    −131.6

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

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

    Sameccc, 16 Марта 2010

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

    −369.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
    Процедура СформироватьТаблицуГрафика()
    	//Заполнение месяцев
    	Для НомерМесяца = 1 По 12 Цикл
    		
    		НомерГода = Число(Прав(Год(ТекущаяДата()), 1));
    		ДатаМесяца = Дата(НомерГода, НомерМесяца, 1);
    		ДнейВМесяце = День(КонецМесяца(ДатаМесяца));
    
    		НоваяСтрока = КалендарьНаборЗаписей.Добавить();
    		НазваниеМесяца = Формат(ДатаМесяца, "ДФ=""ММММ""");
    		НоваяСтрока.Установить(0, НазваниеМесяца);
    		НоваяСтрока.НомерМесяца = НомерМесяца;
    		
    	КонецЦикла;
    КонецПроцедуры

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

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

    Smallrat, 12 Марта 2010

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

    −125.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Сумма   = МодульВалютногоУчета.ПересчитатьИзВалютыВВалюту(
    		СуммаВал,
    		ВалютаДокумента,
    		ВалютаВзаиморасчетов,
    		МодульВалютногоУчета.ПолучитьКурсВалюты(ВалютаДокумента,Дата).Курс,
    		МодульВалютногоУчета.ПолучитьКурсВалюты(ВалютаВзаиморасчетов,Дата).Курс,
    		МодульВалютногоУчета.ПолучитьКурсВалюты(ВалютаДокумента,Дата).Кратность,
    		МодульВалютногоУчета.ПолучитьКурсВалюты(ВалютаВзаиморасчетов,Дата).Кратность);

    Решение имеет статус 1С:Совместно.
    Один из ведущих партнеров 1С.
    Такой код во многих местах.

    Euguln, 12 Марта 2010

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

    −126.4

    1. 1
    2. 2
    НСтрока = ДокументОбъект.Товары.Добавить();
    НСтрока.ЕдиницаИзмерения = Справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт",,,НСтрока.Номенклатура);

    luns, 12 Марта 2010

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

    −108.4

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

    Автор хотел что бы все документы обязательно проводились по БУ УУ и НУ... И хотел что бы при вводе на основании заполнялось поле проект. Ну почти получилось:))))

    acckiy_koder, 05 Марта 2010

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

    −126.5

    1. 1
    2. 2
    3. 3
    4. 4
    ТаблПоле.Очистить();
    Если (ТаблПоле.Количество() > 0) Тогда
    	Возврат;
    КонецЕсли;

    А вдруг после очистки таблицы значений там всё-таки остались строки?

    polestnize, 27 Февраля 2010

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

    −117.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    ТекВрем = Час(ТекущаяДата())*60+Минута(ТекущаяДата());
    ВремКурсов = 60;
    Если ТекВрем >= ВремКурсов Тогда
    	ВремКурсов = ВремКурсов + 24*60 - ТекВрем;
    Иначе
    	ВремКурсов = ВремКурсов - ТекВрем;
    КонецЕсли;
    ВремКурсов = 1;
    ПодключитьОбработчикОжидания("ЗагрузкаВалютИПересчетУЕ", ВремКурсов*60);

    Вычисляем ВремКурсов, а затем присваиваем этой переменной единицу и умножаем на 60. Рациональность, чорт побери! :-D

    KingOfShit, 11 Февраля 2010

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

    −114.9

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

    Заполнение таблицы значений, очень быстро работает)))
    КоличествоВЗаказе в 2 раза больше получается

    SrK, 04 Февраля 2010

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

    −127.7

    1. 1
    Выбрать * из РегистрСведений.Таблица Где Таблица.ДатаПодтверждения >= ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0))

    Это вот условие писал мой бывший начальник..

    KingOfShit, 29 Января 2010

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