Имя: Пароль:
1C
 
Где хранятся параметры информационной базы?
0 1Сергей
 
12.03.26
12:05
В частности, меня интересуют параметры Время завершения сеанса при бездействии.
https://i.ibb.co/8g9h9TkY/Snag-94915311.png
1 1Сергей
 
12.03.26
12:46
Нашёл

SELECT
       [FileName]
      ,[Creation]
      ,[Modified]
      ,[Attributes]
      ,[DataSize]
      ,[BinaryData]
      ,[PartNo]
  FROM [DB].[dbo].[Params]
  where FILENAME='ibparams.inf'


только там бинаридата. Пичалька
2 Fragster
 
гуру
12.03.26
12:50
сохрани 1 к 1 на диск и открой блокнотом
3 1Сергей
 
12.03.26
13:57
(2) мне надо изменить параметр средствами скуля

Суть. В Рабочей базе включено ограничение на бездействие - 120 мин. На тестовом сервере еженощно создается копия базы "на вчера" средствами скуля. Рег.задания отключены. Хотелось чтобы во вчерашней копии ограничение на бездействие было отключено.
Можно было бы сделать обработкой в самой 1С, но рег задания отключены
4 Мультук
 
гуру
12.03.26
14:21
(3)

1) У вас после создания тестовой базы не запускается обработка затирающая "во избежании" явки/пароли в сервисах обмена и т.п. ?

2) Кто мешает после создания тестовой базы запускать скриптом нужную обработку.

3) А что реально этот параметр можно поменять через api 1С ?
А можно тынц на метод/функцию -- видать я что-то пропустил
5 1Сергей
 
12.03.26
14:47
(4)

1) нет
2) как это "скриптом"? это клиента запускать чтоли?
3) Да, можно
6 H A D G E H O G s
 
12.03.26
14:50
(3) Берем простой советский копеечный код на Дельфи

procedure TForm1.Button1Click(Sender: TObject);
var
  dataBytes: TBytes;
  counter: Integer;
  bytesText, dataText: String;
begin
  ADOQuery.SQL.Text :=
    'SELECT BinaryData FROM Params WHERE FILENAME=''ibparams.inf''';
  ADOQuery.Open;
  ADOQuery.ExecSQL;
  dataBytes := ADOQuery.FieldByName('BinaryData').AsBytes;
  bytesText := '';
  dataText := '';
  for counter := 0 to length(dataBytes) - 1 do
  begin
    bytesText := bytesText + inttostr(dataBytes[counter]) + ' ';
    dataText := dataText + chr(dataBytes[counter]);
  end;

  Memo1.Lines.Text := bytesText + #13#10 + '--------------' + #13#10 + dataText;
end;

Получаем байты и текст для значения засыпания в 3600 секунд. Сохраняем его в сравнение текста онлайн.

Меняем время засыпания на 7200, получаем байты и текст для значения засыпания в 7200 секунд. Сохраняем его в сравнение текста онлайн в другое окно.
Сравниваем.

Находим место хранения в псевдоjsone 1С. УБЕЖДАЕМСЯ, что первые 4 байта не поменялись - значит это не хешсумма, куда она прям напрашиватеся, либо время засыпания в нее не входит. Пишем обратную функцию на Дельфи.

Профит.
Программист всегда исправляет последнюю ошибку.