![]() |
![]() |
![]() |
|
8.2 не понятно с попыткой записи документа.. | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
18.10.11
✎
15:35
|
Есть документ - из него создаем подчиненный документ по команде
перед сосзданием подчиненного надо записать текущий (родителя) в Родителе есть обязательные к заполнению поля соответсвенно: &НаКлиенте Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) Если Не ЗначениеЗаполнено(ЭтаФорма.Элементы.НомерИсторииБолезни.ТекстРедактирования) Тогда Предупреждение("Укажите номер истории болезни!"); Отказ = истина; КонецЕсли; КонецПроцедуры команда: &НаКлиенте Процедура ОткрытьМедКартуПациента(Команда) Если Не ЗначениеЗаполнено(Объект.Ссылка) ИЛИ Модифицированность Тогда Попытка Записать(); Исключение Возврат; КонецПопытки; КонецЕсли; в исключение не попадает почему все так плохо и как быть? |
|||
1
RomaH
naïve
18.10.11
✎
15:36
|
в тему:
как проверить необходимость записи объекта? Если Не ЗначениеЗаполнено(Объект.Ссылка) ИЛИ Модифицированность Тогда //правильно ли делать так? |
|||
2
unregistered
18.10.11
✎
15:37
|
>> в исключение не попадает
А должно? Есть предпосылки? |
|||
3
Error pro
18.10.11
✎
15:37
|
Попытка
Если Не ЗначениеЗаполнено(Объект.Ссылка) ИЛИ Модифицированность Тогда Записать(); КонецЕсли; Исключение Возврат; КонецПопытки; а так? |
|||
4
unregistered
18.10.11
✎
15:39
|
(3) Что это?...
|
|||
5
RomaH
naïve
18.10.11
✎
15:39
|
(2) а разве Отказ в ПередЗаписью в 8.1. не попадал в исключение? ... или я все забыл за отпуск
|
|||
6
RomaH
naïve
18.10.11
✎
15:41
|
получается что после
Записать() надо еще и проверить записалось ли? .... Записать(); Если Не ЗначениеЗаполнено(Объект.Ссылка) ИЛИ Модифицированность Тогда Не записалось Иначе Записалось КонецЕсли |
|||
7
RomaH
naïve
18.10.11
✎
15:43
|
типа так:
&НаКлиенте Процедура ОткрытьМедКартуПациента(Команда) Если Не ЗначениеЗаполнено(Объект.Ссылка) ИЛИ Модифицированность Тогда Записать(); КонецЕсли; Если Не ЗначениеЗаполнено(Объект.Ссылка) ИЛИ Модифицированность Тогда Возврат; КонецЕсли; |
|||
8
Mort
18.10.11
✎
15:54
|
Если закрыть глаза на остальной ужас то нужно юзать ЗаписатьВФорме()
|
|||
9
Mort
18.10.11
✎
15:56
|
А если делать по-человечески, сделайте параметризованную команду "Ввести мед карту". Она и запишет все сама и проверит (если в реквизитах прописана проверка заполнения) и из списка будет работать.
|
|||
10
RomaH
naïve
18.10.11
✎
16:08
|
(8) ... это только на толстом клиенте
(9) пока не настолько знаю хорошо 8.2, но за наводку спасибо я понимаю что есть более оптимальные способы решения задачи, но вопрос сейчас не "КАК?", а "ПОЧЕМУ?" почему Отказ при записи не выдает иключение |
|||
11
Mort
18.10.11
✎
16:18
|
Не выдает и хорошо.
Зато возвращает булево Если Записать() Тогда //УРА! |
|||
12
RomaH
naïve
18.10.11
✎
16:27
|
о, а то я перепутал метод объекта и метод формы
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |