- 1
Ячейка = ТабДокумент.НайтиТекст("Уважаемые Клиенты! Мы стараемся");
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−49
Ячейка = ТабДокумент.НайтиТекст("Уважаемые Клиенты! Мы стараемся");
−35
Функция ПредопределенныйЭлемент(Знач ПолноеИмяПредопределенного) Экспорт
ИмяПредопределенного = ВРег(ПолноеИмяПредопределенного);
Точка = СтрНайти(ИмяПредопределенного, ".");
ИмяКоллекции = Лев(ИмяПредопределенного, Точка - 1);
ИмяПредопределенного = Сред(ИмяПредопределенного, Точка + 1);
Точка = СтрНайти(ИмяПредопределенного, ".");
ИмяТаблицы = Лев(ИмяПредопределенного, Точка - 1);
ИмяПредопределенного = Сред(ИмяПредопределенного, Точка + 1);
ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 Ссылка ИЗ &ПолноеИмяТаблицы ГДЕ ИмяПредопределенныхДанных = &ИмяПредопределенного";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПолноеИмяТаблицы", ИмяКоллекции + "." + ИмяТаблицы);
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("ИмяПредопределенного", ИмяПредопределенного);
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Возврат Результат.Выгрузить()[0].Ссылка;
КонецЕсли;
Возврат Неопределено;
КонецФункции
Видимо, таким образом разработчики стандартных подсистем решили бороться с ошибкой платформы, когда при попытке получения некорректного значения падает рабочий процесс.
Клин-клином, говнокод-говнокодом.
−98
Если Не ЕстьОшибки Тогда
СформироватьФайлы(КоличествоФайлов, Объект.ВидВыгрузки, ВыгружатьСведенияОЗданиях, ВыгружатьДоговорыУправления, ВыгружатьСпособыФормированияФондаКР, ВыгружатьЗаявкиНаДобавлениеВременныхАдресов,
Объект.КаталогВыгрузки, МакетЗаявокНаДобВА, МакетСФКР, МакетМКД, МакетЖД, МакетДУ, МакетЛС, МакетПУ, МакетРасчетыРСО, МакетДОИ, ДополнительныеСоглашенияДУ, ДополнительныеУслугиДУ,
КоммунальныеУслугиДУ, ТаблицаДУ, ТаблицаЖД, ТаблицаЖилыхПомещений, ТаблицаКодовУслуг, ТаблицаКомнатЖД, ТаблицаКомнатМКД, ТаблицаЛицевыхСчетов, ТаблицаМКД, ТаблицаНежилыхПомещений,
ТаблицаПодъездов, КоличествоПартийМКД, КоличествоПартийЖД, СформированныеФайлы, ЭтотОбъект, СтруктураИменТаблицФормы, ТаблицаЗаявокНаДобВА, ТаблицаСФКР, ТаблицаСостоянияРасчетовРСОПериоды,
ТаблицаСостоянияРасчетовРСОДоговоры, Истина);
КонецЕсли;
хоть убей, ну зачем так?????
−104
//-------------------------------------
Процедура ПриНачалеРаботыСистемы()
//Ограничиваем цикл на пользователей...
Если (СокрЛП(ИмяПользователя())="Вася") тогда
//Делаем вызов процедуры "Оповещение" раз в 3600 секунд (1 час)...
ОбработкаОжидания("Оповещение",3600);
КонецЕсли;
КонецПроцедуры
Когда надо сделать циклическое обращение к другой процедуре через определённое кол-во времени...
−101
Функция ПроверкаЗаполнения()
Если НЕ ЗначениеЗаполнено(Контрагент) Тогда
Предупреждение("Не выбран контрагент!");
Возврат Ложь;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ВалютаДокумента) Тогда
Предупреждение("Не выбрана валюта документа!");
Возврат Ложь;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ДатаОкончания) Тогда
Предупреждение("Не выбрана дата окончания периода сверки!");
Возврат Ложь;
КонецЕсли;
Если ДатаОкончания < ДатаНачала Тогда
Предупреждение("Неверно задан период сверки расчетов!");
Возврат Ложь;
КонецЕсли;
Возврат Истина;
КонецФункции
Как нужно дрочить пользаков.
−99
Для каждого зн Из масЗначСтр Цикл
столбик=столбик+1;
ЕСЛИ столбик <5 Тогда
Продолжить;
ИНАЧЕЕСЛИ столбик =6 ИЛИ столбик =7 ИЛИ столбик =9 Тогда
Продолжить;
ИНАЧЕЕСЛИ (столбик >10) И (столбик <19) Тогда
Продолжить;
ИНАЧЕЕСЛИ (столбик >19) И (столбик <24) Тогда
Продолжить;
ИНАЧЕЕСЛИ (столбик >24) И (столбик <28) Тогда
Продолжить;
ИНАЧЕЕСЛИ (столбик =29) Тогда
Продолжить;
ИНАЧЕЕСЛИ (столбик >30) Тогда
Продолжить;
ИНАЧЕ
номЗнач = номЗнач + 1;
Если номЗнач>4 Тогда
Прервать;
Иначе
новСтр[номЗнач] = СтрЗаменить(зн,символОграничения,"""");
//Запомним сразу дату
Если номЗнач=3 Тогда
Сдата=зн;
КонецЕсли;
А=1;
КонецЕсли;
КОНЕЦЕСЛИ;
КонецЦикла;
выборка элементов массива, зная позицию этих элементов
−41
//Уберобмен за 96К!
//Выгрузка перемещений как товарной-накладной и оприходования.
МассивСкладовОтправителей = Новый Массив;
МассивСкладовПолучателей = Новый Массив;
МассивСкладовОтправителей.Добавить(Справочники.Склады.НайтиПоНаименованию("Главный"));
МассивСкладовОтправителей.Добавить(Справочники.Склады.НайтиПоНаименованию("Фасовочный цех"));
МассивСкладовОтправителей.Добавить(Справочники.Склады.НайтиПоНаименованию("Резерв"));
МассивСкладовОтправителей.Добавить(Справочники.Склады.НайтиПоНаименованию("Маркировка"));
МассивСкладовОтправителей.Добавить(Справочники.Склады.НайтиПоНаименованию("Потребительский"));
МассивСкладовПолучателей.Добавить(Справочники.Склады.НайтиПоНаименованию("Бокс 1"));
МассивСкладовПолучателей.Добавить(Справочники.Склады.НайтиПоНаименованию("Бокс 2"));
МассивСкладовПолучателей.Добавить(Справочники.Склады.НайтиПоНаименованию("Бокс 3"));
Если МассивСкладовОтправителей.Найти(Источник.СкладОтправитель) = Неопределено
ИЛИ МассивСкладовПолучателей.Найти(Источник.СкладПолучатель) = Неопределено Тогда
Отказ = Истина;
КонецЕсли;
−98
Процедура КнопкаВыполнитьНажатие(Кнопка)
Кавычка = """";
ПереносСтроки = Символы.ПС;
Строка = "Процедура КнопкаВыполнитьНажатие(Кнопка) Кавычка = ; ПереносСтроки = Символы.ПС; Строка = ; Сообщить (ПереносСтроки + Лев(Строка, 40) + ПереносСтроки + Сред(Строка, 41, 11) + Кавычка + Кавычка + Кавычка + Кавычка + Сред(Строка, 52, 1) + ПереносСтроки + Сред(Строка, 53, 28) + ПереносСтроки + Сред(Строка, 81, 10) + Кавычка + Строка + Кавычка + Сред(Строка, 91, 1) + ПереносСтроки + Сред(Строка, 92, 198) + ПереносСтроки + Сред(Строка, 290, 194) + ПереносСтроки + Сред(Строка, 485)); КонецПроцедуры";
Сообщить (ПереносСтроки + Лев(Строка, 40) + ПереносСтроки + Сред(Строка, 41, 11) + Кавычка + Кавычка + Кавычка + Кавычка + Сред(Строка, 52, 1) + ПереносСтроки + Сред(Строка, 53, 28) + ПереносСтроки
+ Сред(Строка, 81, 10) + Кавычка + Строка + Кавычка + Сред(Строка, 91, 1) + ПереносСтроки + Сред(Строка, 92, 198) + ПереносСтроки + Сред(Строка, 290, 194) + ПереносСтроки + Сред(Строка, 485));
КонецПроцедуры
1С квайн
−93
Для эстетов. Мы за это платим овердохуя, в получаем:
Текст.запроса = Текст.Запроса + Сред(ТекстЗапроса,Врезка8+33,Врезка9-Врезка8+24-33+1) ;
Мало того - что тут по буквам ТЕКСТ собирают, так еще и ошиблись - не +33 а +33-3 надо! ПИЗДЕЦ!
Вот эта хуета - Сред(ТекстЗапроса,Врезка8+33,Врезка9-Врезка8+24-33+1) - возвращает "ОР" - и компилятор орет на ошибку
А вот эта наша хуета - Сред(ТекстЗапроса,Врезка8+33-3,Врезка9-Врезка8+24-33+1) - возвращает "ВЫБОР" в все заебись работает.
Из глубин прикладной 1С
−97
Функция ПроставитьНули (ЧислоНулей)
Если ЧислоНулей = 7 Тогда
СтрокаНулей = "000000";
ИначеЕсли ЧислоНулей = 6 Тогда
СтрокаНулей = "00000";
ИначеЕсли ЧислоНулей = 5 Тогда
СтрокаНулей = "0000";
ИначеЕсли ЧислоНулей = 4 Тогда
СтрокаНулей = "000";
ИначеЕсли ЧислоНулей =3 Тогда
СтрокаНулей = "00";
ИначеЕсли ЧислоНулей =2 Тогда
СтрокаНулей = "0";
ИначеЕсли ЧислоНулей =1 Тогда
СтрокаНулей = "0";
КонецЕсли;
Возврат СтрокаНулей;
КонецФункции
Разгребал завалы от предшественника. Случайно наткнулся.
Правильно было бы так:
Функция ПроставитьНули (ИсходноеЧисло, ЧислоНулей)
Возврат Формат(ИсходноеЧисло, "ЧЦ="+ЧислоНулей+"; ЧВН=; ЧГ=0");
КонецФункции