- 1
- 2
- 3
wb.getApplication().run(macro, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null);
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+78
wb.getApplication().run(macro, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null);
Использование библиотеки для взаимодействия с мелкософтовскими COM-объектами
−163
ВЫБОР
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.ЕдиницаХраненияОстатков
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.ЕдиницаДляОтчетов
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.ЕдиницаДляОтчетов.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.ЕдиницаИзмеренияМест
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.ЕдиницаИзмеренияМест.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОГДА ПеремещениеТоваровТовары.ЕдиницаИзмерения = ПеремещениеТоваровТовары.Номенклатура.бит_п_ЕдиницаПаллет
ТОГДА ПеремещениеТоваровТовары.Количество * ПеремещениеТоваровТовары.Номенклатура.бит_п_ЕдиницаПаллет.Коэффициент * ПеремещениеТоваровТовары.Номенклатура.бит_п_МассаНетто
КОНЕЦ
−123
select ...
case
-- периоды пересекаются только в одной точке (2)
when (vw.hEndDate=vw.rStartDate)
then vw.hEndDate
when (vw.rEndDate=vw.hStartDate)
then vw.rEndDate
-- периоды пересекаются в определенной области (2)
when (vw.hStartDate > vw.rstartdate and IsNull(vw.hEndDate,'01-01-2099')<IsNull(vw.rEndDate,'01-01-2099')) then vw.hStartDate
when ((vw.rStartDate between vw.hStartDate and vw.hEndDate) and (vw.hEndDate between vw.rStartDate and vw.rEndDate))
then vw.rStartDate
when ((vw.hStartDate between vw.rStartDate and vw.rEndDate) and (vw.rEndDate between vw.hStartDate and vw.hEndDate))
then vw.hStartDate
-- периоды полностью совпадают (1)
when (vw.hStartDate=vw.rStartDate and vw.hEndDate=vw.rEndDate)
then vw.hStartDate
-- периоды совпадают в одной точке и перекрываются (4)
when (vw.hStartDate=vw.rStartDate and vw.rEndDate<vw.hEndDate)
then vw.hStartDate
when (vw.hStartDate=vw.rStartDate and vw.hEndDate<vw.rEndDate)
then vw.hStartDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate>vw.hStartDate)
then vw.rStartDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate<vw.hStartDate)
then vw.hStartDate
end as MainStartDate
,case
-- периоды пересекаются только в одной точке (2)
when (vw.hEndDate=vw.rStartDate)
then vw.hEndDate
when (vw.rEndDate=vw.hStartDate)
then vw.rEndDate
-- периоды пересекаются в определенной области (2)
when (vw.hStartDate > vw.rstartdate and IsNull(vw.hEndDate,'01-01-2099')<IsNull(vw.rEndDate,'01-01-2099')) then vw.hEndDate
when ((vw.rStartDate between vw.hStartDate and vw.hEndDate) and (vw.hEndDate between vw.rStartDate and vw.rEndDate))
then vw.hEndDate
when ((vw.hStartDate between vw.rStartDate and vw.rEndDate) and (vw.rEndDate between vw.hStartDate and vw.hEndDate))
then vw.rEndDate
-- периоды полностью совпадают (1)
when (vw.hStartDate=vw.rStartDate and vw.hEndDate=vw.rEndDate)
then vw.hEndDate
-- периоды совпадают в одной точке и перекрываются (4)
when (vw.hStartDate=vw.rStartDate and vw.rEndDate<vw.hEndDate)
then vw.rEndDate
when (vw.hStartDate=vw.rStartDate and vw.hEndDate<vw.rEndDate)
then vw.hEndDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate>vw.hStartDate)
then vw.hEndDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate<vw.hStartDate)
then vw.hEndDate
end as MainEndDate
from (select ...
case when (IsNull(h.[EndDate],'01-01-2099')=r.[StartDate]) then '1 периоды пересекаются только в одной точке (2) h.[EndDate]=r.[StartDate]'
when(IsNull(r.[EndDate],'01-01-2099')=h.[StartDate]) then '2 периоды пересекаются только в одной точке (2) r.[EndDate]=h.[StartDate]'
-- периоды пересекаются в определенной области (2)
when (h.startdate > r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099')) then 'Период иерархии полностью входит в период территории'
when((r.StartDate between h.StartDate and IsNull(h.[EndDate],'01-01-2099')) and (IsNull(h.[EndDate],'01-01-2099') between r.StartDate and IsNull(r.[EndDate],'01-01-2099'))) then 'периоды пересекаются в определенной области (2) 3 ((r.StartDate between h.StartDate and IsNull(h.[EndDate],01-01-2099)) and (IsNull(h.[EndDate],01-01-2099) between r.StartDate and r.EndDate))'
when((h.startdate between r.startdate and IsNull(r.[EndDate],'01-01-2099')) and (IsNull(r.[EndDate],'01-01-2099') between h.Startdate and IsNull(h.[EndDate],'01-01-2099'))) then 'периоды пересекаются в определенной области (2) 4 ((h.startdate between r.startdate and r.enddate) and (r.EndDate between h.Startdate and IsNull(h.[EndDate],01-01-2099)))'
-- периоды полностью совпадают (1)
when(h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099')) then 'периоды полностью совпадают (1) 5 (h.startdate=r.startdate and IsNull(h.[EndDate],01-01-2099)=r.enddate)'
-- периоды совпадают в одной точке и перекрываются (4)
when(h.startdate=r.startdate and IsNull(r.[EndDate],'01-01-2099')<IsNull(h.[EndDate],'01-01-2099')) then 'периоды совпадают в одной точке и перекрываются (4) 6 (h.startdate=r.startdate and r.enddate<IsNull(h.[EndDate],01-01-2099))'
when(h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099')) then 'периоды совпадают в одной точке и перекрываются (4) 7 (h.startdate=r.startdate and IsNull(h.[EndDate],01-01-2099)<r.enddate)'
when(IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate>h.startdate) then 'периоды совпадают в одной точке и перекрываются (4) 8 (IsNull(h.[EndDate],01-01-2099)=r.enddate and r.startdate>h.startdate)'
when(IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate<h.startdate) then 'периоды совпадают в одной точке и перекрываются (4) 9 (IsNull(h.[EndDate],01-01-2099)=r.enddate and r.startdate<h.startdate)'
... where ...
(IsNull(h.[EndDate],'01-01-2099')=r.[StartDate])
or (IsNull(r.[EndDate],'01-01-2099')=h.[StartDate])
-- периоды пересекаются в определенной области (2)
or ((r.StartDate between h.StartDate and IsNull(h.[EndDate],'01-01-2099')) and (IsNull(h.[EndDate],'01-01-2099') between r.StartDate and IsNull(r.[EndDate],'01-01-2099')))
or ((h.startdate between r.startdate and IsNull(r.[EndDate],'01-01-2099')) and (IsNull(r.[EndDate],'01-01-2099') between h.Startdate and IsNull(h.[EndDate],'01-01-2099')))
or (h.startdate > r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099'))
-- периоды полностью совпадают (1)
or (h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099'))
-- периоды совпадают в одной точке и перекрываются (4)
or (h.startdate=r.startdate and IsNull(r.[EndDate],'01-01-2099')<IsNull(h.[EndDate],'01-01-2099'))
or (h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099'))
or (IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate>h.startdate)
or (IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate<h.startdate)
я даже знать не хочу, что в этом запросе на 140 строк происходит, и молю богу, чтобы это не ломалось, пока автор этого в декрете.
форматирование убрал, а то в 6к символов не помещался
отформатировать можно тут http://poorsql.com/
+157
/**
* Определение типа документа - Комплектация/Разукомплектация
* @param $reverse
* @return string
*/
protected function get_reverse($reverse)
{
if(in_array($reverse, ['TRUE', 'true', true, 1, '1'], true)) {
return 'TRUE';
}
if(in_array($reverse, ['FALSE', 'false', false, 0, '0', ''], true)) {
return 'FALSE';
}
}
Продолжение вот этого http://govnokod.ru/15643 кода придется делать
+22
/* macro is a way faster than inline */
#define Compare(offsetx, offsety) \
do { \
int add; \
Point other = Get(g, x + offsetx, y + offsety); \
if(offsety == 0) { \
add = 2 * other.dx + 1; \
} \
else if(offsetx == 0) { \
add = 2 * other.dy + 1; \
} \
else { \
add = 2 * (other.dy + other.dx + 1); \
} \
other.f += add; \
if (other.f < p.f) \
{ \
p.f = other.f; \
if(offsety == 0) { \
p.dx = other.dx + 1; \
p.dy = other.dy; \
} \
else if(offsetx == 0) { \
p.dy = other.dy + 1; \
p.dx = other.dx; \
} \
else { \
p.dy = other.dy + 1; \
p.dx = other.dx + 1; \
} \
} \
} while(0)
Нужно делать макросы ЕЩЕ больше!
http://habrahabr.ru/post/215905/
+156
if ($static['filter.date.start'] == 'NULL') {
$static['filter.date.start'] = null;
}
if ($static['filter.date.end'] == 'NULL') {
$static['filter.date.end'] = null;
}
В коде столкнулся таким оригинальным хранением пустого значения :D
пришлось немного подкостылять чтобы empty() хотя бы работала :)
−128
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
gradle wrapper
+155
...
unset($_SESSION['some_payment']);
$_SESSION['message'] = "Your booking details have been sent to your email.";
?>
<script language="javascript" type="text/javascript">
window.location.href = "bookingdetail.php?booking_id=<?= $this->book_id ?>&booking=yes";
</script>
<?php
return true;
} else {
...
Вот это поворот! Найдено постерди одной из фунций класса.
+127
http://ic.pics.livejournal.com/sharpc/9812774/55307/55307_original.png
Я вот думал, а не запостить ли в раздел PHP...
+134
/* A C statement or statements which output an assembler instruction
opcode to the stdio stream STREAM. The macro-operand PTR is a
variable of type `char *' which points to the opcode name in its
"internal" form--the form that is written in the machine description.
GAS version 1.38.1 doesn't understand the `repz' opcode mnemonic.
So use `repe' instead. */
#undef ASM_OUTPUT_OPCODE
#define ASM_OUTPUT_OPCODE(STREAM, PTR) \
{ \
if ((PTR)[0] == 'r' \
&& (PTR)[1] == 'e' \
&& (PTR)[2] == 'p') \
{ \
if ((PTR)[3] == 'z') \
{ \
fputs ("repe", (STREAM)); \
(PTR) += 4; \
} \
else if ((PTR)[3] == 'n' && (PTR)[4] == 'z') \
{ \
fputs ("repne", (STREAM)); \
(PTR) += 5; \
} \
} \
else \
ASM_OUTPUT_AVX_PREFIX ((STREAM), (PTR)); \
}
Костыль из GCC. Ассемблер GAS версии 1.38.1 не переваривает мнемоники repz и repnz. Эта макрохрень перекодирует их в repe и repne соответственно
https://github.com/mirrors/gcc/blob/master/gcc/config/i386/gas.h#L81