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

    −168

    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
    Процедура ПараметрНачалоВыбора(Элемент, СтандартнаяОбработка)
    	
    	СтандартнаяОбработка=Ложь;
    	ПараметрВладелец=Справочники.ПараметрыНоменклатуры.ПустаяСсылка();
    	ТипМетаданных = Метаданные.НайтиПоТипу(ТипЗнч(Элемент.Значение));
    	
    	ОткрываемаяФорма  = ПолучитьФорму(ТипМетаданных.ПолноеИмя()+".ФормаВыбора");
    	
    	Отборы = Новый Структура("ТипПараметра,Подчинен",ВидНоменклатуры[Элемент.Имя],ПараметрВладелец);
    	Для Каждого ЭлементСтруктуры из Отборы Цикл
    		ЭлементОтбора = ОткрываемаяФорма.Отбор.Найти(ЭлементСтруктуры.Ключ);
    		Если Не ЭлементОтбора = Неопределено  Тогда
    			ЭлементОтбора.Установить(ЭлементСтруктуры.Значение);
    		КонецЕсли;	
    	КонецЦикла;	
    	ОткрываемаяФорма.НачальноеЗначениеВыбора = Элемент.Значение;
    	ОткрываемаяФорма.ОткрытьМодально(); 	
    	ЭтотОбъект[Элемент.Имя] = ОткрываемаяФорма.ТекущийЭлемент.ТекущаяСтрока;
    	ПараметрПриИзменении(Элемент);
    	
    КонецПроцедуры

    Процедура НачалоВыбора в конфе одного из клиентов. Что-то смущает, но не могу понять что.

    rull9ss, 19 Ноября 2013

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

    −94

    1. 1
    2. 2
    3. 3
    ЦЫТАТЫ ВЕЛИКЕХ ЛЮДЕЙ:
                 "МАМКУ ТВАЙУ И БАЛ ЛАЛКА ЗАТРАЛИНАЯ)))0)0000))00"
                                             -PragramistOtBoga

    PragramistOtBoga, 22 Октября 2013

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

    −167

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

    Что делать, если не получилось провести документ? Правильно! Попробовать еще раз!
    А потом еще и записать.
    Для надежности.

    zfilin, 15 Октября 2013

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

    −167

    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
    Если ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003726") Тогда //000003726 - Автолюкс 
    	СлужбаДоставкиВСМС = "AvtoLux";
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003727") Тогда //000003727 - Гюнсел 
    	СлужбаДоставкиВСМС = "GUNSEL";
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003725") Тогда //000003725 - Интайм 
    	СлужбаДоставкиВСМС = "InTime";
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003826") Тогда //000003826 - Мист экспресс
    	СлужбаДоставкиВСМС = "Meest-express";
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003932") Тогда //000003932 - Киевские ведомости 
    	СлужбаДоставкиВСМС = "Kievskie vedomosti"	
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003722") Тогда //000003722 - Новая почта
    	СлужбаДоставкиВСМС = "Nova Poshta";	
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003729") Тогда //000003729 - Ночной экспресс
    	СлужбаДоставкиВСМС = "Nochnoi express";
    ИначеЕсли ЗапросСлужбаДоставки.Ссылка = Справочники.Контрагенты.НайтиПоКоду("000003728") Тогда //000003728 - САТ
    	СлужбаДоставкиВСМС = "CAT";
    //.....
    
    КонецЕсли;

    Почти универсальный способ транслитизации наименования контрагента.

    rull9ss, 10 Сентября 2013

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

    −102

    1. 1
    С ПРАЗНИКАМ ШКАЛАТА!

    сиводня празник у шкалаты как харашо што мне в школу ни нада я жы ни шкалата у миня дажы пачка сигарет есть магу фото кинуть если ни верите што я взрослый

    PragramistOtBoga, 02 Сентября 2013

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

    −172

    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
    Наименование=Выборка.Наименование;
    АдресМестонахождения=Выборка.АдресМестонахождения;
    ВнешнийОбъект=Выборка.ВнешнийОбъект;
    ДатаВводаВЭксплуатацию=Выборка.ДатаВводаВЭксплуатацию;
    ДатаВыпуска=Выборка.ДатаВыпуска;
    ДоговорКонтрагента=Выборка.ДоговорКонтрагента;
    ЗаводскойНомер=Выборка.ЗаводскойНомер;
    Изготовитель=Выборка.Изготовитель;
    ИнвентарныйНомер=Выборка.ИнвентарныйНомер;
    КодРегиона=Выборка.КодРегиона;
    КодПоОКОФ=Выборка.КодПоОКОФ;
    Комментарий=Выборка.Комментарий;
    Контрагент=Выборка.Контрагент;
    КонтрагентИсполнительРемонта=Выборка.КонтрагентИсполнительРемонта;
    НомерПаспорта=Выборка.НомерПаспорта;
    ОбъектОсновныхСредств=Выборка.ОбъектОсновныхСредств;
    Организация=Выборка.Организация;
    ПлановыйГрафикРаботы=Выборка.ПлановыйГрафикРаботы;
    Подразделение=Выборка.Подразделение;
    ПодразделениеИсполнительРемонта=Выборка.ПодразделениеИсполнительРемонта;
    Приоритет=Выборка.Приоритет;
    РемонтнаяГруппа=Выборка.РемонтнаяГруппа;
    СрокПолезногоИспользования=Выборка.СрокПолезногоИспользования;
    ТехНомер=Выборка.ТехНомер;
    ТипОборудования=Выборка.ТипОборудования;
    ЭтоГруппаОбъектов=Выборка.ЭтоГруппаОбъектов;

    "Архитектор" явно не был знаком с методом ЗаполнитьЗначенияСвойств()

    doom2good, 31 Июля 2013

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

    −174

    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
    Стр = ТЗОбщая.Добавить();
    Стр.сотрудник = Выборка.сотрудник;
    Стр.Результат = ВЫборка.Результат;
    ИскомаяСтрока = ТЗСотрДатаПриема.Найти(Стр.сотрудник,"Сотрудник");
    Если ИскомаяСтрока <> Неопределено Тогда
    	месяц_ = Месяц(ИскомаяСтрока.ДатаПриемаНаРаботу);
    	если месяц_ > 7 тогда  // чел принят после июля
    		число_ = 12 - месяц_;  //кол-во отработанных месяцев
    	иначе	  
    		число_ = 6 ; 
    	конецесли;	  
    КонецЕсли;	
    число_ = число_+ Месяц(ВыбДата) ;
    если число_ >=12 тогда
    	число_=12;
    конецесли;	 
    Стр.СреднийЗаработок = Окр(ВЫборка.Результат/29.4/число_,2);

    Вот так у нас считают средний заработок за последний год)))

    doom2good, 17 Июля 2013

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

    −126

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Функция ЗначениеСвойства(Объект, ИмяСвойства) Экспорт
    	
    	Возврат Объект[ИмяСвойства]
    	
    КонецФункции

    Пипец полезная функция!

    doom2good, 17 Июля 2013

    Комментарии (30)
  9. 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)
  10. 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)