- 1
if ( LIKELY( _mode == normal ))
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+2
if ( LIKELY( _mode == normal ))
_mode задается один раз в начале программы по конфигурационному файлу.
+10
public static string toFormat(string s, int u)
{
return " ".Substring(0, u * 4) + s +"\r\n";
}
Функция используется для форматирования файла класса, созданного автоматически.
−98
Процедура ОсновныеДействияФормыПароль(Кнопка)
Если ЭтотОбъект.Пароль = "база7" Тогда
ЭлементыФормы.РедактированиеСклада.Доступность = Истина;
ЭтотОбъект.Пароль = "";
Сообщить("Вы можете изменить галку 'Редактирование склада'");
ИначеЕсли ЭтотОбъект.Пароль = "разрешение" Тогда
ЭлементыФормы.ПривелигированныйПользователь.Доступность = Истина;
ЭтотОбъект.Пароль = "";
Сообщить("Вы можете изменить галку 'Привелигированный пользователь'");
Иначе
Сообщить("Вы ввели неверный пароль");
КонецЕсли;
КонецПроцедуры
Реализация ограничения прав на установку прав для пользователей ИБ.
+1
define('OKVED_TRY_BUILD_CHUNK_IF_IT_NOT_FOUND_IN_CHUNKCACHE', TRUE);
Написал строчку и думаю - то ли я наговнокодил с названием, то ли соломки подстелил, так, что через месяц я ТОЧНО вспомню, зачем оно нужно...
+2
if (t.IsFaulted)
{
try
{
throw t.Exception.InnerException;
}
catch (ObjectDisposedException)
{
Dispose();
return;
}
...
}
−96
Запас=0; ВПутиУжеЗаказано=0;Остаток=0;Резерв=0;
Для Каждого ВыбСклад из СписокСкладов Цикл
Скл=Справочники.Склады.НайтиПоНаименованию(СокрЛП(ВыбСклад.Ссылка.Наименование));
СтруктураОтбора = Новый Структура(); // для отбора остатков взаиморасчетов
СтруктураОтбора.Вставить("Номенклатура", Номенклатура);
СтруктураОтбора.Вставить("Склад", Скл);
Остаток =Остаток+ РегистрыНакопления.ТоварыНаСкладах.Остатки(КонецДня(КонДата),
СтруктураОтбора,"Номенклатура,Склад","Количество").Итог("Количество");
Резерв = Резерв+РегистрыНакопления.ТоварыВРезервеНаСкладах.Остатки(КонецДня(КонДата),
СтруктураОтбора,"Номенклатура,Склад","Количество").Итог("Количество");
КонецЦикла;
СтрокаЗапаса=СокрЛП(Остаток);
СтрокаЗапаса=СтрЗаменить(СтрокаЗапаса," ","");
Запас=?(СтрокаЗапаса="",0,Число(СтрокаЗапаса));
Лихие манипуляции со стоками. Следите за руками!
−95
Запрос = Новый Запрос;
Запрос.Текст =
"текст запроса не важен...";
Запрос.УстановитьПараметр("Заказ", Заказ);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Если Выборка.Версия = 0 Тогда
Версия = "0";
Иначе
Версия = Выборка.Версия;
КонецЕсли;
ИмяФайла = "\\eskoautomation\HotFolders\zakaz\" +Выборка.НомерЗаказа+"_"+Версия+".xml";
Файл = Новый ЗаписьXML;
Файл.ОткрытьФайл(ИмяФайла);
Файл.ЗаписатьНачалоЭлемента("Главный");
Файл.ЗаписатьНачалоЭлемента("НомерЗаказа");
ЗаписатьXML(Файл,Выборка.НомерЗаказа);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Версия");
ЗаписатьXML(Файл,Выборка.Версия);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Контрагент");
ЗаписатьXML(Файл,Выборка.Контрагент);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ТипЗаказа");
ЗаписатьXML(Файл,Выборка.ТипЗаказа);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ВидЗаказа");
ЗаписатьXML(Файл,Выборка.ВидЗаказа);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ТипРЦ");
ЗаписатьXML(Файл,Выборка.ТипРЦ);
Файл.ЗаписатьКонецЭлемента();
РабочийЦентр = Выборка.РабочийЦентр;
Если Не ЗначениеЗаполнено(РабочийЦентр) Тогда
Отбор = Новый Структура;
Отбор.Вставить("НомерПроката", 1);
Отбор.Вставить("Номерварианта", Выборка.НомерВарианта);
строки = Выборка.Спецификация.ВидыРабот.НайтиСтроки(Отбор);
Если строки<>Неопределено Тогда
РабочийЦентр = строки[0].рабочийЦентр.порядковыйномер;
КонецЕсли;
КонецЕсли;
Файл.ЗаписатьНачалоЭлемента("РабочийЦентр");
ЗаписатьXML(Файл,РабочийЦентр);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ОсновнойМатериал");
ЗаписатьXML(Файл,Выборка.ОсновнойМатериал);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Штамп");
ЗаписатьXML(Файл,Выборка.Штамп);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ЭтикетокНаЛисте");
ЗаписатьXML(Файл,Выборка.ЭтикетокНаЛисте);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Нарезка");
ЗаписатьXML(Файл,Выборка.Нарезка);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Ручьи");
ЗаписатьXML(Файл,Выборка.Ручьи);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Z");
ЗаписатьXML(Файл,Выборка.Z);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ШагПечати");
ЗаписатьXML(Файл,Выборка.ШагПечати);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ДлинаЭтикетки");
ЗаписатьXML(Файл,Выборка.ДлинаЭтикетки);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ШиринаЭтикетки");
ЗаписатьXML(Файл,Выборка.ШиринаЭтикетки);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ДлинаКонтрЭтикетки");
ЗаписатьXML(Файл,Выборка.ДлинаКонтрЭтикетки);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ДлинаКольеретки");
ЗаписатьXML(Файл,Выборка.ДлинаКольеретки);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ШиринаКонтрЭтикетки");
ЗаписатьXML(Файл,Выборка.ШиринаКонтрЭтикетки);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ШиринаКольеретки");
ЗаписатьXML(Файл,Выборка.ШиринаКольеретки);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ШиринаПоНожам");
ЗаписатьXML(Файл,Выборка.ШиринаПоНожам);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ИнтервалМеждуРучьями");
ЗаписатьXML(Файл,Выборка.ИнтервалМеждуРучьями);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("ИнтервалМеждуЭтикетками");
ЗаписатьXML(Файл,Выборка.ИнтервалМеждуЭтикетками);
Файл.ЗаписатьКонецЭлемента();
Файл.ЗаписатьНачалоЭлемента("Комментарий");
ЗаписатьXML(Файл,Заказ.Комментарий);
Файл.ЗаписатьКонецЭлемента();
А вот так мы выгружаем XML. Можно конечно было бы пройтись циклом по колонкам выборки или таблицы значений, но зачем?! Зачем, когда можно написать лишних 300 строчек. Я соду с ума.
−98
ВыборкаЗаказов = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаЗаказов.Следующий() Цикл
ВыборкаГрузополучателей = ВыборкаЗаказов.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаГрузополучателей.Следующий() Цикл
ВыборкаАдресовДоставки = ВыборкаГрузополучателей.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаАдресовДоставки.Следующий() Цикл
РезультатЗапроса = ВыборкаАдресовДоставки.Выбрать();
СтавкаНДС = ПолучитьСтавкуНДСдляДокументов(Переменные.ОргПроизводитель, РезультатЗапроса[0].Контрагент);
Если РезультатЗапроса.Количество() <> 0 Тогда
ТАблицаДАнных = ПреобразоватьВыборкуВТаблицуЗначение(РезультатЗапроса);
Функция ПреобразоватьВыборкуВТаблицуЗначение(ИсходнаяВыборка)
ТаблицаРЕзультат = Новый ТаблицаЗначений;
Для каждого Колонка Из ИсходнаяВыборка.Колонки Цикл
ТаблицаРезультат.Колонки.Добавить(Колонка.Имя);
КОнецЦикла;
Для каждого СтрокаВыборки из ИсходнаяВыборка Цикл
СтрокаРезультата = ТаблицаРЕзультат.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаВыборки, СтрокаРезультата);
КонецЦикла;
Возврат ТаблицаРЕзультат;
КонецФункции
Я допускаю, что это было написано в староглиняные времена, когда у РезультатЗапроса не было метода Выгрузить() но блин! Всей истории 1С я не знаю, и сомневаюсь, что такие времена когда-то были. А вообще что-то подсказывает что песатель просто не знал...
+3
__fastcall OpenArray(T arg0, T arg1, T arg2, T arg3, T arg4, T arg5, T arg6,
T arg7, T arg8, T arg9, T arg10, T arg11, T arg12,
T arg13, T arg14, T arg15, T arg16, T arg17, T arg18)
{
Array = new T[Count = 19];
Array[0] = arg0;
Array[1] = arg1;
Array[2] = arg2;
Array[3] = arg3;
Array[4] = arg4;
Array[5] = arg5;
Array[6] = arg6;
Array[7] = arg7;
Array[8] = arg8;
Array[9] = arg9;
Array[10] = arg10;
Array[11] = arg11;
Array[12] = arg12;
Array[13] = arg13;
Array[14] = arg14;
Array[15] = arg15;
Array[16] = arg16;
Array[17] = arg17;
Array[18] = arg18;
}
Старый недобрый C++ Builder. Выше по коду еще 17 таких же конструкторов.
+1
foreach ($child as $ch) {
if ($ch->nodeName === 'w:style') {
$sum++;
if ($ch->hasAttributes()) {
/** @var DOMAttr $attribute */
foreach ($ch->attributes as $attribute) {
if ($attribute->name === 'styleId') {
if ($attribute->value == $sTempStyle) {
/** @var DOMElement $styleNode */
foreach ($ch->childNodes as $styleNode) {
if (isset($styleNode->tagName) && $styleNode->tagName === 'w:basedOn') {
$basedOn = $styleNode->getAttribute('w:val');
$properties = $this->wordStyle2Array($basedOn, $tagName, $properties);
}
if (isset($styleNode->tagName) && $styleNode->tagName === $tagName) {
$elements = $styleNode->childNodes;
/** @var DOMElement $element */
foreach ($elements as $element) {
if (isset($element->tagName)) {
switch ($element->tagName) {
case 'w:color':
if ($element->hasAttribute('w:val')) {
$properties['color']['hex'] = '#' . $element->getAttribute
('w:val');
}
break;
case 'w:rFonts':
if ($element->hasAttribute('w:ascii')) {
$properties['font_family'] = $element->getAttribute('w:ascii');
}
break;
//кейсы - бесконечные как осень в России
}
}
}
}
}
}
}
}
}
}
Чувак, мы слышали ты любишь плодить уровни вложенности, поэтому мы написали switch в if в foreach в if в foreach в if в if в foreach в if в if в foreach, кажется.