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

    −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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    ВЫБОР
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 1
    		ТОГДА "01 Январь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 2
    		ТОГДА "02 Февраль"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 3
    		ТОГДА "03 Март"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 4
    		ТОГДА "04 Апрель"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 5
    		ТОГДА "05 Май"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 6
    		ТОГДА "06 Июнь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 7
    		ТОГДА "07 Июль"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 8
    		ТОГДА "08 Август"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 9
    		ТОГДА "09 Сентябрь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 10
    		ТОГДА "10 Октябрь"
    	КОГДА МЕСЯЦ(НДФЛСведенияОДоходах.ДатаПолученияДохода) = 11
    		ТОГДА "11 Ноябрь"
    	ИНАЧЕ "12 Декабрь"
    КОНЕЦ

    Конвертация

    spaceashot, 30 Марта 2017

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

    −23

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

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

    a8899, 15 Июля 2015

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

    +49

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

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

    Bazooka, 14 Июля 2015

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

    +46

    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)
  5. 1C / Говнокод #18368

    +46

    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

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

    +46

    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)
  7. 1C / Говнокод #18268

    +44

    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

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

    +46

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

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

    grandatlant, 27 Мая 2015

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

    +45

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

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

    grandatlant, 27 Мая 2015

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

    +45

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

    Моё творение. =)

    Startwar, 20 Мая 2015

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