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

    −160

    1. 1
    2. 2
    3. 3
    Если Год (ТекДата) = 1 Тогда
      ТекДата = ТекущаяДата ();
     КонецЕсли;

    вот так надо проверять дату на заполненность!

    alexinzaz, 14 Июля 2014

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

    −165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    Процедура ОбработкаПроведения(Отказ, РежимПроведения)
    
    ........
    
    
    	если ЭтотОбъект.Проведен тогда 
    		Сообщить("Уже проведений, терміни не рухаємо");
    	иначе    ЭтотОбъект.ПолучитьФорму().Открыть();
    			     Сообщить("А тепер нажміть ОК");
            КонецЕсли;
    
    КонецПроцедуры // ОбработкаПроведения()

    омг...

    alexinzaz, 25 Июня 2014

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

    −164

    1. 1
    2. 2
    3. 3
    Процедура глЗагрузитьЗаказы() Экспорт
    	ОткрытьФорму("Отчет",,"\\SQLDSTR\1C\ExtERT\InvoiceLoader.ert");
    КонецПроцедуры

    Встретил в самописке в клюшках. Если поменяется имя сервера или каталога - всё рухнет).

    zinkovskiy, 16 Июня 2014

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

    −165

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

    Прям классика жанра) Запрос в цикле, и условие к виртуальной таблице регистра сведений)

    adc5, 13 Июня 2014

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

    −127

    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
    Function Розница()
    	If Покупатель.Выбран() = 1 Then
    		If Покупатель.Вид() = "ПунктДоставки" Then
    			If Покупатель.Владелец.ТипЦенОтгрузки = Enum.ТипыОтпускныхЦен.Розничные Then
    				Return 1;
    			Else
    				Return 0;
    			EndIf;
    		Else
    			Return 0;
    		EndIf;
    	Else
    		Return 0;
    	EndIf;
    EndFunction

    Сегодня наткнулся на такой вот кусок кода

    TekhnoLife, 10 Июня 2014

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

    −130

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Запрос.Текст = "
    |...
    | И УслугиОказанные.Проведен = &Истина
    |...";
    Запрос.УстановитьПараметр("Истина", Истина);

    Вот как бывает когда людям платят за количество строк.
    Коллега нашёл в отчёте из БГУ 1.0.

    Voittamaton, 04 Июня 2014

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

    −125

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Процедура ПриОткрытии()
    	Если ЭтоНовый() И НЕ РольДоступна("СуперАдмин") Тогда
                  ЭтаФорма.Закрыть();
    	      Возврат;
    	КонецЕсли;
    КонецПроцедуры

    УТ 10.3. Такие перлы добавлены почти во все документы конфигурации

    105_306330_ru, 28 Мая 2014

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

    −123

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    ИначеЕсли  Отправитель = "h*@**k.ua" Тогда
      НовыйДокумент.Услуга   = Справочники.Услуги.НайтиПоКоду("0000000029");
     ИначеЕсли  Отправитель = "*******@**k.ua" Тогда
      НовыйДокумент.Услуга   = Справочники.Услуги.НайтиПоКоду("0000000029");
      НовыйДокумент.Ответственный = Справочники.Сотрудники.НайтиПоКоду("0000000063");
     КонецЕсли;

    alexinzaz, 23 Мая 2014

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

    −132

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() И Выборка.Количество() > 0 Тогда
    	Возврат Выборка.ПлощадьДома;
    Иначе
    	Возврат 0;
    КонецЕсли;

    проверка пустая ли выборка по одному из принципов:
    "больше лучше, чем меньше", "доверяй, но проверяй", "семь раз отмерь, один отрежь"

    Olna, 21 Мая 2014

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

    −126

    1. 1
    2. 2
    3. 3
    4. 4
    Запрос = Новый Запрос("
    |ВЫБРАТЬ ПЕРВЫЕ 1000
    |.....");
    ВыборкаДанных = Запрос.Выполнить().Выгрузить();

    Код из правила выгрузки данных с произвольным запросом.
    Ведущий программист: "Блин, почему каждый раз выгружается разное количество объектов? Это же мистика!!!"

    Voittamaton, 06 Мая 2014

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