- 1
- 2
- 3
- 4
- 5
- 6
function TicksBetween(t1, t2 : dword) : dword;
begin
if t2 > t1
then Result:=t2 - t1 + 1
else Result:=dword(-1) - t1 + t2 + 1;
end;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+102
function TicksBetween(t1, t2 : dword) : dword;
begin
if t2 > t1
then Result:=t2 - t1 + 1
else Result:=dword(-1) - t1 + t2 + 1;
end;
Никогда не пишите с бодуна!
−107.8
response = conn.getresponse()
data = response.read()
s_list = list(data)
i, j = 0, 0
while i < len(s_list):
if s_list[i] == '<':
while s_list[i] != '>':
s_list.pop(i)
s_list.pop(i)
elif s_list[i] == '\n':
s_list.pop(i)
elif s_list[i] == '\t':
s_list.pop(i)
else:
i = i+1
data = str(s_list).replace('\'','').replace(' ','').replace(',','').\
replace(' ','').replace('SERegistru','').replace('[','').\
replace(']','').replace(':','').replace(';','').\
replace('IDNP','').replace('LastName',' ').\
replace('FirstName',' ').replace('SecondName',' ').replace('Alive',' ')
Простой парсер HTML странички.. ^_^
+165
$user_query .= " AND O.ID IN (";
for ($i=0;$i<count($orgs_id_array)-1;$i++){
$user_query .= $orgs_id_array[$i];
if($i < count($orgs_id_array) - 2)
$user_query .= ",";
}
$user_query .= ")";
Остается загадкой, почему нельзя было сделать:
$query_user .= " AND O.ID IN (" . implode(",", $orgs_id_array) . ")";
+59.8
void addItem(QStringList &lst, QTreeWidget *ptwg)
{
bool a0 = false;
for (int i = 0; i < ptwg->topLevelItemCount(); ++i) {
if (lst.at(0) == ptwg->topLevelItem(i)->text(0)) {
a0 = true;
bool a1 = false;
QTreeWidgetItem *itm0 = ptwg->topLevelItem(i);
for (int j = 0; j < itm0->childCount(); ++j) {
if (lst.at(1) == itm0->child(j)->text(1)) {
a1 = true;
bool a2 = false;
QTreeWidgetItem *itm1 = itm0->child(j);
for (int k = 0; k < itm1->childCount(); ++k) {
if (lst.at(2) == itm1->child(k)->text(2)) {
a2 = true;
bool a3 = false;
QTreeWidgetItem *itm2 = itm1->child(k);
for (int l = 0; l < itm2->childCount(); ++l) {
if (lst.at(3) == itm2->child(l)->text(3)) {
a3 = true;
QTreeWidgetItem *itm3 = itm2->child(l);
QTreeWidgetItem *itm4 = new QTreeWidgetItem(itm3, QStringList() << "" << "" << "" << "" << lst.at(4));
break;
}
}
if (!a3) {
QTreeWidgetItem *itm3 = new QTreeWidgetItem(itm2, QStringList() << "" << "" << "" << lst.at(3));
QTreeWidgetItem *itm4 = new QTreeWidgetItem(itm3, QStringList() << "" << "" << "" << "" << lst.at(4));
}
break;
}
}
if (!a2) {
QTreeWidgetItem *itm2 = new QTreeWidgetItem(itm1, QStringList() << "" << "" << lst.at(2));
QTreeWidgetItem *itm3 = new QTreeWidgetItem(itm2, QStringList() << "" << "" << "" << lst.at(3));
QTreeWidgetItem *itm4 = new QTreeWidgetItem(itm3, QStringList() << "" << "" << "" << "" << lst.at(4));
}
break;
}
}
if (!a1) {
QTreeWidgetItem *itm1 = new QTreeWidgetItem(itm0, QStringList() << "" << lst.at(1));
QTreeWidgetItem *itm2 = new QTreeWidgetItem(itm1, QStringList() << "" << "" << lst.at(2));
QTreeWidgetItem *itm3 = new QTreeWidgetItem(itm2, QStringList() << "" << "" << "" << lst.at(3));
QTreeWidgetItem *itm4 = new QTreeWidgetItem(itm3, QStringList() << "" << "" << "" << "" << lst.at(4));
}
break;
}
}
if (!a0) {
QTreeWidgetItem *itm0 = new QTreeWidgetItem(ptwg, QStringList() << lst.at(0));
QTreeWidgetItem *itm1 = new QTreeWidgetItem(itm0, QStringList() << "" << lst.at(1));
QTreeWidgetItem *itm2 = new QTreeWidgetItem(itm1, QStringList() << "" << "" << lst.at(2));
QTreeWidgetItem *itm3 = new QTreeWidgetItem(itm2, QStringList() << "" << "" << "" << lst.at(3));
QTreeWidgetItem *itm4 = new QTreeWidgetItem(itm3, QStringList() << "" << "" << "" << "" << lst.at(4));
}
}
Функция = ) Добавляет в контрол иерархического дерева (5 уровней) элемент, не перерисовывая при этом само дерево, не закрывая никаких открытых веток.
+114.2
userInfoStr = string.Format("{0}", FIO
+143.8
foreach($this->arFileds as $v=>$k)
+55.6
0 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 * * * root /usr/local/cron_func/trans.pl
строка в crontab'е.
−157.8
CREATE PROCEDURE "auot".uot_inv_procs2
(
NumFunc Integer, -- Номер функции :
-- 1 - Вставляет строку
-- 2 - Создает временную таблицу
-- 3 - Удаляет временную таблицу
-- 4 - Создает временную таблицу
-- 5 - Удаляет временную таблицу
-- 6 - Возвращает Dogovor.Dog_id
-- 7 - Создает TempTableInvoice
-- 8 - Создает TmpTabDeclInv
-- 9 - Создает TmpTabDeclSel
--10 - Заолняет TmpTabDeclSel
--11 - Добавляет в TmpTabVCSel
--12 - Обновляет информацию
n_Numb_inv NVarChar(10,0) DEFAULT NULL,
n_Date_inv Date DEFAULT NULL,
n_Code_exp Char(2) DEFAULT NULL,
n_Prod_code Char(3) DEFAULT NULL,
n_Code_Transport Char(1) DEFAULT NULL,
n_Code_Date_Cen Char(1) DEFAULT NULL,
n_Contract NVarChar(30,0) DEFAULT NULL,
n_DateContract Date DEFAULT NULL,
n_Weight Numeric(10,3) DEFAULT NULL,
n_Price Numeric(8,2) DEFAULT NULL,
n_Total Numeric(15,2) DEFAULT NULL,
n_Kod_val_id Integer DEFAULT NULL,
n_Date_konos Date DEFAULT NULL,
n_SHB_Signature Char(6) DEFAULT NULL,
n_Seller_Sign Char(6) DEFAULT NULL,
n_Date_prix Date DEFAULT NULL,
n_Date_move Date DEFAULT NULL,
n_SUM_CLS Numeric(15,2) DEFAULT NULL,
n_Consignee NVarChar(150,0) DEFAULT NULL,
n_Buyer NVarChar(150,0) DEFAULT NULL,
n_Pnt_departure NVarChar(150,0) DEFAULT NULL,
n_Destination NVarChar(150,0) DEFAULT NULL,
n_Steam_vessel NVarChar(50,0) DEFAULT NULL,
n_Delivery_terms NVarChar(18,0) DEFAULT NULL,
n_Status Char(1) DEFAULT 'N',
n_Dogovor_id Integer DEFAULT NULL,
n_Date_min Date DEFAULT NULL,
n_Date_max Date DEFAULT NULL,
n_Invoice_id Integer DEFAULT NULL,
n_Res_Code Char(8) DEFAULT NULL,
n_Date_Sale_Uved Date DEFAULT NULL,
n_Month Date DEFAULT NULL
)
RETURNING INTEGER;
DEFINE GLOBAL __current_user INTEGER DEFAULT NULL;
DEFINE GLOBAL err_sqlcode INTEGER DEFAULT 0;
DEFINE GLOBAL err_isamcode INTEGER DEFAULT 0;
DEFINE GLOBAL err_detail CHAR(80) DEFAULT '';
DEFINE _inv_id Integer;
DEFINE _Name_exp NVarChar(40,0);
DEFINE _Name_rus NVarChar(50,0);
DEFINE _Smlval Char(3);
DEFINE _rlw_id Integer;
DEFINE _weight_brutto Decimal(12,3);
DEFINE _Bes_inv Decimal(12,3);
DEFINE _Sum_inv Numeric(15,2);
DEFINE _Bes_free Decimal(12,3);
DEFINE _Sum_free Numeric(15,2);
DEFINE _Sum_Weight_Inv DECIMAL(12,3);
DEFINE _SHB_Name NVARCHAR(60,0);
DEFINE _dogovor NChar(15);
DEFINE _dlv_id Integer;
DEFINE _Decl_num Char(23);
DEFINE _Decl_date Date;
DEFINE _Buyer NVarChar(80);
DEFINE _Currency_rate Money(16,2);
DEFINE _CenaRus Money(16,2);
DEFINE _Prod_All NVarChar(93);
DEFINE _org_name NVarChar(80,0);
DEFINE _SumRUR Money(16,2);
DEFINE _SumKinef Money(16,2);
DEFINE _Delta Money(16,2);
DEFINE _Effect Money(16,2);
DEFINE _Dog_id Integer;
DEFINE _Res_code Char(8);
DEFINE _carriage_num NChar(18);
DEFINE _nom_nakl NChar(10);
DEFINE _Shpok_char Char(4);
DEFINE _Parent SmallInt;
DEFINE _Date_otgr DateTime YEAR TO SECOND;
IF NumFunc=2 THEN -- Создаем временную табл. SprInvByProd
CREATE TEMP TABLE SprInvByProd......
и так далее по каждому из 12 пунктов.....просто процедура на все случаи жизни..чувак реально попотел когда сие изобретал....
+96.5
procedure AsmRGBBiter15;assembler;
procedure AsmRGBBiter16;assembler;
//procedure AsmRGBBiter24;assembler;
procedure AsmRGBBiter32;assembler;
procedure AsmRGBBiterEx15;assembler;
procedure AsmRGBBiterEx16;assembler;
//procedure AsmRGBBiterEx24;assembler;
procedure AsmRGBBiterEx32;assembler;
procedure RGBBiterEx32(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
//procedure RGBBiterEx24(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
procedure RGBBiterEx16(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
procedure RGBBiterEx15(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
procedure AsmRGB16;assembler;
procedure AsmRGB15;assembler;
//procedure AsmRGB24;assembler;
procedure AsmRGB32;assembler;
function GetRValue32(color:dword):byte;Pascal;
function GetGValue32(color:dword):byte;Pascal;
function GetBValue32(color:dword):byte;Pascal;
//function GetRValue24(color:dword):byte;Pascal;
//function GetGValue24(color:dword):byte;Pascal;
//function GetBValue24(color:dword):byte;Pascal;
function GetRValue16(color:dword):byte;Pascal;
function GetGValue16(color:dword):byte;Pascal;
function GetBValue16(color:dword):byte;Pascal;
function GetRValue15(color:dword):byte;Pascal;
function GetGValue15(color:dword):byte;Pascal;
function GetBValue15(color:dword):byte;Pascal;
function GetSceenRect:trect;
procedure DrawSceenHLine32(x1,x2,y,color:dword);pascal;assembler;
procedure DrawSceenHLine15(x1,x2,y,color:dword);pascal;assembler;
procedure DrawSceenHLine16(x1,x2,y,color:dword);pascal;assembler;
//procedure DrawSceenHLine24(x1,x2,y,color:dword);pascal;assembler;
procedure DrawSceenVLine32(x,y1,y2,color:dword);pascal;assembler;
//procedure DrawSceenVLine24(y1,y2,x,color:dword);pascal;assembler;
procedure DrawSceenVLine15(x,y1,y2,color:dword);pascal;assembler;
procedure DrawSceenVLine16(x,y1,y2,color:dword);pascal;assembler;
Программа работает только в 32битном режиме экрана. :D
+99.7
function RegisterSceenButton(Caption:shortstring;Rect:trect;dx,dy,ShadowWidth:dword;Style:dword;VerticalGradient,VerticalGradientifMouse,VerticalGradientIfClick:bool;TextColor,ColorTop,ColorBottom,TextColorIfMouse,ColorTopIfMouse,ColorBottomIfMouse,TextColorIfClick,ColorTopIfClick,ColorBottomIfClick,LeftTopColor,RightBottomColor:dword;pushProc:tSBPushProc;Surface:idirectdrawsurface7):dword;
var i:dword;
begin
result:=0;
for i:=1 to SMaxSceenButton do
if SceenButton[i].isNotEmpty=false then break;
if i=SMaxSceenButton then exit;
ZeroMemory(@SceenButton[i],sizeof(SceenButton[i]));
SceenButton[i].Caption:=caption;
SceenButton[i].PushProc:=@pushproc;
SceenButton[i].Rect:=rect;
SceenButton[i].dx:=dx;
SceenButton[i].dy:=dy;
SceenButton[i].TextColor:=textcolor;
SceenButton[i].ColorTop:=ColorTop;
SceenButton[i].ColorBottom:=ColorBottom;
SceenButton[i].TextColorIfMouse:=textcolorifmouse;
SceenButton[i].ColorTopIfMouse:=colorTopifmouse;
SceenButton[i].ColorBottomIfMouse:=colorBottomifmouse;
SceenButton[i].LeftTopColor:=lefttopcolor;
SceenButton[i].RightBottomColor:=rightbottomcolor;
SceenButton[i].ShadowWidth:=ShadowWidth;
SceenButton[i].TextColorIfClick:=textcolorifclick;
SceenButton[i].ColorTopIfClick:=colorTopifclick;
SceenButton[i].ColorBottomIfClick:=colorBottomifclick;
SceenButton[i].surface:=surface;
SceenButton[i].Style:=Style;
SceenButton[i].VerticalGradient:=VerticalGradient;
SceenButton[i].VerticalGradientIfMouse:=VerticalGradientIfMouse;
SceenButton[i].VerticalGradientIfClick:=VerticalGradientIfClick;
SceenButton[i].state:=SSTB_Normal;
SceenButton[i].isNotEmpty:=true;
SceenButton[i].State:=SSTB_normal;
result:=i;
end;
Программа, полностью на скинах через DDraw. Гуевое лишь POPUP окно. Зачем мне было это нужно? Работает только в 32битном режиме. В остальных глючит. :D