Имя: Пароль:
1C
1С v8
Ввод на основании
0 sweetsma
 
01.12.11
14:22
Я в 1С разбираюсь около месяца и пока не все понятно... Подскажите. Нужно для документа СписаниеТоваров сделать механизм ввода на основании документа СБ_ПланМеню. В модуль объекта документа СписаниеТоваров добавляю процедуру ОбработкаЗаполнения(Основание).
...
ТипЗнч(Основание) = Тип("ДокументСсылка.СБ_ПланМеню");
...

Дальше... не знаю, что делать. Нужно, чтобы пользователь мог выбрать на основании какого документа будет заполняться документ СписаниеТоваров. Как применить обработку к самому документу СписаниеТоваров? Ведь просто прописать ОбработкуЗаполнения в модуле должно быть не достаточно?
1 Ненавижу 1С
 
гуру
01.12.11
14:23
что это?

ТипЗнч(Основание) = Тип("ДокументСсылка.СБ_ПланМеню");
2 Error pro
 
01.12.11
14:23
(0) Есть конструктор ввода на основании
3 kible
 
01.12.11
14:24
(1) Проверка на тип наверное
4 Buster007
 
01.12.11
14:25
книжку почитать не предлагать?
5 Error pro
 
01.12.11
14:25
(1) для того чтобы можно было для нескольних видов документов заполнять, ибо у документов-оснований могут быть разные реквизиты\ТЧ
6 kible
 
01.12.11
14:28
(0)
Если ТипЗнч(Основание) =  Тип("ДокументСсылка.СБ_ПланМеню") Тогда
Дата = Основание.Дата; //И т.д.
Организация = Основание.Организация;
КонецЕсли;
7 Buster007
 
01.12.11
14:29
(5) спасибо, Кэп!
только вот напиши именно этот код, не добавляя ничего лишнего и посмотрим, что у тебя выйдет )
8 kible
 
01.12.11
14:29
(6) +Дальше разберешься наверное.
9 Error pro
 
01.12.11
14:30
(7) А нах что-то писать? Есть такая штука как "Конструктор ввода на основании", ок?
10 Error pro
 
01.12.11
14:32
(7) вот тебе кусок из типовой

   ТипОснования = ТипЗнч(Основание);
   Если ТипОснования = Тип("ДокументСсылка.ДД_ПКО")
       ИЛИ ТипОснования = Тип("ДокументСсылка.УслугиСтороннихОрганизаций")
       ИЛИ ТипОснования = Тип("ДокументСсылка.ЦС_Извещение") Тогда
       
       Контрагент = Основание.Контрагент;
   ИначеЕсли ТипОснования = Тип("ДокументСсылка.МЗ_ВПутиПокупка")
       ИЛИ ТипОснования = Тип("ДокументСсылка.МЗ_Покупка")
       ИЛИ ТипОснования = Тип("ДокументСсылка.НПА_Покупка")
       ИЛИ ТипОснования = Тип("ДокументСсылка.ОС_ВПутиПокупка")
       ИЛИ ТипОснования = Тип("ДокументСсылка.ОС_Покупка") Тогда
       
       Контрагент = Основание.СубконтоСчетКредита2;
   КонецЕсли;
11 lubja
 
01.12.11
14:33
(10) он про то, что если ты напишешь вне условия, типа ТипОснования = Тип("ДокументСсылка.ДД_ПКО"), то у тя ничего не выйдет...
12 Error pro
 
01.12.11
14:34
(11) ну это и коню понятно.
13 sweetsma
 
01.12.11
14:37
ОК. Всем спасибо. Код у меня именно такой, с условием. Вопрос в другом... Видимо, не корректно описал.
Уже разобрался. Тема закрыта.