|
|
|
СРОЧНО!!! Помогите с сохранением элемента справочника Ø |
☑ | ||
|---|---|---|---|---|
|
0
davinсhi
27.06.06
✎
11:48
|
На форме элемента справочника есть флажок, при его изменении необходимо выполнить ряд проверок, для этого элемент справочника должен быть записан, в формуле флага следующая процедура:
//_____________________________________________________________________________ Процедура ПриИзмененииФлага() Если ПустоеЗначение(ТекущийЭлемент()) = 1 Тогда Если Вопрос("Тут текст сообщения..."+РазделительСтрок+"Сохранить введенные данные?", 1) = 1 Тогда Записать(); // -> вот тут ошибка: "Данная команда не может выполняться в формуле элемента диалога!" Иначе //тут возвращаем прежнее значение флага Флаг = 0; Возврат; КонецЕсли; КонецЕсли; // далее необходимые проверки... КонецПроцедуры //- Посоветуйте как быть, кроме варианта сохранять кнопкой после сообщения о необходимости сохранить... |
|||
|
1
Hedin
27.06.06
✎
11:53
|
А почему незя всё делать "ПриЗаписи" ???
|
|||
|
2
davinchi
27.06.06
✎
11:56
|
а в тот момент элемент уже будет записан???
|
|||
|
3
frodo6x3
27.06.06
✎
11:57
|
Может что-то типа:
Спр=СоздатьОбъект("Справочник.!!!!!!!!!!"); Спр.НайтиПоКоду(Код);//Если коды уникальны Спр.Записать(); |
|||
|
4
Hedin
27.06.06
✎
12:01
|
(2) Нет.
пишиш все проверки, если какойто касяк то просто: Сообщить("Нельзя записать элемент"); СтатусВозврата(0); Возврат; |
|||
|
5
davinchi
27.06.06
✎
12:02
|
дык элемент справочника пока не сохранен в базе не существует и по коду не найдется...
|
|||
|
6
Hedin
27.06.06
✎
12:03
|
Нафига тебе проверки ПОСЛЕ записи???
|
|||
|
7
Графитыч
27.06.06
✎
12:07
|
проверяй реквизиты (нужные) по отдельности, непосредсвенно при изменении этих реквизитов. Сам элемент можно и не записывать.
|
|||
|
8
karek
27.06.06
✎
12:10
|
А если не секрет, какого рода проверки должны быть выполены, чтобы элемент при этом был записан?
|
|||
|
9
davinсhi
27.06.06
✎
12:15
|
проверки состоят в том что проверяется информация о элементе справочника по информации лежащей в других доках... чтобы было более пнятно: речь идет о самописной конфе по приему абитуриентов для ВУЗа; есть справочник Абитуриенты, где забивается вся его личная инфа; естя документы - Олимпиадная ведомость, где списки ФИО тех кто участвовал в олимпиадах и их результаты; флаг - Участник олимпиады; родитель элемента абитуриента - его форма обучения, ее родитель - специальность, а ее родитель факультет; при установке флага выполняется проверка, т.е. этот абитура ищется в олимпиадной ведомости, а для этого необходимо знать от элемента справочника наименование и родителей, т.е. в глобальнике процедурка, которая все это проверяет - так вот ей нужен СУЩЕСТВУЮЩИЙ (записанный в базу) элемент справочника абитуриенты... переписывать ее жутко неохото...
|
|||
|
10
frodo6x3
27.06.06
✎
12:15
|
Проверяй поля формы в ПриЗаписи(), потом если где-то касяк СтатусВозврата(0) выдавай сообщение, что поле не правильно заполнено и активируй это поле, чтобы перезаполнили.
|
|||
|
11
Сли то
27.06.06
✎
12:21
|
"..абитура ищется в олимпиадной ведомости.." "..так вот ей нужен СУЩЕСТВУЮЩИЙ (записанный в базу) элемент.."
А как ты думаешь есть ли в алимпиадной ведомости незаписанный элемент? |
|||
|
12
karek
27.06.06
✎
12:22
|
(9) Ну если у тебя элемент еще не записан, то откуда он возьмется в олимпиадной ведомости или вобще где бы то ни было??? В этом случае и проверку не надо делать. я так думаю...
|
|||
|
13
Hedin
27.06.06
✎
12:22
|
Проверяй не через эту процедуру, а ручками в контексте элемента справочника
|
|||
|
14
davinсhi
27.06.06
✎
12:26
|
в ведомостях не элементы справочника, а просто строковые ФИО... я же писал: "... а для этого необходимо знать от элемента справочника НАИМЕНОВАНИЕ и родителей...", т.е. сверка идет по сравнению строкового наименования с ФИО из ведомости, а ведомость ищется по родителям элемента справочника...
|
|||
|
15
Редкий гость
27.06.06
✎
12:27
|
(0)Правила форума читать не пробовали?
|
|||
|
16
davinсhi
27.06.06
✎
12:30
|
(15) что-то не так???
|
|||
|
17
Сли то
27.06.06
✎
12:38
|
"..т.е. сверка идет по сравнению строкового наименования с ФИО из ведомости.."
Ну тебе ни чего не мешает передавать из этой формы ФИО в виде строки . "..а ведомость ищется по родителям элемента справочника.." А определить будующего родителя нового элемента ведь можно? |
|||
|
18
karek
27.06.06
✎
12:40
|
А попробуй в свою глоб. процедуру вместо ссылки на справочник передавать контекст формы элемента. Может и прокатит.
|
|||
|
19
davinсhi
27.06.06
✎
12:41
|
да...
|
|||
|
20
davinсhi
27.06.06
✎
12:45
|
(19) to (17)
(18) думал уже об этом, тока для этого надо процедурку переделывать - нехотелось бы, она еще много где используется... |
|||
|
21
karek
27.06.06
✎
12:49
|
(20) Если процедура действительно ищет в базе элемент по переданной ей ссылке, то да, надо переделывать. А если она просто читает из ссылки занчения атрибутов, то и с контекстом будет работать так же.
|
|||
|
22
davinсhi
27.06.06
✎
13:27
|
(21) в процедуре просто читаются значения реквизитов!!!
т.е. вместо глПолучитьРезультатыОлимпиады(ТекущийЭлемент()) надо написать глПолучитьРезультатыОлимпиады(Контекст) |
|||
|
23
davinсhi
27.06.06
✎
13:35
|
СПАСИБО всем огромное... помогло с передачей контекста...
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |