- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Function toString(aDate) export
s=Format(Строка(aDate),"ДФ=ддMMгггг");
return лев(s,10);
endFunction
.......
ДатаДД=uDates.toString(Отбор.Дата);
.......
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Function toString(aDate) export
s=Format(Строка(aDate),"ДФ=ддMMгггг");
return лев(s,10);
endFunction
.......
ДатаДД=uDates.toString(Отбор.Дата);
.......
Функция находится в общем модуле uDates.
Вызов функции происходит в одном из документов:
0
// Функция возвращает округленное значение общего количества продуктов питания.
//
// Параметры:
// Число - число, которое необходимо округлить.
// Порядок - число, порядок округления.
Функция УППБУ_Округлить(Число, ПорядокОкругления) Экспорт
Порядок = Число(Строка(ПорядокОкругления));
..........
КонецФункции
Тиражное решение от одного из партнеров...
0
КоличествоСтрокТоваров = Документы.РеализацияТоваровУслуг.ПолучитьСсылку(ЭтотОбъект.Ссылка.УникальныйИдентификатор()).Товары.Количество();
программист-снайпер, убивает одной строкой кода.
0
//сохраним уже начисленные услуги
Если УслугиПоГрафику.Количество() > 0 Тогда
ПромежуточнаяТаблица = УслугиПоГрафику.Выгрузить();
УслугиПоГрафику.Очистить();
Для Каждого СтрокаТЗ Из ПромежуточнаяТаблица Цикл
НоваяСтрока = УслугиПоГрафику.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаТЗ);
КонецЦикла;
КонецЕсли;
Видимо изначально здесь что-то делалось с данными в таблице, потом было не глядя удалено, в результате остался вот такой кусок медитативного кода.
0
Если Найти(Строка(ТипЗнч(Ссылка)),"Документ") Тогда
Проверка, является ли переданная ссылка документом. Сегодня без авторства.
0
Ученик 1С спросил у своего учителя: что означает аббревиатура "Один Эс"?
Учитель долго думал и наконец ответил ему:
- "Один" - это когда солнечный день и воняет из трубы, это "Один"
А "Эс", что такое "Эс", - спросил ученик
- "Эс" - это когда солнечный день и опять же воняет из трубы
Если бы у 1С были коаны, они выглядели бы примерно так.
По мотивам к/ф "Моцарт" 2006
0
//подписка ПередЗаписью
ИначеЕсли ТипЗнч(Источник) = Тип("ДокументОбъект.КонтрольПлатежейПросрочка") Тогда
Если Источник.ПометкаУдаления Тогда
мНабор=РегистрыНакопления.КонтрольПлатежейПросрочка.СоздатьНаборЗаписей();
мНабор.Отбор.Регистратор.Установить(Источник.Ссылка);
мНабор.Записать();
Попытка
Источник.Удалить();
Исключение КОнецПопытки;
Отказ=Истина;
КонецЕсли;
Удалить документ в транзакции "перед записью" при пометке удаления - это сильно, а "Попытка" - так, на всякий случай, а чтобы продолжения банкета не было - Отказ. Звезда Хан Ю.В.
0
Функция УбратьПробелы(Строка)
ВозвратСтрока = "";
Сч = 1;
ДлинаСтроки = СтрДлина(Строка);
Пока Сч <= ДлинаСтроки Цикл
Если КодСимвола(Строка, Сч) <> 160 Тогда
ВозвратСтрока = ВозвратСтрока + Символ(КодСимвола(Строка, Сч));
КонецЕсли;
Сч = Сч + 1;
КонецЦикла;
Возврат ВозвратСтрока;
КонецФункции
Видимо
Строка = СтрЗаменить(Строка, Символ(160), "");
выглядело слишком неочевидно, пробелы же нестандартные, а вот УбратьПробелы(Строка) - это - да, это всем понятно.
0
// Преобразует целое десятичное число (как вариант представления двоичного числа) в вещественное
Функция ПреобразоватьВЧисло(Знач ДесятичноеЧисло = 0, Точность = 1) Экспорт
СчБитов = 0;
Мантисса = 1;
Экспонента = ?(Точность = 2, -1023, -127);
Знак = 1;
ГраницаМантиссы = ?(Точность = 2, 52, 23);
ГраницаЭкспоненты = ?(Точность = 2, 63, 31);
Пока ДесятичноеЧисло >= 1 Цикл
Частное = Цел(ДесятичноеЧисло / 2);
Остаток = ДесятичноеЧисло % 2;
Если СчБитов < ГраницаМантиссы Тогда
Мантисса = Мантисса + Остаток * Pow(2, СчБитов - ГраницаМантиссы);
ИначеЕсли СчБитов < ГраницаЭкспоненты И СчБитов > ГраницаМантиссы - 1 Тогда
Экспонента = Экспонента + Остаток * Pow(2, СчБитов - ГраницаМантиссы);
Иначе
Знак = ?(Остаток = 1, -1, 1);
КонецЕсли;
ДесятичноеЧисло = Частное;
СчБитов = СчБитов + 1;
КонецЦикла;
Возврат Знак * Мантисса * Pow(2, Экспонента);
КонецФункции
0
Попытка
ФС.КопироватьФайл(Каталог+Файл+Расширение,НовоеИмя,1);
Если ФС.СуществуетФайл(НовоеИмя)=0 Тогда
СоздатьОбъект("АбсолютнаяЧушь");
КонецЕсли;
НовоеЗначение=Сред(НовоеИмя,СтрДлина(Лев(КаталогИБ(),СтрДлина(КаталогИБ())-1)+"-MEDIA\")+1);
НовоеСтрока=НовоеЗначение;
Исключение
Предупреждение("Не удаётся скопировать файл!",5);
КонецПопытки;
Классный способ вызвать исключение.