- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
"ВЫБРАТЬ
| Вопросы.Ссылка,
| Вопросы.Вопрос,
| Вопросы1.Код
|ИЗ
| Справочник.Вопросы КАК Вопросы
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Вопросы КАК Вопросы1
| ПО Вопросы.Ссылка = Вопросы1.Ссылка"
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−102
"ВЫБРАТЬ
| Вопросы.Ссылка,
| Вопросы.Вопрос,
| Вопросы1.Код
|ИЗ
| Справочник.Вопросы КАК Вопросы
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Вопросы КАК Вопросы1
| ПО Вопросы.Ссылка = Вопросы1.Ссылка"
Запросец из обработки, которую толкают (и её даже покупают) за 2к
−156
Govno
−119
Если ПроверятьСкидкиРассчитаны И
ИспользоватьАвтоматическиеСкидки И
Не ДокументПродажи.СкидкиРассчитаны И
ДокументПродажи.ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.ПередачаНаКомиссию Тогда
ПроверятьСкидкиРассчитаны = Истина;
КонецЕсли;
Управление торговлей (11-я редакция)
−136
СОСИТЕ МОЙ ХУЙ, УБЛЮДКИ!!!
−119
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
.....
ГДЕ
.....
И ОсновныеНачисления.Авторасчет = Истина
И ОсновныеНачисления.Авторасчет = Ложь"
Выбрать обязательно различные! :)
−102
Процедура СортировкаСписка(Список)
Перем лСредний;
лЛевый= СоздатьОбъект("СписокЗначений");
лПравый = СоздатьОбъект("СписокЗначений");
Если Список.РазмерСписка()>1 Тогда
лРазмерСписка = Список.РазмерСписка();
лПозицияСреднего = Цел(лРазмерСписка/2);
лСреднее = Список.ПолучитьЗначение(лПозицияСреднего);
Для й = 1 По лРазмерСписка Цикл
Если й<>лПозицияСреднего Тогда
лПроверяемоеЗначение = Список.ПолучитьЗначение(й);
Если лПроверяемоеЗначение<лСреднее Тогда
лЛевый.ДобавитьЗначение(лПроверяемоеЗначение);
ИначеЕсли лПроверяемоеЗначение>лСреднее Тогда
лПравый.ДобавитьЗначение(лПроверяемоеЗначение);
КонецЕсли;
КонецЕсли;
КонецЦикла;
СортировкаСписка(лЛевый);
СортировкаСписка(лПравый);
Список.УдалитьВсе();
Для й = 1 По лЛевый.РазмерСписка() Цикл
Список.ДобавитьЗначение(лЛевый.ПолучитьЗначение(й));
КонецЦикла;
Список.ДобавитьЗначение(лСреднее);
Для й = 1 По лПравый.РазмерСписка() Цикл
Список.ДобавитьЗначение(лПравый.ПолучитьЗначение(й));
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Процедура Выполнить()
ОтсортированныйСписок = СоздатьОбъект("СписокЗначений");
СписокЗначений = СоздатьОбъект("СписокЗначений");
СписокЗначений.ДобавитьЗначение(2);
СписокЗначений.ДобавитьЗначение(7);
СписокЗначений.ДобавитьЗначение(15);
СписокЗначений.ДобавитьЗначение(16);
СписокЗначений.ДобавитьЗначение(20);
СписокЗначений.ДобавитьЗначение(21);
СписокЗначений.ДобавитьЗначение(3);
СписокЗначений.ДобавитьЗначение(5);
СписокЗначений.ДобавитьЗначение(4);
СписокЗначений.ДобавитьЗначение(14);
СписокЗначений.ДобавитьЗначение(12);
СписокЗначений.ДобавитьЗначение(13);
СписокЗначений.ДобавитьЗначение(11);
СписокЗначений.ДобавитьЗначение(19);
СписокЗначений.ДобавитьЗначение(1);
СписокЗначений.ДобавитьЗначение(8);
СписокЗначений.ДобавитьЗначение(6);
СписокЗначений.ДобавитьЗначение(17);
СписокЗначений.ДобавитьЗначение(9);
СписокЗначений.ДобавитьЗначение(10);
СписокЗначений.ДобавитьЗначение(18);
СортировкаСписка(СписокЗначений);
ВыбранноеЗначение = 0;
СписокЗначений.ВыбратьЗначение(ВыбранноеЗначение);
КонецПроцедуры
−119
Функция ЧекМайл(Майл)
Перем Чек;
Если Найти(Майл,"@mail.ru")<>0 Тогда
Чек = 0;
Иначе
Чек = 1;
КонецЕсли;
Возврат Чек;
КонецФункции
...
Если ЧекМайл("[email protected]") = 0 Тогда
Предупреждение("Ой! Что-то пошло не так!");
Предупреждение("Не беспокойтесь, это наша ошибка. Мы уже знаем о ней и примем меры к ее исправлению!");
СтатусВозврата(0);
Возврат;
КонецЕсли;
могли и предупредить ...
−115
Тз = СоздатьОбъект("ТаблицаЗначений");
Тз.НоваяКолонка("Число");
Для й=1 По 100 Цикл
Тз.НоваяСтрока();
Тз.Число = й;
КонецЦикла;
КоличествоСтрокТз = Тз.КоличествоСтрок();
Для й=-КоличествоСтрокТз По -1 Цикл
ЗначениеИзТз = Тз.ПолучитьЗначение(-й,"Число");
ПроверяемоеЗначение = ЗначениеИзТз/2-Цел(ЗначениеИзТз/2);
Если ПроверяемоеЗначение <> 0 Тогда
Тз.УдалитьСтроку(-й);
КонецЕсли;
КонецЦикла;
Тз.ВыбратьСтроку();
Четные числа до 100
−102
ВыборкаДетальныеЗаписи = Результат.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Продукт=ВыборкаДетальныеЗаписи.Продукт;
ЕдИзм=ВыборкаДетальныеЗаписи.ЕдИзмПродукта;
Количество=ВыборкаДетальныеЗаписи.КолвоПродукта;
Если Прав(ВыборкаДетальныеЗаписи.Продукт,6)="1/2 кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,5)="1/2кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="1\2 кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,5)="1\2кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,9)="(500 гр)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,5)="0,5кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="(05кг)" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта/2;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,7)="1/2,5кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(250 гр)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,9)="(0,25 кг)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="0,25кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.25;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,6)="1/4кг." ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,5)="1/4кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="1/4 кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,7)="1/4 кг." ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,5)="0,4кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,3)="1/4" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.4;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="0,085 кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,9)="(0,085кг)" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.085;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,5)="0,7кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.7;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(100 гр)" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.1;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(350 гр)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="350гр." ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="0,35кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,7)="0,35 кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.35;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(450 гр)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,9)="(0,45 кг)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,6)="0,45кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.45;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,5)="1/3кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(0,3 кг)" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,5)="0,3кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.3;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="1\1,8 кг" ИЛИ
Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(0,18кг)" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.18;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="1/1,5 кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.15;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,8)="(0,12кг)" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.12;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,7)="0,08 кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.08;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,7)="0,075кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.75;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,6)="0,03кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.03;
ИначеЕсли Прав(ВыборкаДетальныеЗаписи.Продукт,6)="0,23кг" Тогда
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта*0.23;
Иначе
Цена=Цена+ВыборкаДетальныеЗаписи.ЦенаПродукта;
КонецЕсли;
КонецЦикла;
Отчет почему-то не всегда работал :)
−119
Если НовыйСтатус = Перечисления.веб_СтатусыВебЗаказов.Ожидает Тогда
СтатусЗаказаСтр = "Ожидает";
ИНачеЕсли НовыйСтатус = Перечисления.веб_СтатусыВебЗаказов.Обработан Тогда
СтатусЗаказаСтр = "Обрабатывается";
ИНачеЕсли НовыйСтатус = Перечисления.веб_СтатусыВебЗаказов.Оплачен Тогда
СтатусЗаказаСтр = "Оплачен";
ИНачеЕсли НовыйСтатус = Перечисления.веб_СтатусыВебЗаказов.ОтправленПокупателю Тогда
СтатусЗаказаСтр = "Отгружен";
ИНачеЕсли НовыйСтатус = Перечисления.веб_СтатусыВебЗаказов.Завершен Тогда
СтатусЗаказаСтр = "Готов";
ИНачеЕсли НовыйСтатус = Перечисления.веб_СтатусыВебЗаказов.Отменен Тогда
СтатусЗаказаСтр = "Отменён";
КонецЕсли;
Приведение типов? Нет, не слышал.