|   |   | 
| 
 | Не получается заполнить данные одного объекта на основании другого | ☑ | ||
|---|---|---|---|---|
| 0
    
        Санта 18.10.11✎ 12:33 | 
        НоменклатураВладелец = ТекСтрокаТабНаборы.Номенклатура;
  НоваяНоменклатура = Справочники.Номенклатура.ПолучитьФормуНовогоЭлемента(); НоваяНоменклатура.Заполнить(НоменклатураВладелец.ПолучитьОбъект()); НоваяНоменклатура.Открыть(); Открывается не заполненная форма. Ожидаю, что форма заполнится на основании данных из НоменклатураВладелец Как сделать? | |||
| 1
    
        Санта 18.10.11✎ 12:34 | 
        Это прочитано
  СправочникОбъект.<Имя справочника> (CatalogObject.<Имя справочника>) Заполнить (Fill) Синтаксис: Заполнить(<ДанныеЗаполнения>) Параметры: <ДанныеЗаполнения> (обязательный) Тип: Произвольный. Значение, на основании которого выполняется заполнение элемента справочника. Описание: Заполняет данные элемента данными из другого объекта. Инициирует событие ОбработкаЗаполнения и вызов его процедуры-обработчика в модуле справочника. В ней может размещаться алгоритм, заполняющий данные элемента из переданного значения. Доступность: Сервер, толстый клиент, внешнее соединение. Примечание: Для заполнения может использоваться значение любого типа. Пример: Объект.Заполнить(ОбъектОснование); | |||
| 2
    
        Mort 18.10.11✎ 12:36 | 
        Форма, Ссылка и Объект. Покурить что это за типы, и разобраться что у тебя там в (0) намешано.     | |||
| 3
    
        Жан Пердежон 18.10.11✎ 12:36 | 
        на типы данных обрати внимание     | |||
| 4
    
        Санта 18.10.11✎ 12:37 | 
        (3) 
  НоваяНоменклатура = Справочники.Номенклатура.ПолучитьФормуНовогоЭлемента(); НоваяНоменклатура.Заполнить(НоменклатураВладелец.ПолучитьОбъект()); Получаю форму нового, метод Заполнить() - метод объекта, который есть в форме. Не понимаю | |||
| 5
    
        Санта 18.10.11✎ 12:39 | 
        Вот так тоже ничего не меняется
  НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент(); НоваяНоменклатура.Заполнить(НоменклатураВладелец.ПолучитьОбъект()); НоваяФорма = НоваяНоменклатура.ПолучитьФорму(); НоваяФорма.Открыть(); | |||
| 6
    
        zladenuw 18.10.11✎ 12:40 | 
        НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
  НоваяНоменклатура.Заполнить(НоменклатураВладелец.Ссылка); НоваяФорма = НоваяНоменклатура.ПолучитьФорму(); НоваяФорма.Открыть(); а так ? | |||
| 7
    
        Reset 18.10.11✎ 12:40 | 
        В Заполнить, как правило, ссылку передают (не регламентировано, но это чаще встречается)
  Возможно, в обработчике происходит проверка типа и заполнение не выполняется; возможно, там вообще нет заполняющего кода | |||
| 8
    
        Санта 18.10.11✎ 12:41 | 
        (6) ничего не изменилось, пустая форма открывается     | |||
| 9
    
        Reset 18.10.11✎ 12:41 | 
        Посмотри собтие ОбработкаЗаполнения твоего модуля объекта номенклатура     | |||
| 10
    
        zladenuw 18.10.11✎ 12:42 | 
        та да (9), скорей всего там (7)     | |||
| 11
    
        Санта 18.10.11✎ 12:43 | 
        (9) Нет такого события в модуле объекта.
  Без него работать не будет что-ли? (конфу менять нельзя) | |||
| 12
    
        Mort 18.10.11✎ 12:44 | 
        Скопировать()     | |||
| 13
    
        Reset 18.10.11✎ 12:44 | 
        (11) Нет обработчика => нет заполнения.
  Возможно, тебе подойдет создание копированием | |||
| 14
    
        Санта 18.10.11✎ 12:44 | 
        +(11) Заполнение что-ли в обработке заполнения прописывать надо? По умолчанию не заполняет?     | |||
| 15
    
        Санта 18.10.11✎ 12:45 | 
        (13) > создание копированием
  По метаданным перебрать поля и заполнить что-ли? | |||
| 16
    
        Reset 18.10.11✎ 12:46 | 
        (15) использовать метод (12)     | |||
| 17
    
        zladenuw 18.10.11✎ 12:46 | 
        читай СП
  Заполнить (Fill) Синтаксис: Заполнить(<Основание>) Параметры: <Основание> (обязательный) Тип: Произвольный. Значение, на основании которого выполняется заполнение элемента справочника. Описание: Заполняет данные элемента данными из другого объекта. Инициирует событие ОбработкаЗаполнения и вызов его процедуры-обработчика в модуле справочника. В ней может размещаться алгоритм, заполняющий данные элемента из переданного значения. Примечание: | |||
| 18
    
        Санта 18.10.11✎ 12:46 | 
        (12)(16) Спасибо большое     | |||
| 19
    
        Санта 18.10.11✎ 12:47 | 
        (17)> Заполняет данные элемента данными из другого объекта. Инициирует событие ОбработкаЗаполнения и вызов его процедуры-обработчика в модуле справочника.
  Из этого не следует, что все должно быть описано в обработке заполнения. | |||
| 20
    
        zladenuw 18.10.11✎ 12:48 | 
        ну так написано же,  В ней может размещаться алгоритм, заполняющий данные элемента из переданного значения.     | |||
| 21
    
        Санта 18.10.11✎ 12:49 | 
        (20) а может и не размещаться :)     | |||
| 22
    
        Жан Пердежон 18.10.11✎ 13:56 | 
        (21) Внезапно, да?)     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |