Бухгалтерия / Говнокод #14111 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
Запрос.Текст = ""
//...
ГДЕ
	ВЫБОР
		КОГДА ЕСТЬNULL(ВТМоделиПоставщика.КодМоделиПоставщика, "") = ""
			ТОГДА 0
		ИНАЧЕ 1
	КОНЕЦ = 0
//...

Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		Если  СтрДлина(ВыборкаДетальныеЗаписи.КодМоделиПоставщика) <> 0 Тогда 
                //...
                КонецЕсли;
КонецЦикла;

Масло масляное. Захочешь нарочно такое придумать - не получится.

rull9ss rull9ss, (Updated )

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

Бухгалтерия / Говнокод #14108 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 rull9ss, (Updated )

Комментарии (8, +8)

Бухгалтерия / Говнокод #13951 Ссылка на оригинал

0

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

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

zfilin zfilin, (Updated )

Комментарии (22, +22)

Бухгалтерия / Говнокод #13761 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 rull9ss, (Updated )

Комментарии (44, +44)

Бухгалтерия / Говнокод #13719 Ссылка на оригинал

0

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

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

PragramistOtBoga PragramistOtBoga, (Updated )

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

Бухгалтерия / Говнокод #13518 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 doom2good, (Updated )

Комментарии (10, +10)

Бухгалтерия / Говнокод #13437 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 doom2good, (Updated )

Комментарии (10, +10)

Бухгалтерия / Говнокод #13435 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 Danik, (Updated )

Комментарии (6, +6)