|
|
|
V8: Как вызвать ввод на основании ? Ø |
☑ | ||
|---|---|---|---|---|
|
0
alexb
31.08.05
✎
09:55
|
Тоесть у меня в документе например ЗаказПоставщику есть кнопка ВвестиНаОсновании что я должен написать в обработчике нажатия кнопки ?
|
|||
|
1
Filin
31.08.05
✎
10:06
|
А зачем такие сложности? Пиши свой код в Процедуре "ОбработкаЗаполнения()" модуля документа который хочешь создать. Естественно, в свойствах ЗаказаПоставщику определи "Является основанием для:".
|
|||
|
2
ahirzaman
31.08.05
✎
10:08
|
Создаешь новый документ-объект. А потом вызываешь метод "заполнить". Например:
Док = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент(); Док.Заполнить(Ссылка); Док.Записать(РежимЗаписиДокумента.Запись); |
|||
|
3
alexb
31.08.05
✎
10:20
|
Сложности вот от куда.
Есть документ заказ поставщику. Мне нужно на основании этого заказа сделать несколько партий прихода товара(по частям). Я всю табличную часть заказа выгружаю в обработку, там пользователь говорит что мол хочет оприходовать на склад только то и то то. Вот во внешней обработке мне и нужна такая кнопка ввода на основании. Тоесть мне нужно готовую табл. часть из внешней обработки выгрузить в поступление товаров и услуг но так чтоб это поступление являлось введенным на основании заказаПоставщику |
|||
|
4
alexb
31.08.05
✎
10:22
|
(2) А где в твоем примере про основание сказанно ?
|
|||
|
5
ahirzaman
31.08.05
✎
10:24
|
Ну тогда можно все так же как я написал, только вместо "Ссылка" указать ссылку на твой документ, а заполнение таб части прописать ручками... или сразу все писать ручками, главное не забудь в реквизите "Сделка" поставить ссылку на нужный тебе заказ
|
|||
|
6
alexb
31.08.05
✎
10:25
|
А как перехватить заполнение таблиной части ?
|
|||
|
7
ahirzaman
31.08.05
✎
10:28
|
Заполнить(<Основание>)
Параметры: <Основание> (обязательный) Тип: Произвольный. Значение, на основании которого выполняется заполнение документа. Описание: Заполняет данные документа данными из другого объекта. Инициирует событие ОбработкаЗаполнения и вызов его процедуры-обработчика в модуле документа. В ней может размещаться алгоритм, заполняющий данные документа из переданного значения. Примечание: Для заполнения может использоваться значение любого типа. А структура подчиненности документов, по крайней мере в УПП, определяется перебором документов и проверкой всех их реквизитов на наличие ссылки на нужный документ. Сам с трудом понимаю что написал, может кто понятнее напишет )) |
|||
|
8
ahirzaman
31.08.05
✎
10:30
|
можешь поковырять "ОбработкаЗаполнения" в подчиненном документе, а можешь просто очистить табличную часть и заново заполнить... Лично я очищал просто удалял ненужные строки из табличной части, хотя это не всегда эффективно
|
|||
|
9
ahirzaman
31.08.05
✎
10:32
|
можешь поковырять "ОбработкаЗаполнения" в подчиненном документе, а можешь просто очистить табличную часть и заново заполнить... Лично я очищал просто удалял ненужные строки из табличной части, хотя это не всегда эффективно
|
|||
|
10
alexb
31.08.05
✎
10:48
|
Да, все нормально работает.
Но вот еще какой вопрос, как вызвать в новом созданном документе процедуру ТоварыНоменклатураПриИзменении(Элемент), для того что бы проставились счета учета по умолчанию, коэффициеты и т.д. Что б мне туда передовать только номенклатура, количество, цена, а все остальное мне просто заполнить по умолчанию вышеназванной процедурой ? |
|||
|
11
ahirzaman
31.08.05
✎
10:51
|
Честно говоря не пробовал, но попробуй написать в заголовке процедуры "Экспорт". Тогда она вроде станет доступна из других модулей. Я так использую процедуру "Печать"
|
|||
|
12
alexb
31.08.05
✎
11:00
|
Дело в том что Экспортные видны, тогда когда они описанны в модуле документа, а она в форме. Так что Экспорт не катит ихмо?
|
|||
|
13
ahirzaman
31.08.05
✎
11:11
|
Честно говоря не помню, но в модуле формы документа есть процедуры с ключевым словом "Экспорт". Кстати, там в начале идет такая строка:
СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные; а дальше работа идет с этой строкой табличной части. Так что, по моему, лучше все-таки перенести эту процедуру в твой модуль. Тем более что там используются в основном процедуры из общих модулей и сама процедура небольшая |
|||
|
14
alexb
31.08.05
✎
11:48
|
Почему то не удается в новый документ передать
НоваяДокумент.ОтражатьВБухгалтерскомУчете = Ложь; НоваяДокумент.ОтражатьВНалоговомУчете = Ложь; В нем все равно эти реквизиты истина...почему ? |
|||
|
15
ahirzaman
31.08.05
✎
12:28
|
Посмотри в отладчике
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |