|
Вспомогательные данные разработчика | ☑ | ||
---|---|---|---|---|
0
lero84
18.01.18
✎
11:10
|
Добрый день!
Имеем 1С 8.3. Для работы нужно создать какой-нибудь вспомогательный справочник или регистр для хранения дополнительной, вспомогательной информации. В частности сейчас нужно хранить дату конкретного изменения в конфигурации для начала работы такого изменения. Далее возможно для подстановки значений или еще для каких-нибудь целей. хочется сделать что-нибудь просто и универсальное. Подскажите как лучше? Справочник с реквизитом - значение (все ссылки на справочники, документы, перечисления, строка, число, дата). И дальше, например, вводить предопределенные элементы справочника для быстрого поиска. Либо регистр сведений - с измерением строка, и ресурс - Значение. Что быстрее будет работать, что меньше будет грузить процессы. Или не париться и просто проверять на дату прям в коде |
|||
1
Волшебник
модератор
18.01.18
✎
11:10
|
проверять на дату прям в коде
|
|||
2
lodger
18.01.18
✎
11:12
|
(1) но это не отвечает на вопрос о централизации и универсальности для каждого чиха.
кстати, за это в любом случае придется заплатить вычислительным временем. |
|||
3
vicof
18.01.18
✎
11:17
|
Константа + ФО.
|
|||
4
vicof
18.01.18
✎
11:17
|
Или просто функция, возвращающая дату действия начала такого-то механизма
|
|||
5
Волшебник
модератор
18.01.18
✎
11:19
|
(4) Лучше использовать не дату, а константу типа "Номер версии".
|
|||
6
lero84
18.01.18
✎
11:20
|
Всем огромное спасибо!!
Пока буду проверять на дату прям в коде, т.к. обращения будут достаточно частые. Дальше будем решать по мере поступления задач) |
|||
7
lodger
18.01.18
✎
11:22
|
(5) например, вот версия новая от 2018, а для документа 2017го года хочется поведение версии 2017го года.
можно так: АлгоритмПроведения = МойМодуль.АлгоритмПроведения(ЭтотОбъект.Метаданные,ЭтотОбъект.Дата); Если АлгоритмПроведения = 1 тогда //код1 ИначеЕсли АлгоритмПроведения = 2 Тогда //код2 Иначе //код0 конецесли |
|||
8
lero84
18.01.18
✎
11:24
|
(5) про ведение версий - это мысль!
|
|||
9
ildary
18.01.18
✎
11:35
|
(7) а почему кусок
Если АлгоритмПроведения = 1 тогда //код1 ИначеЕсли АлгоритмПроведения = 2 Тогда //код2 Иначе //код0 конецесли нельзя поместить прямо в МойМодуль.АлгоритмПроведения() - чтобы не бегать между двумя модулями? Тогда открыв МойМодуль можно увидеть все изменения в одном месте. |
|||
10
lodger
18.01.18
✎
11:37
|
(9) это уже оптимизация и рефакторинг. можно и так, можно и сяк.
|
|||
11
FIXXXL
18.01.18
✎
11:50
|
Если алгоритм затрагивает несколько документов?
У нас сделан справочник "Название-ДатаНачалаДействия", добавляются ПРЕДОПРЕДЕЛЕННЫЕ элементы при необходимости. "Да-Нет" о работе алгоритма возвращается из общего модуля ПовторногоИспользования. Иначе был бы зоопарк из констант :) Еще есть параметры учетной политики, через РС и ПланВидовХарактеристик. Там можно черта лысого хранить, при желании. Так через ПовтИсп получаем значения параметров по имени предопределенного элемента Плана. |
|||
12
ILM
гуру
18.01.18
✎
14:06
|
А чем регистр сведений не устраивает? Сделали ссылку на тип объекта, сделали условия, хранилище структуры параметров и если нужно даже кода. Хотя все уже было изобретено до нас. Смотрите монитор ввода данных и правила ввода данных.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |