- 1
Тип объекта, который инициализируется безумно.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Тип объекта, который инициализируется безумно.
https://learn.microsoft.com/ru-ru/dotnet/api/system.lazy-1?view=net-8.0#--------------
Обожаю автоматический перевод в документации
В оригинале, кстати, вот так:
https://learn.microsoft.com/en-us/dotnet/api/system.lazy-1?view=net-8.0#type-parameters
Заметьте, что ссылка тоже побилась
0
//Таб пропущенные
УсловиеОтбора = "ABANDON";
ДлинаСтрОтбора = 32;
Для с=1 По ДлинаСтрОтбора - СтрДлина(УсловиеОтбора) Цикл
УсловиеОтбора = УсловиеОтбора + " ";
КонецЦикла;
ТабПропущенные = Таб_queue.Скопировать(Новый Структура("Событие",УсловиеОтбора));
//Таб всё же дозвонились
УсловиеОтбора = "CONNECT";
ДлинаСтрОтбора = 32;
Для с=1 По ДлинаСтрОтбора - СтрДлина(УсловиеОтбора) Цикл
УсловиеОтбора = УсловиеОтбора + " ";
КонецЦикла;
ТабДозвонились = Таб_queue.Скопировать(Новый Структура("Событие",УсловиеОтбора));
В таблице какого то черта стояла фиксированная строка длинной 32 символа.
Вот так "изящно" обошли это.
0
longlong ** FUN_14000e5a0(longlong **param_1,LPCWSTR param_2,int param_3,uint param_4)
{
uint uVar1;
longlong **pplVar2;
longlong **hFile;
longlong *plVar3;
longlong **pplVar4;
DWORD DVar5;
LONG local_38;
undefined4 uStack_34;
pplVar4 = (longlong **)0x0;
uVar1 = param_4 & 0x1f;
if ((param_4 & 0x1f) == 0) {
uVar1 = 2;
}
pplVar2 = FUN_1400119f8(DAT_1400213a0,(longlong)param_1);
if (pplVar2 == (longlong **)0x0) {
return (longlong **)0x0;
}
if (param_3 == 1) {
DVar5 = (DWORD)((param_4 >> 0x11 & 1) != 0);
if ((param_4 >> 0x12 & 1) != 0) {
DVar5 = 7;
}
hFile = (longlong **)
CreateFileW(param_2,0x80000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,3,0x80,(HANDLE)0x0);
LAB_14000e70c:
if (hFile == (longlong **)0xffffffffffffffff) goto LAB_14000e7ad;
}
else {
if (param_3 == 2) {
DVar5 = (DWORD)((param_4 >> 0x11 & 1) != 0);
if ((param_4 >> 0x12 & 1) != 0) {
DVar5 = 7;
}
hFile = (longlong **)
CreateFileW(param_2,0xc0000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,4,0x80,(HANDLE)0x0);
goto LAB_14000e70c;
}
if (param_3 != 3) {
hFile = (longlong **)CONCAT44(uStack_34,local_38);
goto LAB_14000e70c;
}
DVar5 = (DWORD)((param_4 >> 0x11 & 1) != 0);
if ((param_4 >> 0x12 & 1) != 0) {
DVar5 = 7;
}
hFile = (longlong **)
CreateFileW(param_2,0xc0000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,2,0x80,(HANDLE)0x0);
if (hFile == (longlong **)0xffffffffffffffff) {
hFile = (longlong **)
CreateFileW(param_2,0x40000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,5,0,(HANDLE)0x0);
goto LAB_14000e70c;
}
}
if (hFile != (longlong **)0x0) {
if ((DAT_14001f140 == 0) || ((param_4 >> 0x13 & 1) != 0)) {
pplVar2[1] = (longlong *)0x0;
}
else {
plVar3 = (longlong *)HeapAlloc(DAT_1400204cc,0,(longlong)DAT_14001f140);
pplVar2[1] = plVar3;
}
*pplVar2 = (longlong *)hFile;
*(int *)(pplVar2 + 2) = DAT_14001f140;
*(undefined4 *)((longlong)pplVar2 + 0x14) = 0;
*(uint *)(pplVar2 + 4) = uVar1;
*(uint *)((longlong)pplVar2 + 0x24) = (uint)(param_3 == 1);
*(undefined4 *)((longlong)pplVar2 + 0x1c) = 1;
if ((param_3 == 2) && ((param_4 >> 0x14 & 1) != 0)) {
local_38 = 0;
SetFilePointer(hFile,0,&local_38,2);
}
pplVar4 = hFile;
if (param_1 == (longlong **)0xffffffffffffffff) {
pplVar4 = pplVar2;
}
if (pplVar4 != (longlong **)0x0) {
return pplVar4;
}
}
LAB_14000e7ad:
if (param_1 == (longlong **)0xffffffffffffffff) {
param_1 = pplVar2;
}
FUN_14001192c(DAT_1400213a0,(longlong)param_1);
return pplVar4;
}
0
CREATE PROCEDURE [dbo].[DogovorZalog_Get]
@idZalog AS INT --По какому залогу требуется вывести информацию
,@Result AS SMALLINT = 0 OUT --Результат выполнения: 1=Выполнено успешно
,@ErrorComm AS NVARCHAR(2000) = N'' OUT --Текст ошибки/результата
,@ErrorCode AS INT = NULL OUT --Код ошибки
,@needSelect AS BIT = 0 --1=Будет вывод результата в select
,@needRaisError AS SMALLINT = 0 --(1=Будет вызов RaisError наружу)
,@needSelectInfo AS SMALLINT = NULL --(Делать информационный селект или нет. NULL= возьмет из @needSelect)
,@debug AS BIT = 0 --1=Вывод отладочной информации
,@Message AS NVARCHAR(2000) = N'' OUT --Сообщение для пользователя
AS
BEGIN
SET DATEFORMAT DMY;
SET NOCOUNT ON;
SET @Result = 0
SET @ErrorComm = N''
DECLARE @ProcName AS SYSNAME = OBJECT_NAME(@@PROCID, DB_ID())
,@tranCnt AS INT = 0 --(уровень вложенности транзакции)
,@isTran AS SMALLINT = 0 --(1=используется транзакция)
,@needTran AS SMALLINT = 0 --(1=Будет все в транзакции)
--=========================================
BEGIN TRY
SET @tranCnt = @@TRANCOUNT
IF @tranCnt = 0 AND @needTran <> 0 SET @isTran = 1
IF @isTran = 1 BEGIN TRAN
IF @needSelectInfo IS NULL SET @needSelectInfo = @needSelect
--region Логирование
SET @ExProc=CONCAT('EXEC ', @ProcName , CHAR(10),
' @idZalog=', CONVERT(NVARCHAR(50),@idZalog),CHAR(10),
',@Result=', CONVERT(NVARCHAR(50),@Result),CHAR(10),
',@ErrorComm=', '''', REPLACE(@ErrorComm,'''',''''''), '''',CHAR(10),
',@ErrorCode=', CONVERT(NVARCHAR(50),@ErrorCode),CHAR(10),
',@needSelect=', CONVERT(NVARCHAR(50),@needSelect),CHAR(10),
',@needRaisError=', CONVERT(NVARCHAR(50),@needRaisError),CHAR(10),
',@needSelectInfo=', CONVERT(NVARCHAR(50),@needSelectInfo),CHAR(10),
',@debug=', CONVERT(NVARCHAR(50),@debug),CHAR(10),
',@Message=', '''', REPLACE(@Message,'''',''''''), '''')
--endregion Логирование
SELECT TOP 1 *
FROM dbo.Dogovor_Zalog AS DZ
LEFT JOIN dbo.ZalogDestroy AS ZD ON DZ.idDestroy = ZD.idDestroy
WHERE DZ.ID = @idZalog
ORDER BY zd.keyDZ DESC
SET @Result=1
IF @isTran=1 COMMIT TRAN
END TRY
BEGIN CATCH
--region Обработчик ошибок
SET @Result = 0
--(описание деталей ошибки для внешнего обработчика)
SET @ErrorComm = LEFT(N'Ошибка: ' +
CASE WHEN @ErrorComm<>N'' THEN @ErrorComm + CHAR(10) ELSE N'' END
+ ISNULL(N',@Message:' + CAST(@Message AS NVARCHAR(200)) + CHAR(10), N'')
, 2000)
--(описание ошибки для внутреннего обработчика)
SET @ErrorCommInner = LEFT(
CASE WHEN @ErrorComm<>N'' THEN @ErrorComm + CHAR(10) ELSE N'' END
+ N'SP:' + ISNULL(ERROR_PROCEDURE(), N'') + CHAR(10)
+ N',Line:' + ISNULL(CAST(ERROR_LINE() AS NVARCHAR), N'') + CHAR(10)
+ N',Severity:' + ISNULL(CAST(ERROR_SEVERITY() AS NVARCHAR), N'') + CHAR(10)
+ N',Error:' + ISNULL(CAST(ERROR_NUMBER() AS NVARCHAR), N'') + CHAR(10)
+ N',Message:' + ISNULL(ERROR_MESSAGE(), N'') + CHAR(10)
+ N',State:' + ISNULL(CAST(ERROR_STATE() AS NVARCHAR), N'') + CHAR(10)
+ ISNULL(N',' + @ErrorCommInner, N'') + N';', 2000)
PRINT @ErrorCommInner
IF @isTran = 1
BEGIN
/*IF XACT_STATE()=-1*/ ROLLBACK TRAN
/*IF XACT_STATE()=1 COMMIT TRAN*/
END
IF @needRaisError <> 0
BEGIN
DECLARE @ErrorSeverityOut INT = ERROR_SEVERITY()
,@ErrorStateOut TINYINT = ERROR_STATE();
THROW 50000, @ErrorComm, 1
END
--endregion Обработчик ошибок
END CATCH
mEx:
IF @needSelect <> 0
BEGIN
IF @needSelectInfo <> 0
SELECT @Result AS 'Res'
,@ErrorComm AS 'ResTxt'
,@ErrorCode AS 'ErrorCode'
,@Message AS 'Message'
,@ErrorSeverity AS 'Severity'
END
RETURN
END
200 строк кода на одну выборку с одним джоином
0
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КадроваяИсторияСотрудниковСрезПоследних.Должность КАК Должность,
| КадроваяИсторияСотрудниковСрезПоследних.Подразделение КАК Подразделение,
| ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Значение КАК Значение
|ИЗ
| РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних(, Период <= &ДатаРег) КАК КадроваяИсторияСотрудниковСрезПоследних,
| РегистрСведений.ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудников.СрезПоследних(, Период <= &ДатаРег) КАК ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних
|ГДЕ
| КадроваяИсторияСотрудниковСрезПоследних.Сотрудник = &Сотрудник
| И ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Показатель = &Показатель
| И ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Сотрудник = &Сотрудник";
Запрос.УстановитьПараметр("ДатаРег", Объект.ДатаОперации);
Запрос.УстановитьПараметр("Сотрудник", Сотрудник);
Запрос.УстановитьПараметр("Показатель", Справочники.ПоказателиРасчетаЗарплаты.НайтиПоНаименованию("Тарифная ставка (часовая)"));
РезультатЗапроса = Запрос.Выполнить();
Довелось допиливать за студентом со стажем 1 год.
Всякое видел, но к таким извращениям не был готов... особенно условию с периодом
Уже молчу про предопределенный показатель и отсутствие связей
0
Бесконечный оффтоп имени Гологуба #1
0
IT Оффтоп #206
#176: https://govnokod.ru/28703 https://govnokod.xyz/_28703
#177: https://govnokod.ru/28709 https://govnokod.xyz/_28709
#178: https://govnokod.ru/28716 https://govnokod.xyz/_28716
#179: https://govnokod.ru/28726 https://govnokod.xyz/_28726
#180: https://govnokod.ru/28734 https://govnokod.xyz/_28734
#181: https://govnokod.ru/28739 https://govnokod.xyz/_28739
#182: https://govnokod.ru/28749 https://govnokod.xyz/_28749
#183: https://govnokod.ru/28777 https://govnokod.xyz/_28777
#184: https://govnokod.ru/28790 https://govnokod.xyz/_28790
#185: https://govnokod.ru/28794 https://govnokod.xyz/_28794
#186: https://govnokod.ru/28815 https://govnokod.xyz/_28815
#187: https://govnokod.ru/28833 https://govnokod.xyz/_28833
#188: https://govnokod.ru/28837 https://govnokod.xyz/_28837
#189: https://govnokod.ru/28840 https://govnokod.xyz/_28840
#190: https://govnokod.ru/28875 https://govnokod.xyz/_28875
#191: https://govnokod.ru/28878 https://govnokod.xyz/_28878
#192: https://govnokod.ru/28886 https://govnokod.xyz/_28886
#193: https://govnokod.ru/28911 https://govnokod.xyz/_28911
#194: https://govnokod.ru/28914 https://govnokod.xyz/_28914
#195: https://govnokod.ru/28917 https://govnokod.xyz/_28917
#196: https://govnokod.ru/28925 https://govnokod.xyz/_28925
#197: https://govnokod.ru/28935 https://govnokod.xyz/_28935
#198: https://govnokod.ru/28938 https://govnokod.xyz/_28938
#199: https://govnokod.ru/28942 https://govnokod.xyz/_28942
#200: https://govnokod.ru/28945 https://govnokod.xyz/_28945
#201: https://govnokod.ru/28948 https://govnokod.xyz/_28948
#202: https://govnokod.ru/28951 https://govnokod.xyz/_28951
#203: https://govnokod.ru/28954 https://govnokod.xyz/_28954
#204: https://govnokod.ru/28971 https://govnokod.xyz/_28971
#205: https://govnokod.ru/28986 https://govnokod.xyz/_28986
0
Хрюкни #40
._ __,
|\,../'\
,'. . `.
.-- '`.
( `' , ;
,`--' _, ,'\
,`.____ `.
/ `, |
' \, '
| / /`,
`, . ,` ./ |
' `. ,' |;,' ,@
______| | _________,_____jv______
`. `. ,'
,'_,','_,
`' `'
#10: https://govnokod.ru/27472 https://govnokod.xyz/_27472
#11: https://govnokod.ru/27517 https://govnokod.xyz/_27517
#12: https://govnokod.ru/27636 https://govnokod.xyz/_27636
#13: (vanished) https://govnokod.xyz/_27711
#14: https://govnokod.ru/27713 https://govnokod.xyz/_27713
#15: https://govnokod.ru/27721 https://govnokod.xyz/_27721
#16: https://govnokod.ru/27722 https://govnokod.xyz/_27722
#17: (vanished) https://govnokod.xyz/_27723
#18: https://govnokod.ru/27724 https://govnokod.xyz/_27724
#19: https://govnokod.ru/27726 https://govnokod.xyz/_27726
#20: https://govnokod.ru/27727 https://govnokod.xyz/_27727
#21: https://govnokod.ru/27870 https://govnokod.xyz/_27870
#22: https://govnokod.ru/28067 https://govnokod.xyz/_28067
#23: https://govnokod.ru/28277 https://govnokod.xyz/_28277
#24: https://govnokod.ru/28471 https://govnokod.xyz/_28471
#25: https://govnokod.ru/28659 https://govnokod.xyz/_28659
#26: (vanished) https://govnokod.xyz/_28661
#27: (vanished) https://govnokod.xyz/_28668
#28: https://govnokod.ru/28678 https://govnokod.xyz/_28678
#29: https://govnokod.ru/28686 https://govnokod.xyz/_28686
#30: https://govnokod.ru/28693 https://govnokod.xyz/_28693
#31: https://govnokod.ru/28700 https://govnokod.xyz/_28700
#32: https://govnokod.ru/28706 https://govnokod.xyz/_28706
#33: https://govnokod.ru/28713 https://govnokod.xyz/_28713
#34: https://govnokod.ru/28723 https://govnokod.xyz/_28723
#35: https://govnokod.ru/28731 https://govnokod.xyz/_28731
#36: https://govnokod.ru/28737 https://govnokod.xyz/_28737
#37: https://govnokod.ru/28741 https://govnokod.xyz/_28741
#38: https://govnokod.ru/28751 https://govnokod.xyz/_28751
#39: https://govnokod.ru/28854 https://govnokod.xyz/_28854
0
Пиздец-оффтоп #104
#74: https://govnokod.ru/28699 https://govnokod.xyz/_28699
#75: https://govnokod.ru/28705 https://govnokod.xyz/_28705
#76: https://govnokod.ru/28712 https://govnokod.xyz/_28712
#77: https://govnokod.ru/28722 https://govnokod.xyz/_28722
#78: https://govnokod.ru/28730 https://govnokod.xyz/_28730
#79: https://govnokod.ru/28736 https://govnokod.xyz/_28736
#80: https://govnokod.ru/28740 https://govnokod.xyz/_28740
#81: https://govnokod.ru/28750 https://govnokod.xyz/_28750
#82: https://govnokod.ru/28779 https://govnokod.xyz/_28779
#83: https://govnokod.ru/28788 https://govnokod.xyz/_28788
#84: https://govnokod.ru/28795 https://govnokod.xyz/_28795
#85: https://govnokod.ru/28808 https://govnokod.xyz/_28808
#86: (vanished) https://govnokod.xyz/_28814
#87: https://govnokod.ru/28817 https://govnokod.xyz/_28817
#88: https://govnokod.ru/28836 https://govnokod.xyz/_28836
#89: https://govnokod.ru/28843 https://govnokod.xyz/_28843
#90: https://govnokod.ru/28874 https://govnokod.xyz/_28874
#91: https://govnokod.ru/28880 https://govnokod.xyz/_28880
#92: https://govnokod.ru/28884 https://govnokod.xyz/_28884
#93: https://govnokod.ru/28889 https://govnokod.xyz/_28889
#94: https://govnokod.ru/28895 https://govnokod.xyz/_28895
#95: https://govnokod.ru/28904 https://govnokod.xyz/_28904
#96: https://govnokod.ru/28912 https://govnokod.xyz/_28912
#97: https://govnokod.ru/28918 https://govnokod.xyz/_28918
#98: https://govnokod.ru/28932 https://govnokod.xyz/_28932
#99: https://govnokod.ru/28936 https://govnokod.xyz/_28936
#100: https://govnokod.ru/28940 https://govnokod.xyz/_28940
#101: https://govnokod.ru/28949 https://govnokod.xyz/_28949
#102: https://govnokod.ru/28978 https://govnokod.xyz/_28978
#103: https://govnokod.ru/28982 https://govnokod.xyz/_28982
0
char main[] = { 0xf0, 0x0f, 0xc7, 0xc8 };