|
v7: Автоматическое создание периодики. | ☑ | ||
---|---|---|---|---|
0
Eeakie
20.10.14
✎
12:35
|
Добрый день.
В справочнике есть один периодический реквизит. При создании нового элемента в историю заносится пустое значение этого реквизита. Это нормально? Что может быть не так? |
|||
1
vcv
20.10.14
✎
12:47
|
Сохранением периодических реквизитов можно управлять
СохранениеПериодическихРеквизитов(<?>,); Синтаксис: СохранениеПериодическихРеквизитов(<ВариантВызова>,<Список>) Назначение: Установить режим отображения диалога сохранения периодических реквизитов при записи элемента справочника. Параметры: <ВариантВызова> - вариант вызова метода. Число: 0 - отключить автоматический режим определения списка измененных реквизитов и показ диалога (параметр <Список> не используется); 1 - включить автоматический режим определения списка измененных реквизитов с показом диалога (параметр <Список> определяет набор анализируемых реквизитов); 2 - включить автоматический режим определения списка измененных реквизитов без показа диалога (параметр <Список> определяет набор анализируемых реквизитов); 3 - выполнить определение списка измененных реквизитов с показом диалога (параметр <Список> определяет набор анализируемых реквизитов); 4 - выполнить определение списка измененных реквизитов без показа диалога (параметр <Список> определяет набор анализируемых реквизитов); 5 - выдать/установить список сохраняемых периодических реквизитов. Метод возвращает установленный список периодических реквизитов, которые будут записываться на момент до вызова метода. Если параметр <Список> указан, то устанавливается список периодических реквизитов, которые должны быть записаны. <Список> - необязательный параметр. Строковое выражение, в котором через запятую перечислены имена периодических реквизитов справочника. Если указан символ ''*'', то считается, что в список включены все периодические реквизиты справочника. Возращает: строку, представляющую собой список разделенных запятыми идентификаторв периодических реквизитов: для варианта 5 - список сохраняемых периодических ревизитов по состоянию на момент до вызова метода; для вариантов 1...4 - список сохраняемых периодических ревизитов, изменение которых будет определяться (если такой список установлен при вызове метода). Замечание: Метод доступен только в контексте Модуля формы элемента справочника. Действие данного метода относится только к текущему элементу справочника, который доступен в локальном контексте Модуля формы элемента справочника. |
|||
2
palpetrovich
20.10.14
✎
12:56
|
(0) нормально если значение реквизита не "0/1"
если не устраивает (1) - тупо присвой этому реквизиту "что надо" при ввооде нового |
|||
3
Eeakie
20.10.14
✎
13:24
|
(1) Да, диалог можно вызвать, но в истории уже сохранено пустое значение. Вопрос в том, как вообще обрубить создание периодики при создании нового элемента справочника.
(2) Реквизит "Прих_цена" в справочнике "Товары". При создании вообще не надо ничего присваивать. История должна остаться девственно чиста. |
|||
4
Eeakie
20.10.14
✎
13:41
|
UP.
Неужели никто не сталкивался? |
|||
5
Eeakie
20.10.14
✎
13:42
|
Просто проверьте: создайте новый элемент справочника, не заполняя периодические реквизиты. Что в истории будет после создания?
|
|||
6
Азазель
20.10.14
✎
14:08
|
При создании элемента справочника цена устанавливается не платформой, а кодом конфигурации.
Проверь процедуры ВводНового, ПриОткрытии и ПриЗаписи. Если цена хранится не в справочнике номенклатуры, а в отдельном справочнике цен- выполни аналогичную проверку для модуля формы этого спрачоника. А еще лучше поступи так. Установи для реквизита цены флажок "Изменяется документами" и сними флажок "Ручное изменение". В этом случае пустое значение реквизита при создании элемента не будет записано, так как нет документа. Не забудь написать сам команды авторегистрации цен при проведении приходных документов. |
|||
7
Eeakie
20.10.14
✎
14:14
|
(6) Во всем модуле формы ни единого упоминания про этот реквизит.
ТиС, переписанный. Цена - просто периодический реквизит. А вот за "Изменяется документами" спасибо. Совсем забыл. Без снятия этого флага, похоже, ничего не добиться. Благодарю. |
|||
8
Eeakie
20.10.14
✎
14:15
|
*без снятия флага "Ручное изменение".
|
|||
9
palpetrovich
20.10.14
✎
14:20
|
(6) да ладно, при создании нового Товара, Прих_цена будет равной нулю! ...вообще без модуля
(3) а вот зачем это вообще "История должна остаться девственно чиста."? ...на крайняк можно почистить |
|||
10
Eeakie
20.10.14
✎
14:27
|
(9) Просто не понимаю зачем нужны пустые значения в истории. Избавляюсь от лишнего. А тут такое. Вот и думаю чистить автоматом, если это новый элемент. Снял бы галку "Ручное изменение", но снабжение, бывает, вручную изменяет.
|
|||
11
palpetrovich
20.10.14
✎
14:34
|
(10) думаю на эту "проблему" надо забить! :) ибо так устроем мир...
завел реквизит - как минимум в одной таблице конфигурации он появился, причем место занимает независимо от того, заполнен он или нет :) |
|||
12
Eeakie
20.10.14
✎
14:41
|
(11) Хах, хороший совет ;)
|
|||
13
palpetrovich
20.10.14
✎
14:50
|
(12) если сильно хочется "девственной чистоты", нарисуй вмодуле формы элемента:
Процедура ПриЗакрытии() Если ЭтоНовый = 1 Тогда ОбъектПериодический = СоздатьОбъект("Периодический"); ОбъектПериодический.ИспользоватьОбъект("Прих_цена", ТекущийЭлемент()); ОбъектПериодический.ВыбратьЗначения(,); Пока ОбъектПериодический.ПолучитьЗначение()=1 Цикл ОбъектПериодический.Удалить(); КонецЦикла; КонецЕсли; КонецПроцедуры |
|||
14
Eeakie
20.10.14
✎
15:25
|
(13) Так и хотел сделать. Спасибо ;)
|
|||
15
palpetrovich
20.10.14
✎
15:29
|
(14) не за что, поверь (11) лучше :)
|
|||
16
Eeakie
20.10.14
✎
15:35
|
(15) Поговорил с руководством. "Забили" ;)
|
|||
17
Chameleon1980
21.10.14
✎
00:44
|
(16) %)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |