Skip to content

Instantly share code, notes, and snippets.

View evgenylavelin-xx's full-sized avatar

Евгений Лавелин evgenylavelin-xx

View GitHub Profile
// Выгрузка данных из списка справочника в таблицу значений
// СправочникСписок - элемент формы список справочника
Функция ПолучитьСписокВТаблицу()
Построитель = Новый ПостроительЗапроса; // Создаем построитель отчетов
Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(СправочникСписок); // Источником для построителя будет наш СправочникСписок
Результат = Построитель.Результат; // Получаем результат обработки построителем
ТаблицаЗначений = Результат.Выгрузить(); // Выгужаем результат в таблицу значений
Воврат ТаблицаЗначений; // Возвращаем в таблице значений данные из списка справочника с учетом отборов
КонецФункции
:: @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
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;
ВЫБРАТЬ
Выборка.Владелец.Владелец КАК Конфигурация,
Выборка.Владелец КАК ПКО,
Выборка.Ссылка КАК ПКС,
ВЫБОР
КОГДА Выборка.Источник.ПометкаУдаления
ИЛИ Выборка.Приемник.ПометкаУдаления
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК ИспользуютсяУдаленные,
//{
//Если вы хотите создать предопределенные данные средствами платформы, то менять конфигурацию не нужно. Можно использовать примерно такой код:
//Нужно понимать, что этот код сработает для справочника "СправочникПример" у которого в данных нет предопределенных элементов, и у которого в метаданных есть предопределенный элемент с именем "Предопределенный".
//}
// Принудительно включаем автообновление предопределенных данных на уровне данных
Справочники.СправочникПример.УстановитьОбновлениеПредопределенныхДанных(ОбновлениеПредопределенныхДанных.ОбновлятьАвтоматически);
// Сбрасываем признак, что предопределенные данные инициализированы
Справочники.СправочникПример.УстановитьИнициализациюПредопределенныхДанных(Ложь);
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;
-- 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.
----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'
@evgenylavelin-xx
evgenylavelin-xx / VBA.Корректировка данных файла Excel
Created December 5, 2017 06:27
Необходимо было вставить в определенное место на Лист1 скопированные ячейки из Лист2 и заполнить определенную ячейку данными, найденными на Лист3...
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
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