Сторінка 1 з 2

Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 03:52
inkognito
Создаю свой внешний отчет/обработку (1С 7.7, Бухгалтерия, версия 294, платформа 027). Хотелось бы доработать пользовательский интерфейс:

1) Имеются настройки полей по-умолчанию (ДатаС, ДатаПо, Фирма, и др).

Нужно: при смене значений полей сохранять новые установки.
При повторном запуске, Процедура ПриОткрытии() - отображать сохраненные значения.
Для каждого поля присвоил свойство "Сохранять при сохранении настройки", но эффекта нет.

2) Формат в гриде - как сделать разделение разрядов в числовых полях?


Добавляю так:
Список.НоваяКолонка("НомерПП", ,,,"№ п/п",3);
Список.НоваяКолонка("Документ",,,,,40,,);
Список.НоваяКолонка("СуммаБезНДС","Число",20,2,,,,2);
Список.НоваяКолонка("Сумма_с_НДС","Число",20,2,,,,2);

Из учебника по 1С 7.7:
Синтаксис: НоваяКолонка(<Идентификатор>, <Тип>, <Длина>, <Точность>, <Заголовок>, <Ширина>, <Формат>, <Положение>)

<Формат> - необязательный параметр. Строковое выражение, содержащее форматную строку, которая будет использована при визуальном отображении значений данной колонки.
И ниодного примера :(
Как его задавать? Пробовал: Формат(### ### ###.##) --- неполучается.

Вот внешний вид приложения:
ЗображенняЗображення

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:02
nachfin
По 1му вопросу думаю без таблицы для хранения измененных данных не обойтись. Должна же программуля где-то заносить данные, для последующего (при открытии) считывания.

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:16
bt
1) Имеются настройки полей по-умолчанию (ДатаС, ДатаПо, Фирма, и др).
Признак "Сохранять при сохранении настройки" говорит о том, что значение будет сохраняться при выполнении пользователем команды "Сохранить настройку" и соответственно восстанавливаться при выполнении команды "Открыть настройку" и выборе соответствующей настройки из списка.

Настройка может сохраняться автоматически при закрытии формы, если при выполнении команды "Сохранить настройку" был установлен флажок "Сохранять автоматически".
Также, настройка может восстанавливаться автоматически, при открытии формы, если при выполнении "Сохранить настройку" был установлен флажок "Использовать при открытии".

Если ты хочешь программно сохранять/восстанавливать настройки, то используй процедуру "СохранитьЗначение" и функцию "ВосстановитьЗначение".
Обычно их используют при обработке событий ПриОткрытии и ПриЗакрытии.

Только учти следующее: настройки сохраняются/восстанавливаются только для текущего пользователя.


2) Формат в гриде - как сделать разделение разрядов в числовых полях?
Параметр формат - это строка, аналогичная параметру "Форматная_строка" в функции Формат(<Параметр>, <Форматная_строка>).
Так что, смотри описание функции Формат(<Параметр>, <Форматная_строка>).

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:22
inkognito
без таблицы для хранения измененных данных не обойтись
Непонял. Создать рядом еще один грид, скрытый, и туда записывать данные?

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:28
nachfin
не грид, а физическую таблицу, Хотя бы временную, на период захода в 1С.

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:33
Borodin
inkognito
1. В глобальном модуле есть процедура глСохранитьЗначение() и функция глВосстановитьЗначение(), соответственно в ПриЗакрытии() - глСохранитьЗначение("НазваниеМоегоОтчета","ДатаС",ДатаС) и в ПриОткрытии() - глВосстановитьЗначение("ДатаС", ДатаС). Все значения между сессиями хранятся в 1Cv7.CFG в каталоге пользователя.

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:36
bt
1) Имеются настройки полей по-умолчанию (ДатаС, ДатаПо, Фирма, и др).
Признак "Сохранять при сохранении настройки" говорит о том, что значение будет сохраняться при выполнении пользователем команды "Сохранить настройку" и соответственно восстанавливаться при выполнении команды "Открыть настройку" и выборе соответствующей настройки из списка.

Настройка может сохраняться автоматически при закрытии формы, если при выполнении команды "Сохранить настройку" был установлен флажок "Сохранять автоматически".
Также, настройка может восстанавливаться автоматически, при открытии формы, если при выполнении "Сохранить настройку" был установлен флажок "Использовать при открытии".

Если ты хочешь программно сохранять/восстанавливать настройки, то используй процедуру "СохранитьЗначение" и функцию "ВосстановитьЗначение".
Обычно их используют при обработке событий ПриОткрытии и ПриЗакрытии.

Только учти следующее: настройки сохраняются/восстанавливаются только для текущего пользователя.

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:39
bt
Borodin писав:inkognito
1. В глобальном модуле есть процедура глСохранитьЗначение() и функция глВосстановитьЗначение(), соответственно в ПриЗакрытии() - глСохранитьЗначение("НазваниеМоегоОтчета","ДатаС",ДатаС) и в ПриОткрытии() - глВосстановитьЗначение("ДатаС", ДатаС). Все значения между сессиями хранятся в 1Cv7.CFG в каталоге пользователя.
Они отличаются по действию от стандартных процедур языка СохранитьЗначение/ВосстановитьЗначение и имеют, так сказать, ряд побочных эффектов по сравнению со стандартными.

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:47
Borodin
bt, это просто обертки над этими функциями.

Re: Создание процедур. Сохранение параметров и формат сумм в гриде

Додано: 15 жовтня 2012, 04:50
bt
Borodin писав:bt, это просто обертки над этими функциями.
Я знаю.
Кроме того, они не являются частью стандартной библиотеки 1С,
хотя наверное во всех типовых конфигурациях присутствуют.