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

    −98

    1. 1
    Если ЗапретНаСозданиеРаходныхПоФирме(Фирма, Родитель) И ЭтоТакиНовый Тогда

    таки да, таки новый

    alexinzaz, 06 Августа 2015

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

    −99

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

    Блокировка в цикле это грустно мистер Громозека.

    bugagashka, 04 Августа 2015

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

    −175

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Кавычка      = Символ(КодСимвола("""",1));
    	Если   ЗначениеЗаполнено(Подразделение)  Тогда
    		   ОбластьПоставщик.Параметры.ПредставлениеПоставщика  = "ОАО " + Кавычка+  "XXX"+Кавычка +" " + " (" + Подразделение + ")";
    	ИНаче
    		  ОбластьПоставщик.Параметры.ПредставлениеПоставщика = Организация.КраткоеНаименование;
    	КонецЕсли;

    Текстовые константы в коде и 1С - созданы друг для друга! Особенно доставляет нестандартное использование кавычек.

    a8899, 15 Июля 2015

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

    −102

    1. 1
    2. 2
    3. 3
    4. 4
    Если Не Запрос.Выполнить().Пустой() Тогда 
      
       ЗаголовокЛиста.Параметры.Подразделение = Запрос.Выполнить().Выгрузить().Получить(0).Подразделение;
       ЗаголовокЛиста.Параметры.Должность = Запрос.Выполнить().Выгрузить().Получить(0).Должность;

    Прелестно, не так ли?

    Bazooka, 14 Июля 2015

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

    −105

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    Функция КонтрИскл8(код)
        
        КонтрИскл8=Справочники.Контрагенты.НайтиПоКоду(Код).Ссылка.ДополнительныеРеквизиты.Найти(ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Код_").Ссылка).Значение;
        Искл8=КонтрИскл8;
        Возврат Искл8; 
        
    КонецФункции

    Укоадено с mista.ru. Не мог не поделиться. Когда впервые увидел, мой взгляд был примерно таким - 0_0

    portwein, 02 Июля 2015

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

    −105

    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
    Г = 0;
    Пока Г = 0 Цикл
    	ПОПЫТКА
    		Док.РазрешитьОтгрузку = Перечисление.Булево.Да;
    		Док.Записать();
    	ИСКЛЮЧЕНИЕ
    		Сообщить("" + Г + " : Документ " + Док.НомерДок + " заблокирован. Пробую еще раз ...");
    		Если Г > 20 Тогда
    			Сообщить("Неудачка...");
    			Прервать;
    		КонецЕсли;
    	КОНЕЦПОПЫТКИ;
    	Г = Г + 1;
    КонецЦикла;

    dsfix, 19 Июня 2015

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

    −106

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

    Когда в наследство достается процедура печати, написанная одним, дополненная другим и порученная тебе переписать.

    lyakusha, 03 Июня 2015

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

    −107

    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
    НачальнаяДата = НачДата;
    	КонечнаяДата = КонДата;
    	НачальныйМесяц = Месяц(НачальнаяДата);
    	КонечныйМесяц = Месяц(КонечнаяДата);
    	
    	Если (НачальныйМесяц < КонечныйМесяц) ИЛИ (НачальныйМесяц = КонечныйМесяц) Тогда
    		КоличествоМесяцев = (Месяц(КонецМесяца(КонечнаяДата)) - Месяц(НачалоМесяца(НачальнаяДата))) + 1;
    		КонечнаяДата = КонецМесяца(НачальнаяДата);
    		Если КоличествоМесяцев > 0 Тогда 			
    			Для Сч = 1 По КоличествоМесяцев Цикл			
    				ВыгрузитьРасчеты(НачальнаяДата,КонечнаяДата);
    				Сообщить(""+ТекущаяДата()+": Выгружен месяц "+Месяц(НачальнаяДата));
    				НачальнаяДата 	= НачалоМесяца(ДобавитьМесяц(НачальнаяДата,1));
    				КонечнаяДата 	= КонецМесяца(НачальнаяДата);
    			КонецЦикла; 			
    		КонецЕсли;
    	Иначе ////переход года
    		КолМесДоКонцаГода = (12-НачальныйМесяц)+1;
    		КолМесСНачалоГода = КонечныйМесяц;
    		///выгрузка месяцев с прошлого года
    		КонечнаяДата = КонецМесяца(НачальнаяДата);		
    		Для Сч = 1 По КолМесДоКонцаГода Цикл			
    				ВыгрузитьРасчеты(НачальнаяДата,КонечнаяДата);
    				Сообщить(""+ТекущаяДата()+": Выгружен месяц "+Месяц(НачальнаяДата));
    				НачальнаяДата 	= НачалоМесяца(ДобавитьМесяц(НачальнаяДата,1));
    				КонечнаяДата 	= КонецМесяца(НачальнаяДата);
    		КонецЦикла; 			
    		////выгрузка месяцев нового года
    		НачальнаяДата = НачалоГода(КонечнаяДата);
    		КонечнаяДата = КонецМесяца(НачальнаяДата);		
    		Для Сч = 1 По КолМесСНачалоГода Цикл			
    				ВыгрузитьРасчеты(НачальнаяДата,КонечнаяДата);
    				Сообщить(""+ТекущаяДата()+": Выгружен месяц "+Месяц(НачальнаяДата));
    				НачальнаяДата 	= НачалоМесяца(ДобавитьМесяц(НачальнаяДата,1));
    				КонечнаяДата 	= КонецМесяца(НачальнаяДата);
    		КонецЦикла; 		
    	КонецЕсли;

    Насколько я понял это была попытка помесячного обхода с начальной даты по конечную указанную.
    Как я понял вторая часть условия даже не отрабатывала и работало на половину. Но фантазия у автора конечно сказочная...
    Переписал данное Г* в 5 строк.

    З.Ы. человек этот сидел за 120р.мес...

    Goggy, 02 Июня 2015

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

    −106

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    ДокументРасчетовСКонтрагентом = СсылкаНаОбъект.ДокументОснование;
    
    Для ы = 1  По 100 Цикл
    	Если ТипЗнч(ДокументРасчетовСКонтрагентом) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда
    		Прервать;
    	Иначе
    		ДокументРасчетовСКонтрагентом = ДокументРасчетовСКонтрагентом.ДокументОснование;
    	КонецЕсли;
    КонецЦикла;

    С вероятностью 100% доберемся до нужного документа

    grandatlant, 27 Мая 2015

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

    −105

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Филиал = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПараметрыСеанса.ТекущийПользователь, "ОсновнойФилиал");
    
    Если НЕ ЗначениеЗаполнено(Филиал) Тогда
    	Филиал = Филиал;
    КонецЕсли;

    Не заполнен - значит заполним!

    grandatlant, 27 Мая 2015

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