|
Передача ссылки во внешней обработке | ☑ | ||
---|---|---|---|---|
0
manti
25.02.13
✎
12:15
|
Создаю внешнюю обработку по заполнению ТЧ документа. Нужно проверить - по ссылке на документ его модийицированность и новый ли он
Функция Печать() Если СсылкаНаОбъект.ЭтоНовый() Тогда Предупреждение("Документ можно распечатать только после его записи"); Возврат неопределено; КонецЕсли; Если Не РаботаСДиалогами.ПроверитьМодифицированность(СсылкаНаОбъект) Тогда Возврат неопределено; КонецЕсли; КонецФункции // ПечатьИНВ19() Функция ПроверитьМодифицированность(Документ) Экспорт Результат = Ложь; Если Документ.Модифицированность() Тогда Проведен = Метаданные.Документы.Содержит(Документ.Метаданные()) И Документ.Проведен; СтрПроведен = ?(Проведен, " и провести",""); КонецФункции // ПроверитьМодифицированность() В итоге ругается: 1) Метод объекта не обнаружен (ЭтоНовый) Если СсылкаНаОбъект.ЭтоНовый() Тогда 2)Метод объекта не обнаружен (Модифицированность) Если Документ.Модифицированность() Тогда |
|||
1
manti
25.02.13
✎
12:15
|
СсылкаНаОбъект=ДокументСсылка.ИнвентаризацияТоваровНаСкладе
|
|||
2
Defender aka LINN
25.02.13
✎
12:16
|
(1) Молодец
|
|||
3
manti
25.02.13
✎
12:24
|
СсылкаНаОбъект.ПолучитьОбъект().ЭтоНовый() - вроде прокатило)
|
|||
4
Defender aka LINN
25.02.13
✎
12:29
|
(3) Рукалицо...
Напиши вместо ЭТОГО "Ложь". Идиотизма одинаково, а работать быстрее будет |
|||
5
PLUT
25.02.13
✎
12:31
|
если внешнюю обормотку по заполнению ТЧ вызвал, полюбому независимо от результата у документа Модифицированность установится
|
|||
6
Serg_1960
25.02.13
✎
13:01
|
(0) "Создаю внешнюю обработку по заполнению ТЧ документа" - тогда зачем взял "за основу" внешнюю печатную форму?
Неудачный выбор у вас, однако :)) Для обработки печати - передаётся ссылка, для обработки заполнения ТЧ - объект. "Я сам себе злобный Буратино"(с) |
|||
7
GANR
25.02.13
✎
13:09
|
Сам факт существования ссылки опровергает "новость" объекта (как ПРАВИЛО). Это для ДокументОбъект.ЭтоНовый() имеет смысл.
|
|||
8
GANR
25.02.13
✎
13:10
|
"Новый" значит не записан на диск, а (1) всегда будет = Ложь
|
|||
9
GANR
25.02.13
✎
13:10
|
(8) к (3)
|
|||
10
GANR
25.02.13
✎
13:14
|
(0) Добейся, чтобы вместо ссылки ДокументОбъект пересылался в процедуру. "Отладка\Стек вызовов" в помощь.
|
|||
11
Cube
25.02.13
✎
13:14
|
(3) Ахахаха))) Жги ищо!!)))
|
|||
12
GANR
25.02.13
✎
13:15
|
А чтобы остановиться в коде обработки - смоделируй ошибку и "Остановка по ошибке" (деление на 0, к примеру).
|
|||
13
GANR
25.02.13
✎
13:18
|
(11) Тебе смешно))). (4) и (7) в ярость бросило.
|
|||
14
Defender aka LINN
25.02.13
✎
13:27
|
(12) Извращенец :)
Что мешает форму нарисовать? |
|||
15
GANR
25.02.13
✎
13:50
|
(14) А чего? (12) это неплохой прием отладки.
|
|||
16
Defender aka LINN
25.02.13
✎
13:58
|
(15) Еще раз:
1. Делаешь форму у обработки. 2. На формы высовываешь "СсылкаНаОбъект" 3. По кнопке "Выполнить" вызываешь процедуру "Печать" 4. ????? 5. PROFIT Инструменты отладки, my ass... |
|||
17
Cube
25.02.13
✎
13:58
|
(15) Эх ты... :)
|
|||
18
GANR
25.02.13
✎
14:06
|
(16) Это, конечно, хорошо, но надо бы понять по каким принципам можно в обработку ДокОбъект (не ссылка) передать, учитывая особенности подсистемы "Доп. отчеты и обработки". А дальше ДокОбъект.ЭтоНовый() и проверить (0).
|
|||
19
Defender aka LINN
25.02.13
✎
14:33
|
(18) Объект передается обработке заполнения, а не печати, если что.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |