|
ПроверкаЗаполнения() реквизитов объекта | ☑ | ||
---|---|---|---|---|
0
prtx
23.04.16
✎
13:10
|
товарищи, я уже начинаю нервничать.
у меня есть встроенная обработка, в этой обработке я создаю реквизит (реквизит объекта) ставлю Проверка заполнения - Выдавать ошибку. далее в форме обработки. я делаю кнопку и вот при нажатии на кнопку мне нужно проверять а заполнен ли этот реквизит. следую логике в действии этой кнопки(команды) и вызываю ПроверитьЗаполнение() НО эта зараза проверяет только реквизиты формы, кто должен проверять реквизиты объекта, я что-ли??? в чем проблема. 1с 8.3. уф спасибо! |
|||
1
prtx
23.04.16
✎
13:18
|
(0) методом тыка было выявлено, что функция ПроверитьЗаполнение() вызывает сыбытие ОбработкаПроверкиЗаполненияНаСервере() однако, на сколько я понимаю для того чтобы происходила проверка заполнения реквизитов объекта необходимо событие ОбработкаПроверкиЗаполнения(). а эта падлюка его не вызывает, в чем беда?
|
|||
2
RomanYS
23.04.16
✎
13:25
|
ОбработкаОбъект.<Имя обработки> (DataProcessorObject.<Имя обработки>)
ОбработкаПроверкиЗаполнения (FillCheckProcessing) Синтаксис: ОбработкаПроверкиЗаполнения(<Отказ>, <ПроверяемыеРеквизиты>) Параметры: <Отказ> Тип: Булево. Если в теле процедуры-обработчика установить данному параметру значение Истина, то будет выполнен отказ от продолжения работы после выполнения проверки заполнения. Значение по умолчанию: Ложь. <ПроверяемыеРеквизиты> Тип: Массив. Массив путей к реквизитам, для которых будет выполнена проверка заполнения. Массив может быть модифицирован удалением или добавлением путей к необходимым реквизитам. Описание: Вызывается расширением формы при необходимости проверки заполнения реквизитов в форме, при вызове стандартных команд "OK", "Да", "Повторить", "Пропустить", а также при выполнении метода ПроверитьЗаполнение. |
|||
3
RomanYS
23.04.16
✎
13:28
|
(1) тебе надо вызывать ПроверитьЗаполнение() у обработки(объекта), а не формы
|
|||
4
prtx
23.04.16
✎
13:40
|
(2) после долгих мук я до этого дочитался, и засунул на форму стандартную команду да и ок и другие. нажимаю на кнопку ок и ничего не происходит тупо форма закрывается и все и пофиг, что там половина реквизитов не заполнена.
|
|||
5
prtx
23.04.16
✎
13:43
|
(2) а имеет значение как открывается форма?
ОткрытьФорму("Обработка.ПодборНоменклатуры.Форма.НаРозничнуюПродажу", ПараметрыФормы, ЭтаФорма, , , , , ); |
|||
6
prtx
23.04.16
✎
13:49
|
(3) т.е. это нужно сделать в модуле объекта? да?
а как это сделать? |
|||
7
RomanYS
23.04.16
✎
13:54
|
(4) если я правильно понимаю абзац про расширении формы, то это только для ОФ.
(6) тебе придется на сервере создать обработку (реквизитформывзначение), потом вызвать у нее проверитьзаполнение. Проще (и без лишних вызовов сервера) просто явно проверять что нужно кодом |
|||
8
prtx
23.04.16
✎
14:19
|
(7) честно раньше так и делал. но вот наткнулся на сей механизм, и решил не изобретать велосипед, а использовать это чудо-юдо которое якобы для этого и предназначено...
я одного не пойму а нафига тогда в свойствах реквизитов(реквизиты объекта в обработке) есть этот пункт проверка заполнения? и нафига тогда в модуле объекта (обработки) есть ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) если ее хрен вызовешь, и сама по себе она непонятно как вызывается? |
|||
9
RomanYS
23.04.16
✎
14:27
|
(8) наверное, когда это разрабатывалось УФ ещё не было
|
|||
10
prtx
23.04.16
✎
15:00
|
(9) УРА ТОВАРИЩИ!!!
Вот я лох))) что-то вчера делал и ни понятно нафига снял галку основной реквизит с реквизита формы Объект. т.е. есть на объекте стоит галка "основной реквизит" тогда вызывается ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты), если нет тогда ее фиг вызовешь... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |