Instantly share code, notes, and snippets.

View VBA.Разбиение листа на несколько листов
Sub SplitSheet()
Dim i As Long, ws As Worksheet
Const maxCount As Double = 100
Application.ScreenUpdating = False: Set ws = ActiveSheet
For i = 1 To ws.UsedRange.Row + ws.UsedRange.Rows.Count - 1 Step maxCount
Sheets.Add After:=Worksheets(Worksheets.Count)
Sheets(1).Rows(i & ":" & i + maxCount).Copy Sheets(Sheets.Count).Range("A1")
Next
End Sub
View VBA.Корректировка данных файла Excel
Sub correctSheet()
Dim lastRows As Long, dateDog As String, FIO As String
Application.DisplayAlerts = False
Sheets("Лист2").Select
Range("A1:C1").Select
'Копируем ячейки, которые необходимо будет вставить на Лист1
Selection.Copy
Sheets("Лист1").Select
Range("A1").Select
View SQL.Восстановление базы с отключением пользователей
----Make Database to single user Mode
ALTER DATABASE YourDB
SET SINGLE_USER WITH
ROLLBACK IMMEDIATE
----Restore Database
RESTORE DATABASE YourDB
FROM DISK = 'D:\BackUpYourBaackUpFile.bak'
WITH MOVE 'YourMDFLogicalName' TO 'D:\DataYourMDFFile.mdf',
MOVE 'YourLDFLogicalName' TO 'D:\DataYourLDFFile.ldf'
View SQL.Включение параметра xp_cmdshell
-- To allow advanced options to be changed.
EXEC sp_configure 'show advanced options', 1;
GO
-- To update the currently configured value for advanced options.
RECONFIGURE;
GO
-- To enable the feature.
EXEC sp_configure 'xp_cmdshell', 1;
GO
-- To update the currently configured value for this feature.
View SQL.Копирование файла
DECLARE @SourceFile AS VARCHAR(500);
DECLARE @DestinationFile AS VARCHAR(500);
DECLARE @Cmd AS VARCHAR(500);
SET @SourceFile = '\\SourceFileName';
SET @DestinationFile = 'DestinationFileName';
SET @Cmd = 'COPY "' + @SourceFile + '" "' + @DestinationFile + '"';
EXEC master.dbo.xp_cmdshell @Cmd;
View Алгоритмы.ВосстановлениеПредопределенныхЭлементов
//{
//Если вы хотите создать предопределенные данные средствами платформы, то менять конфигурацию не нужно. Можно использовать примерно такой код:
//Нужно понимать, что этот код сработает для справочника "СправочникПример" у которого в данных нет предопределенных элементов, и у которого в метаданных есть предопределенный элемент с именем "Предопределенный".
//}
// Принудительно включаем автообновление предопределенных данных на уровне данных
Справочники.СправочникПример.УстановитьОбновлениеПредопределенныхДанных(ОбновлениеПредопределенныхДанных.ОбновлятьАвтоматически);
// Сбрасываем признак, что предопределенные данные инициализированы
Справочники.СправочникПример.УстановитьИнициализациюПредопределенныхДанных(Ложь);
View 1C.Конвертация данных. Некорректные ПКС
ВЫБРАТЬ
Выборка.Владелец.Владелец КАК Конфигурация,
Выборка.Владелец КАК ПКО,
Выборка.Ссылка КАК ПКС,
ВЫБОР
КОГДА Выборка.Источник.ПометкаУдаления
ИЛИ Выборка.Приемник.ПометкаУдаления
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК ИспользуютсяУдаленные,
View SQL. Размер таблиц базы данных
DBCC UPDATEUSAGE (0);
CREATE TABLE #t([имя таблицы] varchar(255), [строк] varchar(255), [зарезервировано] varchar(255), [всего данных] varchar(255), [размер индексов] varchar(255), [свободно] varchar(255));
INSERT INTO #t
exec sp_msforeachtable N'exec sp_spaceused ''?''';
SELECT * FROM #t ORDER BY CONVERT(bigint, REPLACE([всего данных], ' KB', '')) DESC;
DROP TABLE #t;
View Администрирование.Перезапуск службы агент сервера 1С
:: @echo off
:: Останавливаем службу агента сервера 1С Предприятия
set logfile="Logs\stopstartlog.txt"
echo %date% %time% "Начало остановки службы агента сервера 1С Предприятия" >>%logfile%
net stop "1C:Enterprise 8.3 Server Agent" >>%logfile%
:: Пауза
echo %date% %time% "Начало паузы" >>%logfile%
set timeout=10timeout /t %
timeout% /nobreak
View Алгоритмы.ДанныеИзСправочникСписок
// Выгрузка данных из списка справочника в таблицу значений
// СправочникСписок - элемент формы список справочника
Функция ПолучитьСписокВТаблицу()
Построитель = Новый ПостроительЗапроса; // Создаем построитель отчетов
Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(СправочникСписок); // Источником для построителя будет наш СправочникСписок
Результат = Построитель.Результат; // Получаем результат обработки построителем
ТаблицаЗначений = Результат.Выгрузить(); // Выгужаем результат в таблицу значений
Воврат ТаблицаЗначений; // Возвращаем в таблице значений данные из списка справочника с учетом отборов
КонецФункции