- 1
- 2
- 3
- 4
Запрос = Новый Запрос("
|ВЫБРАТЬ ПЕРВЫЕ 1000
|.....");
ВыборкаДанных = Запрос.Выполнить().Выгрузить();
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−126
Запрос = Новый Запрос("
|ВЫБРАТЬ ПЕРВЫЕ 1000
|.....");
ВыборкаДанных = Запрос.Выполнить().Выгрузить();
Код из правила выгрузки данных с произвольным запросом.
Ведущий программист: "Блин, почему каждый раз выгружается разное количество объектов? Это же мистика!!!"
−166
Функция ЭтоБуква(Буква)
Возврат Найти("еоатинркулмДСвПдОсКцчыгзпбТНИьБФхВяРАЗЭйУЕГМЦжщЙШЩЫЛЯЧЬХЪЖЮЁёшъфэюQWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm", Буква) > 0;
КонецФункции
Функция ЭтоЦифра(Буква)
Возврат Найти("1234567890", Буква)>0;
КонецФункции // ЭтоЦифра()
Функция ЭтоБукваИлиЦифра(Символ)
Возврат Найти("еоатинркулмДСвПдОсКцчыгзпбТНИьБФхВяРАЗЭйУЕГМЦжщЙШЩЫЛЯЧЬХЪЖЮЁёшъфэюQWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm1234567890", Символ) > 0;
КонецФункции // ЭтоБукваИлиЦифра()
Из типовой конфигурации БГУ 2.0.
На первый взгляд реализация забавна :-) Но, в общем-то, это не является говнокодом: просмотрев в гугле различные "рейтинги букв", получил примерно то же самое.
Тем не менее, можно решить вопрос с помощью проверки кода символа.
−162
Процедура ОбождатьПятьСекунд()
Время1 = ТекущаяДата();
Пока ТекущаяДата() <= Время1 + 5 Цикл
КонецЦикла;
КонецПроцедуры
Процедура ОбождатьМенуту()
Н = 1;
Пока Н <= 12 Цикл
ОбождатьПятьСекунд();
Н = Н + 1;
КонецЦикла;
КонецПроцедуры
Процедуры ВыгрузитьВСайт(КоличествоМенут)
Н = 1;
Пока Н <= КоличествоМенут Цикл
ОбождатьМенуту();
Н = Н + 1;
КонецЦикла;
СформероватьОправитьХМЛ();
КонецПроцедуры
В пятницу на собеседование пришёл программист.
Задание было следующим: по определённым правилам сформировать XML-файл для выгрузки в интернет-кабинет. Выгрузка должна была производиться с определённой периодичностью. В клиент-серверной версии нужно было создать регламентное задание.
С заполнением XML-файла программист справился согласно требованиям.
Но, к сожалению, парень не умел работать с регламентными заданиями, поэтому в качестве решения сделал внешнюю обработку с обработчиком ожидания, которая запускалась в отдельном сеансе.
Орфография сохранена :-)
−163
ВЫБОР
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.ЕдиницаХраненияОстатков
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.ЕдиницаДляОтчетов
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.ЕдиницаДляОтчетов.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.ЕдиницаИзмеренияМест
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.ЕдиницаИзмеренияМест.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.бит_п_ЕдиницаПаллет
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.бит_п_ЕдиницаПаллет.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОНЕЦ
−165
...
Возврат ?(НЕ Запрос.Выполнить().Пустой(),Истина,Ложь);
−168
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ДополнительныеСвойства.Свойство("НомерПартииДляСерии") Тогда
ДополнительныеСвойства.Удалить("НомерПартииДляСерии");
КонецЕсли;
Если ЭтоНовый() И РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда
Записать(РежимЗаписиДокумента.Запись);
Записать(РежимЗаписиДокумента.Проведение);
Иначе
Если Не ЭтоНовый() И Не РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения Тогда
НомерСтрокиДокумента = 0;
бит_п_ОбщегоНазначения.ПроверитьИСформироватьСериюНоменклатуры(Ссылка, Продукция, НомерСтрокиДокумента);
бит_п_ОбщегоНазначения.ПроверитьИСформироватьСериюНоменклатуры(Ссылка, Брак, НомерСтрокиДокумента);
КонецЕсли;
КонецЕсли;
Если ЭтоНовый() И РежимЗаписи = РежимЗаписиДокумента.Запись Тогда
Если ДополнительныеСвойства.Свойство("НеобходимоФормироватьСерию") = Ложь Тогда
ДополнительныеСвойства.Вставить("НеобходимоФормироватьСерию", Истина);
Записать(РежимЗаписиДокумента.Запись);
Записать(РежимЗаписиДокумента.Запись);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
У меня нет слов.
НО(!!!) ... это работает как надо :D .
−166
"ВЫБРАТЬ
| СчетСписокНоменклатуры.Номенклатура,
| СУММА(СчетСписокНоменклатуры.Количество) КАК Количество
|ПОМЕСТИТЬ ВТ
|ИЗ
| Документ.СчетНаОплатуПокупателю.Товары КАК СчетСписокНоменклатуры
|ГДЕ
| СчетСписокНоменклатуры.Ссылка = &Ссылка
|
|СГРУППИРОВАТЬ ПО
| СчетСписокНоменклатуры.Номенклатура
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ОстаткиНоменклатурыОстатки.Номенклатура КАК Товар,
| ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток, 0) КАК Свободныйостаток,
| ВТ.Количество,
| ОстаткиНоменклатурыОстатки.Номенклатура.Код КАК Код,
| ОстаткиНоменклатурыОстатки.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдиницаИзмерения
|ИЗ
| ВТ КАК ВТ
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(
| &Дата,
| Номенклатура В
| (ВЫБРАТЬ
| ВТ.Номенклатура
| ИЗ
| ВТ)
| И Склад = &Склад) КАК ОстаткиНоменклатурыОстатки
| ПО ВТ.Номенклатура = ОстаткиНоменклатурыОстатки.Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки КАК ТоварыВРезервеНаСкладахОстатки
| ПО ВТ.Номенклатура = ТоварыВРезервеНаСкладахОстатки.Номенклатура";
Запрос.УстановитьПараметр("Дата", НаДату);
Запрос.УстановитьПараметр("Ссылка", СсылкаДок);
Запрос.УстановитьПараметр("Склад", Склад);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
ЗаменаНоменклатуры = РегистрыСведений.ЗаменаНоменклатуры.СоздатьМенеджерЗаписи();
ЗаменаНоменклатуры.Номенклатура = Результат.Товар;
ЗаменаНоменклатуры.Прочитать();
Если ЗаменаНоменклатуры.Выбран() Тогда
Если Результат.СвободныйОстаток < Результат.Количество Тогда
Сообщить("Недостаточно номенклатуры """+Результат.Товар+"""" + " ("+СокрП(Результат.Код)+") требуется "+Результат.Количество+" "+Результат.ЕдиницаИзмерения+" осталось на складе "+Результат.СвободныйОстаток+" "+Результат.ЕдиницаИзмерения+"!", СтатусСообщения.Внимание);
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;
// Если Результат.СвободныйОстаток = 0 Тогда
// Сообщить("Не хватает "+Результат.Номенклатура+" требуется "+Результат.Количество+" осталось на складе "+Результат.СвободныйОстаток);
// Возврат Истина;
// Иначе
// Возврат Ложь;
// КонецЕсли;
КонецЕсли;
КонецЦикла;
−171
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
если ПараметрыСеанса.ТекущийПользователь.Наименование<>"Администратор" тогда
Сообщить("Данная обработка доступна только для Администратора",СтатусСообщения.Важное);
Отказ=Истина;
конецесли;
КонецПроцедуры
−164
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИ
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
АДМИНИСТРАТОР ВИО ДРОЧИТ НА ДЖАСТИНА БИБИРА ОБМАЗАВШИСЬ ГОВНОМ
МОДЕРАТОРЫ ВИО ЖРУТ ГОВНО АДМИНА ВИО
ХУЙ ПИЗДА ЕБАНАЯ ДЖИГУРДА И СКОВОРОДА
−168
Если СтрНС <> Неопределено Цикл
Если СтрНС.Значение <> Справочники.Номенклатура.ПустаяСсылка() тогда
Тост = ОстаткиПоСкладамУпр(СтрНС.Значение);
Синхро = Истина;
Если Тост[0].Остаток <> 0 тогда
НаличиеНаСкладе = Истина;
Конецесли;
КонецЕсли;
КонецЕсли;
//...
Если НаличиеНаСкладе Тогда
// другой быдлокод
КонецЕсли;
Переменная НаличиеНаСкладе объявляется только один раз во всем модуле, в приведенном мною куске.
Угадай, в каком месте выпадает ошибка?